@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400-italic.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400.woff2) format('woff2')}
@font-face{font-family:'Familjen Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/familjen-grotesk-400.woff2) format('woff2')}
@font-face{font-family:'Familjen Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/familjen-grotesk-500.woff2) format('woff2')}
@font-face{font-family:'Familjen Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/familjen-grotesk-600.woff2) format('woff2')}
@font-face{font-family:'Familjen Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/familjen-grotesk-700.woff2) format('woff2')}

:root{
  /* primitivos da marca (CSS real + captura da home) */
  --navy:#002a44;
  --maroon:#702a1a;
  --paper:#fff;
  --tile:#f6f6f6;
  --linen:#e9e5e1;
  --ash:#5f5b58;
  /* papéis */
  --tx:var(--navy);
  --tx-soft:var(--ash);
  --acao:var(--navy);
  --sobre-escuro:#fff;
  --stitch:1px dashed rgba(0,42,68,.5);
  --serif:'Instrument Serif','Iowan Old Style',Georgia,serif;
  --sans:'Familjen Grotesk','Helvetica Neue',Arial,sans-serif;
  --ease-out:cubic-bezier(.23,1,.32,1);
  --gutter:32px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-padding-top:16px}
body{margin:0;background:var(--paper);color:var(--tx);font-family:var(--sans);font-size:16px;line-height:1.55;overflow-wrap:break-word;touch-action:manipulation}
img{max-width:100%;height:auto;display:block}
picture{display:block}
figure{margin:0}
a{color:inherit}
p{margin:0 0 1em;text-wrap:pretty}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;text-wrap:balance}
h1 em,h2 em,h3 em{font-style:italic}
h2{font-size:clamp(32px,2.8vw,40px);line-height:1.08;margin-bottom:16px}
h3{font-size:26px;line-height:1.15;margin-bottom:8px}
ul,ol{margin:0;padding:0}
::selection{background:var(--navy);color:#fff}
:focus-visible{outline:2px solid var(--maroon);outline-offset:3px}
.tweener :focus-visible,.touch :focus-visible,.trunk-photo :focus-visible,.poster :focus-visible,.gameday :focus-visible,.essentials-poster :focus-visible{outline-color:#fff}
.so-leitor{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.sprite{position:absolute;width:0;height:0;overflow:hidden}

/* casca do pacote */
.pular{position:absolute;left:8px;top:-60px;z-index:20;background:var(--navy);color:#fff;padding:10px 16px;font-weight:700;font-size:14px;border-radius:2px}
.pular:focus{top:8px}
.rascunho{background:var(--tile);color:var(--navy);font-size:13px;font-weight:500;text-align:center;padding:7px 16px}
.pacote{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px var(--gutter);background:#fff;border-bottom:1px solid rgba(0,42,68,.14)}
.pacote-abas{display:flex;flex-wrap:wrap;gap:4px 6px}
.pacote-abas a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;font-size:14px;font-weight:600;color:var(--navy);text-decoration:none;border-radius:2px}
.pacote-abas a[aria-current="page"]{background:var(--navy);color:#fff}
.pacote-abas .curto{display:none}
.chat{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border:1px solid var(--navy);border-radius:2px;font-size:14px;font-weight:700;color:var(--navy);text-decoration:none;white-space:nowrap}
.rodape{padding:36px var(--gutter) 44px;text-align:center;font-size:13px;color:var(--navy);background:#fff}
.rodape p{margin:0 auto 10px;max-width:70ch}
.rodape-chat{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;background:var(--navy);color:#fff;border-radius:2px;font-weight:700;text-decoration:none}
.rodape-fontes{color:var(--ash)}

/* estrutura comum */
section{position:relative;overflow-x:clip}
.seam{width:100%;max-width:1440px;margin-inline:auto;padding-inline:var(--gutter)}
.lede{font-size:18px;font-weight:500;line-height:1.45}
.pull{font-family:var(--serif);font-style:italic;font-size:clamp(26px,2.4vw,34px);line-height:1.1;color:var(--maroon);margin:20px 0}
.manifesto{font-family:var(--serif);font-size:clamp(26px,2.9vw,42px);line-height:1.14;margin:0}

.stitch-mark{display:flex;align-items:center;gap:10px;margin:0 0 20px;font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--maroon)}
.stitch-mark::after{content:"";flex:1;border-top:1px dashed currentColor}
.stitch-mark.on-navy{color:#fff}
.pk-ico{width:32px;height:32px;flex:none}

/* botões: retângulo de raio 2 px, como na home */
.ghost,.solid,.outlined{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 30px;border-radius:2px;font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap;transition:background-color .16s ease,color .16s ease,transform .14s var(--ease-out)}
.ghost{border:1px solid #fff;color:#fff}
.solid{background:var(--navy);color:#fff;border:1px solid var(--navy)}
.solid.on-navy{background:#fff;color:var(--navy);border-color:#fff}
.outlined{border:1px solid var(--navy);color:var(--navy)}
.ghost:active,.solid:active,.outlined:active{transform:scale(.97)}
.inked,.on-photo{font-size:14px;font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;display:inline-flex;align-items:center;min-height:32px}
.on-photo{color:#fff}
@media (hover:hover) and (pointer:fine){
  .ghost:hover{background:#fff;color:var(--navy)}
  .solid:hover{background:#0b3d5e}
  .solid.on-navy:hover{background:var(--linen)}
  .outlined:hover{background:var(--navy);color:#fff}
  .inked:hover,.on-photo:hover{text-decoration-thickness:2px}
}

/* foto com texto por cima: fundo navy declarado + escurecimento da base (bloco Game Day da home) */
.photo-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(0,26,43,.88) 0%,rgba(0,26,43,.64) 30%,rgba(0,26,43,0) 68%)}
.trunk-photo picture,.poster picture,.essentials-poster picture,.gameday picture{position:absolute;inset:0}
.trunk-photo img,.poster img,.essentials-poster img,.gameday img,.stores-band img{width:100%;height:100%;object-fit:cover}
.stores-band img{position:absolute;inset:0}
.poster-copy{position:absolute;inset:auto 0 0 0;padding:0 24px 44px;text-align:center;color:#fff}
.poster-copy h2,.poster-copy h3{font-size:clamp(32px,2.8vw,40px);line-height:1.05;margin:0 0 6px}
.poster-copy p{margin:0 auto 6px;max-width:34ch;font-weight:600;font-size:15px}

/* 1 · out-of-the-trunk */
.trunk{background-color:var(--navy)}
.lodge-bar{margin:0;background:var(--navy);color:#fff;text-align:center;font-size:13px;font-weight:700;padding:4px 16px}
.lodge-bar a{display:inline-flex;align-items:center;min-height:28px;text-decoration:none}
.masthead{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--linen);color:var(--navy);padding:12px var(--gutter)}
.wordmark{font-family:var(--serif);font-style:italic;font-size:34px;line-height:1;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.masthead-nav{display:flex;gap:30px}
.masthead-nav a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;text-decoration:none}
.trunk-photo{position:relative;height:clamp(520px,46vw,860px);background-color:var(--navy);overflow:hidden}
.trunk-photo img{object-position:50% 38%}
.trunk-copy{position:absolute;left:var(--gutter);right:var(--gutter);bottom:32px;color:#fff;display:flex;flex-direction:column;align-items:flex-start;gap:28px}
.trunk-words{max-width:680px}
.tagline{font-size:14px;font-weight:700;margin:0 0 6px}
h1{font-size:clamp(40px,4.6vw,64px);line-height:1.02;margin:0 0 12px}
.trunk-line{font-size:16px;font-weight:600;max-width:52ch;margin:0}
.trunk-actions{display:flex;flex-wrap:wrap;gap:12px;margin:0}

/* 2 · four-buttons-a-pocket */
.origin{padding-block:88px 80px}
.origin-lay{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:56px;align-items:end}
.origin-tale{font-family:var(--serif);font-size:clamp(24px,2.5vw,36px);line-height:1.2;margin:0}
.origin-face img{width:100%;height:auto}
.placket-index{margin-top:72px}
.placket-lead{font-size:14px;font-weight:700;margin:0 0 36px}
.placket-row{list-style:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.placket-row li{position:relative;border-top:var(--stitch);padding:28px 16px 0 0}
.placket-row a{display:block;text-decoration:none;min-height:64px}
.placket-row .pk-ico{position:absolute;top:-16px;left:0;background:#fff;border-radius:50%;color:var(--navy);transition:color .16s ease}
.pk-step{display:block;font-size:13px;font-weight:700;color:var(--maroon)}
.pk-name{display:block;font-family:var(--serif);font-size:22px;line-height:1.15}
@media (hover:hover) and (pointer:fine){.placket-row a:hover .pk-ico{color:var(--maroon)}.placket-row a:hover .pk-name{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}}

/* 3 · button-one-original-polo */
.original{padding-block:24px 96px}
.original-lay{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,4fr) minmax(0,3fr);gap:48px;align-items:start;margin-top:12px}
.snapshot-card{background:var(--tile);padding:18px}
.snapshot-card img{width:100%;height:auto;object-fit:contain}
.surf-collage{position:relative;padding:0 56px 72px 0}
.surf-sand{position:absolute;right:0;bottom:0;width:44%;padding:10px;background:#fff;box-shadow:0 1px 2px rgba(0,42,68,.1),0 14px 34px rgba(0,42,68,.16)}
.original-words h3{margin-top:12px}
.junior{border-top:var(--stitch);padding-top:20px;margin-top:24px}
.junior p{margin-bottom:10px}
.junior-facts span{display:block;font-weight:700;font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums}
.polo-tile{max-width:600px}
.polo-tile img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--tile)}
.polo-tile figcaption,.lodge-stack figcaption,.golf-shop figcaption{font-family:var(--serif);font-size:20px;padding:8px 8px 0}
.polo-tile figcaption a,.golf-shop figcaption a{display:inline-flex;align-items:center;min-height:32px;text-decoration:none}

/* 4 · signature-essentials */
.essentials{padding-block:0 96px}
.essentials-lay{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
.essentials-poster{position:relative;aspect-ratio:4/5;background-color:var(--navy);overflow:hidden}
.tile-quad{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr 1fr;gap:8px}
.tile{background:var(--tile);min-width:0}
.tile a{display:flex;flex-direction:column;height:100%;text-decoration:none}
.tile img{flex:1 1 0;height:0;min-height:170px;width:100%;object-fit:cover;object-position:50% 20%}
.tile-name{font-family:var(--serif);font-size:20px;line-height:1.15;padding:12px 14px 0}
.tile-price{font-size:14px;font-weight:700;padding:2px 14px 14px;white-space:nowrap;font-variant-numeric:tabular-nums}
.essentials-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:36px}
.essentials-notes p{font-family:var(--serif);font-size:24px;line-height:1.2;margin:0;border-top:var(--stitch);padding-top:16px}

/* 5 · the-trunk */
.trunk-ledger{padding-block:0 96px}
.ledger-head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:end;margin-bottom:20px}
.ledger-head h2{font-size:clamp(44px,5.4vw,80px);line-height:.98;margin:0}
.ledger-head p{font-size:18px;font-weight:500;margin:0 0 8px}
.ledger{width:100%;border-collapse:collapse;font-size:15px}
.ledger th,.ledger td{text-align:left;padding:15px 20px 15px 0;border-top:var(--stitch);vertical-align:baseline}
.ledger thead th{border-top:0;font-size:13px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding-bottom:10px}
.ledger tbody th{font-family:var(--serif);font-size:22px;font-weight:400;line-height:1.15}
.ledger td{font-variant-numeric:tabular-nums}
.ledger thead th:last-child,.ledger .ledger-price{text-align:right;padding-right:0}
.ledger .ledger-price{font-family:var(--serif);font-size:28px;line-height:1;white-space:nowrap}
.ledger-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;margin:28px 0 0}

/* 6 · west-coast-prep */
.crossroads{background-color:var(--linen);padding-block:72px}
.crossroads-lay{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:64px;align-items:center}
.crossroads h2{font-size:clamp(44px,6.2vw,92px);line-height:.96;margin-bottom:20px}
.crossroads-snap{background:#fff;padding:14px;max-width:360px;justify-self:end;transform:rotate(1.6deg);box-shadow:0 1px 2px rgba(0,42,68,.1),0 16px 36px rgba(0,42,68,.14)}

/* 7 · the-full-line */
.poster-quad{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.poster{position:relative;aspect-ratio:4/5;background-color:var(--navy);overflow:hidden;color:#fff}

/* 8 · lodge-tober */
.lodge{padding-block:96px}
.lodge-lay{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,5fr) minmax(0,4fr);gap:48px;align-items:start}
.lodge-stack{max-width:600px}
.lodge-stack img{width:100%;aspect-ratio:4/5;object-fit:cover}
.lodge-road{border-top:var(--stitch);padding-top:20px}
.lodge-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 0}

/* 9 · tweener-button */
.tweener{background-color:var(--navy);color:#fff;padding-block:88px}
.tweener-lay{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:center}
.tweener h2{font-size:clamp(44px,5.4vw,80px);line-height:.98;margin-bottom:24px}
.tweener-words p{max-width:58ch}
.tweener-hint{font-weight:700;font-size:14px;margin-top:24px}
.placket{width:min(100%,360px);justify-self:center}
.placket-shirt{position:relative}
.placket-art{display:block;width:100%;height:auto}
.pa-shirt{fill:#dce5ea}
.pa-check{fill:none;stroke:#c2d0d9;stroke-width:1}
.pa-band{fill:#edf2f5;stroke:rgba(0,42,68,.22)}
.pa-stitch{fill:none;stroke:rgba(0,42,68,.5);stroke-dasharray:4 4}
.pa-collar{fill:#fff;stroke:rgba(0,42,68,.35)}
.pa-btn circle:first-child{fill:#fff;stroke:var(--navy);stroke-width:1.5}
.pa-hole{fill:var(--navy)}
.pa-num{font-family:var(--sans);font-size:15px;font-weight:700;fill:rgba(0,42,68,.6)}
.pa-gape{fill:var(--navy);transform-box:fill-box;transform-origin:center;transition:transform .26s var(--ease-out)}
.pa-tween circle:first-child{fill:#edf2f5;stroke:var(--maroon);stroke-width:1.5;stroke-dasharray:3 2.6;transition:fill .2s ease}
.placket[data-on="true"] .pa-gape{transform:scaleX(.05)}
.placket[data-on="true"] .pa-tween circle:first-child{fill:var(--maroon);stroke-dasharray:none}
.placket[data-on="true"] .pa-tween .pa-hole{fill:#fff}
.tweener-press{position:absolute;left:50%;top:57.69%;width:48px;height:48px;margin:-24px 0 0 -24px;padding:0;border-radius:50%;border:1.5px dashed var(--maroon);background:transparent;cursor:pointer;transition:transform .14s var(--ease-out)}
.tweener-press:active{transform:scale(.92)}
.tweener-press[aria-pressed="true"]{border-style:solid}
.tweener-press:focus-visible{outline:2px solid var(--navy);outline-offset:3px}
.tweener-state{margin:16px 0 0;text-align:center;font-size:14px;font-weight:700}

/* 10 · rooted-in-golf */
.golf{padding-block:96px}
.golf-lay{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;align-items:start;margin-top:12px}
.golf-shop{position:sticky;top:24px}
.golf-shop img{width:100%;aspect-ratio:2/3;object-fit:cover}
.golf-story h3,.golf-cal h3{margin-top:24px}
.golf-cal h3:first-child{margin-top:0}
.cal-quote{margin:24px 0;padding:20px 0 0;border-top:var(--stitch)}
.cal-quote p{font-family:var(--serif);font-size:26px;line-height:1.18;margin:0 0 10px}
.cal-quote footer{font-size:14px;font-weight:700}

/* 11 · company-we-keep */
.company{padding-block:0 96px}
.company-lay{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:48px;align-items:start}
.company-photo{position:sticky;top:24px}
.company-photo img{width:100%;aspect-ratio:2/3;object-fit:cover}
.crew{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px;margin:32px 0}
.crew li{border-top:var(--stitch);padding-top:16px}
.crew p{margin:0;font-size:15px}

/* 12 · game-day */
.gameday{height:clamp(480px,41.7vw,800px);background-color:var(--navy);color:#fff;overflow:hidden}
.gameday-copy{position:absolute;inset:auto 0 0 0;padding:0 24px 52px;text-align:center}
.gameday-copy h2{margin-bottom:8px}
.gameday-copy p{font-weight:600;margin:0 0 18px}
.gameday-copy p:last-child{margin:0}

/* 13 · hoppin-pops */
.hoppin{padding-block:96px}
.hoppin-lay{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,3fr) minmax(0,3fr);gap:8px;align-items:center}
.hoppin-words{padding-right:56px}
.hoppin-stack img{width:100%;aspect-ratio:4/5;object-fit:cover}
.roster{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 32px;margin-top:48px}
.roster li{border-top:var(--stitch);padding:18px 0 22px}
.roster-team{display:block;font-family:var(--serif);font-size:22px;line-height:1.15;margin-bottom:8px}
.roster-price{display:block;font-size:14px;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.hoppin-rules{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,6fr) minmax(0,3fr);gap:32px;align-items:start;border-top:var(--stitch);padding-top:24px}
.hoppin-rules p{margin:0}
.hoppin-rules p:last-child{justify-self:end}
.league-lines{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 32px;font-size:15px}

/* 14 · hand-me-down-status */
.heirloom{padding-block:0 96px}
.heirloom-lay{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:center}
.heirloom-photo img{width:100%;aspect-ratio:1600/1286;object-fit:cover}
.heirloom h2{font-size:clamp(40px,4.4vw,64px);line-height:1}
.heirloom h3{margin-top:24px}

/* 15 · details-that-make-us */
.details{padding-block:0 96px}
.twenty-head{border-top:var(--stitch);padding-top:56px}
.details-head,.wingman-head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:end;border-top:var(--stitch);padding-top:56px}
.details-head p,.wingman-head p{font-size:18px;font-weight:500;margin:0 0 20px}
.top-shelf{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;background:var(--tile);padding:40px;margin:20px 0 52px}
.top-shelf p:last-child{margin:0}
.stitch-count{font-family:var(--serif);font-size:clamp(28px,3vw,44px);line-height:1.06;margin:0 0 16px;color:var(--maroon)}
.top-shelf ul{margin:0 0 0 18px}
.glossary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 32px;margin:0}
.glossary div{border-top:var(--stitch);padding-top:14px}
.glossary dt{font-family:var(--serif);font-size:24px;line-height:1.15}
.glossary dd{margin:8px 0 0;font-size:15px}
.details-actions{margin:36px 0 0}

/* 16 · twenty-years-later */
.twenty{padding-block:0 96px}
.twenty-head{display:block;text-align:center;margin-bottom:36px}
.twenty-words{max-width:64ch;margin:20px auto 0}
.twenty h2{font-size:clamp(48px,7vw,104px);line-height:.94;margin:0}
.twenty-words .pull{margin:8px 0 0}
.timeline{border:1px solid rgba(0,42,68,.16);padding:clamp(8px,2vw,24px)}
.timeline img{width:100%;height:auto}
.twenty-actions{margin:28px 0 0}

/* 17 · the-pocket */
.pocket{padding-block:0 104px}
.pocket-head h2{font-size:clamp(40px,4.4vw,64px);line-height:1;margin-bottom:32px;text-align:center}
.pocket-sewn{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px dashed var(--navy);border-radius:0 0 30px 30px;outline:1px solid var(--navy);outline-offset:6px;overflow:hidden}
.pocket-sewn li{padding:26px 24px 22px;margin:-1px 0 0 -1px;border-top:var(--stitch);border-left:var(--stitch);font-size:15px}
.pocket-sewn p{margin:0 0 8px}
.pocket-num{font-family:var(--serif);font-size:clamp(36px,3.6vw,54px);line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums;margin-bottom:12px}
.pocket-foot{margin:36px 0 0;font-size:15px}
.pocket-foot .inked{margin-left:12px}

/* 18 · wingman */
.wingman{padding-block:0 96px}
.wing-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start;margin-top:12px}
.wing-q{background:var(--tile)}
.wing-q summary{text-transform:uppercase;position:relative;cursor:pointer;list-style:none;padding:18px 52px 18px 20px;min-height:56px;font-size:14px;font-weight:700;letter-spacing:.03em}
.wing-q summary::-webkit-details-marker{display:none}
.wing-q summary::after{content:"+";position:absolute;right:20px;top:11px;font-size:24px;font-weight:400;line-height:1.3}
.wing-q[open] summary::after{content:"\2013"}
.wing-q p{margin:0;padding:0 20px 16px;font-size:15px}
.wing-lines{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2fr);gap:32px;align-items:center;margin-top:40px;border-top:var(--stitch);padding-top:24px;font-size:15px}
.wing-lines a{display:inline-flex;align-items:center;min-height:44px;font-family:var(--serif);font-size:clamp(24px,2.2vw,32px);text-decoration:none;white-space:nowrap;font-variant-numeric:tabular-nums}

/* 19 · our-stores */
.stores{padding-bottom:96px}
.stores-band{position:relative;height:clamp(320px,27vw,520px);background-color:var(--navy);color:#fff;overflow:hidden}
.stores-band-copy{position:absolute;left:var(--gutter);right:var(--gutter);bottom:36px;text-align:center}
.stores-band-copy h2{font-size:clamp(40px,4.6vw,64px);line-height:1;margin-bottom:6px}
.stores-band-copy p{font-weight:600;margin:0}
.stores-line{margin:56px 0 44px}
.store-directory{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 32px}
.store-directory li{border-top:var(--stitch);padding:16px 0 26px;font-size:14px;line-height:1.45}
.store-directory h3{font-size:22px;margin-bottom:2px}
.store-directory p{margin:0;font-variant-numeric:tabular-nums}
.store-where{font-weight:700}
.store-where+p{margin-top:6px}
.store-hours{color:var(--ash)}
p:not(.store-hours)+.store-hours{margin-top:6px}

/* 20 · keep-in-touch */
.touch{background-color:var(--navy);color:#fff;padding-block:80px}
.touch-lay{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:center}
.touch h2{font-size:clamp(40px,4.4vw,64px);line-height:1}
.touch-actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 0}
.touch-photo img{width:100%;height:auto}

/* revelação: estado escondido só sob .com-js */
.com-js .rv{transition:opacity .7s var(--ease-out),transform .7s var(--ease-out),clip-path .9s var(--ease-out);transition-delay:calc(var(--i,0) * 70ms)}
.com-js .rv:not(.in){opacity:0;transform:translateY(16px)}
.com-js .rv-wipe:not(.in){opacity:1;transform:none;clip-path:inset(0 0 100% 0)}
.trunk-words .rv:nth-child(2),.placket-row li:nth-child(2),.tile-quad li:nth-child(2),.roster li:nth-child(2),.essentials-notes p:nth-child(2){--i:1}
.trunk-words .rv:nth-child(3),.placket-row li:nth-child(3),.tile-quad li:nth-child(3),.roster li:nth-child(3),.essentials-notes p:nth-child(3){--i:2}
.trunk-actions.rv,.placket-row li:nth-child(4),.tile-quad li:nth-child(4),.roster li:nth-child(4){--i:3}
.placket-row li:nth-child(5){--i:4}
.placket-row li:nth-child(6){--i:5}
.pocket-sewn li:nth-child(even),.crew li:nth-child(even),.glossary div:nth-child(even){--i:1}

@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media (prefers-reduced-motion:reduce){
  .com-js .rv{transition:opacity .3s linear;transition-delay:0s}
  .com-js .rv:not(.in){transform:none}
  .com-js .rv-wipe:not(.in){clip-path:none;opacity:0}
  .pa-gape,.tweener-press,.ghost,.solid,.outlined{transition:none}
}

/* quebras: onde o conteúdo deixa de caber */
@media (max-width:1180px){
  .glossary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .store-directory{grid-template-columns:repeat(3,minmax(0,1fr))}
  .masthead-nav{gap:20px}
}
@media (max-width:980px){
  .origin-lay,.original-lay,.ledger-head,.crossroads-lay,.lodge-lay,.tweener-lay,.golf-lay,.company-lay,.heirloom-lay,.details-head,.wingman-head,.top-shelf,.touch-lay{grid-template-columns:minmax(0,1fr);gap:32px}
  .origin-lay,.ledger-head,.details-head,.wingman-head{align-items:start}
  .trunk-copy{gap:20px}
  .origin-face{max-width:420px}
  .surf-collage{max-width:560px}
  .polo-tile,.lodge-stack{max-width:420px}
  .golf-shop,.company-photo{position:static;max-width:520px}
  .crossroads-snap{justify-self:start}
  .placket-row{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:44px}
  .hoppin-lay{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hoppin-words{grid-column:1/-1;padding:0 0 16px}
  .roster{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hoppin-rules{grid-template-columns:minmax(0,1fr);gap:16px}
  .hoppin-rules p:last-child{justify-self:start}
  .pocket-sewn{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wing-lines{grid-template-columns:minmax(0,1fr);gap:8px}
  .masthead-nav{display:none}
  .top-shelf{padding:28px}
}
@media (max-width:860px){
  .pacote{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:8px 12px}
  .pacote-abas{display:contents}
  .pacote-abas a,.chat{justify-content:center;text-align:center;padding:0 6px;font-size:13px;min-height:44px;border:1px solid rgba(0,42,68,.2)}
  .pacote-abas a[aria-current="page"]{border-color:var(--navy)}
  .chat{border-color:var(--navy)}
}
@media (max-width:760px){
  :root{--gutter:16px}
  .origin{padding-block:56px}
  .original,.trunk-ledger,.essentials,.company,.heirloom,.details,.twenty,.wingman{padding-bottom:64px}
  .lodge,.golf,.hoppin{padding-block:64px}
  .crossroads,.tweener,.touch{padding-block:56px}
  .pocket{padding-bottom:72px}
  .stores{padding-bottom:64px}
  .essentials-lay,.poster-quad,.essentials-notes,.wing-list{grid-template-columns:minmax(0,1fr)}
  .essentials-notes{gap:16px}
  .tile-quad{grid-template-rows:auto}
  .tile img{flex:none;height:auto;aspect-ratio:4/5}
  .ghost{background:#fff;color:var(--navy)}
  .trunk-photo{height:560px}
  .trunk-photo .photo-shade{background:linear-gradient(to top,rgba(0,26,43,.9) 0%,rgba(0,26,43,.7) 45%,rgba(0,26,43,0) 82%)}
  .trunk-photo img{object-position:50% 30%}
  .trunk-copy{bottom:24px}
  .gameday{height:520px}
  .glossary,.store-directory,.crew{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
  .glossary div,.crew li{padding-bottom:20px}
  .crew{gap:0 16px}
  /* tabela vira ficha */
  .ledger thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .ledger tr{display:block;border-top:var(--stitch);padding:14px 0}
  .ledger th,.ledger td{display:block;border:0;padding:2px 0}
  .ledger .ledger-price{text-align:left;padding-top:8px}
  .pocket-foot .inked{margin-left:0;display:flex}
}
@media (max-width:560px){
  .placket-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .roster,.league-lines,.pocket-sewn,.crew,.glossary{grid-template-columns:minmax(0,1fr)}
  .surf-collage{padding:0 28px 56px 0}
  .store-directory{gap:0 14px}
  .store-directory h3{font-size:19px}
  .store-directory li{font-size:13px}
}
@media (max-width:359px){
  .pacote-abas .longo{display:none}
  .pacote-abas .curto{display:inline}
}
/* Lote 7: blocos de coleção e serviço com título centralizado, como os blocos de coleção da home real (Men's New Arrivals, Game Day, Signature Essentials); editoriais seguem à esquerda */
.ledger-head,.details-head,.wingman-head{display:block;text-align:center}
.ledger-head p,.details-head p,.wingman-head p{max-width:62ch;margin-inline:auto}
.ledger-head h2,.details-head h2,.wingman-head h2{margin-bottom:16px}
.touch-words{text-align:center}
.touch-words p{margin-inline:auto;max-width:46ch}
.touch-actions{justify-content:center}
.full-line > h2{text-align:center}
