/* chanceatfinance.com v5: shared chrome (fonts, header, menu, footer, phone bar, consent, progress, veil).
   Prefixed v5* so it can sit beside the six guides' own stylesheets. Brand: Fraunces display, Inter text, forest + cream, lime action. */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:300 900;font-display:fallback;src:url("/fonts/fraunces.woff2") format("woff2")}
@font-face{font-family:"Fraunces";font-style:italic;font-weight:300 900;font-display:fallback;src:url("/fonts/fraunces-italic.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:400 800;font-display:fallback;src:url("/fonts/inter.woff2") format("woff2")}
/* v5.2 metric-matched fallbacks, measured with fontTools over every H1/H2 on the site (Fraunces at wght 500 / opsz 144 is 15% narrower than
   Iowan Old Style and 14% narrower than Georgia; Inter 400 is 6.8% wider than Helvetica Neue and 9.1% wider than Arial). One face per local
   font so the width ratio is exact; the browser skips a face whose local() font is missing. Overrides = Fraunces 0.978 / 0.255, Inter 0.969 / 0.241, each divided by its size-adjust. */
@font-face{font-family:"Fraunces Fallback";src:local("Iowan Old Style"),local("IowanOldStyle-Roman");size-adjust:85%;ascent-override:115%;descent-override:30%;line-gap-override:0%}
@font-face{font-family:"Fraunces Fallback 2";src:local("Georgia");size-adjust:86.4%;ascent-override:113.2%;descent-override:29.5%;line-gap-override:0%}
@font-face{font-family:"Inter Fallback";src:local("Helvetica Neue"),local("HelveticaNeue");size-adjust:106.8%;ascent-override:90.7%;descent-override:22.6%;line-gap-override:0%}
@font-face{font-family:"Inter Fallback 2";src:local("Arial"),local("ArialMT");size-adjust:109.1%;ascent-override:88.8%;descent-override:22.1%;line-gap-override:0%}
:root{
  --c-forest:#33532B;--c-forest-deep:#2A4522;--c-950:#22391C;--c-lime:#D9F14F;--c-lime-soft:rgba(217,241,79,.16);
  --c-cream:#FAF5EA;--c-cream2:#F1EAD9;--c-paper:#FFFFFF;--c-ink:#20301B;--c-ink-dim:#51604B;--c-ink-soft:#5D6B56;
  --c-milk:#F6F2E4;--c-milk-dim:#C6D0BC;--c-line:#E4DCC6;--c-line-g:rgba(246,242,228,.16);--c-red:#C9342A;
  --c-sans:"Inter","Inter Fallback","Inter Fallback 2",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --c-serif:"Fraunces","Fraunces Fallback","Fraunces Fallback 2","Iowan Old Style",Georgia,serif;
  --c-ease:cubic-bezier(.22,1,.36,1);--c-spring:linear(0,.0462,.1527,.2841,.4183,.5429,.6515,.742,.8147,.8712,.9138,.945,.9673,.9825,.9926,.9988,1.0025,1.0043,1.005,1.0049,1.0045,1.0039,1.0032,1.0025,1);
  --c-nav-h:72px;--c-safe-b:env(safe-area-inset-bottom,0px)
}
@media (max-width:760px){:root{--c-nav-h:62px}}
.v5skip{position:absolute;left:-9999px;top:12px;z-index:9999;background:var(--c-950);color:var(--c-milk);padding:10px 16px;border-radius:999px;font:600 14px var(--c-sans)}
.v5skip:focus{left:12px}

/* ---------- progress ---------- */
.v5prog{position:fixed;left:0;top:0;height:3px;width:100%;z-index:120;pointer-events:none}
.v5prog i{display:block;height:100%;width:0;background:var(--c-lime);box-shadow:0 0 12px rgba(217,241,79,.6)}

/* ---------- header ---------- */
.v5nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--c-nav-h);background:rgba(250,245,234,.86);-webkit-backdrop-filter:saturate(170%) blur(14px);backdrop-filter:saturate(170%) blur(14px);border-bottom:1px solid rgba(32,48,27,.08);color:var(--c-ink);transition:background .45s var(--c-ease),color .45s var(--c-ease),box-shadow .45s var(--c-ease),border-color .45s var(--c-ease),transform .5s var(--c-ease)}
.v5nav.scrolled{box-shadow:0 10px 30px -18px rgba(34,57,28,.35)}
.v5nav.over{background:transparent;border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--c-milk);box-shadow:none}
.v5nav.hidden{transform:translateY(-110%)}
body.v5-menu-open .v5nav{transform:none}
.v5nav-in{height:100%;max-width:1180px;margin:0 auto;padding:0 clamp(18px,3vw,32px);display:flex;align-items:center;justify-content:space-between;gap:14px}
.v5brand{display:inline-flex;align-items:center;gap:11px;color:inherit;text-decoration:none;white-space:nowrap;min-height:44px}
.v5brand svg{width:30px;height:30px;flex:none;transition:transform .5s var(--c-ease)}
.v5brand:hover svg{transform:rotate(-8deg)}
.v5brand .m-c{fill:var(--c-forest);transition:fill .45s var(--c-ease)}
.v5brand .m-k{fill:var(--c-lime)}
.v5nav.over .v5brand .m-c{fill:var(--c-milk)}
.v5brand-t{font-family:var(--c-serif);font-weight:600;font-size:19px;letter-spacing:-.01em;line-height:1}
.v5brand-t em{font-style:italic;font-weight:500;opacity:.72;margin-left:5px;font-variation-settings:"opsz" 24}
.v5links{display:flex;gap:4px;align-items:center}
.v5links a{position:relative;white-space:nowrap;color:inherit;text-decoration:none;font:600 14.5px/1 var(--c-sans);letter-spacing:-.005em;padding:14px 12px;border-radius:999px;opacity:.86;transition:opacity .2s,background .2s}
.v5links a:after{content:"";position:absolute;left:12px;right:12px;bottom:9px;height:2px;background:var(--c-lime);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--c-ease)}
.v5links a:hover,.v5links a.on{opacity:1}
.v5links a:hover:after,.v5links a.on:after{transform:scaleX(1)}
.v5nav-r{display:flex;align-items:center;gap:8px}
.v5nav-book{position:relative;display:inline-flex;white-space:nowrap;align-items:center;color:inherit;text-decoration:none;font:600 14.5px/1 var(--c-sans);letter-spacing:-.005em;padding:14px 12px;border-radius:999px;opacity:.86;min-height:44px;transition:opacity .2s}
.v5nav-book:after{content:"";position:absolute;left:12px;right:12px;bottom:9px;height:2px;background:var(--c-lime);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--c-ease)}
.v5nav-book:hover{opacity:1}
.v5nav-book:hover:after{transform:scaleX(1)}
.v5btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 20px;border-radius:999px;background:var(--c-lime);color:var(--c-950);font:700 14.5px/1 var(--c-sans);letter-spacing:-.01em;text-decoration:none;border:0;cursor:pointer;transition:transform .35s var(--c-spring),box-shadow .25s var(--c-ease),background .2s}
.v5btn:hover{transform:translateY(-1px);box-shadow:0 12px 26px -8px rgba(217,241,79,.7)}
.v5btn:active{transform:scale(.97)}
.v5btn.ghost{background:transparent;color:inherit;box-shadow:inset 0 0 0 1.5px currentColor}
.v5btn.ghost:hover{box-shadow:inset 0 0 0 1.5px currentColor,0 10px 24px -12px rgba(34,57,28,.4)}
.v5menu-btn{display:inline-flex;align-items:center;gap:9px;background:transparent;border:0;color:inherit;cursor:pointer;font:700 14.5px/1 var(--c-sans);padding:12px 8px 12px 12px;border-radius:999px;min-height:44px}
.v5menu-btn .bars{width:22px;height:14px;position:relative;display:block}
.v5menu-btn .bars i{position:absolute;left:0;right:0;height:2px;background:currentColor;border-radius:2px;transition:transform .45s var(--c-ease),opacity .3s,top .45s var(--c-ease)}
.v5menu-btn .bars i:nth-child(1){top:0}.v5menu-btn .bars i:nth-child(2){top:6px}.v5menu-btn .bars i:nth-child(3){top:12px;width:60%}
.v5menu-btn[aria-expanded="true"] .bars i:nth-child(1){top:6px;transform:rotate(45deg)}
.v5menu-btn[aria-expanded="true"] .bars i:nth-child(2){opacity:0;transform:scaleX(0)}
.v5menu-btn[aria-expanded="true"] .bars i:nth-child(3){top:6px;width:100%;transform:rotate(-45deg)}
@media (max-width:1040px){.v5links{display:none}}
@media (max-width:760px){.v5brand-t em{display:none}.v5nav-book{display:none}.v5nav .v5btn{padding:10px 16px}.v5menu-btn .t{display:none}}
@media (max-width:360px){.v5nav .v5btn{display:none}}

/* ---------- menu sheet ---------- */
.v5menu{position:fixed;inset:0;z-index:99;pointer-events:none;visibility:hidden;transition:visibility 0s .6s}
.v5menu.open{pointer-events:auto;visibility:visible;transition:none}
.v5menu-bg{position:absolute;inset:0;background:rgba(20,33,16,.5);opacity:0;transition:opacity .45s var(--c-ease)}
.v5menu.open .v5menu-bg{opacity:1}
.v5menu-panel{position:absolute;top:0;right:0;bottom:0;width:min(560px,100%);background:var(--c-cream);color:var(--c-ink);overflow-y:auto;-webkit-overflow-scrolling:touch;padding:calc(var(--c-nav-h) + 26px) clamp(22px,4vw,44px) calc(28px + var(--c-safe-b));transform:translateX(100%);transition:transform .6s var(--c-ease);box-shadow:-30px 0 80px -30px rgba(20,33,16,.4)}
.v5menu.open .v5menu-panel{transform:none}
.v5menu-panel h5{margin:22px 0 8px;font:700 11.5px/1 var(--c-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--c-ink-soft)}
.v5menu-panel h5:first-child{margin-top:0}
.v5menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 28px}
.v5menu-grid > div{min-width:0}
.v5menu-panel a:not(.v5btn){display:flex;align-items:center;min-height:46px;color:var(--c-ink);text-decoration:none;font:500 16px/1.3 var(--c-sans);padding:12px 2px;border-bottom:1px solid var(--c-line);transition:padding-left .3s var(--c-ease),color .2s}
.v5menu-panel a:not(.v5btn):hover{padding-left:6px;color:var(--c-forest)}
.v5menu-panel a:not(.v5btn).on{color:var(--c-forest);font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.v5menu-panel .big a:not(.v5btn){font:500 clamp(22px,2.4vw,28px)/1.15 var(--c-serif);letter-spacing:-.015em;padding:11px 0;display:flex;justify-content:space-between;align-items:center}
.v5menu-panel .big a:not(.v5btn):after{content:"\2192";font-family:var(--c-sans);font-size:18px;color:var(--c-forest);opacity:0;transform:translateX(-6px);transition:opacity .3s,transform .3s var(--c-ease)}
.v5menu-panel .big a:not(.v5btn):hover:after{opacity:1;transform:none}
.v5menu-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;padding-top:22px;border-top:1px solid var(--c-line)}
.v5menu-cta .v5btn{min-height:50px;padding:14px 22px;font-size:15px}
.v5menu-panel .v5menu-item{opacity:0;transform:translateY(14px);transition:opacity .5s var(--c-ease),transform .6s var(--c-ease)}
.v5menu.open .v5menu-item{opacity:1;transform:none}
.v5menu-close{position:absolute;top:calc(var(--c-nav-h) - 52px);right:clamp(18px,3vw,32px)}
@media (max-width:640px){.v5menu-grid{grid-template-columns:1fr}}
body.v5-menu-open{overflow:hidden}
/* polish 10-12: the sheet's slide/fade and the staggered group reveal both respect Reduce Motion, same convention as the booking sheet */
html.v5-rm .v5menu,html.v5-rm .v5menu-bg,html.v5-rm .v5menu-panel,html.v5-rm .v5menu-panel .v5menu-item{transition:none}

/* ---------- footer ---------- */
.v5foot{background:var(--c-950);color:var(--c-milk-dim);padding:72px 0 calc(56px + var(--c-safe-b));font:400 14px/1.7 var(--c-sans);position:relative;overflow:hidden}
.v5foot:before{content:"";position:absolute;right:-12%;bottom:-40%;width:640px;height:640px;background:radial-gradient(closest-side,rgba(217,241,79,.12),transparent 70%);filter:blur(30px);pointer-events:none}
.v5foot .v5wrap{position:relative;max-width:1180px;margin:0 auto;padding:0 clamp(18px,3vw,32px)}
.v5foot a{color:var(--c-milk-dim);text-decoration:none;transition:color .2s}
.v5foot a:hover{color:var(--c-milk)}
.v5foot strong{color:var(--c-milk);font-weight:600}
.v5news{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:center;padding-bottom:36px;border-bottom:1px solid var(--c-line-g);margin-bottom:38px}
.v5news h3{font:600 clamp(22px,2.4vw,28px)/1.15 var(--c-serif);color:var(--c-milk);margin:0 0 6px;letter-spacing:-.015em}
.v5news p{margin:0;font-size:14.5px}
.v5foot .news-form{display:flex;gap:10px}
.v5foot .news-form input{flex:1;min-width:0;background:rgba(246,242,228,.08);border:1px solid var(--c-line-g);border-radius:999px;padding:13px 18px;color:var(--c-milk);font:400 16px var(--c-sans);transition:border-color .2s,box-shadow .2s}
.v5foot .news-form input::placeholder{color:var(--c-milk-dim)}
.v5foot .news-form input:focus{outline:0;border-color:var(--c-lime);box-shadow:0 0 0 3px var(--c-lime-soft)}
.v5foot .news-form .btn,.v5foot .news-form .v5btn{white-space:nowrap}
.v5foot .cs-success{display:none;color:var(--c-milk)}
.v5foot .cs-success.show{display:block}
.v5foot .cs-success h4{font:600 17px var(--c-serif);margin:0}
.v5foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px;padding-bottom:34px;border-bottom:1px solid var(--c-line-g)}
.v5foot .label{display:block;font:700 11.5px/1 var(--c-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--c-milk-dim);opacity:.8;margin:0 0 10px}
.v5foot .val{display:block;color:var(--c-milk-dim);font-size:14.5px;line-height:1.6}
.v5foot .list{display:flex;flex-direction:column;gap:2px}
.v5foot .list a{padding:9px 0;font-size:14.5px;display:inline-flex;min-height:40px;align-items:center}
.v5foot .social{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.v5foot .social a{width:40px;height:40px;border-radius:50%;border:1px solid var(--c-line-g);display:inline-flex;align-items:center;justify-content:center;transition:border-color .2s,color .2s,transform .35s var(--c-spring)}
.v5foot .social a:hover{border-color:var(--c-lime);color:var(--c-lime);transform:translateY(-2px)}
.v5foot .social svg{width:16px;height:16px;fill:currentColor}
.v5foot .legal{padding-top:28px;font-size:13px;line-height:1.75;max-width:980px}
.v5foot .legal p{margin:0 0 12px}
.v5foot .legal a{text-decoration:underline;text-underline-offset:2px}
.v5foot .ehl{display:flex;align-items:center;gap:14px;margin:18px 0}
.v5foot .ehl svg{flex:none}
.v5foot .foot-links{display:flex;flex-wrap:wrap;gap:4px 24px;margin:14px 0 0;font-size:13.5px}
.v5foot .foot-links a,.v5foot .cc-open-link{display:inline-block;padding:8px 0;min-height:44px;display:inline-flex;align-items:center}
.v5foot .cc-open-link{background:none;border:0;color:var(--c-milk-dim);font:400 13.5px var(--c-sans);cursor:pointer;padding:8px 0}
.v5foot .cc-open-link:hover{color:var(--c-milk)}
.v5foot .updated{margin:18px 0 0;font-size:12.5px;opacity:.75}
.v5foot .copyright{margin:6px 0 0;font-size:12.5px;opacity:.75}
.v5foot .guide-notes{margin-top:22px;padding-top:18px;border-top:1px solid var(--c-line-g);font-size:12.5px;opacity:.9}
.v5foot .guide-notes p{margin:0 0 8px}
@media (max-width:980px){.v5foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.v5news{grid-template-columns:1fr;gap:16px}.v5foot .news-form{flex-direction:column}.v5foot-grid{grid-template-columns:1fr 1fr;gap:26px 18px}.v5foot{padding-top:56px}}
@media (max-width:420px){.v5foot-grid{grid-template-columns:1fr}}

/* ---------- phone bar, consent, back to top, call, veil ---------- */
.v5bar{position:fixed;left:12px;right:12px;bottom:calc(12px + var(--c-safe-b));z-index:95;display:none;gap:8px;padding:8px;border-radius:999px;background:rgba(34,57,28,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 44px -10px rgba(20,33,16,.5);transition:transform .5s var(--c-ease),opacity .4s var(--c-ease);color:var(--c-milk)}
.v5bar .v5btn{flex:1;min-height:48px;font-size:15px}
.v5bar .v5btn.ghost{flex:0 0 auto;padding:12px 18px}
.v5bar.hide,body.v5-cc-open .v5bar,body.cc-open .v5bar{transform:translateY(140%);opacity:0;pointer-events:none}
/* v5.2 polish: no body padding for the bar (it hides over the footer anyway; the padding left a cream strip under the footer) */
@media (max-width:760px){.v5bar{display:flex}}
.v5cc{position:fixed;left:12px;right:12px;bottom:calc(12px + var(--c-safe-b));z-index:105;display:none;transform:translateY(20px);opacity:0;transition:transform .5s var(--c-ease),opacity .4s}
.v5cc.show{display:block;transform:none;opacity:1;animation:v5ccIn .3s var(--c-ease)}
@keyframes v5ccIn{from{transform:translateY(calc(100% + 24px));opacity:0}to{transform:none;opacity:1}}
html.v5-rm .v5cc.show{animation:none}
@media (prefers-reduced-motion:reduce){.v5cc.show{animation:none}}
.v5cc-in{max-width:640px;margin:0 auto;background:var(--c-paper);border:1px solid var(--c-line);border-radius:18px;box-shadow:0 18px 44px rgba(34,57,28,.28);padding:18px 20px;color:var(--c-ink)}
.v5cc p{margin:0 0 12px;font:400 13.5px/1.6 var(--c-sans);color:var(--c-ink-dim)}
.v5cc p a{text-decoration:underline;color:inherit}
.v5cc-row{display:flex;gap:10px;flex-wrap:wrap}
.v5cc .v5btn.ghost{color:var(--c-ink-dim)}
.v5totop{position:fixed;right:18px;bottom:calc(20px + var(--c-safe-b));z-index:90;width:46px;height:46px;border-radius:50%;background:var(--c-paper);color:var(--c-forest);border:1px solid var(--c-line);box-shadow:0 10px 28px -10px rgba(34,57,28,.4);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(16px) scale(.9);pointer-events:none;transition:opacity .35s,transform .45s var(--c-spring),background .2s}
.v5totop.show{opacity:1;transform:none;pointer-events:auto}
.v5totop:hover{background:var(--c-lime)}
.v5totop.show:active{transform:scale(.92)}
/* v5.2 polish: on phones back-to-top sat dead behind the sticky bar; it now steps aside while the bar is up and shows once the bar hides (footer, forms) */
@media (max-width:760px){.v5bar:not(.hide) ~ .v5totop.show{opacity:0;pointer-events:none;transform:translateY(16px) scale(.9)}body.cc-open .v5bar ~ .v5totop.show{opacity:1;pointer-events:auto;transform:none}}
/* ---------- booking sheet (v5.2): inline Calendly, opened from any "Book a discovery call"; a side sheet on desktop, a bottom sheet on phones ---------- */
.v5book{position:fixed;inset:0;z-index:110;display:block}
.v5book[hidden]{display:none}
.v5book-bg{position:absolute;inset:0;background:rgba(20,33,16,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity .45s var(--c-ease)}
.v5book.open .v5book-bg{opacity:1}
.v5book-panel{position:absolute;top:0;right:0;bottom:0;width:min(600px,100%);background:var(--c-cream);color:var(--c-ink);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .6s var(--c-ease);box-shadow:-30px 0 80px -30px rgba(20,33,16,.45);overflow:hidden}
.v5book.open .v5book-panel{transform:none}
.v5book-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:clamp(20px,3vw,30px) clamp(20px,3vw,32px) 14px}
.v5book-eyebrow{display:block;font:700 11.5px/1.4 var(--c-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--c-forest);margin-bottom:10px}
.v5book-title{margin:0 0 6px;font:500 clamp(26px,3vw,36px)/1.05 var(--c-serif);letter-spacing:-.025em;color:var(--c-ink);font-variation-settings:"opsz" 96}
.v5book-sub{margin:0;font:400 15px/1.5 var(--c-sans);color:var(--c-ink-dim)}
.v5book-close{flex:none;width:46px;height:46px;border-radius:50%;border:1px solid var(--c-line);background:var(--c-paper);color:var(--c-forest);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s,transform .35s var(--c-spring)}
.v5book-close:hover{background:var(--c-lime);transform:rotate(90deg)}
.v5book-frame{position:relative;flex:1;min-height:0;margin:0 clamp(12px,2vw,20px);border-radius:16px;overflow:hidden;background:var(--c-paper);border:1px solid var(--c-line)}
.v5book-frame iframe{display:block;width:100%;height:100%;border:0;opacity:0;transition:opacity .5s var(--c-ease)}
.v5book[data-state="ready"] .v5book-frame iframe{opacity:1}
.v5book-wait,.v5book-err{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:24px;font:500 15px/1.5 var(--c-sans);color:var(--c-ink-dim)}
.v5book[data-state="loading"] .v5book-wait{display:flex}
.v5book[data-state="error"] .v5book-err{display:flex}
.v5book-err p{margin:0;font-size:16px;color:var(--c-ink)}
.v5book-spin{width:34px;height:34px;border-radius:50%;border:3px solid var(--c-line);border-top-color:var(--c-forest);animation:v5spin .9s linear infinite}
@keyframes v5spin{to{transform:rotate(360deg)}}
.v5book-foot{margin:0;padding:14px clamp(20px,3vw,32px) calc(16px + var(--c-safe-b));font:400 12.5px/1.6 var(--c-sans);color:var(--c-ink-soft)}
.v5book-foot a{color:var(--c-forest);text-decoration:underline;text-underline-offset:2px}
body.v5-book-open{overflow:hidden}
body.v5-book-open .v5bar,body.v5-book-open .v5totop{transform:translateY(140%);opacity:0;pointer-events:none}
@media (max-width:760px){.v5book-panel{top:auto;left:0;width:100%;height:min(94dvh,94vh);border-radius:22px 22px 0 0;transform:translateY(100%);box-shadow:0 -30px 80px -30px rgba(20,33,16,.5)}.v5book-head{padding:18px 18px 10px}.v5book-sub{display:none}.v5book-frame{margin:0 10px}}
html.v5-rm .v5book-panel,html.v5-rm .v5book-bg{transition:none}
html.v5-rm .v5book-spin{animation:none;border-top-color:var(--c-line)}
.v5veil{position:fixed;inset:0;z-index:200;background:var(--c-cream);pointer-events:none;opacity:0;transition:opacity .28s ease}
html.v5-leaving .v5veil{opacity:1;pointer-events:auto}
html.v5-rm .v5veil{display:none}
html.v5-rm *{scroll-behavior:auto!important}
/* ---------- v5.2 polish: states shared by every page, the six guides included (they load only this file) ---------- */
.v5book-close svg{stroke-width:2}
.v5book-eyebrow{text-wrap:balance}
.v5book-close:active{transform:rotate(90deg) scale(.92)}
/* submit loading state for buttons the brand .btn rule does not reach (the guides' own buttons) */
form button[type=submit].is-loading{position:relative;color:transparent!important;pointer-events:none}
form button[type=submit].is-loading:before{content:"";position:absolute;left:50%;top:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;border:2.5px solid rgba(34,57,28,.25);border-top-color:var(--c-950);animation:v5spin .8s linear infinite}
/* inline field errors: .cs-field forms and fields with no wrapper (newsletter, guide unlock). Tones for dark panels here; main.css sets the cream-page tone */
.cs-field.err input:not([type=radio]),.cs-field.err select,.cs-field.err textarea,form [aria-invalid="true"]:not([type=radio]):not([type=checkbox]){border-color:#F7B1AA!important;box-shadow:0 0 0 3px rgba(247,177,170,.22)!important}
.cs-field.err:after{content:attr(data-err);display:block;font:500 12.5px/1.4 var(--c-sans);color:#F7B1AA;margin-top:6px}
.cs-field.cs-preferred.err .cs-radio{border-color:#F7B1AA}
/* guides: the hero starts below the fixed header (the guide's own html,body{padding:0} cancelled the build's body offset) */
section.hero#main{padding-top:calc(var(--c-nav-h) + 40px)}
/* guides: the metric-matched Inter fallback for body text (their stack went straight to Helvetica), and an em measure for the H1: 14ch was 565 px in
   Iowan and 619 px in Fraunces, so the hero re-wrapped on swap; 619 px / 68 px = 9.1em. Their serif fallback (plain Iowan) stays: at the guide H1's
   weight 600 / auto optical size it is within 2% of Fraunces, closer than the opsz-144-tuned face */
html:root{--f-sans:var(--c-sans)}
section.hero#main h1{max-width:9.1em}
@media (max-width:420px){.about > *{min-width:0}.about-stats .a .num{font-size:21px}}
@media print{.v5nav,.v5menu,.v5bar,.v5cc,.v5totop,.v5book,.v5prog,.v5veil{display:none!important}body{padding-top:0!important}}
/* v5.2 polish: one print sheet for all 30 pages (guides included): ink on paper, every reveal finished, pins unrolled, decorative art and footage off.
   Before: page heroes printed milk text on white, the home printed a full-page photo and 320vh of empty pin, the guides printed grey, blurred text. */
@media print{*{color:#000!important;background:transparent!important;box-shadow:none!important;text-shadow:none!important;filter:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;opacity:1!important}
 html,body{background:#fff!important}.rv,.hs,.w i,.story-beat,.goal,.prog,.door,.card,.counter,.step,.facts>div,.pain>div,.receipt li{transform:none!important;animation:none!important}
 .cine-media,.cine-shade,.cine-grain,.cine-beat,.cine-hint,.cine-spec,.hero-art,.story-stage,.story-rail,.lost-art,.sidx,.px-bg,#cs-gate,.sticky-cta,.read-progress,.v5skip{display:none!important}
 .cine,.cine.sticky,.story,.story-pin{position:static!important;min-height:0!important;height:auto!important}.cine-copy{padding:0 0 24px!important}.curtain{margin:0!important}
 .story-beats{display:block!important}.story-beat{margin:0 0 14px!important}a{text-decoration:underline}.btn,.v5btn{border:1px solid #000!important}}
