/* AMO additions on top of trail.css: subpage layouts the one-page template has no pattern for,
   plus the AMO section colors the template's five-color palette has no slot for. */
:root{--plum:#4a3b52;--brown:#2d2318;--black:#0a0a0a}

.page-top{padding:calc(var(--hh) + clamp(64px,10vw,150px)) 0 clamp(48px,6vw,96px);color:var(--acid)}
.page-top .head{margin-bottom:0}
.page-top .head > p{color:var(--paper)}
.page-top--sky{background:var(--sky)}
.page-top--plum{background:linear-gradient(135deg,#4a3b52 0%,#5c4a63 50%,#4a3b52 100%)}
.page-top--brown{background:var(--brown)}
.page-top--black{background:var(--black)}
.page-top--forest{background:var(--ink)}

/* AMO's Mixing section was dark brown; use it behind the scrolling poster run too. */
.runs{background:var(--brown)}

.embed-sec{padding:clamp(48px,6vw,96px) var(--pad)}
.calendly-inline-widget{background:#fff;max-width:1100px;margin:0 auto}

.plan__note{display:grid;gap:12px}
.plan__note strong{color:var(--ink)}

.ooo-copy{flex-direction:column;align-items:stretch;gap:18px}
.ooo-copy > p{max-width:60ch}

.video-wrap{padding:0 var(--pad)}
/* Poster is square, so cap the height or the player fills the whole screen. */
.video{display:block;width:100%;max-height:78vh;object-fit:contain;background:#000}

.credits{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:0 var(--gap);padding:0 var(--pad)}
.credits div{border-top:2px solid var(--acid);padding:18px 0 28px}
.credits dt{font-stretch:112%;text-transform:uppercase;font-size:13px;font-weight:520;letter-spacing:.03em;color:var(--acid)}
.credits dd{margin-top:8px;font-family:var(--f-display);font-weight:900;font-stretch:75%;text-transform:uppercase;font-size:clamp(32px,3.6vw,56px);line-height:.9}

.prose-grid{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);gap:clamp(32px,5vw,96px);align-items:start;padding:0 var(--pad)}
.prose-nav{position:sticky;top:calc(var(--hh) + 24px);display:grid;gap:14px}
.prose-nav h2{font-stretch:112%;text-transform:uppercase;font-size:13px;font-weight:520;letter-spacing:.03em}
.prose-nav ul{display:grid;gap:10px}
.prose-nav a{font-weight:600}
.prose{max-width:46rem;display:grid;gap:18px;font-size:17px;line-height:1.6}
.prose h2{font-family:var(--f-display);font-weight:900;font-stretch:75%;text-transform:uppercase;font-size:clamp(34px,4vw,60px);line-height:.9;margin-top:32px;scroll-margin-top:calc(var(--hh) + 24px)}
.prose h3{font-family:var(--f-display);font-weight:900;font-stretch:75%;text-transform:uppercase;font-size:24px;margin-top:16px;scroll-margin-top:calc(var(--hh) + 24px)}
.prose ul{display:grid;gap:8px;padding-left:1.2em;list-style:disc}
.prose a{text-decoration:underline;text-underline-offset:3px}

@media (max-width:900px){
  .prose-grid{grid-template-columns:1fr}
  .prose-nav{position:static}
}

/* Plain Talk credit sits directly under the copyright row, without a second divider. */
.footer__credit{border-top:0;padding-top:0;justify-content:flex-start;gap:6px 10px}

/* AMO's button labels run longer than the template's; let them wrap rather than leave the card on phones. */
.btn{max-width:100%}
.plan .btn,.contact__btns .btn,.faq__side .btn,.about__foot .btn{white-space:normal;text-align:center}

/* Between the template's mobile menu and wide desktop, AMO's four nav labels leave no room for the
   header button; Consultations is already in the nav, so drop the duplicate there. */
@media (min-width:960px) and (max-width:1279px){.site-header > .btn{display:none}}
