:root{
  --red:#ed111b;
  --red-dark:#98070d;
  --black:#070708;
  --black-2:#101011;
  --green:#09b637;
  --green-dark:#058e2b;
  --white:#ffffff;
  --text:#111111;
  --muted:#666666;
  --line:rgba(255,255,255,.16);
  --shadow:0 24px 60px rgba(0,0,0,.18);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Poppins',Arial,sans-serif;background:#fff;color:var(--text);overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}

.container{width:min(1430px,calc(100% - 76px));margin:0 auto}

.topbar{height:44px;background:#080808;color:#fff;font-size:15px;font-weight:500;position:relative;z-index:20}
.topbar__inner{height:100%;display:flex;align-items:center;justify-content:center;gap:58px;white-space:nowrap}
.topbar__item{display:inline-flex;align-items:center;gap:9px;color:#fff;opacity:.96}
.topbar__item:hover{opacity:1;color:#fff}
.topbar__icon{font-size:16px;line-height:1;color:#fff}
.topbar__icon--red{color:var(--red);font-size:14px}
.topbar__icon--green{color:var(--green)}

.header{height:126px;background:#fff;position:relative;z-index:18;box-shadow:0 10px 32px rgba(0,0,0,.08)}
.header__inner{height:100%;display:grid;grid-template-columns:310px 1fr 315px;align-items:center;gap:24px}
.header__logo img{width:254px;height:auto}
.header__menu{display:flex;align-items:center;justify-content:center;gap:50px;font-weight:800}
.header__menu a{font-size:16px;color:#111;line-height:1;padding:20px 0;border-bottom:2px solid transparent;transition:.2s;color:#111!important;text-decoration:none!important}
.header__menu a:hover{color:var(--red)!important;border-color:var(--red)}
.header__cta{justify-self:end;min-width:298px;height:60px;font-size:16px}
.header__toggle{display:none;width:46px;height:42px;border:1px solid #e4e4e4;border-radius:10px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
.header__toggle span{display:block;width:22px;height:2px;background:#111;border-radius:2px}

.btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:8px;font-weight:900;letter-spacing:.15px;line-height:1;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s,color .2s,border-color .2s;text-align:center;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn--whatsapp{background:linear-gradient(180deg,#11c840 0%,#06ae31 100%);color:#fff!important;box-shadow:0 18px 38px rgba(9,182,55,.24);padding:20px 30px}
.btn--whatsapp:hover{background:linear-gradient(180deg,#12d946 0%,#079c2f 100%)}
.btn--outline{background:rgba(0,0,0,.2);border:2px solid rgba(255,255,255,.78);color:#fff!important;padding:18px 34px}
.btn--outline:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn--red-outline{border-color:var(--red);color:#fff!important;background:transparent;padding:15px 24px;font-size:13px;margin-top:20px}
.btn--small{padding:13px 20px;font-size:13px;border-width:1px}
.btn--full{width:100%;padding:17px 20px}
.wa-mini{font-size:17px;line-height:1}

.hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 14% 50%,rgba(237,17,27,.27) 0%,rgba(237,17,27,.13) 30%,transparent 52%),linear-gradient(90deg,#130407 0%,#0b0b0d 44%,#111112 100%);min-height:712px;padding:78px 0 58px}
.hero__texture{position:absolute;inset:0;background-image:radial-gradient(rgba(237,17,27,.26) 1px,transparent 1px);background-size:13px 13px;opacity:.16;pointer-events:none}
.hero__circle{position:absolute;border:2px solid rgba(237,17,27,.34);border-radius:999px;pointer-events:none}
.hero__circle--one{width:660px;height:660px;left:-52px;top:28px}
.hero__circle--two{width:430px;height:430px;left:205px;top:188px}
.hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:45.5% 54.5%;align-items:center;gap:64px;min-height:576px}
.hero__content{max-width:650px}
.hero__eyebrow{margin:0 0 24px;color:var(--red);font-size:15.5px;font-weight:900;letter-spacing:.7px;text-transform:uppercase}
.hero h1{margin:0;font-size:59px;line-height:1.12;letter-spacing:-2.6px;font-weight:900;color:#fff;max-width:660px}
.hero h1 span{display:block;color:var(--red);font-size:63px;line-height:1.08;letter-spacing:-2.4px;white-space:nowrap}
.hero__description{max-width:635px;margin:30px 0 33px;color:#fff;font-size:19px;line-height:1.65;font-weight:500}
.hero__actions{display:flex;align-items:center;gap:22px;margin-bottom:60px}
.hero__actions .btn{min-width:252px;height:58px;font-size:15px}
.hero__actions .btn--outline{min-width:196px}
.trust{display:flex;align-items:flex-start;gap:38px;flex-wrap:nowrap}
.trust__item{display:flex;align-items:center;gap:14px;min-width:0;color:#fff}
.trust__icon{width:54px;height:54px;border:4px solid var(--red);border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 54px;color:#fff;font-size:24px}
.trust__item strong{display:block;font-size:15px;font-weight:900;line-height:1.1;white-space:nowrap}
.trust__item small{display:block;color:#e8e8e8;font-size:13px;margin-top:5px;line-height:1.1;white-space:nowrap}
.hero__photo{position:relative;align-self:center;width:100%}
.photo-card{position:relative;border:1px solid rgba(255,255,255,.24);border-radius:20px;padding:14px;background:rgba(10,10,10,.36);box-shadow:0 35px 80px rgba(0,0,0,.45);overflow:hidden}
.photo-card:before{content:"";position:absolute;inset:14px;border-radius:14px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);z-index:2;pointer-events:none}
.photo-card img{width:100%;height:520px;object-fit:cover;object-position:center center;border-radius:14px;filter:saturate(1.02) contrast(1.02)}

.benefits{background:#fff;padding:56px 0 70px;box-shadow:0 -10px 35px rgba(0,0,0,.06);position:relative;z-index:3}
.benefits__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:44px;align-items:stretch}
.benefit-card{background:#fff;min-height:220px;border-radius:9px;text-align:center;padding:35px 28px;box-shadow:0 25px 58px rgba(0,0,0,.12);display:flex;flex-direction:column;align-items:center;justify-content:flex-start}
.benefit-card__icon{color:var(--red);font-size:54px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.benefit-card h3{font-size:20px;line-height:1.15;margin:0 0 12px;font-weight:900;color:#111}
.benefit-card p{margin:0;color:#222;line-height:1.62;font-size:15px}

.services{background:linear-gradient(135deg,#0a0a0a 0%,#171717 100%);color:#fff;padding:88px 0}
.services__grid{display:grid;grid-template-columns:325px 1fr;gap:62px;align-items:start}
.section-title span{display:block;color:var(--red);font-size:13px;font-weight:900;letter-spacing:.4px;text-transform:uppercase;margin-bottom:16px}
.section-title h2{margin:0 0 18px;color:#111;font-size:38px;line-height:1.15;font-weight:900;letter-spacing:-1px}
.section-title p{margin:0;color:#555;line-height:1.75;font-size:16px}
.section-title--dark h2,.section-title--dark p{color:#fff}
.section-title--dark p{color:#dedede}
.section-title--center{text-align:center;max-width:760px;margin:0 auto}
.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.service-list article{min-height:190px;background:#1f1f20;border:1px solid rgba(255,255,255,.06);border-radius:9px;padding:27px;box-shadow:0 20px 42px rgba(0,0,0,.12);transition:.2s}
.service-list article:hover{transform:translateY(-4px);border-color:rgba(237,17,27,.55)}
.service-list span{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:2px solid var(--red);border-radius:6px;color:var(--red);font-size:25px;line-height:1}
.service-list h3{font-size:20px;line-height:1.15;margin:15px 0 10px;color:#fff}
.service-list p{font-size:14px;line-height:1.58;color:#d2d2d2;margin:0 0 12px}
.service-list a{font-size:12px;font-weight:900;color:var(--red);letter-spacing:.4px}

.process{background:#fff;padding:66px 0 72px}
.process__grid{display:grid;grid-template-columns:310px 1fr;gap:42px;align-items:center}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.steps article{position:relative;text-align:center;padding:16px 10px}
.steps b{position:absolute;top:-10px;left:0;right:0;color:#efefef;font-size:54px;line-height:1;font-weight:900;z-index:0}
.steps span{position:relative;z-index:1;width:76px;height:76px;background:var(--red);color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:29px;box-shadow:0 18px 28px rgba(237,17,27,.24)}
.steps h3{font-size:16px;margin:18px 0 8px;color:#111}
.steps p{margin:0;color:#565656;font-size:13px;line-height:1.5}

.reviews{background:#111;color:#fff;padding:72px 0 78px}
.review-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px}
.review-list article{background:#202020;border-radius:10px;border-top:3px solid var(--red);padding:28px;box-shadow:0 20px 44px rgba(0,0,0,.18)}
.stars{font-size:20px;color:#ffd21a;font-weight:900;margin-bottom:16px}
.review-list p{color:#e2e2e2;line-height:1.65;margin:0 0 18px}
.review-list strong{display:block;color:#fff;font-size:15px}
.review-list small{display:block;color:#aaa;margin-top:4px}

.location{display:grid;grid-template-columns:1fr 1.18fr 1fr;min-height:310px;background:var(--red);color:#fff}
.location__info,.location__whats{padding:52px 70px;background:linear-gradient(135deg,#d80008 0%,#f0101b 100%)}
.location span{display:block;font-size:12px;font-weight:900;color:#ffd0d0;letter-spacing:.5px;margin-bottom:14px}
.location h2{font-size:31px;line-height:1.15;margin:0 0 18px;font-weight:900}
.location p{line-height:1.7;margin:0 0 24px}
.location__buttons{display:flex;gap:12px;flex-wrap:wrap}
.location__map iframe{width:100%;height:100%;min-height:310px;border:0;display:block;filter:grayscale(.08) saturate(1.03)}
.location__whats .btn--outline{margin-top:12px}

.footer{background:#111;color:#fff;padding:52px 0 26px}
.footer__grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1.35fr;gap:42px;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:34px}
.footer__brand img{width:215px;margin-bottom:18px;filter:brightness(0) invert(1)}
.footer p{color:#d1d1d1;line-height:1.7;margin:0}
.footer h4{font-size:15px;margin:0 0 17px;color:#fff;text-transform:uppercase}
.footer a{display:block;color:#d1d1d1;font-size:14px;margin:9px 0}
.footer a:hover{color:#fff}
.footer__bottom{display:flex;justify-content:space-between;gap:24px;padding-top:24px;color:#bdbdbd;font-size:13px}

.floating-whatsapp{position:fixed;right:28px;bottom:26px;z-index:100;width:126px;height:126px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 18px 26px rgba(0,0,0,.28));transition:transform .2s}
.floating-whatsapp:hover{transform:translateY(-4px) scale(1.02)}
.floating-whatsapp img{width:126px;height:126px;object-fit:contain}
.floating-whatsapp:after{content:"";position:absolute;left:1px;bottom:25px;width:38px;height:38px;border-radius:50%;background:#1ec94c;border:4px solid #fff;box-shadow:0 10px 18px rgba(0,0,0,.2)}

@media(max-width:1280px){
  .container{width:min(1180px,calc(100% - 48px))}
  .header__inner{grid-template-columns:250px 1fr 286px}
  .header__logo img{width:230px}
  .header__menu{gap:30px}
  .hero h1{font-size:52px}.hero h1 span{font-size:56px}
  .hero__description{font-size:18px}
  .photo-card img{height:480px}
  .trust{gap:22px}.trust__item strong{font-size:13.5px}.trust__item small{font-size:12px}
}

@media(max-width:1024px){
  .topbar{height:auto;padding:9px 0}.topbar__inner{gap:14px;flex-wrap:wrap;font-size:12px;line-height:1.4}
  .header{height:auto;padding:20px 0}.header__inner{grid-template-columns:1fr auto;gap:18px}.header__logo img{width:210px}.header__toggle{display:flex;justify-self:end}.header__menu{display:none;grid-column:1 / -1;flex-direction:column;gap:0;align-items:stretch;background:#fff;border-top:1px solid #eee;padding:10px 0}.header__menu.is-open{display:flex}.header__menu a{padding:16px 10px;text-align:center}.header__cta{grid-column:1 / -1;justify-self:stretch;min-width:0;width:100%;height:54px}
  .hero{padding:62px 0 46px;min-height:auto}.hero__grid{grid-template-columns:1fr;gap:38px}.hero__content{max-width:100%}.hero h1{font-size:45px;letter-spacing:-1.6px}.hero h1 span{font-size:50px;white-space:normal}.hero__description{max-width:800px}.trust{flex-wrap:wrap}.photo-card img{height:440px}.benefits__grid,.service-list,.steps,.review-list,.footer__grid{grid-template-columns:repeat(2,1fr)}.services__grid,.process__grid,.location{grid-template-columns:1fr}.location__info,.location__whats{padding:42px 32px}.floating-whatsapp{width:100px;height:100px;right:18px;bottom:18px}.floating-whatsapp img{width:100px;height:100px}.floating-whatsapp:after{width:32px;height:32px;bottom:20px}
}

@media(max-width:640px){
  .container{width:calc(100% - 28px)}
  .header__inner{justify-items:center}.header__logo img{width:200px}.header__toggle{position:absolute;right:14px;top:26px}.hero{padding:50px 0 36px}.hero__circle--one{width:410px;height:410px;left:-135px;top:46px}.hero__circle--two{width:270px;height:270px;left:60px;top:165px}.hero h1{font-size:38px;line-height:1.15}.hero h1 span{font-size:42px}.hero__eyebrow{font-size:13px}.hero__description{font-size:16px}.hero__actions{flex-direction:column;align-items:stretch;margin-bottom:40px}.hero__actions .btn{width:100%;min-width:0}.trust{flex-direction:column;gap:18px}.photo-card{padding:10px;border-radius:16px}.photo-card img{height:330px;border-radius:10px}.benefits{padding:40px 0}.benefits__grid,.service-list,.steps,.review-list,.footer__grid{grid-template-columns:1fr}.services{padding:56px 0}.section-title h2{font-size:30px}.process{padding:48px 0}.footer__bottom{flex-direction:column}.floating-whatsapp{width:82px;height:82px}.floating-whatsapp img{width:82px;height:82px}.floating-whatsapp:after{width:28px;height:28px;left:-2px;bottom:16px;border-width:3px}
}
