
:root{
  --navy:#0c2446;
  --navy-2:#102f59;
  --gold:#d4a548;
  --light:#f7f7f8;
  --text:#1d2530;
  --muted:#697386;
  --line:#e7eaef;
  --card:#ffffff;
  --radius:18px;
  --shadow:0 18px 45px rgba(9,26,48,.08);
  --wrap:min(1200px, calc(100% - 48px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.5}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.wrap{width:var(--wrap);margin:0 auto}
.topbar{background:var(--navy);color:#fff;font-size:13px}
.topbar .wrap{display:flex;justify-content:space-between;gap:16px;padding:10px 0}
.nav{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:20px}
.brand{display:flex;align-items:center;gap:14px;min-width:0}
.brand img{width:52px;height:52px;object-fit:contain}
.brand span{display:flex;flex-direction:column;line-height:1}
.brand strong{font-size:28px;letter-spacing:.3px;color:var(--navy)}
.brand small{font-size:11px;letter-spacing:2.6px;color:#6d7480;margin-top:6px}
.links{display:flex;align-items:center;gap:26px}
.links>a{font-weight:600;color:#263140;position:relative}
.links>a.active,.links>a:hover{color:var(--gold)}
.links>a.active::after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:3px;border-radius:2px;background:var(--gold)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;border-radius:12px;border:1px solid var(--navy);font-weight:700;transition:.2s}
.btn.gold{background:var(--gold);border-color:var(--gold);color:#182230}
.btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.75)}
.btn:hover{transform:translateY(-1px)}
.menu{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;font-size:18px}
.hero{position:relative;min-height:650px;background:url('../img/hero-renovation.png') center/cover no-repeat;color:#fff}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg, rgba(6,25,50,.92) 0%, rgba(8,31,60,.83) 36%, rgba(8,31,60,.18) 78%, rgba(8,31,60,.12) 100%)}
.hero .wrap{position:relative;z-index:1;padding:72px 0 0;display:grid;grid-template-columns:1.1fr .9fr;gap:24px;min-height:650px}
.hero-copy{max-width:620px;padding-top:34px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--gold);font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.hero h1{font-size:68px;line-height:1.03;margin:18px 0 18px;font-weight:900;letter-spacing:-1.5px}
.hero h1 .golden{color:#f0c46c}
.hero p{font-size:24px;line-height:1.42;color:#eef3f8;max-width:600px;margin:0 0 36px}
.hero-actions{display:flex;flex-wrap:wrap;gap:16px}
.hero-panel{align-self:end;justify-self:end;display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:rgba(7,23,44,.74);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.12);border-radius:16px 16px 0 0;overflow:hidden;min-width:min(520px,100%);max-width:560px}
.hero-item{padding:28px 22px;text-align:center;border-left:1px solid rgba(255,255,255,.08)}
.hero-item:first-child{border-left:0}
.hero-item .i{font-size:34px;display:block;margin-bottom:10px}
.hero-item b{display:block;font-size:20px;margin-bottom:6px}
.hero-item span{font-size:13px;color:#d6deea}
.section{padding:78px 0}
.section.alt{background:linear-gradient(180deg,#f7f8fb, #ffffff)}
.section.dark{background:var(--navy);color:#fff}
.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:30px}
.section-head h2{font-size:52px;line-height:1.05;margin:10px 0 0;color:#121c2e;letter-spacing:-1px}
.section.dark .section-head h2,.section.dark .section-head p{color:#fff}
.section-head p{max-width:510px;color:var(--muted);font-size:18px;margin:0}
.solution-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.solution-card,.service-row,.project,.card,.value-card,.service-detail-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.solution-card img,.thumb-strip a img,.project img,.gallery img,.page-side img,.service-hero img,.service-row img{width:100%;aspect-ratio:4/3;object-fit:cover}
.solution-body{padding:18px 18px 16px}
.badge-circle{width:54px;height:54px;border-radius:50%;background:var(--gold);color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;font-size:28px;margin-top:-44px;position:relative;border:5px solid #fff;box-shadow:0 10px 25px rgba(212,165,72,.35)}
.solution-body h3{margin:14px 0 10px;font-size:28px;color:var(--navy);line-height:1.05}
.solution-body ul{margin:0;padding-left:18px;color:var(--muted)}
.thumb-strip{display:grid;grid-template-columns:repeat(10,1fr);gap:12px}
.thumb-strip a{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-align:center;box-shadow:var(--shadow)}
.thumb-strip a span{display:block;padding:10px 8px 14px;font-size:15px;font-weight:700;color:#20304d;line-height:1.25}
.why-grid{display:grid;grid-template-columns:1.1fr .9fr 340px;gap:0;border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}
.why-left{background:linear-gradient(135deg,#061b38,#0b2e57);color:#fff;padding:42px}
.why-left h2{font-size:48px;margin:0 0 30px}
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 18px}
.value-item b{display:block;color:#f2c66e;font-size:18px;margin:0 0 10px}
.value-item span{display:block;font-size:20px;font-weight:700;line-height:1.2}
.why-image img{height:100%;min-height:400px;object-fit:cover}
.why-side{background:#fff;padding:34px 30px}
.why-side h3{font-size:26px;line-height:1.1;margin:0 0 14px;color:var(--navy)}
.why-side p{color:var(--muted)}
.checks{columns:2;gap:18px;padding:0;margin:20px 0 24px;list-style:none}
.checks li{break-inside:avoid;margin:0 0 10px;padding-left:24px;position:relative;color:#394355}
.checks li::before{content:'✓';position:absolute;left:0;top:0;color:var(--gold);font-weight:900}
.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.project img{aspect-ratio:16/10}
.project-body{padding:18px}
.project-body h3{margin:0 0 8px;font-size:24px;color:var(--navy)}
.project-body p{margin:0;color:var(--muted)}
.cta{border-radius:22px;overflow:hidden;background:linear-gradient(135deg,rgba(7,24,46,.96),rgba(10,46,87,.92)), url('../img/hero-renovation.png') center/cover no-repeat;color:#fff;padding:40px 44px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:var(--shadow)}
.cta h2{font-size:50px;line-height:1.05;margin:0 0 10px}
.cta p{margin:0;color:#dfe8f2;font-size:22px}
.cta-actions{display:flex;flex-wrap:wrap;gap:14px}
.footer{background:#09192f;color:#dae4ef;padding:56px 0 24px;margin-top:0}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:24px}
.footer h4{margin:0 0 14px;color:#fff;font-size:18px}
.footer a,.footer p{display:block;color:#c8d4e2;margin:8px 0;font-size:15px}
.copyright{border-top:1px solid rgba(255,255,255,.08);margin-top:28px;padding-top:16px;display:flex;justify-content:space-between;gap:20px;font-size:14px;color:#b3c1d4}
.page-hero{padding:84px 0;background:linear-gradient(180deg,#f8fbff,#f2f5fa)}
.page-hero .wrap{display:grid;gap:18px}
.page-hero h1{margin:8px 0 0;font-size:62px;line-height:1.05;color:var(--navy);max-width:780px}
.page-hero p{margin:0;max-width:780px;font-size:22px;color:var(--muted)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center}
.about-grid .text p{color:var(--muted);font-size:18px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.gallery img{border-radius:18px;box-shadow:var(--shadow)}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.service-row{display:grid;grid-template-columns:280px 1fr;align-items:stretch}
.service-row img{height:100%}
.service-copy{padding:24px}
.service-copy h3{font-size:32px;margin:0 0 8px;color:var(--navy)}
.service-copy p{font-size:17px;color:var(--muted);margin:0 0 12px}
.service-copy .link{font-weight:800;color:var(--gold)}
.muted{color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.contact-panel{background:linear-gradient(135deg,#071b37,#0c2e59);color:#fff;border-radius:22px;padding:34px;box-shadow:var(--shadow)}
.contact-panel h2{font-size:38px;line-height:1.1;margin:12px 0 18px}
.contact-panel p{color:#d7e1eb;font-size:17px}
.form{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:16px;box-shadow:var(--shadow)}
.form label{display:grid;gap:8px;font-weight:700;color:#20304d}
.form input,.form select,.form textarea{width:100%;padding:14px 16px;border:1px solid #dbe1ea;border-radius:12px;font:inherit}
.form textarea{min-height:140px;resize:vertical}
.form .full{grid-column:1/-1}
.notice{font-size:14px;color:var(--muted);margin-top:10px}
.service-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center}
.service-hero .copy h1{font-size:58px;line-height:1.02;margin:12px 0;color:var(--navy)}
.service-hero .copy p{font-size:20px;color:var(--muted);margin:0 0 22px}
.service-hero img{border-radius:22px;box-shadow:var(--shadow)}
.service-detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px}
.service-detail-card{padding:26px}
.service-detail-card h3{font-size:26px;margin:0 0 14px;color:var(--navy)}
.list-check{padding:0;list-style:none;margin:0}
.list-check li{padding-left:26px;position:relative;margin:0 0 14px;color:#425065}
.list-check li::before{content:'•';position:absolute;left:8px;top:-1px;color:var(--gold);font-size:28px;line-height:1}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;text-align:center;box-shadow:var(--shadow)}
.stat strong{display:block;font-size:42px;color:var(--navy)}
.stat span{display:block;color:var(--muted)}
@media (max-width:1200px){
  .solution-grid{grid-template-columns:repeat(3,1fr)}
  .thumb-strip{grid-template-columns:repeat(5,1fr)}
  .project-grid{grid-template-columns:repeat(2,1fr)}
  .why-grid{grid-template-columns:1fr}
  .hero .wrap{grid-template-columns:1fr}
  .hero-panel{justify-self:start;min-width:0;width:100%;margin-top:24px}
}
@media (max-width:900px){
  .menu{display:block}
  .links{display:none;position:absolute;top:100%;right:24px;left:24px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;flex-direction:column;align-items:flex-start;box-shadow:var(--shadow)}
  .links.open{display:flex}
  .brand strong{font-size:22px}
  .hero{min-height:auto}
  .hero .wrap{padding:52px 0 28px}
  .hero h1{font-size:46px}
  .hero p{font-size:19px}
  .section-head,.about-grid,.contact-grid,.service-hero,.service-detail-grid{grid-template-columns:1fr;display:grid}
  .solution-grid,.gallery,.stats,.service-grid{grid-template-columns:1fr}
  .service-row{grid-template-columns:1fr}
  .thumb-strip{grid-template-columns:repeat(2,1fr)}
  .project-grid{grid-template-columns:1fr}
  .footer-grid,.form{grid-template-columns:1fr}
  .copyright,.topbar .wrap,.cta{flex-direction:column;align-items:flex-start}
}
