:root{
  --navy:#041f46;--navy-dark:#02142d;--blue:#087bc1;--sky:#35a9df;--silver:#d9e0e5;
  --ink:#10243c;--muted:#607188;--light:#f3f7fa;--white:#fff;--line:#dce6ee;
  --shadow:0 24px 70px rgba(4,31,70,.16);--radius:24px;--max:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.topbar{background:linear-gradient(90deg,var(--navy-dark),var(--navy));color:#dbe8f3;font-size:13px}.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.topbar a{color:#fff}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(220,230,238,.95);box-shadow:0 8px 30px rgba(4,31,70,.05)}
.nav{height:104px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;background:#fff;border-radius:14px;padding:5px 10px}.brand img{width:250px;height:74px;object-fit:contain}.menu{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:800;color:#34485e}.menu a{position:relative}.menu a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--blue);transition:.25s}.menu a:hover:after,.menu a.active:after{right:0}
.mobile-toggle{display:none;border:0;background:none;font-size:28px;color:var(--navy)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 24px;border-radius:999px;background:linear-gradient(135deg,var(--blue),#045b99);color:#fff!important;font-size:14px;font-weight:900;border:1px solid transparent;transition:.2s;box-shadow:0 14px 30px rgba(8,123,193,.25)}.btn:hover{transform:translateY(-2px);filter:saturate(1.08)}.btn.gold{background:#eef3f6;color:var(--navy)!important;box-shadow:none;border-color:#fff}.btn.outline{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.42);box-shadow:none}
.hero{min-height:720px;display:flex;align-items:center;color:#fff;position:relative;background:linear-gradient(90deg,rgba(2,13,30,.98) 0%,rgba(4,31,70,.9) 43%,rgba(4,31,70,.22) 82%),url("images/porto-hero.png") center/cover}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 24% 32%,rgba(53,169,223,.22),transparent 34%),linear-gradient(180deg,transparent 70%,rgba(2,13,30,.8))}.hero .container{position:relative;z-index:2}.hero-copy{max-width:720px}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#82d6f5;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:2.4px}.eyebrow:before{content:"";width:34px;height:2px;background:currentColor}
h1,h2,h3{line-height:1.1;margin:0 0 20px}h1{font-size:clamp(44px,6vw,78px);letter-spacing:-2.7px}.hero h1 span{color:var(--sky)}.hero p{font-size:20px;color:#dfeaf2;max-width:640px;margin:0 0 30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:54px;max-width:780px}.metric{padding:20px 18px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.07);backdrop-filter:blur(10px)}.metric strong{display:block;color:#fff;font-size:22px;line-height:1.12}.metric span{display:block;margin-top:8px;font-size:12px;text-transform:uppercase;letter-spacing:1.2px;color:#a9c6da}
.section{padding:104px 0}.section.soft{background:linear-gradient(180deg,#f8fbfd,var(--light))}.section.dark{background:linear-gradient(135deg,var(--navy-dark),var(--navy));color:#fff}.section-head{max-width:760px;margin-bottom:48px}.section-head.center{text-align:center;margin:0 auto 52px}.section-head h2{font-size:clamp(34px,4vw,54px);letter-spacing:-1.7px}.section-head p{color:var(--muted);font-size:17px}.dark .section-head p{color:#b6c9d9}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;box-shadow:0 12px 34px rgba(10,39,72,.06);transition:.25s}.card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.card .icon{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#e7f5fc,#fff);color:var(--blue);font-size:27px;margin-bottom:25px}.card h3{font-size:24px}.card p{color:var(--muted);margin:0}.card .link{display:inline-block;color:var(--blue);font-weight:900;margin-top:18px}
.split{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}.visual{position:relative}.visual>img{border-radius:28px;min-height:500px;object-fit:cover;box-shadow:var(--shadow)}.float-card{position:absolute;left:-35px;bottom:34px;background:#fff;border-radius:20px;padding:24px 28px;box-shadow:var(--shadow);max-width:280px}.float-card strong{display:block;color:var(--navy);font-size:18px}.float-card span{color:var(--muted);font-size:13px}
.checklist{display:grid;gap:14px;margin:28px 0}.check{display:flex;gap:12px;align-items:flex-start}.check b{width:26px;height:26px;flex:0 0 26px;border-radius:50%;display:grid;place-items:center;background:#e6f5fc;color:var(--blue)}
.process{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;counter-reset:step}.step{position:relative;padding:24px 16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);border-radius:18px;min-height:174px}.step:before{counter-increment:step;content:"0" counter(step);display:block;color:#8bd7f5;font-size:13px;font-weight:900;letter-spacing:1px;margin-bottom:28px}.step strong{font-size:15px}.step p{color:#a9bed1;font-size:13px;line-height:1.45;margin:10px 0 0}
.cta{background:linear-gradient(120deg,var(--blue),#064f91);color:#fff;border-radius:32px;padding:58px 62px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:0 25px 65px rgba(10,92,156,.25)}.cta h2{font-size:39px;max-width:670px}.cta p{margin:0;color:#dcedf7}
.page-hero{padding:112px 0 92px;background:linear-gradient(115deg,var(--navy-dark),#0b3c69);color:#fff;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:440px;height:440px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-80px;top:-170px;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.02)}.page-hero h1{font-size:clamp(42px,5vw,65px);max-width:870px}.page-hero p{max-width:740px;color:#cbdce9;font-size:18px}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.stat{padding:26px;border-left:4px solid var(--blue);background:#fff;box-shadow:0 8px 24px rgba(6,23,46,.07)}.stat strong{font-size:30px;color:var(--navy);display:block}.stat span{font-size:13px;color:var(--muted)}
.service-row{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;margin-bottom:90px}.service-row:nth-child(even) .service-image{order:2}.service-image img{width:100%;height:430px;object-fit:cover;border-radius:26px;box-shadow:var(--shadow)}.tag{display:inline-block;padding:6px 12px;border-radius:99px;background:#e8f5fb;color:#0877b8;font-size:11px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:25px}.feature-list span{padding:14px 15px;border-radius:12px;background:var(--light);font-size:14px;font-weight:800}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px}.contact-card{background:linear-gradient(145deg,var(--navy-dark),var(--navy));color:#fff;border-radius:26px;padding:40px;box-shadow:var(--shadow)}.contact-item{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.12)}.contact-item small{display:block;color:#8bd7f5;font-size:11px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase}.contact-item a,.contact-item p{margin:5px 0 0;color:#fff}.form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:900}.field input,.field select,.field textarea{width:100%;padding:15px 16px;border:1px solid #cad7e1;border-radius:12px;font:inherit;background:#fff}.field textarea{min-height:135px;resize:vertical}.map{margin-top:40px;border:0;width:100%;height:420px;border-radius:24px}
.footer{background:#021731;color:#aabbd0;padding:72px 0 26px}.footer-grid{display:grid;grid-template-columns:1.45fr .7fr .85fr;gap:55px}.footer-logo{width:320px;height:102px;object-fit:contain;background:#fff;border-radius:15px;padding:6px 12px;margin-bottom:22px}.footer h3{font-size:14px;color:#fff;text-transform:uppercase;letter-spacing:1.4px}.footer a{display:block;margin:9px 0}.footer-phone{border-top:1px solid rgba(255,255,255,.1);margin:28px 0 0;padding-top:18px;color:#dce8f2}.footer-phone strong{color:#fff}.footer-phone a{font-size:18px;font-weight:900;color:#fff}.legal{border-top:1px solid rgba(255,255,255,.1);margin-top:45px;padding-top:22px;font-size:12px;display:flex;justify-content:space-between;gap:20px}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:80;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#25d366;color:#fff!important;box-shadow:0 16px 38px rgba(0,0,0,.28);border:3px solid #fff;transition:.2s}.whatsapp-float svg{width:35px;height:35px;display:block}.whatsapp-float:hover{transform:translateY(-3px) scale(1.03);background:#1ebe5d}.whatsapp-float .whatsapp-label{position:absolute;right:74px;white-space:nowrap;background:#fff;color:#14324b;border-radius:999px;padding:8px 13px;font-size:13px;font-weight:900;box-shadow:0 10px 24px rgba(0,0,0,.16);opacity:0;pointer-events:none;transform:translateX(8px);transition:.2s}.whatsapp-float:hover .whatsapp-label{opacity:1;transform:translateX(0)}
.notice{background:#fff8e7;border:1px solid #f1d697;color:#6d551b;border-radius:13px;padding:14px 18px;font-size:13px;margin-top:25px}
@media(max-width:900px){.menu{display:none;position:absolute;top:104px;left:0;right:0;background:#fff;padding:25px;box-shadow:var(--shadow);flex-direction:column}.menu.open{display:flex}.mobile-toggle{display:block}.hero{min-height:680px}.hero-metrics{grid-template-columns:1fr;max-width:420px}.grid-3,.split,.service-row,.contact-grid{grid-template-columns:1fr}.process{grid-template-columns:repeat(2,1fr)}.stat-grid{grid-template-columns:1fr 1fr}.service-row:nth-child(even) .service-image{order:0}.float-card{left:15px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){.topbar .container span:first-child{display:none}.container{width:min(100% - 28px,var(--max))}.section{padding:74px 0}.nav{height:84px}.brand{padding:3px 6px}.brand img{width:205px;height:64px}.menu{top:84px}h1{font-size:43px}.hero{min-height:760px}.hero p{font-size:17px}.hero-metrics{margin-top:34px}.grid-3,.stat-grid,.form,.feature-list{grid-template-columns:1fr}.process{grid-template-columns:1fr}.cta{padding:35px 28px;align-items:flex-start;flex-direction:column}.cta h2{font-size:30px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.legal{flex-direction:column}.visual>img{min-height:380px}.page-hero{padding:82px 0}.whatsapp-float{right:14px;bottom:14px;width:58px;height:58px}.whatsapp-float svg{width:31px;height:31px}.whatsapp-float .whatsapp-label{display:none}}
