:root{
  --navy:#1d3475;
  --royal:#275cb8;
  --blue:#4d86d8;
  --sky:#dfeeff;
  --ice:#eef7ff;
  --porcelain:#fbfdff;
  --mist:#f4f8fc;
  --ink:#13213f;
  --text:#5d6c83;
  --border:#d9e6f2;
  --white:#fff;
  --shadow:0 24px 60px rgba(38,74,123,.12);
  --shadow-soft:0 12px 32px rgba(38,74,123,.08);
  --radius:14px;
  --radius-lg:24px;
  --container:min(1240px,calc(100% - 44px));
  --ease:cubic-bezier(.2,.75,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;background:var(--porcelain);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.62;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{color:inherit}
svg{width:1.1em;height:1.1em;flex:0 0 auto}
.container{width:var(--container);margin-inline:auto;position:relative}
.section{position:relative;padding:72px 0}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;margin:0;color:var(--ink);font-weight:500;letter-spacing:-.03em;line-height:1.08}
h1{font-size:clamp(3.05rem,5.2vw,5.4rem)}
h2{font-size:clamp(2.25rem,3.5vw,3.75rem)}
h3{font-size:1.45rem}
p{margin:0;color:var(--text)}
.lead{font-size:1.08rem;line-height:1.75}
.skip-link{position:fixed;left:14px;top:-80px;z-index:9999;background:#fff;color:var(--ink);padding:12px 16px;border-radius:8px;box-shadow:var(--shadow);transition:top .2s}
.skip-link:focus{top:14px}
.eyebrow{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;font-weight:800;color:var(--royal);margin-bottom:16px}
.section-intro.center{text-align:center;max-width:760px;margin:0 auto 36px}
.section-intro.center p{max-width:650px;margin:18px auto 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:8px;padding:13px 19px;font-size:.82rem;font-weight:800;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s,color .25s,border-color .25s;cursor:pointer}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,var(--navy),var(--royal));color:#fff;box-shadow:0 12px 28px rgba(39,92,184,.22)}
.btn-primary:hover{box-shadow:0 18px 35px rgba(39,92,184,.3)}
.btn-outline{border-color:#a8c3e3;background:#fff;color:var(--navy)}
.btn-outline:hover{border-color:var(--royal);box-shadow:var(--shadow-soft)}
.btn-ghost{background:rgba(255,255,255,.88);border-color:rgba(57,100,167,.23);color:var(--navy);backdrop-filter:blur(10px)}
.btn-lg{padding:15px 22px}
.arrow-link{display:inline-flex;align-items:center;gap:10px;color:var(--navy);font-weight:800;font-size:.84rem;margin-top:28px}
.arrow-link svg,.btn svg{transition:transform .25s var(--ease)}
.arrow-link:hover svg,.btn:hover svg{transform:translateX(4px)}

/* Header */
.site-header{position:fixed;inset:0 0 auto;z-index:1000;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(196,216,237,.8);box-shadow:0 8px 30px rgba(29,52,117,.05);backdrop-filter:blur(16px);transition:box-shadow .25s,background .25s}
.site-header.is-scrolled{background:rgba(255,255,255,.985);box-shadow:0 12px 36px rgba(29,52,117,.1)}
.header-inner{height:64px;display:flex;align-items:center;gap:22px}
.brand{height:52px;width:90px;display:flex;align-items:center;overflow:visible;flex:0 0 auto}
.brand img{width:100%;height:100%;object-fit:contain;object-position:center}
.desktop-nav{display:flex;gap:22px;margin-left:auto;align-items:center}
.desktop-nav a{font-size:.74rem;font-weight:700;color:#44526a;position:relative;padding:21px 0}
.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:10px;height:2px;background:var(--royal);transition:right .3s var(--ease)}
.desktop-nav a:hover,.desktop-nav a.is-active{color:var(--navy)}
.desktop-nav a:hover::after,.desktop-nav a.is-active::after{right:0}
.header-actions{display:flex;align-items:center;gap:11px}
.header-phone{display:flex;align-items:center;gap:8px;color:var(--navy);font-size:.76rem;font-weight:800;white-space:nowrap}
.header-phone svg{color:var(--royal)}
.btn-header{padding:9px 14px;font-size:.7rem}
.menu-toggle{display:none;width:42px;height:42px;border:1px solid var(--border);border-radius:9px;background:#fff;padding:10px;cursor:pointer}
.menu-toggle span{display:block;height:2px;background:var(--navy);margin:4px 0;transition:.25s}
.mobile-panel{display:none}

/* Hero B */
.hero-b{min-height:700px;padding:84px 0 0;position:relative;overflow:hidden;background:#d9e8f5}
.hero-b-bg{position:absolute;inset:64px 0 0;background-image:linear-gradient(90deg,rgba(236,247,255,.24),rgba(241,248,255,.04)),var(--hero-image);background-size:cover;background-position:center 48%;transform:scale(1.015);will-change:transform}
.hero-b-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(245,251,255,.55) 0%,rgba(245,251,255,.18) 43%,rgba(21,49,92,.05) 100%)}
.hero-b-grid{position:absolute;right:-150px;top:30px;width:560px;height:560px;transform:rotate(45deg);opacity:.22;background-image:linear-gradient(#91b8e5 1px,transparent 1px),linear-gradient(90deg,#91b8e5 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,black,transparent 78%)}
.hero-b-inner{min-height:535px;display:flex;align-items:center;justify-content:flex-start;position:relative}
.hero-panel{width:min(590px,55%);padding:40px 42px 38px;background:rgba(250,253,255,.9);border:1px solid rgba(255,255,255,.92);box-shadow:0 30px 70px rgba(26,63,111,.18);backdrop-filter:blur(18px);position:relative;z-index:4;clip-path:polygon(0 0,91% 0,100% 13%,100% 100%,0 100%)}
.hero-panel::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(223,238,255,.22),transparent 40%);pointer-events:none}
.hero-panel::after{content:"";position:absolute;right:-1px;top:-1px;width:120px;height:120px;background:linear-gradient(135deg,rgba(108,155,216,.14),rgba(255,255,255,.02));clip-path:polygon(100% 0,100% 100%,0 0)}
.hero-kicker{display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.12em;font-size:.67rem;font-weight:800;color:var(--royal);position:relative;z-index:2}
.kicker-mark{width:9px;height:9px;border:2px solid var(--royal);transform:rotate(45deg)}
.hero-panel h1{margin:17px 0 18px;max-width:560px;position:relative;z-index:2}
.hero-panel h1 em{font-style:normal;color:var(--navy)}
.hero-panel p{max-width:550px;color:#53657d;font-size:1rem;position:relative;z-index:2}
.hero-buttons{display:flex;gap:11px;flex-wrap:wrap;margin-top:24px;position:relative;z-index:2}
.hero-mini-note{margin-top:20px;font-size:.72rem;color:#67788c;display:flex;align-items:center;gap:8px;position:relative;z-index:2}
.mini-dot{width:7px;height:7px;border-radius:50%;background:#4f8fe0;box-shadow:0 0 0 5px rgba(79,143,224,.12)}
.hero-tile-art{position:absolute;right:-20px;top:70px;width:260px;height:300px;z-index:3;pointer-events:none}
.diamond-tiles{display:grid;grid-template-columns:repeat(3,54px);gap:6px;transform:rotate(45deg) perspective(700px) rotateX(55deg) translateZ(0);transform-origin:center;filter:drop-shadow(0 20px 22px rgba(37,80,139,.18))}
.diamond-tiles i{height:54px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(210,231,250,.85));border:1px solid rgba(76,123,183,.18);box-shadow:inset -8px -8px 18px rgba(79,118,167,.07)}
.material-card{position:absolute;right:10px;bottom:0;width:150px;padding:17px 16px;background:rgba(255,255,255,.9);border:1px solid rgba(188,215,241,.82);box-shadow:var(--shadow-soft);border-radius:12px;display:flex;align-items:center;gap:10px;backdrop-filter:blur(10px)}
.material-card span{font-family:Georgia,serif;font-size:2rem;color:var(--navy)}
.material-card small{color:#65788f;line-height:1.25;font-weight:700;font-size:.65rem}
.hero-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:-6px;z-index:6;padding-bottom:24px}
.hero-trust>div{min-height:78px;background:rgba(255,255,255,.94);border:1px solid rgba(203,221,239,.84);box-shadow:0 15px 30px rgba(29,52,117,.1);border-radius:12px;padding:16px 17px;display:flex;align-items:center;gap:12px;backdrop-filter:blur(10px)}
.hero-trust svg{width:26px;height:26px;color:var(--royal)}
.hero-trust span{display:grid;font-size:.72rem;color:#6b7a8f;line-height:1.25}
.hero-trust strong{font-size:.82rem;color:var(--ink)}

/* Story */
.story-b{background:#fff;overflow:hidden}
.story-b::before{content:"";position:absolute;left:-180px;bottom:-240px;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(182,217,248,.18),transparent 65%)}
.story-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:60px;align-items:center}
.story-copy p{margin-top:18px;max-width:530px}
.story-collage{min-height:450px;position:relative}
.shape-photo{position:absolute;overflow:hidden;margin:0;border:8px solid #fff;box-shadow:var(--shadow)}
.shape-photo img{width:100%;height:100%;object-fit:cover}
.shape-a{width:64%;height:340px;left:14%;top:38px;clip-path:polygon(0 0,100% 0,91% 100%,0 100%)}
.shape-b{width:44%;height:235px;right:0;bottom:5px;clip-path:polygon(14% 0,100% 0,100% 100%,0 100%)}
.story-pattern{position:absolute;left:0;top:10px;width:165px;height:165px;display:grid;grid-template-columns:repeat(2,70px);gap:7px;transform:rotate(45deg);opacity:.88}
.story-pattern span{background:linear-gradient(145deg,#eef7ff,#dcecff);border:1px solid #c5dbef;box-shadow:0 8px 18px rgba(63,112,170,.1)}
.story-stamp{position:absolute;left:3%;bottom:25px;width:145px;height:145px;border-radius:50%;background:#fff;border:1px solid #cfe1f1;box-shadow:var(--shadow-soft);display:grid;place-content:center;text-align:center}
.story-stamp b{font-family:Georgia,serif;font-size:2rem;color:var(--navy)}
.story-stamp span{font-size:.6rem;text-transform:uppercase;letter-spacing:.12em;color:#7e8da1}

/* Services */
.services-b{background:linear-gradient(180deg,#f6fbff,#eef6fd)}
.service-strip{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--border);background:#fff;box-shadow:var(--shadow-soft)}
.service-tile{padding:23px 20px 21px;min-height:220px;border-right:1px solid var(--border);position:relative;transition:background .3s,transform .3s var(--ease),box-shadow .3s}
.service-tile:last-child{border-right:0}
.service-tile:hover{background:#f6fbff;transform:translateY(-7px);box-shadow:0 18px 38px rgba(39,92,184,.11);z-index:2}
.service-count{font-family:Georgia,serif;color:#99b6d5;font-size:.75rem}
.service-icon{width:48px;height:48px;border-radius:50%;background:#edf6ff;color:var(--royal);display:grid;place-items:center;margin:17px 0 14px;border:1px solid #d8e9f8}
.service-icon svg{width:23px;height:23px}
.service-tile h3{font-size:1.1rem;line-height:1.17}
.service-tile p{font-size:.75rem;line-height:1.55;margin-top:10px}
.service-tile>a{position:absolute;left:21px;bottom:19px;width:28px;height:28px;border-radius:50%;border:1px solid #b7d1e8;color:var(--royal);display:grid;place-items:center;transition:.25s}
.service-tile>a:hover{background:var(--royal);color:#fff;border-color:var(--royal)}

/* Projects */
.projects-b{background:#fff}
.projects-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:48px;align-items:center}
.projects-copy p{max-width:450px;margin:20px 0}
.project-meta-b{display:flex;gap:25px;margin:22px 0 24px;padding:14px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.project-meta-b span{display:grid;font-size:.68rem;color:#7b899a}
.project-meta-b strong{font-size:.82rem;color:var(--navy)}
.masonry-b{display:grid;grid-template-columns:1.1fr .8fr .8fr;grid-template-rows:230px 230px;gap:12px}
.masonry-b figure{margin:0;position:relative;overflow:hidden;background:#e3edf5}
.masonry-b img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.masonry-b figure:hover img{transform:scale(1.045)}
.masonry-b figcaption{position:absolute;left:12px;bottom:12px;background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.8);padding:7px 10px;border-radius:6px;font-size:.64rem;font-weight:800;color:var(--navy);backdrop-filter:blur(8px)}
.m1{grid-row:1/3}
.m2{grid-column:2/4}
.m3{grid-column:2}
.m4{grid-column:3}

/* Compare */
.compare-b{padding:0;background:#f1f7fc;overflow:hidden}
.compare-shell{min-height:330px;display:grid;grid-template-columns:1fr 150px 1fr;align-items:center;position:relative}
.compare-shell::before,.compare-shell::after{content:"";position:absolute;width:420px;height:420px;transform:rotate(45deg);border:1px solid rgba(67,115,176,.08)}
.compare-shell::before{left:-240px;top:-190px}.compare-shell::after{right:-250px;bottom:-240px}
.compare-side{padding:50px 30px;position:relative;z-index:2}
.compare-side p{margin:18px 0;max-width:430px}
.compare-side a{display:inline-flex;align-items:center;gap:8px;color:var(--royal);font-size:.8rem;font-weight:800}
.compare-side a:hover svg{transform:translateX(4px)}
.compare-label{text-transform:uppercase;letter-spacing:.12em;font-size:.66rem;font-weight:800;color:var(--royal)}
.compare-vs{display:grid;place-items:center;position:relative;z-index:3}
.compare-vs::before{content:"";width:105px;height:105px;background:#fff;border:1px solid #c7deef;box-shadow:var(--shadow-soft);transform:rotate(45deg);position:absolute}
.compare-vs span{position:relative;z-index:2;font-family:Georgia,serif;font-size:1.7rem;color:var(--navy)}

/* Craft */
.craft-b{background:#fff;padding-top:56px;padding-bottom:56px}
.craft-line{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.craft-line>div{padding:20px 18px;display:flex;align-items:center;justify-content:center;gap:11px;border-right:1px solid var(--border)}
.craft-line>div:last-child{border-right:0}
.craft-line svg{width:24px;height:24px;color:var(--royal)}
.craft-line span{display:grid;font-size:.7rem;color:#78899d;line-height:1.25}
.craft-line strong{color:var(--navy);font-size:.76rem}

/* Applications */
.applications-b{background:linear-gradient(180deg,#f8fbfe,#eff7fd)}
.applications-head{display:grid;grid-template-columns:1fr .8fr;gap:48px;align-items:end;margin-bottom:26px}
.applications-head p{max-width:480px;justify-self:end}
.application-row{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.application-card{margin:0;background:#fff;border:1px solid var(--border);padding:8px 8px 13px;box-shadow:0 9px 24px rgba(47,89,145,.06);transition:transform .3s var(--ease),box-shadow .3s}
.application-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-soft)}
.application-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.application-card figcaption{text-align:center;margin-top:10px;font-size:.7rem;font-weight:800;color:var(--navy)}

/* Proof */
.proof-b{background:#fff}
.proof-grid{display:grid;grid-template-columns:.82fr 1.18fr 1fr;gap:18px}
.proof-card{border:1px solid var(--border);background:#fbfdff;padding:28px 26px;min-height:330px;position:relative;overflow:hidden}
.proof-card h2{font-size:2rem;margin-bottom:20px}
.why-card ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.why-card li{display:flex;align-items:center;gap:9px;color:#53677e;font-size:.78rem}
.why-card li svg{color:var(--royal)}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:22px}
.process-steps>div{display:grid;gap:5px;position:relative;padding-top:46px}
.process-steps>div::before{content:"";position:absolute;top:20px;left:39px;right:-10px;height:1px;background:#c9def1}
.process-steps>div:last-child::before{display:none}
.process-steps span{position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;background:#eef7ff;border:1px solid #cfe3f5;display:grid;place-items:center;color:var(--royal);font-size:.65rem;font-weight:800}
.process-steps strong{font-size:.8rem;color:var(--navy)}
.process-steps small{font-size:.65rem;line-height:1.45;color:#8090a1}
.area-card{background:linear-gradient(145deg,#f8fcff,#eaf5ff)}
.area-list{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:18px;position:relative;z-index:2}
.area-list span{font-size:.72rem;color:#52667c;display:flex;align-items:center;gap:6px}
.area-list svg{color:var(--royal)}
.area-map-art{position:absolute;right:-50px;bottom:-55px;width:240px;height:240px;border-radius:50%;border:1px solid rgba(80,130,190,.16);background:repeating-radial-gradient(circle,rgba(78,125,185,.06) 0 1px,transparent 1px 18px)}
.area-map-art i{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--royal);box-shadow:0 0 0 5px rgba(39,92,184,.09)}
.area-map-art i:nth-child(1){left:35%;top:33%}.area-map-art i:nth-child(2){left:52%;top:46%}.area-map-art i:nth-child(3){left:66%;top:29%}.area-map-art i:nth-child(4){left:45%;top:65%}.area-map-art i:nth-child(5){left:70%;top:59%}

/* FAQ / Estimate */
.faq-estimate-b{background:linear-gradient(180deg,#f4f9fd,#eef6fc)}
.faq-estimate-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:20px;align-items:stretch}
.faq-side{background:#fff;border:1px solid var(--border);padding:32px 30px}
.faq-side h2{font-size:2.4rem;margin-bottom:18px}
.faq-list{border-top:1px solid var(--border)}
.faq-item{border-bottom:1px solid var(--border)}
.faq-item button{width:100%;background:none;border:0;padding:18px 0;display:flex;justify-content:space-between;align-items:center;text-align:left;cursor:pointer;font-size:.79rem;font-weight:800;color:var(--ink);gap:12px}
.faq-item button svg{color:var(--royal);transition:transform .25s}
.faq-item.is-open button svg{transform:rotate(45deg)}
.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s var(--ease)}
.faq-answer>p{overflow:hidden;font-size:.75rem;line-height:1.6}
.faq-item.is-open .faq-answer{grid-template-rows:1fr}
.faq-item.is-open .faq-answer>p{padding-bottom:18px}
.estimate-panel{min-height:520px;background:#fff;border:1px solid var(--border);display:grid;grid-template-columns:.36fr .64fr;overflow:hidden;box-shadow:var(--shadow-soft)}
.estimate-photo{background-image:linear-gradient(180deg,rgba(40,90,150,.02),rgba(20,49,87,.28)),var(--estimate-image);background-size:cover;background-position:center}
.estimate-content{padding:32px 32px 30px}
.estimate-content h2{font-size:2.45rem;margin-bottom:12px}
.estimate-content>p{font-size:.82rem;max-width:650px;margin-bottom:22px}
.form-alert{margin-bottom:18px;padding:11px 13px;border:1px solid #d8a4a4;background:#fff1f1;color:#8f2b2b;font-size:.75rem;border-radius:7px}
.estimate-form{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.field{display:grid;gap:6px}
.field label{font-size:.65rem;font-weight:800;color:#41566e}
.field label span{color:#91a0b0;font-weight:600}
.field input,.field select,.field textarea{width:100%;border:1px solid #cfdeec;background:#fbfdff;color:var(--ink);padding:11px 12px;border-radius:6px;outline:0;transition:border-color .2s,box-shadow .2s;min-height:44px;font-size:.76rem}
.field textarea{resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#6ea1dc;box-shadow:0 0 0 3px rgba(70,133,207,.11)}
.field-wide{grid-column:1/-1}
.upload-field input{padding:8px;background:#f5faff}
.upload-field label{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.btn-submit{width:100%;min-height:48px}
.hp-field{position:absolute!important;left:-9999px!important}

/* Footer */
.site-footer{background:#f9fcff;border-top:1px solid var(--border);padding:38px 0 16px}
.footer-grid{display:grid;grid-template-columns:1.6fr .8fr 1fr 1fr;gap:38px}
.footer-grid>div:not(.footer-brand){display:grid;align-content:start;gap:8px}
.footer-grid h3{font-family:Arial,Helvetica,sans-serif;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--navy);margin-bottom:7px}
.footer-grid a,.footer-grid span,.footer-grid p{font-size:.7rem;color:#66788e}
.footer-grid a:hover{color:var(--royal)}
.footer-brand img{width:110px;height:82px;object-fit:contain;margin-bottom:9px}
.footer-brand p{max-width:270px}
.footer-phone{display:inline-flex!important;align-items:center;gap:7px;margin-top:12px;color:var(--navy)!important;font-weight:800}
.footer-bottom{margin-top:24px;padding-top:15px;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:20px;font-size:.62rem;color:#91a0ae}
.mobile-cta-bar{display:none}

/* Thank you */
.thankyou-page{min-height:calc(100vh - 64px);display:grid;place-items:center;background:linear-gradient(145deg,#f7fbff,#eaf5ff);padding:140px 22px 80px}
.thankyou-shell{width:min(700px,100%);background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);padding:55px;text-align:center}
.thankyou-mark{width:72px;height:72px;border-radius:50%;background:#edf7ff;color:var(--royal);display:grid;place-items:center;margin:0 auto 20px;border:1px solid #cae2f4}
.thankyou-mark svg{width:32px;height:32px}
.thankyou-shell p{max-width:560px;margin:18px auto}
.thankyou-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}
.local-note{font-size:.7rem!important;color:#8896a5!important}

/* Reveal motion */
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
[data-reveal].is-visible{opacity:1;transform:none}

@media (max-width:1150px){
  .desktop-nav{gap:15px}.header-phone span{display:none}.service-strip{grid-template-columns:repeat(3,1fr)}.service-tile{border-bottom:1px solid var(--border)}.service-tile:nth-child(3){border-right:0}.hero-tile-art{right:-80px}.proof-grid{grid-template-columns:1fr 1fr}.area-card{grid-column:1/-1;min-height:280px}.estimate-panel{grid-template-columns:1fr}.estimate-photo{display:none}
}
@media (max-width:920px){
  :root{--container:min(100% - 32px,760px)}
  .desktop-nav,.btn-header{display:none}.menu-toggle{display:block}.header-inner{height:60px}.brand{height:48px;width:82px}.site-header{background:rgba(255,255,255,.98)}
  .mobile-panel{position:fixed;left:16px;right:16px;top:68px;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);padding:18px;display:grid;gap:16px;transform:translateY(-14px);opacity:0;visibility:hidden;transition:.25s var(--ease)}
  .mobile-panel.is-open{transform:none;opacity:1;visibility:visible}.mobile-panel nav{display:grid}.mobile-panel nav a{padding:11px 4px;border-bottom:1px solid #edf2f7;font-size:.82rem;font-weight:800}.mobile-call{display:flex;align-items:center;gap:8px;color:var(--navy);font-weight:800;font-size:.8rem}
  .hero-b{padding-top:74px;min-height:auto}.hero-b-bg{inset:60px 0 0;background-position:62% center}.hero-b-bg::after{background:linear-gradient(90deg,rgba(245,251,255,.7),rgba(245,251,255,.18))}.hero-b-inner{min-height:540px}.hero-panel{width:72%;padding:34px 32px}.hero-tile-art{right:-115px;top:115px;opacity:.75}.hero-trust{grid-template-columns:repeat(2,1fr);padding-bottom:28px}
  .story-grid{grid-template-columns:1fr;gap:34px}.story-copy{max-width:680px}.story-collage{min-height:440px}.story-collage{width:min(650px,100%);margin:auto}.service-strip{grid-template-columns:repeat(2,1fr)}.service-tile:nth-child(3){border-right:1px solid var(--border)}.service-tile:nth-child(2n){border-right:0}
  .projects-grid{grid-template-columns:1fr;gap:38px}.masonry-b{max-width:760px}.compare-shell{grid-template-columns:1fr;min-height:0}.compare-side{text-align:center;padding:44px 26px}.compare-side p{margin-inline:auto}.compare-vs{height:70px}.compare-vs::before{width:75px;height:75px}.compare-vs span{font-size:1.25rem}.craft-line{grid-template-columns:repeat(2,1fr)}.craft-line>div{border-bottom:1px solid var(--border)}.craft-line>div:nth-child(2n){border-right:0}.craft-line>div:last-child{grid-column:1/-1}.applications-head{grid-template-columns:1fr;gap:18px}.applications-head p{justify-self:start}.application-row{grid-template-columns:repeat(3,1fr)}.proof-grid{grid-template-columns:1fr}.area-card{grid-column:auto}.faq-estimate-grid{grid-template-columns:1fr}.estimate-form{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}
}
@media (max-width:620px){
  :root{--container:calc(100% - 24px)}html{scroll-padding-top:64px}.section{padding:52px 0}h1{font-size:clamp(2.55rem,12vw,3.5rem)}h2{font-size:clamp(2rem,9vw,2.75rem)}
  .header-actions{gap:6px}.header-phone{width:40px;height:40px;border:1px solid var(--border);border-radius:8px;display:grid;place-items:center}.brand{width:78px;height:46px}
  .hero-b{padding-top:60px}.hero-b-bg{inset:60px 0 0;background-position:68% center}.hero-b-bg::after{background:linear-gradient(180deg,rgba(247,252,255,.72),rgba(244,250,255,.38) 58%,rgba(25,53,86,.1))}.hero-b-inner{min-height:600px;align-items:flex-start;padding-top:30px}.hero-panel{width:100%;padding:28px 22px 26px;clip-path:none;background:rgba(251,254,255,.93)}.hero-panel p{font-size:.92rem}.hero-buttons{display:grid}.hero-buttons .btn{width:100%}.hero-mini-note{font-size:.65rem}.hero-tile-art{display:none}.hero-trust{grid-template-columns:1fr 1fr;gap:8px;margin-top:-14px}.hero-trust>div{min-height:72px;padding:11px}.hero-trust svg{width:22px;height:22px}
  .story-collage{min-height:370px}.shape-a{width:77%;height:280px;left:7%}.shape-b{width:47%;height:190px}.story-pattern{width:110px;height:110px;grid-template-columns:repeat(2,46px)}.story-stamp{width:110px;height:110px;left:0}.story-stamp b{font-size:1.5rem}
  .service-strip{grid-template-columns:1fr}.service-tile{border-right:0!important;min-height:200px}.masonry-b{grid-template-columns:1fr 1fr;grid-template-rows:260px 175px 175px}.m1{grid-column:1/3;grid-row:1}.m2{grid-column:1/3;grid-row:2}.m3{grid-column:1;grid-row:3}.m4{grid-column:2;grid-row:3}.project-meta-b{flex-direction:column;gap:8px}
  .craft-line{grid-template-columns:1fr}.craft-line>div{border-right:0}.craft-line>div:last-child{grid-column:auto}.application-row{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.application-card{min-width:74%;scroll-snap-align:start}.proof-card{padding:24px 20px}.process-steps{grid-template-columns:1fr 1fr;gap:20px}.process-steps>div::before{display:none}.estimate-content{padding:24px 20px}.estimate-form{grid-template-columns:1fr}.field-wide{grid-column:auto}.faq-side{padding:26px 20px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column}.mobile-cta-bar{position:fixed;display:grid;grid-template-columns:1fr 1fr;left:10px;right:10px;bottom:10px;z-index:995;background:#fff;border:1px solid var(--border);box-shadow:0 12px 35px rgba(28,58,100,.18);border-radius:10px;overflow:hidden}.mobile-cta-bar a{min-height:50px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:.76rem;font-weight:800;color:var(--navy)}.mobile-cta-bar a:last-child{background:linear-gradient(135deg,var(--navy),var(--royal));color:#fff}.site-footer{padding-bottom:82px}.thankyou-shell{padding:38px 22px}
}

/* V1.1 spacing QA: compact header + normalized vertical rhythm */
section[id]{scroll-margin-top:72px}
.site-header .container{min-height:0}
.story-b,.services-b,.projects-b,.craft-b,.applications-b,.proof-b,.faq-estimate-b{margin:0}
.section:first-child{margin-top:0}
.section:last-child{margin-bottom:0}
@media (max-width:920px){section[id]{scroll-margin-top:64px}}
@media (max-width:620px){section[id]{scroll-margin-top:60px}.header-inner{height:58px}.mobile-panel{top:66px}.hero-b-bg{inset:58px 0 0}.hero-b{padding-top:58px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0ms!important}[data-reveal]{opacity:1!important;transform:none!important}}
