@import url('./assets/fonts.css');
:root{--cream:#fff9e9;--ink:#173d3b;--pink:#f4a7b9;--rose:#a83356;--blue:#c2dce8;--butter:#f9e99f;--line:#173d3b33;--paper:#fffdf5;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--cream);font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0}button,a,input{font:inherit}a{color:inherit}button{color:inherit;cursor:pointer}img{max-width:100%;height:auto;display:block}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--rose);outline-offset:5px}button:disabled{cursor:default}.skip{position:absolute;left:15px;top:-80px;z-index:90;background:white;padding:15px}.skip:focus{top:10px}.announcement{background:var(--pink);text-align:center;padding:10px 15px;font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;font-weight:600}.masthead{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;background:var(--cream);border-bottom:1px solid var(--line);padding:16px 4.5%;gap:20px}.brand{font-family:Yellowtail,cursive;font-size:2.9rem;line-height:1;text-decoration:none;white-space:nowrap}.brand span{font-size:1.7rem}.nav{display:flex;align-items:center;gap:30px}.nav a{font-size:.9rem;text-decoration:none;font-weight:600}.nav a:hover{text-decoration:underline;text-underline-offset:5px}.nav .forecast{border:1px solid var(--ink);padding:12px 18px;border-radius:3px}.menu{display:none;border:1px solid;background:none;padding:10px}.hero{display:grid;grid-template-columns:minmax(0,43fr) minmax(0,57fr);min-height:620px}.hero-copy{padding:70px 9% 65px 10.5%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;position:relative}.eyebrow{font-family:'Space Mono',monospace;text-transform:uppercase;font-size:.75rem;line-height:1.7;letter-spacing:.1em}.hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3.5rem,5.6vw,6rem);line-height:1.03;letter-spacing:-.05em;margin:24px 0}.script{font-family:Yellowtail,cursive;color:var(--rose);letter-spacing:0}.hero p{font-size:1.05rem;line-height:1.7;max-width:345px;margin:0 0 30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:14px 24px;background:var(--ink);color:var(--cream);border:1px solid var(--ink);border-radius:3px;text-decoration:none;font-weight:600;font-size:.9rem;transition:background .2s,transform .2s}.button:hover{background:#285753;transform:translateY(-2px)}.button.light{background:var(--cream);color:var(--ink)}.button.outline{background:transparent;color:var(--ink)}.hero-media{position:relative;overflow:hidden}.hero-media>img{width:100%;height:100%;object-fit:cover;object-position:45% 50%;min-height:620px}.postage{position:absolute;right:25px;top:25px;background:var(--butter);padding:18px;border-radius:50%;height:113px;width:113px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(12deg);font-family:'Space Mono',monospace;font-size:.75rem;border:1px solid var(--ink);line-height:1.6}.postage b{font-size:1.5rem;font-family:Georgia,serif;font-weight:400}.photo-caption{position:absolute;bottom:20px;right:25px;font-size:.75rem;letter-spacing:.08em;color:white;background:#173d3bbf;padding:7px 10px}.ribbon{display:flex;justify-content:space-around;align-items:center;gap:20px;padding:23px 4.5%;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--pink);font-family:Georgia,serif;font-style:italic;font-size:1.45rem}.ribbon span:nth-child(even){font-size:1rem}.section{padding:85px 4.5%}.heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:34px}h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.6rem,4vw,4.3rem);letter-spacing:-.045em;line-height:1.06;margin:13px 0 0}.heading-row p{max-width:350px;font-size:.95rem;line-height:1.6;margin:0}.filters{display:flex;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:28px}.filter{background:transparent;border:1px solid var(--line);border-radius:30px;padding:11px 20px;font-size:.85rem}.filter[aria-pressed=true]{background:var(--ink);color:var(--cream);border-color:var(--ink)}.product-count{margin-left:auto;align-self:center;font-family:'Space Mono',monospace;font-size:.75rem}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 25px}.card{min-width:0}.card[hidden]{display:none}.product-photo{width:100%;aspect-ratio:1.16;background:#eee9de;position:relative;overflow:hidden;border:1px solid var(--line);padding:0;display:block}.product-photo img{width:100%;height:100%;object-fit:contain;transition:transform .4s;background:#fff}.product-photo:hover img{transform:scale(1.045)}.product-tag{position:absolute;top:14px;left:14px;background:var(--cream);border:1px solid var(--line);padding:6px 9px;font-size:.75rem;font-family:'Space Mono',monospace}.card-meta{display:flex;justify-content:space-between;gap:12px;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;margin:20px 0 8px}.card h3{font-family:Georgia,serif;font-size:1.5rem;font-weight:400;margin:0 0 10px}.card p{font-size:.9rem;line-height:1.65;margin:0 0 16px;max-width:380px;color:#36524e}.text-button{border:0;border-bottom:1px solid var(--ink);background:transparent;padding:0 0 4px;font-size:.85rem;font-weight:600}.shop-note{font-size:.8rem;color:#52645e;line-height:1.7;max-width:900px;margin:36px 0 0}.spotlight{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--blue);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.spotlight-image{padding:45px;display:flex;align-items:center;justify-content:center}.spotlight-image img{max-height:500px;width:100%;object-fit:contain;transform:rotate(-4deg);box-shadow:10px 15px 0 #173d3b16}.spotlight-copy{padding:75px 12% 75px 7%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.spotlight-copy h2{margin-bottom:25px}.spotlight-copy p{line-height:1.8;font-size:1rem}.spotlight-copy .button{margin-top:16px}.small{font-size:.78rem!important;line-height:1.6!important}.standards{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10%;background:var(--cream)}.standards-intro>p{line-height:1.8;max-width:390px;margin:25px 0}.standards a{font-size:.85rem;text-underline-offset:4px}.standard-list details{border-top:1px solid var(--line)}.standard-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:20px;padding:25px 0;font-family:Georgia,serif;font-size:1.4rem}summary::-webkit-details-marker{display:none}summary span{font-size:.75rem;font-family:'Space Mono',monospace}summary:after{content:'+';margin-left:auto;font-family:'DM Sans';font-size:1.4rem}details[open]>summary:after{content:'−'}.standard-list p{font-size:.95rem;line-height:1.8;margin:0 0 25px;padding-left:42px}.caps{background:var(--pink);display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:5%;align-items:center;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.caps h2{margin-bottom:25px}.caps p{line-height:1.7;max-width:340px}.caps img{border:1px solid var(--line);width:100%}.pill{border:1px solid var(--ink);border-radius:30px;padding:8px 12px;display:inline-block;font-family:'Space Mono',monospace;font-size:.75rem;margin-top:20px}.forecast-section{padding:70px 5%;background:var(--butter);text-align:center}.forecast-section h2{margin:15px 0 25px}.forecast-section p{max-width:560px;margin:0 auto 25px;line-height:1.7}.footer{background:var(--ink);color:var(--cream);padding:45px 4.5%}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:30px}.footer-links{display:flex;gap:25px;font-size:.9rem}.footer-bottom{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #ffffff3b;padding-top:25px;font-size:.75rem;line-height:1.7}.footer-bottom p{max-width:680px;margin:0}.dialog{background:var(--cream);color:var(--ink);border:1px solid var(--ink);padding:0;width:min(880px,92vw);max-height:88dvh;overflow:auto}.dialog::backdrop{background:#082824a8;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:12px;top:12px;background:var(--cream);border:1px solid var(--ink);height:38px;width:38px;font-size:1.5rem;z-index:2}.dialog-body{display:grid;grid-template-columns:.85fr 1.15fr}.dialog-image{width:100%;height:100%;min-height:450px;object-fit:contain;background:white}.dialog-copy{padding:48px 34px 34px}.dialog-copy h2{font-size:2.3rem;letter-spacing:-.03em;margin:10px 0 18px}.dialog-copy p{font-size:.9rem;line-height:1.7}.dialog-copy h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;margin-top:25px}.dialog-copy ul{padding-left:19px;font-size:.9rem;line-height:1.8}.dialog-copy .button{width:100%;margin-top:20px}.dialog-copy .source{font-size:.75rem;display:block;margin:15px 0 0}.price-label{font-size:1rem!important;font-weight:600}.reduced-note{font-family:'Space Mono',monospace;text-transform:uppercase;font-size:.75rem}
@media(min-width:1600px){.hero-copy{padding-left:14%}.section{padding-left:8%;padding-right:8%}}@media(max-width:950px){.nav{gap:17px}.brand{font-size:2.3rem}.hero{grid-template-columns:minmax(0,46fr) minmax(0,54fr);min-height:530px}.hero-copy{padding:50px 8%}.hero-media>img{min-height:530px}.hero h1{font-size:4rem}.products{grid-template-columns:repeat(2,minmax(0,1fr))}.section{padding:60px 5%}.caps{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:4%}.spotlight-copy{padding:45px 9%}.ribbon{font-size:1.15rem}.ribbon span:nth-child(even){display:none}.standards{gap:6%}}@media(max-width:650px){html{scroll-padding-top:85px}.announcement{font-size:.75rem;padding:9px}.masthead{padding:15px 5%;flex-wrap:wrap}.brand{font-size:2.3rem}.menu{display:block}.nav{display:none;width:100%;padding:10px 0;flex-wrap:wrap;gap:20px}.nav.open{display:flex}.nav .forecast{padding:9px 14px}.hero{display:flex;flex-direction:column}.hero-copy{padding:45px 7%}.hero h1{font-size:clamp(3rem,12vw,4.2rem);margin:20px 0}.hero p{max-width:340px}.hero-media>img{height:390px;min-height:0}.postage{width:90px;height:90px;padding:10px;top:18px;right:18px}.ribbon{gap:10px;font-size:1rem;padding:18px 4%}.ribbon span:last-child{display:none}.heading-row{display:block}.heading-row p{margin-top:20px}.products{gap:30px 16px}.card h3{font-size:1.22rem}.card p{font-size:.85rem}.card-meta{display:block;font-size:.75rem;line-height:1.8}.product-tag{left:8px;top:8px;font-size:.75rem;padding:5px}.product-photo{aspect-ratio:1}.filters{gap:8px}.filter{padding:10px 14px;font-size:.8rem}.product-count{width:100%;margin:8px 0 0}.spotlight,.standards,.caps{grid-template-columns:1fr}.spotlight-image{padding:35px}.spotlight-image img{max-height:350px;width:90%}.spotlight-copy{padding:15px 7% 50px}.standards{gap:25px}.caps img{margin-top:20px}.caps p{max-width:none}.footer-top,.footer-bottom{display:block}.footer-links{margin-top:25px}.footer-bottom p{margin-bottom:18px}.dialog-body{grid-template-columns:1fr}.dialog-image{height:240px;min-height:0}.dialog-copy{padding:30px 24px}.section{padding-top:55px;padding-bottom:55px}.photo-caption{font-size:.75rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Fit the page to its viewport rather than allowing intrinsic image sizes to expand grid tracks. */
body{overflow-wrap:break-word}.hero>*,.spotlight>*,.standards>*,.caps>*,.dialog-body>*{min-width:0}.masthead{gap:16px}.nav{flex-wrap:wrap}.hero-media{min-width:0}.hero-media>img{height:100%;width:100%}.section{padding-left:max(4.5%,calc((100% - 1320px)/2));padding-right:max(4.5%,calc((100% - 1320px)/2))}.heading-row>*,.footer-top>*,.footer-bottom>*{min-width:0}.hero-copy h1{font-size:clamp(3rem,5.6vw,5.8rem)}
.caps{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:5%;align-items:center}.caps-intro>p{max-width:330px}.cap-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;max-width:760px;justify-self:center}.cap-card{margin:0;min-width:0;background:var(--cream);border:1px solid #173d3b33;box-shadow:0 4px 16px #173d3b08;overflow:hidden}.cap-visual{position:relative;aspect-ratio:620/465;overflow:hidden;background:#faf7ee}.caps .cap-visual img{position:absolute;width:210.1613%;max-width:none;height:auto;border:0;margin:0;left:-4.0323%;top:-31.1828%;display:block}.caps .cap-ocean img,.caps .cap-pink img{left:-109.0323%}.caps .cap-green img,.caps .cap-pink img{top:-141.9355%}.cap-card figcaption{padding:15px 17px 18px;border-top:1px solid #173d3b15}.cap-card h3{font-family:Georgia,serif;font-size:1.2rem;font-weight:400;margin:0 0 6px}.caps .cap-card p{font-size:.8rem;line-height:1.5;margin:0;max-width:none;color:#3f5753}.caps .pill{font-size:.75rem}.photo-caption{max-width:calc(100% - 40px)}
@media(min-width:1500px){.hero{min-height:600px}.hero-media>img{min-height:600px;max-height:720px}.hero-copy{padding-left:max(10.5%,calc((100vw - 1320px)/2))}.caps{gap:60px}}
@media(max-width:950px){.caps{grid-template-columns:1fr;gap:32px}.caps-intro{max-width:600px}.caps-intro>p{max-width:470px}.cap-gallery{max-width:700px}.section{padding-left:5%;padding-right:5%}.hero-copy h1{font-size:clamp(2.8rem,6vw,4.5rem)}.nav{gap:15px}.brand{font-size:2.2rem}.brand span{font-size:1.4rem}}
@media(max-width:650px){.hero-copy h1{font-size:clamp(3rem,12vw,4.2rem)}.hero-media>img{height:360px;min-height:0;max-height:none}.cap-gallery{gap:12px}.cap-card figcaption{padding:12px}.cap-card h3{font-size:1.05rem}.caps .cap-card p{font-size:.8rem}.caps h2{margin-bottom:20px}.caps .pill{margin-top:10px}.postage{font-size:.75rem;width:105px;height:105px}.photo-caption{right:15px;bottom:15px}.product-count{font-size:.75rem}.dialog-image{height:240px;min-height:0}.dialog-copy{overflow-wrap:anywhere}}
@media(max-width:380px){.cap-gallery{grid-template-columns:1fr;max-width:290px}.products{grid-template-columns:1fr}.brand{font-size:2rem}.brand span{font-size:1.2rem}}

/* Keep the club stamp readable at every viewport and text scale. */
.postage{width:128px;height:auto;min-height:128px;aspect-ratio:1;padding:18px;gap:5px;line-height:1.1;transform:rotate(8deg)}
.postage span{font-size:12px;line-height:1.3;white-space:nowrap}
.postage b{font-size:27px;line-height:1.05;letter-spacing:-.03em}
@media(max-width:650px){.postage{width:112px;min-height:112px;padding:14px}.postage b{font-size:24px}}

/* First-edition club box announcement. */
.hero-secondary{margin-top:18px;font-size:.9rem;text-underline-offset:5px}.club-box{background:var(--ink);color:var(--cream);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:54px;align-items:center}.club-box>*{min-width:0}.box-status{display:inline-block;border:1px solid #fff9e955;border-radius:30px;padding:10px 15px;font: .75rem 'Space Mono',monospace;letter-spacing:.08em}.club-box h2{margin:25px 0;font-size:clamp(3rem,5.5vw,5.5rem);line-height:1.05}.club-box .script{color:var(--pink)}.box-copy>p{max-width:440px;line-height:1.75}.box-copy .box-name{font-size:1.15rem;font-weight:700}.box-button{background:var(--pink);color:var(--ink);border-color:var(--pink);margin-top:12px}.box-small,.box-image-caption{font-size:.8rem;line-height:1.5}.box-editorial{position:relative;padding-bottom:28px}.box-editorial>img{width:100%;height:auto;border-radius:3px}.box-photo-note{position:absolute;bottom:60px;right:16px;background:var(--cream);color:var(--ink);padding:14px 20px;transform:rotate(-5deg);font-family:Georgia,serif;font-style:italic;font-size:clamp(1rem,2vw,1.35rem);line-height:1.3;box-shadow:3px 4px 0 #173d3b33}.box-image-caption{margin:10px 0 0;color:#fff9e9bb}.box-lineup{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px;padding-top:42px;border-top:1px solid #fff9e944;scroll-margin-top:120px}.box-lineup h3{font:2rem/1.2 Georgia,serif;margin:18px 0}.box-lineup p{line-height:1.65}.packing-list{list-style:none;padding:0;margin:0}.packing-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px 16px;padding:18px 0;border-bottom:1px solid #fff9e933}.packing-list li>span{font:.8rem 'Space Mono',monospace;color:var(--pink);padding-top:3px}.packing-list b{font-size:1.08rem}.packing-list p{margin:4px 0;font-size:.9rem}.packing-list small{grid-column:2;font:.75rem/1.6 'Space Mono',monospace;color:#fff9e9bb}.packing-pending{opacity:.85}.box-release-note{grid-column:1/-1;background:#fff9e910;padding:20px 24px;border-radius:3px}.box-release-note p{margin:8px 0 0;font-size:.9rem}.sun-review{background:var(--blue)}.sun-review>p{max-width:700px;line-height:1.75}.sun-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:26px 0}.sun-checks p{line-height:1.7}.sun-checks b{display:block;margin-bottom:8px}.card-status{display:inline-block;font:.75rem/1.5 'Space Mono',monospace;color:var(--rose);margin-top:12px}.nav{gap:20px}
@media(max-width:950px){.club-box{gap:30px}.box-lineup{grid-template-columns:1fr}.sun-checks{gap:18px}.masthead{flex-wrap:wrap}.nav{gap:15px}.box-lineup{scroll-margin-top:150px}}
@media(max-width:650px){.club-box{grid-template-columns:1fr}.box-copy>p{max-width:none}.box-editorial{max-width:480px}.box-lineup{gap:20px;padding-top:25px;scroll-margin-top:100px}.sun-checks{grid-template-columns:1fr;gap:0}.box-release-note{padding:18px}.box-photo-note{bottom:65px}.club-box h2{font-size:3.3rem}.box-status{font-size:.7rem}}

.box-button:hover{background:var(--cream);color:var(--ink);border-color:var(--cream)}

.quality-intro{font-size:14px;line-height:1.6;margin:0 0 22px;max-width:760px}.quality-intro a{color:#8d3c50;text-decoration:underline}.quality-panel{border-top:1px solid #173d3b25;margin:16px 0 10px;padding-top:12px}.quality-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:11px}.quality-heading span{color:#526963}.quality-heading b{font-size:12px;text-align:right}.quality-panel meter{display:block;width:100%;height:10px;margin:6px 0;accent-color:#567d64}.quality-panel meter::-webkit-meter-bar{background:#e3e4d6;border:0;border-radius:8px}.quality-panel meter::-webkit-meter-optimum-value{background:#567d64;border-radius:8px}.quality-unscored{height:5px;background:repeating-linear-gradient(90deg,#dddccc 0 18%,transparent 18% 20%);margin:8px 0}.quality-panel small{display:block;font-size:10px;color:#617169;line-height:1.4}.quality-heading.performance{margin-top:12px}.quality-panel>a{display:inline-block;font-size:10px;color:#8d3c50;text-decoration:underline;margin-top:8px}
