@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--green:#173d2c;--green2:#285c42;--leaf:#73945a;--cream:#f5f1e8;--sand:#e7dfcf;--ink:#18221c;--muted:#657067;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;background:#fff;line-height:1.6}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}
.topbar{position:sticky;top:0;z-index:10;background:rgba(245,241,232,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(23,61,44,.1)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-weight:700;color:var(--green);font-size:24px;text-decoration:none}.brand span{font-weight:400}.nav nav{display:flex;gap:28px}.nav nav a{color:var(--ink);text-decoration:none;font-size:14px;font-weight:600}.nav-cta{color:#fff;background:var(--green);padding:11px 18px;border-radius:99px;text-decoration:none;font-weight:700;font-size:14px}
.hero{min-height:650px;display:flex;align-items:center;position:relative;background:linear-gradient(90deg,rgba(10,35,23,.86),rgba(10,35,23,.42),rgba(10,35,23,.12)),url('images/chantier-8.jpg') center/cover}.hero-overlay{position:absolute;inset:0}.hero-content{position:relative;color:#fff;padding:100px 0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700;margin:0 0 12px;color:var(--leaf)}.hero .eyebrow{color:#d9e7d2}.hero h1{font-family:'Playfair Display',serif;font-size:clamp(48px,7vw,82px);line-height:.98;margin:0 0 24px;max-width:780px}.hero h1 em{font-weight:600;color:#d9e7c7}.lead{font-size:19px;max-width:650px;color:#edf2ec}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:13px 22px;border-radius:9px;text-decoration:none;font-weight:700}.primary{background:#c6d8a7;color:#173d2c}.ghost{border:1px solid rgba(255,255,255,.5);color:#fff}.trust{display:flex;gap:25px;flex-wrap:wrap;font-size:13px;color:#edf2ec}
.intro{background:var(--cream);padding:85px 0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.intro h2,.section h2,.contact h2,.credit h2{font-family:'Playfair Display',serif;font-size:clamp(34px,4vw,52px);line-height:1.08;margin:0}.intro p:last-child{font-size:18px;color:var(--muted);margin:0}
.section{padding:95px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-head>p{max-width:390px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-grid article{padding:28px;background:#f7f7f3;border:1px solid #e8e9e3;border-radius:14px;min-height:190px}.icon{font-size:29px;margin-bottom:15px}.service-grid h3{margin:0 0 7px;font-size:18px}.service-grid p{margin:0;color:var(--muted);font-size:14px}
.gallery{background:#fff}.gallery-grid{columns:3 260px;column-gap:16px}.gallery-grid img{width:100%;display:block;margin:0 0 16px;border-radius:12px;break-inside:avoid;box-shadow:0 4px 20px rgba(20,30,20,.08)}
.credit{background:var(--green);color:#fff;padding:65px 0}.credit-box{display:grid;grid-template-columns:120px 1fr;gap:35px;align-items:center}.credit h2{font-size:40px}.credit p:last-child{color:#d8e2da;max-width:750px}.badge{width:110px;height:110px;border:1px solid rgba(255,255,255,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:700}
.contact{background:var(--cream)}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center}.contact h2{margin-bottom:22px}.contact>p,.contact-grid>div>p:not(.eyebrow){color:var(--muted)}.contact-links{margin-top:32px;display:grid;gap:12px}.contact-links a,.contact-links div{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);padding:15px 18px;background:#fff;border-radius:10px}.contact-links span{font-size:13px;color:var(--muted)}.contact-card{background:var(--green);color:#fff;padding:40px;border-radius:18px;box-shadow:0 18px 45px rgba(23,61,44,.18)}.contact-card p{color:#c6d8a7;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700}.contact-card h3{font-family:'Playfair Display',serif;font-size:34px;line-height:1.15;margin:0 0 30px}.wide{width:100%;margin-top:10px}.phone{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}
footer{background:#10291e;color:#b8c6bd;padding:22px 0;font-size:13px}.footer-inner{display:flex;justify-content:space-between;gap:20px}
@media(max-width:800px){.nav{height:68px}.nav nav{display:none}.nav-cta{padding:9px 13px}.hero{min-height:600px}.hero-content{padding:75px 0}.intro-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.service-grid{grid-template-columns:1fr 1fr}.section-head{display:block}.section-head>p{margin-top:14px}.credit-box{grid-template-columns:85px 1fr;gap:20px}.badge{width:80px;height:80px;font-size:23px}.credit h2{font-size:31px}}
@media(max-width:520px){.wrap{width:min(100% - 28px,1160px)}.hero h1{font-size:49px}.service-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%}.trust{gap:10px;display:grid}.credit-box{grid-template-columns:1fr}.footer-inner{flex-direction:column}}
