:root{--red:#c52638;--navy:#142c46;--ink:#182b3f;--muted:#536173;--line:#dce2e8;--paper:#fff;--soft:#f3f6f9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--red)}a:focus-visible,summary:focus-visible{outline:3px solid #d08b00;outline-offset:5px}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:2}.skip:focus{top:0}.topline{background:var(--navy);color:white;text-align:center;font-size:.875rem;letter-spacing:.04em;padding:8px 20px}header{max-width:1320px;margin:auto;padding:25px 44px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:1.65rem;font-weight:800;letter-spacing:-.06em;display:flex;align-items:center;flex-wrap:wrap}.brand>span:not(.mark){color:var(--red)}.brand small{font-size:.625rem;letter-spacing:.22em;width:100%;padding-left:45px;color:var(--muted)}.mark{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;background:var(--red);color:white;margin-right:10px;border-radius:5px;letter-spacing:0;font-size:1.4rem}nav{display:flex;gap:30px;font-size:.875rem;font-weight:bold}nav a{text-decoration:none}.hero{max-width:1320px;margin:auto;padding:52px 44px 60px;display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center}.eyebrow{font-size:.75rem;letter-spacing:.16em;font-weight:bold;color:var(--red);margin:0 0 20px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,5.3vw,5.3rem);line-height:1.04;letter-spacing:-.065em;margin-bottom:25px}h1 em{font-family:Georgia,serif;color:var(--red);font-weight:normal}h2{font-size:clamp(2rem,3vw,3rem);line-height:1.12;letter-spacing:-.05em;margin-bottom:18px}h3{font-size:1.5rem;line-height:1.25;letter-spacing:-.025em}.intro{font-size:1.125rem;max-width:450px;color:var(--muted)}.button{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;padding:13px 24px;background:var(--red);color:white;font-weight:bold;border-radius:4px;min-height:48px}.button:hover{background:#a51c2b;color:white}.hero-note{margin-top:25px;font-size:.875rem;font-weight:bold}.hero-note span{font-weight:normal;color:var(--muted)}figure{margin:0}figure img{width:100%;height:420px;object-fit:cover;border-radius:4px;display:block;background:var(--soft)}figcaption{font-family:Georgia,serif;font-size:1rem;margin-top:12px}figcaption span{display:block;font-family:Arial,sans-serif;font-size:.75rem;color:var(--muted);margin-top:4px}.section{max-width:1320px;margin:auto;padding:50px 44px}.section-heading{display:flex;gap:40px;justify-content:space-between;align-items:end}.section-heading>p{max-width:360px;color:var(--muted)}.section-heading .eyebrow{margin-bottom:10px}.disclosure{font-size:.875rem;color:var(--muted);margin:5px 0 30px;max-width:900px}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{border:1px solid var(--line);border-radius:5px;padding:27px;display:flex;flex-direction:column;min-width:0}.card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:22px}.number{font-family:Georgia,serif;font-size:2.7rem;line-height:1;color:var(--red)}.category{font-size:.75rem;letter-spacing:.08em;font-weight:bold;text-align:right}.badge{align-self:flex-start;background:#edf3ef;color:#244b37;font-size:.75rem;font-weight:bold;padding:5px 9px;margin-bottom:18px;border-radius:3px}.badge.design{background:#eaf0f7;color:#274762}.card h3{font-size:1.6rem}.card p,.card dd{color:var(--muted)}.card p{font-size:1rem}.card dl{margin:2px 0 22px}.card dt{font-size:.875rem;font-weight:bold;margin-top:12px}.card dd{margin:2px 0 0;font-size:.875rem}.source{font-size:.875rem;margin-bottom:13px}.card .shop{margin-top:auto;font-size:.875rem}.edit-note{padding:35px 30px;background:var(--navy);color:white;border-radius:5px;display:flex;flex-direction:column;justify-content:center}.edit-note .eyebrow{color:#ffb5bc}.edit-note h3{font-family:Georgia,serif;font-size:2.5rem;font-weight:normal;line-height:1.15}.edit-note p:not(.eyebrow){color:#e0e6ec}.edit-note a{color:white;font-size:.875rem}.guides{border-top:1px solid var(--line)}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:20px}.guide-grid article{border-top:3px solid var(--red);padding-top:23px}.guide-index{font-size:.75rem;font-weight:bold;letter-spacing:.09em;color:var(--red)}.guide-grid h3{margin-top:15px}.guide-grid p{color:var(--muted)}.guide-grid a{font-weight:bold;color:var(--ink)}.tip{font-size:.875rem;border-left:2px solid var(--line);padding-left:15px}.origin{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;background:var(--soft);border-radius:6px}.origin>div>p:not(.eyebrow){max-width:460px;color:var(--muted)}.small{font-size:.875rem}.origin-notes article{padding:0 0 18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.origin-notes article:last-child{border-bottom:0;margin:0;padding:0}.origin-notes h3{font-size:1.2rem;margin-bottom:8px}.origin-notes p{margin-bottom:10px;color:var(--muted)}.origin-notes a{font-size:.875rem}.policies{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}summary{cursor:pointer;font-weight:bold;padding:12px 0}details p{font-size:.875rem;color:var(--muted);margin-top:14px}footer{padding:40px 44px;background:var(--navy);color:white;text-align:center}footer .brand{justify-content:center}footer p{font-size:.875rem;margin-top:15px;color:#e0e6ec}footer small{font-size:.75rem;color:#c4ced8}@media(max-width:1000px){.hero{gap:30px}figure img{height:380px}.products{grid-template-columns:repeat(2,minmax(0,1fr))}.origin{gap:35px}.section-heading{display:block}.section-heading>p{max-width:600px}}@media(max-width:680px){header{padding:20px;display:block}.brand{font-size:1.5rem}nav{margin-top:20px;gap:20px;flex-wrap:wrap}.hero{padding:35px 20px;grid-template-columns:1fr;gap:30px}h1{font-size:3.3rem}figure img{height:280px}.section{padding:36px 20px}.products,.guide-grid,.origin,.policies{grid-template-columns:1fr}.card{padding:25px}.origin{border-radius:0;gap:25px}.section-heading{display:block}.eyebrow{font-size:.75rem}.guide-grid{gap:20px}.policies{gap:0}footer{padding:35px 20px}.button{width:100%}.hero-note{margin-top:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.product-photo{height:235px;background:#fff;display:flex;align-items:center;justify-content:center;margin:0 0 24px;padding:8px}.product-photo img{display:block;width:100%;height:100%;object-fit:contain}@media(max-width:680px){.product-photo{height:245px}}

[hidden]{display:none!important}.category-filters{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 12px}.category-filters button{font:inherit;font-size:.875rem;font-weight:700;line-height:1.3;border:1px solid #c9d2dc;background:white;color:var(--navy);border-radius:6px;padding:12px 15px;min-height:46px;cursor:pointer}.category-filters button[aria-pressed="true"]{background:var(--navy);color:white;border-color:var(--navy)}.category-filters button span{margin-left:6px;font-weight:normal;opacity:.8}.category-filters button:focus-visible{outline:3px solid #d08b00;outline-offset:3px}.filter-status{color:var(--muted);font-size:.875rem;margin-bottom:20px}.edit-note{grid-column:1/-1;padding:26px 30px}.edit-note h3{font-size:1.75rem}.edit-note p:not(.eyebrow){max-width:850px}.edit-note .eyebrow{margin-bottom:12px}@media(max-width:680px){.category-filters{gap:8px}.category-filters button{flex:1 1 auto;padding:12px 10px}.product-photo{height:220px}}

.flags-section{background:var(--soft);border-top:4px solid var(--red);margin-top:25px;border-radius:5px}.flag-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.flag-card{background:white}.flag-card .number{font-size:2rem}.flag-sizing{margin-top:28px;padding:25px;background:white;border-left:4px solid var(--red);border-radius:4px}.flag-sizing h3{font-size:1.2rem}.flag-sizing p{color:var(--muted);font-size:.9375rem;margin-bottom:12px}.flag-sizing p:last-child{margin-bottom:0}.flags-jump{display:inline-block;margin:0 0 12px;font-size:.875rem;font-weight:bold;color:var(--red)}@media(max-width:680px){.flag-products{grid-template-columns:1fr}.flags-section{border-radius:0}.flag-sizing{padding:20px}}

.province-picker{margin:0 0 20px}.province-picker label{display:block;font-weight:700;margin-bottom:8px}.province-picker select{display:block;width:100%;max-width:100%;padding:12px;border:1px solid #b8c0c7;border-radius:6px;background:#fff;color:#182a39;font:inherit;font-size:16px}.province-picker select:focus-visible{outline:3px solid #bc2537;outline-offset:3px}.province-picker p{font-size:.9rem;margin:8px 0 0}

/* Compact flag shopping cards and featured shortcut. */
.flags-jump{display:flex;align-items:center;gap:14px;max-width:560px;padding:14px 18px;margin:4px 0 18px;border:1px solid #efc6cc;border-radius:12px;background:linear-gradient(110deg,#fff5f5,#fff);text-decoration:none;color:var(--ink);box-shadow:0 3px 10px #142c4608}
.flags-jump img{width:64px;height:48px;object-fit:contain;flex:0 0 64px;border-radius:6px}
.flags-jump strong{display:block;font-size:1rem;line-height:1.3;color:var(--red)}
.flags-jump small{display:block;margin-top:4px;font-weight:400;font-size:.75rem;line-height:1.4;color:var(--muted)}
.flags-jump-arrow{margin-left:auto;font-size:1.5rem;color:var(--red)}
.flags-jump:hover{border-color:var(--red);background:#ffeded}
nav .nav-flags{color:var(--red);background:#fff0f1;border-radius:5px;padding:5px 9px;margin:-5px -9px}
.flags-section{padding-top:28px;padding-bottom:28px}
.flags-section .section-heading{gap:24px;align-items:center}
.flags-section .eyebrow{font-size:.6875rem;margin-bottom:6px}
.flags-section h2{font-size:clamp(1.6rem,3vw,2.1rem);margin-bottom:8px}
.flags-section .section-heading>p{font-size:.875rem;max-width:390px;margin-bottom:10px}
.flags-section .disclosure{font-size:.75rem;line-height:1.5;margin:2px 0 18px}
.flag-products{gap:14px;align-items:start}
.flag-card{display:grid;grid-template-columns:116px minmax(0,1fr);gap:0 16px;padding:18px;border-radius:10px}
.flag-card .product-photo{height:116px;margin:0;padding:0;align-self:center}
.flag-quick{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.flag-brand{font-size:.625rem;letter-spacing:.1em;color:var(--muted);font-weight:700;margin-bottom:4px}
.flag-card h3{font-size:1.1rem;line-height:1.25;margin-bottom:8px}
.flag-card .badge{font-size:.625rem;line-height:1.4;padding:4px 6px;margin-bottom:10px}
.flag-card .shop{font-size:.75rem;padding:9px 12px;min-height:44px;width:100%;margin-top:auto}
.flag-details{grid-column:1/-1;margin-top:12px;border-top:1px solid var(--line)}
.flag-details summary{font-size:.8125rem;padding:10px 0 0;min-height:40px}
.flag-details p{font-size:.875rem;margin:10px 0}
.flag-details dl{margin-bottom:12px}
.flag-details .source{display:block;font-size:.8125rem;margin-bottom:10px}
.flag-card .province-picker{grid-column:1/-1;display:flex;align-items:center;gap:10px;margin:0 0 14px}
.province-picker label{font-size:.8125rem;line-height:1.3;margin:0;flex:0 0 82px}
.province-picker select{min-width:0;font-size:16px;padding:10px 8px;min-height:44px}
.flag-card noscript{grid-column:1/-1}
.flag-sizing{margin-top:16px;padding:0 16px;border-left-width:3px}
.flag-sizing summary{font-size:.875rem;padding:12px 0;min-height:44px}
.flag-sizing p{font-size:.8125rem;margin-top:0}
.flag-sizing>div{padding-bottom:12px}
@media(max-width:680px){
 .flags-jump{width:100%;padding:12px;gap:10px}
 .flags-jump img{width:52px;height:42px;flex-basis:52px}
 .flags-jump strong{font-size:.9375rem}
 .flags-jump small{font-size:.6875rem}
 .flags-jump-arrow{font-size:1.25rem}
 .flags-section{padding:26px 20px}
 .flags-section .section-heading>p{margin-bottom:10px}
 .flag-card{grid-template-columns:96px minmax(0,1fr);gap:0 12px;padding:14px}
 .flag-card .product-photo{height:96px}
 .flag-card h3{font-size:1rem}
}
@media(max-width:360px){.flag-card{grid-template-columns:78px minmax(0,1fr);gap:0 10px}.flag-card .product-photo{height:78px}.flags-jump img{width:44px;flex-basis:44px}.flags-jump strong{font-size:.875rem}}

.holidays{border-top:1px solid var(--line)}
.holidays h2{font-size:clamp(1.7rem,3vw,2.5rem)}
.holidays .section-heading>p{font-size:.9375rem}
.holiday-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start;margin-top:12px}
.holiday-card{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}
.holiday-card summary{position:relative;list-style:none;padding:17px 40px 17px 18px;border-top:3px solid var(--red)}
.holiday-card summary::-webkit-details-marker{display:none}
.holiday-card summary::after{content:'+';position:absolute;right:17px;top:20px;color:var(--red);font-size:1.4rem;font-weight:400}
.holiday-card[open] summary::after{content:'−'}
.holiday-card summary:hover{background:#fff7f7}
.holiday-date{display:block;color:var(--red);font-size:.6875rem;font-weight:700;line-height:1.4;margin-bottom:6px}
.holiday-name{display:block;font-size:1.125rem;line-height:1.25;letter-spacing:-.025em}
.holiday-theme{display:block;color:var(--muted);font-size:.8125rem;font-weight:400;line-height:1.4;margin-top:6px}
.holiday-more{display:block;font-size:.6875rem;color:var(--red);margin-top:10px}
.holiday-content{padding:0 18px 18px}
.holiday-content p{font-size:.875rem;line-height:1.55;margin:0 0 14px}
.holiday-links{display:flex;flex-wrap:wrap;gap:8px}
.holiday-links a{display:inline-flex;align-items:center;padding:9px 11px;min-height:44px;border:1px solid #eacbd0;border-radius:6px;text-decoration:none;font-weight:700;font-size:.75rem;color:var(--red);background:#fff6f7;line-height:1.4}
.holiday-links a:hover{background:#ffe9ec}
.holiday-note{font-size:.75rem;line-height:1.5;color:var(--muted);max-width:900px;margin:18px 0 0}
@media(max-width:1000px){.holiday-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.holidays{padding-top:28px;padding-bottom:28px}.holiday-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.holiday-card summary{padding:13px 25px 13px 12px}.holiday-card summary::after{right:9px;top:15px;font-size:1.125rem}.holiday-name{font-size:1rem}.holiday-date{font-size:.625rem}.holiday-theme{font-size:.75rem}.holiday-content{padding:0 12px 14px}.holiday-content p{font-size:.8125rem}.holiday-links a{width:100%}.holiday-more{font-size:.625rem}}
@media(max-width:360px){.holiday-grid{grid-template-columns:1fr}}

.more-gifts{display:flex;flex-direction:column;max-width:560px;border:1px solid #d3ded9;background:#f1f6f3;color:#224a37;border-radius:10px;padding:12px 16px;margin-bottom:18px;text-decoration:none;line-height:1.4}.more-gifts strong{font-size:.9375rem}.more-gifts span{font-size:.75rem;margin-top:4px}.more-gifts:hover{border-color:#224a37;color:#224a37}
.gift-intro{padding-top:30px;padding-bottom:28px;background:linear-gradient(120deg,#f4f7f4,#fff4f3);border-bottom:1px solid var(--line)}.back-home{display:inline-block;font-size:.8125rem;margin-bottom:24px}.gift-intro .eyebrow{margin-bottom:12px}.gift-intro h1{font-size:clamp(2.6rem,5vw,4.5rem)}.gift-intro .intro{max-width:700px;margin-bottom:20px}.gift-route-links{display:flex;flex-wrap:wrap;gap:10px}.gift-route-links a{display:inline-flex;align-items:center;padding:11px 15px;min-height:44px;border-radius:6px;text-decoration:none;font-weight:700;font-size:.8125rem;background:#224a37;color:white}.gift-route-links a:last-child{background:white;color:var(--red);border:1px solid #e7c5cb}.gift-list{padding-top:28px}.gift-products{align-items:start}.gift-card{padding:20px;border-radius:10px;background:white}.gift-card .product-photo{height:180px;margin-bottom:16px}.gift-card h3{font-size:1.2rem;margin-bottom:10px}.gift-card .badge{font-size:.6875rem;margin-bottom:12px}.gift-card .gift-preview{font-size:.875rem;line-height:1.55}.gift-card .shop{width:100%;font-size:.8125rem}.gift-details{border-top:1px solid var(--line);margin-top:12px}.gift-details summary{font-size:.8125rem;min-height:44px;padding:10px 0}.gift-details .source{display:block}.gift-research{font-size:.8125rem;color:var(--muted);margin:24px 0 0}.gift-page footer{margin-top:15px}@media(max-width:680px){.gift-intro{padding-top:24px}.gift-intro h1{font-size:2.8rem}.gift-list{padding-top:25px}.gift-card .product-photo{height:165px}.gift-card{padding:18px}.gift-route-links a{flex:1 1 auto;justify-content:center}}

/* Compact entry to the owner's external Spreadshop. */
.apparel-section{padding-top:0;padding-bottom:0}
.apparel-card{display:flex;align-items:center;gap:20px;padding:22px 26px;background:linear-gradient(120deg,#142c46,#263e52);color:#fff;border-radius:12px;border:1px solid #314b61}
.apparel-icon{display:flex;align-items:center;justify-content:center;flex:0 0 76px;width:76px;height:76px;background:#ffffff10;border:1px solid #ffffff24;border-radius:12px;color:#fff}
.apparel-copy{flex:1;min-width:0}
.apparel-copy .eyebrow{font-size:.625rem;letter-spacing:.15em;color:#ffc7cb;margin-bottom:6px}
.apparel-copy h2{font-size:1.4rem;line-height:1.2;letter-spacing:-.03em;margin-bottom:6px}
.apparel-copy p:last-child{color:#dce5ed;font-size:.8125rem;line-height:1.5;margin:0;max-width:480px}
.apparel-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;flex-shrink:0;background:#fff;color:var(--navy);border-radius:6px;font-size:.8125rem;font-weight:700;text-decoration:none;line-height:1.3;text-align:center}
.apparel-button:hover{background:#fff0f1;color:var(--red)}
.gift-page .apparel-section{padding-top:24px}
@media(max-width:680px){.apparel-card{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;padding:17px}.apparel-icon{width:56px;height:56px}.apparel-icon svg{width:46px;height:46px}.apparel-copy h2{font-size:1.1875rem}.apparel-copy p:last-child{font-size:.75rem}.apparel-button{grid-column:1/-1;width:100%;min-height:44px}.apparel-section{padding-top:0;padding-bottom:0}.gift-page .apparel-section{padding-top:20px}}
