/* Overland Solution — a trailhead field map. Gravel paper, forest-green ink, a trail-blaze accent, brushed-steel tags
   on a carabiner line. A condensed display face for the logo's tall letters. The kit carries the plumbing. */
body.os2{font-family:var(--sans);font-size:17.5px;line-height:1.7;background:var(--paper);color:var(--body);font-variant-numeric:lining-nums}
body.os2 h1,body.os2 h2,body.os2 h3{font-family:var(--serif);color:var(--ink);letter-spacing:.005em;text-transform:uppercase}
.ed{font-weight:800;line-height:.98;text-wrap:balance;padding-bottom:.04em}
.ed em{font-style:normal;font-weight:600;color:var(--accent-txt)}
h2.ed{font-size:clamp(2.6rem,5vw,4.6rem);margin:0 0 18px}
.kick{font-family:var(--sans);font-size:15px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-txt);margin:0 0 16px;display:flex;align-items:center;gap:12px}
.blaze{display:inline-block;width:12px;height:22px;background:var(--accent-lt);border-radius:1px;box-shadow:inset 0 -3px 0 rgba(0,0,0,.12)}
.lede{color:var(--muted)}
.center-tx{text-align:center}.center-tx .kick{justify-content:center}
.btns{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:28px}.btns.center{justify-content:center}
figure{margin:0}
figcaption{font-size:14.5px;color:var(--muted);margin-top:10px}
.tlink{font-weight:700;color:var(--ink);display:inline-flex;align-items:center;min-height:44px}
.tlink.lt{color:#F8F6F0!important}

/* the one button: forest green, square, a blaze rule that lights on hover */
.btn.obtn{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:#F8F6F0;border:1px solid var(--ink);border-radius:var(--btn-r);padding:16px 26px;min-height:52px;
  font-family:var(--sans);font-size:16px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;
  box-shadow:inset 0 -3px 0 var(--accent-lt),var(--lift-1,0 8px 20px -14px rgba(29,42,33,.6));transition:background-color .3s var(--ease-out,ease),transform .3s var(--ease-out,ease)}
.btn.obtn:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-2px)}

/* ── header: the compass and the two-line wordmark, three links, the phone, one button ── */
.nav.ov{position:sticky;top:0;z-index:90;background:rgba(242,238,228,.93);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav.ov .nav-in{display:flex;align-items:center;gap:30px;height:var(--nav-h)}
.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;flex:0 0 auto;min-height:44px}
.cmp{width:44px;height:44px;color:var(--ink);flex:0 0 auto}
.bw{display:grid;line-height:.95}
.bw b{font-family:var(--serif);font-size:32px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.bw span{font-family:var(--sans);font-size:12.5px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.nav.ov .nlinks{display:flex;gap:28px;margin-left:10px}
.nav.ov .nlinks a{position:relative;display:inline-flex;align-items:center;min-height:44px;font-size:17px;font-weight:600;color:var(--ink);text-decoration:none}
.nav.ov .nlinks a::after{content:'';position:absolute;left:0;right:100%;bottom:8px;height:3px;background:var(--accent-lt);transition:right .35s var(--ease-out,ease)}
.nav.ov .nlinks a:hover::after,.nav.ov .nlinks a[aria-current]::after{right:0}
.nav.ov .ncta{margin-left:auto;display:flex;align-items:center;gap:22px}
.nav.ov .nphone{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;min-height:44px;font-size:17px;font-weight:700;color:var(--ink);text-decoration:none;line-height:1.15}
.nav.ov .nphone span{font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-txt);margin-bottom:3px}
.nav.ov .btn.obtn{padding:13px 20px;font-size:15px}
@media(max-width:1120px){.nav.ov .nlinks,.nav.ov .nphone{display:none}.nav.ov .menubtn{display:inline-flex}}
@media(max-width:640px){:root{--nav-h:76px}.bw b{font-size:26px}.bw span{font-size:11px;letter-spacing:.24em}.cmp{width:36px;height:36px}.nav.ov .ncta .btn.obtn{display:none}}

/* ── hero: the gravel road where the pavement ends, the headline flanked by the two ends of the run ── */
body.os2 [data-hero="flanked"]{--hx-fs:clamp(3.4rem,8.4vw,9rem);--hx-w:800;--hx-lh:.9}
body.os2 [data-hero="flanked"] h1{text-transform:uppercase;letter-spacing:.01em;max-width:11ch}
body.os2 [data-hero="flanked"] h1 em{font-style:normal;color:#F6C89F;display:block}
body.os2 .hx-flanked::before{background:linear-gradient(180deg,rgba(16,22,17,.66) 0%,rgba(16,22,17,.5) 45%,rgba(16,22,17,.72) 100%)}
body.os2 .hx-flanked .hx-lab{font-size:14px;letter-spacing:.24em;font-weight:700}
body.os2 .hx-flanked .hx-lab:first-child::after,body.os2 .hx-flanked .hx-lab:last-child::before{content:'';display:inline-block;vertical-align:middle;width:34px;height:2px;background:#F6C89F;margin:0 12px}
body.os2 .hx-flanked .hx-sub{font-size:clamp(1.08rem,1.4vw,1.25rem)}
body.os2 .hx-btn{background:#F8F6F0;color:var(--ink);text-transform:uppercase;font-weight:700;box-shadow:inset 0 -3px 0 var(--accent-lt)}
body.os2 .hx-btn:hover{background:#F6C89F}

/* ── THE SIGNATURE MOMENT: trail tags on a carabiner line ── */
.tags{padding:clamp(80px,10vw,140px) 0;background:var(--paper-2);border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.tags::before{content:'';position:absolute;inset:0;opacity:.5;pointer-events:none;
  background:repeating-radial-gradient(circle at 85% 20%,transparent 0 38px,rgba(29,42,33,.07) 39px 40px)}
.tags-in{position:relative}
.tags-head{max-width:760px;margin-bottom:34px}
.line{position:relative;height:30px;margin:0 0 -6px}
.line::before{content:'';position:absolute;left:0;right:0;top:14px;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--steel-dk),var(--steel-lt) 30%,var(--steel) 70%,var(--steel-dk))}
.biner{position:absolute;left:6%;top:0;width:26px;height:34px;border:4px solid var(--steel-dk);border-radius:13px;background:transparent}
.tg-row{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,380px));gap:clamp(24px,4vw,60px)}
.tg{position:relative;padding-top:26px}
.tg::before{content:'';position:absolute;left:50%;top:-6px;width:3px;height:36px;background:var(--steel-dk)}
.tg-flip{position:absolute;opacity:0;width:1px;height:1px}
.tg-card{display:grid;position:relative;cursor:pointer;perspective:1400px}
.tg-face{grid-area:1/1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:46px 30px 34px;border-radius:26px;
  background:linear-gradient(150deg,#E9ECEC 0%,#C7CBCD 40%,#B1B6B8 62%,#DADDDE 100%);color:#1E2522;
  box-shadow:inset 0 2px 1px rgba(255,255,255,.7),inset 0 -3px 5px rgba(29,42,33,.22),var(--lift-2,0 22px 40px -24px rgba(29,42,33,.6));
  backface-visibility:hidden;transition:transform .7s var(--ease-out,cubic-bezier(.2,.7,.3,1))}
.tg-hole{width:18px;height:18px;border-radius:50%;background:var(--paper-2);box-shadow:inset 0 2px 3px rgba(0,0,0,.45),0 1px 0 rgba(255,255,255,.6);margin-bottom:8px}
.tg-k{font-size:13px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:#47504C}
.tg-brand{font-family:var(--serif);font-size:2.6rem;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.03em}
.tg-what{font-size:16px;color:#3A423E;max-width:24ch}
.tg-off{font-family:var(--serif);font-size:4.2rem;font-weight:800;line-height:.9;color:var(--accent-txt);margin-top:8px;text-shadow:0 1px 0 rgba(255,255,255,.5)}
.tg-code{font-family:ui-monospace,Menlo,monospace;font-size:19px;font-weight:700;letter-spacing:.14em;padding:8px 14px;border:2px dashed #47504C;border-radius:3px}
.tg-turn{font-size:14.5px;font-weight:700;color:#3A423E;margin-top:8px;text-decoration:underline;text-underline-offset:4px}
.tg-back{transform:rotateY(180deg)}
.tg-back img{width:min(220px,70%);height:auto;border-radius:6px;box-shadow:0 0 0 8px #F6F3EA}
.tg-scan{font-size:16px;font-weight:700;margin-top:14px}
.tg-flip:checked+.tg-card .tg-front{transform:rotateY(-180deg)}
.tg-flip:checked+.tg-card .tg-back{transform:rotateY(0)}
.tg-flip:focus-visible+.tg-card .tg-face{outline:3px solid var(--accent-lt);outline-offset:4px}
.tg-card:hover .tg-front{transform:rotate(-1.5deg)}
.tg-flip:checked+.tg-card:hover .tg-front{transform:rotateY(-180deg)}
.tg-under{padding:20px 6px 0}
.tg-under p{margin:0 0 10px;font-size:16.5px;color:var(--body)}
.tg-go{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:var(--ink);text-decoration-color:var(--accent-lt);text-underline-offset:5px;text-decoration-thickness:2px}
.tg-open .tg-face{background:transparent;border:2px dashed var(--steel);box-shadow:none;color:var(--muted)}
.tg-open .tg-brand{color:var(--steel-dk)}
.tg-open .tg-hole{background:transparent;box-shadow:inset 0 0 0 2px var(--steel)}
.tags-note{max-width:62ch;margin:44px 0 0;font-size:16px;color:var(--muted);padding-left:18px;border-left:3px solid var(--accent-lt)}
@media(prefers-reduced-motion:reduce){.tg-face{transition:none}}
@media(max-width:760px){.tg-row{grid-template-columns:1fr}.tg-brand{font-size:2.2rem}.tg-off{font-size:3.4rem}}

/* ── the routes: three stops on one topo line ── */
.routes{padding:clamp(80px,10vw,140px) 0;background:var(--paper)}
.rt-head{max-width:780px;margin-bottom:30px}
.rt-map{position:relative}
.topo{display:block;width:100%;height:90px;color:var(--accent-lt);margin-bottom:10px}
.rt-stops{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,44px)}
.rt{position:relative}
.rt-pin{position:absolute;top:-14px;left:16px;z-index:2;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--ink);color:#F6C89F;
  font-family:var(--serif);font-size:24px;font-weight:800;box-shadow:0 0 0 5px var(--paper)}
.rt-ph{position:relative;overflow:hidden;border-radius:3px}
.rt-ph img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .9s var(--ease-out,ease)}
.rt:hover .rt-ph img{transform:scale(1.035)}
.rt-ph figcaption{font-size:14px;margin-top:8px}
.rt h3{font-size:2.1rem;margin:18px 0 2px;line-height:1}
.rt-w{font-weight:700;color:var(--accent-txt);margin:0 0 8px;font-size:16px;letter-spacing:.04em}
.rt p{margin:0 0 6px}
.routes.full .rt-ph img{aspect-ratio:3/4}
@media(max-width:900px){.rt-stops{grid-template-columns:1fr}.rt-ph img{aspect-ratio:16/11}.topo{display:none}}

/* ── a photograph band with his own sentence on it ── */
.band{position:relative;min-height:clamp(440px,64vh,640px);display:flex;align-items:center;overflow:hidden;background:var(--ink)}
.band-ph,.band-ph img{position:absolute;inset:0;width:100%;height:100%}
.band-ph img{object-fit:cover}
.band::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,22,17,.84) 0%,rgba(16,22,17,.66) 50%,rgba(16,22,17,.36) 100%)}
.band-in{position:relative;z-index:2}
.band-q{margin:0;max-width:24ch}
.band-q p{font-family:var(--serif);font-size:clamp(2.2rem,4.4vw,4rem);font-weight:700;line-height:1.02;text-transform:uppercase;color:#F8F6F0;margin:0 0 18px}
.band-q footer{font-size:15px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#F6C89F}
.band-cap{position:absolute;left:0;right:0;bottom:16px;z-index:2;margin:0 auto;font-size:14px;color:rgba(248,246,240,.9);text-align:right}

/* ── the outfit and the badge (About) ── */
.outfit{padding:clamp(80px,10vw,140px) 0;background:var(--stone)}
.outfit-in{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,90px);align-items:center}
.badge img{display:block;width:100%;height:auto;border-radius:6px;box-shadow:var(--lift-3,0 30px 60px -30px rgba(29,42,33,.6));transform:rotate(-1.5deg)}
.pull{margin:28px 0 0;padding:0 0 0 22px;border-left:4px solid var(--accent-lt)}
.pull p{font-family:var(--serif);font-size:clamp(1.6rem,2.4vw,2.2rem);font-weight:700;line-height:1.1;text-transform:uppercase;color:var(--ink);margin:0}
@media(max-width:860px){.outfit-in{grid-template-columns:1fr}.badge{max-width:420px}}

/* ── steps, faq, credits ── */
.how3,.faqs,.credits{padding:clamp(72px,9vw,120px) 0}
.how3{background:var(--paper-2);border-bottom:1px solid var(--line)}
.how-row{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:3px solid var(--ink)}
.how-row li{padding:26px 26px 6px 0}
.how-row li+li{padding-left:26px;border-left:1px solid var(--line)}
.sn{display:block;font-family:var(--serif);font-size:3.4rem;font-weight:800;line-height:1;color:var(--accent-lt);margin-bottom:10px}
.how-row h3{font-size:1.9rem;margin:0 0 6px;line-height:1}
.how-row p{margin:0;font-size:16.5px}
@media(max-width:800px){.how-row{grid-template-columns:1fr}.how-row li+li{padding-left:0;border-left:0;border-top:1px solid var(--line)}}
.faqs{background:var(--paper)}
.faqs-in{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(30px,5vw,80px)}
.faq summary{font-family:var(--sans);font-size:1.2rem;font-weight:700;color:var(--ink)}
.faq .ans p{margin:0 0 20px}
@media(max-width:860px){.faqs-in{grid-template-columns:1fr}}
.credits{background:var(--paper-2);border-top:1px solid var(--line)}
.cr-list{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:0;border-top:2px solid var(--ink)}
.cr-list li{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px;padding:16px 0;border-bottom:1px solid var(--line);font-size:16px}
.cr-list b{color:var(--ink);font-weight:600}.cr-list span{color:var(--muted)}
@media(max-width:700px){.cr-list li{grid-template-columns:1fr;gap:4px}}

/* ── closing frame + form ── */
.close{padding:clamp(80px,10vw,140px) 0;background:var(--paper-2);border-top:1px solid var(--line)}
.close-in{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,90px);align-items:start}
.ci{display:grid;gap:2px;margin:0 0 18px;font-size:18px;font-weight:600;color:var(--ink)}
.ci span{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-txt)}
.ci a{color:var(--ink);text-decoration-color:var(--accent-lt);text-underline-offset:4px;display:inline-block;padding:8px 0;margin:-8px 0}
.cmp.big{width:120px;height:120px;color:var(--steel);margin-top:30px}
.oform{background:#FBFAF6;border:1px solid var(--line);border-top:4px solid var(--accent-lt);padding:clamp(24px,3.4vw,44px);box-shadow:var(--lift-2,0 30px 60px -44px rgba(29,42,33,.55))}
.oform .frow{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.oform .fld label{font-size:13.5px;letter-spacing:.14em;color:var(--steel-dk);font-weight:700}
.oform .fld input,.oform .fld textarea{background:#FFFDF8;border:1px solid var(--line);border-radius:2px;padding:14px;font-size:17px}
.oform .btn.obtn{width:100%;margin-top:6px}
.fnote{margin:16px 0 0;text-align:center;color:var(--muted);font-size:16px}
.fnote a{color:var(--ink);font-weight:700}
@media(max-width:860px){.close-in{grid-template-columns:1fr}.cmp.big{display:none}}
@media(max-width:560px){.oform .frow{grid-template-columns:1fr}}

/* ── page headers ── */
.phead{position:relative;min-height:clamp(400px,58vh,580px);display:flex;align-items:flex-end;overflow:hidden;background:var(--ink)}
.phead-ph,.phead-ph img,.phead-ph picture{position:absolute;inset:0;width:100%;height:100%}
.phead-ph img{object-fit:cover}
.phead::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(16,22,17,.92) 0%,rgba(16,22,17,.78) 45%,rgba(16,22,17,.58) 100%)}
.phead-in{position:relative;z-index:2;padding-block:120px 56px}
body.os2 .phead h1{font-size:clamp(3rem,6.6vw,6.4rem);color:#F8F6F0;margin:0 0 14px;max-width:14ch}
body.os2 .phead h1 em{color:#F6C89F}
.phead .sub{font-size:1.15rem;color:rgba(248,246,240,.92);max-width:52ch;margin:0}
.crumbs{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#F6C89F;margin:0 0 14px}
.crumbs a{color:#F8F6F0;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}

/* ── footer ── */
.ofoot{background:var(--stone);border-top:3px solid var(--ink);padding:76px 0 120px}
.of-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.of-brand p{margin:16px 0 0;max-width:34ch}
.ofoot h4{font-family:var(--sans);font-size:13.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-txt);margin:0 0 14px}
.ofoot p{margin:0 0 8px}
.ofoot a:not(.btn):not(.brand){color:var(--ink);font-weight:600;text-decoration:none;display:inline-block;padding:10px 0;margin:-10px 0}
.ofoot .btn.obtn{margin-top:12px;padding:13px 18px;font-size:14.5px}
.of-disc{margin:44px 0 0;font-size:15px;color:var(--muted)}
.of-bot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:22px;padding-top:22px;border-top:1px solid var(--line);font-size:14.5px}
@media(max-width:900px){.of-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.of-grid{grid-template-columns:1fr}}
.err404{padding:160px 0}
.bookbar .b1{background:var(--ink)!important;border-color:var(--ink)!important;color:#F8F6F0!important}

/* ── gate fixes (2026-10-01): scrims the gate can read, spacing, floors, varied openings ── */
body.os2 .hx-flanked::before{background:linear-gradient(180deg,rgba(14,19,15,.84) 0%,rgba(14,19,15,.8) 50%,rgba(14,19,15,.86) 100%)}
.phead::after{background:linear-gradient(0deg,rgba(14,19,15,.95) 0%,rgba(14,19,15,.9) 45%,rgba(14,19,15,.8) 100%)}
.band::after{background:linear-gradient(90deg,rgba(14,19,15,.9) 0%,rgba(14,19,15,.82) 55%,rgba(14,19,15,.7) 100%)}
.badge{transform:rotate(-1.5deg)}
.badge img{transform:none;border-radius:0}
.rt h3{margin-bottom:10px}
.band-cap{font-size:15px}
.ofoot h4{letter-spacing:.2em}
body.os2 .ofoot h4{letter-spacing:.2em}
.tags-note,.of-disc{max-width:62ch}
.rt-say{font-family:var(--serif);font-size:clamp(1.5rem,2.2vw,2rem);font-weight:600;line-height:1.15;text-transform:uppercase;color:var(--muted);margin:0}
.outfit-tx h2{margin-top:0}
.close-tx .kick{margin-bottom:22px}
/* the gate reads the scrim from the photo's own frame (the ::after of an ancestor INSIDE the section) */
body.os2 .hx-flanked::before,.phead::after,.band::after{background:none}
.hx-flanked .hx-ph::after,.phead-ph::after,.band-ph::after{content:'';position:absolute;inset:0;pointer-events:none}
body.os2 .hx-flanked .hx-ph::after{background:linear-gradient(180deg,rgba(14,19,15,.8) 0%,rgba(14,19,15,.74) 50%,rgba(14,19,15,.84) 100%)}
.phead-ph::after{background:linear-gradient(0deg,rgba(14,19,15,.92) 0%,rgba(14,19,15,.84) 50%,rgba(14,19,15,.74) 100%)}
.band-ph::after{background:linear-gradient(90deg,rgba(14,19,15,.86) 0%,rgba(14,19,15,.74) 55%,rgba(14,19,15,.6) 100%)}
.how-row h3{margin-bottom:12px}
.rt-say{text-transform:none;font-family:var(--sans);font-size:clamp(1.15rem,1.6vw,1.35rem);font-weight:600;line-height:1.5;color:var(--muted);max-width:52ch}
body.os2 .phead .crumbs{color:#F6C89F}
body.os2 .phead .crumbs a{color:#F8F6F0}
body.os2 .phead .sub{color:rgba(248,246,240,.92)}
body.os2 .band-q p{color:#F8F6F0}
body.os2 .band-q footer,body.os2 .band-q footer a{color:#F6C89F}
body.os2 .band-cap{color:rgba(248,246,240,.92)}
.phead-ph::after{background:linear-gradient(0deg,rgba(14,19,15,.94) 0%,rgba(14,19,15,.9) 50%,rgba(14,19,15,.86) 100%)}

/* ── LUXURY PASS (10/1 night): wider quote measure, tags as a two-column spread, a folded type scale ── */
.band{min-height:clamp(480px,70vh,700px);padding:clamp(80px,9vw,130px) 0}
.band-q{max-width:min(860px,100%)}
.band-q p{font-size:clamp(2rem,3.8vw,3.6rem);line-height:1.04;text-wrap:balance}
@media(min-width:900px){
  .tags-in{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-areas:"head line" "head row" "note row";gap:0 clamp(40px,6vw,96px);align-items:start}
  .tags-head{grid-area:head;margin:0}
  .line{grid-area:line;margin-top:8px}
  .tg-row{grid-area:row;grid-template-columns:repeat(2,minmax(0,1fr))}
  .tags-note{grid-area:note;margin-top:30px}
}
.cmp.big{display:none}
/* the type scale, folded to five sizes: display, h3, body 17.5, small 15, label 13.5 */
.tg-under p,.rt p,.how-row p,.outfit-tx .lede,.lede{font-size:17.5px}
.rt-ph figcaption,figcaption,.tags-note,.of-disc,.fnote,.cr-list li,.band-cap{font-size:15px}
.tg-what,.tg-turn,.tg-scan{font-size:15px}
.kick,.nav.ov .nphone span,.ci span,.ofoot h4,.oform .fld label,.crumbs,.tg-k{font-size:13.5px}
.rt-w{font-size:15px;letter-spacing:.08em;text-transform:uppercase}
a,button{transition-duration:.3s}
body.os2 .ofoot h4{letter-spacing:.2em!important}
.kick,p.kick{font-size:15px}

/* ── 10/2: his own rigs, shown clean. The heading and the copy share a row, the photograph runs the full measure. ── */
.rigs{padding:clamp(80px,10vw,140px) 0;background:var(--stone)}
.rigs-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,90px);align-items:end;margin-bottom:clamp(36px,5vw,64px)}
.rigs-head h2{margin:0}
.rigs-tx .lede{margin:0 0 14px}
.rigs-tx .btns{margin-top:22px}
.rigs-ph{margin:0}
.rigs-ph img{display:block;width:100%;height:auto;aspect-ratio:1792/828;object-fit:cover}
.rigs-ph figcaption{margin-top:14px;color:var(--muted)}
@media(max-width:860px){.rigs-head{grid-template-columns:1fr;align-items:start}}
@media(max-width:700px){.rigs-ph img{aspect-ratio:4/3}}
.rigs-head h2 em{display:block}

/* ══ LUXURY PASS (10/2, Adam: "make it more luxury"). An outfitter's field catalogue: a Garamond with a real italic
   carries the voice in sentence case; his logo's condensed letters stay for the wordmark, the labels and the stamped
   tags; the photographs are shown clear (scrims only under the words); hairlines replace bars; one quiet button. ══ */
body.os2 h1,body.os2 h2,body.os2 h3{font-family:var(--serif);font-weight:400;text-transform:none;letter-spacing:-.012em}
.ed{font-weight:400;line-height:1.02;padding-bottom:.08em}
.ed em{font-style:italic;font-weight:400;color:var(--accent-txt)}
h2.ed{font-size:clamp(2.6rem,4.7vw,4.5rem);margin:0 0 22px}

/* labels: his logo's letters, small and tracked, behind a hairline */
.kick{font-family:var(--cond);font-size:17px;font-weight:600;letter-spacing:.24em;gap:14px;margin:0 0 20px}
.blaze{width:34px;height:1px;background:currentColor;border-radius:0;box-shadow:none}
.rt-w,.ci span,.ofoot h4,body.os2 .ofoot h4,.crumbs,.oform .fld label,.nav.ov .nphone span,.tg-k,.band-q footer,.pl{font-family:var(--cond);font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.rt-w,.ci span,.ofoot h4,body.os2 .ofoot h4,.crumbs,.oform .fld label,.nav.ov .nphone span,.tg-k{font-size:16px}

/* the one button: ink, square, tracked; it lifts and warms */
.btn.obtn{box-shadow:none;border-radius:0;padding:18px 32px;font-size:15px;font-weight:600;letter-spacing:.16em;
  transition:background-color .3s var(--ease-out,ease),border-color .3s var(--ease-out,ease),color .3s var(--ease-out,ease),transform .3s var(--ease-out,ease),box-shadow .3s var(--ease-out,ease)}
.btn.obtn:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--lift-2,0 18px 34px -22px rgba(29,42,33,.55))}
.btn.obtn.lt{background:#F8F6F0;border-color:#F8F6F0;color:var(--ink)}
.btn.obtn.lt:hover{background:#F6C89F;border-color:#F6C89F;color:var(--ink)}
.tlink{font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px;text-decoration-color:var(--accent-lt)}

/* header: more air, finer rules */
.nav.ov{background:rgba(242,238,228,.9);border-bottom:1px solid rgba(29,42,33,.12)}
.bw b{font-family:var(--cond);font-weight:700;letter-spacing:.1em}
.nav.ov .nlinks{gap:34px}
.nav.ov .nlinks a{font-weight:500}
.nav.ov .nlinks a::after{height:1px;bottom:9px;background:var(--ink)}
.nav.ov .btn.obtn{padding:14px 22px;font-size:14.5px}

/* ── the hero: the photograph clear, the words low on it ── */
.ohero{position:relative;min-height:clamp(640px,calc(100svh - var(--nav-h)),960px);display:flex;align-items:flex-end;overflow:hidden;background:var(--ink);isolation:isolate}
.ohero-ph,.ohero-ph picture,.ohero-ph img{position:absolute;inset:0;width:100%;height:100%}
.ohero-ph img{object-fit:cover;object-position:50% 38%}
.ohero-ph::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(14,19,15,.92) 0%,rgba(14,19,15,.86) 32%,rgba(14,19,15,.66) 56%,rgba(14,19,15,0) 82%)}
.ohero-in{position:relative;z-index:2;flex:0 1 auto;padding-block:0 clamp(36px,5vw,64px);color:#F8F6F0}
body.os2 .ohero .ohero-k{display:flex;flex-wrap:wrap;gap:10px 0;margin:0 0 18px;font-family:var(--cond);font-size:17px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:#F8F6F0}
.ohero-k span+span::before{content:'';display:inline-block;vertical-align:middle;width:28px;height:1px;background:rgba(248,246,240,.6);margin:0 16px}
body.os2 .ohero h1{font-size:clamp(3.4rem,8.2vw,8.2rem);line-height:.95;letter-spacing:-.022em;color:#F8F6F0;margin:0;max-width:13ch}
body.os2 .ohero h1 em{display:block;color:#F6C89F}
.ohero-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 48px;align-items:end;margin-top:clamp(22px,3vw,34px);padding-top:clamp(20px,2.4vw,28px);border-top:1px solid rgba(248,246,240,.32)}
body.os2 .ohero .ohero-sub{margin:0;max-width:44ch;font-size:clamp(1.08rem,1.35vw,1.22rem);line-height:1.55;color:rgba(248,246,240,.94)}
.ohero-acts{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px}
.ohero-tel{display:inline-flex;align-items:center;min-height:44px;color:#F8F6F0;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px;text-decoration-color:#F6C89F}
.ohero-tel:hover{color:#F6C89F}
@media(max-width:860px){.ohero-row{grid-template-columns:1fr}}
@media(max-width:700px){
  .ohero{min-height:calc(100svh - var(--nav-h))}
  .ohero-ph img{object-position:50% 0}
  .ohero-ph::after{background:linear-gradient(0deg,rgba(14,19,15,.94) 0%,rgba(14,19,15,.88) 46%,rgba(14,19,15,.5) 64%,rgba(14,19,15,0) 82%)}
  body.os2 .ohero .ohero-k{font-size:15px;letter-spacing:.22em}.ohero-k span+span::before{width:16px;margin:0 10px}
  .ohero-acts .btn.obtn{flex:1 1 100%}
  .ohero-k span:nth-child(3){display:none}
}

/* the tags: the stamped face stays on the metal */
.tg-brand,.tg-off{font-family:var(--cond);font-weight:700}
.tags-note{border-left:1px solid var(--accent-lt);padding-left:22px}
.tg-go{text-decoration-thickness:1px;text-underline-offset:7px;font-weight:600}

/* the rigs plate */
.rigs-ph img{box-shadow:var(--lift-2,0 30px 60px -40px rgba(29,42,33,.5))}
.rigs-ph figcaption{display:flex;align-items:baseline;gap:18px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.pl{font-size:16px;color:var(--accent-txt);white-space:nowrap}

/* the routes: a numeral on a rule, not a badge */
.topo{height:70px}.topo path{stroke-width:1.5}
.rt-pin{position:static;display:block;width:auto;height:auto;border-radius:0;background:none;box-shadow:none;place-items:initial;
  font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.7rem;line-height:1;color:var(--accent-txt);padding:0 0 12px;margin:0 0 16px;border-bottom:1px solid var(--line)}
.rt-ph{border-radius:0}
.rt h3{font-size:2.2rem;margin:20px 0 12px;line-height:1.05}
.rt-w{color:var(--accent-txt);letter-spacing:.2em;margin:0 0 10px}

/* the band: the valley shows, the line is set, not shouted */
.band-ph::after{background:linear-gradient(90deg,rgba(14,19,15,.9) 0%,rgba(14,19,15,.78) 38%,rgba(14,19,15,.2) 74%,rgba(14,19,15,0) 100%)}
.band-q{max-width:min(660px,100%)}
.band-q p,body.os2 .band-q p{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;font-size:clamp(2.1rem,3.7vw,3.5rem);line-height:1.1;letter-spacing:-.01em;margin:0 0 24px}
.band-q footer{font-size:16px;display:flex;align-items:center;gap:14px}
.band-q footer::before{content:'';width:34px;height:1px;background:currentColor}
@media(max-width:860px){.band-ph::after{background:linear-gradient(90deg,rgba(14,19,15,.9) 0%,rgba(14,19,15,.82) 60%,rgba(14,19,15,.7) 100%)}}

/* about: the badge and the pull line */
.pull{border-left:1px solid var(--accent-lt);padding-left:26px;margin-top:34px}
.pull p{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;font-size:clamp(1.7rem,2.4vw,2.2rem);line-height:1.15}

/* steps, questions, credits */
.how-row{border-top:1px solid var(--ink);margin-top:40px}
.sn{font-family:var(--serif);font-style:italic;font-weight:400;font-size:2rem;color:var(--accent-txt);margin-bottom:14px}
.how-row h3{font-size:1.9rem;line-height:1.08;margin:0 0 10px}
.faq summary{font-family:var(--serif);font-size:1.55rem;font-weight:400;letter-spacing:-.005em}
.cr-list{border-top:1px solid var(--ink)}

/* the closing frame and the form */
.ci{font-weight:500;font-size:19px}
.ci a{text-decoration-thickness:1px;text-underline-offset:6px}
.oform{background:var(--paper-2);border:1px solid var(--line);border-top:1px solid var(--ink);box-shadow:var(--lift-2,0 30px 60px -44px rgba(29,42,33,.4))}
.oform .fld label{color:var(--muted)}
.oform .fld input,.oform .fld textarea{border-radius:0;background:#FFFDF8}

/* page headers: the photograph above the words */
.phead{min-height:clamp(460px,64vh,640px)}
body.os2 .phead h1{font-size:clamp(3rem,6.2vw,6rem);line-height:.98;letter-spacing:-.02em;max-width:15ch;margin:0 0 18px}
body.os2 .phead h1 em{font-style:italic;color:#F6C89F}
.phead-ph::after{background:linear-gradient(0deg,rgba(14,19,15,.94) 0%,rgba(14,19,15,.92) 60%,rgba(14,19,15,.88) 80%,rgba(14,19,15,.45) 100%)}
body.os2 .phead .crumbs{color:#F8F6F0}
.phead-in{padding-block:150px 60px}

/* footer */
.ofoot{border-top:1px solid rgba(29,42,33,.18);padding-top:88px}
.ofoot a:not(.btn):not(.brand){font-weight:500}

/* the phone bar: one quiet action in sentence case, the call as an icon (iPhone study, 10/1) */
body.light .bookbar.quiet{gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(242,238,228,.94);-webkit-backdrop-filter:saturate(1.4) blur(18px);backdrop-filter:saturate(1.4) blur(18px);border-top:1px solid rgba(29,42,33,.14);box-shadow:none}
body.light .bookbar.quiet a{min-height:52px;border-radius:0;font-family:var(--sans);font-size:16px;font-weight:500;letter-spacing:.01em;text-transform:none}
body.light .bookbar.quiet .b1{flex:1 1 auto}
body.light .bookbar.quiet .b2{flex:0 0 52px;padding:0;font-size:0;position:relative;border:1px solid rgba(29,42,33,.3);color:var(--ink)}
body.light .bookbar.quiet .b2::before{content:"";width:20px;height:20px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1z'/%3E%3C/svg%3E") center/contain no-repeat}
