/* Premium layer: loads last on every page. Readability first, softer cards, constant positioning. */
body.t-outdoor{
  --muted:#3D4034; --line:#D9D1BB; --dark-muted:#CFCBB6; --dark-ink:#F1ECDD;
  --accent-deep:#B84300;            /* orange that passes contrast on bone/paper */
  --radius:14px; --btn-radius:10px; --tile-radius:12px;
  --shadow:0 1px 2px rgba(20,24,14,.06),0 12px 32px rgba(20,24,14,.09);
  --shadow-lg:0 2px 4px rgba(20,24,14,.08),0 28px 60px rgba(20,24,14,.16);
  font-size:17.5px;
}
body{text-rendering:optimizeLegibility}
/* orange text on light surfaces gets the deeper shade; bright orange stays on dark */
.eyebrow,.lc-k,.lc-go,.h-r,.art-body a:not(.btn),.p-how summary,.k{color:var(--accent-deep)}
.h-hero .eyebrow,.pg-hero .eyebrow,.hero .eyebrow,.builders .eyebrow,.h-plan .eyebrow,.capture-band .eyebrow,.sf .eyebrow,.tb-dark .eyebrow,
.swipe .eyebrow,.convo .eyebrow,.art-cta .eyebrow,.pbb .eyebrow,.plan-cta .eyebrow,.ho-hero .eyebrow,.pl-hero .eyebrow,.h-step.free .eyebrow,.pos .eyebrow{color:var(--accent)}
.eyebrow{font-size:.78rem;letter-spacing:.14em;font-weight:700}
.lede,.prose p,.prose li{color:var(--muted)}
p{text-wrap:pretty}

/* buttons: weightier, rounder, lift on hover */
.btn{border-radius:var(--btn-radius);font-weight:800;box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 8px 22px rgba(255,107,0,.28);transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 14px 30px rgba(255,107,0,.36)}
.btn.ghost,.btn.ghost-d{box-shadow:inset 0 0 0 2px currentColor}
.btn.ghost:hover,.btn.ghost-d:hover{box-shadow:inset 0 0 0 2px currentColor,0 10px 24px rgba(0,0,0,.12)}

/* announcement + header */
.ann{display:flex;justify-content:center;align-items:center;gap:6px 16px;flex-wrap:wrap;font-size:.72rem;padding:8px 16px}
.ann a{font-weight:700}
@media(max-width:600px){.ann-who{display:none}}
.sh-in{height:68px}
.sh .btn.sh-cta{padding:11px 16px}
@media(max-width:960px){
  .sh-cta{display:inline-flex!important;margin-left:auto;font-size:.74rem!important;padding:10px 12px!important;box-shadow:none}
  .sh-cta-l{display:none}
  .burger{margin-left:8px}
}
@media(max-width:380px){.logo small{display:none}.sh-in{gap:12px}}

/* sticky nudge: two lines, always says who we are */
.nudge{padding:8px 8px 8px 20px;gap:14px;border-radius:16px;background:color-mix(in srgb,var(--dark) 94%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.nudge span{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.nudge span b{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nudge span small{font-family:var(--f-mono);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:700}
.nudge .btn{border-radius:10px;box-shadow:none}

/* ticker */
.tick{overflow:hidden;background:var(--accent);color:var(--accent-ink);border-block:1px solid rgba(0,0,0,.12)}
.tick-d{background:var(--dark);color:var(--dark-ink);border-color:var(--dark-line)}
.tick-in{display:flex;width:max-content;animation:tick 38s linear infinite}
.tick span{display:flex;align-items:center;gap:22px;padding:14px 0 14px 22px;font-family:var(--f-display);font-weight:900;text-transform:uppercase;font-size:clamp(1.05rem,2.2vw,1.35rem);letter-spacing:.02em;white-space:nowrap}
.tick span::after{content:"";width:9px;height:9px;background:currentColor;transform:rotate(45deg);opacity:.55}
.tick-d span::after{background:var(--accent);opacity:1}
@keyframes tick{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.tick-in{animation:none}}

/* playbook band (every page, before the footer) */
.pbb{background:linear-gradient(135deg,#232A1B 0%,var(--dark) 60%);color:var(--dark-ink);padding-block:clamp(56px,8vw,96px);position:relative;overflow:hidden}
.pbb::before{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,107,0,.28),transparent 65%)}
.pbb-in{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:center;position:relative}
.pbb-cover{aspect-ratio:3/4;border-radius:12px;padding:26px 22px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;background:linear-gradient(160deg,#FF7A1A,#E05400);color:#1B1F15;box-shadow:var(--shadow-lg),0 0 0 1px rgba(255,255,255,.12) inset;transform:rotate(-3deg);position:relative}
.pbb-cover::before{content:"";position:absolute;inset:14px;border:1.5px solid rgba(27,31,21,.35);border-radius:8px}
.pbb-k{position:absolute;top:24px;left:22px;font-family:var(--f-mono);font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;background:#1B1F15;color:#fff;padding:5px 10px;border-radius:6px}
.pbb-cover b{font-family:var(--f-display);font-weight:900;text-transform:uppercase;font-size:2.2rem;line-height:.92;position:relative}
.pbb-cover small{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;position:relative}
.pbb h2{color:#fff;font-size:clamp(2rem,4.6vw,3.4rem);margin-top:10px;max-width:18ch}
.pbb p{color:var(--dark-muted);margin-top:14px;max-width:56ch;font-size:1.05rem}
.pbb-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:24px}
.pbb-cta span{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--dark-muted)}
@media(max-width:800px){.pbb-in{grid-template-columns:1fr;gap:30px}.pbb-cover{width:190px;transform:rotate(-3deg)}.pbb-cover b{font-size:1.6rem}}

/* home hero: readable on any frame */
.h-hero::before{background:linear-gradient(180deg,rgba(14,17,10,.55) 0%,rgba(14,17,10,.25) 30%,rgba(14,17,10,.78) 62%,rgba(14,17,10,.96) 100%)}
.h-hero .eyebrow.h-chip{display:inline-block;background:var(--accent);color:var(--accent-ink);padding:7px 12px;border-radius:8px;letter-spacing:.1em}
.h-hero h1{text-shadow:0 2px 30px rgba(0,0,0,.35)}
.h-hero .sub{color:#F3EFE3;font-size:clamp(1.08rem,1.6vw,1.28rem);text-shadow:0 1px 14px rgba(0,0,0,.5)}
.h-trust{color:#E9E4D4;font-size:.76rem}
@media(max-width:760px){
  .h-hero{min-height:auto}
  .h-hero .wrap{padding-block:110px 36px}
  .h-hero h1{font-size:clamp(2.5rem,11.5vw,3.6rem)}
  .h-ctas{flex-direction:column}.h-ctas .btn{justify-content:center;width:100%}
  .h-scroll{display:none}
}
.pg-hero .sub{color:var(--dark-muted)}

/* positioning strip */
.pos{background:var(--dark);color:var(--dark-ink);padding-block:clamp(48px,7vw,80px)}
.pos-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0 28px}
.pos-grid div{background:rgba(255,255,255,.04);border:1px solid var(--dark-line);border-radius:var(--radius);padding:22px}
.pos-grid small{display:block;font-family:var(--f-mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700}
.pos-grid b{display:block;font-family:var(--f-display);font-weight:900;text-transform:uppercase;font-size:1.55rem;line-height:1;color:#fff;margin:8px 0 8px}
.pos-grid p{color:var(--dark-muted);font-size:.98rem}
@media(max-width:860px){.pos-grid{grid-template-columns:1fr}}

/* softer, premium cards: no heavy black outlines */
.h-step,.h-feats li,.h-tiers article,.tst-grid figure,.guar,.lc,.how3-steps li,.tb,.tier,.guide,.note-card,.check-list li,.h-mock,.pl-card,.ho-table-wrap{border:1px solid var(--line)!important;box-shadow:var(--shadow);border-radius:var(--radius)}
.h-step:hover,.lc:hover{box-shadow:var(--shadow-lg)}
.h-step.free,.tst-hero{border-color:transparent!important}
.h-tiers article.hot{border-color:var(--accent)!important}
.h-about img,.onset img{border:0;box-shadow:var(--shadow-lg)}
.h-mock{transform:none}
.h-plancard{transform:none;border-radius:var(--radius)}
.h-step p,.h-feats span,.h-tiers p,.lc p{color:var(--muted)}
.h-step.free p{color:var(--dark-muted)}
.h-step .price{border-radius:8px}

/* testimonials: swipe row on phones instead of a tall stack */
.tst blockquote{font-size:1rem;color:var(--ink)}
.tst-hero blockquote{color:#fff}
@media(max-width:760px){
  .tst-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px;margin-inline:-20px;padding-inline:20px}
  .tst-grid figure{flex:0 0 86%;scroll-snap-align:center}
  .tst-hero{display:flex!important;flex-direction:column}
  .tst-hero img{max-height:220px}
}

/* results: the three "what made it work" steps stack cleanly */
.rc-stats .rc-why{display:flex!important;flex-direction:column;gap:14px;margin-top:12px;list-style:none;padding:0}
.rc-stats .rc-why li{display:grid!important;grid-template-columns:44px 1fr;gap:14px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow)}
.rc-stats .rc-why li::before{font-size:1.9rem}
.rc-stats .rc-why b{color:var(--ink);font-family:var(--f-display);font-weight:900;text-transform:uppercase;font-size:1.25rem;line-height:1.05;display:block}
.rc-stats .rc-why span{color:var(--muted);font-size:.96rem}

/* section rhythm */
section{padding-block:clamp(56px,8vw,104px)}
.head .display{text-wrap:balance}
.lede{font-size:1.12rem}
.sh .btn.sh-cta{gap:0}
