:root{
  --bg:#f4f1ea;
  --surface:#ffffff;
  --ink:#121212;
  --muted:#686868;
  --gold:#c9a35c;
  --gold2:#e6cb92;
  --dark:#0b0d10;
  --line:rgba(18,18,18,.12);
  --radius:22px;
  --shadow:0 22px 60px rgba(0,0,0,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6}
a{text-decoration:none;color:inherit}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(11,13,16,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;color:white}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;font-family:"Playfair Display",serif;font-size:24px;color:var(--gold)}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-text strong{font-size:18px;letter-spacing:.14em}
.brand-text small{font-size:9px;letter-spacing:.42em;color:var(--gold);margin-top:5px}
.nav{display:flex;align-items:center;gap:28px;color:#efefef;font-size:14px}
.nav a{transition:.25s}
.nav a:hover{color:var(--gold2)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#111;font-weight:800;border:0;cursor:pointer;box-shadow:0 12px 30px rgba(201,163,92,.22);transition:.25s}
.btn:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(201,163,92,.30)}
.btn-small{min-height:42px;padding:0 18px}
.btn-ghost{background:transparent;color:white;border:1px solid rgba(255,255,255,.25);box-shadow:none}
.hero{min-height:850px;display:grid;align-items:center;position:relative;overflow:hidden;background:
radial-gradient(circle at 80% 30%,rgba(201,163,92,.18),transparent 28%),
linear-gradient(125deg,#08090b 0%,#12161b 60%,#090a0c 100%);color:white;padding-top:84px}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center;position:relative;z-index:2}
.eyebrow{display:inline-block;color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.24em;margin-bottom:18px}
h1,h2{font-family:"Playfair Display",serif;line-height:1.05;margin:0}
h1{font-size:clamp(52px,7vw,88px);max-width:780px}
h2{font-size:clamp(38px,5vw,62px)}
.hero-copy>p{font-size:19px;color:#c9ccd1;max-width:650px;margin:28px 0}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:54px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12)}
.hero-stats div{display:flex;flex-direction:column}
.hero-stats strong{font-size:28px;color:var(--gold2)}
.hero-stats span{font-size:12px;color:#aeb3ba}
.hero-card{display:flex;justify-content:center}
.tech-panel{width:min(100%,430px);padding:34px;border-radius:32px;background:linear-gradient(150deg,rgba(255,255,255,.10),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(20px);box-shadow:var(--shadow);transform:rotate(2deg)}
.status{font-size:12px;color:#bfc4ca;display:flex;align-items:center;gap:9px}
.status span{width:8px;height:8px;border-radius:50%;background:#58d68d;box-shadow:0 0 14px #58d68d}
.tech-panel h3{font-size:34px;margin:28px 0 8px}
.tech-panel p{color:#bfc4ca}
.energy-ring{width:220px;height:220px;border-radius:50%;margin:34px auto;display:grid;place-items:center;text-align:center;background:radial-gradient(circle,#12161b 54%,transparent 55%),conic-gradient(var(--gold) 0 72%,rgba(255,255,255,.10) 72%);box-shadow:inset 0 0 40px rgba(0,0,0,.4)}
.energy-ring span{font-size:54px;font-weight:800;color:var(--gold2)}
.energy-ring small{display:block;color:#aeb3ba;margin-top:-58px}
.panel-lines{display:grid;gap:10px}
.panel-lines span{height:8px;border-radius:10px;background:linear-gradient(90deg,var(--gold),rgba(255,255,255,.10))}
.hero-glow{position:absolute;width:500px;height:500px;border-radius:50%;filter:blur(80px);background:rgba(201,163,92,.12);right:-100px;bottom:-180px}
.trust{background:#0b0d10;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.trust-row{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;color:#7e838a;font-size:11px;font-weight:800;letter-spacing:.20em}
.section{padding:120px 0}
.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:55px}
.section-head>div{max-width:760px}
.section-head>p{max-width:380px;color:var(--muted)}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:30px;min-height:290px;display:flex;flex-direction:column;transition:.3s}
.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.service-card .icon{width:50px;height:50px;display:grid;place-items:center;border-radius:14px;background:#f3ead8;color:#8f6a28;font-size:24px}
.service-card h3{font-size:24px;margin:30px 0 10px}
.service-card p{color:var(--muted);margin:0 0 28px}
.service-card a{margin-top:auto;font-size:13px;font-weight:800;color:#8f6a28}
.dark-section{background:var(--dark);color:white}
.section-head.light p{color:#abb0b8}
.projects-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:310px 310px;gap:20px}
.project{border-radius:28px;overflow:hidden;position:relative;padding:30px;display:flex;align-items:end;background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.08)}
.project::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 20%,rgba(0,0,0,.88) 100%)}
.project-a{grid-row:1/3;background:linear-gradient(135deg,#32404c,#0b0d10)}
.project-b{background:linear-gradient(135deg,#9c8060,#2a211b)}
.project-c{background:linear-gradient(135deg,#214b50,#0b1718)}
.project-content{position:relative;z-index:2}
.project-content span{font-size:10px;font-weight:800;letter-spacing:.18em;color:var(--gold2)}
.project-content h3{font-size:30px;margin:8px 0}
.project-content p{color:#c4c8cd;max-width:430px}
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}
.about-visual{min-height:550px;border-radius:34px;background:linear-gradient(150deg,#15191e,#08090b);position:relative;overflow:hidden;padding:36px;display:flex;align-items:end}
.about-visual::after{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(201,163,92,.35);border-radius:50%;top:55px;right:-90px;box-shadow:0 0 0 45px rgba(201,163,92,.04),0 0 0 90px rgba(201,163,92,.03)}
.about-number{position:absolute;top:20px;left:30px;font-size:110px;font-weight:800;color:rgba(255,255,255,.05)}
.about-box{position:relative;z-index:2;color:white;display:flex;flex-direction:column}
.about-box strong{font-size:30px}
.about-box span{color:var(--gold2)}
.about-copy>p{font-size:18px;color:var(--muted);margin:26px 0 38px}
.check-list{display:grid;gap:14px}
.check-list>div{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:18px 0;border-top:1px solid var(--line)}
.check-list span{font-size:12px;font-weight:800;color:#8f6a28}
.check-list p{margin:0;color:var(--muted)}
.check-list strong{color:var(--ink)}
.process{background:#eae4d8}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.step{padding:26px;border-left:1px solid rgba(18,18,18,.18)}
.step span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#111;color:var(--gold2);font-weight:800}
.step h3{font-size:23px;margin:24px 0 6px}
.step p{color:var(--muted)}
.cta-section{padding:120px 0;background:linear-gradient(135deg,#0b0d10,#171c22);color:white}
.cta-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
.cta-copy p{color:#bdc2c9;font-size:18px;max-width:520px}
.contact-data{display:flex;flex-direction:column;gap:8px;margin-top:34px;color:var(--gold2);font-weight:700}
.contact-form{background:white;color:var(--ink);padding:34px;border-radius:28px;box-shadow:var(--shadow)}
.contact-form label{display:flex;flex-direction:column;font-size:12px;font-weight:800;gap:8px;margin-bottom:17px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
input,select,textarea{width:100%;border:1px solid #ddd;border-radius:12px;padding:14px 15px;font:inherit;background:#fafafa;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,163,92,.15)}
textarea{resize:vertical}
.form-note{font-size:11px;color:#8b8b8b}
.footer{background:#070809;color:#d9dde2;padding:70px 0 25px}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,.7fr);gap:50px}
.footer-grid>div{display:flex;flex-direction:column;gap:9px}
.footer-grid h4{margin:0 0 12px;color:white}
.footer-grid a,.footer-grid p{color:#878d95;font-size:13px}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.08);padding-top:24px;margin-top:45px;font-size:12px;color:#666d75}
.whatsapp{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:white;font-size:26px;z-index:99;box-shadow:0 12px 30px rgba(0,0,0,.25)}
.menu-btn{display:none;background:none;border:0;gap:5px;flex-direction:column}
.menu-btn span{display:block;width:26px;height:2px;background:white}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){
  .menu-btn{display:flex}
  .nav{position:absolute;top:84px;left:0;right:0;background:#0b0d10;padding:22px;display:none;flex-direction:column;align-items:flex-start}
  .nav.open{display:flex}
  .hero{min-height:auto;padding:150px 0 90px}
  .hero-grid,.about-grid,.cta-grid{grid-template-columns:1fr;gap:55px}
  .hero-card{justify-content:flex-start}
  .services-grid{grid-template-columns:1fr 1fr}
  .projects-grid{grid-template-columns:1fr;grid-template-rows:auto}
  .project,.project-a{grid-row:auto;min-height:320px}
  .steps{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .container{width:min(100% - 26px,1180px)}
  .section{padding:85px 0}
  h1{font-size:48px}
  .hero-stats{grid-template-columns:1fr}
  .section-head{display:block}
  .services-grid,.steps,.field-row,.footer-grid{grid-template-columns:1fr}
  .trust-row{justify-content:center;padding:22px 0}
  .about-visual{min-height:420px}
  .cta-section{padding:85px 0}
  .footer-bottom{flex-direction:column}
}
