:root{--bg:#06111d;--panel:#091827;--panel2:#0b1d2d;--line:#193650;--text:#eef7ff;--muted:#8ea4b9;--blue:#25a9ff;--cyan:#55ddff;--violet:#7d5cff;--green:#39e4a4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(55,130,180,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(55,130,180,.035) 1px,transparent 1px);background-size:72px 72px;z-index:-1}.topline{height:30px;background:#040c14;border-bottom:1px solid #102638;color:#6f91aa;display:flex;justify-content:space-between;align-items:center;padding:0 5%;font-size:9px;letter-spacing:2px}.header{height:82px;background:rgba(5,16,28,.94);backdrop-filter:blur(16px);display:flex;align-items:center;padding:0 4%;gap:35px;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(80,160,210,.12)}.brand{width:240px;text-decoration:none;line-height:.8}.brand-main,.footer-brand .brand-main{display:block;font-family:'Space Grotesk';font-size:42px;font-weight:700;letter-spacing:-4px;background:linear-gradient(90deg,#1ea9ff,#8c64ff);-webkit-background-clip:text;color:transparent}.brand-sub{display:block;font-size:12px;letter-spacing:6px;color:#f2f7fb;font-weight:700;margin-top:7px}.brand-tag{display:block;color:#5b8aa7;font-size:7px;letter-spacing:1.7px;margin-top:7px}.nav{display:flex;align-items:center;gap:25px;flex:1;justify-content:center}.nav a{color:#aebdca;text-decoration:none;font-size:13px;position:relative;padding:31px 0}.nav a:hover,.nav a.active{color:#fff}.nav a.active:after{content:"";height:2px;background:linear-gradient(90deg,var(--cyan),var(--violet));position:absolute;bottom:20px;left:0;right:0}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;text-decoration:none;border-radius:10px;font-weight:700}.header-cta{padding:14px 18px;border:1px solid #246da8;color:#eef8ff;font-size:13px;background:linear-gradient(135deg,rgba(20,118,190,.25),rgba(108,66,210,.18))}.header-cta span,.btn span{font-size:20px}.menu{display:none}.hero{min-height:760px;position:relative;overflow:hidden;border-bottom:1px solid #17334a}.hero-visual{position:absolute;inset:0;background-image:url('assets/hero-clean.png');background-size:cover;background-position:center bottom;filter:saturate(.98)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,13,23,.86) 0%,rgba(3,13,23,.54) 32%,rgba(3,13,23,.05) 72%),linear-gradient(0deg,rgba(3,13,23,.9),transparent 35%)}.hero-content{position:relative;z-index:2;width:min(650px,88%);padding:130px 0 80px 7%}.eyebrow,.section-kicker{color:#75b4d5;letter-spacing:3px;font-size:10px;font-weight:700}.eyebrow span{display:inline-block;width:28px;height:1px;background:var(--cyan);vertical-align:middle;margin-right:10px}.hero h1{font-family:'Space Grotesk';font-size:clamp(52px,6.1vw,92px);line-height:.94;letter-spacing:-4px;margin:24px 0}.hero h1 em{font-style:normal;color:var(--cyan)}.hero p{font-size:17px;line-height:1.7;color:#c1cfdb;max-width:580px}.hero-actions{display:flex;gap:14px;margin-top:32px}.btn{padding:16px 23px;font-size:14px}.btn.primary{color:white;background:linear-gradient(110deg,#159cf2,#6356ee);box-shadow:0 12px 40px rgba(32,120,240,.24)}.btn.ghost{border:1px solid #38566f;color:#d9e8f3;background:rgba(5,15,26,.5)}.hero-note{margin-top:15px;color:#7290a5;font-size:11px;letter-spacing:.5px}.hero-metrics{position:absolute;z-index:3;left:6.5%;bottom:32px;display:flex;gap:0;background:rgba(4,14,24,.58);backdrop-filter:blur(10px);border:1px solid rgba(80,145,185,.18);border-radius:14px;overflow:hidden}.hero-metrics div{padding:17px 27px;border-right:1px solid rgba(100,150,180,.18)}.hero-metrics div:last-child{border:0}.hero-metrics strong{display:block;color:#6fd6ff;font-family:'Space Grotesk';font-size:24px}.hero-metrics span{font-size:10px;color:#8ea3b4}.section{padding:110px 7%;position:relative}.intro{background:linear-gradient(180deg,#071421,#06111d)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:32px}.section h2{font-family:'Space Grotesk';font-size:clamp(42px,5vw,70px);line-height:1;letter-spacing:-3px;margin:18px 0}.section h2 span,.csi-title span,.showcase-copy h2 span,.industries h2 span,.quote h2 span{color:var(--cyan)}.lead{font-size:22px;line-height:1.55;color:#dbe9f4}.intro p:not(.lead){color:var(--muted);line-height:1.8}.text-link{display:inline-block;margin-top:18px;color:#75d8ff;text-decoration:none;font-weight:700}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:48px}.section-head>p,.csi-title>p{max-width:390px;color:var(--muted);line-height:1.7}.services{background:#071725}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{min-height:270px;border:1px solid #17344a;background:linear-gradient(145deg,#0a1b2b,#071421);border-radius:16px;padding:30px;position:relative;overflow:hidden;transition:.3s}.service-card:after{content:"";position:absolute;width:180px;height:180px;right:-100px;bottom:-100px;border-radius:50%;background:rgba(42,175,255,.12);filter:blur(15px)}.service-card:hover{transform:translateY(-6px);border-color:#28678e}.service-card.featured{background:linear-gradient(145deg,#0c2639,#081725)}.num{color:#3d88ae;font-size:11px;letter-spacing:2px}.service-card h3{font-family:'Space Grotesk';font-size:25px;margin:45px 0 12px}.service-card p{color:#90a7b8;line-height:1.65;font-size:14px}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:22px}.chips span{border:1px solid #1b3b51;border-radius:20px;padding:6px 9px;color:#78a1b8;font-size:9px}.csi{background:radial-gradient(circle at 75% 20%,rgba(30,122,180,.13),transparent 30%),#06111d}.csi-title{display:flex;justify-content:space-between;align-items:end;gap:50px}.division-grid{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #19364b;border-left:1px solid #19364b;margin-top:50px}.division-grid div{min-height:110px;padding:20px;border-right:1px solid #19364b;border-bottom:1px solid #19364b;background:rgba(8,24,38,.55);transition:.2s}.division-grid div:hover{background:#0b2235}.division-grid b{display:block;color:#45c8ff;font-size:11px;letter-spacing:2px;margin-bottom:25px}.division-grid span{font-size:12px;color:#c2d1dc}.showcase{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center;background:#071725}.showcase-copy p{color:#91a8ba;line-height:1.8}.value-list{margin-top:35px}.value-list>div{display:flex;gap:18px;padding:16px 0;border-top:1px solid #18354a}.value-list b{color:#4bcaff;font-size:11px}.value-list span{font-size:13px;color:#8ea4b6}.value-list strong{color:#eef7ff}.showcase-frame{border:1px solid #244b66;border-radius:18px;background:#061522;box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:hidden}.frame-top,.frame-foot{height:54px;display:flex;justify-content:space-between;align-items:center;padding:0 20px;border-bottom:1px solid #1b394f;font-size:9px;letter-spacing:2px;color:#6e9ab4}.frame-top .live{color:#5ce8c1}.blueprint{height:430px;position:relative;background-image:linear-gradient(rgba(42,139,190,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(42,139,190,.08) 1px,transparent 1px);background-size:42px 42px;overflow:hidden}.blueprint:before{content:"";position:absolute;inset:45px;background:linear-gradient(90deg,transparent 49.7%,#2b789b 50%,transparent 50.3%),linear-gradient(0deg,transparent 49.7%,#2b789b 50%,transparent 50.3%);opacity:.6}.bp-room{position:absolute;border:2px solid;font-family:'Space Grotesk';font-size:11px;padding:12px;background:rgba(5,16,27,.68)}.bp-room small{color:#9fc0d1}.r1{left:10%;top:18%;width:33%;height:29%;border-color:#28aaff;color:#49c8ff}.r2{left:48%;top:18%;width:30%;height:29%;border-color:#40e5a4;color:#5cebb1}.r3{left:10%;top:55%;width:38%;height:27%;border-color:#9b73ff;color:#ad8cff}.r4{left:55%;top:55%;width:30%;height:27%;border-color:#ff6c78;color:#ff8a93}.bp-line{position:absolute;left:25%;right:22%;top:49%;height:2px;background:linear-gradient(90deg,#27b4ff,#8b63ff,#3ee5aa);box-shadow:0 0 22px rgba(50,180,255,.5)}.frame-foot{border:0}.frame-foot strong{color:#d8e9f4;letter-spacing:1px}.process{background:#06111d}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #19364b;border-left:1px solid #19364b}.process-grid>div{padding:32px 26px;min-height:240px;border-right:1px solid #19364b;border-bottom:1px solid #19364b}.process-grid span{font-size:10px;color:#43c8ff}.process-grid h3{font-family:'Space Grotesk';font-size:24px;margin-top:45px}.process-grid p{color:#8da5b8;line-height:1.7;font-size:13px}.industries{background:linear-gradient(120deg,#081a29,#06111d)}.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:45px}.industry-grid div{padding:25px;border:1px solid #1b3b52;background:#091a29;font-family:'Space Grotesk';font-size:20px}.industry-grid small{display:block;color:#7893a7;font-family:'DM Sans';font-size:11px;margin-top:9px}.video{padding-top:30px;background:#06111d}.video-card{border:1px solid #193d57;background:#071a2a;border-radius:22px;overflow:hidden;display:grid;grid-template-columns:.7fr 1.3fr}.video-copy{padding:55px}.video-copy p{color:#91a8b9;line-height:1.7}.video-meta{display:flex;justify-content:space-between;gap:20px;margin-top:28px;padding-top:16px;border-top:1px solid #193d57;color:#5f91aa;font-size:9px;letter-spacing:2px}.video-wrap video{outline:none}.contact-details{margin-top:28px;border-top:1px solid #193d57}.contact-details a{display:block;color:#dcecf6;text-decoration:none;padding:15px 0;border-bottom:1px solid #193d57;font-size:13px;line-height:1.55}.contact-details span{display:block;color:#5c9ab8;font-size:8px;letter-spacing:2px;margin-bottom:4px}.file-field{display:flex;align-items:center;gap:15px;border:1px dashed #2a5873;background:#06131f;border-radius:10px;padding:14px 16px;margin-bottom:12px;cursor:pointer;transition:.2s}.file-field:hover{border-color:#35bdf7;background:#071a29}.file-field input{display:none}.file-field span{flex:1}.file-field b{display:block;color:#e8f5fb;font-size:13px}.file-field small{display:block;color:#708da2;font-size:10px;margin-top:4px}.file-field>strong{font-size:24px;color:#58d5ff;font-weight:400}.video-wrap{min-height:420px;background:#020a11}.video-wrap video{width:100%;height:100%;object-fit:cover;display:block}.quote{padding-top:70px;padding-bottom:120px}.quote-panel{border:1px solid #23506c;background:linear-gradient(135deg,#0a2032,#07131f);border-radius:22px;padding:55px;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.quote-panel p{color:#91a7b8;line-height:1.7}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}input,select,textarea{width:100%;border:1px solid #1e3f55;background:#06121e;color:#e8f3fa;border-radius:9px;padding:15px;font-family:inherit;outline:0}input:focus,select:focus,textarea:focus{border-color:#32b9f5}textarea{resize:vertical;margin-bottom:12px}.form-msg{font-size:11px;color:#62dbb3;margin-top:12px;min-height:15px}footer{padding:65px 7% 35px;border-top:1px solid #19364b;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:50px;position:relative}.footer-brand .brand-main{font-size:45px}.footer-brand .brand-sub{font-size:11px}.footer-brand p,footer p{color:#748ea2;font-size:12px}footer b{display:block;color:#dbeaf3;font-size:12px;margin-bottom:18px}footer a{display:block;color:#718ba0;text-decoration:none;font-size:12px;margin:10px 0}.muted{line-height:1.6}.copyright{grid-column:1/-1;border-top:1px solid #17344a;padding-top:22px;color:#526f84;font-size:10px}.header.scrolled{box-shadow:0 8px 35px rgba(0,0,0,.3)}@media(max-width:1100px){.nav{gap:15px}.nav a{font-size:12px}.brand{width:190px}.division-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:850px){.topline{display:none}.header{height:74px;padding:0 5%;justify-content:space-between}.brand{width:auto}.brand-main{font-size:32px}.brand-sub{font-size:9px}.brand-tag{display:none}.nav{display:none;position:absolute;top:74px;left:0;right:0;background:#06111d;border-bottom:1px solid #17364d;flex-direction:column;padding:20px;gap:0}.nav.open{display:flex}.nav a{padding:15px;width:100%}.nav a.active:after{bottom:7px}.header-cta{display:none}.menu{display:flex;flex-direction:column;gap:5px;background:none;border:0}.menu i{display:block;width:24px;height:2px;background:#cfe4ef}.hero{min-height:720px}.hero-content{padding:95px 6% 170px}.hero h1{font-size:55px;letter-spacing:-3px}.hero-visual{background-position:63% bottom}.hero-overlay{background:linear-gradient(90deg,rgba(3,13,23,.92),rgba(3,13,23,.62)),linear-gradient(0deg,rgba(3,13,23,.9),transparent 55%)}.hero-metrics{left:5%;right:5%;bottom:20px;overflow:auto}.hero-metrics div{min-width:130px;padding:13px 18px}.intro-grid,.showcase,.quote-panel,.video-card{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.section{padding:80px 6%}.division-grid{grid-template-columns:repeat(3,1fr)}.process-grid{grid-template-columns:1fr 1fr}.industry-grid{grid-template-columns:1fr 1fr}.video-wrap{min-height:300px}.quote-panel{padding:35px;gap:20px}footer{grid-template-columns:1fr 1fr}}@media(max-width:520px){.hero h1{font-size:43px}.hero p{font-size:14px}.hero-actions{flex-direction:column;align-items:flex-start}.section h2{font-size:42px}.section-head,.csi-title{display:block}.section-head>p,.csi-title>p{margin-top:15px}.service-grid,.division-grid,.process-grid,.industry-grid{grid-template-columns:1fr}.hero-metrics{display:grid;grid-template-columns:1fr 1fr}.hero-metrics div{border-bottom:1px solid rgba(100,150,180,.18)}.form-row{grid-template-columns:1fr}.quote-panel{padding:25px}footer{grid-template-columns:1fr 1fr;padding:50px 6% 25px}.footer-brand{grid-column:1/-1}}


/* Final visual cleanup */
.hero-overlay{background:linear-gradient(90deg,rgba(3,13,23,.985) 0%,rgba(3,13,23,.94) 27%,rgba(3,13,23,.52) 48%,rgba(3,13,23,.06) 78%),linear-gradient(0deg,rgba(3,13,23,.88),transparent 40%)}
.nav a{position:relative;color:#9fb0bf;text-decoration:none}
.nav a.active{color:#f2f8fc}
.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-18px;height:2px;background:linear-gradient(90deg,#38c8ff,#8a66ff);box-shadow:0 0 12px rgba(56,200,255,.35)}
.showreel-video{pointer-events:none;user-select:none;-webkit-user-select:none}
.video-wrap{position:relative;overflow:hidden}
.video-wrap:after{content:"";position:absolute;inset:0;pointer-events:none}
.video-label{margin-top:28px;padding-top:16px;border-top:1px solid #193d57;color:#5f91aa;font-size:9px;letter-spacing:2px}


/* Final navigation + video presentation */
.nav a.active:after{bottom:20px;height:2px;}
.showreel-video{pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;outline:none;}
.video-wrap{position:relative;overflow:hidden;}
.video-wrap:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:transparent;}
.video-wrap video::-webkit-media-controls{display:none!important;}
.video-wrap video::-webkit-media-controls-enclosure{display:none!important;}
.video-wrap video::-webkit-media-controls-panel{display:none!important;}
.video-wrap video::-webkit-media-controls-play-button{display:none!important;}
.video-wrap video::-webkit-media-controls-timeline{display:none!important;}
.video-wrap video::-webkit-media-controls-current-time-display{display:none!important;}
.video-wrap video::-webkit-media-controls-time-remaining-display{display:none!important;}
.video-wrap video::-webkit-media-controls-mute-button{display:none!important;}
.video-wrap video::-webkit-media-controls-volume-slider{display:none!important;}
.video-wrap video::-webkit-media-controls-fullscreen-button{display:none!important;}

.process-visual{margin-top:42px;border:1px solid #1d4863;border-radius:20px;overflow:hidden;background:#06131f;box-shadow:0 30px 80px rgba(0,0,0,.28)}.process-visual img{display:block;width:100%;height:auto}.process-visual:after{content:"";display:block;height:1px;background:linear-gradient(90deg,transparent,#2bbdff,#7d5cff,transparent);opacity:.55}


/* Premium architectural theme + upgraded process section */
:root{--bg:#071019;--panel:#0b1723;--panel2:#0f1e2b;--line:#234055;--text:#f4f7fa;--muted:#9aabba;--blue:#1fa7f5;--cyan:#58d9ff;--violet:#6174ff;--green:#43d8ad;--steel:#c8d5df}
body{background:radial-gradient(circle at 78% -8%,rgba(40,112,155,.16),transparent 28%),radial-gradient(circle at 8% 35%,rgba(24,75,110,.12),transparent 24%),var(--bg)}
body:before{background-image:linear-gradient(rgba(89,153,188,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(89,153,188,.028) 1px,transparent 1px);background-size:80px 80px}
.topline{background:#050d14;border-color:rgba(95,156,190,.16);color:#7595aa}
.header{background:rgba(5,14,23,.88);border-bottom-color:rgba(105,173,210,.15);box-shadow:0 12px 45px rgba(0,0,0,.18)}
.nav a{color:#aebbc5}.nav a:hover,.nav a.active{color:#fff}.nav a.active:after{background:var(--cyan);box-shadow:0 0 14px rgba(88,217,255,.3)}
.header-cta{border-color:#2876a8;background:linear-gradient(135deg,rgba(20,137,207,.22),rgba(65,83,190,.14));box-shadow:0 10px 28px rgba(0,0,0,.15)}
.btn.primary{background:linear-gradient(110deg,#159ff0,#4e72ff);box-shadow:0 14px 35px rgba(28,133,218,.2)}
.btn.ghost{background:rgba(7,18,29,.52);border-color:#3a566b}
.hero{border-bottom-color:#20394c}.hero-overlay{background:linear-gradient(90deg,rgba(3,12,20,.97) 0%,rgba(3,12,20,.91) 29%,rgba(3,12,20,.46) 53%,rgba(3,12,20,.04) 79%),linear-gradient(0deg,rgba(3,12,20,.88),transparent 40%)}
.section{background-color:transparent}.intro{background:linear-gradient(180deg,#09151f,#071019)}.services{background:linear-gradient(180deg,#091722,#08131e)}
.service-card{background:linear-gradient(145deg,#0d1d2a,#09151f);border-color:#1f3b4e;box-shadow:0 18px 50px rgba(0,0,0,.12)}.service-card.featured{background:linear-gradient(145deg,#102536,#0a1722);border-color:#2a5871}.service-card:hover{border-color:#347da4;box-shadow:0 22px 55px rgba(0,0,0,.2)}
.csi{background:radial-gradient(circle at 75% 20%,rgba(38,133,177,.12),transparent 30%),#071019}.division-grid div{background:rgba(10,26,39,.66);border-color:#1d394b}.division-grid div:hover{background:#0e2433}
.industries{background:linear-gradient(120deg,#0a1a27,#071019)}.industry-grid div{background:linear-gradient(145deg,#0c1d2b,#09151f);border-color:#1f3e51;box-shadow:0 15px 35px rgba(0,0,0,.12)}
.video{background:linear-gradient(180deg,#071019,#091722)}.video-card{background:linear-gradient(145deg,#0c1d2b,#08131d);border-color:#21455b;box-shadow:0 25px 70px rgba(0,0,0,.2)}
.quote-panel{background:linear-gradient(135deg,#0d2232,#08131e);border-color:#2a536b;box-shadow:0 25px 75px rgba(0,0,0,.2)}
input,select,textarea{background:#07131e;border-color:#234456}input:focus,select:focus,textarea:focus{border-color:#47c9f7;box-shadow:0 0 0 3px rgba(71,201,247,.08)}
footer{background:#050d14;border-top-color:#1b3547}

.process-premium{background:radial-gradient(circle at 72% 12%,rgba(39,130,174,.13),transparent 28%),linear-gradient(180deg,#08141f,#071019)}
.process-layout{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(0,1.7fr);gap:34px;align-items:stretch;margin-top:46px}
.process-steps{display:flex;flex-direction:column;gap:10px}
.process-step{display:grid;grid-template-columns:52px 1fr;gap:16px;padding:17px 18px;border:1px solid rgba(54,94,117,.65);background:linear-gradient(145deg,rgba(14,32,46,.9),rgba(8,20,31,.88));border-radius:14px;transition:.25s}
.process-step:hover{transform:translateX(4px);border-color:#3480a7;background:linear-gradient(145deg,rgba(17,41,57,.95),rgba(9,23,34,.95))}
.process-step>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid #2c7fa7;background:radial-gradient(circle,#103247,#07141f);color:var(--cyan);font-family:'Space Grotesk';font-weight:700;font-size:12px;box-shadow:0 0 20px rgba(52,183,236,.12)}
.process-step h3{font-family:'Space Grotesk';font-size:17px;margin:1px 0 6px;color:#f0f6fa}.process-step p{margin:0;color:#91a7b7;font-size:12px;line-height:1.55}
.process-promise{margin-top:auto;padding:18px 20px;border:1px solid #2b7396;border-radius:14px;background:linear-gradient(100deg,rgba(20,125,167,.14),rgba(74,93,202,.08));display:flex;justify-content:space-between;gap:16px;align-items:center}.process-promise strong{color:#eaf7fc;font-family:'Space Grotesk';font-size:14px}.process-promise span{color:#7fa4b8;font-size:11px}
.process-dashboard{margin:0;border:1px solid #2a6585;border-radius:20px;overflow:hidden;background:#06121c;box-shadow:0 28px 80px rgba(0,0,0,.34);align-self:stretch}.process-dashboard img{width:100%;height:100%;object-fit:cover;display:block}.process-dashboard:after{display:none}
@media(max-width:950px){.process-layout{grid-template-columns:1fr}.process-dashboard{order:-1}.process-steps{display:grid;grid-template-columns:1fr 1fr}.process-promise{grid-column:1/-1}}
@media(max-width:560px){.process-steps{grid-template-columns:1fr}.process-promise{grid-column:auto;display:block}.process-promise span{display:block;margin-top:5px}.process-step{grid-template-columns:46px 1fr}.process-dashboard{border-radius:15px}.process-dashboard img{height:auto;object-fit:contain}}


/* SAAS PREMIUM FINAL THEME */
:root{--bg:#06101a;--panel:#0a1825;--panel2:#0d2030;--line:#24465b;--text:#f5f8fb;--muted:#9cafbd;--blue:#1aa9f4;--cyan:#56ddff;--violet:#6575ff;--green:#45d9b0;--steel:#d3dde5}
body{background:radial-gradient(circle at 78% 0%,rgba(36,125,180,.16),transparent 26%),radial-gradient(circle at 15% 30%,rgba(45,85,125,.10),transparent 25%),#06101a}
.topline{height:28px;background:#040a10;color:#7894a8;border-bottom:1px solid rgba(93,153,187,.16)}
.header{height:84px;background:rgba(4,12,20,.82);backdrop-filter:blur(20px);border-bottom:1px solid rgba(97,166,207,.14)}
.brand-main{background:linear-gradient(100deg,#24b4ff,#7b69ff)}
.nav{gap:30px}.nav a{font-size:13px;letter-spacing:.15px}.nav a.active:after{bottom:20px;background:linear-gradient(90deg,#42d6ff,#6677ff);height:2px}
.header-cta{padding:14px 21px;border-radius:12px;background:linear-gradient(135deg,rgba(17,143,218,.28),rgba(91,77,216,.20));border-color:#2e83b8}
.hero{min-height:690px;border-bottom:1px solid #1e3b50;background:#06101a}
.hero-visual{background-image:url('assets/hero-premium.png');background-size:auto 100%;background-repeat:no-repeat;background-position:right center;filter:saturate(1.02) contrast(1.02)}
.hero-overlay{background:linear-gradient(90deg,rgba(3,11,18,.995) 0%,rgba(3,11,18,.98) 24%,rgba(3,11,18,.78) 39%,rgba(3,11,18,.22) 58%,rgba(3,11,18,.03) 82%),linear-gradient(0deg,rgba(3,11,18,.78),transparent 32%)}
.hero-content{width:min(650px,88%);padding:112px 0 90px 6.5%}.hero h1{font-size:clamp(55px,6vw,86px);letter-spacing:-4px;line-height:.94;margin:22px 0}.hero h1 em{background:linear-gradient(90deg,#42d6ff,#70a8ff);-webkit-background-clip:text;color:transparent}.hero p{font-size:16px;max-width:540px;color:#c6d4de}.hero-actions{margin-top:30px}.hero-note{color:#89a4b7}
.intro,.services,.csi,.process,.industries,.video,.quote{background:transparent}.section{padding:112px 6.5%}.section-kicker{color:#66d7fa}.section h2{letter-spacing:-3.5px}.intro{background:linear-gradient(180deg,#081521,#06101a)}
.service-grid{gap:18px}.service-card{border-radius:18px;background:linear-gradient(145deg,rgba(13,31,45,.94),rgba(7,17,27,.98));border-color:#214258;min-height:285px;box-shadow:0 20px 60px rgba(0,0,0,.16)}.service-card:hover{transform:translateY(-7px);border-color:#3a89b3;box-shadow:0 28px 70px rgba(0,0,0,.24)}.service-card h3{font-size:24px}.chips span{border-color:#2b4e63;color:#8db3c7}
.division-grid{margin-top:44px}.division-grid div{background:rgba(9,25,38,.66)}
.process-premium{background:radial-gradient(circle at 75% 0%,rgba(28,115,166,.16),transparent 30%),linear-gradient(180deg,#07131f,#06101a)}.process-layout{grid-template-columns:minmax(330px,.64fr) minmax(0,1.8fr);gap:38px;margin-top:50px}.process-step{padding:18px;border-radius:16px;background:linear-gradient(145deg,rgba(12,29,43,.95),rgba(7,17,27,.95));border-color:#23465b}.process-step>span{border-color:#2b8ab4;background:radial-gradient(circle,#103c53,#07141e)}.process-dashboard{border-radius:22px;border-color:#2e6f91;box-shadow:0 32px 90px rgba(0,0,0,.38)}.process-dashboard img{object-fit:cover}
.industries{background:linear-gradient(180deg,#07131f,#06101a)}.industry-grid div{border-radius:16px;background:linear-gradient(145deg,#0c1e2c,#08151f);padding:28px;border-color:#23465b}
.video-card{border-radius:22px;background:linear-gradient(145deg,#0b1d2b,#07131e);border-color:#234a61}.video-wrap{background:#030a10}
.quote-panel{border-radius:24px;background:linear-gradient(145deg,#0d2232,#08131e);border-color:#2a5973}
footer{background:#040b12;border-top-color:#1b3c51}
@media(max-width:850px){.hero{min-height:760px}.hero-visual{background-size:auto 100%;background-position:72% center}.hero-overlay{background:linear-gradient(90deg,rgba(3,11,18,.985),rgba(3,11,18,.82)),linear-gradient(0deg,rgba(3,11,18,.9),transparent)}.hero-content{padding:95px 6% 120px}.section{padding:85px 6%}}
@media(max-width:520px){.hero-visual{background-size:auto 80%;background-position:75% 55%}.hero-content{padding-top:70px}.hero h1{font-size:45px}}

/* FINAL HOMEPAGE POLISH — SAAS ESTIMATORS */
.topline{display:none!important}
.header{height:86px;padding:0 4.5%;gap:28px;background:rgba(3,11,18,.94);border-bottom:1px solid rgba(85,174,220,.18)}
.brand{width:235px}
.brand-main{font-size:40px}.brand-sub{font-size:11px;letter-spacing:5.5px}.brand-tag{font-size:6.5px;margin-top:6px}
.nav{gap:30px}.nav a{padding:32px 0;font-size:13px}.nav a.active:after{bottom:21px;height:2px}
.header-cta{display:none!important}
.hero{min-height:650px;height:min(650px,calc(100vh - 86px));max-height:720px;background:#06101a}
.hero-visual{background-image:url('assets/hero-home-clean.png');background-size:auto 100%;background-position:right center;background-repeat:no-repeat;filter:saturate(1.03) contrast(1.03)}
.hero-overlay{background:linear-gradient(90deg,rgba(3,11,18,.985) 0%,rgba(3,11,18,.97) 22%,rgba(3,11,18,.75) 39%,rgba(3,11,18,.20) 61%,rgba(3,11,18,.02) 83%),linear-gradient(0deg,rgba(3,11,18,.82),transparent 42%)}
.hero-content{width:min(620px,88%);padding:92px 0 70px 6.5%}
.hero h1{font-size:clamp(52px,5.7vw,82px);line-height:.94;letter-spacing:-3.8px;margin:20px 0 20px}
.hero p{font-size:15.5px;line-height:1.65;max-width:500px;color:#c9d6df}
.hero-actions{margin-top:27px}.hero-note{margin-top:13px;color:#8da7b7;font-size:11px}
.hero-metrics{display:none!important}
/* Clean professional services presentation */
.services{padding-top:96px;padding-bottom:105px;background:linear-gradient(180deg,#07131f 0%,#06101a 100%)}
.services .section-head{margin-bottom:36px}.services .section-head h2{font-size:clamp(38px,4.2vw,58px)}
.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-card{min-height:250px;padding:28px;border-radius:16px;display:flex;flex-direction:column;justify-content:flex-start}
.service-card .num{font-size:10px;color:#59d9ff;letter-spacing:2px}.service-card h3{font-size:21px;line-height:1.15;margin:34px 0 10px}.service-card p{font-size:13px;line-height:1.55}.chips{margin-top:auto;padding-top:17px}
.service-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,#35c7ff,transparent);opacity:.45}
/* Remove any old client/trust strips if present in legacy markup */
.client-strip,.clients-strip,.trusted-strip,.trust-strip,.global-clients,.client-logos{display:none!important}
@media(max-width:1000px){.nav{gap:18px}.hero{height:650px}.hero-visual{background-position:74% center}.hero-content{padding-left:6%}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.brand{width:190px}.brand-main{font-size:34px}.brand-sub{font-size:9px}.brand-tag{display:none}.nav{display:none}.nav.open{display:flex;position:absolute;top:86px;left:0;right:0;padding:18px 6%;background:#06111b;flex-direction:column;align-items:flex-start;gap:0;border-bottom:1px solid #1d4258}.nav.open a{padding:12px 0}.hero{height:720px;max-height:none}.hero-visual{background-size:auto 82%;background-position:76% 78%}.hero-overlay{background:linear-gradient(90deg,rgba(3,11,18,.99),rgba(3,11,18,.86) 55%,rgba(3,11,18,.18)),linear-gradient(0deg,rgba(3,11,18,.95),transparent 55%)}.hero-content{padding:72px 6% 40px}.hero h1{font-size:48px}.hero-actions{flex-wrap:wrap}.service-grid{grid-template-columns:1fr}}
@media(max-width:480px){.hero{height:760px}.hero h1{font-size:43px}.hero p{font-size:14px}.hero-visual{background-size:auto 68%;background-position:72% 90%}}

/* FINAL POLISH — header, clean hero, and full process visual */
.header{position:sticky;top:0;z-index:60;height:86px;padding:0 4.5%;gap:26px;overflow:visible}
.brand{width:235px;min-width:235px;display:block}
.brand-main{display:block;font-family:'Space Grotesk',sans-serif;font-size:44px!important;line-height:.78;letter-spacing:-4px;background:linear-gradient(90deg,#22b5ff 0%,#4b91ff 52%,#8a63ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
.brand-sub{display:block;font-size:12px!important;line-height:1;letter-spacing:6px;color:#f3f8fc!important;font-weight:700;margin-top:9px}
.brand-tag{display:block;font-size:7px!important;line-height:1;letter-spacing:1.8px;color:#4f8aa9!important;margin-top:7px}
.header-regions{order:3;margin-left:0;align-self:flex-start;padding-top:10px;white-space:nowrap;color:#8fa7b8;font-size:9px;letter-spacing:1.6px;text-transform:uppercase}
.header-regions span{color:#35c9ff;padding:0 7px}
.nav{order:2;flex:0 1 auto;justify-content:center;gap:31px;margin-left:auto}
.menu{order:3}
.hero{min-height:650px;height:min(650px,calc(100vh - 86px));max-height:720px}
.hero-visual{background-image:url('assets/hero-cinematic-clean.png')!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important;filter:saturate(1.02) contrast(1.02)}
.hero-overlay{background:linear-gradient(90deg,rgba(3,11,18,.97) 0%,rgba(3,11,18,.86) 30%,rgba(3,11,18,.35) 58%,rgba(3,11,18,.04) 84%),linear-gradient(0deg,rgba(3,11,18,.72),transparent 42%)}
.process.section{padding:78px 0 0!important}
.process-full-visual{width:100%;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#06121c!important;overflow:hidden!important}
.process-full-visual img{display:block;width:100%;height:auto;object-fit:contain!important}
.process-full-visual:after{display:none!important}
@media(max-width:1000px){.header-regions{display:none}.nav{margin-left:auto}.brand{width:220px;min-width:220px}}
@media(max-width:760px){.header{height:78px;padding:0 5%;}.brand{width:190px;min-width:190px}.brand-main{font-size:37px!important}.brand-sub{font-size:10px!important;letter-spacing:5px}.brand-tag{display:none}.nav{display:none}.nav.open{display:flex;position:absolute;top:78px;left:0;right:0;padding:18px 6%;background:#06111b;flex-direction:column;align-items:flex-start;gap:0;border-bottom:1px solid #1d4258}.nav.open a{padding:12px 0}.hero{height:720px;max-height:none}.hero-visual{background-position:66% center!important}.process.section{padding-top:40px!important}.process-full-visual img{width:100%;height:auto}}

/* === FINAL VISUAL POLISH === */
:root{
  --bg:#06111d;
  --panel:#081827;
  --panel2:#0b1d2c;
  --line:#1a3a50;
  --text:#f3f8fc;
  --muted:#91a7b8;
  --blue:#19a8ff;
  --cyan:#55ddff;
  --violet:#7663ff;
  --green:#43dfae;
}
.hero-visual{
  background-image:url('assets/hero-cinematic-clean.png');
  background-position:center center;
  background-size:cover;
  filter:saturate(.94) contrast(1.03);
}
.hero-overlay{
  background:
    radial-gradient(circle at 73% 42%, rgba(20,164,255,.10), transparent 34%),
    linear-gradient(90deg,rgba(3,13,23,.93) 0%,rgba(3,13,23,.67) 31%,rgba(3,13,23,.16) 66%,rgba(3,13,23,.38) 100%),
    linear-gradient(0deg,rgba(3,13,23,.92),rgba(3,13,23,.02) 38%,rgba(3,13,23,.18) 100%);
}
.hero-content{padding-top:122px;}
.hero h1{max-width:650px;text-wrap:balance;}
.hero p{color:#d0dce5;}
.btn.primary{box-shadow:0 10px 34px rgba(19,142,238,.20);}

/* cleaner service cards */
.service-grid{gap:18px;}
.service-card{
  min-height:285px;
  border-radius:14px;
  background:linear-gradient(155deg,rgba(12,30,46,.98),rgba(6,18,30,.98));
  border-color:rgba(45,93,121,.55);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 14px 38px rgba(0,0,0,.12);
}
.service-card:before{
  content:"";position:absolute;left:30px;top:28px;width:34px;height:3px;border-radius:3px;
  background:linear-gradient(90deg,var(--cyan),rgba(85,221,255,0));
}
.service-card:after{width:150px;height:150px;right:-90px;bottom:-90px;background:rgba(28,167,235,.09);}
.service-card h3{margin-top:58px;line-height:1.12;}
.service-card p{max-width:34ch;}

/* process image: clean frame, no clipping, balanced breathing room */
.process-premium{padding-top:86px;padding-bottom:86px;background:linear-gradient(180deg,#06111d,#071624);}
.process-full-visual{
  max-width:1480px;margin:0 auto;border:1px solid rgba(44,126,163,.65);border-radius:20px;overflow:hidden;
  background:#061522;box-shadow:0 24px 70px rgba(0,0,0,.30),0 0 0 1px rgba(255,255,255,.015) inset;
}
.process-full-visual img{display:block;width:100%;height:auto;}

/* video frame */
.video-card{border-radius:18px;border-color:rgba(42,91,119,.7);box-shadow:0 20px 60px rgba(0,0,0,.22);}
.video-wrap{background:#06111d;}
.showreel-video{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.03);}

/* CSI / industries / quote surfaces */
.division-grid div,.industry-grid div{box-shadow:inset 0 1px 0 rgba(255,255,255,.018);}
.quote-panel{box-shadow:0 24px 70px rgba(0,0,0,.22);}

@media (max-width:900px){
  .hero{min-height:700px;}
  .hero-content{padding-top:100px;}
  .process-premium{padding:60px 4%;}
  .process-full-visual{border-radius:14px;}
}
@media (max-width:600px){
  .hero{min-height:680px;}
  .hero-content{padding:90px 6% 70px;}
  .hero h1{font-size:48px;letter-spacing:-2.5px;}
  .service-card{min-height:250px;}
}

/* ===============================
   PRODUCTION POLISH — SAAS ESTIMATORS
   =============================== */
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{background:#06111d;color:#f3f8fc;overflow-x:hidden}
::selection{background:rgba(42,183,255,.30);color:#fff}
.header{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:rgba(6,17,29,.72);border-bottom:1px solid rgba(83,147,181,.10);transition:background .25s,border-color .25s,box-shadow .25s}
.header.scrolled{background:rgba(5,15,26,.92);border-bottom-color:rgba(83,147,181,.18);box-shadow:0 10px 35px rgba(0,0,0,.20)}
.nav a{position:relative;color:#9db1bf;transition:color .2s ease}
.nav a:hover,.nav a.active{color:#fff}
.nav a:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:2px;border-radius:2px;background:linear-gradient(90deg,#25baff,#7865ff);transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
.nav a:hover:after,.nav a.active:after{transform:scaleX(1)}
.hero{isolation:isolate;position:relative;border-bottom:1px solid rgba(72,123,151,.16)}
.hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(180deg,transparent,#06111d);z-index:1;pointer-events:none}
.hero-content{z-index:2}
.eyebrow{font-weight:700;letter-spacing:2.6px;color:#7fb6cf}
.hero h1{letter-spacing:-3.5px;line-height:.98}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,#40d6ff,#6e83ff 55%,#9a6cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{max-width:650px;line-height:1.75}
.btn{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn.primary{background:linear-gradient(135deg,#17a9ff,#496fff);border:1px solid rgba(126,216,255,.28)}
.btn.primary:hover{box-shadow:0 14px 38px rgba(30,145,255,.28)}
.btn.ghost:hover{border-color:rgba(89,205,255,.45);background:rgba(36,151,208,.08)}
.section{position:relative}
.section-kicker{font-weight:700;color:#58cfff;letter-spacing:2.3px}
.intro,.services,.csi,.industries,.video,.quote{border-top:1px solid rgba(79,129,157,.09)}
.intro-grid h2,.section-head h2,.csi-title h2,.industries h2,.video-copy h2,.quote-panel h2{letter-spacing:-2px}
.intro-grid h2 span,.csi-title h2 span,.industries h2 span,.video-copy h2 span,.quote-panel h2 span{background:linear-gradient(90deg,#45d7ff,#7181ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.service-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.service-card:hover{transform:translateY(-5px);border-color:rgba(65,190,244,.50);box-shadow:0 22px 55px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.035)}
.service-card .chips span{border:1px solid rgba(65,145,180,.24);background:rgba(16,43,61,.55);color:#9fc4d6;border-radius:999px;padding:6px 9px;font-size:10px;letter-spacing:.3px}
.division-grid div{transition:transform .2s ease,border-color .2s ease,background .2s ease}
.division-grid div:hover{transform:translateY(-3px);border-color:rgba(67,201,255,.35);background:rgba(11,35,51,.92)}
.industry-grid div{transition:transform .2s ease,border-color .2s ease}
.industry-grid div:hover{transform:translateY(-3px);border-color:rgba(67,201,255,.35)}
.process-full-visual{position:relative}
.process-full-visual:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(12,190,255,.06),transparent 35%,rgba(119,98,255,.05));mix-blend-mode:screen}
.video-wrap{border:1px solid rgba(57,128,163,.35);box-shadow:0 25px 65px rgba(0,0,0,.25)}
.quote-panel{border-color:rgba(56,135,169,.55)}
input,select,textarea{transition:border-color .2s,box-shadow .2s,background .2s}
input:focus,select:focus,textarea:focus{outline:none;border-color:rgba(62,199,255,.65)!important;box-shadow:0 0 0 3px rgba(33,164,222,.10);background:#0a2030!important}
.file-field{transition:border-color .2s,background .2s,transform .2s}
.file-field:hover{border-color:rgba(68,201,255,.48);background:rgba(15,45,63,.65);transform:translateY(-1px)}
.form-msg{min-height:20px;color:#71d8ff!important}
footer{border-top:1px solid rgba(77,127,155,.12)}
footer a{transition:color .2s}footer a:hover{color:#62d8ff!important}
@media(max-width:760px){
  .header{background:rgba(6,17,29,.90)}
  .nav.open{box-shadow:0 20px 35px rgba(0,0,0,.28)}
  .hero h1{letter-spacing:-2.7px}
  .hero p{line-height:1.65}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.service-card,.division-grid div,.industry-grid div,.file-field{transition:none}.process-full-visual:before{display:none}}


/* HERO LAYOUT FIX — prevent CTA/button clipping and overlap at short desktop viewports */
.hero{
  min-height:clamp(720px, calc(100svh - 112px), 820px);
  height:auto;
}
.hero-content{
  padding:116px 0 150px 7%;
}
.hero-actions{
  position:relative;
  z-index:4;
  flex-wrap:wrap;
  align-items:center;
}
.hero-note{
  position:relative;
  z-index:4;
}
.hero:after{
  height:90px;
}
@media (max-height:820px) and (min-width:901px){
  .hero{min-height:720px;}
  .hero-content{padding-top:82px;padding-bottom:120px;}
  .hero h1{font-size:clamp(48px,5.5vw,78px);margin:18px 0;}
  .hero p{font-size:16px;line-height:1.6;}
  .hero-actions{margin-top:24px;}
  .hero-note{margin-top:10px;}
}
@media(max-width:900px){
  .hero{min-height:700px;}
  .hero-content{padding:90px 6% 120px;}
}
@media(max-width:600px){
  .hero{min-height:0;}
  .hero-content{padding:78px 6% 110px;}
  .hero-actions{gap:10px;}
  .hero-actions .btn{width:100%;}
}

/* =========================================================
   RESPONSIVE STABILITY PASS
   Keeps the original visual design while preventing clipping,
   overlap and fixed-height collisions across common viewports.
   ========================================================= */

/* Desktop: let the hero breathe instead of tying its height to the viewport. */
@media (min-width: 901px){
  .hero{
    height:auto !important;
    min-height:760px !important;
    max-height:none !important;
  }
  .hero-content{
    width:min(650px, 88%);
    padding:104px 0 104px 6.5% !important;
  }
  .hero h1{
    font-size:clamp(52px,5.5vw,82px) !important;
    line-height:.95 !important;
    margin:20px 0 !important;
  }
  .hero p{max-width:560px;margin-bottom:0}
  .hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:28px !important;
  }
  .hero-actions .btn{
    min-height:54px;
    white-space:nowrap;
  }
  .hero-note{margin-top:14px !important}
}

/* Laptop / small desktop. */
@media (min-width:901px) and (max-width:1200px){
  .header{padding-left:3%;padding-right:3%;gap:18px}
  .brand{width:200px;min-width:200px}
  .nav{gap:20px}
  .nav a{font-size:12px}
  .header-regions{display:none}
  .hero-content{padding-left:5.5% !important}
  .hero-visual{background-position:center center !important}
}

/* Tablet: switch to a content-driven hero and tighter grids. */
@media (min-width:601px) and (max-width:900px){
  .header{height:78px;padding:0 5%}
  .hero{
    height:auto !important;
    min-height:700px !important;
    max-height:none !important;
  }
  .hero-content{
    width:min(650px,88%);
    padding:82px 6% 100px !important;
  }
  .hero h1{font-size:clamp(50px,7vw,68px) !important}
  .hero-actions{flex-wrap:wrap;gap:12px}
  .hero-actions .btn{min-height:52px}
  .hero-visual{background-position:66% center !important;background-size:cover !important}
  .hero-overlay{background:linear-gradient(90deg,rgba(3,11,18,.97),rgba(3,11,18,.78) 52%,rgba(3,11,18,.18)),linear-gradient(0deg,rgba(3,11,18,.9),transparent 58%)}
  .section{padding:78px 6%}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .division-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .video-card,.quote-panel,.intro-grid,.showcase{grid-template-columns:1fr}
  .video-wrap{min-height:360px}
}

/* Mobile: everything is content-driven; no fixed hero height. */
@media (max-width:600px){
  .header{height:78px;padding:0 5%;gap:12px}
  .brand{width:auto;min-width:0;max-width:78%}
  .brand-main{font-size:35px !important;letter-spacing:-3px}
  .brand-sub{font-size:9px !important;letter-spacing:5px;margin-top:7px}
  .brand-tag{display:none !important}
  .menu{display:flex;flex:0 0 auto;width:40px;height:40px;align-items:center;justify-content:center;padding:0;cursor:pointer}
  .menu i{width:24px;height:2px}
  .nav{display:none}
  .nav.open{display:flex;top:78px;padding:14px 6%;z-index:70}
  .nav.open a{padding:13px 0;font-size:14px}

  .hero{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
  }
  .hero-visual{
    background-size:auto 64% !important;
    background-position:72% 100% !important;
  }
  .hero-overlay{
    background:linear-gradient(180deg,rgba(3,11,18,.96) 0%,rgba(3,11,18,.88) 42%,rgba(3,11,18,.42) 72%,rgba(3,11,18,.96) 100%) !important;
  }
  .hero-content{
    width:100% !important;
    padding:68px 6% 100px !important;
  }
  .eyebrow{font-size:9px;letter-spacing:2px}
  .hero h1{
    font-size:clamp(42px,12vw,52px) !important;
    line-height:.98 !important;
    letter-spacing:-2.6px !important;
    margin:18px 0 !important;
  }
  .hero p{
    max-width:none !important;
    font-size:14px !important;
    line-height:1.65 !important;
  }
  .hero-actions{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    width:100%;
    gap:10px !important;
    margin-top:24px !important;
  }
  .hero-actions .btn{
    width:100% !important;
    min-height:52px;
    padding:14px 18px;
    white-space:normal;
  }
  .hero-note{font-size:10px;line-height:1.5;margin-top:13px !important}
  .hero:after{height:70px}

  .section{padding:64px 6%}
  .section h2{font-size:clamp(36px,10vw,44px);letter-spacing:-2px}
  .section-head,.csi-title{display:block}
  .section-head>p,.csi-title>p{margin-top:14px}
  .service-grid,.division-grid,.process-grid,.industry-grid{grid-template-columns:1fr !important}
  .service-card{min-height:0 !important;padding:25px}
  .service-card h3{font-size:20px}
  .division-grid div{min-height:90px}
  .process-full-visual{border-radius:0 !important}
  .process-full-visual img{width:100%;height:auto}
  .video-card{grid-template-columns:1fr !important}
  .video-copy{padding:32px 25px}
  .video-wrap{min-height:0 !important;aspect-ratio:16/9}
  .showreel-video{width:100%;height:100%;object-fit:cover}
  .quote-panel{grid-template-columns:1fr !important;padding:25px !important;gap:28px}
  .form-row{grid-template-columns:1fr !important}
  .file-field{min-width:0}
  .file-field span{min-width:0}
  .file-field small{line-height:1.4}
  footer{grid-template-columns:1fr !important;padding:48px 6% 25px}
  .footer-brand{grid-column:auto !important}
}

/* Very small phones. */
@media (max-width:380px){
  .hero-content{padding-top:58px !important;padding-bottom:90px !important}
  .hero h1{font-size:40px !important}
  .hero p{font-size:13.5px !important}
  .btn{font-size:13px}
}

/* Prevent long labels/content from forcing grid children wider than the viewport. */
.service-card,.division-grid div,.industry-grid div,.process-grid>div,.quote-panel>div,.quote-panel form,.video-copy,.video-wrap{min-width:0}
input,select,textarea,.btn{max-width:100%}
