:root {
  --navy: #07366e;
  --navy-deep: #05234a;
  --orange: #f47616;
  --ink: #172033;
  --muted: #607086;
  --surface: #f5f7fa;
  --line: #dce3ec;
  --white: #ffffff;
  --shadow: 0 14px 36px rgba(5, 35, 74, .11);
  --radius: 18px;
  --max: 1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
.section{padding:82px 0}
.section--soft{background:var(--surface)}
.eyebrow{color:var(--orange);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;margin:0 0 11px}
.title{margin:0;line-height:1.12;font-size:clamp(2rem,3vw,3.45rem);color:var(--navy-deep);letter-spacing:-.025em}
.subtext{margin:17px 0 0;color:var(--muted);font-size:1.04rem;max-width:690px}
.center{text-align:center}.center .subtext{margin-left:auto;margin-right:auto}

/* Header */
.topbar{background:var(--navy-deep);color:#fff;font-size:.86rem}
.topbar .inner{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px}
.topbar a{color:#fff}.topbar .tag{opacity:.92}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid rgba(7,54,110,.1);backdrop-filter:blur(9px)}
.nav{display:flex;align-items:center;justify-content:space-between;height:76px;gap:20px}
.brand{display:flex;align-items:center;gap:12px;min-width:245px}.brand img{width:50px;height:50px;object-fit:contain}.brand strong{display:block;color:var(--navy);font-size:1.05rem;line-height:1.1}.brand span{display:block;color:var(--muted);font-size:.7rem;letter-spacing:.11em;margin-top:3px}
.navlinks{display:flex;align-items:center;gap:23px;font-size:.92rem;font-weight:700;color:#34445d}.navlinks a:hover,.navlinks a.active{color:var(--orange)}
.nav-actions{display:flex;gap:10px;align-items:center}.mobile-toggle{display:none;border:0;background:transparent;font-size:1.8rem;color:var(--navy);cursor:pointer}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;padding:12px 18px;font-weight:800;font-size:.92rem;border:1px solid transparent;cursor:pointer;transition:.2s ease}.btn-primary{background:var(--orange);color:#fff}.btn-primary:hover{background:#d85f06;transform:translateY(-1px)}.btn-dark{background:var(--navy);color:#fff}.btn-dark:hover{background:var(--navy-deep)}.btn-outline{background:#fff;border-color:var(--navy);color:var(--navy)}.btn-outline:hover{background:var(--navy);color:#fff}.btn-white{background:#fff;color:var(--navy)}

/* Hero */
.hero{position:relative;overflow:hidden;background:linear-gradient(114deg,#fff 0%,#f7fbff 54%,#edf4ff 100%);min-height:680px;display:flex;align-items:center}.hero::after{content:"";position:absolute;inset:0;background:url('../images/light-construction-background.png') right center/58% auto no-repeat;opacity:.62;pointer-events:none}.hero .inner{position:relative;z-index:1;padding:62px 0 74px}.hero-brand-showcase{text-align:center;margin-bottom:24px}.hero-brand-showcase img{width:min(125px,28vw);margin:0 auto 10px;mix-blend-mode:multiply}.hero-brand-showcase h2{margin:0;color:var(--navy-deep);font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.04;letter-spacing:-.03em}.hero-brand-showcase .tagline{margin:10px auto 0;max-width:620px;font-size:.95rem;color:var(--muted);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero-content-wrap{display:grid;grid-template-columns:1.04fr .96fr;gap:36px;align-items:center}.hero-copy{text-align:left}.hero h1{margin:0;color:var(--navy-deep);font-size:clamp(2.6rem,5.1vw,4.7rem);line-height:.99;letter-spacing:-.045em;max-width:750px}.hero h1 span{color:var(--orange)}.hero p{font-size:1.08rem;color:#4d5b70;max-width:630px;margin:23px 0}.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.pill{background:#fff;border:1px solid var(--line);box-shadow:0 8px 20px rgba(7,54,110,.06);color:#30425e;padding:8px 12px;border-radius:999px;font-size:.87rem;font-weight:800}.hero-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}.hero-note{font-size:.83rem;color:#607086;margin:16px 0 0}.hero-visual{position:relative;min-height:470px}.hero-main-image{position:absolute;right:0;bottom:0;width:89%;height:395px;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}.hero-card{position:absolute;background:#fff;border-radius:18px;box-shadow:var(--shadow);padding:15px;display:flex;gap:12px;align-items:center}.hero-card.card-a{top:23px;left:0;width:218px}.hero-card.card-b{bottom:14px;left:12px;width:250px}.hero-card .icon{width:42px;height:42px;border-radius:12px;background:#fff2e9;color:var(--orange);display:grid;place-items:center;font-weight:900}.hero-card b{display:block;color:var(--navy-deep);font-size:.92rem}.hero-card small{display:block;color:var(--muted);font-size:.78rem}

/* Cards */
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px}.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 6px 18px rgba(7,54,110,.05);transition:.23s ease}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card img{height:180px;width:100%;object-fit:cover}.service-card .body{padding:20px}.service-card .topline{display:flex;justify-content:space-between;align-items:center;gap:10px}.service-card .number{font-size:.77rem;color:var(--orange);font-weight:900;letter-spacing:.09em}.service-card h3{margin:9px 0 8px;color:var(--navy-deep);font-size:1.18rem}.service-card p{margin:0;color:var(--muted);font-size:.94rem}.text-link{display:inline-flex;align-items:center;gap:6px;color:var(--navy);font-weight:900;font-size:.9rem;margin-top:15px}.text-link:hover{color:var(--orange)}

/* Split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}.split .image-frame{position:relative}.split .image-frame img{border-radius:21px;width:100%;height:450px;object-fit:cover;box-shadow:var(--shadow)}.image-tag{position:absolute;bottom:19px;left:19px;background:var(--navy-deep);color:#fff;border-left:4px solid var(--orange);padding:14px 17px;border-radius:11px;max-width:310px;font-weight:700;font-size:.92rem}.check-list{list-style:none;margin:25px 0 0;padding:0;display:grid;gap:13px}.check-list li{position:relative;padding-left:30px;color:#48566a}.check-list li::before{content:'✓';position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;background:#fff1e7;color:var(--orange);display:grid;place-items:center;font-size:.78rem;font-weight:900}

/* Process */
.process{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-top:39px}.process-item{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 18px;min-height:162px}.process-item::after{content:'→';position:absolute;right:-18px;top:50%;transform:translateY(-50%);color:var(--orange);font-size:1.5rem;font-weight:800;z-index:2}.process-item:last-child::after{display:none}.process-no{color:var(--orange);font-size:1.7rem;font-weight:900}.process-item h3{font-size:1rem;color:var(--navy-deep);margin:7px 0}.process-item p{margin:0;color:var(--muted);font-size:.85rem}

/* Stats */
.stats{background:var(--navy-deep);color:#fff}.stats .inner{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:15px;align-items:center}.stats h2{margin:0;font-size:1.75rem}.stats p{margin:7px 0 0;color:#dbe7f5;max-width:460px}.stat{border-left:1px solid rgba(255,255,255,.25);padding:7px 0 7px 22px}.stat b{display:block;color:#fff;font-size:1.04rem}.stat span{display:block;color:#c9d9ec;font-size:.82rem;margin-top:4px}

/* Callout */
.cta{padding:70px 0;background:linear-gradient(110deg,var(--navy-deep),var(--navy));color:#fff;position:relative;overflow:hidden}.cta::after{content:"";position:absolute;right:-9%;bottom:-50%;height:130%;width:52%;background:linear-gradient(135deg,transparent 46%,rgba(244,118,22,.97) 46%,rgba(244,118,22,.97) 50%,transparent 50%);opacity:.76}.cta .inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:25px}.cta h2{font-size:clamp(2rem,3.3vw,3.1rem);margin:0;line-height:1.05}.cta p{color:#d9e6f3;max-width:700px;margin:14px 0 0}

/* Gallery */
.gallery{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:195px 195px;gap:15px;margin-top:36px}.gallery figure{margin:0;overflow:hidden;border-radius:17px;position:relative}.gallery figure:first-child{grid-row:span 2}.gallery img{height:100%;width:100%;object-fit:cover;transition:.35s ease}.gallery figure:hover img{transform:scale(1.05)}.gallery figcaption{position:absolute;bottom:0;left:0;right:0;padding:24px 15px 13px;background:linear-gradient(transparent,rgba(3,20,43,.8));color:#fff;font-size:.9rem;font-weight:800}

/* Inner page header */
.page-hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#fbfdff,#edf4fb);padding:82px 0 72px}.page-hero::after{content:"";position:absolute;right:0;inset-block:0;width:43%;background:url('../images/light-construction-background.png') right center/cover no-repeat;opacity:.75}.page-hero .inner{position:relative;z-index:1}.breadcrumb{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:.86rem;margin-bottom:18px}.breadcrumb a:hover{color:var(--orange)}.page-hero h1{font-size:clamp(2.4rem,4vw,4rem);margin:0;color:var(--navy-deep);line-height:1.04;max-width:700px}.page-hero p{max-width:660px;color:#58677b;font-size:1.06rem;margin:17px 0 0}

/* Packages */
.packages{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px}.package{border:1px solid var(--line);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 7px 20px rgba(7,54,110,.05)}.package .header{padding:23px;background:#fff}.package h3{margin:0;color:var(--navy-deep);font-size:1.3rem}.package p{color:var(--muted);font-size:.92rem;margin:8px 0 0}.package ul{margin:0;padding:19px 23px 24px;list-style:none;background:#f8fafc}.package li{margin:10px 0;padding-left:22px;position:relative;color:#46566b;font-size:.91rem}.package li::before{content:'•';position:absolute;left:3px;color:var(--orange);font-size:1.35rem;top:-5px}.package .footer{padding:18px 23px}.package.featured{border:2px solid var(--orange);transform:translateY(-10px)}.package.featured .header{background:#fff6ef}.badge{display:inline-block;color:#fff;background:var(--orange);font-size:.72rem;font-weight:900;letter-spacing:.08em;padding:5px 8px;border-radius:999px;text-transform:uppercase;margin-bottom:10px}

/* FAQ */
.faq{display:grid;gap:10px;margin-top:28px}.faq details{border:1px solid var(--line);border-radius:13px;background:#fff;padding:0 18px}.faq summary{padding:17px 29px 17px 0;font-weight:800;color:var(--navy-deep);cursor:pointer;position:relative}.faq summary::after{content:'+';position:absolute;right:0;color:var(--orange);font-size:1.4rem}.faq details[open] summary::after{content:'–'}.faq p{color:var(--muted);margin:0 0 17px}

/* Contact */
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;margin-top:38px}.contact-panel{background:var(--navy-deep);color:#fff;border-radius:20px;padding:35px}.contact-panel h2{margin:0;color:#fff;font-size:1.9rem;line-height:1.1}.contact-panel p{color:#d8e5f4;margin:13px 0 25px}.contact-item{display:flex;gap:13px;padding:15px 0;border-top:1px solid rgba(255,255,255,.16)}.contact-item:first-of-type{border-top:0}.contact-item .round{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.12);display:grid;place-items:center;color:#ffb47f;flex:0 0 auto}.contact-item b{display:block;font-size:.84rem}.contact-item span{display:block;color:#dae6f4;font-size:.9rem;margin-top:3px}
.form-card{border:1px solid var(--line);border-radius:20px;padding:30px;background:#fff;box-shadow:var(--shadow)}.form-card h2{color:var(--navy-deep);margin:0;font-size:1.85rem}.form-card>p{color:var(--muted);margin:9px 0 22px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:.82rem;font-weight:800;color:#46566b}.field input,.field select,.field textarea{font:inherit;border:1px solid #ccd7e4;border-radius:9px;padding:12px 13px;outline:none;color:var(--ink);background:#fff}.field textarea{min-height:116px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(7,54,110,.1)}.form-note{font-size:.78rem;color:#718098;margin:13px 0 0}.form-success{display:none;margin-top:15px;background:#eaf7ef;border:1px solid #b5e0c3;color:#1a6a35;padding:12px;border-radius:8px;font-size:.9rem}

/* Footer */
.site-footer{background:#031c3b;color:#d9e5f1;padding:53px 0 19px}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,.8fr);gap:28px}.footer-brand img{width:72px;height:72px;object-fit:contain;background:#fff;border-radius:13px;padding:4px}.footer-brand h3{color:#fff;margin:12px 0 7px}.footer-brand p{margin:0;max-width:340px;font-size:.9rem}.footer-col h4{color:#fff;margin:8px 0 13px;font-size:.96rem}.footer-col a{display:block;font-size:.88rem;margin:7px 0;color:#c6d7e8}.footer-col a:hover{color:#ffb37c}.footer-bottom{margin-top:35px;border-top:1px solid rgba(255,255,255,.14);padding-top:17px;display:flex;justify-content:space-between;gap:15px;font-size:.78rem;color:#abc0d3}.tiny{font-size:.77rem;color:#abc0d3}

/* Floating */
.floating-wa{position:fixed;right:19px;bottom:20px;z-index:60;background:#1e9f47;color:#fff;width:55px;height:55px;border-radius:50%;box-shadow:0 10px 23px rgba(0,0,0,.2);display:grid;place-items:center;font-size:1.55rem;font-weight:900}.floating-wa:hover{transform:translateY(-2px)}

/* Utility */
.hide{display:none!important}.notice{padding:15px 17px;border:1px solid #f6d1a8;background:#fff7ee;color:#72420d;border-radius:12px;font-size:.9rem;margin:20px 0}.caption{font-size:.78rem;color:#78869a;margin-top:8px}

@media(max-width:1020px){
 .navlinks{gap:14px;font-size:.84rem}.brand{min-width:auto}.hero-content-wrap{grid-template-columns:1fr}.hero-visual{max-width:680px;width:100%;margin:0 auto;height:450px}.card-grid{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(3,1fr)}.process-item::after{display:none}.stats .inner{grid-template-columns:1fr 1fr}.stats .intro{grid-column:1/-1}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-col:last-child{grid-column:2/3}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:auto}.gallery figure:first-child{grid-column:span 2;grid-row:auto;height:260px}.gallery figure{height:180px}
}
@media(max-width:760px){
 .container{width:min(100% - 28px,var(--max))}.section{padding:58px 0}.topbar .inner{justify-content:center}.topbar .tag{display:none}.site-header{position:sticky}.nav{height:66px}.brand img{width:44px;height:44px}.brand>span span{display:none}.brand strong{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:185px}.mobile-toggle{display:block}.navlinks{display:none;position:absolute;left:0;right:0;top:66px;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 18px 26px rgba(5,35,74,.1);padding:10px 14px 14px}.navlinks.open{display:flex}.navlinks a{padding:11px 8px}.nav-actions .btn-outline{display:none}.nav-actions .btn{font-size:.82rem;padding:10px 12px}.hero{min-height:auto}.hero .inner{padding:50px 0}.hero-brand-showcase{margin-bottom:18px}.hero-brand-showcase img{width:min(105px,32vw)}.hero-brand-showcase h2{font-size:2.05rem}.hero-brand-showcase .tagline{font-size:.8rem;letter-spacing:.06em}.hero h1{font-size:clamp(2.35rem,11.5vw,3.7rem)}.hero-copy{text-align:center}.hero-copy .eyebrow,.hero-copy h1,.hero-copy p{margin-left:auto;margin-right:auto}.hero-badges,.hero-buttons{justify-content:center}.hero-visual{height:350px;min-height:0}.hero-main-image{height:290px;width:91%}.hero-card.card-a{top:0;width:200px}.hero-card.card-b{bottom:0;width:220px;left:0}.card-grid,.packages{grid-template-columns:1fr}.split,.contact-grid{grid-template-columns:1fr;gap:28px}.split .image-frame img{height:330px}.process{grid-template-columns:1fr 1fr}.stats .inner{grid-template-columns:1fr}.stat{border-left:0;border-top:1px solid rgba(255,255,255,.25);padding:14px 0}.cta .inner{display:block}.cta .btn{margin-top:22px}.gallery{grid-template-columns:1fr;grid-template-rows:auto}.gallery figure:first-child{grid-column:auto;height:235px}.gallery figure{height:210px}.field-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-col:last-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom div+div{margin-top:7px}.page-hero{padding:58px 0}.page-hero::after{width:70%;opacity:.45}.page-hero h1{font-size:2.45rem}.package.featured{transform:none}.floating-wa{width:52px;height:52px;right:14px;bottom:14px}
}
@media(max-width:430px){.topbar{font-size:.74rem}.nav-actions .btn{display:none}.process{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.hero-buttons .btn{width:100%}}
