/* Before You Renovate — dependency-free, GitHub Pages-ready design system */
:root {
  color-scheme: light;
  --ink:#10151f; --ink-2:#303b4b; --muted:#627084; --paper:#fff; --warm:#f7f5ef;
  --blue:#073784; --blue-2:#0b53bd; --blue-3:#dce9ff; --blue-4:#eff5ff; --yellow:#f4d35e;
  --line:#d8dee8; --serif:Georgia,"Times New Roman",serif;
  --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --container:1220px; --reading:760px; --gutter:clamp(1.1rem,3.2vw,3rem);
  --section:clamp(4.8rem,9vw,8.5rem); --shadow:0 24px 64px rgba(9,31,70,.13);
  --ease:cubic-bezier(.22,1,.36,1);
}

*,*::before,*::after{box-sizing:border-box}

html{scroll-behavior:smooth;scroll-padding-top:7.5rem}

body{margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--sans)}

body.nav-open{overflow:hidden}
 img,svg{display:block;max-width:100%}
 img{height:auto}

a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}
 button,input,textarea,select{font:inherit}
 button{color:inherit}

::selection{background:var(--yellow);color:var(--ink)}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.skip-link{position:fixed;z-index:1000;top:.7rem;left:.7rem;padding:.7rem 1rem;background:var(--yellow);color:var(--ink);border:2px solid var(--ink);transform:translateY(-160%);transition:transform 180ms}

.skip-link:focus{transform:translateY(0)}
 :focus-visible{outline:3px solid var(--blue-2);outline-offset:4px}

.on-blue :focus-visible,.site-footer :focus-visible{outline-color:var(--yellow)}

.container{width:min(calc(100% - var(--gutter)*2),var(--container));margin-inline:auto}

.reading-width{width:min(calc(100% - var(--gutter)*2),var(--reading));margin-inline:auto}

.section{padding-block:var(--section)}
 .section-sm{padding-block:clamp(3.2rem,6vw,5.5rem)}

.section-blue{background:var(--blue);color:var(--paper)}
 .section-soft{background:var(--warm)}

.section-blueprint{background-color:var(--blue-4);background-image:linear-gradient(rgba(7,55,132,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(7,55,132,.055) 1px,transparent 1px);background-size:28px 28px}

.cluster{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem}
.stack>*+*{margin-top:var(--stack-space,1rem)}

.eyebrow{display:flex;align-items:center;gap:.7rem;margin:0 0 1rem;color:var(--blue);font-size:.76rem;font-weight:800;letter-spacing:.13em;line-height:1.3;text-transform:uppercase}

.eyebrow::before{width:2rem;height:1px;background:currentColor;content:""}
.eyebrow-light{color:#d9e7ff}

.kicker{margin:0 0 .7rem;color:var(--blue);font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}

h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3,h4{text-wrap:balance}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:.98}

h1{max-width:13ch;margin-bottom:1.4rem;font-size:clamp(3.2rem,7.1vw,7.3rem)}

h2{max-width:17ch;margin-bottom:0;font-size:clamp(2.45rem,4.7vw,5.05rem)}

h3{margin-bottom:.75rem;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.15}
h4{margin-bottom:.5rem;font-size:1rem}

.lede{max-width:40rem;color:var(--ink-2);font-size:clamp(1.08rem,1.6vw,1.28rem);line-height:1.65}
.on-blue .lede{color:#d9e7ff}

.fine-print{color:var(--muted);font-size:.78rem;line-height:1.55}
.meta-text{color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}

.section-heading{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(18rem,.62fr);align-items:end;gap:clamp(2rem,7vw,7rem);margin-bottom:clamp(2.4rem,5vw,4.5rem)}

.section-heading>p{max-width:35rem;margin:0 0 .4rem;color:var(--muted);font-size:1.05rem}
.section-heading-light>p{color:#d3e0f4}

.button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.35rem;padding:.75rem 1.15rem;border:1px solid transparent;border-radius:.18rem;font-size:.9rem;font-weight:800;line-height:1.2;text-decoration:none;transition:all 200ms var(--ease)}

.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--blue);color:#fff;box-shadow:0 8px 22px rgba(7,55,132,.18)}
.button-primary:hover{background:var(--blue-2)}

.button-secondary{background:transparent;color:var(--blue);border-color:var(--blue)}
.button-secondary:hover{background:var(--blue-4)}

.button-light{background:#fff;color:var(--blue)}
.button-light:hover{background:var(--yellow);color:var(--ink)}

.button-outline-light{color:#fff;border-color:rgba(255,255,255,.55)}
.button-outline-light:hover{background:#fff;color:var(--blue)}

.button-small{min-height:2.65rem;padding:.55rem .85rem;font-size:.78rem}

.text-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--blue);font-weight:800}
.text-link::after{content:"\2192";transition:transform 180ms}
.text-link:hover::after{transform:translateX(.25rem)}

.tag{display:inline-flex;align-items:center;min-height:1.8rem;padding:.22rem .6rem;background:var(--blue-4);color:var(--blue);border:1px solid var(--blue-3);border-radius:99px;font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}


/* Header */
.scroll-progress{position:fixed;z-index:300;top:0;left:0;width:100%;height:3px;pointer-events:none}
.scroll-progress span{display:block;width:100%;height:100%;background:var(--yellow);transform:scaleX(0);transform-origin:left}

.utility-bar{background:var(--ink);color:#e7edf7;font-size:.73rem;letter-spacing:.035em}
.utility-inner{display:flex;align-items:center;justify-content:space-between;min-height:2.25rem;gap:1rem}
.utility-inner p{margin:0}
.utility-links{display:flex;align-items:center;gap:1rem}
.utility-links a{color:#fff;font-weight:700}

.site-header{position:sticky;z-index:200;top:0;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);transition:box-shadow 200ms}
.site-header.is-scrolled{box-shadow:0 10px 28px rgba(10,31,66,.09);backdrop-filter:blur(16px)}

.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:5.25rem;gap:1.5rem}
.brand{display:inline-flex;align-items:center;gap:.72rem;text-decoration:none}
.brand img{width:3rem;height:3rem;object-fit:contain}
.brand-name{display:flex;flex-direction:column}
.brand-name strong{font:400 1.08rem/1.05 var(--serif);letter-spacing:.06em;text-transform:uppercase}
.brand-name small{color:var(--blue);font-size:.59rem;font-weight:800;letter-spacing:.21em;text-transform:uppercase}

.site-nav{display:flex;align-items:center;gap:clamp(1.1rem,2.5vw,2.25rem)}
.site-nav>a{position:relative;color:var(--ink-2);font-size:.84rem;font-weight:750;text-decoration:none}
.site-nav>a:not(.nav-cta)::after{position:absolute;bottom:-.45rem;left:0;width:100%;height:2px;background:var(--blue);content:"";transform:scaleX(0);transform-origin:right;transition:transform 200ms}
.site-nav>a:not(.nav-cta):hover::after,.site-nav>a[aria-current=page]::after{transform:scaleX(1);transform-origin:left}

.nav-cta{padding:.68rem .85rem;background:var(--blue);color:#fff!important;border-radius:.18rem}
.nav-cta:hover{background:var(--blue-2)}

.menu-toggle{display:none;width:2.8rem;height:2.8rem;padding:.68rem;background:#fff;border:1px solid var(--line);cursor:pointer}
.menu-toggle>span:not(.sr-only){display:block;width:100%;height:2px;margin:.28rem 0;background:var(--ink);transition:transform 200ms,opacity 180ms}


/* Home hero */
.hero{position:relative;padding-block:clamp(4.5rem,8vw,7.8rem);overflow:hidden;background:linear-gradient(90deg,#fff 0 60%,var(--blue-4) 60%)}
.hero::before{position:absolute;inset:0;opacity:.55;background-image:linear-gradient(rgba(7,55,132,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(7,55,132,.045) 1px,transparent 1px);background-size:40px 40px;content:"";pointer-events:none}

.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(320px,.86fr);align-items:center;gap:clamp(2.5rem,7vw,6.5rem)}
.hero-copy{position:relative;z-index:2}
.hero-copy h1 em{display:block;color:var(--blue);font-style:italic}
.hero-copy .lede{margin-bottom:2rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:2rem}
.hero-assurances{display:flex;flex-wrap:wrap;gap:.55rem 1.2rem;padding:0;margin:0;color:var(--muted);font-size:.78rem;font-weight:700;list-style:none}
.hero-assurances li{position:relative;padding-left:.9rem}
.hero-assurances li::before{position:absolute;top:.64em;left:0;width:.36rem;height:.36rem;background:var(--blue-2);border-radius:50%;content:""}

.hero-visual{position:relative;min-width:0;padding:1rem 1rem 2.2rem 2.2rem}
.hero-visual::before{position:absolute;inset:.1rem 0 1rem 1rem;border:1px solid var(--blue);content:""}
.hero-image-wrap{position:relative;aspect-ratio:1.13;overflow:hidden;background:#dbe0e6;box-shadow:var(--shadow)}
.hero-image-wrap img{width:100%;height:100%;object-fit:cover}
.hero-image-wrap::after{position:absolute;inset:0;background:linear-gradient(180deg,transparent 64%,rgba(6,28,68,.62));content:""}
.hero-caption{position:absolute;z-index:2;right:1.35rem;bottom:1.3rem;left:1.35rem;display:flex;justify-content:space-between;gap:1rem;margin:0;color:#fff;font-size:.7rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}

.measure-line{position:absolute;z-index:3;background:var(--blue)}
.measure-line::before,.measure-line::after{position:absolute;background:var(--blue);content:""}
.measure-line-x{right:0;bottom:0;left:2.2rem;height:1px}
.measure-line-x::before,.measure-line-x::after{top:-.3rem;width:1px;height:.65rem}
.measure-line-x::before{left:0}
.measure-line-x::after{right:0}
.measure-line-y{top:1rem;bottom:2.2rem;left:0;width:1px}
.measure-line-y::before,.measure-line-y::after{left:-.3rem;width:.65rem;height:1px}
.measure-line-y::before{top:0}
.measure-line-y::after{bottom:0}
.measure-label{position:absolute;z-index:4;padding:.2rem .45rem;background:#fff;color:var(--blue);border:1px solid var(--blue);font-size:.6rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.measure-label-top{top:-.55rem;right:1.5rem}
.measure-label-side{top:48%;left:-2.5rem;transform:rotate(-90deg)}

.confidence-bar{border-block:1px solid var(--line)}
.confidence-inner{display:grid;grid-template-columns:auto 1fr;align-items:center;min-height:6.25rem;gap:clamp(1.5rem,5vw,5rem)}
.confidence-inner>p{margin:0;color:var(--blue);font-size:.7rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.confidence-list{display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:0;list-style:none}
.confidence-list li{padding:.2rem 1.25rem;color:var(--ink-2);font-size:.84rem;font-weight:700;text-align:center;border-left:1px solid var(--line)}


/* Stage finder + learning map */
.stage-finder{position:relative;overflow:hidden}
.stage-finder::after{position:absolute;right:-10rem;bottom:-13rem;width:34rem;height:34rem;border:1px solid rgba(255,255,255,.16);border-radius:50%;content:""}
.stage-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:clamp(2.5rem,8vw,8rem)}
.stage-intro h2{font-size:clamp(2.4rem,4.4vw,4.8rem)}
.stage-intro p:not(.eyebrow){max-width:30rem;margin:1.4rem 0 0;color:#d3e0f4}

.stage-controls{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;padding-top:1.8rem}
.stage-controls::before{position:absolute;top:0;right:0;left:0;height:1px;background:rgba(255,255,255,.38);content:""}
.stage-marker{position:absolute;top:-.3rem;left:var(--stage-position,12.5%);width:.7rem;height:.7rem;background:var(--yellow);border:2px solid var(--blue);border-radius:50%;box-shadow:0 0 0 3px var(--yellow);transform:translateX(-50%);transition:left 420ms var(--ease)}

.stage-button{min-height:7.3rem;padding:1rem;background:rgba(255,255,255,.05);color:#d9e7ff;border:1px solid rgba(255,255,255,.24);text-align:left;cursor:pointer;transition:all 200ms var(--ease)}
.stage-button:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.6)}
.stage-button[aria-pressed=true]{background:#fff;color:var(--blue);border-color:#fff}
.stage-button span{display:block;margin-bottom:1.1rem;font-size:.65rem;font-weight:900;letter-spacing:.1em;opacity:.75}
.stage-button strong{display:block;font:400 1.17rem/1.12 var(--serif)}

.stage-result{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1.5rem;margin-top:1rem;padding:1.35rem;background:#fff;color:var(--ink)}
.stage-result p{margin:0}
.stage-result .meta-text{margin-bottom:.2rem;color:var(--blue)}
.stage-result [data-stage-copy]{color:var(--ink-2)}

.language-map{display:grid;grid-template-columns:repeat(8,1fr);padding:0;margin:0;list-style:none;counter-reset:path}
.language-map li{position:relative;min-width:0;padding:2.8rem .7rem 0;counter-increment:path}
.language-map li::before{position:absolute;z-index:2;top:0;left:50%;display:grid;width:1.8rem;height:1.8rem;place-items:center;background:#fff;color:var(--blue);border:2px solid var(--blue);border-radius:50%;content:counter(path,decimal-leading-zero);font-size:.56rem;font-weight:900;transform:translateX(-50%)}
.language-map li::after{position:absolute;top:.86rem;right:-50%;left:50%;height:2px;background:var(--blue-3);content:""}
.language-map li:last-child::after{display:none}
.language-map strong{display:block;color:var(--blue);font-size:.7rem;letter-spacing:.08em;text-align:center;text-transform:uppercase}
.map-summary{max-width:52rem;margin:2.2rem auto 0;color:var(--muted);text-align:center}


/* Cards and feature sections */
.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.module-card{position:relative;display:flex;flex-direction:column;min-height:25rem;padding:1.6rem;overflow:hidden;background:#fff;border:1px solid var(--line);transition:transform 220ms var(--ease),box-shadow 220ms,border-color 180ms}
.module-card:hover{transform:translateY(-5px);border-color:var(--blue-2);box-shadow:var(--shadow)}
.module-card-number{color:var(--blue);font-size:.65rem;font-weight:900;letter-spacing:.12em}
.module-card-icon{display:grid;width:4.3rem;height:4.3rem;place-items:center;margin:2.5rem 0 1.6rem;color:var(--blue);border:1px solid var(--blue-3);border-radius:50%;font:400 1.8rem var(--serif)}
.module-card p{color:var(--muted)}
.module-card .text-link{margin-top:auto}
.module-card-featured{background:var(--blue);color:#fff;border-color:var(--blue)}
.module-card-featured .module-card-number,.module-card-featured .text-link{color:var(--yellow)}
.module-card-featured .module-card-icon{color:#fff;border-color:rgba(255,255,255,.35)}
.module-card-featured p{color:#d6e3f6}

.guide-spotlight{display:grid;grid-template-columns:minmax(240px,.78fr) minmax(0,1.22fr);align-items:center;gap:clamp(2.8rem,9vw,8.5rem)}
.guide-cover{position:relative;max-width:28rem;margin-inline:auto}
.guide-cover::before{position:absolute;inset:1.2rem -1.2rem -1.2rem 1.2rem;background:var(--blue);content:""}
.guide-cover img{position:relative;width:100%;border:1px solid var(--line);box-shadow:var(--shadow)}
.guide-content h2{max-width:11ch}
.guide-content .lede{margin:1.5rem 0}
.guide-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1.5rem;padding:1.5rem 0;margin:0 0 1.4rem;border-block:1px solid var(--line);list-style:none}
.guide-list li{position:relative;padding-left:1.2rem;color:var(--ink-2);font-size:.9rem}
.guide-list li::before{position:absolute;top:.66em;left:0;width:.38rem;height:.38rem;background:var(--blue-2);content:"";transform:rotate(45deg)}

.review-band{background:var(--ink);color:#fff}
.review-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(290px,.65fr);align-items:center;gap:clamp(2.5rem,8vw,8rem)}
.review-copy h2{max-width:13ch}
.review-copy .lede{margin:1.5rem 0 2rem;color:#d5ddea}
.review-card{padding:clamp(1.5rem,3vw,2.3rem);background:#fff;color:var(--ink)}
.review-card>span{color:var(--blue);font-size:.68rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.review-card ul{padding:1rem 0 0;margin:1rem 0 1.6rem;border-top:1px solid var(--line);list-style:none}
.review-card li{position:relative;padding:.48rem 0 .48rem 1.35rem;color:var(--ink-2);font-size:.9rem}
.review-card li::before{position:absolute;top:.7rem;left:0;color:var(--blue);content:"\2713";font-weight:900}

.bidready-callout{position:relative;overflow:hidden;background:var(--yellow)}
.bidready-callout::after{position:absolute;top:-11rem;right:-9rem;width:32rem;height:32rem;border:1px solid rgba(16,21,31,.22);border-radius:50%;content:""}
.bidready-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(290px,.55fr);align-items:center;gap:clamp(2rem,7vw,7rem)}
.bidready-grid h2{max-width:14ch}
.bidready-grid .lede{margin:1.4rem 0 2rem}
.packet-list{padding:1.5rem;margin:0;background:rgba(255,255,255,.62);border:1px solid rgba(16,21,31,.22);list-style:none;counter-reset:packet}
.packet-list li{display:grid;grid-template-columns:2rem 1fr;gap:.8rem;padding:.7rem 0;border-bottom:1px solid rgba(16,21,31,.16);counter-increment:packet}
.packet-list li:last-child{border-bottom:0}
.packet-list li::before{color:var(--blue);content:counter(packet,decimal-leading-zero);font-size:.65rem;font-weight:900}
.packet-list strong{font-size:.9rem}

.faq-grid{display:grid;grid-template-columns:minmax(230px,.55fr) minmax(0,1fr);gap:clamp(2rem,8vw,7rem)}
.faq-intro{align-self:start}
.faq-intro p{max-width:27rem;margin-top:1.2rem;color:var(--muted)}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{position:relative;padding:1.35rem 3rem 1.35rem 0;font-size:1.03rem;font-weight:780;list-style:none;cursor:pointer}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{position:absolute;top:1.2rem;right:0;display:grid;width:1.8rem;height:1.8rem;place-items:center;color:var(--blue);border:1px solid var(--blue-3);content:"+";font-size:1.25rem}
.faq-list details[open] summary::after{content:"\2212"}
.faq-list details>div{max-width:46rem;padding:0 2.5rem 1.4rem 0;color:var(--muted)}

/* Interior pages */
.page-hero{position:relative;padding-block:clamp(4rem,8vw,7.3rem);overflow:hidden;background:var(--blue);color:#fff}
.page-hero::after{position:absolute;inset:0;opacity:.14;background-image:linear-gradient(rgba(255,255,255,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 1px);background-size:36px 36px;content:""}
.page-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(260px,.55fr);align-items:end;gap:clamp(2rem,8vw,8rem)}
.page-hero h1{max-width:12ch;margin-bottom:0;font-size:clamp(3rem,6.4vw,6.6rem)}
.page-hero h1 em{color:var(--yellow);font-style:italic}
.page-hero-aside{padding:1.3rem 0 0 1.5rem;border-left:1px solid rgba(255,255,255,.45)}
.page-hero-aside p{margin-bottom:1.2rem;color:#d9e7ff}
.page-hero .fine-print{color:#cbdcf7}
.breadcrumb{margin-bottom:1.3rem;color:#cbdcf7;font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.breadcrumb a{color:#fff}
.jump-nav{position:sticky;z-index:50;top:5.25rem;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.jump-inner{display:flex;gap:1.4rem;overflow-x:auto;scrollbar-width:thin}
.jump-inner a{flex:0 0 auto;padding:.85rem 0;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.07em;text-decoration:none;text-transform:uppercase}.jump-inner a:hover{color:var(--blue)}
.lesson-layout{display:grid;grid-template-columns:minmax(240px,.5fr) minmax(0,1fr);gap:clamp(2.5rem,9vw,8rem)}
.lesson-number{position:sticky;top:9rem;align-self:start}.lesson-number>span{display:block;margin-bottom:1.3rem;color:var(--blue);font:400 clamp(4.5rem,10vw,9rem)/.75 var(--serif)}.lesson-number p{max-width:18rem;color:var(--muted)}
.lesson-body h2{max-width:13ch}.lesson-body>.lede{margin:1.4rem 0 2rem}
.definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.definition-card{padding:1.2rem;background:#fff;border:1px solid var(--line)}.definition-card strong{display:block;margin-bottom:.4rem;color:var(--blue)}.definition-card p{margin:0;color:var(--muted);font-size:.9rem}
.script-card{position:relative;margin-top:2rem;padding:1.6rem;background:var(--blue-4);border-left:4px solid var(--blue)}.script-card>span{display:block;margin-bottom:.7rem;color:var(--blue);font-size:.68rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.script-card blockquote{margin:0;padding-right:5rem;font:400 clamp(1.2rem,2.3vw,1.65rem)/1.35 var(--serif)}.script-card .copy-button{position:absolute;top:.8rem;right:.8rem}
.warning-note{display:grid;grid-template-columns:auto 1fr;gap:.9rem;margin-top:1.25rem;padding:1rem 1.2rem;color:#5b4310;background:#fff7d7;border:1px solid #ead17a}.warning-note strong{font:400 1.3rem var(--serif)}.warning-note p{margin:0;font-size:.88rem}
.glossary-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;margin-bottom:2rem}.search-field{position:relative}.search-field input{width:100%;min-height:3.6rem;padding:.8rem 1rem .8rem 3rem;background:#fff;border:1px solid var(--line)}.search-field::before{position:absolute;top:50%;left:1rem;color:var(--blue);content:"\2315";font-size:1.35rem;transform:translateY(-50%) rotate(-20deg)}.filter-select{min-height:3.6rem;padding:.8rem 2.5rem .8rem 1rem;background:#fff;color:var(--ink);border:1px solid var(--line)}
.glossary-count{margin-bottom:1rem;color:var(--muted);font-size:.8rem}.glossary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.term-card{padding:1.35rem;background:#fff;border:1px solid var(--line)}.term-card[hidden]{display:none}.term-card h3{color:var(--blue);font:400 1.38rem var(--serif)}.term-card p{margin:0;color:var(--muted);font-size:.9rem}.term-card small{display:block;margin-top:1rem;color:var(--blue);font-size:.65rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.empty-state{grid-column:1/-1;padding:2rem;color:var(--muted);text-align:center;border:1px dashed var(--line)}

/* Guides and self-check */
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.download-card{display:flex;flex-direction:column;min-height:25rem;padding:1.5rem;background:#fff;border:1px solid var(--line)}.download-card-featured{grid-column:span 2;background:var(--blue);color:#fff;border-color:var(--blue)}.download-card-top{display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:auto}.download-type{display:grid;width:4.5rem;height:5.8rem;place-items:end center;padding-bottom:.6rem;color:var(--blue);border:1px solid var(--blue-3);font:400 1.3rem var(--serif)}.download-card-featured .download-type{color:#fff;border-color:rgba(255,255,255,.45)}.download-card h2,.download-card h3{max-width:15ch;margin-top:2.7rem}.download-card h2{font-size:clamp(2.1rem,4vw,3.8rem)}.download-card p{color:var(--muted)}.download-card-featured p{color:#d8e5f8}.download-card .cluster{margin-top:1.3rem}.download-card .text-link{margin-top:1rem}.download-card-featured .text-link{color:var(--yellow)}
.checklist-box{padding:clamp(1.5rem,4vw,2.5rem);background:#fff;border:1px solid var(--line)}.checklist-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:1rem;margin-bottom:1.5rem}.checklist-head h2{font-size:clamp(2rem,4vw,3.7rem)}.check-progress{min-width:8rem;text-align:right}.check-progress strong{display:block;color:var(--blue);font:400 2.1rem var(--serif)}.progress-track{width:100%;height:.42rem;margin-top:.35rem;overflow:hidden;background:var(--blue-3)}.progress-track span{display:block;width:var(--progress,0%);height:100%;background:var(--blue);transition:width 320ms var(--ease)}.check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;padding:0;margin:0;list-style:none}.check-list label{display:flex;align-items:start;gap:.85rem;height:100%;padding:1rem;color:var(--ink-2);border:1px solid var(--line);cursor:pointer}.check-list input{flex:0 0 auto;width:1.15rem;height:1.15rem;margin-top:.2rem;accent-color:var(--blue)}.check-result{margin:1.2rem 0 0;padding:1rem;color:var(--blue);background:var(--blue-4);font-weight:750}

/* Review form */
.form-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(270px,.55fr);gap:clamp(2rem,7vw,6rem)}.intake-form{padding:clamp(1.4rem,4vw,2.5rem);background:#fff;border:1px solid var(--line)}.form-section{padding:1.6rem 0;border-bottom:1px solid var(--line)}.form-section:first-child{padding-top:0}.form-section:last-of-type{border-bottom:0}.form-section h2{margin-bottom:1.2rem;font:400 clamp(1.65rem,3vw,2.25rem) var(--serif)}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.field{display:flex;flex-direction:column;gap:.38rem}.field-full{grid-column:1/-1}.field label,fieldset legend{color:var(--ink-2);font-size:.82rem;font-weight:800}.field input,.field select,.field textarea{width:100%;min-height:3.15rem;padding:.72rem .8rem;background:#fff;color:var(--ink);border:1px solid #bbc4d1;border-radius:0}.field textarea{min-height:8rem;resize:vertical}.field-help{color:var(--muted);font-size:.72rem}fieldset{padding:0;margin:0;border:0}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.choice{display:flex;align-items:start;gap:.7rem;padding:.85rem;border:1px solid var(--line)}.choice input{flex:0 0 auto;margin-top:.3rem;accent-color:var(--blue)}.choice span{color:var(--ink-2);font-size:.85rem}
.form-actions{display:flex;flex-wrap:wrap;gap:.8rem;padding-top:1.5rem}.form-status{min-height:1.5rem;margin:.9rem 0 0;color:#16643c;font-size:.8rem;font-weight:750}.form-aside{align-self:start}.form-aside-card{padding:1.5rem;background:var(--blue);color:#fff}.form-aside-card+.form-aside-card{margin-top:1rem}.form-aside-card h3{font-family:var(--serif);font-weight:400}.form-aside-card p,.form-aside-card li{color:#d7e4f7;font-size:.86rem}.form-aside-card ul{padding-left:1.2rem}.form-aside-card a{color:var(--yellow);font-weight:800}.form-aside-card-light{background:var(--warm);color:var(--ink);border:1px solid var(--line)}.form-aside-card-light p,.form-aside-card-light li{color:var(--muted)}.form-aside-card-light a{color:var(--blue)}.review-summary{display:none;margin-top:1rem;padding:1rem;white-space:pre-wrap;background:var(--warm);border:1px solid var(--line);font:.78rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.review-summary.is-visible{display:block}
.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.principle-card{padding:1.5rem;border-top:3px solid var(--blue);background:#fff;box-shadow:0 12px 30px rgba(9,31,70,.07)}.principle-card span{display:block;margin-bottom:2.2rem;color:var(--blue);font-size:.66rem;font-weight:900;letter-spacing:.12em}.principle-card p{margin:0;color:var(--muted);font-size:.9rem}

/* Contact and footer */
.contact-strip{border-top:1px solid var(--line)}.contact-strip-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2rem;padding-block:2.2rem}.contact-strip h2{font-size:clamp(1.9rem,4vw,3.5rem)}.contact-strip p{margin:.6rem 0 0;color:var(--muted)}
.site-footer{padding-block:clamp(3.3rem,7vw,6rem) 1.5rem;background:var(--blue);color:#fff}.footer-grid{display:grid;grid-template-columns:1.25fr repeat(2,.55fr) .75fr;gap:clamp(2rem,5vw,5rem)}.footer-brand img{width:7.5rem;padding:.45rem;background:#fff}.footer-brand p{max-width:27rem;margin:1.3rem 0 0;color:#d4e1f5;font-size:.88rem}.footer-column h2{margin-bottom:1rem;color:#bcd2f4;font:850 .66rem var(--sans);letter-spacing:.12em;text-transform:uppercase}.footer-column ul{padding:0;margin:0;list-style:none}.footer-column li+li{margin-top:.52rem}.footer-column a{color:#fff;font-size:.86rem;text-decoration:none}.footer-column a:hover{color:var(--yellow)}.footer-bottom{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-top:4rem;padding-top:1.2rem;color:#bfd1ed;border-top:1px solid rgba(255,255,255,.22);font-size:.7rem}.footer-bottom p{margin:0}.footer-bottom nav{display:flex;flex-wrap:wrap;gap:1rem}

/* In-browser clarity assistant */
.assistant-launcher{position:fixed;z-index:180;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:.65rem;min-height:3.2rem;padding:.7rem 1rem;background:var(--yellow);color:var(--ink);border:2px solid var(--ink);box-shadow:0 12px 30px rgba(9,24,51,.22);font-weight:850;cursor:pointer;transition:all 180ms}.assistant-launcher:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(9,24,51,.3)}.assistant-launcher span:first-child{display:grid;width:1.5rem;height:1.5rem;place-items:center;background:var(--blue);color:#fff;border-radius:50%;font-family:var(--serif)}
.assistant-dialog{width:min(92vw,31rem);max-height:min(84vh,45rem);padding:0;overflow:hidden;background:#fff;color:var(--ink);border:0;box-shadow:0 30px 90px rgba(0,0,0,.32)}.assistant-dialog::backdrop{background:rgba(5,16,36,.67);backdrop-filter:blur(4px)}.assistant-shell{display:grid;grid-template-rows:auto minmax(13rem,1fr) auto;max-height:min(84vh,45rem)}.assistant-head{display:flex;align-items:start;justify-content:space-between;gap:1rem;padding:1.2rem;background:var(--blue);color:#fff}.assistant-head p{margin:.2rem 0 0;color:#cfe0f8;font-size:.73rem}.assistant-head strong{font:400 1.25rem var(--serif)}.dialog-close{display:grid;width:2.1rem;height:2.1rem;flex:0 0 auto;place-items:center;padding:0;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.45);cursor:pointer}.chat-log{overflow-y:auto;padding:1rem;background:var(--blue-4)}.chat-message{max-width:88%;margin:0 0 .8rem;padding:.75rem .85rem;background:#fff;border:1px solid var(--line);font-size:.82rem;line-height:1.52}.chat-message-user{margin-left:auto;background:var(--blue);color:#fff;border-color:var(--blue)}.chat-message p{margin:0}.chat-message a{display:inline-block;margin-top:.55rem;color:var(--blue);font-weight:800}.assistant-controls{padding:.9rem 1rem 1rem;border-top:1px solid var(--line)}.quick-prompts{display:flex;gap:.45rem;padding-bottom:.75rem;overflow-x:auto}.quick-prompt{flex:0 0 auto;padding:.42rem .58rem;background:#fff;color:var(--blue);border:1px solid var(--blue-3);font-size:.66rem;font-weight:800;cursor:pointer}.assistant-form{display:grid;grid-template-columns:1fr auto;gap:.5rem}.assistant-form input{min-width:0;min-height:2.9rem;padding:.65rem .75rem;border:1px solid #adb9c9}.assistant-form button{padding-inline:.9rem;background:var(--blue);color:#fff;border:0;font-weight:800;cursor:pointer}.assistant-note{margin:.6rem 0 0;color:var(--muted);font-size:.62rem;line-height:1.4}

/* Legal and printable resources */
.legal-copy h2{margin:2.4rem 0 1rem;font-size:clamp(1.8rem,4vw,2.8rem)}.legal-copy h3{margin-top:1.7rem}.legal-copy p,.legal-copy li{color:var(--ink-2)}.legal-copy a{color:var(--blue)}
.print-page{background:#eceff3}.print-toolbar{position:sticky;z-index:20;top:0;background:var(--ink);color:#fff}.print-toolbar-inner{display:flex;align-items:center;justify-content:space-between;min-height:4.2rem;gap:1rem}.print-toolbar p{margin:0;font-size:.8rem}.worksheet{width:min(calc(100% - 2rem),8.5in);min-height:11in;margin:2rem auto;padding:.55in;background:#fff;box-shadow:0 15px 45px rgba(13,29,55,.12)}.worksheet-head{display:grid;grid-template-columns:1fr auto;gap:1rem;padding-bottom:.22in;border-bottom:3px solid var(--blue)}.worksheet-brand{display:flex;align-items:center;gap:.7rem}.worksheet-brand img{width:.65in;height:.65in;object-fit:contain}.worksheet-brand strong{display:block;font:400 15pt var(--serif)}.worksheet-brand small{color:var(--blue);font-size:7pt;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.worksheet-number{color:var(--blue);font-size:8pt;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.worksheet h1{max-width:none;margin:.3in 0 .12in;font-size:30pt}.worksheet-intro{margin-bottom:.25in;color:var(--ink-2);font-size:9pt;line-height:1.55}.worksheet-section{margin-top:.25in}.worksheet-section h2{max-width:none;margin-bottom:.12in;color:var(--blue);font:900 10pt var(--sans);letter-spacing:.09em;text-transform:uppercase}.worksheet-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:.12in}.worksheet-field{min-height:.48in;padding:.08in;border:1px solid #aeb8c8}.worksheet-field span{display:block;color:var(--muted);font-size:6.5pt;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.worksheet-line{min-height:.3in;border-bottom:1px solid #aeb8c8}.worksheet-checks{display:grid;grid-template-columns:repeat(2,1fr);gap:.08in .18in;padding:0;margin:0;list-style:none}.worksheet-checks li{position:relative;min-height:.25in;padding-left:.25in;font-size:8pt}.worksheet-checks li::before{position:absolute;top:.01in;left:0;width:.14in;height:.14in;border:1px solid var(--ink);content:""}.worksheet-table{width:100%;border-collapse:collapse;font-size:7pt}.worksheet-table th,.worksheet-table td{height:.32in;padding:.06in;text-align:left;border:1px solid #aeb8c8}.worksheet-table th{background:var(--blue-4);color:var(--blue);font-weight:900}.worksheet-footer{display:flex;justify-content:space-between;gap:1rem;margin-top:.3in;padding-top:.1in;color:var(--muted);border-top:1px solid var(--line);font-size:6.5pt}

[data-reveal]{opacity:1;transform:none}.js.is-ready [data-reveal]{opacity:0;transform:translateY(1.1rem);transition:opacity 600ms var(--ease),transform 600ms var(--ease)}.js.is-ready [data-reveal].is-visible{opacity:1;transform:translateY(0)}.js.is-ready [data-delay="1"]{transition-delay:80ms}.js.is-ready [data-delay="2"]{transition-delay:160ms}.js.is-ready [data-delay="3"]{transition-delay:240ms}

@media(max-width:1060px){.site-nav{gap:1rem}.site-nav>a{font-size:.78rem}.module-grid{grid-template-columns:repeat(2,1fr)}.glossary-grid{grid-template-columns:repeat(2,1fr)}.language-map{grid-template-columns:repeat(4,1fr);row-gap:2rem}.language-map li:nth-child(4)::after{display:none}.footer-grid{grid-template-columns:1.2fr repeat(2,.6fr)}.footer-column:last-child{grid-column:1/-1}}
@media(max-width:820px){.utility-inner>p{display:none}.utility-inner{justify-content:flex-end}.js .menu-toggle{display:block}.js .site-nav{position:fixed;z-index:190;top:var(--mobile-nav-top,5.25rem);right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:1rem var(--gutter) 2rem;overflow-y:auto;background:#fff;transform:translateX(100%);visibility:hidden;transition:transform 300ms var(--ease),visibility 300ms}.js .nav-open .site-nav{transform:translateX(0);visibility:visible}.js .site-nav>a{padding:1.1rem 0;font:400 1.7rem var(--serif);border-bottom:1px solid var(--line)}.js .site-nav>.nav-cta{margin-top:1rem;padding:1rem;font:800 .9rem var(--sans);text-align:center;border-bottom:0}.nav-open .menu-toggle>span:nth-child(2){transform:translateY(6px) rotate(45deg)}.nav-open .menu-toggle>span:nth-child(3){opacity:0}.nav-open .menu-toggle>span:nth-child(4){transform:translateY(-6px) rotate(-45deg)}.hero{background:#fff}.hero-grid,.stage-layout,.guide-spotlight,.review-grid,.bidready-grid,.page-hero-grid,.lesson-layout,.form-layout{grid-template-columns:1fr}.hero-visual{max-width:42rem}.confidence-inner{grid-template-columns:1fr;padding-block:1.3rem;gap:.7rem}.confidence-list{width:100%}.stage-controls{grid-template-columns:repeat(2,1fr)}.stage-marker,.stage-controls::before{display:none}.section-heading,.faq-grid{grid-template-columns:1fr;gap:1.5rem}.guide-spotlight{gap:4rem}.lesson-number{position:static;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1.5rem}.lesson-number>span{margin:0}.download-card-featured{grid-column:auto}.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.principle-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}.footer-brand{grid-column:1/-1}.footer-column:last-child{grid-column:auto}}
@media(max-width:600px){:root{--gutter:1rem;--section:4.2rem}html{scroll-padding-top:6.5rem}.utility-links a:first-child{display:none}.header-inner{min-height:4.7rem}.brand img{width:2.55rem;height:2.55rem}.brand-name strong{font-size:.9rem}.brand-name small{font-size:.52rem}h1{font-size:clamp(3rem,16vw,4.6rem)}h2{font-size:clamp(2.25rem,11vw,3.5rem)}.hero{padding-block:3.6rem 4.5rem}.hero-visual{padding:.7rem .7rem 1.5rem 1.5rem}.measure-line-x{left:1.5rem}.measure-line-y{top:.7rem;bottom:1.5rem}.measure-label-side{left:-2.8rem}.hero-assurances{display:grid}.confidence-list{grid-template-columns:1fr}.confidence-list li{padding:.55rem 0;text-align:left;border-top:1px solid var(--line);border-left:0}.stage-controls,.module-grid,.definition-grid,.glossary-grid,.guide-grid,.check-list,.field-grid,.choice-grid,.guide-list{grid-template-columns:1fr}.stage-button{min-height:5.7rem}.stage-result{grid-template-columns:1fr}.language-map{grid-template-columns:1fr;gap:0;margin-left:.3rem}.language-map li{min-height:4.2rem;padding:.15rem 0 1.2rem 3.2rem}.language-map li::before{top:0;left:.9rem;transform:translateX(-50%)}.language-map li::after{top:1.8rem;bottom:0;left:.87rem;width:2px;height:auto}.language-map li:nth-child(4)::after{display:block}.language-map li:last-child::after{display:none}.language-map strong{text-align:left}.module-card{min-height:21rem}.guide-cover{max-width:21rem}.glossary-tools{grid-template-columns:1fr}.checklist-head{grid-template-columns:1fr}.check-progress{text-align:left}.field-full{grid-column:auto}.script-card{padding-top:4.2rem}.script-card blockquote{padding-right:0}.contact-strip-inner{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-column:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;align-items:start}.assistant-launcher{min-width:3.2rem;padding:.7rem}.assistant-launcher .launcher-label{display:none}.assistant-dialog{width:100%;max-width:none;max-height:92dvh;margin:auto 0 0}.assistant-shell{max-height:92dvh}.worksheet{margin:0;box-shadow:none}}
@media print{@page{size:letter;margin:0}.print-toolbar,.assistant-launcher,.assistant-dialog{display:none!important}.print-page{background:#fff}.worksheet{width:8.5in;min-height:11in;margin:0;box-shadow:none;page-break-after:always}.worksheet:last-child{page-break-after:auto}*{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.js.is-ready [data-reveal]{opacity:1;transform:none}}
@media(prefers-contrast:more){:root{--line:#8a96a8;--muted:#445064}.button,.stage-button,.term-card,.download-card,.definition-card{border-width:2px}}
