/* ==========================================================================
   Stockyard Social — footer / hero flow / sticky nav patch — 2026-08-26
   Isolated on purpose: loads after every other stylesheet so it wins
   without having to fight the layered !important rules in the older
   CSS files. Safe to remove on its own if something needs to roll back.
   ========================================================================== */

/* ---------- Hero: consistent vertical rhythm ---------- */
.heroSplitPanel{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.heroSplitPanel .kicker{margin:0}
.heroSplitPanel h1{margin:0}
.heroSplitPanel .heroLead{margin:0}
.heroSplitPanel .heroLocation{margin:0;display:flex;align-items:center;gap:10px;font:700 .68rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#cfc4b0}
.heroSplitPanel .heroLocation img{width:15px;height:15px;opacity:.85}
.heroSplitPanel .buttonRow{margin:4px 0 0}
.heroSplitPanel .conceptLabel{margin:22px 0 0;opacity:.6}
@media(max-width:900px){.heroSplitPanel{gap:14px}.heroSplitPanel .conceptLabel{margin-top:16px}}

/* ---------- Homepage: scrolling banner + overlapping 3D stamp,
   directly under the split hero ---------- */
.heroMarquee{position:relative;overflow:hidden;background:var(--ink,#121212);border-bottom:4px solid var(--rust);padding:20px 0;z-index:1}
.marqueeTrack{display:flex;align-items:center;width:max-content;animation:stockyardMarquee 34s linear infinite}
.heroMarquee:hover .marqueeTrack{animation-play-state:paused}
.marqueeTrack span{white-space:nowrap;font:700 .82rem "Oswald",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#f4ebdd;padding:0 26px}
.marqueeTrack span.dot{color:var(--rust);padding:0;font-size:.65rem}
@keyframes stockyardMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marqueeTrack{animation:none}}

@media(max-width:700px){
  .heroMarquee{padding:14px 0}
  .marqueeTrack span{font-size:.7rem;padding:0 18px}
}

/* ---------- Pricing / Pack Perks section: real spacing instead of
   the 2px hairline seams that made the boxes look like they were
   touching with no breathing room ---------- */
.pricingGrid{gap:28px!important}
.pricingGrid article{border-radius:4px}
.roundGrid{gap:28px!important}
.packPerks{margin:40px auto!important;border-radius:4px}
.coolerCallout{margin:0 auto 40px!important;border-radius:4px}
@media(max-width:800px){.pricingGrid{gap:20px!important}.roundGrid{gap:20px!important}}

/* 2026-09-04 phased launch, updated brand and membership offers */
.brandLockup{display:flex!important;align-items:center;gap:10px;width:auto!important;text-decoration:none}.brandLockup>img{width:66px!important;height:58px!important;object-fit:contain!important}.brandLockup>span{display:flex;flex-direction:column;line-height:.88}.brandLockup b{font:700 1.35rem "Oswald",sans-serif;letter-spacing:.035em}.brandLockup em{font:700 1rem "Oswald",sans-serif;letter-spacing:.18em;color:#C85A32;font-style:normal}.footerLogoBox img{object-fit:contain!important}
.pressFeature{padding:70px 7vw;background:#1C1C1C;color:#F5F2EC;display:grid;grid-template-columns:1fr minmax(220px,360px);gap:7vw;align-items:center}.pressFeature h2{font-size:clamp(2.5rem,5vw,5rem);margin:0 0 24px}.pressFeature p:not(.kicker){font-size:1.1rem;line-height:1.7;max-width:720px}.pressFeature img{width:100%;filter:drop-shadow(0 18px 35px rgba(0,0,0,.35))}
.pricingGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:1500px!important}.pricingGrid article.annual{background:#F5F2EC}.pricingGrid article.vip{background:#e8d9b8}.threeOfferGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:1500px!important}.threeOfferGrid article:nth-child(2){background:#f1e0c9}.threeOfferGrid article:nth-child(3){background:#e8d9b8}.offerList{padding:0;margin:1.5rem 0;list-style:none}.offerList li{padding:.75rem 0;border-top:1px solid rgba(0,0,0,.16);line-height:1.45}.phasePromise{max-width:1500px;padding:1.35rem 1.5rem;margin:1.5rem 0 0;background:rgba(255,255,255,.1);line-height:1.6}
.membershipFaq{max-width:1500px;margin:2.25rem 0 0;border-top:1px solid rgba(255,255,255,.22)}.membershipFaqHead{padding:2rem 0 1.25rem}.membershipFaqHead h3{font-size:clamp(2rem,3vw,3.5rem);margin:.3rem 0 .75rem}.membershipFaqHead>p:last-child{margin:0;color:#d7cdbd}.membershipFaq details{border-bottom:1px solid rgba(255,255,255,.22)}.membershipFaq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.35rem 0;font-size:1.08rem;font-weight:700}.membershipFaq summary::-webkit-details-marker{display:none}.membershipFaq summary span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid rgba(255,255,255,.35);color:#F3C875;font-size:1.35rem;line-height:1;transition:transform .2s ease,background .2s ease}.membershipFaq details[open] summary span{transform:rotate(45deg);background:#C85A32;color:#fff;border-color:#C85A32}.membershipFaq details>p{max-width:1000px;margin:0;padding:0 4.5rem 1.5rem 0;color:#d7cdbd;line-height:1.7}
@media(max-width:700px){.membershipFaq{margin-top:1.5rem}.membershipFaqHead{padding-top:1.5rem}.membershipFaq summary{font-size:1rem;padding:1.15rem 0}.membershipFaq details>p{padding-right:0}.membershipFaq summary span{flex-basis:30px;width:30px;height:30px}}
.pastMemberSection{padding:90px 7vw;background:#C85A32;color:#F5F2EC;display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw}.pastMemberSection h2{font-size:clamp(2.7rem,5vw,5.5rem)}.pastMemberSection p{font-size:1.08rem;line-height:1.75}.pastMemberSection .button.ghost{border-color:rgba(255,255,255,.6)}.communityShoutout{padding:90px 7vw;display:grid;grid-template-columns:minmax(220px,.65fr) 1.35fr;gap:7vw;align-items:center;background:#F5F2EC}.communityShoutoutMark img{width:100%;max-height:430px;object-fit:contain}.communityShoutout h2{font-size:clamp(2.7rem,5vw,5.5rem)}.communityShoutout p{font-size:1.08rem;line-height:1.7}.socialSecondary{border:1px solid #1C1C1C}.phaseLegend{padding:30px 7vw;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#C85A32}.phaseLegend div{background:#1C1C1C;color:#F5F2EC;padding:24px}.phaseLegend b,.phaseLegend span{display:block}.phaseLegend b{text-transform:uppercase;letter-spacing:.08em;font-family:"Oswald",sans-serif;color:#C85A32}.phaseLegend span{margin-top:8px;line-height:1.5;color:#d9d0c2}.experienceImage .phaseBadge{position:absolute;z-index:3;left:14px;top:14px;background:#C85A32;color:#fff;padding:8px 10px;font:700 .7rem "Oswald",sans-serif;letter-spacing:.07em;text-transform:uppercase;box-shadow:0 4px 12px rgba(0,0,0,.3)}.detailPhaseLabel{display:inline-block;width:max-content;margin:0 0 18px;padding:8px 12px;background:#C85A32;color:#fff;font:700 .72rem "Oswald",sans-serif;letter-spacing:.08em;text-transform:uppercase}.findUsBrand{background:#1C1C1C!important;display:grid;place-items:center}.findUsBrand img{width:min(520px,80%)!important;height:auto!important;object-fit:contain!important}
@media(max-width:1050px){.pricingGrid,.threeOfferGrid{grid-template-columns:1fr!important}.pressFeature,.pastMemberSection,.communityShoutout{grid-template-columns:1fr}.pressFeature img{max-width:340px}.phaseLegend{grid-template-columns:1fr}.brandLockup>span{display:none}.brandLockup>img{width:74px!important}}

/* ---------- Sticky nav: bigger text, darker ground ---------- */
.nav,.nav.nav-scrolled{background:#0b0a08!important}
.nav.nav-scrolled{background:rgba(8,7,6,.97)!important}

/* Nav links were rendering in var(--ink) (near-black) from an old
   cream-nav-theme rule that never got cleaned up — invisible-looking
   against the dark bar. Force the bright cream everywhere but hover. */
.navLinks a{font-size:.78rem!important;letter-spacing:.09em;color:#f7f1e4!important;opacity:1!important}
.navLinks a:hover{color:#F3C875!important}
.navLinks .smallCta{font-size:.74rem!important;color:var(--ink)!important}
.navLinks .navLogin{opacity:.85!important}
@media(max-width:900px){.navLinks a{font-size:1rem!important}}

/* ---------- FAQ dropdown under Membership ---------- */
.navDropdown{position:relative}
.navDropdown>a{display:inline-flex;align-items:center;gap:5px}
.navDropdownArrow{font-size:.65em;transition:transform .2s ease}
.navDropdown:hover .navDropdownArrow,.navDropdown:focus-within .navDropdownArrow{transform:rotate(180deg)}
.navDropdownMenu{display:none;position:absolute;top:calc(100% + 1px);left:0;margin-top:0;min-width:190px;background:#0b0a08;border:1px solid rgba(255,255,255,.14);border-radius:6px;padding:8px;box-shadow:0 18px 35px rgba(0,0,0,.4);z-index:1003}
.navDropdown:hover .navDropdownMenu,.navDropdown:focus-within .navDropdownMenu{display:block}
.navDropdownMenu a{display:block!important;padding:9px 12px;font-size:.72rem!important;white-space:nowrap;border-radius:4px}
.navDropdownMenu a:hover{background:rgba(255,255,255,.06)}
.navExperienceMenu{display:none;grid-template-columns:repeat(2,minmax(170px,1fr));min-width:390px}
.navDropdown:hover .navExperienceMenu,.navDropdown:focus-within .navExperienceMenu{display:grid}
@media(max-width:900px){
  .navDropdown{width:100%}
  .navDropdownArrow{display:none}
  .navDropdownMenu{display:block!important;position:static;background:none;border:0;box-shadow:none;padding:0 0 0 18px;margin-top:6px}
  .navExperienceMenu{min-width:0!important;grid-template-columns:1fr!important}
  .navDropdownMenu a{padding:8px 0!important;font-size:.85rem!important}
}

/* The mobile hamburger button was forced to display:inline-flex by an
   accessibility min-height rule that had no media-query guard, so it
   showed on desktop next to the full nav. Only show it under 900px. */
.menuButton{display:none!important}
@media(max-width:900px){.menuButton{display:inline-flex!important}}

/* Nav logo: the dark wordmark was invisible on the dark nav — using the
   light/reversed lockup instead. It's a taller image (includes the horns
   mark) so give it a little more vertical room and align it naturally. */
.brandLogo{height:56px!important;justify-content:flex-start}
.brandLogo img{object-position:left center!important}
@media(max-width:900px){.brandLogo{height:46px!important}}
.menuButton{color:var(--cream)!important}

/* ---------- Homepage: "ahead campaign" (people walking) now gets a
   big headline like the other photo sections, brighter contrast via a
   stronger scrim, and the CTA button gets a subtle shimmer sweep ---------- */
.aheadCampaign{position:relative}
.aheadCampaignShade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,9,7,.78) 8%,rgba(10,9,7,.1) 48%,rgba(10,9,7,.5) 100%);pointer-events:none}
.aheadCampaignCopy{position:absolute;z-index:2;left:7vw;right:7vw;top:7vw}
.aheadCampaignCopy .kicker{color:#F3C875;text-shadow:0 2px 10px rgba(0,0,0,.5)}
.aheadCampaignCopy h2{font-size:clamp(2.4rem,5.6vw,5rem);line-height:.98;max-width:15ch;color:#fff;text-shadow:0 6px 28px rgba(0,0,0,.55);margin:.5rem 0 0}
.aheadCampaign>a.aheadCampaignCta{position:absolute;left:7vw;bottom:7vw;z-index:2;overflow:hidden}
.aheadCampaign>a.aheadCampaignCta::after{content:"";position:absolute;top:0;left:-60%;width:35%;height:100%;background:linear-gradient(115deg,transparent,rgba(255,255,255,.65),transparent);transform:skewX(-20deg);animation:aheadShimmer 3.4s ease-in-out infinite}
@keyframes aheadShimmer{0%{left:-60%}55%{left:130%}100%{left:130%}}
@media(prefers-reduced-motion:reduce){.aheadCampaign>a.aheadCampaignCta::after{animation:none;display:none}}
@media(max-width:700px){.aheadCampaignCopy{left:5vw;right:5vw;top:6vw}.aheadCampaignCopy h2{max-width:none}}

/* ---------- Homepage: Dog Universe / Stockyard Lens teaser — new
   Find/Collect/Earn/Build feature row, and the poster image now leads
   on mobile so it stacks image-first like the other photo sections ---------- */
.homeLensFeatures{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem 1.8rem;margin:0 0 2rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.16)}
.homeLensFeatures b{display:block;font:700 .76rem "Oswald",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#F3C875;margin-bottom:5px}
.homeLensFeatures span{font-size:.84rem;line-height:1.55;color:#cfc4b0}
.homeLensImage img{object-position:center 26%}
.homeLensImage{height:auto!important;align-self:stretch!important}
@media(max-width:800px){
  .homeLensImage{order:-1}
  .homeLensFeatures{grid-template-columns:1fr;gap:1rem}
}

/* ---------- Fix a real pre-existing bug: overflow-x:hidden on <body>
   forces the browser to auto-convert overflow-y to "auto" per spec,
   turning body into its own independent scroll container. Since body's
   content never actually overflows its own box, real scrolling happens
   on <html> instead — which silently breaks position:sticky for every
   direct child of body, including the nav. Has likely never stuck
   correctly. <html> alone already prevents horizontal overflow. ---------- */
body{overflow-x:visible!important;overflow-y:visible!important}

/* ---------- Sticky announcement bar + nav, stacked ----------
   Both are pinned; the bar shrinks on scroll and the nav's sticky
   offset (--announceBarH) is kept in sync with its live height by
   main.js, so there's never a gap or overlap between the two. */
.announceBar{position:sticky!important;top:0;z-index:60;transition:min-height .25s ease,padding .25s ease}
.nav,.nav.nav-scrolled{position:sticky!important;top:var(--announceBarH,64px)!important;z-index:50;transition:top .25s ease}
.announceBar.announceBar-scrolled{min-height:0!important;padding:6px 18px!important}
.announceBar.announceBar-scrolled .announceBar-main,
.announceBar.announceBar-scrolled .announceCountdown{font-size:.72rem!important}
.announceBar.announceBar-scrolled .announceBar-cta{padding:6px 12px!important;font-size:.65rem!important}
@media(max-width:700px){
  .announceBar.announceBar-scrolled{padding:6px 16px!important}
}

/* ---------- Legal pages: the stamp watermark was overlapping the
   headline instead of sitting quietly in the corner ---------- */
.legalHero:after,.simpleHero:after{
  background-image:url('/assets/brand/NEW/gate-paw-icon.png')!important;
  width:120px!important;height:120px!important;
  right:2vw!important;top:2vw!important;
  transform:none!important;
  opacity:.9!important;
}
@media(max-width:900px){
  .legalHero:after,.simpleHero:after{width:88px!important;height:88px!important}
}
@media(max-width:640px){
  .legalHero:after,.simpleHero:after{width:68px!important;height:68px!important;top:1.5rem!important;right:1.5rem!important;display:block!important}
}

/* 2026-09-04 header contrast correction */
.nav .brandLockup b{
  color:#F5F2EC!important;
  text-shadow:0 1px 2px rgba(0,0,0,.5)!important;
}
.nav .brandLockup em{
  color:#C85A32!important;
}

/* ---------- Footer v5: dropdowns at every breakpoint, true full width ---------- */
.siteFooter{width:100%;background:#171914;border-top:4px solid var(--rust);padding:0 5vw;box-sizing:border-box}

.footerTop{display:flex;flex-direction:row-reverse;align-items:flex-start;justify-content:space-between;gap:56px;width:100%;margin:0;padding:20px 0 8px}
.footerLogoBox{flex:none;padding-top:2px}
.footerLogoBox img{width:118px;height:118px;display:block}

.footerColumns{display:flex;flex-wrap:wrap;gap:56px;flex:1}
.footerCol{border:0;min-width:150px}
.footerCol summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;font:700 .88rem "Oswald",sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#e08a4a;padding:4px 0}
.footerCol summary::-webkit-details-marker{display:none}
.footerChevron{display:inline-block;font-size:.8rem;transition:transform .2s ease;color:#e08a4a}
.footerCol[open] .footerChevron{transform:rotate(180deg)}
.footerColBody{display:flex;flex-direction:column;align-items:flex-start;gap:11px;padding-top:14px}
.footerColBody a{color:#f4ebdd;text-decoration:none;font-size:.9rem;opacity:.92}
.footerColBody a:hover{opacity:1;text-decoration:underline}
.footerSocialRow{display:flex;gap:10px;margin-bottom:2px}
.footerSocialRow a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:var(--cream);transition:border-color .2s ease,color .2s ease}
.footerSocialRow a svg{width:15px;height:15px}
.footerSocialRow a:hover{border-color:#F3C875;color:#F3C875}

.footerBottomBar{display:block;width:100%;margin:0;padding:20px 0 24px;border-top:1px solid rgba(255,255,255,.1);text-align:center}
.footerFindPack{display:block;font:700 .62rem "Oswald",sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#8f8a78;margin-bottom:8px}
.footerBottomBar p{margin:0;font-size:.8rem;color:#c9c2b3}
.footerBottomBar a{color:#c9c2b3;text-decoration:underline;text-underline-offset:2px}
.footerBottomBar a:hover{color:#F3C875}

@media(max-width:820px){
  .footerTop{flex-direction:column;align-items:center;gap:22px;padding:28px 0 4px}
  .footerLogoBox img{width:104px;height:104px}
  .footerColumns{flex-direction:column;width:100%;gap:0}
  .footerCol{width:100%;border-bottom:1px solid rgba(255,255,255,.12);padding:14px 0}
  .footerColBody{padding-top:12px}
  .footerBottomBar p{line-height:1.7}
}

/* ---------- Cookie consent banner ---------- */
/* The [hidden] guard here is critical: without it, this rule (an author
   style) overrides the browser's built-in [hidden]{display:none} default
   regardless of the hidden attribute — meaning the banner would render on
   every page load no matter what consent.js decided, ignoring localStorage
   entirely. This was the actual cause of it "never going away." */
.cookieConsent:not([hidden]){position:fixed;left:16px;right:16px;bottom:16px;z-index:1001;max-width:640px;margin:0 auto;background:#171914;color:#f4ebdd;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:18px 20px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;box-shadow:0 20px 45px rgba(0,0,0,.35);font-size:.86rem;line-height:1.5}
.cookieConsent p{margin:0;flex:1 1 260px}
.cookieConsent a{color:#F3C875;text-decoration:underline;text-underline-offset:2px}
.cookieConsentActions{display:flex;gap:10px;flex:0 0 auto}
.cookieConsentActions button{font:700 .72rem "Oswald",sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:11px 18px;border-radius:6px;cursor:pointer;border:1px solid rgba(255,255,255,.3);background:transparent;color:#f4ebdd}
.cookieConsentAccept{background:var(--rust)!important;border-color:var(--rust)!important;color:#fff!important}
.cookieConsentDecline:hover{border-color:#fff}
.cookieConsentAccept:hover{filter:brightness(1.1)}
@media(max-width:480px){.cookieConsent{flex-direction:column;align-items:stretch;text-align:center}.cookieConsent p{flex:none}.cookieConsentActions{justify-content:center}}

/* ---------- Checkout trust bar ---------- */
.trustBar{display:flex;align-items:center;gap:9px;padding:11px 14px;margin:4px 0 16px;background:#eef4ea;border:1px solid #cddbc4;border-radius:6px;font-size:.76rem;color:#3c4a33}
.trustBar svg{width:17px;height:17px;flex:none;color:var(--sage,#4A4D2A)}

/* ---------- Checkout unavailable fallback ---------- */
.checkoutUnavailable{padding:30px;margin-top:18px;background:#1a1c17;color:var(--cream);border-top:4px solid var(--rust)}
.checkoutUnavailable h4{margin:0 0 10px;font-size:clamp(1.55rem,3vw,2.35rem);color:var(--cream)}
.checkoutUnavailable p{max-width:58ch;margin:0 0 20px;line-height:1.65;color:#d9d0c1}
.checkoutUnavailable .button{display:inline-flex}
.contactMessageLabel{grid-column:1/-1}
.contactMessageLabel textarea{width:100%;min-height:130px;padding:16px;border:1px solid rgba(28,28,28,.2);background:#fff;color:#1c1c1c;font:inherit;resize:vertical}
.checkoutForm .legalConsent,.checkoutForm .legalConsent span{color:#1c1c1c!important;opacity:1!important;visibility:visible!important}
.checkoutForm .legalConsent span{line-height:1.5}
.checkoutForm .legalConsent input{flex:0 0 auto}
.checkoutForm .legalConsent a{color:#b04d2b!important;text-decoration:underline}

/* Keep the circular badge fully inside the Find Us panel on narrow screens. */
.findUsBrand img{display:block!important;width:auto!important;max-width:72%!important;height:auto!important;max-height:78%!important;object-fit:contain!important}
@media(max-width:560px){.findUsBrand img{max-width:68%!important;max-height:76%!important}}

/* Routed form confirmation page. */
.thankYouPage{min-height:70vh;padding:clamp(4rem,9vw,8rem) 7vw;background:#F5F2EC;display:grid;place-items:center}.thankYouPage section{width:min(820px,100%);padding:clamp(2rem,6vw,5rem);border-top:7px solid #C85A32;background:#fff;box-shadow:0 22px 55px rgba(28,28,28,.12)}.thankYouPage img{display:block;width:110px;height:90px;object-fit:contain;margin-bottom:1.5rem}.thankYouPage h1{font-size:clamp(2.8rem,7vw,6rem);color:#1C1C1C}.thankYouPage section>p:not(.kicker){max-width:620px;font-size:1.1rem;line-height:1.7}.thankYouSecondary{border:1px solid #1C1C1C;color:#1C1C1C}.submit:disabled{opacity:.65;cursor:wait}

/* ---------- FAQ page ---------- */
.faqHero{padding-bottom:3rem!important}
.faqSection{max-width:880px;margin:0 auto;padding:2rem 2rem 6rem}
.faqGroup{margin-bottom:2.6rem}
.faqGroup h2{font-size:1.5rem;margin-bottom:1rem;color:var(--ranch,#4A4D2A)}
.faqList{border-top:1px solid var(--line,rgba(18,18,18,.18))}
.faqItem{border-bottom:1px solid var(--line,rgba(18,18,18,.18));padding:4px 0}
.faqItem summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 2px;font-weight:600;font-size:1.02rem}
.faqItem summary::-webkit-details-marker{display:none}
.faqPlus{flex:none;font-size:1.3rem;line-height:1;color:var(--rust);transition:transform .2s ease}
.faqItem[open] .faqPlus{transform:rotate(45deg)}
.faqItem p{margin:0 0 18px;padding-right:36px;line-height:1.7;color:#4a463d}
.faqItem p a{color:var(--rust)}
.faqNotice{margin:0 0 3.2rem;padding:22px 24px;border-left:4px solid #F3C875;background:#ebe1ce;color:#302d27}
.faqNotice strong{display:block;font:700 .76rem "Oswald",sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--rust);margin-bottom:7px}
.faqNotice p{margin:0;line-height:1.65}
.faqItem summary{position:relative;z-index:1;touch-action:manipulation}
.faqAnswer{padding:0 36px 18px 2px;line-height:1.7;color:#4a463d}
.faqAnswer p{margin:0 0 12px;padding:0;color:inherit}
.faqAnswer p:last-child{margin-bottom:0}
.faqAnswer ul{margin:0 0 14px;padding-left:1.25rem}
.faqAnswer li{margin:.5rem 0}
.faqAnswer a{color:var(--rust);font-weight:600}
.faqFinalCta{margin-top:4.5rem;padding:3rem;background:#1a1c17;color:var(--cream);text-align:center;border-top:4px solid var(--rust)}
.faqFinalCta h2{font-size:clamp(2rem,4vw,3.8rem);margin-bottom:1.4rem}
.faqFinalCta .buttonRow{justify-content:center;flex-wrap:wrap}
.faqSecondary{border:1px solid rgba(255,255,255,.45);color:var(--cream)}
@media(max-width:640px){.faqSection{padding-left:1.2rem;padding-right:1.2rem}.faqAnswer{padding-right:4px}.faqFinalCta{padding:2.2rem 1.25rem}.faqFinalCta .button{width:100%}}
.faqMore{text-align:center;margin-top:3rem;font-size:1.05rem}
.faqMore a{color:var(--rust);text-decoration:underline}

/* ---------- 404 page ---------- */
.notFound{min-height:calc(100vh - 160px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:8vw 7vw;background:var(--ink,#121212);color:var(--cream,#F5F1E6)}
.notFound h1{font-size:clamp(2.6rem,6vw,5rem);margin:.6rem 0 1.2rem}
.notFound p{max-width:52ch;font-size:1.1rem;line-height:1.7;color:#cfc4b0}
.notFound .buttonRow{margin:28px 0 40px}
.notFoundLinks{display:flex;flex-wrap:wrap;gap:10px 26px;border-top:1px solid rgba(255,255,255,.15);padding-top:22px;width:100%}
.notFoundLinks a{font:700 .72rem "Oswald",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#cfc4b0;text-decoration:none}
.notFoundLinks a:hover{color:#fff}
