:root{--gold:#FFB900;--gf:rgba(255,185,0,0.06);--gdim:rgba(255,185,0,0.15);--bg:#070915;--bg2:#0d1220;--bg3:#0f1422;--w:#fff;--mu:rgba(255,255,255,0.45);--fa:rgba(255,255,255,0.04);--bo:rgba(255,255,255,0.07);--bog:rgba(255,185,0,0.22);--r:16px;--rs:10px;--gr:#25D366;}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--w);font-family:'DM Sans',sans-serif;overflow-x:hidden;}
::-webkit-scrollbar{width:5px;}::-webkit-scrollbar-track{background:var(--bg);}::-webkit-scrollbar-thumb{background:rgba(255,185,0,0.3);border-radius:3px;}
.bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,185,0,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,185,0,.022) 1px,transparent 1px);background-size:64px 64px;pointer-events:none;}
/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;height:70px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;background:rgba(7,9,21,.9);backdrop-filter:blur(20px);border-bottom:1px solid var(--bo);transition:background .3s;}
.nl{display:flex;align-items:center;gap:12px;text-decoration:none;}
.nl img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1.5px solid var(--bog);}
.nlt{font-family:'Syne',sans-serif;font-size:19px;font-weight:800;}
.nlt em{font-style:normal;color:var(--gold);}
.nm{display:flex;gap:28px;list-style:none;}
.nm a{font-size:13px;color:var(--mu);text-decoration:none;transition:color .2s;}
.nm a:hover{color:var(--w);}
.nc{background:var(--gold);color:#000!important;font-family:'Syne',sans-serif;font-size:12px;font-weight:700;padding:9px 20px;border-radius:30px;text-decoration:none;transition:opacity .2s;}
.nc:hover{opacity:.85;}
.nb{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:4px;}
.nb span{display:block;width:22px;height:1.5px;background:var(--w);border-radius:2px;}
.mm{display:none;position:fixed;top:70px;left:0;right:0;background:rgba(7,9,21,.98);z-index:99;padding:24px 6%;border-bottom:1px solid var(--bo);}
.mm.open{display:flex;flex-direction:column;}
.mm a{font-size:15px;color:var(--mu);text-decoration:none;padding:13px 0;border-bottom:1px solid var(--bo);transition:color .2s;}
.mm a:last-child{border:none;color:var(--gold);font-weight:500;margin-top:6px;}
/* HERO */
.hero{min-height:100vh;display:flex;align-items:center;padding:110px 6% 80px;position:relative;overflow:hidden;}
.hg1{position:absolute;width:800px;height:800px;border-radius:50%;background:radial-gradient(circle,rgba(255,185,0,.065) 0%,transparent 65%);top:-220px;right:-220px;pointer-events:none;}
.hg2{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(255,185,0,.03) 0%,transparent 65%);bottom:-100px;left:-150px;pointer-events:none;}
.hi{position:relative;z-index:2;max-width:1200px;margin:0 auto;width:100%;display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center;}
.hb{display:inline-flex;align-items:center;gap:8px;background:var(--gf);border:1px solid var(--bog);border-radius:30px;padding:7px 16px;font-size:11px;color:var(--gold);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:28px;}
.hbd{width:6px;height:6px;background:var(--gold);border-radius:50%;animation:blink 2s infinite;}
@keyframes blink{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(255,185,0,.5);}50%{opacity:.4;box-shadow:0 0 0 8px rgba(255,185,0,0);}}
.hero h1{font-family:'Syne',sans-serif;font-size:clamp(40px,4.5vw,64px);font-weight:800;line-height:1.02;letter-spacing:-2px;margin-bottom:22px;}
.hero h1 em{font-style:normal;color:var(--gold);}
.hs{font-size:16px;color:var(--mu);font-weight:300;line-height:1.8;margin-bottom:40px;max-width:460px;}
.ha{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:40px;}
.bp{background:var(--gold);color:#000;font-family:'Syne',sans-serif;font-size:13px;font-weight:700;padding:14px 28px;border-radius:30px;text-decoration:none;transition:all .25s;display:inline-flex;align-items:center;gap:8px;}
.bp:hover{opacity:.88;transform:translateY(-2px);box-shadow:0 8px 30px rgba(255,185,0,.25);}
.bo2{border:1px solid var(--bog);color:var(--gold);font-family:'Syne',sans-serif;font-size:13px;font-weight:600;padding:14px 28px;border-radius:30px;text-decoration:none;transition:all .25s;display:inline-flex;align-items:center;gap:8px;}
.bo2:hover{background:var(--gdim);transform:translateY(-2px);}
.ht{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.ht span{font-size:12px;color:var(--mu);}
.tb{background:var(--fa);border:1px solid var(--bo);border-radius:6px;padding:5px 10px;font-size:11px;color:rgba(255,255,255,.45);}
.hcard{background:var(--bg2);border:1px solid var(--bo);border-radius:var(--r);padding:28px;position:relative;overflow:hidden;}
.hcard::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gold),transparent 60%);}
.sm{display:flex;flex-direction:column;gap:10px;margin-bottom:22px;}
.smi{display:flex;align-items:center;gap:14px;padding:12px 16px;background:var(--fa);border:1px solid var(--bo);border-radius:var(--rs);transition:border-color .2s;}
.smi:hover{border-color:var(--bog);}
.smi-i{font-size:18px;width:28px;text-align:center;}
.smi-t{font-size:13px;color:rgba(255,255,255,.7);}
.sts{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.st{background:var(--fa);border:1px solid var(--bo);border-radius:var(--rs);padding:15px 17px;}
.stn{font-family:'Syne',sans-serif;font-size:26px;font-weight:800;color:var(--gold);line-height:1;}
.stl{font-size:11px;color:var(--mu);margin-top:4px;}
/* SECTIONS */
section{padding:100px 6%;position:relative;}
.si{max-width:1200px;margin:0 auto;}
.sh{margin-bottom:52px;}
.stag{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:10px;display:flex;align-items:center;gap:10px;}
.stag::before{content:'';width:20px;height:1px;background:var(--gold);}
.stit{font-family:'Syne',sans-serif;font-size:clamp(30px,3.5vw,46px);font-weight:800;letter-spacing:-1.5px;line-height:1.08;margin-bottom:14px;}
.stit em{font-style:normal;color:var(--gold);}
.ssub{font-size:15px;color:var(--mu);font-weight:300;max-width:500px;line-height:1.8;}
/* SERVICES */
#servicos{background:var(--bg2);}
.sg{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.sc{background:var(--bg);border:1px solid var(--bo);border-radius:var(--r);padding:32px;position:relative;overflow:hidden;transition:border-color .3s,transform .3s,box-shadow .3s;}
.sc:hover{border-color:var(--bog);transform:translateY(-5px);box-shadow:0 20px 60px rgba(0,0,0,.35);}
.sc::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gold),transparent 70%);}
.sct{display:flex;align-items:center;gap:14px;margin-bottom:14px;}
.sib{width:46px;height:46px;background:var(--gf);border:1px solid var(--bog);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:21px;flex-shrink:0;}
.sc h3{font-family:'Syne',sans-serif;font-size:19px;font-weight:700;}
.sc p{font-size:14px;color:var(--mu);line-height:1.75;margin-bottom:18px;}
.sil{list-style:none;display:flex;flex-direction:column;gap:6px;}
.sil li{font-size:13px;color:rgba(255,255,255,.42);padding-left:15px;position:relative;line-height:1.5;}
.sil li::before{content:'›';position:absolute;left:0;color:var(--gold);font-size:14px;line-height:1.3;}
/* PORTFOLIO */
#portfolio{background:var(--bg3);}
.pg{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.pc{background:var(--bg2);border:1px solid var(--bo);border-radius:var(--r);overflow:hidden;transition:border-color .3s,transform .3s,box-shadow .3s;cursor:pointer;}
.pc:hover{border-color:var(--bog);transform:translateY(-5px);box-shadow:0 20px 60px rgba(0,0,0,.4);}
.piw{position:relative;overflow:hidden;height:210px;}
.piw img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;transition:transform .5s;}
.pc:hover .piw img{transform:scale(1.05);}
.pio{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 40%,rgba(7,9,21,.8));}
.pvb{position:absolute;bottom:14px;right:14px;background:var(--gold);color:#000;font-family:'Syne',sans-serif;font-size:11px;font-weight:700;padding:7px 16px;border-radius:20px;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s;pointer-events:none;}
.pc:hover .pvb{opacity:1;transform:translateY(0);}
.pinf{padding:22px 24px;}
.pinf h4{font-family:'Syne',sans-serif;font-size:17px;font-weight:700;margin-bottom:6px;}
.pinf p{font-size:13px;color:var(--mu);line-height:1.65;margin-bottom:14px;}
.ptags{display:flex;flex-wrap:wrap;gap:6px;}
.ptag{background:var(--gf);border:1px solid var(--bog);border-radius:5px;padding:3px 10px;font-size:10px;color:rgba(255,185,0,.8);letter-spacing:.5px;font-weight:500;}
.pct{font-size:11px;color:rgba(255,185,0,.55);margin-top:10px;font-weight:500;}
/* MODAL */
.mo{position:fixed;inset:0;background:rgba(0,0,0,.9);backdrop-filter:blur(10px);z-index:300;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .3s;}
.mo.open{opacity:1;pointer-events:all;}
.mb{background:var(--bg2);border:1px solid var(--bog);border-radius:20px;width:100%;max-width:880px;max-height:92vh;overflow:hidden;display:flex;flex-direction:column;transform:scale(.95) translateY(20px);transition:transform .3s;}
.mo.open .mb{transform:scale(1) translateY(0);}
.mh{padding:22px 26px 18px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--bo);flex-shrink:0;}
.mtag{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:4px;}
.mtit{font-family:'Syne',sans-serif;font-size:20px;font-weight:800;margin-bottom:3px;}
.mds{font-size:12px;color:var(--mu);}
.mcl{background:rgba(255,255,255,.06);border:1px solid var(--bo);color:var(--w);width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0;}
.mcl:hover{background:rgba(255,255,255,.14);}
.mcar{position:relative;background:#050810;overflow:hidden;flex-shrink:0;height:440px;}
.ct{display:flex;height:100%;transition:transform .4s cubic-bezier(.4,0,.2,1);}
.cs{min-width:100%;display:flex;align-items:center;justify-content:center;}
.cs img{max-width:100%;max-height:100%;object-fit:contain;display:block;user-select:none;}
.cb{position:absolute;top:50%;transform:translateY(-50%);background:rgba(7,9,21,.8);border:1px solid var(--bog);color:var(--gold);width:44px;height:44px;border-radius:50%;cursor:pointer;font-size:20px;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .2s,transform .2s;backdrop-filter:blur(4px);}
.cb:hover{background:rgba(255,185,0,.15);transform:translateY(-50%) scale(1.08);}
.cprev{left:14px;}.cnext{right:14px;}
.mft{display:flex;align-items:center;justify-content:space-between;padding:14px 26px;flex-shrink:0;border-top:1px solid var(--bo);}
.cds{display:flex;align-items:center;gap:8px;}
.cd{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.2);cursor:pointer;transition:background .2s,transform .2s;border:none;padding:0;}
.cd.active{background:var(--gold);transform:scale(1.35);}
.ccap{font-size:12px;color:var(--mu);}
/* PORQUÊ */
#porque{background:var(--bg2);}
.wg{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.wc{padding:28px;background:var(--bg);border:1px solid var(--bo);border-radius:var(--r);transition:border-color .3s,transform .3s;}
.wc:hover{border-color:var(--bog);transform:translateY(-4px);}
.wn{font-family:'Syne',sans-serif;font-size:42px;font-weight:800;color:rgba(255,185,0,.1);line-height:1;margin-bottom:12px;}
.wc h4{font-family:'Syne',sans-serif;font-size:15px;font-weight:700;margin-bottom:8px;}
.wc p{font-size:13px;color:var(--mu);line-height:1.75;}
/* CONTACTO */
#contacto{background:var(--bg3);}
.cg{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:start;}
.ci-intro{font-size:15px;color:var(--mu);line-height:1.8;margin-bottom:20px;font-weight:300;}
.cis{display:flex;flex-direction:column;gap:12px;}
.ci{display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--bg2);border:1px solid var(--bo);border-radius:var(--rs);transition:border-color .2s,transform .2s;text-decoration:none;color:inherit;}
.ci:hover{border-color:var(--bog);transform:translateX(4px);}
.cic{width:40px;height:40px;background:var(--gf);border:1px solid var(--bog);border-radius:var(--rs);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;}
.cil{font-size:10px;color:var(--mu);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:2px;}
.civ{font-size:14px;color:var(--w);font-weight:500;}
.cfw{background:var(--bg2);border:1px solid var(--bo);border-radius:var(--r);padding:34px;position:relative;overflow:hidden;}
.cfw::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gold),transparent 60%);}
.cfw h3{font-family:'Syne',sans-serif;font-size:17px;font-weight:700;margin-bottom:5px;}
.fnt{font-size:12px;color:var(--mu);margin-bottom:22px;}
.cf{display:flex;flex-direction:column;gap:13px;}
.fr{display:grid;grid-template-columns:1fr 1fr;gap:13px;}
.fg{display:flex;flex-direction:column;gap:5px;}
.fg label{font-size:11px;color:var(--mu);letter-spacing:.8px;text-transform:uppercase;}
.fg input,.fg textarea,.fg select{background:rgba(255,255,255,.04);border:1px solid var(--bo);border-radius:var(--rs);padding:11px 13px;color:var(--w);font-family:'DM Sans',sans-serif;font-size:14px;outline:none;transition:border-color .2s;width:100%;}
.fg input:focus,.fg textarea:focus,.fg select:focus{border-color:var(--bog);}
.fg input::placeholder,.fg textarea::placeholder{color:rgba(255,255,255,.18);}
.fg textarea{resize:vertical;min-height:100px;}
.fg select{appearance:none;cursor:pointer;}
.fg select option{background:var(--bg2);}
.hp{display:none!important;visibility:hidden;}
.fs{background:var(--gold);color:#000;font-family:'Syne',sans-serif;font-size:14px;font-weight:700;padding:14px;border:none;border-radius:30px;cursor:pointer;transition:all .25s;margin-top:4px;}
.fs:hover{opacity:.88;box-shadow:0 8px 30px rgba(255,185,0,.3);}
.fs:disabled{opacity:.6;cursor:not-allowed;}
.fb{margin-top:12px;padding:12px 16px;border-radius:var(--rs);font-size:13px;display:none;}
.fb.ok{background:rgba(29,158,117,.12);border:1px solid rgba(29,158,117,.3);color:#5DCAA5;display:block;}
.fb.er{background:rgba(220,50,50,.1);border:1px solid rgba(220,50,50,.25);color:#f87171;display:block;}
/* FOOTER */
footer{background:var(--bg);border-top:1px solid var(--bo);padding:44px 6%;}
.fi{max-width:1200px;margin:0 auto;}
.ft{display:flex;align-items:flex-start;justify-content:space-between;gap:40px;margin-bottom:36px;flex-wrap:wrap;}
.flo{display:flex;align-items:center;gap:11px;margin-bottom:10px;}
.flo img{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1px solid var(--bog);}
.flt{font-family:'Syne',sans-serif;font-size:17px;font-weight:800;}
.flt em{font-style:normal;color:var(--gold);}
.fd{font-size:13px;color:var(--mu);max-width:240px;line-height:1.7;}
.fc h5{font-family:'Syne',sans-serif;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:14px;color:rgba(255,255,255,.6);}
.fc a{display:block;font-size:13px;color:var(--mu);text-decoration:none;margin-bottom:8px;transition:color .2s;}
.fc a:hover{color:var(--gold);}
.fb2{border-top:1px solid var(--bo);padding-top:22px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.fc2{font-size:12px;color:rgba(255,255,255,.22);}
/* WHATSAPP */
.waw{position:fixed;bottom:28px;right:28px;z-index:200;display:flex;align-items:center;}
.wal{background:rgba(7,9,21,.95);border:1px solid rgba(37,211,102,.35);color:#fff;font-size:12px;font-weight:500;padding:8px 14px;border-radius:20px 0 0 20px;white-space:nowrap;opacity:0;transform:translateX(10px);transition:opacity .3s,transform .3s;pointer-events:none;}
.waw:hover .wal{opacity:1;transform:translateX(0);}
.waf{width:60px;height:60px;background:var(--gr);border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;position:relative;}
.waf::before{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(37,211,102,.5);animation:war 2s infinite;}
.waf::after{content:'';position:absolute;inset:-12px;border-radius:50%;border:2px solid rgba(37,211,102,.25);animation:war 2s infinite .5s;}
@keyframes war{0%{transform:scale(.85);opacity:1;}100%{transform:scale(1.5);opacity:0;}}
.waf svg{width:28px;height:28px;fill:#fff;position:relative;z-index:1;}
.waf:hover{background:#1ebe5d;box-shadow:0 6px 30px rgba(37,211,102,.5);}
/* ANIM */
.fu{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease;}
.fu.v{opacity:1;transform:translateY(0);}
/* RESPONSIVE */
@media(max-width:960px){
  .hi{grid-template-columns:1fr;gap:40px;}
  .hv{display:none;}
  .sg,.pg,.cg{grid-template-columns:1fr;}
  .wg{grid-template-columns:1fr 1fr;}
  .fr{grid-template-columns:1fr;}
  .nm,.nc{display:none;}
  .nb{display:flex;}
  .ft{flex-direction:column;gap:24px;}
  .mcar{height:300px;}
}
@media(max-width:600px){
  section{padding:72px 5%;}
  .hero{padding:90px 5% 60px;}
  .wg{grid-template-columns:1fr;}
  .wal{display:none;}
  .mcar{height:240px;}
}
