@font-face{font-family:"Big Shoulders Display";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/big-shoulders-display-latin-700.woff2") format("woff2")}
@font-face{font-family:"Big Shoulders Display";font-style:normal;font-weight:800;font-display:swap;src:url("/assets/fonts/big-shoulders-display-latin-800.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/inter-latin-regular.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/inter-latin-600.woff2") format("woff2")}
:root{--bg:#111;--bg2:#1a1a1a;--bg3:#0d1b2a;--navy:#0a1628;--white:#fff;--text:#f0f0f0;--muted:#9a9a9a;--dim:rgba(240,240,240,0.5);--orange:#e8440a;--orange-btn:#cf3d00;--orange-btn-hover:#d44000;--orange2:#ff5a1f;--border:rgba(255,255,255,0.08);--border2:rgba(255,255,255,0.15);--card:#1a1a1a;--card2:#222;--nate-navy:#060e22;--nate-gold:#c8a01e;--font-head:'Big Shoulders Display',sans-serif;--font-body:'Inter',sans-serif}*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:#0a0f16;background-image:url('/assets/circuit.v10.3.svg');background-repeat:repeat;background-size:600px 600px;color:var(--text);font-family:var(--font-body);font-size:calc(16px * var(--text-scale));line-height:1.65;padding-top:64px}h1,h2,h3,h4,h5{font-family:var(--font-head);font-weight:800;line-height:1;letter-spacing:-.01em;text-transform:uppercase}p{line-height:1.75}a{text-decoration:none}img{max-width:100%;height:auto;display:block}strong{font-weight:600}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.15)}.section{padding:88px 32px}.section-inner{max-width:1280px;margin:0 auto}.section-dark{background:var(--bg)}.section-mid{background:var(--bg2);background-image:none}.section-navy{background:var(--bg3)}.section-orange{background:var(--orange)}.section-label{font-size:calc(12px * var(--text-scale));font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--orange);margin-bottom:16px;display:flex;align-items:center;gap:12px}.section-label::before{content:'';width:26px;height:3px;background:var(--orange)}.section-title{font-size:clamp(calc(34px * var(--text-scale)), calc(5vw * var(--text-scale)), calc(60px * var(--text-scale)));color:var(--white);margin-bottom:14px}.section-sub{font-size:calc(17px * var(--text-scale));color:var(--muted);max-width:540px;line-height:1.7}.container{max-width:1280px;margin:0 auto;padding:0 20px;width:100%}.container.narrow{max-width:760px}.container.narrower{max-width:680px}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.split-grid.tight{gap:2px}.split-grid.bias-2-1{grid-template-columns:2fr 1fr;align-items:center}.split-grid.constrained{max-width:640px}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.two-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}.fast-facts-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}.stack{display:flex;flex-direction:column}.stack-0{display:flex;flex-direction:column;gap:0}.stack-2{display:flex;flex-direction:column;gap:2px}.stack-6{display:flex;flex-direction:column;gap:6px}.stack-7{display:flex;flex-direction:column;gap:7px}.stack-8{display:flex;flex-direction:column;gap:8px}.stack-12{display:flex;flex-direction:column;gap:12px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.row.start{align-items:flex-start}.row.gap-14{gap:14px}.row.gap-16{gap:16px}.row.gap-20{gap:20px}.icon-row{display:flex;align-items:flex-start;gap:14px}.check-list{list-style:none;display:flex;flex-direction:column;gap:6px}.check-list.gap-7{gap:7px}.check-list.gap-8{gap:8px}.check-list>li,.check-list>div{font-size:calc(13px * var(--text-scale));color:var(--muted);display:flex;gap:8px;align-items:flex-start;line-height:1.55}.check-list.bright>li,.check-list.bright>div{font-size:calc(14px * var(--text-scale));color:rgba(240,240,240,0.75);align-items:flex-start}.check-list.dim>li,.check-list.dim>div{color:rgba(240,240,240,0.5)}.check-list.faded>li,.check-list.faded>div{font-size:calc(14px * var(--text-scale));color:rgba(255,255,255,0.35)}.feature-card{background:linear-gradient(135deg,#1f1f1f 0,#161616 100%);border:1px solid var(--border);border-left:3px solid rgba(255,255,255,0.15);padding:26px 28px;margin-bottom:2px;box-shadow:0 4px 14px rgba(0,0,0,0.35),inset 0 1px 0 rgba(255,255,255,0.04);transition:transform .2s,border-left-color .2s,box-shadow .2s}.feature-card:hover{transform:translateX(2px);border-left-color:var(--orange);box-shadow:0 6px 20px rgba(0,0,0,0.5),inset 0 1px 0 rgba(255,255,255,0.06)}.feature-card.accent{background:linear-gradient(135deg,#14233a 0,#0c1828 100%);border:1px solid rgba(232,68,10,0.3);border-left-color:var(--orange)}.feature-card-title{font-family:var(--font-head);font-size:calc(18px * var(--text-scale));font-weight:800;text-transform:uppercase;color:var(--white);margin-bottom:6px}.feature-card-text{font-size:calc(14px * var(--text-scale));color:var(--muted);line-height:1.65;margin:0}.feature-card-icon{font-size:calc(26px * var(--text-scale));flex-shrink:0;margin-top:2px}.callout{margin-top:24px;padding:20px 24px;background:var(--card);border-left:3px solid var(--orange);font-size:calc(14px * var(--text-scale));color:var(--muted);line-height:1.65;max-width:720px}.callout.w-680{max-width:680px}.callout.w-760{max-width:760px}.callout.compact{padding:18px 22px}.callout-strong{color:var(--white);display:block;margin-bottom:4px}.callout-strong-inline{color:var(--white)}.inline-cta{margin-top:24px;padding:20px 24px;background:rgba(232,68,10,0.08);border:1px solid rgba(232,68,10,0.3);border-left:3px solid var(--orange);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.inline-cta-btn{display:inline-block;background:transparent;border:1px solid var(--orange);color:var(--orange);font-family:var(--font-head);font-size:calc(15px * var(--text-scale));font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:11px 24px;white-space:nowrap;transition:background .2s,color .2s}.inline-cta-btn:hover{background:var(--orange-btn);color:var(--white);transform:translateY(-1px);box-shadow:0 4px 10px rgba(0,0,0,0.3)}.bar-band{background:var(--bg2);background-image:none;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:40px 32px}.bar-band.no-top{border-top:0}.bar-band.no-bottom{border-bottom:0}.bar-band-inner{max-width:1280px;margin:0 auto}.privacy-link{font-size:calc(12px * var(--text-scale));color:var(--muted);text-decoration:none;transition:color .2s}.privacy-link:hover{color:var(--orange)}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:calc(13px * var(--text-scale));color:var(--muted);margin-bottom:20px;transition:color .2s}.back-link:hover{color:var(--orange)}.compare-table{width:100%;border-collapse:collapse;font-size:calc(14px * var(--text-scale))}.compare-table-wrap{overflow-x:auto}nav{position:fixed;top:0;left:0;right:0;z-index:200;height:64px;display:flex;align-items:center;background:rgba(17,17,17,0.92);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);transition:box-shadow .3s}nav.scrolled{box-shadow:0 2px 24px rgba(0,0,0,0.4)}.nav-inner{width:100%;max-width:1280px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;white-space:nowrap}.nav-logo img{display:block;height:32px;width:auto}.nav-logo-accent{color:var(--orange)}.nav-logo-text{font-family:var(--font-head);font-weight:800;font-size:calc(18px * var(--text-scale));letter-spacing:.04em;text-transform:uppercase;color:var(--white);white-space:nowrap}.nav-links{display:flex;align-items:center;gap:2px}.nav-links a{font-size:calc(13px * var(--text-scale));font-weight:500;color:var(--muted);padding:10px 14px;min-height:44px;display:inline-flex;align-items:center;transition:color .2s;letter-spacing:.01em}.nav-links a:hover,.nav-links a.active{color:var(--white)}.nav-links .nav-buy{background:var(--orange-btn);color:var(--white);font-family:var(--font-head);font-size:calc(14px * var(--text-scale));font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:10px 20px 8px;min-height:44px;border-bottom:2px solid #9d2d00;box-shadow:0 2px 8px rgba(0,0,0,0.3),inset 0 1px 0 rgba(255,255,255,0.18);transition:background .15s,transform .12s,box-shadow .15s;margin-left:8px;text-shadow:0 1px 0 rgba(0,0,0,0.18)}.nav-links .nav-buy:hover{background:var(--orange-btn-hover);color:var(--white);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.22)}.nav-links .nav-buy:active{transform:translateY(0);box-shadow:0 1px 4px rgba(0,0,0,0.3)}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;flex:0 0 44px;width:44px;min-width:44px;height:44px;align-items:center;justify-content:center;background:0;border:0;padding:0}.hamburger span{display:block;width:22px;height:2px;background:var(--white);border-radius:1px;transition:all .3s}.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu{display:none;position:fixed;top:64px;left:0;right:0;background:var(--bg2);border-bottom:1px solid var(--border);z-index:199;flex-direction:column;padding:12px 16px 24px;max-height:calc(100vh - 64px);overflow-y:auto}.mobile-menu.open{display:flex}.mobile-menu a{font-size:calc(16px * var(--text-scale));font-weight:500;color:var(--dim);padding:12px 16px;transition:color .2s;display:block;border-bottom:1px solid var(--border)}.mobile-menu a:last-child{border-bottom:0}.mobile-menu a:hover{color:var(--white)}.mobile-menu .mob-buy{background:var(--orange-btn);color:var(--white);font-family:var(--font-head);font-weight:700;text-align:center;letter-spacing:.08em;text-transform:uppercase;margin-top:12px;border-bottom:3px solid #9d2d00;box-shadow:0 4px 12px rgba(0,0,0,0.35),inset 0 1px 0 rgba(255,255,255,0.18);text-shadow:0 1px 0 rgba(0,0,0,0.18)}.mobile-menu .mob-sub{padding-left:28px;font-size:calc(14px * var(--text-scale))}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:flex;align-items:center;gap:5px;cursor:pointer}.nav-dd-btn{background:0;border:0;cursor:pointer;padding:8px 10px;min-height:44px;min-width:44px;font-size:calc(8px * var(--text-scale));color:var(--muted);line-height:1;transition:transform .2s,color .2s;display:inline-flex;align-items:center;justify-content:center;margin-left:-6px}.nav-dd-btn:hover{color:var(--white)}.nav-dropdown.open .nav-dd-btn{transform:rotate(180deg);color:var(--orange)}.nav-dropdown-menu{display:none;position:absolute;top:calc(100% + 12px);left:-12px;background:#1a1a1a;border:1px solid var(--border);border-top:2px solid var(--orange);min-width:210px;z-index:300;box-shadow:0 12px 32px rgba(0,0,0,0.5)}.nav-dropdown.open .nav-dropdown-menu{display:block}.nav-dropdown-menu a{display:block;padding:11px 18px;font-size:calc(13px * var(--text-scale));font-weight:500;color:var(--muted);border-bottom:1px solid var(--border);transition:color .15s,background .15s;white-space:nowrap}.nav-dropdown-menu a:last-child{border-bottom:0}.nav-dropdown-menu a:hover{color:var(--white);background:rgba(255,255,255,0.04)}.skip-link{position:absolute;top:-100%;left:0;background:var(--orange);color:var(--white);padding:8px 16px;font-size:calc(14px * var(--text-scale));font-weight:600;z-index:9999;text-decoration:none;border-radius:0 0 4px 0}.skip-link:focus{top:0}.scroll-top{position:fixed;bottom:28px;right:24px;z-index:150;width:38px;height:38px;background:var(--card);border:1px solid var(--border2);color:var(--white);font-size:calc(14px * var(--text-scale));cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:all .3s;border-radius:0}.scroll-top.visible{opacity:1;pointer-events:all}.scroll-top:hover{background:var(--orange-btn);border-color:var(--orange-btn)}.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--orange-btn);color:var(--white);font-family:var(--font-head);font-size:calc(16px * var(--text-scale));font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:13px 26px 11px;border:0;border-bottom:3px solid #9d2d00;border-radius:0;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,0.35),inset 0 1px 0 rgba(255,255,255,0.18);transition:background .15s,transform .12s,box-shadow .15s,border-bottom-color .15s;text-shadow:0 1px 0 rgba(0,0,0,0.18)}.btn-primary:hover{background:var(--orange-btn-hover);transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,0.5),inset 0 1px 0 rgba(255,255,255,0.22);border-bottom-color:#b33500}.btn-primary:active{transform:translateY(1px);box-shadow:0 2px 6px rgba(0,0,0,0.35),inset 0 1px 0 rgba(255,255,255,0.15);border-bottom-width:2px;padding-bottom:12px}.btn-white{display:inline-flex;align-items:center;gap:8px;background:var(--white);color:var(--bg);font-family:var(--font-head);font-size:calc(16px * var(--text-scale));font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:13px 26px 11px;border:0;border-bottom:3px solid #c8c5bf;border-radius:0;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,0.35),inset 0 1px 0 rgba(255,255,255,0.5);transition:background .15s,transform .12s,box-shadow .15s}.btn-white:hover{background:var(--text);transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,0.5),inset 0 1px 0 rgba(255,255,255,0.5)}.btn-white:active{transform:translateY(1px);box-shadow:0 2px 6px rgba(0,0,0,0.35);border-bottom-width:2px;padding-bottom:12px}.btn-outline{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--text);font-family:var(--font-head);font-size:calc(16px * var(--text-scale));font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:12px 24px;border-radius:0;border:2px solid rgba(255,255,255,0.4);cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,0.25);transition:border-color .15s,color .15s,background .15s,transform .12s,box-shadow .15s}.btn-outline:hover{border-color:var(--orange);color:var(--white);background:rgba(232,68,10,0.08);transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,0.45)}.btn-outline:active{transform:translateY(1px);box-shadow:0 1px 4px rgba(0,0,0,0.3)}.btn-outline.on-dark{border-color:rgba(255,255,255,0.45);color:var(--white)}.btn-outline.on-dark:hover{border-color:var(--orange);color:var(--white);background:rgba(232,68,10,0.12)}.btn-outline-orange{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--orange);font-family:var(--font-head);font-size:calc(16px * var(--text-scale));font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:12px 24px;border-radius:0;border:2px solid var(--orange);cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,0.25);transition:all .15s}.btn-outline-orange:hover{background:var(--orange-btn);color:var(--white);transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,0.45)}.btn-outline-orange:active{transform:translateY(1px);box-shadow:0 1px 4px rgba(0,0,0,0.3)}.stripe-btn{display:inline-flex;align-items:center;gap:10px;background:var(--orange-btn);color:var(--white);font-family:var(--font-head);font-size:calc(17px * var(--text-scale));font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:14px 24px 12px;width:100%;justify-content:center;border:0;border-bottom:3px solid #9d2d00;box-shadow:0 4px 14px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.18);transition:background .15s,transform .12s,box-shadow .15s;text-decoration:none;text-shadow:0 1px 0 rgba(0,0,0,0.18)}.stripe-btn:hover{background:var(--orange-btn-hover);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,0.5),inset 0 1px 0 rgba(255,255,255,0.22);color:var(--white)}.stripe-btn:active{transform:translateY(1px);box-shadow:0 2px 6px rgba(0,0,0,0.35);border-bottom-width:2px;padding-bottom:13px}.stripe-btn-full{display:block;text-align:center;margin-top:10px;font-size:calc(13px * var(--text-scale));color:var(--muted);cursor:pointer;text-decoration:none;padding:8px;border:1px solid var(--border);transition:color .2s,border-color .2s}.stripe-btn-full:hover{color:var(--text);border-color:var(--border2)}.stripe-btn-full span{text-decoration:underline}.parallax-hero{position:relative;overflow:hidden;min-height:100svh;display:flex;align-items:center}.parallax-bg{position:absolute;top:0;left:0;right:0;height:88vh;min-height:100svh;background-size:cover;background-position:center right;background-repeat:no-repeat;background-image:url('/assets/hero-mobile.v10.10.webp');z-index:0}.parallax-overlay{position:absolute;top:0;left:0;right:0;height:88vh;min-height:100svh;background:linear-gradient(to right,rgba(17,17,17,0.97) 0,rgba(17,17,17,0.94) 18%,rgba(17,17,17,0.82) 35%,rgba(17,17,17,0.55) 52%,rgba(17,17,17,0.28) 70%,rgba(17,17,17,0.10) 88%,rgba(17,17,17,0.00) 100%),radial-gradient(ellipse at 30% 60%,rgba(30,41,64,0.45) 0,transparent 60%);z-index:1}@media(min-width:901px){.parallax-overlay{background:linear-gradient(to right,rgba(17,17,17,0) 0,rgba(17,17,17,0) 30%,rgba(17,17,17,0.18) 55%,rgba(17,17,17,0.10) 85%,rgba(17,17,17,0.05) 100%),radial-gradient(ellipse 80% 120% at 100% 50%,rgba(17,17,17,0.00) 0,rgba(17,17,17,0.00) 65%,rgba(17,17,17,0.10) 88%,rgba(17,17,17,0.20) 100%),radial-gradient(ellipse at 30% 60%,rgba(30,41,64,0.45) 0,transparent 60%)}}.parallax-content{position:relative;z-index:2;width:100%}.hero-content-pad{max-width:1280px;margin:0 auto;width:100%;padding:80px 32px}.hero-h1{font-size:clamp(calc(58px * var(--text-scale)), calc(10vw * var(--text-scale)), calc(130px * var(--text-scale)));line-height:.88;color:var(--white);margin-bottom:20px;max-width:900px}.hero-price-card-wrap{overflow:hidden}.hero-price-card{display:flex;align-items:center;gap:14px;padding:14px 20px;cursor:pointer;transition:filter .2s;position:relative;text-decoration:none}.hero-price-card:hover{filter:brightness(1.08)}.hero-price-card-body{display:none;padding:12px 20px 16px}.hero-price-card.open+.hero-price-card-body{display:block}.hero-price-card-expand{font-size:calc(12px * var(--text-scale));color:rgba(255,255,255,0.6);transition:transform .2s;flex-shrink:0}.hero-price-card.open .hero-price-card-expand{transform:rotate(180deg)}button.hero-price-card{width:100%;background:0;border:0;text-align:left;font-family:inherit;font-size:inherit;color:inherit;-webkit-appearance:none;appearance:none;cursor:pointer}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}.page-hero{background:var(--bg2);background-image:none;border-bottom:1px solid var(--border);padding:64px 32px 52px}.page-hero-inner{max-width:1280px;margin:0 auto}.page-hero-eyebrow{font-size:calc(11px * var(--text-scale));font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-bottom:12px;display:flex;align-items:center;gap:9px}.page-hero-eyebrow::before{content:'';width:16px;height:2px;background:var(--orange)}.page-hero h1{font-size:clamp(calc(38px * var(--text-scale)), calc(6vw * var(--text-scale)), calc(72px * var(--text-scale)));color:var(--white);margin-bottom:14px}.page-hero p{font-size:calc(18px * var(--text-scale));color:var(--muted);max-width:560px;line-height:1.7}.trust-bar{background:var(--bg2);background-image:none;border-bottom:1px solid var(--border);padding:16px 32px}.trust-bar-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:32px;flex-wrap:wrap}.trust-item{display:flex;align-items:center;gap:7px;font-size:calc(13px * var(--text-scale));font-weight:500;color:var(--muted)}.trust-item strong{color:var(--orange)}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:48px}.tier-card{background:var(--card);border-top:3px solid var(--border);padding:36px 32px;position:relative;transition:border-color .2s;scroll-margin-top:80px}.tier-card:hover{border-top-color:var(--orange)}.tier-card.featured{background:var(--bg3);border-top-color:var(--orange)}.tier-badge{position:absolute;top:-1px;right:20px;background:var(--orange);color:var(--white);font-family:var(--font-head);font-size:calc(11px * var(--text-scale));font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 14px;border-radius:0 0 4px 4px;box-shadow:0 2px 8px rgba(0,0,0,0.3)}.tier-label{font-size:calc(11px * var(--text-scale));font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-bottom:8px}.tier-name{font-size:calc(26px * var(--text-scale));color:var(--white);margin-bottom:0}.tier-price{font-family:var(--font-head);font-size:calc(56px * var(--text-scale));font-weight:800;color:var(--white);line-height:1;margin:16px 0 4px}.tier-per{font-size:calc(12px * var(--text-scale));color:var(--muted);margin-bottom:10px}.tier-desc{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.6;margin-bottom:20px}.tier-divider{border:0;border-top:1px solid var(--border);margin:18px 0}.tier-list-head{font-size:calc(10px * var(--text-scale));font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.tier-list{list-style:none;display:flex;flex-direction:column;gap:7px;margin-bottom:24px}.tier-list li{display:flex;align-items:flex-start;gap:8px;font-size:calc(13px * var(--text-scale));color:rgba(240,240,240,0.7);line-height:1.4}.tier-list li::before{content:'✓';color:var(--orange);font-weight:700;flex-shrink:0;margin-top:1px}.tier-time{font-size:calc(11px * var(--text-scale));color:var(--muted);display:flex;align-items:center;gap:6px;margin-bottom:20px}.tier-foot-note{margin-top:10px;font-size:calc(12px * var(--text-scale));color:var(--muted);text-align:center}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:48px}.process-step{background:#202020;padding:32px 24px;border-top:3px solid rgba(255,255,255,0.22);border-left:1px solid rgba(255,255,255,0.11);border-right:1px solid rgba(255,255,255,0.11);border-bottom:1px solid rgba(255,255,255,0.11);transition:border-top-color .2s,background .2s,transform .2s}.process-step:hover{border-top-color:var(--orange);background:#242424}.ps-num{font-family:var(--font-head);font-size:calc(56px * var(--text-scale));font-weight:800;color:var(--orange);opacity:1;line-height:1;margin-bottom:12px}.ps-icon{font-size:calc(26px * var(--text-scale));margin-bottom:12px}.ps-title{font-family:var(--font-head);font-size:calc(19px * var(--text-scale));font-weight:700;text-transform:uppercase;color:var(--white);margin-bottom:8px}.ps-text{font-size:calc(13px * var(--text-scale));color:#a8a8a8;line-height:1.65}.service-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:48px}.sp-card{background:var(--card);padding:36px 28px;border-top:3px solid transparent;transition:border-color .2s}.sp-card:hover{border-top-color:var(--orange)}.sp-card.featured{background:var(--bg3);border-top-color:var(--orange)}.sp-num{font-size:calc(10px * var(--text-scale));font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);margin-bottom:18px}.sp-icon{font-size:calc(28px * var(--text-scale));margin-bottom:14px}.sp-title{font-family:var(--font-head);font-size:calc(24px * var(--text-scale));font-weight:800;text-transform:uppercase;color:var(--white);margin-bottom:10px}.sp-desc{font-size:calc(14px * var(--text-scale));color:var(--muted);line-height:1.7;margin-bottom:18px}.sp-price{font-family:var(--font-head);font-size:calc(32px * var(--text-scale));font-weight:800;color:var(--orange)}.sp-list{list-style:none;display:flex;flex-direction:column;gap:6px;margin-top:14px}.sp-list li{display:flex;align-items:flex-start;gap:8px;font-size:calc(13px * var(--text-scale));color:var(--muted)}.sp-list li::before{content:'-';color:var(--orange);font-weight:700;flex-shrink:0}.service-cat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;margin-top:48px}.service-cat-card{background:var(--card);padding:36px 32px;border-top:3px solid rgba(255,255,255,0.08);position:relative;transition:background .25s,border-top-color .25s,transform .25s,box-shadow .25s;display:block;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,0.25)}.service-cat-card:hover{background:var(--bg3);border-top-color:var(--orange);transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,0.55)}.service-cat-card:hover .scc-arrow{opacity:1;transform:translateX(0)}.service-cat-card.featured{background:var(--card);border-top-color:rgba(255,255,255,0.08)}.service-cat-card.featured:hover{background:var(--bg3);border-top-color:var(--orange)}.scc-icon{font-size:calc(32px * var(--text-scale));margin-bottom:16px}.scc-title{font-family:var(--font-head);font-size:calc(28px * var(--text-scale));font-weight:800;text-transform:uppercase;color:var(--white);margin-bottom:8px}.scc-desc{font-size:calc(14px * var(--text-scale));color:var(--muted);line-height:1.7;margin-bottom:16px}.scc-from{font-family:var(--font-head);font-size:calc(24px * var(--text-scale));font-weight:800;color:var(--orange)}.scc-arrow{position:absolute;top:24px;right:24px;font-size:calc(20px * var(--text-scale));color:var(--orange);opacity:0;transform:translateX(-6px);transition:all .2s}.hosting-tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:40px}.hosting-tier{background:var(--card);padding:28px 24px;border-top:3px solid var(--border);transition:border-color .2s}.hosting-tier:hover{border-top-color:var(--orange)}.hosting-tier.featured{background:var(--bg3);border-top-color:var(--orange)}.ht-name{font-family:var(--font-head);font-size:calc(22px * var(--text-scale));font-weight:800;text-transform:uppercase;color:var(--white);margin-bottom:4px}.ht-price{font-family:var(--font-head);font-size:calc(42px * var(--text-scale));font-weight:800;color:var(--orange);line-height:1;margin:10px 0 4px}.ht-per{font-size:calc(11px * var(--text-scale));color:var(--muted);margin-bottom:14px}.ht-list{list-style:none;display:flex;flex-direction:column;gap:7px;margin-top:14px}.ht-list li{display:flex;align-items:flex-start;gap:8px;font-size:calc(13px * var(--text-scale));color:rgba(240,240,240,0.65);line-height:1.4}.ht-list li::before{content:'✓';color:var(--orange);font-weight:700;flex-shrink:0}.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;margin-top:48px}.case-card{background:var(--card);overflow:hidden;position:relative;transition:all .3s;cursor:pointer;display:block;text-decoration:none}.case-card:hover .case-img{transform:scale(1.03)}.case-img-wrap{overflow:hidden;aspect-ratio:16/9;background:var(--bg3);position:relative}.case-img-wrap::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(5,10,16,0.1),rgba(5,10,16,0.65));pointer-events:none}.case-img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .5s}.case-img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;min-height:220px;font-size:calc(64px * var(--text-scale));background:var(--bg3)}.case-img-placeholder .next-label{font-family:var(--font-head);font-size:calc(16px * var(--text-scale));font-weight:700;text-transform:uppercase;color:rgba(255,255,255,0.2);letter-spacing:.1em}.case-body{padding:24px 28px 28px;position:relative}.case-tag{font-size:calc(11px * var(--text-scale));font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:8px}.case-title{font-family:var(--font-head);font-size:calc(24px * var(--text-scale));font-weight:700;text-transform:uppercase;color:var(--white);margin-bottom:8px;line-height:1.1}.case-desc{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.65;margin-bottom:14px}.case-stats{display:flex;gap:20px;flex-wrap:wrap}.cs-num{font-family:var(--font-head);font-size:calc(28px * var(--text-scale));font-weight:800;color:var(--white);line-height:1}.cs-label{font-size:calc(11px * var(--text-scale));color:var(--muted)}.case-arrow{position:absolute;top:20px;right:20px;width:32px;height:32px;background:var(--orange-btn);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:calc(14px * var(--text-scale));opacity:0;transform:translateY(4px);transition:all .25s}.case-card:hover .case-arrow{opacity:1;transform:translateY(0)}.case-card.coming-soon{opacity:.55;cursor:default}.case-card.coming-soon:hover .case-img{transform:none}.cs-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.cs-img-wrap{overflow:hidden;border:1px solid var(--border)}.cs-img-wrap img{width:100%;height:auto}.cs-stat-row{display:flex;gap:28px;flex-wrap:wrap;margin:20px 0;padding:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.cs-stat-item .csn{font-family:var(--font-head);font-size:calc(40px * var(--text-scale));font-weight:800;color:var(--orange);line-height:1}.cs-stat-item .csl{font-size:calc(12px * var(--text-scale));color:var(--muted);font-weight:500}.cs-body{font-size:calc(15px * var(--text-scale));color:var(--muted);line-height:1.8}.cs-body h2{font-family:var(--font-head);font-size:calc(26px * var(--text-scale));color:var(--white);text-transform:uppercase;margin:32px 0 10px}.cs-body p{margin-bottom:14px}.cs-callout{background:var(--card);border-left:3px solid var(--orange);padding:14px 18px;margin:20px 0;font-size:calc(14px * var(--text-scale));color:var(--text)}.cs-approach-grid{display:grid;grid-template-columns:3fr 2fr;gap:64px;align-items:start}.build-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2px}.deliverables-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;margin-top:0}.dlv-item{display:flex;align-items:flex-start;gap:14px;background:var(--card);padding:20px 22px;border-left:2px solid var(--border)}.dlv-icon{font-size:calc(20px * var(--text-scale));flex-shrink:0;margin-top:2px}.dlv-name{font-size:calc(14px * var(--text-scale));color:rgba(240,240,240,0.7);line-height:1.55}.about-strip{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.about-strip-text{padding:72px 64px;background:transparent;display:flex;flex-direction:column;justify-content:center}.strip-block .about-strip-text{background:transparent}.about-strip-visual{background:var(--navy);display:flex;align-items:center;justify-content:center;padding:60px 40px;min-height:440px;position:relative;overflow:hidden}.asv-content{position:relative;z-index:1;text-align:center}.asv-num{font-family:var(--font-head);font-size:calc(88px * var(--text-scale));font-weight:800;color:var(--white);line-height:1}.asv-num.orange{color:var(--orange)}.asv-label{font-size:calc(13px * var(--text-scale));color:rgba(255,255,255,0.75);margin-top:6px;font-weight:500}.about-tag{display:inline-flex;align-items:center;gap:7px;font-size:calc(11px * var(--text-scale));font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);margin-bottom:18px}.about-tag::before{content:'';width:14px;height:2px;background:var(--orange)}.about-strip-text h2{font-size:clamp(calc(30px * var(--text-scale)), calc(3.5vw * var(--text-scale)), calc(48px * var(--text-scale)));color:var(--white);margin-bottom:16px}.about-strip-text p{font-size:calc(15px * var(--text-scale));color:rgba(240,240,240,0.55);line-height:1.75;margin-bottom:14px}.about-strip-text p:last-of-type{margin-bottom:28px}.cta-banner.navy-cta{background:var(--navy);background-image:url('/assets/circuit.v10.3.svg');background-repeat:repeat;background-size:600px 600px}.strip-block{display:flex;flex-direction:column;background:var(--navy);background-image:url('/assets/circuit.v10.3.svg');background-repeat:repeat;background-size:600px 600px}.strip-block .about-strip{flex:1}.strip-block .about-strip-visual{background:transparent;border-left:1px solid rgba(255,255,255,0.06)}.strip-block .cta-banner{background:rgba(255,255,255,0.04);border-top:1px solid rgba(255,255,255,0.07);margin:0;border-radius:0}.stat-row{display:flex;max-width:1280px;margin:0 auto}.stat-row-band{background:var(--bg2);background-image:none;border-bottom:1px solid var(--border)}.stat-block{padding:32px 40px;border-right:1px solid var(--border);flex:1}.stat-block:last-child{border-right:0}.stat-num{font-family:var(--font-head);font-size:calc(52px * var(--text-scale));font-weight:800;color:var(--orange);line-height:1}.stat-label{font-size:calc(12px * var(--text-scale));color:var(--muted);margin-top:4px}.pull-quote{border-left:3px solid var(--orange);padding:20px 28px;background:var(--card);margin:32px 0}.pull-quote p{font-family:var(--font-head);font-size:clamp(calc(20px * var(--text-scale)), calc(2.5vw * var(--text-scale)), calc(28px * var(--text-scale)));font-weight:700;text-transform:uppercase;color:var(--white);line-height:1.2}.pull-quote cite{font-size:calc(11px * var(--text-scale));color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-style:normal;margin-top:8px;display:block}.cta-banner{background:var(--orange-btn);padding:64px;text-align:center;position:relative;overflow:hidden}.cta-banner h2{font-size:clamp(calc(30px * var(--text-scale)), calc(4.5vw * var(--text-scale)), calc(56px * var(--text-scale)));color:var(--white);margin-bottom:10px;position:relative}.cta-banner p{font-size:calc(16px * var(--text-scale));color:rgba(255,255,255,0.75);margin-bottom:28px;position:relative}.cta-actions{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;position:relative}.photo-frame{position:relative;overflow:hidden;border-left:3px solid var(--orange)}.photo-frame img{width:100%;height:100%;object-fit:cover;display:block}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;margin-top:48px}.cm-item{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--border);padding:14px 18px;text-decoration:none;transition:border-color .2s;margin-bottom:8px}.cm-item:hover{border-color:var(--orange)}.cm-item.no-link{cursor:default}.cm-icon{font-size:calc(18px * var(--text-scale));flex-shrink:0}.cm-label{font-size:calc(10px * var(--text-scale));color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-weight:600}.cm-value{font-size:calc(14px * var(--text-scale));color:var(--text);font-weight:500;overflow-wrap:anywhere;word-break:break-word}.cm-item:hover .cm-value{color:var(--orange)}.form-box{background:var(--card);border:1px solid var(--border);padding:36px;position:relative;overflow:hidden}.form-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--orange)}.form-title{font-family:var(--font-head);font-size:calc(22px * var(--text-scale));color:var(--white);text-transform:uppercase;margin-bottom:4px}.form-sub{font-size:calc(13px * var(--text-scale));color:var(--muted);margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-group{margin-bottom:12px}.form-group label{display:block;font-size:calc(10px * var(--text-scale));font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{width:100%;background:var(--bg);border:1px solid var(--border);padding:11px 13px;font-size:calc(16px * var(--text-scale));color:var(--text);font-family:var(--font-body);outline:0;transition:border-color .2s;border-radius:0}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--orange)}.form-group select option{background:var(--bg2);color:var(--text)}.form-group textarea{resize:vertical;min-height:96px}.form-submit{width:100%;background:var(--orange-btn);color:var(--white);font-family:var(--font-head);font-size:calc(16px * var(--text-scale));font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:14px 14px 12px;border:0;border-bottom:3px solid #9d2d00;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,0.35),inset 0 1px 0 rgba(255,255,255,0.18);transition:background .15s,transform .12s,box-shadow .15s;margin-top:4px;text-shadow:0 1px 0 rgba(0,0,0,0.18)}.form-submit:hover{background:var(--orange-btn-hover);transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,0.5)}.form-submit:active{transform:translateY(1px);box-shadow:0 2px 6px rgba(0,0,0,0.35)}.form-success{display:none;text-align:center;padding:40px 0}.form-success.show{display:block}.form-success .fs-icon{font-size:calc(40px * var(--text-scale));margin-bottom:12px}.form-success h4{font-family:var(--font-head);font-size:calc(24px * var(--text-scale));color:var(--white);text-transform:uppercase;margin-bottom:6px}.form-success p{font-size:calc(14px * var(--text-scale));color:var(--muted)}.form-hidden{display:none}.form-privacy{font-size:calc(12px * var(--text-scale));color:var(--muted);margin-top:10px;line-height:1.6}.form-privacy a{color:var(--muted);text-decoration:underline}.form-error{display:none;font-size:calc(13px * var(--text-scale));color:#e07040;margin-top:10px;line-height:1.6}.form-error.show{display:block}.form-error a{color:#e07040;text-decoration:underline}.form-honeypot{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.services-faq{display:flex;flex-direction:column;gap:1px;max-width:720px;margin-top:28px}.faq-item{background:var(--card)}button.faq-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;cursor:pointer;width:100%;background:0;border:0;text-align:left;color:inherit;font:inherit}.faq-q{font-family:var(--font-head);font-size:calc(17px * var(--text-scale));color:var(--white);text-transform:uppercase}.faq-chevron{color:var(--muted);font-size:calc(16px * var(--text-scale));transition:transform .3s;flex-shrink:0}.faq-item.open .faq-chevron{transform:rotate(180deg);color:var(--orange)}.faq-body{padding:0 22px 18px;font-size:calc(14px * var(--text-scale));color:var(--muted);line-height:1.7}.faq-body[hidden]{display:none}.faq-item.open .faq-body{display:block}.trades-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.trade-pill{background:rgba(255,255,255,0.07);border:1px solid var(--border2);padding:5px 14px;font-size:calc(13px * var(--text-scale));font-weight:500;color:var(--text);letter-spacing:.02em}.site-preview-wrap{position:relative;overflow:hidden;border:1px solid var(--border);cursor:pointer;display:block;max-width:900px}.site-preview-wrap img{width:100%;display:block;transition:transform .4s cubic-bezier(0.25,0.46,0.45,0.94)}.site-preview-wrap:hover img{transform:scale(1.04)}.site-preview-overlay{position:absolute;inset:0;background:rgba(17,17,17,0.5);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s;pointer-events:none}.site-preview-wrap:hover .site-preview-overlay{opacity:1}.site-preview-overlay span{background:var(--orange-btn);color:var(--white);font-family:var(--font-head);font-size:calc(16px * var(--text-scale));font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:12px 28px}.smoko-note{display:inline-flex;align-items:center;gap:6px;font-size:calc(12px * var(--text-scale));color:var(--muted);font-style:italic;border-left:2px solid rgba(232,68,10,0.3);padding-left:10px;margin-top:8px}.ph-split{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center}.ph-price-rail{display:flex;flex-direction:column;gap:2px;min-width:200px;flex-shrink:0}.ph-price-btn{display:block;padding:12px 18px;text-align:center;background:var(--card);border:1px solid var(--border);font-family:var(--font-head);font-size:calc(16px * var(--text-scale));font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);text-decoration:none;transition:color .2s,border-color .2s,background .2s}.ph-price-btn:hover{color:var(--white);border-color:var(--border2);background:#222}.ph-price-btn.ph-featured{color:var(--white);border-color:var(--orange);border-top-width:3px}.ph-price-btn.ph-featured:hover{background:rgba(232,68,10,0.1)}.ph-price-rail-link{display:block;text-align:center;font-size:calc(12px * var(--text-scale));color:var(--muted);margin-top:8px;text-decoration:none;transition:color .2s}.ph-price-rail-link:hover{color:var(--orange)}footer{background:#0a0a0a;border-top:1px solid var(--border);color:var(--muted);padding:56px 32px 36px}.footer-inner{max-width:1280px;margin:0 auto}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:40px}.footer-logo{display:inline-block;margin-bottom:12px;text-decoration:none}.footer-logo img{display:block;width:130px;height:auto;opacity:.92}.footer-brand-desc{font-size:calc(13px * var(--text-scale));line-height:1.7;margin-bottom:16px}.footer-col-head{font-family:var(--font-head);font-size:calc(12px * var(--text-scale));font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--white);margin-bottom:14px}.footer-links{display:flex;flex-direction:column;gap:7px}.footer-links a{font-size:calc(13px * var(--text-scale));color:var(--muted);transition:color .2s}.footer-links a:hover{color:var(--white)}.footer-bottom{border-top:1px solid var(--border);padding-top:24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.footer-copy{font-size:calc(12px * var(--text-scale))}.footer-badge{font-size:calc(11px * var(--text-scale));background:var(--card);padding:4px 10px;color:var(--muted)}.footer-meta{font-size:calc(12px * var(--text-scale));color:var(--muted)}.footer-locations{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:2}.footer-locations a{color:var(--orange);text-decoration:none}.footer-contact-block{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.8}.footer-contact-block a{color:var(--orange);text-decoration:none}.footer-bottom-right{display:flex;align-items:center;gap:16px}.text-orange{color:var(--orange)}.text-muted{color:var(--muted)}.text-white{color:var(--white)}.hero-pcw-navy{background:#0d1b29;border-top:3px solid var(--orange)}.hero-pcw-card{background:var(--card)}.marquee-section{background:var(--bg3);border-top:1px solid rgba(255,255,255,0.06);border-bottom:1px solid rgba(255,255,255,0.06);padding:6px 0;overflow:hidden}.marquee-section-label{padding:14px 32px 16px;font-size:calc(11px * var(--text-scale));font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--orange);display:flex;align-items:center;gap:10px;margin-bottom:6px}.marquee-section-label::before{content:'';width:18px;height:2px;background:var(--orange);flex-shrink:0}.marquee-icon{width:14px;height:14px;flex-shrink:0;fill:none;stroke:currentColor;opacity:.85}.marquee-overflow{overflow:hidden}.marquee-track{display:flex;width:max-content;animation:marquee-scroll 40s linear infinite}.marquee-track:hover{animation-play-state:paused}.marquee-track-reverse{animation:marquee-scroll-reverse 47s linear infinite}.marquee-track-reverse:hover{animation-play-state:paused}.marquee-section-suburbs{background:var(--bg2);border-top:0}.marquee-section-suburbs .marquee-pill{text-decoration:none}.marquee-section-suburbs .marquee-pill:hover{color:var(--orange)}.marquee-pill-area{font-weight:600;color:rgba(255,255,255,0.78)}.marquee-set{display:flex;align-items:stretch}.marquee-pill{display:flex;align-items:center;gap:8px;padding:12px 24px;border-right:1px solid rgba(255,255,255,0.08);font-size:calc(13px * var(--text-scale));font-weight:500;color:rgba(240,240,240,0.65);white-space:nowrap;letter-spacing:.02em;transition:color .2s}.marquee-pill:hover{color:var(--white)}@keyframes marquee-scroll{from{transform:translateX(0)}to{transform:translateX(-33.3333%)}}@keyframes marquee-scroll-reverse{from{transform:translateX(-33.3333%)}to{transform:translateX(0)}}.stats-strip{background:var(--orange-btn)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:100%}.stat-cell{padding:48px 40px;border-right:1px solid rgba(0,0,0,0.12)}.stat-cell:last-child{border-right:0}.stats-strip .stat-num{font-family:var(--font-head);font-size:calc(72px * var(--text-scale));font-weight:800;line-height:1;color:var(--white);margin-bottom:8px}.stats-strip .stat-label{font-size:calc(13px * var(--text-scale));color:rgba(255,255,255,0.65);line-height:1.55;max-width:180px}.process-cta-row{display:flex;align-items:center;justify-content:center;gap:32px;flex-wrap:wrap;padding:36px 32px;border-top:1px solid rgba(255,255,255,0.06);background:var(--bg2);text-align:center}.process-cta-row p{font-size:calc(15px * var(--text-scale));color:var(--muted);margin:0}.stats-strip-dark{background:var(--bg2);background-image:url('/assets/circuit.v10.3.svg');background-size:600px 600px;border-top:1px solid rgba(255,255,255,0.06);border-bottom:1px solid rgba(255,255,255,0.06);padding:56px 32px}.stats-strip-dark .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1280px;margin:0 auto;align-items:center}.stats-strip-dark .stat-cell{position:relative;padding:12px 32px;border-right:0;border-bottom:0}.stats-strip-dark .stat-cell+.stat-cell::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;background:var(--orange)}.stats-strip-dark .stat-num{font-family:var(--font-head);font-size:clamp(calc(64px * var(--text-scale)), calc(8vw * var(--text-scale)), calc(112px * var(--text-scale)));font-weight:800;line-height:.95;color:var(--white);margin-bottom:8px;letter-spacing:-.02em}.stats-strip-dark .stat-label{font-size:calc(13px * var(--text-scale));line-height:1.55;color:var(--muted);max-width:200px}.stats-strip-nate{background:var(--nate-navy);background-image:url('/assets/circuit.v10.3.svg');background-size:600px 600px;border-top:2px solid var(--nate-gold)}.stats-strip-nate .stat-cell+.stat-cell::before{background:var(--nate-gold)}.stat-label a{color:inherit;text-decoration:underline;text-decoration-color:rgba(232,68,10,0.4);text-underline-offset:3px;transition:color .15s,text-decoration-color .15s}.stat-label a:hover{color:var(--orange);text-decoration-color:var(--orange)}.process-flow{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px;padding:32px 0 0}.process-flow::before{content:'';position:absolute;top:64px;left:6%;right:6%;height:2px;background:linear-gradient(to right,transparent 0,var(--orange) 8%,var(--orange) 92%,transparent 100%);z-index:0}.pf-step{position:relative;z-index:1;padding:0 20px 36px;text-align:left}.pf-num-wrap{position:relative;display:flex;align-items:center;margin-bottom:24px;height:96px}.pf-num{font-family:var(--font-head);font-size:calc(96px * var(--text-scale));font-weight:800;line-height:1;color:var(--orange);background:var(--bg);padding:0 14px 0 0;letter-spacing:-.02em}.pf-step:first-child .pf-num{padding-left:0}.pf-arrow{position:absolute;top:56px;font-size:calc(14px * var(--text-scale));line-height:1;color:var(--orange);background:var(--bg);padding:4px 6px;z-index:2}.process-flow .pf-step:not(:last-child) .pf-arrow{right:-7px}.pf-step:last-child .pf-arrow{display:none}.pf-icon{font-size:calc(22px * var(--text-scale));margin-bottom:10px;display:block;opacity:.75}.pf-title{font-family:var(--font-head);font-size:calc(20px * var(--text-scale));font-weight:800;text-transform:uppercase;color:var(--white);margin-bottom:10px;letter-spacing:.02em}.pf-text{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.7}@media(min-width:1025px){.pricing-grid{align-items:stretch}.tier-card.featured{transform:translateY(-12px);border-left:3px solid var(--orange);border-top-width:4px;box-shadow:0 24px 48px rgba(0,0,0,0.4);padding-top:40px;padding-bottom:40px;z-index:2}.tier-card.featured .tier-badge{top:0;transform:translateY(-50%);padding:6px 14px;font-size:calc(11px * var(--text-scale));box-shadow:0 4px 12px rgba(207,61,0,0.4)}}.about-strip-photo{display:flex;align-items:stretch;justify-content:stretch;background:#000;overflow:hidden;min-height:440px;position:relative}.about-strip-photo img{width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block}.about-strip-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,rgba(10,22,40,0.4) 0,transparent 30%,transparent 100%);pointer-events:none}.about-bleed{position:relative;background-color:#1a1a1a;background-image:linear-gradient(105deg,rgba(10,15,22,0.92) 0,rgba(10,15,22,0.82) 35%,rgba(10,15,22,0.55) 65%,rgba(10,15,22,0.35) 100%),url('/assets/concrete-bg.v11_2.webp');background-size:cover,cover;background-position:center,center;background-repeat:no-repeat,no-repeat;padding:96px 64px;border-top:3px solid var(--orange)}.about-bleed-inner{max-width:760px;margin:0 auto;position:relative;z-index:1}.about-bleed h2{font-size:clamp(calc(34px * var(--text-scale)), calc(4.5vw * var(--text-scale)), calc(56px * var(--text-scale)));color:var(--white);margin-bottom:20px;text-shadow:0 2px 8px rgba(0,0,0,0.45)}.about-bleed p{font-size:calc(16px * var(--text-scale));color:rgba(240,240,240,0.85);line-height:1.75;margin-bottom:16px;text-shadow:0 1px 4px rgba(0,0,0,0.4);max-width:640px}.about-bleed p:last-of-type{margin-bottom:32px}.about-bleed .about-tag{margin-bottom:22px}.cta-banner-pro{position:relative;background:var(--bg);background-image:url('/assets/circuit-strong.v11.svg');background-size:600px 600px;background-repeat:repeat;border-top:3px solid var(--orange);padding:80px 64px 88px;overflow:hidden}.cta-banner-pro::before{content:'';position:absolute;right:48px;top:48px;width:80px;height:80px;border-top:4px solid var(--orange);border-right:4px solid var(--orange);pointer-events:none;z-index:0;opacity:.7}.cta-banner-pro::after{content:'';position:absolute;right:48px;bottom:48px;width:80px;height:80px;border-bottom:4px solid var(--orange);border-right:4px solid var(--orange);pointer-events:none;z-index:0;opacity:.7}.cta-banner-pro>*{position:relative;z-index:1}.cta-banner-pro .cta-eyebrow{font-size:calc(12px * var(--text-scale));font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--orange);display:flex;align-items:center;gap:12px;margin-bottom:20px}.cta-banner-pro .cta-eyebrow::before{content:'';width:26px;height:3px;background:var(--orange)}.cta-banner-pro h2{font-size:clamp(calc(40px * var(--text-scale)), calc(6vw * var(--text-scale)), calc(72px * var(--text-scale)));color:var(--white);line-height:.95;margin-bottom:16px;max-width:680px}.cta-banner-pro h2 em{font-style:normal;color:var(--orange)}.cta-banner-pro p{font-size:calc(17px * var(--text-scale));color:var(--muted);margin-bottom:32px;max-width:540px;line-height:1.65}.cta-banner-pro .cta-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-start}.cut-bottom-navy,.cut-bottom-orange,.cut-bottom-bg2,.cut-bottom-bg{position:relative;padding-bottom:80px}.cut-bottom-navy::after,.cut-bottom-orange::after,.cut-bottom-bg2::after,.cut-bottom-bg::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:60px;pointer-events:none;clip-path:polygon(0 100%,100% 0,100% 100%)}.cut-bottom-navy::after{background:var(--bg3)}.cut-bottom-orange::after{background:var(--orange-btn)}.cut-bottom-bg2::after{background:var(--bg2)}.cut-bottom-bg::after{background:var(--bg)}.cut-bottom-navy.cut-flip::after,.cut-bottom-bg2.cut-flip::after,.cut-bottom-bg.cut-flip::after{clip-path:polygon(0 0,100% 100%,0 100%)}.ty-tick{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:var(--orange-btn);color:var(--white);font-size:2.2rem;font-weight:700;margin-bottom:28px}.ty-section-narrow{padding:80px 0 64px}.ty-section-mid{padding:64px 0}.ty-section-tight{padding:48px 0}.ty-heading{font-family:var(--font-head);font-size:clamp(calc(2.4rem * var(--text-scale)), calc(5vw * var(--text-scale)), calc(4rem * var(--text-scale)));font-weight:800;color:var(--white);margin-bottom:16px;line-height:1.05}.ty-sub{font-size:1.1rem;color:var(--muted);line-height:1.65;max-width:560px;margin:0 auto}.ty-h2{font-family:var(--font-head);font-size:clamp(calc(1.6rem * var(--text-scale)), calc(3vw * var(--text-scale)), calc(2.2rem * var(--text-scale)));margin-bottom:40px;text-align:center;color:var(--white)}.ty-steps{display:flex;flex-direction:column;gap:32px}.ty-step{display:flex;gap:24px;align-items:flex-start}.ty-step-num{flex-shrink:0;width:40px;height:40px;border-radius:50%;border:2px solid var(--orange);color:var(--orange);font-family:var(--font-head);font-weight:800;font-size:1.1rem;display:flex;align-items:center;justify-content:center;margin-top:2px}.ty-step-body strong{display:block;font-family:var(--font-head);font-size:1.25rem;font-weight:700;color:var(--white);margin-bottom:6px}.ty-step-body p{color:var(--muted);font-size:calc(.97rem * var(--text-scale));line-height:1.65;margin:0}.ty-contact{text-align:center}.ty-contact-q{color:var(--muted);margin-bottom:8px}.ty-contact-link{color:var(--orange);font-weight:600;text-decoration:none;font-size:1.05rem}.ty-contact-sep{color:var(--muted);margin:0 12px}@media(max-width:1024px){.pricing-grid{grid-template-columns:1fr;max-width:480px}.process-grid{grid-template-columns:repeat(2,1fr)}.about-strip{grid-template-columns:1fr}.about-strip-visual{min-height:240px}.footer-top{grid-template-columns:1fr 1fr;gap:32px}.case-grid{grid-template-columns:1fr}.cs-hero-grid{grid-template-columns:1fr}.service-pillars{grid-template-columns:1fr}.service-cat-grid{grid-template-columns:1fr}.hosting-tier-grid{grid-template-columns:1fr}.cs-approach-grid{grid-template-columns:1fr;gap:40px}}@media(max-width:900px){.nav-links,.nav-buy{display:none}.hamburger{display:flex}nav{height:56px}body{padding-top:56px}.mobile-menu{top:56px;max-height:calc(100dvh - 56px)}.build-cols{grid-template-columns:1fr}.deliverables-grid{grid-template-columns:1fr}.parallax-hero{min-height:auto;padding-top:0}.hero-content-pad{padding:48px 24px 32px}.hero-h1{font-size:clamp(calc(40px * var(--text-scale)), calc(9vw * var(--text-scale)), calc(72px * var(--text-scale)));line-height:.9}}@media(max-width:820px){.section{padding-left:24px;padding-right:24px}.bar-band{padding-left:24px;padding-right:24px}}@media(max-width:768px){nav{backdrop-filter:none;-webkit-backdrop-filter:none;background:#111}.section{padding:56px 20px}.bar-band{padding:28px 20px}.page-hero{padding:44px 20px 36px}.about-strip-text{padding:44px 24px}.footer-top{grid-template-columns:1fr}.cta-banner{padding:40px 24px}.cta-actions{flex-direction:column;align-items:stretch}.cta-actions a,.cta-actions button{text-align:center;justify-content:center}.contact-layout{grid-template-columns:1fr;gap:36px}.form-row{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr}.trust-bar{padding:12px 20px}.trust-bar-inner{gap:16px}.stat-row{flex-direction:column}.stat-block{border-right:0;border-bottom:1px solid var(--border)}.stats-grid{grid-template-columns:1fr 1fr}.stat-cell{padding:32px 24px;border-bottom:1px solid rgba(0,0,0,0.12)}.stats-strip .stat-num{font-size:calc(52px * var(--text-scale))}.process-cta-row{padding:28px 20px}.stats-strip-dark{padding:36px 16px}.stats-strip-dark .stats-grid{grid-template-columns:1fr 1fr;gap:32px 0}.stats-strip-dark .stat-cell{padding:8px 18px}.stats-strip-dark .stat-cell+.stat-cell::before{display:none}.stats-strip-dark .stat-cell:nth-child(odd){border-right:2px solid var(--orange)}.stats-strip-dark .stat-num{font-size:calc(64px * var(--text-scale))}.process-flow{grid-template-columns:1fr;gap:8px;padding-top:0}.process-flow::before{display:none}.pf-step{padding:16px 0 24px 24px;border-left:2px solid var(--orange)}.pf-num-wrap{height:auto;margin-bottom:12px}.pf-num{background:transparent;padding:0;font-size:calc(56px * var(--text-scale))}.pf-arrow{display:none !important}.tier-card.featured{border-left:3px solid var(--orange)}.about-strip-photo{min-height:320px}.about-bleed{padding:64px 24px 72px}.about-bleed h2{font-size:clamp(calc(30px * var(--text-scale)), calc(8vw * var(--text-scale)), calc(42px * var(--text-scale)))}.about-bleed p{font-size:calc(15px * var(--text-scale))}.cta-banner-pro{padding:56px 24px 64px;border-top-width:2px}.cta-banner-pro::before{width:320px;height:320px;right:-100px;opacity:.04}.cut-bottom-navy,.cut-bottom-orange,.cut-bottom-bg2,.cut-bottom-bg{padding-bottom:56px}.cut-bottom-navy::after,.cut-bottom-orange::after,.cut-bottom-bg2::after,.cut-bottom-bg::after{height:36px}.hero-content-pad{padding:36px 20px 28px}.hero-h1{font-size:clamp(calc(40px * var(--text-scale)), calc(11vw * var(--text-scale)), calc(58px * var(--text-scale)))}.parallax-hero{min-height:auto;display:block}.parallax-bg{position:relative;inset:auto;min-height:auto;height:clamp(280px,56vw,460px);width:100%;background-image:url('/assets/hero-mobile.v10.10.webp');background-size:cover;background-position:center 30%;-webkit-mask-image:linear-gradient(to bottom,#000 0,#000 70%,rgba(0,0,0,0.5) 88%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0,#000 70%,rgba(0,0,0,0.5) 88%,transparent 100%)}.parallax-overlay{display:none}.parallax-circuits{position:absolute;inset:0;z-index:1}.parallax-content{position:relative;width:100%;z-index:2;margin-top:-40px;padding-top:8px}.split-grid{grid-template-columns:1fr;gap:36px}.split-grid.bias-2-1{grid-template-columns:1fr}.split-grid.tight{gap:2px}.three-grid{grid-template-columns:1fr}.two-grid{grid-template-columns:1fr}.fast-facts-grid{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr;max-width:100%}.ph-split{grid-template-columns:1fr}.ph-price-rail{display:none}.scroll-top{display:none}#site-preview-inner{min-height:260px}.case-arrow{opacity:1;transform:none}.scc-arrow{opacity:1;transform:none}}@media(max-width:360px){.nav-inner{padding:0 16px;gap:8px}.nav-logo img{height:28px}.nav-logo-text{font-size:calc(15px * var(--text-scale))}.section{padding:48px 16px}.bar-band{padding:24px 16px}}@media(min-width:901px){.parallax-bg{background-image:url('/assets/hero-desktop.v11_2.webp');background-color:#111;background-size:auto 100%;background-position:right center;background-repeat:no-repeat;-webkit-mask-image:linear-gradient(to right,transparent 0,transparent calc(100% - 78vh),#000 calc(100% - 55vh),#000 100%);mask-image:linear-gradient(to right,transparent 0,transparent calc(100% - 78vh),#000 calc(100% - 55vh),#000 100%)}.parallax-hero{min-height:88vh;padding-bottom:60px;background-color:#111}}.parallax-circuits{position:absolute;inset:0;background-image:url('/assets/circuit-animated.v11_1.svg');background-size:600px 600px;background-repeat:repeat;z-index:1;pointer-events:none;opacity:1;mix-blend-mode:screen}.hero-h1 .hw{display:inline-block;opacity:0;transform:translateY(28px);filter:blur(6px);transition:opacity .55s cubic-bezier(0.2,0.7,0.2,1),transform .55s cubic-bezier(0.2,0.7,0.2,1),filter .55s cubic-bezier(0.2,0.7,0.2,1)}.hero-h1.ready .hw{opacity:1;transform:translateY(0);filter:blur(0)}.hero-h1.ready .hw-1{transition-delay:.05s}.hero-h1.ready .hw-2{transition-delay:.30s}.hero-h1.ready .hw-3{transition-delay:.60s}.hero-h1.ready .text-orange{animation:hero-spark 1.4s ease-out .85s 1 both}@keyframes hero-spark{0%{text-shadow:0 0 0 rgba(232,68,10,0)}18%{text-shadow:0 0 32px rgba(255,120,40,0.55),0 0 8px rgba(255,180,80,0.35)}45%{text-shadow:0 0 18px rgba(232,68,10,0.30)}100%{text-shadow:0 0 0 rgba(232,68,10,0)}}
.stats-strip-dark[data-stats-anim] .stat-cell{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(0.2,0.7,0.2,1),transform .7s cubic-bezier(0.2,0.7,0.2,1)}.stats-strip-dark.stats-in .stat-cell{opacity:1;transform:translateY(0)}.stats-strip-dark.stats-in .stat-cell:nth-child(1){transition-delay:.05s}.stats-strip-dark.stats-in .stat-cell:nth-child(2){transition-delay:.20s}.stats-strip-dark.stats-in .stat-cell:nth-child(3){transition-delay:.35s}.stats-strip-dark.stats-in .stat-cell:nth-child(4){transition-delay:.50s}.process-flow[data-flow-anim]::before{clip-path:inset(0 100% 0 0);transition:clip-path 1.6s cubic-bezier(0.4,0.0,0.2,1)}.process-flow[data-flow-anim].flow-in::before{clip-path:inset(0 0 0 0)}.process-flow[data-flow-anim] .pf-step{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(0.2,0.7,0.2,1),transform .6s cubic-bezier(0.2,0.7,0.2,1)}.process-flow[data-flow-anim].flow-in .pf-step{opacity:1;transform:translateY(0)}.process-flow[data-flow-anim].flow-in .pf-step:nth-child(1){transition-delay:.20s}.process-flow[data-flow-anim].flow-in .pf-step:nth-child(2){transition-delay:.55s}.process-flow[data-flow-anim].flow-in .pf-step:nth-child(3){transition-delay:.90s}.process-flow[data-flow-anim].flow-in .pf-step:nth-child(4){transition-delay:1.25s}.process-flow[data-flow-anim] .pf-arrow{opacity:0;transition:opacity .4s ease}.process-flow[data-flow-anim].flow-in .pf-arrow{opacity:1}.process-flow[data-flow-anim].flow-in .pf-step:nth-child(1) .pf-arrow{transition-delay:.50s}.process-flow[data-flow-anim].flow-in .pf-step:nth-child(2) .pf-arrow{transition-delay:.85s}.process-flow[data-flow-anim].flow-in .pf-step:nth-child(3) .pf-arrow{transition-delay:1.20s}@media(max-width:900px){.process-flow[data-flow-anim]::before{display:none}.process-flow[data-flow-anim] .pf-step{transition-property:opacity,transform}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.case-card:hover .case-img{transform:none}.site-preview-wrap:hover img{transform:none}.scc-arrow,.case-arrow{transition:opacity .15s;transform:none !important}.nav-dropdown.open .nav-dd-btn{transition:none}.hamburger span{transition:none}.parallax-bg{transform:none !important}.marquee-track,.marquee-track-reverse{animation:none}.parallax-circuits{background-image:url('/assets/circuit.v10.3.svg');opacity:.6}.hero-h1 .hw{opacity:1;transform:none;filter:none;transition:none}.hero-h1.ready .text-orange{animation:none;text-shadow:none}.stats-strip-dark[data-stats-anim] .stat-cell{opacity:1;transform:none;transition:none}.process-flow[data-flow-anim]::before{clip-path:none !important;transition:none}.process-flow[data-flow-anim] .pf-step,.process-flow[data-flow-anim] .pf-arrow{opacity:1;transform:none;transition:none}}.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:calc(11px * var(--text-scale));font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-bottom:28px}.hero-eyebrow-bar{width:18px;height:2px;background:var(--orange);display:inline-block}.hero-sub{font-size:calc(18px * var(--text-scale));color:rgba(240,240,240,0.7);line-height:1.7;max-width:500px;margin-bottom:32px}.hero-cta-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:56px}.hero-price-cards{max-width:480px;display:flex;flex-direction:column;gap:2px}.hpc-price{font-family:'Big Shoulders Display',sans-serif;font-size:calc(28px * var(--text-scale));font-weight:800;width:68px}.hpc-price.is-orange{color:var(--orange)}.hpc-price.is-white{color:var(--white)}.hpc-meta{flex:1}.hpc-title{font-size:calc(13px * var(--text-scale));font-weight:600;color:var(--white)}.hpc-sub{font-size:calc(11px * var(--text-scale));color:var(--muted)}.hpc-sub.on-navy{color:rgba(255,255,255,0.55)}.hpc-body-text{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.65;margin-bottom:10px}.hpc-cta-sm{font-size:calc(13px * var(--text-scale));padding:8px 16px}.problem-lead{font-size:calc(16px * var(--text-scale));line-height:1.75;margin-bottom:16px}.problem-lead.is-text{color:var(--text)}.problem-lead.is-muted{color:var(--muted)}.problem-lead.last{margin-bottom:28px}.pullquote-block{margin-top:14px;padding-left:2px}.pullquote-text{font-family:'Big Shoulders Display',sans-serif;font-size:calc(20px * var(--text-scale));font-weight:700;text-transform:uppercase;color:var(--white);line-height:1.25;margin-bottom:6px}.pullquote-byline{font-size:calc(11px * var(--text-scale));color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.scc-fineprint{font-size:calc(12px * var(--text-scale));color:var(--muted);margin-top:6px}.how-it-works-sub{font-size:calc(16px * var(--text-scale));color:var(--muted);max-width:560px;margin-bottom:0}.grid-pad-top{margin-top:40px}.case-body{position:relative}.case-cta-inline{margin-top:8px;display:inline-flex}.footer-meta+.footer-meta{margin-top:4px}.stats-intro{max-width:1280px;margin:0 auto 44px;padding:0 32px}.stats-intro .section-sub{max-width:640px;margin-top:6px}@media(max-width:900px){.stats-intro{padding:0 18px;margin-bottom:28px}}.body-lead{font-size:calc(17px * var(--text-scale));color:var(--text);line-height:1.75;margin-bottom:16px}.body-text{font-size:calc(15px * var(--text-scale));color:var(--muted);line-height:1.75;margin-bottom:16px}.body-text.last{margin-bottom:28px}.benefit-card{background:var(--card);padding:24px}.benefit-card.accent{border-top:3px solid var(--orange)}.benefit-card-title{font-family:'Big Shoulders Display',sans-serif;font-size:calc(15px * var(--text-scale));font-weight:700;text-transform:uppercase;color:var(--white);margin-bottom:6px}.benefit-card-text{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.65;margin:0}.callout-side{background:var(--card);padding:20px;border-left:3px solid var(--orange);margin:20px 0}.callout-side-title{font-family:'Big Shoulders Display',sans-serif;font-size:calc(15px * var(--text-scale));font-weight:700;text-transform:uppercase;color:var(--white);margin-bottom:5px}.callout-side-text{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.65;margin:0}.svc-mini{padding:14px 18px;background:var(--card);border-left:3px solid var(--border)}.svc-mini-title{font-size:calc(12px * var(--text-scale));font-weight:600;color:var(--white)}.svc-mini-meta{font-size:calc(11px * var(--text-scale));color:var(--muted)}.contact-buy-note{margin-top:16px;padding:14px 18px;background:var(--bg3);background-image:none;font-size:calc(12px * var(--text-scale));color:var(--muted)}.contact-buy-note a{color:var(--orange);text-decoration:none}.section-h3{font-family:'Big Shoulders Display',sans-serif;font-size:calc(20px * var(--text-scale));text-transform:uppercase;color:var(--white);margin-bottom:16px}.link-orange{color:var(--orange);text-decoration:none}.privacy-link.indent{margin-left:16px}.compare-wrap{overflow-x:auto}.compare-table{width:100%;border-collapse:collapse;font-size:calc(14px * var(--text-scale))}.compare-table th{text-align:center;padding:14px 20px;font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:calc(16px * var(--text-scale));text-transform:uppercase;letter-spacing:.06em}.compare-table th.ct-th-default{text-align:left;background:var(--bg3);color:var(--muted);font-weight:600;font-family:'Inter',sans-serif;border-bottom:2px solid var(--border);width:30%;text-transform:none;letter-spacing:0;font-size:calc(14px * var(--text-scale))}.compare-table th.ct-th-us{background:rgba(232,68,10,0.12);color:var(--white);border-bottom:2px solid var(--orange);width:35%}.compare-table th.ct-th-them{background:var(--bg3);color:var(--muted);font-weight:700;border-bottom:2px solid var(--border);width:35%}.compare-table td{padding:14px 20px;border-bottom:1px solid var(--border)}.compare-table tr:last-child td{border-bottom:0}.compare-table .ct-row-label{color:var(--muted);font-weight:600}.compare-table .ct-cell-us{text-align:center;background:rgba(232,68,10,0.05);border-bottom-color:rgba(232,68,10,0.15);color:var(--white);font-weight:600}.compare-table .ct-cell-them{text-align:center;color:var(--muted)}.faq-constrained{max-width:720px;margin-top:28px}.section-sub.wide{max-width:620px;margin-bottom:40px}.scroll-anchor{scroll-margin-top:80px}.tier-footnote{margin-top:10px;font-size:calc(12px * var(--text-scale));color:var(--muted);text-align:center}.inline-cta-title{font-size:calc(14px * var(--text-scale));font-weight:600;color:var(--white);margin-bottom:3px}.inline-cta-sub{font-size:calc(13px * var(--text-scale));color:var(--muted)}.tier-row{display:flex;gap:12px;margin-top:12px;flex-wrap:wrap}.tier-row span{font-size:calc(12px * var(--text-scale));color:var(--muted)}.tier-row span.is-recommended{color:var(--orange)}.foot-prompt{margin-top:32px;text-align:center;font-size:calc(14px * var(--text-scale));color:var(--muted)}.foot-prompt-sm{font-size:calc(13px * var(--text-scale));color:var(--muted);margin-top:16px}.foot-prompt a,.foot-prompt-sm a{color:var(--orange)}.buy-row{display:flex;gap:12px;flex-wrap:wrap}.section-sub.tight{max-width:560px;margin-bottom:32px;font-size:calc(16px * var(--text-scale))}.body-lead.lg{margin-bottom:20px}.body-text.lg{margin-bottom:20px}.body-text.lg.last{margin-bottom:32px}.body-text-md{font-size:calc(16px * var(--text-scale));color:var(--muted);line-height:1.75;margin-bottom:20px}.body-text-md.last{margin-bottom:32px}.about-side{display:flex;flex-direction:column;gap:12px}.about-side-photo{width:100%;display:block}.fact-tile{background:var(--card);padding:18px;border-top:3px solid var(--border)}.fact-tile.accent{border-top-color:var(--orange)}.fact-tile-label{font-size:calc(10px * var(--text-scale));font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.fact-tile.accent .fact-tile-label{color:var(--orange)}.fact-tile-value{font-size:calc(14px * var(--text-scale));color:var(--white);font-weight:500}.callout-top{background:var(--bg3);background-image:none;padding:24px;border-top:3px solid var(--border)}.callout-top.accent{border-top-color:var(--orange)}.callout-top-label{font-size:calc(10px * var(--text-scale));font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:12px}.bignum-tile{background:var(--card);padding:24px;border-top:3px solid var(--border)}.bignum-tile.accent{border-top-color:var(--orange)}.bignum-tile-num{font-family:'Big Shoulders Display',sans-serif;font-size:calc(44px * var(--text-scale));font-weight:800;color:var(--white);line-height:1}.bignum-tile.accent .bignum-tile-num{color:var(--orange)}.bignum-tile-label{font-size:calc(12px * var(--text-scale));color:var(--muted);margin-top:4px}.info-card{background:var(--card);padding:28px}.info-card.bg-bg3{background:var(--bg3)}.info-card.accent-orange{border-top:3px solid var(--orange)}.info-card.accent-border{border-top:3px solid var(--border)}.info-card.accent-border2{border-top:3px solid var(--border2)}.info-card.pad-24{padding:24px}.info-card.pad-40{padding:40px}.info-card.pad-tight{padding:28px 24px}.info-card-title{font-family:'Big Shoulders Display',sans-serif;font-size:calc(18px * var(--text-scale));font-weight:700;text-transform:uppercase;color:var(--white);margin-bottom:8px}.info-card-title.sm{font-size:calc(16px * var(--text-scale));margin-bottom:6px}.info-card-title.lg{font-size:calc(22px * var(--text-scale));font-weight:800;margin-bottom:4px}.info-card-title.gap-10{margin-bottom:10px}.info-card-title.flush{margin-bottom:0}.fineprint{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.8}.microcopy{font-size:calc(12px * var(--text-scale));color:var(--muted)}.microcopy.gap-top-4{margin-top:4px}.microcopy.gap-bot-20{margin-bottom:20px}.head-72{font-family:'Big Shoulders Display',sans-serif;font-size:calc(72px * var(--text-scale));font-weight:800;color:var(--white);line-height:1}.head-72-orange{font-family:'Big Shoulders Display',sans-serif;font-size:calc(72px * var(--text-scale));font-weight:800;color:var(--orange);line-height:1}.card-label{font-size:calc(16px * var(--text-scale));color:var(--white);font-weight:600;margin-bottom:10px}.body-muted{font-size:calc(14px * var(--text-scale));color:var(--muted);line-height:1.7}.body-muted-sm{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.65}.caption-muted{font-size:calc(13px * var(--text-scale));color:var(--muted);margin-top:4px}.stat-value{font-size:calc(28px * var(--text-scale));margin-bottom:12px}.gap-bot-52{margin-bottom:52px}.label-white{font-size:calc(13px * var(--text-scale));font-weight:600;color:var(--white)}.cs-stat-num{font-family:'Big Shoulders Display',sans-serif;font-size:calc(38px * var(--text-scale));font-weight:800;color:var(--orange);line-height:1;margin-bottom:12px}.cs-card-title{font-family:'Big Shoulders Display',sans-serif;font-size:calc(22px * var(--text-scale));font-weight:700;text-transform:uppercase;color:var(--white);line-height:1.25;margin-bottom:16px}.cs-card-subtitle{font-family:'Big Shoulders Display',sans-serif;font-size:calc(17px * var(--text-scale));font-weight:700;text-transform:uppercase;color:var(--white);margin-bottom:8px}.eyebrow-orange{font-family:'Big Shoulders Display',sans-serif;font-size:calc(14px * var(--text-scale));font-weight:700;text-transform:uppercase;color:var(--orange);letter-spacing:.12em;margin-bottom:12px}.eyebrow-muted{font-family:'Big Shoulders Display',sans-serif;font-size:calc(14px * var(--text-scale));font-weight:700;text-transform:uppercase;color:var(--muted);letter-spacing:.12em;margin-bottom:12px}.ht-desc{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.6;margin-bottom:14px}.hosting-tier.featured .ht-desc{color:rgba(240,240,240,0.5)}.stripe-btn.sm{font-size:calc(14px * var(--text-scale));padding:11px 18px 9px}.three-up-strip{margin-top:2px;background:var(--card);padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.cs-card-text{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.75}.cs-card-text.gap-top{margin-top:10px}.cs-card-text.constrained{max-width:760px}.cs-h2{font-family:'Big Shoulders Display',sans-serif;font-size:clamp(calc(28px * var(--text-scale)), calc(4vw * var(--text-scale)), calc(48px * var(--text-scale)));font-weight:800;text-transform:uppercase;color:var(--white)}.cs-testimonial{background:rgba(13,27,42,0.9);border:1px solid rgba(232,68,10,0.25);border-top:3px solid var(--orange);padding:28px 26px}.cs-metric-strip{margin-top:12px;background:var(--card);border:1px solid var(--border);padding:18px 20px;display:flex;align-items:center;gap:14px}.cs-suburb-callout{margin-top:2px;background:rgba(13,27,42,0.7);border:1px solid rgba(232,68,10,0.2);border-left:3px solid var(--orange);padding:24px 28px}.privacy-intro{background:var(--card);border-left:3px solid var(--orange);padding:18px 22px;margin-bottom:40px;font-size:calc(14px * var(--text-scale));color:var(--muted);line-height:1.65}.privacy-body{font-size:calc(15px * var(--text-scale));color:var(--muted);line-height:1.85}.privacy-body strong{color:var(--white)}.privacy-body a{color:var(--orange)}.privacy-body h2{font-family:'Big Shoulders Display',sans-serif;font-size:calc(26px * var(--text-scale));font-weight:800;text-transform:uppercase;color:var(--white);margin:36px 0 12px}.privacy-body ul{margin:12px 0 0 20px;line-height:2}.privacy-body p+p,.privacy-body ul+p,.privacy-body ol+p{margin-top:12px}.trust-dot{display:inline-block;width:6px;height:6px;background:var(--orange);border-radius:50%;margin-right:10px;flex-shrink:0;vertical-align:middle;position:relative;top:-1px}.vs-compare{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:0}.vs-col{padding:28px 26px 26px}.vs-agency{background:#1a1212;border:1px solid rgba(255,80,80,0.15);border-top:3px solid rgba(200,60,60,0.6)}.vs-scd{background:linear-gradient(135deg,#0e1f35 0,#0a1628 100%);border:1px solid rgba(232,68,10,0.25);border-top:3px solid var(--orange)}.vs-col-head{font-family:var(--font-head);font-size:calc(15px * var(--text-scale));font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px}.vs-agency .vs-col-head{color:rgba(255,120,120,0.85)}.vs-scd .vs-col-head{color:var(--orange)}.vs-list{list-style:none;display:flex;flex-direction:column;gap:10px}.vs-list li{font-size:calc(14px * var(--text-scale));line-height:1.5;display:flex;align-items:flex-start;gap:10px}.vs-list li::before{content:'';display:inline-block;width:14px;height:14px;flex-shrink:0;margin-top:2px;background-size:contain;background-repeat:no-repeat;background-position:center}.vs-agency .vs-list li{color:rgba(240,180,180,0.65)}.vs-agency .vs-list li::before{background-image:url("data:image/svg+xml,%3Csvgxmlns='http://www.w3.org/2000/svg'viewBox='001414'%3E%3Cpathd='M22l1010M122L212'stroke='rgba(200,80,80,0.7)'stroke-width='2'stroke-linecap='round'/%3E%3C/svg%3E")}.vs-scd .vs-list li{color:rgba(240,240,240,0.8)}.vs-scd .vs-list li::before{background-image:url("data:image/svg+xml,%3Csvgxmlns='http://www.w3.org/2000/svg'viewBox='001414'%3E%3Cpathd='M1.57l447-8'stroke='%23E8440A'stroke-width='2.2'stroke-linecap='round'stroke-linejoin='round'fill='none'/%3E%3C/svg%3E")}.hpc-teaser{font-size:calc(11px * var(--text-scale));color:rgba(240,240,240,0.45);letter-spacing:.04em;margin-top:4px;line-height:1.4}.hero-price-card.open .hpc-teaser{display:none}.pf-subnote{font-size:calc(12px * var(--text-scale));color:var(--orange);letter-spacing:.03em;margin-top:10px;line-height:1.4;opacity:.85}.cta-open-card{display:flex;flex-direction:column;cursor:default;background:linear-gradient(145deg,#0e1f35 0,#0a1628 60%,#111 100%);border:1px solid rgba(232,68,10,0.35);border-top:3px solid var(--orange);position:relative;overflow:hidden}.cta-open-card::before{content:'';position:absolute;inset:0;background-image:url('/assets/circuit-strong.v11.svg');background-size:400px;opacity:.04;pointer-events:none}.cta-open-inner{position:relative;z-index:1;padding:40px 36px;display:flex;flex-direction:column;gap:16px;height:100%;justify-content:center}.cta-open-tag{font-size:calc(11px * var(--text-scale));font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);display:flex;align-items:center;gap:10px}.cta-open-tag::before{content:'';width:20px;height:2px;background:var(--orange);display:inline-block}.cta-open-title{font-family:var(--font-head);font-size:clamp(calc(36px * var(--text-scale)), calc(4vw * var(--text-scale)), calc(52px * var(--text-scale)));font-weight:800;text-transform:uppercase;color:var(--white);line-height:1;margin:0}.cta-open-desc{font-size:calc(15px * var(--text-scale));color:var(--muted);line-height:1.7;max-width:340px}.cta-open-features{list-style:none;display:flex;flex-direction:column;gap:6px}.cta-open-features li{font-size:calc(13px * var(--text-scale));color:rgba(240,240,240,0.6);display:flex;align-items:center;gap:8px}.cta-open-features li::before{content:'';display:inline-block;width:12px;height:12px;flex-shrink:0;background-image:url("data:image/svg+xml,%3Csvgxmlns='http://www.w3.org/2000/svg'viewBox='001212'%3E%3Cpathd='M16l3.53.5L112'stroke='%23E8440A'stroke-width='2'stroke-linecap='round'stroke-linejoin='round'fill='none'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat}.faq-section{background:var(--bg2)}.faq-two-col{display:grid;grid-template-columns:1fr 1.4fr;gap:72px;align-items:start}.faq-left .section-title{margin-bottom:28px}.faq-quick-stack{display:flex;flex-direction:column;gap:2px;margin-bottom:32px}.faq-quick-item{padding:18px 20px;background:var(--card);border-left:3px solid var(--orange)}.faq-quick-q{font-size:calc(13px * var(--text-scale));font-weight:600;color:var(--white);margin-bottom:4px;font-family:var(--font-body)}.faq-quick-a{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.55}.faq-accordion{display:flex;flex-direction:column}.faq-item{border-bottom:1px solid var(--border)}.faq-item:first-child{border-top:1px solid var(--border)}.faq-q{width:100%;background:0;border:0;cursor:pointer;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;font-family:var(--font-body);font-size:calc(15px * var(--text-scale));font-weight:600;color:var(--text);transition:color .2s}.faq-q:hover{color:var(--white)}.faq-q[aria-expanded="true"]{color:var(--orange)}@media(max-width:900px){.vs-compare{grid-template-columns:1fr}.faq-two-col{grid-template-columns:1fr;gap:48px}}@media(max-width:768px){.cta-open-inner{padding:32px 28px}.cta-open-title{font-size:calc(38px * var(--text-scale))}}.page-hero-rich{background-color:#0a0f16;background-image:url('/assets/concrete-bg.v11_2.webp');background-size:cover;background-position:center;position:relative;overflow:hidden;border-bottom:1px solid var(--border)}.page-hero-rich::before{content:'';position:absolute;inset:0;background:rgba(10,15,22,0.82);z-index:0}.page-hero-circuit{position:absolute;inset:0;background-image:url('/assets/circuit-strong.v11.svg');background-size:500px;opacity:.07;z-index:1;pointer-events:none}.page-hero-rich .page-hero-inner{position:relative;z-index:2}.benefit-card.benefit-accent-left{border-left:3px solid var(--orange);background:linear-gradient(135deg,#1a1a1a 0,#161616 100%);transition:border-left-color .2s,box-shadow .2s}.benefit-card.benefit-accent-left:hover{border-left-color:var(--orange2);box-shadow:0 4px 18px rgba(0,0,0,0.4)}.tier-time{font-size:calc(12px * var(--text-scale));font-weight:600;color:var(--orange);letter-spacing:.05em;text-transform:uppercase;margin-bottom:14px;display:flex;align-items:center;gap:8px}.tier-time::before{content:'';width:16px;height:2px;background:var(--orange);display:inline-block;flex-shrink:0}.cut-top-mid{border-top:2px solid rgba(232,68,10,0.3);position:relative}.cut-top-mid::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0,var(--orange) 20%,var(--orange) 80%,transparent 100%);opacity:.4}.page-cta-strip{background:var(--navy);background-image:url('/assets/circuit-strong.v11.svg');background-size:500px;border-top:3px solid var(--orange);padding:72px 32px;position:relative;overflow:hidden}.page-cta-strip::before{content:'';position:absolute;inset:0;background:rgba(10,22,40,0.7);pointer-events:none}.page-cta-strip-inner{max-width:1280px;margin:0 auto;position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:48px;flex-wrap:wrap}.page-cta-strip-text{flex:1;min-width:280px}.page-cta-strip-text .cta-eyebrow{font-size:calc(11px * var(--text-scale));font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);margin-bottom:12px;display:flex;align-items:center;gap:10px}.page-cta-strip-text .cta-eyebrow::before{content:'';width:20px;height:2px;background:var(--orange)}.page-cta-strip-text h2{font-size:clamp(calc(32px * var(--text-scale)), calc(4vw * var(--text-scale)), calc(52px * var(--text-scale)));color:var(--white);margin-bottom:12px;line-height:1.05}.page-cta-strip-text h2 em{font-style:normal;color:var(--orange)}.page-cta-strip-text p{font-size:calc(16px * var(--text-scale));color:var(--muted);max-width:480px;line-height:1.7}.page-cta-strip-actions{display:flex;flex-direction:column;gap:12px;flex-shrink:0}@media(max-width:768px){.page-cta-strip-inner{flex-direction:column;align-items:flex-start}.page-cta-strip-actions{flex-direction:row;flex-wrap:wrap}}.about-bleed-standalone{background:var(--bg3);background-image:url('/assets/circuit.v10.3.svg');background-size:600px;padding:88px 32px;position:relative;overflow:hidden}.about-bleed-standalone .about-bleed-inner{max-width:680px;margin:0 auto;position:relative;z-index:1}.about-bleed-standalone .about-tag{font-size:calc(11px * var(--text-scale));font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-bottom:16px;display:flex;align-items:center;gap:10px}.about-bleed-standalone .about-tag::before{content:'';width:20px;height:2px;background:var(--orange)}.about-bleed-standalone h2{font-size:clamp(calc(32px * var(--text-scale)), calc(4vw * var(--text-scale)), calc(52px * var(--text-scale)));color:var(--white);margin-bottom:20px;line-height:1.05}.about-bleed-standalone p{font-size:calc(16px * var(--text-scale));color:var(--muted);line-height:1.75;margin-bottom:14px;max-width:600px}.cm-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;background:rgba(232,68,10,0.12);border:1px solid rgba(232,68,10,0.25);position:relative}.cm-icon::before{content:'';width:10px;height:10px;background:var(--orange);border-radius:1px}.cm-phone::before{border-radius:50%}.cm-email::before{border-radius:1px}.cm-location::before{width:9px;height:9px;transform:rotate(45deg);border-radius:1px}.section-title .nate-gold{color:#d4a337}.stats-strip-nate .nate-gold{color:var(--nate-gold);background-image:linear-gradient(100deg,var(--nate-gold) 0,var(--nate-gold) 40%,#ffe9a8 50%,var(--nate-gold) 60%,var(--nate-gold) 100%);background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 8px rgba(200,160,30,0.45),0 0 18px rgba(200,160,30,0.25);animation:nate-electric-pulse 2.4s ease-in-out infinite,nate-electric-sweep 3.6s linear infinite;padding:0 .05em}@keyframes nate-electric-pulse{0%,100%{text-shadow:0 0 6px rgba(200,160,30,0.35),0 0 14px rgba(200,160,30,0.18)}50%{text-shadow:0 0 12px rgba(200,160,30,0.70),0 0 28px rgba(200,160,30,0.40),0 0 42px rgba(200,160,30,0.18)}}@keyframes nate-electric-sweep{0%{background-position:100% 0}100%{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.stats-strip-nate .nate-gold{animation:none;background-image:none;-webkit-text-fill-color:var(--nate-gold);color:var(--nate-gold);text-shadow:0 0 8px rgba(200,160,30,0.35)}}.rb-referral{background:var(--bg2);padding:56px 24px 64px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.rb-referral-inner{max-width:720px;margin:0 auto;display:flex;gap:20px;align-items:flex-start}.rb-referral-logo{width:36px;height:36px;flex-shrink:0;border-radius:4px;margin-top:4px}.rb-referral-content{flex:1}.rb-referral-heading{font-family:var(--font-head);font-size:clamp(calc(22px * var(--text-scale)), calc(3vw * var(--text-scale)), calc(28px * var(--text-scale)));font-weight:800;color:var(--white);margin:0 0 12px;line-height:1.2}.rb-referral-body{font-size:calc(15px * var(--text-scale));color:var(--muted);line-height:1.7;margin:0 0 16px}.rb-referral-body strong{color:#e11e6b;font-weight:700}.rb-referral-link{display:inline-block;font-size:calc(14px * var(--text-scale));font-weight:600;color:#e11e6b;text-decoration:none;border-bottom:1px solid #e11e6b;padding-bottom:1px;transition:opacity .2s}.rb-referral-link:hover{opacity:.75}@media(max-width:640px){.rb-referral-inner{flex-direction:column;gap:12px}}

/* Case study theme: Nate (partial accent; keeps Steel Cap UI intact) */
main[data-theme="nate"] .cs-stat-item .csn{color:var(--nate-gold)}
main[data-theme="nate"] .cs-stat-row{border-top-color:rgba(200,160,30,0.35);border-bottom-color:rgba(200,160,30,0.35);background:rgba(6,14,34,0.35);padding:24px 20px}
main[data-theme="nate"] .cs-testimonial{border-top-color:var(--nate-gold);background:rgba(6,14,34,0.85);border-color:rgba(200,160,30,0.3)}
main[data-theme="nate"] .cs-suburb-callout{border-left-color:var(--nate-gold);border-color:rgba(200,160,30,0.25);background:rgba(6,14,34,0.7)}
main[data-theme="nate"] .cs-body h2{position:relative;padding-bottom:14px}
main[data-theme="nate"] .cs-body h2::after{content:"";position:absolute;left:0;bottom:0;width:48px;height:2px;background:var(--nate-gold)}
main[data-theme="nate"] .cs-callout{border-left-color:var(--nate-gold)}
main[data-theme="nate"] .pull-quote{border-left-color:var(--nate-gold)}

/* v12.0.0 Phase 1 additions */
:focus { outline: none; }
:focus-visible {
  outline: 3px solid var(--orange);
  outline-offset: 2px;
  border-radius: 2px;
}
a:focus-visible, button:focus-visible, [tabindex]:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible,
summary:focus-visible {
  outline: 3px solid var(--orange);
  outline-offset: 2px;
}
.skip-link:focus-visible {
  outline-offset: 4px;
}

/* Phase 1 utilities - D1 inline style migrations */

/* D1a - GTM noscript iframe (14 instances across all pages) */
.gtm-noscript-iframe { display: none; visibility: hidden; }

/* D1c - SVG sprite hidden container (index.html) */
.svg-sprite-hidden { position: absolute; width: 0; height: 0; }

/* D1b - index.html: parallax-bg dark fallback bg, pullquote compact spacing */
.hero-bg-dark { background-color: var(--bg); }
.pullquote-block-tight { margin-top: 2px; }

/* D1b - google-ads.html: body-muted with bottom margin */
.body-muted-spaced { margin-bottom: 16px; }

/* D1d - hosting-support.html: flex column on tier cards pins button to bottom */
.hosting-tier { display: flex; flex-direction: column; }
.hosting-tier .stripe-btn { margin-top: auto; }
.hosting-tier .btn-outline-orange { margin-top: auto; }

/* D1b - hosting-support.html: content width constraint, plan subtitle, terms line */
.content-max-760 { max-width: 760px; }
.plan-subtitle { font-size: calc(16px * var(--text-scale)); color: var(--muted); max-width: 600px; }
.hs-diy-link { width: 100%; justify-content: center; font-size: calc(14px * var(--text-scale)); padding: 10px 16px; }
.plan-terms { margin-top: 16px; font-size: calc(13px * var(--text-scale)); color: var(--muted); }

/* D1b - 404.html: button row layout, back link spacing, muted small link */
.btn-row-centered { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin-top: 24px; }
.not-found-back { margin-top: 32px; }
.link-muted-sm { color: var(--muted); font-size: calc(14px * var(--text-scale)); }

/* D1b - privacy.html: shorter page-hero, last-updated line, privacy list */
.page-hero-condensed { padding-bottom: 36px; }
.last-updated { font-size: calc(13px * var(--text-scale)); color: var(--muted); margin-top: 12px; }
.privacy-ul-spaced { margin: 12px 0 0 20px; line-height: 2.2; }

/* D1b - thank-you.html: center-aligned content block */
.ty-center { text-align: center; }

/* D1b - lead-engine.html: inline-cta, check-list, callout, three-up-strip spacing */
.inline-cta-pull { margin-top: 28px; }
.check-list-spaced { margin-top: 20px; }
.callout-compact-top { margin-top: 20px; }
.three-up-strip-spaced { margin-top: 32px; }

/* D1b - work/nates-rates-electrical.html: case study specific overrides */
.section-no-pb { padding-bottom: 0; }
.section-tight-top { padding-top: 52px; }
.section-label-tight { margin-bottom: 12px; }
.cs-caption { font-size: calc(13px * var(--text-scale)); color: var(--muted); margin-top: 10px; }
.cs-h2-spaced { margin-bottom: 20px; line-height: 1; }
.cs-h2-section-gap { margin-bottom: 28px; }
.cs-h2-xl-gap { margin-bottom: 40px; }
.cs-divider-top { border-top: 1px solid var(--border); padding-top: 14px; }
.cs-attribution { font-size: calc(11px * var(--text-scale)); color: var(--muted); }
.cs-big-num { font-family: 'Big Shoulders Display', sans-serif; font-size: calc(36px * var(--text-scale)); font-weight: 800; color: var(--orange); }
.cs-stat-note { font-size: calc(12px * var(--text-scale)); color: var(--muted); margin-top: 3px; }


/* Phase 1 migrated from 404.html scoped block */
.not-found-wrap { min-height: 80svh; display: flex; align-items: center; justify-content: center; text-align: center; padding: 60px 24px; }
  .not-found-code { font-family: 'Big Shoulders Display', sans-serif; font-size: clamp(calc(100px * var(--text-scale)), calc(20vw * var(--text-scale)), calc(180px * var(--text-scale))); font-weight: 800; color: var(--orange); line-height: 1; margin-bottom: 16px; }
  .not-found-msg { font-size: calc(20px * var(--text-scale)); color: var(--white); margin-bottom: 12px; }
  .not-found-sub { font-size: calc(15px * var(--text-scale)); color: var(--muted); margin-bottom: 32px; }

/* Phase 1 migrated from index.html scoped block */
/* === SOCIAL PROOF STRIP (pass3) - scoped, does not touch style.v11.2.12.css === */
.proof-strip {
  background: var(--bg2);
  padding: 72px 24px 80px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.proof-strip-inner {
  max-width: 1100px;
  margin: 0 auto;
}
.proof-strip-label {
  font-size: calc(12px * var(--text-scale)); font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--orange); margin-bottom: 16px; display: flex; align-items: center; gap: 10px;
}
.proof-strip-label::before {
  content: ''; display: inline-block; width: 26px; height: 3px; background: var(--orange);
}
.proof-strip-heading {
  font-family: var(--font-head); font-size: clamp(calc(28px * var(--text-scale)), calc(4vw * var(--text-scale)), calc(44px * var(--text-scale))); font-weight: 800;
  color: var(--white); margin: 0 0 40px; line-height: 1.1;
}
.proof-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
  margin-bottom: 40px;
}
.proof-tile {
  background: var(--card);
  border: 1px solid var(--border2);
  border-left: 3px solid var(--orange);
  border-radius: 4px;
  padding: 28px 24px 24px;
}
.proof-tile-placeholder {
  border-left-color: var(--border2);
  border-style: dashed;
  background: transparent;
  opacity: 0.45;
}
.proof-quote {
  font-family: var(--font-head); font-size: clamp(calc(22px * var(--text-scale)), calc(3vw * var(--text-scale)), calc(30px * var(--text-scale))); font-weight: 800;
  color: var(--white); margin: 0 0 16px; line-height: 1.2;
}
.proof-quote::before { content: '\201C'; color: var(--orange); margin-right: 2px; }
.proof-quote::after  { content: '\201D'; color: var(--orange); margin-left: 2px; }
.proof-attribution {
  font-size: calc(13px * var(--text-scale)); color: var(--muted); font-family: var(--font-body);
}
.proof-attribution strong { color: var(--dim); font-weight: 600; }
.proof-placeholder-text {
  font-size: calc(14px * var(--text-scale)); color: var(--muted); font-style: italic;
}
.proof-honest {
  max-width: 560px;
  border-top: 1px solid var(--border);
  padding-top: 32px;
}
.proof-honest p {
  font-size: calc(16px * var(--text-scale)); color: var(--muted); line-height: 1.75; margin: 0;
}
.proof-honest p + p { margin-top: 12px; }
.proof-honest em { color: var(--dim); font-style: normal; }
/* === PASS 7: price card tap hint (mobile only) === */
.hpc-expand-hint { font-size: calc(11px * var(--text-scale)); color: var(--muted); display: none; letter-spacing: 0.05em; margin-top: 4px; }
@media (max-width: 900px) { .hpc-expand-hint { display: block; } }

/* Phase 1 migrated from lead-engine.html scoped block (pass 23) */
/* Lead Engine scoped styles - v11.2.23 */
.le-breakdown-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 32px;
}
@media (max-width: 680px) {
  .le-breakdown-grid { grid-template-columns: 1fr; }
}
.le-component-card {
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 24px;
  display: flex;
  flex-direction: column;
}
.le-component-card.accent-orange {
  border-top: 3px solid var(--orange);
}
.le-component-card .stripe-btn {
  margin-top: auto;
}
.le-component-name {
  font-family: var(--font-head);
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--text);
  margin-bottom: 4px;
}
.le-component-price {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--orange);
  margin-bottom: 12px;
}
.le-component-what {
  font-size: 0.85rem;
  color: var(--muted);
  margin-bottom: 10px;
  line-height: 1.5;
}
.le-component-outcome {
  font-size: 0.85rem;
  color: var(--text);
  background: var(--bg3);
  border-left: 2px solid var(--orange);
  padding: 8px 12px;
  border-radius: 0 4px 4px 0;
  line-height: 1.4;
  margin-bottom: 20px;
}
.le-pricing-math {
  margin-top: 28px;
  background: var(--bg3);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 20px 24px;
  font-size: 0.95rem;
  color: var(--muted);
}
.le-pricing-math strong {
  color: var(--text);
}
.le-single-card {
  max-width: 480px;
  margin: 40px auto 0;
  background: var(--bg2);
  border: 1px solid var(--border);
  border-top: 3px solid var(--orange);
  border-radius: 6px;
  padding: 36px 32px;
  text-align: center;
}
.le-single-card .tier-price {
  font-size: 3.5rem;
}
.le-single-card .tier-per {
  color: var(--muted);
  font-size: 0.85rem;
  margin-bottom: 12px;
}
.le-card-breakdown-note {
  font-size: 0.8rem;
  color: var(--muted);
  margin-top: 8px;
  margin-bottom: 24px;
}
.le-faq-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 32px;
}
@media (max-width: 680px) {
  .le-faq-grid { grid-template-columns: 1fr; }
}
.le-faq-item {
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 24px;
}
.le-faq-q {
  font-weight: 600;
  font-size: 0.95rem;
  color: var(--text);
  margin-bottom: 8px;
}
.le-faq-a {
  font-size: 0.9rem;
  color: var(--muted);
  line-height: 1.55;
}

/* Phase 2 additions - pass 26 */
.field-error { display: none; color: var(--orange); font-size: 0.85rem; margin-top: 6px; font-weight: 600; }
.field-error.is-visible { display: block; }
input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"] { border-color: var(--orange); box-shadow: 0 0 0 1px var(--orange); }
.form-response-time {
  background: var(--bg3);
  border-left: 3px solid var(--orange);
  border-radius: 0 4px 4px 0;
  padding: 12px 16px;
  margin: 20px 0 16px;
}
.form-response-time strong {
  display: block;
  font-size: 1rem;
  color: var(--text);
  margin-bottom: 2px;
}
.form-response-time span {
  font-size: 0.85rem;
  color: var(--muted);
}

/* v12.0.3 UX batch additions */

/* Task 1 U1: Case study deep-link CTA */
.cs-deep-cta {
  background: var(--bg2);
  border: 1px solid var(--border);
  border-left: 3px solid var(--orange);
  border-radius: 0 6px 6px 0;
  padding: 28px 32px;
  margin: 48px auto;
  max-width: 720px;
}
.cs-deep-cta-inner { text-align: center; }
.cs-deep-cta-eyebrow {
  font-family: var(--font-head);
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--orange);
  margin-bottom: 8px;
}
.cs-deep-cta p {
  color: var(--text);
  font-size: 1.05rem;
  margin-bottom: 16px;
}
@media (max-width: 680px) {
  .cs-deep-cta { padding: 22px 20px; margin: 36px 16px; }
  .cs-deep-cta p { font-size: 1rem; }
}

/* Task 3 U6: 404 popular pages list */
.not-found-popular {
  list-style: none;
  max-width: 480px;
  margin: 16px auto 32px;
  text-align: left;
  padding: 0;
}
.not-found-popular li {
  padding: 14px 0;
  border-bottom: 1px solid var(--border);
}
.not-found-popular li:last-child { border-bottom: none; }
.not-found-popular a {
  font-family: var(--font-head);
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--text);
  text-decoration: none;
  display: block;
}
.not-found-popular a:hover { color: var(--orange); }
.not-found-popular span {
  display: block;
  font-size: 0.85rem;
  color: var(--muted);
  margin-top: 2px;
}

/* Task 4 U9: Price card accordion chevron */
.hpc-chevron {
  display: inline-block;
  margin-left: 6px;
  font-size: 0.8em;
  transition: transform 0.2s ease;
}
[data-toggle-card].open .hpc-chevron {
  transform: rotate(180deg);
}
[data-toggle-card].open .hpc-expand-hint {
  opacity: 0.6;
}

/* Lead Engine sticky TOC - desktop only */
.le-toc { display: none; }
@media (min-width: 1100px) {
  .le-toc {
    display: block;
    position: fixed;
    top: 50%;
    right: 24px;
    transform: translateY(-50%);
    z-index: 50;
    max-width: 200px;
  }
  .le-toc-inner {
    background: var(--bg2);
    border: 1px solid var(--border);
    border-left: 3px solid var(--orange);
    border-radius: 0 6px 6px 0;
    padding: 16px 18px;
  }
  .le-toc-label {
    font-family: var(--font-head);
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--muted);
    margin-bottom: 10px;
  }
  .le-toc-list {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .le-toc-list li { margin: 0; }
  .le-toc-link {
    display: block;
    padding: 6px 0;
    font-size: 0.85rem;
    color: var(--text);
    text-decoration: none;
    border-left: 2px solid transparent;
    padding-left: 10px;
    margin-left: -10px;
    transition: color 0.15s ease, border-color 0.15s ease;
  }
  .le-toc-link:hover { color: var(--orange); }
  .le-toc-link.is-active {
    color: var(--orange);
    border-left-color: var(--orange);
    font-weight: 600;
  }
}

/* Light-mode fallback. The site is intentionally dark, but on forced-light
   OS settings (e.g. Windows High Contrast, some assistive tech) the default
   dark palette can render with unreadable form fields and invisible focus.
   This block keeps the site usable in those contexts without trying to
   become a full light theme. */
@media (prefers-color-scheme: light) {
  input, select, textarea {
    background: #fff;
    color: #111;
    border-color: rgba(0, 0, 0, 0.2);
  }
  input:focus-visible, select:focus-visible, textarea:focus-visible {
    border-color: var(--orange);
  }
  ::selection {
    background: var(--orange);
    color: #fff;
  }
  .field-error {
    color: #b8350a;
  }
}

/* Author bio strip - reusable on case studies and blog posts. */
.author-bio {
  max-width: 720px;
  margin: 32px auto 48px;
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 24px 28px;
}
.author-bio-inner {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}
.author-bio-photo {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  flex-shrink: 0;
  object-fit: cover;
  border: 2px solid var(--orange);
}
.author-bio-text {
  flex: 1;
  min-width: 0;
}
.author-bio-label {
  font-family: var(--font-head);
  font-size: calc(0.7rem * var(--text-scale));
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--muted);
  margin-bottom: 4px;
}
.author-bio-name {
  font-family: var(--font-head);
  font-size: calc(1.2rem * var(--text-scale));
  font-weight: 700;
  color: var(--text);
  margin-bottom: 6px;
}
.author-bio-line {
  font-size: calc(0.92rem * var(--text-scale));
  color: var(--muted);
  margin-bottom: 10px;
  line-height: 1.5;
}
.author-bio-link {
  font-size: calc(0.9rem * var(--text-scale));
  font-weight: 600;
  color: var(--orange);
  text-decoration: none;
}
.author-bio-link:hover {
  text-decoration: underline;
}
@media (max-width: 680px) {
  .author-bio { margin: 24px 16px 36px; padding: 20px 18px; }
  .author-bio-inner { gap: 16px; }
  .author-bio-photo { width: 60px; height: 60px; }
  .author-bio-name { font-size: calc(1.1rem * var(--text-scale)); }
}

/* v12.0.12 accessibility fixes (Pass-36) - Lighthouse CI color-contrast and link-in-text-block.
   Small orange text on dark backgrounds switched from #e8440a (4.36:1) to #ff5a1f (5.5:1).
   Only the specific selectors flagged by axe-core are overridden, brand orange stays elsewhere. */
.section-label,
.tier-label,
.link-orange,
.inline-cta-btn,
.contact-buy-note a {
  color: var(--orange2);
}

/* Inline orange links inside muted-text paragraphs need a non-color cue.
   Fixes axe-core link-in-text-block on .link-orange inside .tier-footnote and .le-faq-a. */
.link-orange {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

/* Footer meta tel/email links were inheriting browser-default blue #0000ee on near-black footer
   (2.1:1). Style explicitly with the muted color used elsewhere in the footer (7:1). */
.footer-meta a {
  color: var(--muted);
  transition: color .2s;
}
.footer-meta a:hover,
.footer-meta a:focus {
  color: var(--orange2);
}

/* === Pass-38: A-cluster, accessibility-first foundation === */

/* 2a. New CSS variable --muted-strong
   Verified contrast: #bdbdbd on --bg(#111)=10.05:1, --bg2(#1a1a1a)=9.26:1, --bg3(#0d1b2a)=9.26:1, --card(#1a1a1a)=9.26:1 - all pass 4.5:1 */
:root {
  --muted-strong: #bdbdbd;
}

/* 2b. Accessibility panel UI */
.a11y-trigger {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 250;
  width: 56px;
  height: 56px;
  background: var(--navy);
  border: 2px solid var(--orange);
  color: var(--orange);
  border-radius: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0,0,0,0.45);
  transition: background 0.15s, border-color 0.15s, transform 0.15s;
}
.a11y-trigger:hover {
  background: rgba(232,68,10,0.12);
  transform: translateY(-2px);
}
.a11y-trigger:focus-visible {
  outline: 3px solid var(--orange2);
  outline-offset: 3px;
}
.a11y-panel {
  position: fixed;
  bottom: 92px;
  right: 24px;
  z-index: 250;
  width: 300px;
  max-width: calc(100vw - 32px);
  background: var(--bg2);
  border: 1px solid var(--border2);
  border-top: 3px solid var(--orange);
  box-shadow: 0 12px 40px rgba(0,0,0,0.6);
  padding: 20px;
  display: none;
  flex-direction: column;
  gap: 18px;
  transform: translateY(16px);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.a11y-panel.open {
  display: flex;
  transform: translateY(0);
  opacity: 1;
}
.a11y-panel h2 {
  font-family: var(--font-head);
  font-size: calc(18px * var(--text-scale));
  font-weight: 800;
  text-transform: uppercase;
  color: var(--white);
  margin: 0 0 0 0;
  letter-spacing: 0.04em;
}
.a11y-close {
  position: absolute;
  top: 14px;
  right: 16px;
  background: transparent;
  border: 0;
  color: var(--muted);
  font-size: calc(22px * var(--text-scale));
  cursor: pointer;
  line-height: 1;
  padding: 4px 6px;
  transition: color 0.15s;
}
.a11y-close:hover {
  color: var(--white);
}
.a11y-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.a11y-label {
  font-size: calc(10px * var(--text-scale));
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--muted);
}
.a11y-btns {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
}
.a11y-btn {
  background: var(--card);
  border: 1px solid var(--border2);
  color: var(--muted-strong);
  font-family: var(--font-body);
  font-size: calc(13px * var(--text-scale));
  font-weight: 500;
  padding: 8px 12px;
  cursor: pointer;
  min-height: 36px;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  border-radius: 0;
}
.a11y-btn:hover {
  background: rgba(255,255,255,0.06);
  color: var(--white);
  border-color: var(--border2);
}
.a11y-btn[aria-pressed="true"] {
  background: var(--orange-btn);
  border-color: var(--orange);
  color: var(--white);
}
.a11y-btn:focus-visible {
  outline: 2px solid var(--orange2);
  outline-offset: 2px;
}
/* Size buttons: visually hint their scale effect */
.a11y-btn.size-1 { font-size: calc(12px * var(--text-scale)); }
.a11y-btn.size-2 { font-size: calc(15px * var(--text-scale)); }
.a11y-btn.size-3 { font-size: calc(18px * var(--text-scale)); }
.a11y-helper {
  font-size: calc(11px * var(--text-scale));
  color: var(--muted);
  line-height: 1.55;
  margin: 0;
}
.a11y-group-reset .a11y-btn {
  width: 100%;
  border-color: rgba(255,255,255,0.1);
  color: var(--muted);
  text-align: center;
}
.a11y-group-reset .a11y-label {
  display: none;
}
@media (max-width: 768px) {
  .a11y-trigger {
    width: 48px;
    height: 48px;
    bottom: 16px;
    right: 16px;
  }
  .a11y-panel {
    right: 16px;
    left: 16px;
    width: auto;
    max-width: 100%;
    bottom: 76px;
  }
}

/* 2c. Text size body classes - v12.0.15 - scoped zoom (not body zoom)
   Body-wide zoom in v12.0.14 made the a11y panel, trigger, sticky-cta and
   scroll-top scale along with content, which is wrong. We now zoom only the
   real content areas. Modern browsers (Chrome/Edge/Safari/Firefox 126+) all
   support `zoom`; the fallback for very old Firefox is no scaling, which is
   acceptable degradation. */
:root { --text-scale: 1; }
body.text-large { --text-scale: 1.15; }
body.text-xl { --text-scale: 1.3; }

/* 2d. High contrast mode - v12.0.16 - blanket reset on elements,
   pseudo-elements treated separately, with -webkit-text-fill-color
   handled correctly on pressed/hover states and a transparent
   background on logo PNGs so brightness(0) doesn't paint the whole
   element black.

   v12.0.15 bug 1: blanket reset hit *::before and *::after with
   background-color: #fff, which turned decorative overlays
   (.case-img-wrap::after gradient, .page-hero-rich::before dark
   wash, etc.) into solid white covers that hid content underneath.

   v12.0.15 bug 2: -webkit-text-fill-color: #000 from the * reset
   won over color: #fff on pressed/hover buttons, painting text
   invisibly black-on-black. Pressed buttons looked like solid
   black squares with no label.

   v12.0.15 bug 3: filter: brightness(0) on logo imgs operated on
   the rendered output including the white background from the *
   reset, blackening the whole element instead of just the boot
   pixels.

   v12.0.15 bug 4: .nate-gold gradient text won specificity (0,2,0)
   over body.hc-mode * (0,1,1) and kept the gradient effect. */
body.hc-mode,
body.hc-mode * {
  background-color: #fff !important;
  background-image: none !important;
  color: #000 !important;
  border-color: #000 !important;
  text-shadow: none !important;
  box-shadow: none !important;
  -webkit-text-fill-color: #000 !important;
}

/* Pseudo-elements: only flatten text-related styles. Backgrounds
   and decorative content left alone so we can target individual
   problem cases below. */
body.hc-mode *::before,
body.hc-mode *::after {
  color: #000 !important;
  text-shadow: none !important;
  -webkit-text-fill-color: #000 !important;
}

/* Hide decorative overlays that obscure content in HC */
body.hc-mode .case-img-wrap::after,
body.hc-mode .about-strip-photo::after,
body.hc-mode .page-hero-rich::before,
body.hc-mode .page-hero-circuit,
body.hc-mode .page-cta-strip::before,
body.hc-mode .cta-banner-pro::before,
body.hc-mode .cta-banner-pro::after,
body.hc-mode .cta-open-card::before,
body.hc-mode .cut-bottom-navy::after,
body.hc-mode .cut-bottom-orange::after,
body.hc-mode .cut-bottom-bg2::after,
body.hc-mode .cut-bottom-bg::after,
body.hc-mode .cut-top-mid::before,
body.hc-mode .stats-strip-dark .stat-cell+.stat-cell::before,
body.hc-mode .parallax-overlay {
  display: none !important;
}

/* HC: links stay underlined for affordance */
body.hc-mode a {
  text-decoration: underline !important;
}
body.hc-mode a:hover,
body.hc-mode a:focus-visible {
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.hc-mode a:focus-visible {
  outline: 3px solid #000 !important;
  outline-offset: 2px !important;
}

/* HC: nav and footer get separator borders */
body.hc-mode nav { border-bottom: 2px solid #000 !important; }
body.hc-mode footer { border-top: 2px solid #000 !important; }

/* HC: card-like surfaces keep solid border for visual separation */
body.hc-mode .feature-card,
body.hc-mode .tier-card,
body.hc-mode .case-card,
body.hc-mode .info-card,
body.hc-mode .callout,
body.hc-mode .callout-top,
body.hc-mode .callout-side,
body.hc-mode .cs-callout,
body.hc-mode .sp-card,
body.hc-mode .service-cat-card,
body.hc-mode .hosting-tier,
body.hc-mode .process-step,
body.hc-mode .dlv-item,
body.hc-mode .benefit-card,
body.hc-mode .fact-tile,
body.hc-mode .bignum-tile,
body.hc-mode .svc-mini,
body.hc-mode .three-up-strip,
body.hc-mode .faq-quick-item,
body.hc-mode .faq-item,
body.hc-mode .cta-open-card,
body.hc-mode .vs-agency,
body.hc-mode .vs-scd,
body.hc-mode .cs-testimonial,
body.hc-mode .cs-metric-strip,
body.hc-mode .cs-suburb-callout,
body.hc-mode .privacy-intro,
body.hc-mode .pull-quote,
body.hc-mode .cm-item,
body.hc-mode .form-box,
body.hc-mode .marquee-pill,
body.hc-mode .trade-pill,
body.hc-mode .ph-price-btn,
body.hc-mode .scroll-top,
body.hc-mode .footer-badge,
body.hc-mode .ty-tick {
  border: 2px solid #000 !important;
}

/* HC: buttons - default state (white bg, black text). Includes the
   -webkit-text-fill-color override so the text actually renders. */
body.hc-mode .btn-primary,
body.hc-mode .btn-white,
body.hc-mode .btn-outline,
body.hc-mode .btn-outline-orange,
body.hc-mode .stripe-btn,
body.hc-mode .nav-buy,
body.hc-mode .form-submit,
body.hc-mode .inline-cta-btn,
/* HC: buttons hover - inverted, with text-fill override */
body.hc-mode .btn-primary:hover,
body.hc-mode .btn-white:hover,
body.hc-mode .btn-outline:hover,
body.hc-mode .btn-outline-orange:hover,
body.hc-mode .stripe-btn:hover,
body.hc-mode .nav-buy:hover,
body.hc-mode .form-submit:hover,
body.hc-mode .inline-cta-btn:hover,
/* HC: form inputs */
body.hc-mode .form-group input,
body.hc-mode .form-group select,
body.hc-mode .form-group textarea {
  border: 2px solid #000 !important;
}

/* HC: parallax hero - strip backgrounds + stop motion */
body.hc-mode .parallax-bg,
body.hc-mode .parallax-circuits {
  transform: none !important;
  animation: none !important;
}

/* HC: kill all marquee scrolling */
body.hc-mode .marquee-track,
body.hc-mode .marquee-track-reverse {
  animation: none !important;
}

/* HC: SVG icons stay solid black */
body.hc-mode svg {
  fill: #000 !important;
  stroke: #000 !important;
}

/* HC: PNG logos - transparent background under the filter so
   brightness(0) only affects the actual image pixels, not the
   white background the * reset would otherwise paint underneath */
body.hc-mode .nav-logo img,
body.hc-mode .footer-logo img,
body.hc-mode .rb-referral-logo {
  background: transparent !important;
  background-color: transparent !important;
  filter: brightness(0) !important;
}

/* HC: override the Nate gold gradient-text on the home stats heading.
   The original rule uses .stats-strip-nate .nate-gold (specificity
   0,2,0) which beats body.hc-mode * (0,1,1). This rule is 0,3,0
   which beats both. */
body.hc-mode .stats-strip-nate .nate-gold,
body.hc-mode .nate-gold {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  background-image: none !important;
  background: none !important;
  text-shadow: none !important;
  animation: none !important;
}

/* HC: image fallback pattern. Content images that don't translate
   well to high-contrast (colour screenshots, brand-heavy artwork)
   should be hidden and replaced with a text descriptor wrapped in
   .hc-image-fallback. */
.hc-image-fallback { display: none; }
body.hc-mode .hc-image-fallback {
  display: block;
  padding: 32px 28px;
  border: 2px solid #000;
  background: #fff;
  box-sizing: border-box;
}
body.hc-mode .hc-image-fallback strong {
  display: block;
  font-family: var(--font-head);
  font-size: calc(20px * var(--text-scale));
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  margin-bottom: 10px;
}
body.hc-mode .hc-image-fallback p {
  font-size: calc(14px * var(--text-scale));
  line-height: 1.6;
  margin: 0 0 8px;
}
body.hc-mode .hc-image-fallback p:last-child {
  margin-bottom: 0;
}
body.hc-mode .hc-hide-img,
body.hc-mode .hc-hide-img img {
  display: none !important;
}

/* HC: accessibility panel itself */
body.hc-mode .a11y-trigger {
  background: #fff !important;
  border: 2px solid #000 !important;
  color: #000 !important;
}
body.hc-mode .a11y-trigger:hover {
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.hc-mode .a11y-trigger svg {
  fill: #000 !important;
}
body.hc-mode .a11y-trigger:hover svg {
  fill: #fff !important;
}
body.hc-mode .a11y-panel {
  background: #fff !important;
  border: 2px solid #000 !important;
}
body.hc-mode .a11y-btn {
  background: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border: 2px solid #000 !important;
}
body.hc-mode .a11y-btn:hover {
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.hc-mode .a11y-btn[aria-pressed="true"] {
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.hc-mode .a11y-btn[aria-pressed="true"]:hover {
  background: #333 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.hc-mode .a11y-close {
  color: #000 !important;
}

/* 2e. Plain English mode - v12.0.16 - reverted to swap pattern.
   v12.0.15 used an annotation pattern (.pe-def) showing definitions
   in brackets next to technical terms. Shannon's feedback: looked
   janky, diluted impact. Reverted to two-span swap (.pe-tech replaced
   by .pe-plain) but with tightly-written plain alternates that are
   similar length to the technical phrases, so layout doesn't break
   the way v12.0.14 did with "search engine optimisation". */
.pe-tech { display: revert; }
.pe-plain { display: none; }
body.pe-mode .pe-tech { display: none; }
body.pe-mode .pe-plain { display: revert; }

/* 2f. Motion reduce - v12.0.15 - mirror every prefers-reduced-motion
   rule under body.motion-reduce so the user-clicked Reduce button is
   functionally equivalent to the OS preference. Most importantly this
   swaps the SVG circuit background from the animated SVG (which uses
   SMIL <animate> tags that CSS animation: none cannot stop) to the
   static SVG. */
body.motion-reduce *,
body.motion-reduce *::before,
body.motion-reduce *::after {
  animation-duration: 0.01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.01ms !important;
  scroll-behavior: auto !important;
}
body.motion-reduce {
  scroll-behavior: auto !important;
}
body.motion-reduce .parallax-bg { transform: none !important; }
body.motion-reduce .marquee-track,
body.motion-reduce .marquee-track-reverse { animation: none !important; }

/* The big one: stop SMIL animations in the circuit SVG by swapping to
   the static SVG. Setting animation:none on the host element does NOT
   stop SMIL animations inside an SVG loaded as background-image. */
body.motion-reduce .parallax-circuits {
  background-image: url('/assets/circuit.v10.3.svg') !important;
  opacity: 0.6 !important;
}

/* Hero h1 word-reveal: show final state immediately */
body.motion-reduce .hero-h1 .hw {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  transition: none !important;
}
body.motion-reduce .hero-h1.ready .text-orange {
  animation: none !important;
  text-shadow: none !important;
}

/* Hover scale on case cards and site preview */
body.motion-reduce .case-card:hover .case-img { transform: none !important; }
body.motion-reduce .site-preview-wrap:hover img { transform: none !important; }
body.motion-reduce .scc-arrow,
body.motion-reduce .case-arrow {
  transition: opacity 0.15s !important;
  transform: none !important;
}

/* Stats strip stagger reveal */
body.motion-reduce .stats-strip-dark[data-stats-anim] .stat-cell {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* Process flow draw-on-scroll */
body.motion-reduce .process-flow[data-flow-anim]::before {
  clip-path: none !important;
  transition: none !important;
}
body.motion-reduce .process-flow[data-flow-anim] .pf-step,
body.motion-reduce .process-flow[data-flow-anim] .pf-arrow {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* Nate gold electric pulse (work case study) */
body.motion-reduce .stats-strip-nate .nate-gold {
  animation: none !important;
  background-image: none !important;
  -webkit-text-fill-color: var(--nate-gold) !important;
  color: var(--nate-gold) !important;
  text-shadow: 0 0 8px rgba(200,160,30,0.35) !important;
}

/* Minor UI transitions */
body.motion-reduce .nav-dropdown.open .nav-dd-btn { transition: none !important; }
body.motion-reduce .hamburger span { transition: none !important; }

/* 2g. Color-contrast fixes */
.marquee-section-label { color: var(--orange2); }
.proof-strip-label { color: var(--orange2); }
.case-tag { color: var(--orange2); }
.hpc-teaser { color: var(--muted-strong); }
.rb-referral-body strong { color: #ff3b7a; }
.rb-referral-link { color: #ff3b7a; border-bottom-color: #ff3b7a; }
.trust-bar .trust-item strong { color: var(--orange2); }
.tier-time { color: var(--orange2); }
.tier-badge { background: var(--orange-btn); }
.ct-th-us { color: var(--orange2); }
.author-bio-link { color: var(--orange2); }
.cs-deep-cta-eyebrow { color: var(--orange2); }
.callout-top-label { color: var(--orange2); }
.callout-top.accent .callout-top-label { color: var(--orange2); }

/* 2h. Contact page link underline fix */
.contact-buy-note a { color: var(--orange2); text-decoration: underline; }

/* Task 3 - no CSS changes needed, handled in HTML */

/* Task 6. Tap target fixes - mobile only */
@media (max-width: 600px) {
  .privacy-link {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    padding: 10px 0;
  }
  .footer-links a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    padding: 8px 0;
  }
  .mobile-menu .mob-sub {
    min-height: 44px;
    display: flex;
    align-items: center;
  }
  .a11y-btn {
    min-height: 44px;
    min-width: 44px;
  }
}

/* Task 7. sr-only utility (for aria-live region) */
.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;
}

/* ============================================================
   PASS-41 (v12.0.17): text-size refactor, PE rework,
   HC mode sweep, footer logo fallback, Plain English toggle
   ============================================================ */

/* --- Task 3b: Floating Plain English toggle (outside the panel) --- */

.a11y-pe-toggle {
  position: fixed;
  bottom: 24px;
  right: 96px;
  z-index: 250;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bg2);
  color: var(--white);
  border: 1px solid var(--border2);
  padding: 12px 18px;
  font-family: var(--font-head);
  font-size: calc(13px * var(--text-scale));
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(0,0,0,0.4);
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  min-height: 48px;
}
.a11y-pe-toggle:hover {
  border-color: var(--orange);
  color: var(--orange);
}
.a11y-pe-toggle:focus-visible {
  outline: 3px solid var(--orange2);
  outline-offset: 2px;
}
.a11y-pe-toggle[aria-pressed="true"] {
  background: var(--orange-btn);
  border-color: var(--orange-btn);
  color: var(--white);
  box-shadow: 0 4px 14px rgba(232,68,10,0.4);
}
.a11y-pe-toggle[aria-pressed="true"]:hover {
  background: var(--orange-btn-hover);
}
@media (max-width: 600px) {
  .a11y-pe-toggle {
    right: 16px;
    bottom: 80px;
    font-size: calc(12px * var(--text-scale));
    padding: 10px 14px;
  }
}

/* --- Task 3c: HC mode treatment for the Plain English toggle --- */

body.hc-mode .a11y-pe-toggle {
  background: #fff !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border-color: #000 !important;
}
body.hc-mode .a11y-pe-toggle:hover {
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.hc-mode .a11y-pe-toggle[aria-pressed="true"] {
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: #000 !important;
}

/* --- Task 6a: Hide decorative emojis in HC mode --- */

body.hc-mode .stat-value,
body.hc-mode .dlv-icon,
body.hc-mode .feature-card-icon,
body.hc-mode .ps-icon,
body.hc-mode .sp-icon,
body.hc-mode .scc-icon,
body.hc-mode .pf-icon,
body.hc-mode .ty-tick,
body.hc-mode .fs-icon {
  display: none !important;
}

/* --- Task 6b: Hide author bio photo in HC mode ---
   .author-bio-inner uses flex (see line 467 in original file), not grid.
   No grid-template-columns rule needed; flex containers don't reserve
   space for display:none children. Photo hide alone is sufficient. */

body.hc-mode .author-bio-photo {
  display: none !important;
}

/* --- Task 6c: Hide orange decorative bars on section labels and eyebrows --- */

body.hc-mode .section-label::before,
body.hc-mode .cta-eyebrow::before,
body.hc-mode .page-hero-eyebrow::before,
body.hc-mode .about-tag::before,
body.hc-mode .page-cta-strip-text .cta-eyebrow::before,
body.hc-mode .cta-banner-pro .cta-eyebrow::before,
body.hc-mode .about-bleed-standalone .about-tag::before,
body.hc-mode .cta-open-tag::before,
body.hc-mode .marquee-section-label::before,
body.hc-mode .hero-eyebrow .hero-eyebrow-bar {
  display: none !important;
}

/* Task 6c (continued): neutralise orange link colours on footer location,
   contact block, and Redback referral links in HC mode so they match the
   black underlined treatment used elsewhere. */

body.hc-mode .footer-locations a,
body.hc-mode .footer-contact-block a,
body.hc-mode .rb-referral-link {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  border-bottom-color: #000 !important;
  text-decoration: underline;
}

/* --- Task 6d: Hide Redback logo in HC mode (PNG has no alpha channel,
   renders as solid black square under brightness(0)). The card text
   mentions Redback multiple times so no information is lost. --- */

body.hc-mode .rb-referral-logo {
  display: none !important;
}
body.hc-mode .rb-referral-inner {
  gap: 0;
}

/* --- Task 7: Footer logo letterform fallback in HC mode ---
   logo-stacked.v10.19.png at 130x107 display size anti-aliases letter
   counters to filled pixels, which brightness(0) then turns black. No
   SVG version exists. Hide the image in HC and show a text wordmark. */

body.hc-mode .footer-logo img {
  display: none !important;
}
.footer-logo .footer-logo-text-fallback {
  display: none;
}
body.hc-mode .footer-logo .footer-logo-text-fallback {
  display: inline;
  font-family: var(--font-head);
  font-weight: 800;
  font-size: calc(18px * var(--text-scale));
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #000;
}

/* ============================================================
   v12.0.18 (Pass-41b): text-size scales every text element,
   scroll-top moved off the trigger zone
   ============================================================

   Why this exists: v12.0.17 used the brief's curated wrap list
   which left buttons, footer, eyebrows, FAQ questions, panel
   chrome, and the logo all at fixed size. For low-vision users
   that broke the whole point of the text-size feature. This
   pass takes "scale every text element" as the principle and
   only excludes purely visual elements (background images, the
   hero photo).

   Decisions baked in:
   - html root font-size carries text-scale so rem/em-based
     declarations inherit and grow naturally
   - body padding/margins stay fixed; only text-bearing
     declarations scale, so layout reflows but doesn't fail
   - accessibility controls scale themselves so users who
     increased text can still read their own controls
   - scroll-top moved bottom-left to clear the trigger zone
   - logos scale because they contain wordmarks (text)
*/

/* --- Root font-size: makes rem inheritance carry text-scale --- */
html {
  font-size: calc(16px * var(--text-scale));
}

/* --- Move scroll-top to bottom-LEFT so it stops sitting under the
       accessibility trigger and PE toggle on the bottom-right stack --- */
.scroll-top {
  right: auto;
  left: 24px;
}

/* --- Enlarged accessibility trigger. 64px baseline (was 56px) and
       scales with text-size so low-vision users can locate and use it.
       SVG icon scales too. --- */
.a11y-trigger {
  width: calc(64px * var(--text-scale));
  height: calc(64px * var(--text-scale));
}
.a11y-trigger svg {
  width: calc(32px * var(--text-scale));
  height: calc(32px * var(--text-scale));
}

/* --- Enlarged PE toggle. em-based padding so the button container
       grows with its font-size. Positioned via calc relative to the
       trigger size so it stays adjacent at every scale. --- */
.a11y-pe-toggle {
  padding: 0.85em 1.4em;
  font-size: calc(15px * var(--text-scale));
  min-height: calc(52px * var(--text-scale));
  gap: 0.55em;
  right: calc(32px + (64px * var(--text-scale)));
}
.a11y-pe-toggle svg {
  width: calc(20px * var(--text-scale));
  height: calc(20px * var(--text-scale));
}

/* --- Accessibility panel widens with text-scale so the buttons inside
       don't overflow when text grows --- */
.a11y-panel {
  width: calc(320px * var(--text-scale));
}

/* --- Logos scale because the wordmark IS text content --- */
.nav-logo img {
  height: calc(32px * var(--text-scale));
}
.footer-logo img {
  width: calc(130px * var(--text-scale));
}

/* --- Mobile overrides for the floating controls --- */
@media (max-width: 768px) {
  .a11y-trigger {
    width: calc(56px * var(--text-scale));
    height: calc(56px * var(--text-scale));
    bottom: 16px;
    right: 16px;
  }
  .a11y-trigger svg {
    width: calc(28px * var(--text-scale));
    height: calc(28px * var(--text-scale));
  }
  .scroll-top {
    left: 16px;
    right: auto;
  }
}

@media (max-width: 600px) {
  .a11y-pe-toggle {
    right: 16px;
    bottom: calc(24px + (56px * var(--text-scale)));
    font-size: calc(14px * var(--text-scale));
    padding: 0.75em 1.1em;
  }
}

@media (max-width: 360px) {
  .nav-logo img {
    height: calc(28px * var(--text-scale));
  }
}

/* ============================================================
   v12.0.19 (Pass-41c): accessibility controls static at largest size
   ============================================================

   Why this exists: in v12.0.18 the accessibility controls scaled
   with --text-scale. That was the wrong logic. The user who needs
   text larger needs the controls THEMSELVES to be findable and
   readable BEFORE they've configured anything. If the controls
   start at default size, low-vision users can't reach the feature
   that would help them.

   Fix: the accessibility trigger, the PE toggle, and every control
   inside the panel are now static at the XL-equivalent of v12.0.18
   base sizes (i.e. base * 1.3, rounded to integers). They do NOT
   scale further when --text-scale changes. The rest of the page
   continues to scale per v12.0.18.

   These overrides land at the end of the file so source-order wins
   over the v12.0.18 calc'd values without needing !important.
*/

/* --- Trigger: largest from the start, never scales --- */
.a11y-trigger {
  width: 84px;
  height: 84px;
}
.a11y-trigger svg {
  width: 42px;
  height: 42px;
}

/* --- Panel and all its internals static --- */
.a11y-panel {
  width: 416px;
}
.a11y-panel h2 {
  font-size: 24px;
}
.a11y-close {
  font-size: 28px;
}
.a11y-label {
  font-size: 13px;
}
.a11y-btn {
  font-size: 17px;
  padding: 10px 14px;
  min-height: 44px;  /* WCAG 2.5.5 minimum tap target */
}
.a11y-btn.size-1 { font-size: 16px; }
.a11y-btn.size-2 { font-size: 20px; }
.a11y-btn.size-3 { font-size: 24px; }
.a11y-helper {
  font-size: 14px;
}

/* --- PE toggle static. Positioned relative to the static 84px
       trigger so it always sits adjacent regardless of text-scale. --- */
.a11y-pe-toggle {
  padding: 0.85em 1.4em;
  font-size: 20px;
  min-height: 68px;
  gap: 0.55em;
  right: 116px;
}
.a11y-pe-toggle svg {
  width: 26px;
  height: 26px;
}

/* --- Mobile: smaller statics, but still larger than original baseline --- */
@media (max-width: 768px) {
  .a11y-trigger {
    width: 72px;
    height: 72px;
    bottom: calc(16px + env(safe-area-inset-bottom));
    right: 16px;
  }
  .a11y-trigger svg {
    width: 36px;
    height: 36px;
  }
  .a11y-panel {
    width: auto;
    right: 16px;
    left: 16px;
    max-width: 100%;
    bottom: calc(92px + env(safe-area-inset-bottom));  /* trigger 72px + 16px + 4px gap + iOS home indicator */
  }
}

@media (max-width: 600px) {
  .a11y-pe-toggle {
    right: 16px;
    bottom: calc(96px + env(safe-area-inset-bottom));  /* stacks above 72px trigger + 16px bottom + 8px gap + iOS home indicator */
    font-size: 18px;
    padding: 0.75em 1.1em;
  }
}

/* v12.0.25 Phase 7 - Built In Public dashboard */
.bip-update-marker{display:inline-block;background:rgba(232,68,10,0.12);border:1px solid rgba(232,68,10,0.35);color:var(--orange);font-size:calc(11px * var(--text-scale));font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:2px 9px;margin-right:6px;vertical-align:1px}
.last-updated{font-size:calc(13px * var(--text-scale));color:var(--muted);margin-top:18px;line-height:1.65}
.last-updated a{color:var(--orange);text-decoration:none}
.last-updated a:hover{color:var(--orange2)}
.bip-table-wrap{overflow-x:auto;margin-top:36px;background:var(--card);border:1px solid var(--border)}
.bip-table{width:100%;border-collapse:collapse;font-size:calc(14px * var(--text-scale))}
.bip-table thead th{text-align:left;padding:16px 20px;font-family:var(--font-head);font-weight:800;font-size:calc(12px * var(--text-scale));text-transform:uppercase;letter-spacing:.14em;color:var(--muted);background:var(--bg3);border-bottom:2px solid var(--border)}
.bip-table tbody td{padding:14px 20px;border-bottom:1px solid var(--border);color:rgba(240,240,240,0.85);vertical-align:middle}
.bip-table tbody tr:last-child td{border-bottom:0}
.bip-table tbody tr:hover{background:rgba(255,255,255,0.025)}
.bip-th-page{width:36%}
.bip-th-verify{width:140px;text-align:right}
.bip-th-total{text-align:right;width:90px}
.bip-th-budget{width:42%}
.bip-th-status{width:110px;text-align:center}
.bip-td-page code{font-family:var(--font-body);font-size:calc(13px * var(--text-scale));color:var(--white);background:rgba(255,255,255,0.06);padding:2px 7px;border:1px solid var(--border);font-weight:600;display:inline-block}
.bip-td-page .bip-page-desc{display:block;margin-top:4px;font-size:calc(12px * var(--text-scale));color:var(--muted);font-weight:400}
.bip-score{font-family:var(--font-head);font-weight:800;font-size:calc(17px * var(--text-scale));color:var(--white);letter-spacing:.02em;text-align:center}
.bip-score-perfect{color:var(--orange)}
.bip-score-good{color:var(--white)}
.bip-score-warn{color:#e9b440}
.bip-score-fail{color:#e85a4f}
.bip-td-total{text-align:right;font-weight:600;color:var(--white)}
.bip-td-budget{color:var(--white);font-weight:500}
.bip-td-verify{text-align:right}
.bip-verify-link{font-size:calc(12px * var(--text-scale));color:var(--orange);text-decoration:none;font-weight:600;letter-spacing:.02em;white-space:nowrap}
.bip-verify-link:hover{color:var(--orange2)}
.bip-status{font-family:var(--font-head);font-weight:800;font-size:calc(12px * var(--text-scale));letter-spacing:.12em;text-align:center;padding:5px 0}
.bip-status-pass{color:#3ec07a}
.bip-status-warn{color:#e9b440}
.bip-status-fail{color:#e85a4f}
.bip-deploys{display:flex;flex-direction:column;gap:2px;margin-top:32px;max-width:760px}
.bip-deploy-row{background:var(--card);padding:18px 22px;display:flex;gap:20px;align-items:flex-start;border-left:3px solid var(--orange)}
.bip-deploy-tag{font-family:var(--font-head);font-size:calc(14px * var(--text-scale));font-weight:800;color:var(--orange);letter-spacing:.04em;flex-shrink:0;min-width:80px;padding-top:1px}
.bip-deploy-body{flex:1}
.bip-deploy-title{font-size:calc(14px * var(--text-scale));font-weight:600;color:var(--white);margin-bottom:4px}
.bip-deploy-meta{font-size:calc(13px * var(--text-scale));color:var(--muted);line-height:1.6}
@media(max-width:768px){
  .bip-table thead th{padding:12px 14px;font-size:calc(11px * var(--text-scale))}
  .bip-table tbody td{padding:12px 14px}
  .bip-th-page{width:auto}
  .bip-td-page code{font-size:calc(12px * var(--text-scale))}
  .bip-deploy-row{flex-direction:column;gap:6px;padding:14px 18px}
  .bip-deploy-tag{min-width:0}
}

/* ============================================================
   PASS-48 (v12.0.26): PE toggle horizontal layout on mobile
   ============================================================
   Previously the Plain English toggle sat stacked vertically above
   the accessibility trigger on mobile. With larger text-scale or
   tight viewports the two could visually collide. New rule pins PE
   to the LEFT of the trigger at the same bottom anchor, so it can
   never sit on top of the accessibility button.
   - Trigger on mobile: 72px wide, bottom 16px, right 16px.
   - Gap between PE and trigger: 8px.
   - max-width prevents overflow on narrow viewports (320px etc).
   ============================================================ */
@media (max-width: 768px) {
  .a11y-pe-toggle {
    right: calc(16px + 72px + 8px);
    bottom: calc(16px + env(safe-area-inset-bottom));
    max-width: calc(100vw - 16px - 72px - 8px - 16px);
  }
}

/* ===== v12.1.0 - Trade explainer page (/why-it-costs-what-it-costs) ===== */
/* No-JS fallback: if JS hasn't run, all trade panels stay visible so crawlers
   and JS-disabled visitors still see all 7 trade explainers. Once JS runs, it
   adds `.js-active` to <html> and the hidden attribute starts working normally. */
html:not(.js-active) [data-trade-panel][hidden] { display: block !important; }
html:not(.js-active) .trade-switcher-tabs { display: none; }

.trade-switcher {
  margin: 0 0 32px;
}
.trade-switcher-eyebrow {
  font-size: calc(11px * var(--text-scale));
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--orange);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 9px;
}
.trade-switcher-eyebrow::before {
  content: '';
  width: 16px;
  height: 2px;
  background: var(--orange);
}
.trade-switcher-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
  border-bottom: 1px solid var(--border);
  padding-bottom: 12px;
}
.trade-tab {
  background: var(--card);
  border: 1px solid var(--border);
  color: var(--muted);
  font-family: var(--font-head);
  font-size: calc(14px * var(--text-scale));
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  padding: 9px 16px;
  cursor: pointer;
  transition: color .15s, border-color .15s, background .15s;
  border-radius: 0;
  min-height: 40px;
}
.trade-tab:hover {
  color: var(--white);
  border-color: var(--border2);
  background: #222;
}
.trade-tab[aria-selected="true"] {
  color: var(--white);
  border-color: var(--orange);
  background: rgba(232, 68, 10, 0.12);
  border-top: 3px solid var(--orange);
  padding-top: 7px;
}
.trade-tab:focus-visible {
  outline: 3px solid var(--orange);
  outline-offset: 2px;
}
.trade-panel {
  scroll-margin-top: 80px;
}
.trade-panel-heading {
  font-family: var(--font-head);
  font-size: clamp(calc(26px * var(--text-scale)), calc(3vw * var(--text-scale)), calc(34px * var(--text-scale)));
  font-weight: 800;
  text-transform: uppercase;
  color: var(--white);
  margin: 0 0 18px;
  line-height: 1.1;
}
.trade-panel p {
  margin-bottom: 14px;
}
.trade-panel .pull-quote {
  margin: 24px 0;
}
.trade-panel-divider {
  border: 0;
  border-top: 1px solid var(--border);
  margin: 48px 0 36px;
}
.cowboy-callout {
  background: var(--card);
  border-left: 3px solid var(--orange);
  padding: 24px 28px;
  margin: 32px 0;
  font-size: calc(15px * var(--text-scale));
  color: var(--text);
  line-height: 1.75;
}
.cowboy-callout strong {
  display: block;
  font-family: var(--font-head);
  font-size: calc(15px * var(--text-scale));
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--orange);
  margin-bottom: 8px;
  font-weight: 700;
}
.framework-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin: 28px 0;
}
.framework-list > li {
  background: var(--card);
  border-left: 3px solid var(--border);
  padding: 20px 24px;
  transition: border-left-color .2s;
}
.framework-list > li:hover {
  border-left-color: var(--orange);
}
.framework-list-title {
  font-family: var(--font-head);
  font-size: calc(16px * var(--text-scale));
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white);
  margin-bottom: 6px;
  letter-spacing: .04em;
}
.framework-list-body {
  font-size: calc(14px * var(--text-scale));
  color: var(--muted);
  line-height: 1.7;
  margin: 0;
}
@media (max-width: 768px) {
  .trade-switcher-tabs {
    gap: 4px;
  }
  .trade-tab {
    font-size: calc(13px * var(--text-scale));
    padding: 8px 12px;
  }
  .trade-tab[aria-selected="true"] {
    padding-top: 6px;
  }
  .cowboy-callout {
    padding: 20px 22px;
  }
}
/* High-contrast mode adjustments for new components */
body.hc-mode .trade-tab {
  border-color: var(--white);
  background: #000;
  color: var(--white);
}
body.hc-mode .trade-tab[aria-selected="true"] {
  background: var(--orange);
  color: #000;
  border-color: var(--orange);
}
body.hc-mode .cowboy-callout,
body.hc-mode .framework-list > li {
  background: #000;
  border-left-color: var(--orange);
}
/* ===== End v12.1.0 trade explainer styles ===== */

/* ===== v12.1.1 - Nav explainer button (links the trade explainer page from nav) ===== */
.nav-links .nav-explainer {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: transparent;
  color: var(--orange);
  font-family: var(--font-head);
  font-size: calc(13px * var(--text-scale));
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: 9px 14px 7px;
  min-height: 44px;
  border: 1.5px solid rgba(232, 68, 10, 0.55);
  margin-left: 6px;
  text-shadow: 0 0 12px rgba(232, 68, 10, 0.18);
  box-shadow: inset 0 1px 0 rgba(232, 68, 10, 0.08), 0 0 0 0 rgba(232, 68, 10, 0);
  transition: border-color .15s, background .15s, color .15s, transform .12s, box-shadow .2s;
}
.nav-links .nav-explainer:hover {
  color: var(--white);
  background: rgba(232, 68, 10, 0.14);
  border-color: var(--orange);
  transform: translateY(-1px);
  box-shadow: inset 0 1px 0 rgba(232, 68, 10, 0.12), 0 4px 12px rgba(232, 68, 10, 0.25);
}
.nav-links .nav-explainer:focus-visible {
  outline: 3px solid var(--orange);
  outline-offset: 2px;
}
.nav-links .nav-explainer:active {
  transform: translateY(0);
}

/* Mobile menu variant */
.mobile-menu .mob-explainer {
  background: rgba(232, 68, 10, 0.10);
  color: var(--orange);
  font-family: var(--font-head);
  font-weight: 700;
  text-align: center;
  letter-spacing: .08em;
  text-transform: uppercase;
  border: 1px solid rgba(232, 68, 10, 0.45);
  margin-top: 8px;
  transition: color .15s, background .15s, border-color .15s;
}
.mobile-menu .mob-explainer:hover {
  color: var(--white);
  background: rgba(232, 68, 10, 0.20);
  border-color: var(--orange);
}

/* High-contrast mode adjustments */
body.hc-mode .nav-links .nav-explainer {
  color: var(--orange);
  border-color: var(--orange);
  background: #000;
  text-shadow: none;
}
body.hc-mode .nav-links .nav-explainer:hover {
  background: var(--orange);
  color: #000;
}
body.hc-mode .mobile-menu .mob-explainer {
  border-color: var(--orange);
  background: #000;
  color: var(--orange);
}

/* Hide the desktop explainer button on mobile when the regular nav hides */
@media (max-width: 900px) {
  .nav-links .nav-explainer {
    display: none;
  }
}
/* ===== End v12.1.1 nav explainer styles ===== */

/* ──────────────────────────────────────────
   v12.1.2 - Blog launch (Phase 4 / Pass 49)
   Added: .blog-list, .blog-card, .blog-card-meta,
   .blog-card-title, .blog-card-excerpt, .blog-card-link
   Used on /blog index page only. Blog post pages
   reuse existing .content-max-760 + .section classes. */

.blog-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.blog-card {
  border-top: 1px solid var(--border);
  padding-top: 32px;
  padding-bottom: 16px;
  margin-bottom: 32px;
}

.blog-card:first-child {
  border-top: none;
  padding-top: 0;
}

.blog-card-meta {
  font-family: 'Big Shoulders Display', sans-serif;
  font-size: calc(13px * var(--text-scale));
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 12px;
}

.blog-card-title {
  font-size: calc(28px * var(--text-scale));
  line-height: 1.2;
  margin: 0 0 16px 0;
  font-family: 'Big Shoulders Display', sans-serif;
  font-weight: 800;
}

.blog-card-title a {
  color: inherit;
  text-decoration: none;
  transition: color 0.15s ease;
}

.blog-card-title a:hover,
.blog-card-title a:focus {
  color: var(--orange);
}

.blog-card-excerpt {
  margin: 0 0 16px 0;
  color: var(--text);
}

.blog-card-link {
  font-weight: 600;
  color: var(--orange);
  text-decoration: none;
}

.blog-card-link:hover,
.blog-card-link:focus {
  text-decoration: underline;
}

@media (max-width: 680px) {
  .blog-card-title { font-size: calc(24px * var(--text-scale)); }
  .blog-card { padding-top: 24px; margin-bottom: 24px; }
}

/* ──────────────────────────────────────────
   v12.1.3 - Blog hero images (Phase 4 / Pass 50)
   Added: .blog-hero-image wrapper for blog post hero images.
   Sits between .page-hero-condensed and the first .section
   on each blog post. Constrains to site max-width (1280px). */

.blog-hero-image {
  max-width: 1280px;
  margin: 0 auto;
  padding: 32px 32px 0;
}

.blog-hero-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 4px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
}

@media (max-width: 768px) {
  .blog-hero-image {
    padding: 20px 20px 0;
  }
  .blog-hero-image img {
    border-radius: 2px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
  }
}

/* ──────────────────────────────────────────
   v12.1.4 - Blog post typography (Phase 4 / Pass 51)
   The .blog-post-body wrapper applies proper article
   typography: h2s as section dividers with orange accent
   bar, h3s clearly smaller, paragraphs with proper rhythm,
   visible orange link underlines. Applied via class on
   the .content-max-760 wrapper inside each blog post. */

.blog-post-body {
  font-size: calc(16px * var(--text-scale));
  line-height: 1.75;
  color: var(--text);
}

.blog-post-body > p {
  margin-bottom: 22px;
  color: var(--text);
}

.blog-post-body > p:last-child {
  margin-bottom: 0;
}

.blog-post-body > p.body-lead {
  font-size: calc(20px * var(--text-scale));
  color: var(--white);
  line-height: 1.55;
  margin-bottom: 32px;
  font-weight: 400;
}

/* H2 as major section divider: orange accent bar, top border, generous spacing */
.blog-post-body > h2 {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: calc(30px * var(--text-scale));
  color: var(--white);
  text-transform: uppercase;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-top: 64px;
  margin-bottom: 20px;
  padding-top: 36px;
  border-top: 1px solid var(--border);
  position: relative;
}

.blog-post-body > h2::before {
  content: '';
  position: absolute;
  top: -2px;
  left: 0;
  width: 36px;
  height: 3px;
  background: var(--orange);
}

.blog-post-body > h2:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

.blog-post-body > h2:first-child::before {
  display: none;
}

/* H3 as subsection: smaller, less spacing, no border */
.blog-post-body > h3 {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: calc(20px * var(--text-scale));
  color: var(--white);
  text-transform: uppercase;
  letter-spacing: 0.01em;
  line-height: 1.25;
  margin-top: 40px;
  margin-bottom: 12px;
}

/* Tighten gap when h3 immediately follows h2 (e.g. h2 intro then first h3) */
.blog-post-body > h2 + h3 {
  margin-top: 16px;
}

/* Tighten gap after a heading - paragraph should sit close */
.blog-post-body > h2 + p,
.blog-post-body > h3 + p {
  margin-top: 0;
}

/* Visible orange-underlined links inside blog body */
.blog-post-body a {
  color: var(--orange);
  text-decoration: underline;
  text-decoration-color: rgba(232, 68, 10, 0.45);
  text-underline-offset: 3px;
  transition: text-decoration-color 0.15s;
}

.blog-post-body a:hover,
.blog-post-body a:focus {
  text-decoration-color: var(--orange);
}

@media (max-width: 768px) {
  .blog-post-body > h2 {
    font-size: calc(24px * var(--text-scale));
    margin-top: 48px;
    padding-top: 28px;
  }
  .blog-post-body > h3 {
    font-size: calc(18px * var(--text-scale));
    margin-top: 32px;
  }
  .blog-post-body > p.body-lead {
    font-size: calc(18px * var(--text-scale));
    margin-bottom: 26px;
  }
  .blog-post-body > p {
    margin-bottom: 18px;
  }
}
