:root{--navy:#07182f;--blue:#123c73;--gold:#f4b400;--cream:#f5f2ea;--ink:#101820;--muted:#647084;--white:#fff;--shadow:0 24px 70px rgba(5,22,45,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.shell{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{inset:0 0 auto;background:rgba(5,18,38,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.12)}.nav{height:84px;justify-content:space-between}.brand,.nav{display:flex;align-items:center}.brand{gap:12px;color:white;font-weight:900}.brand small{display:block;font-size:.67rem;letter-spacing:.15em;color:#c9d4e5;text-transform:uppercase}.brand-mark{width:49px;height:49px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold),#ffe596);color:var(--navy);box-shadow:0 10px 25px rgba(244,180,0,.22)}.nav-links{display:flex;align-items:center;gap:20px;color:white;font-weight:700;font-size:.92rem}.nav-links a:hover{color:#ffd76a}.menu{display:none;background:transparent;border:0;color:white}.pill{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;font-weight:800;border:0;cursor:pointer}.gold{background:var(--gold);color:var(--navy)}.dark{background:var(--navy);color:white}.outline{border:1px solid rgba(255,255,255,.5);color:white}.hero{min-height:100vh;display:flex;align-items:center;color:white;background:linear-gradient(90deg,rgba(4,15,32,.93),rgba(4,15,32,.55),rgba(4,15,32,.12)),url(/images/ferme-obala-aerienne.jpg) 50%/cover}.hero-content{max-width:860px;padding-top:90px}.kicker{font-size:.8rem;text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:#ffd76a}.hero h1,.page-hero h1{font-size:clamp(3rem,7vw,6rem);line-height:.98;letter-spacing:-.06em;margin:18px 0}.hero p{font-size:1.18rem;color:#dbe4f1;max-width:760px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.stats{margin-top:-55px;position:relative;z-index:3}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);background:white;border-radius:24px;box-shadow:var(--shadow);overflow:hidden}.stat{padding:30px;border-right:1px solid #edf0f4}.stat:last-child{border-right:0}.stat strong{display:block;color:var(--blue);font-size:2rem}.section{padding:96px 0}.soft{background:#f5f7fa}.cream{background:var(--cream)}.section-title{max-width:760px;margin-bottom:42px}.cta h2,.section-title h2,.split h2{font-size:clamp(2.2rem,5vw,4rem);line-height:1.05;letter-spacing:-.05em;margin:10px 0 18px}.muted{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.card{padding:28px;border-radius:22px;background:white;box-shadow:0 12px 40px rgba(10,35,70,.08);border:1px solid #edf0f4;transition:.3s}.card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.icon{font-size:1.8rem;margin-bottom:20px}.project-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-gap:24px;gap:24px}.project{position:relative;border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}.project,.project.small{min-height:510px}.project img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.7s}.project:hover img{transform:scale(1.06)}.overlay{position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(4,15,32,.9));display:flex;align-items:flex-end;padding:30px;color:white}.badge{display:inline-block;padding:7px 11px;border-radius:999px;background:var(--gold);color:var(--navy);font-weight:900;font-size:.75rem}.split{display:grid;grid-template-columns:1fr 1fr;grid-gap:60px;gap:60px;align-items:center}.split img{border-radius:26px;box-shadow:var(--shadow);width:100%;height:620px;object-fit:cover}.list{display:grid;grid-gap:13px;gap:13px;margin:25px 0}.list div{display:flex;gap:12px}.list b{color:#16875a}.cta{background:linear-gradient(135deg,var(--navy),var(--blue));border-radius:30px;padding:60px;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta,.cta h2,.page-hero{color:white}.page-hero{min-height:58vh;display:flex;align-items:flex-end;padding:160px 0 75px;background:linear-gradient(90deg,rgba(4,15,32,.93),rgba(4,15,32,.42)),url(/images/immeuble-mbalmayo-chantier.jpg) 50%/cover}.detail{display:grid;grid-template-columns:1fr 1fr;grid-gap:50px;gap:50px;align-items:center;margin-bottom:85px}.detail img{border-radius:24px;box-shadow:var(--shadow);width:100%;height:520px;object-fit:cover}.gallery{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px;gap:20px}.gallery img{height:340px;width:100%;object-fit:cover;border-radius:20px}.team{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.person{padding:28px;background:white;border-radius:22px;box-shadow:0 12px 40px rgba(10,35,70,.08)}.avatar{height:250px;background:linear-gradient(135deg,#dfe8f4,#f5f7fa);border-radius:18px;display:grid;place-items:center;font-size:4rem}.form-grid{display:grid;grid-template-columns:.85fr 1.15fr;grid-gap:50px;gap:50px}.contact-box{background:var(--navy);color:white;border-radius:24px;padding:38px}.form-card{grid-gap:16px;padding:32px;border:1px solid #e4e8ef;border-radius:24px;box-shadow:var(--shadow)}.form-card,.form-row{display:grid;gap:16px}.form-row{grid-template-columns:1fr 1fr;grid-gap:16px}input,select,textarea{width:100%;padding:15px;border:1px solid #d8dee8;border-radius:12px;font:inherit}textarea{min-height:160px}.status{font-size:.9rem;color:var(--muted)}.admin-grid{display:grid;grid-template-columns:260px 1fr;grid-gap:28px;gap:28px}.admin-nav{background:var(--navy);color:white;border-radius:20px;padding:24px;height:max-content}.admin-panel{background:white;border:1px solid #e7eaf0;border-radius:20px;padding:28px}.faq details{padding:20px 0;border-bottom:1px solid #e7eaf0}.faq summary{font-weight:800;cursor:pointer}footer{background:#061428;color:#c8d4e5;padding:70px 0 26px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;grid-gap:36px;gap:36px}footer h4{color:white}footer a{display:block;margin:8px 0}.foot-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:45px;padding-top:22px;display:flex;justify-content:space-between;gap:20px}.whatsapp{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:white;font-weight:900;z-index:40;box-shadow:0 15px 35px rgba(0,0,0,.2)}@media(max-width:960px){.nav-links{display:none;position:fixed;top:84px;left:18px;right:18px;flex-direction:column;align-items:flex-start;background:var(--navy);padding:24px;border-radius:20px}.nav-links.open{display:flex}.menu{display:block}.cards,.stats-grid,.team{grid-template-columns:1fr 1fr}.admin-grid,.detail,.form-grid,.project-grid,.split{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.shell{width:min(100% - 26px,1180px)}.section{padding:70px 0}.cards,.footer-grid,.form-row,.gallery,.team{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.stat{padding:20px}.hero h1,.page-hero h1{font-size:clamp(2.8rem,15vw,4.5rem)}.cta{padding:34px 24px;flex-direction:column;align-items:flex-start}.detail img,.split img{height:420px}.foot-bottom{flex-direction:column}}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:#ffffff;border-bottom:1px solid #e5e7eb;box-shadow:0 6px 24px rgba(7,24,47,.1);-webkit-backdrop-filter:none;backdrop-filter:none}.nav{height:92px}.nav-links,.nav-links a{color:#111827}.nav-links a{transition:color .25s ease}.brand,.nav-links a:hover{color:#123c73}.brand img{width:240px;height:auto;max-height:74px;object-fit:contain}.menu{color:#123c73}.pill.gold{background:#f4b400;color:#07182f;box-shadow:0 8px 22px rgba(244,180,0,.28)}.pill.gold:hover{background:#ffd13b}@media (max-width:960px){.nav{height:82px}.brand img{width:190px;max-height:62px}.nav-links{top:82px;background:#ffffff;border:1px solid #e5e7eb;box-shadow:0 18px 40px rgba(7,24,47,.16)}.nav-links,.nav-links a{color:#111827}.menu{color:#123c73}}@media (max-width:620px){.brand img{width:160px;max-height:55px}}