:root{
  --navy:#081b56; --blue:#0070c0; --cyan:#66d2ff; --sky:#eef9ff;
  --ink:#17213a; --muted:#6c6d6f; --line:#d9e1e8; --white:#fff;
  --shadow:0 18px 55px rgba(9,40,74,.12); --radius:22px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}
a{text-decoration:none;color:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}
.topbar{background:var(--navy);color:#dff4ff;font-size:12px}.topbar-inner{height:34px;display:flex;align-items:center;justify-content:space-between}.topbar a{font-weight:700}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(219,230,240,.7)}
.nav{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--navy),var(--blue));display:grid;place-items:center;color:white;font-family:Montserrat;font-weight:800;box-shadow:0 8px 20px rgba(8,126,234,.2)}.brand-mark span{font-size:22px}.brand strong{display:block;font-family:Montserrat;font-size:15px;letter-spacing:.7px;color:var(--navy);line-height:1}.brand small{display:block;color:var(--blue);font-size:9px;letter-spacing:2.1px;font-weight:800;margin-top:5px}.nav-links{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600}.nav-links>a:not(.nav-cta){color:#41536a}.nav-links>a:not(.nav-cta):hover{color:var(--blue)}.nav-cta{background:var(--blue);color:#fff!important;padding:12px 18px;border-radius:12px;box-shadow:0 8px 20px rgba(8,126,234,.18)}.menu-toggle{display:none;border:0;background:none;font-size:25px;color:var(--navy)}
.hero{position:relative;overflow:hidden;background:linear-gradient(145deg,#f7fcff 0%,#eaf7ff 56%,#f8fcff 100%);padding:74px 0 70px}.hero-glow{position:absolute;width:600px;height:600px;border-radius:50%;background:rgba(32,199,232,.10);filter:blur(30px);right:-180px;top:-160px}.hero-grid{position:relative;display:grid;grid-template-columns:1.03fr .97fr;gap:50px;align-items:center}.eyebrow{text-transform:uppercase;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:1.7px;display:flex;align-items:center;gap:9px}.eyebrow span{width:8px;height:8px;border-radius:50%;background:var(--cyan)}h1,h2,h3{font-family:Montserrat,Inter,sans-serif;line-height:1.08}h1{font-size:clamp(42px,5.1vw,69px);letter-spacing:-2.8px;margin:18px 0 20px;color:var(--navy)}h1 em{font-style:normal;color:var(--blue)}.hero-sub{max-width:610px;color:#53667d;font-size:17px;margin:0 0 24px}.promo-card{display:flex;align-items:center;gap:15px;max-width:600px;background:#fff;border:1px solid #d7e9f5;border-radius:18px;padding:15px 17px;box-shadow:0 12px 35px rgba(9,40,74,.08)}.promo-badge{background:var(--blue);color:white;font-weight:900;font-size:11px;padding:8px 10px;border-radius:9px;letter-spacing:.5px}.promo-card strong{display:block;font-size:12px;color:#607086}.promo-card b{display:block;color:var(--navy);font-size:17px}.promo-arrow{margin-left:auto;color:var(--blue);font-size:26px}.hero-actions{display:flex;gap:12px;margin:26px 0 22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 20px;border-radius:13px;font-weight:800;font-size:14px;border:1px solid transparent;transition:.2s}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 12px 25px rgba(8,126,234,.22)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(8,126,234,.28)}.btn-secondary{background:#fff;border-color:#cfe0ee;color:var(--navy)}.btn-outline{border-color:#b8cfdf;color:var(--navy);width:100%}.btn-light{background:#fff;color:var(--navy)}.trust-row{display:flex;gap:18px;flex-wrap:wrap;color:#63758a;font-size:12px;font-weight:600}.trust-row span{color:#0b9e74;font-weight:900;margin-right:5px}
.hero-art{height:480px;position:relative;display:flex;align-items:center;justify-content:center}.circle{position:absolute;border-radius:50%;border:1px solid rgba(8,126,234,.15)}.circle-large{width:420px;height:420px;background:rgba(255,255,255,.46)}.circle-small{width:300px;height:300px}.people-illustration{position:relative;width:320px;height:350px;z-index:2}.person{position:absolute;border-radius:45% 45% 25% 25%;bottom:30px}.person:before{content:"";position:absolute;border-radius:50%;width:76px;height:76px;top:-68px;left:50%;transform:translateX(-50%);background:inherit}.person-a{width:110px;height:205px;background:linear-gradient(180deg,#0d79d8,#0753a1);left:104px}.person-b{width:90px;height:180px;background:linear-gradient(180deg,#1fc3e2,#0c93b5);left:20px;bottom:20px}.person-c{width:92px;height:190px;background:linear-gradient(180deg,#6c86a0,#435a72);right:18px;bottom:20px}.art-card{position:absolute;z-index:4;background:#fff;border:1px solid #dcebf5;border-radius:18px;box-shadow:var(--shadow)}.card-main{left:0;top:72px;padding:16px;display:flex;align-items:center;gap:12px}.shield{width:48px;height:55px;display:grid;place-items:center;background:linear-gradient(180deg,#dff8ff,#c9eeff);color:var(--blue);clip-path:polygon(50% 0,92% 14%,86% 67%,50% 100%,14% 67%,8% 14%);font-weight:900}.card-main small,.card-main strong{display:block}.card-main small{color:#7a899b;font-size:10px}.card-main strong{color:var(--navy);font-size:14px}.floating-card{position:absolute;z-index:5;background:#fff;border:1px solid #dcebf5;border-radius:16px;box-shadow:var(--shadow);padding:11px 13px;display:flex;gap:10px;align-items:center}.floating-card>span{width:32px;height:32px;border-radius:10px;background:var(--sky);color:var(--blue);display:grid;place-items:center;font-weight:900}.floating-card b,.floating-card small{display:block}.floating-card b{font-size:12px;color:var(--navy)}.floating-card small{font-size:9px;color:#7a899b}.card-one{right:4px;top:45px}.card-two{right:15px;bottom:55px}
.strip{background:var(--navy);color:#fff}.strip-inner{min-height:62px;display:flex;align-items:center;justify-content:center;gap:20px;font-size:12px;font-weight:800;letter-spacing:1.2px}.strip-inner span:nth-child(3){color:#79e8ff}
.section{padding:92px 0}.section-head{display:grid;grid-template-columns:1.05fr .7fr;gap:70px;align-items:end;margin-bottom:42px}.section-head.centered{display:block;text-align:center;max-width:720px;margin:0 auto 42px}.section-head h2,.about-grid h2,.faq-grid h2,.cta h2{font-size:clamp(30px,4vw,46px);letter-spacing:-1.6px;color:var(--navy);margin:10px 0 0}.section-head h2 span,.about-grid h2 span,.faq-grid h2 span,.cta h2 span{color:var(--blue)}.section-head p{color:var(--muted);margin:0;font-size:15px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{border:1px solid var(--line);border-radius:20px;padding:25px;background:#fff;transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card.featured{background:linear-gradient(160deg,#f0fbff,#fff)}.icon{width:46px;height:46px;border-radius:13px;background:var(--sky);color:var(--blue);display:grid;place-items:center;font-size:22px;font-weight:900}.service-card h3{font-size:18px;color:var(--navy);margin:22px 0 8px}.service-card p{color:var(--muted);font-size:13px;min-height:85px}.service-card a{color:var(--blue);font-size:12px;font-weight:800}
.section-dark{background:var(--navy);color:#d9e9f6}.section-dark .eyebrow{color:#7be9ff}.section-dark h2{color:#fff}.section-dark p{color:#a8bfd1;max-width:650px}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}.checks{margin-top:30px;display:grid;gap:17px}.checks>div{display:grid;grid-template-columns:38px 1fr;column-gap:10px}.checks span{grid-row:span 2;width:32px;height:32px;border-radius:10px;background:rgba(32,199,232,.13);color:#76e6fb;display:grid;place-items:center}.checks strong{font-size:14px;color:#fff}.checks small{font-size:12px;color:#90aabd}.about-visual{height:380px;border-radius:28px;background:linear-gradient(145deg,#0b3968,#0a2747);border:1px solid rgba(255,255,255,.12);position:relative;overflow:hidden;display:grid;place-items:center}.big-number{font-family:Montserrat;font-size:170px;font-weight:800;color:rgba(255,255,255,.055)}.quote{position:absolute;bottom:48px;left:48px;font-size:25px;line-height:1.2;color:#fff}.quote b{color:#75e6fb}
.pricing-section{background:#f7fbfe}.pricing-grid{display:grid;grid-template-columns:repeat(2, minmax(0,430px));justify-content:center;gap:20px}.price-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;position:relative}.price-card.price-featured{border:2px solid var(--blue);box-shadow:0 20px 50px rgba(8,126,234,.12)}.popular{position:absolute;right:20px;top:20px;background:var(--blue);color:#fff;border-radius:20px;padding:5px 9px;font-size:9px;font-weight:900}.price-tag{font-size:11px;font-weight:900;letter-spacing:1.5px;color:var(--blue)}.price-card h3{font-size:22px;color:var(--navy);margin:9px 0 17px}.price{color:#6c7b8d;font-size:13px}.price strong{display:block;color:var(--navy);font-size:30px;font-family:Montserrat;margin-top:3px}.price-card ul{padding:0;margin:24px 0;list-style:none}.price-card li{font-size:13px;color:#5e7084;padding:8px 0;border-bottom:1px solid #edf2f6}.price-card li:before{content:"✓";color:#0a9b72;font-weight:900;margin-right:8px}
.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.faq-grid>div>p{color:var(--muted);font-size:15px;margin:20px 0 25px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:19px 0}summary{cursor:pointer;list-style:none;font-weight:800;color:var(--navy);font-size:15px;display:flex;justify-content:space-between}summary:after{content:"+";color:var(--blue);font-size:20px}details[open] summary:after{content:"−"}details p{color:var(--muted);font-size:13px;max-width:700px;margin:12px 0 0}
.cta-section{padding:60px 0;background:linear-gradient(110deg,var(--blue),#0b63b8)}.cta{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{color:#fff;max-width:680px}.cta h2 span{color:#8ff0ff}.eyebrow.light{color:#8ff0ff}.footer{background:#071c33;color:#a9bfd1;padding:52px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}.footer .brand strong{color:#fff}.footer .brand small{color:#79e8ff}.footer-grid>div:not(.brand){display:flex;flex-direction:column;gap:7px;font-size:12px}.footer-grid strong{color:#fff;margin-bottom:5px}.copyright{border-top:1px solid rgba(255,255,255,.09);margin-top:40px;padding-top:18px;font-size:11px;color:#7892a8}.whatsapp{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#16a56b;color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 14px 30px rgba(0,0,0,.18);z-index:60}
@media(max-width:900px){.nav-links{gap:14px}.service-grid{grid-template-columns:repeat(2,1fr)}.hero-grid,.about-grid,.faq-grid{grid-template-columns:1fr}.hero-art{height:410px;order:-1}.hero-copy{max-width:720px}.section-head{grid-template-columns:1fr;gap:15px}.footer-grid{grid-template-columns:1fr 1fr}.cta{align-items:flex-start;flex-direction:column}}
@media(max-width:680px){.topbar-inner{justify-content:center}.topbar-inner a{display:none}.nav{height:68px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;left:20px;right:20px;top:68px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links a{text-align:center}.hero{padding:55px 0}.hero-grid{gap:25px}.hero-art{height:330px;transform:scale(.84);margin:-20px 0}.hero-copy h1{letter-spacing:-1.8px}.promo-card{align-items:flex-start}.promo-arrow{display:none}.hero-actions{flex-direction:column}.btn{width:100%}.trust-row{gap:10px}.strip-inner{font-size:9px;gap:10px;text-align:center}.service-grid,.pricing-grid{grid-template-columns:1fr}.section{padding:70px 0}.about-grid{gap:35px}.about-visual{height:300px}.quote{left:28px;bottom:30px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:not(.brand){margin-top:8px}.whatsapp{right:16px;bottom:16px}}

/* V2 — identidad visual basada directamente en el logo suministrado */
.brand-logo{display:flex;align-items:center}
.brand-logo img{display:block;width:230px;height:auto;max-height:58px;object-fit:contain;object-position:left center}
.footer-brand img{width:250px;max-height:62px}
.footer .footer-brand{filter:brightness(0) invert(1);opacity:.96}
.promo-card{border-left:5px solid var(--blue)}
.service-card.featured{border-top:4px solid var(--cyan)}
.eyebrow{color:var(--blue)}
.hero{background:linear-gradient(145deg,#fbfdff 0%,#eef9ff 56%,#ffffff 100%)}
.strip{background:var(--navy)}
.cta-section{background:linear-gradient(110deg,var(--navy),var(--blue))}
@media(max-width:680px){
  .brand-logo img{width:205px;max-height:52px}
  .footer-brand img{width:230px}
}

/* V3 — bloque NOSOTROS renovado: reemplaza el antiguo cuadro "TG" */
.about-visual{
  min-height:380px;
  background:
    radial-gradient(circle at 75% 20%, rgba(102,210,255,.18), transparent 32%),
    linear-gradient(145deg,#ffffff 0%,#eef9ff 48%,#dff3ff 100%);
  border:1px solid #c9e6f4;
  box-shadow:0 22px 55px rgba(8,27,86,.16);
  overflow:hidden;
}
.about-logo-card{
  position:relative;
  z-index:4;
  width:min(84%,430px);
  padding:22px 26px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(0,112,192,.14);
  border-radius:24px;
  box-shadow:0 18px 40px rgba(8,27,86,.13);
}
.about-logo-card img{
  display:block;
  width:100%;
  height:auto;
}
.about-orbit{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(0,112,192,.14);
}
.orbit-one{width:330px;height:330px}
.orbit-two{width:235px;height:235px;border-color:rgba(102,210,255,.32)}
.about-badge{
  position:absolute;
  z-index:5;
  right:28px;
  top:28px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 13px;
  border-radius:14px;
  background:#fff;
  border:1px solid #d5e9f4;
  box-shadow:0 12px 28px rgba(8,27,86,.12);
}
.about-badge span{
  width:30px;height:30px;border-radius:9px;
  display:grid;place-items:center;
  background:#e6f9ff;color:#0070c0;font-weight:900;
}
.about-badge strong,.about-badge small{display:block}
.about-badge strong{font-size:11px;color:#081b56}
.about-badge small{font-size:9px;color:#6c6d6f}
.about-visual .quote{
  z-index:6;
  left:32px;
  bottom:28px;
  color:#081b56;
  font-size:20px;
  text-shadow:0 1px 0 rgba(255,255,255,.7);
}
.about-visual .quote b{color:#0070c0}
@media(max-width:680px){
  .about-logo-card{width:88%;padding:18px}
  .about-badge{right:16px;top:16px}
  .about-visual .quote{left:22px;bottom:22px;font-size:18px}
}

/* V4 — sección CONTACTANOS */
.contact-section{padding:78px 0;background:linear-gradient(145deg,#eef9ff 0%,#fff 55%,#eaf6ff 100%);border-top:1px solid #dcecf5}.contact-card{display:grid;grid-template-columns:1fr 1.15fr;gap:55px;align-items:center;padding:48px;border-radius:28px;background:#fff;border:1px solid #cfe5f1;box-shadow:0 22px 55px rgba(8,27,86,.12)}.contact-heading h2{font-family:Montserrat,Inter,sans-serif;font-size:clamp(36px,5vw,58px);letter-spacing:-2px;color:#081b56;margin:10px 0 12px}.contact-heading p{color:#6c6d6f;max-width:470px;font-size:15px;margin:0}.contact-details{display:grid;grid-template-columns:1fr;gap:12px}.contact-item{display:flex;align-items:center;gap:15px;padding:17px 18px;border:1px solid #dbe8ef;border-radius:17px;background:#fbfdff;transition:.2s}.contact-item:hover{transform:translateY(-2px);border-color:#66d2ff;box-shadow:0 10px 25px rgba(8,27,86,.08)}.contact-icon{flex:0 0 45px;width:45px;height:45px;display:grid;place-items:center;border-radius:13px;background:#eaf8ff;color:#0070c0;font-size:20px;font-weight:900}.contact-item small,.contact-item strong{display:block}.contact-item small{color:#6c6d6f;font-size:9px;font-weight:900;letter-spacing:1.2px;margin-bottom:3px}.contact-item strong{color:#081b56;font-size:16px}.contact-email strong{font-size:18px;color:#0070c0}.contact-whatsapp{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 18px;border-radius:14px;background:#0070c0;color:#fff;font-weight:800;font-size:13px;box-shadow:0 10px 22px rgba(0,112,192,.2)}.contact-whatsapp:hover{background:#081b56}@media(max-width:800px){.contact-card{grid-template-columns:1fr;padding:30px;gap:28px}}@media(max-width:680px){.contact-section{padding:60px 0}.contact-card{padding:24px;border-radius:22px}.contact-email strong{font-size:14px;word-break:break-word}}

/* V5 — pie de página: solo el símbolo gráfico del logo */
.footer-symbol{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  min-height:74px;
}
.footer-symbol img{
  display:block;
  width:86px;
  height:auto;
  max-height:86px;
  object-fit:contain;
  filter:none;
}
@media(max-width:680px){
  .footer-symbol{min-height:auto}
  .footer-symbol img{width:76px}
}

/* V6 — optimización específica para celulares */
@media (max-width: 680px){

  body{
    overflow-x:hidden;
  }

  .container{
    width:min(100% - 28px, 1160px);
  }

  /* Barra superior */
  .topbar-inner{
    min-height:34px;
    height:auto;
    padding:8px 0;
    text-align:center;
    line-height:1.3;
  }

  /* Encabezado */
  .nav{
    height:70px;
  }

  .brand-logo img{
    width:198px;
    max-height:50px;
  }

  .menu-toggle{
    width:44px;
    height:44px;
    border:1px solid #d6e6ef;
    border-radius:12px;
    background:#fff;
    font-size:22px;
    line-height:1;
  }

  .nav-links{
    top:70px;
    left:14px;
    right:14px;
    padding:10px;
    gap:4px;
    border-radius:18px;
  }

  .nav-links a{
    padding:11px 10px;
  }

  .nav-cta{
    margin-top:3px;
  }

  /* Hero */
  .hero{
    padding:42px 0 46px;
  }

  .hero-grid{
    gap:12px;
  }

  .hero-art{
    height:265px;
    transform:none;
    margin:0;
    order:-1;
  }

  .circle-large{
    width:255px;
    height:255px;
  }

  .circle-small{
    width:190px;
    height:190px;
  }

  .people-illustration{
    transform:scale(.67);
  }

  .card-main{
    left:0;
    top:18px;
    padding:11px;
    gap:8px;
    border-radius:14px;
  }

  .shield{
    width:38px;
    height:43px;
  }

  .card-main strong{
    font-size:11px;
  }

  .card-main small{
    font-size:8px;
  }

  .floating-card{
    padding:8px 9px;
    border-radius:12px;
  }

  .floating-card>span{
    width:27px;
    height:27px;
  }

  .card-one{
    right:0;
    top:8px;
  }

  .card-two{
    right:0;
    bottom:15px;
  }

  h1{
    font-size:40px;
    letter-spacing:-1.8px;
    margin:10px 0 15px;
  }

  .hero-sub{
    font-size:14px;
    line-height:1.65;
    margin-bottom:18px;
  }

  .promo-card{
    padding:13px;
    gap:10px;
    border-radius:15px;
  }

  .promo-badge{
    font-size:9px;
    padding:7px 8px;
    white-space:nowrap;
  }

  .promo-card b{
    font-size:13px;
    line-height:1.25;
  }

  .promo-card strong{
    font-size:9px;
  }

  .hero-actions{
    gap:9px;
    margin:20px 0 17px;
  }

  .btn{
    min-height:48px;
    padding:13px 15px;
  }

  .trust-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    font-size:10px;
  }

  .trust-row div:last-child{
    grid-column:1 / -1;
  }

  /* Franja */
  .strip-inner{
    min-height:58px;
    padding:9px 0;
    font-size:8px;
    letter-spacing:.7px;
  }

  /* Secciones */
  .section{
    padding:62px 0;
  }

  .section-head{
    margin-bottom:30px;
  }

  .section-head h2,
  .about-grid h2,
  .faq-grid h2{
    font-size:32px;
    letter-spacing:-1.1px;
  }

  .section-head p{
    font-size:13px;
    line-height:1.65;
  }

  .service-grid{
    gap:12px;
  }

  .service-card{
    padding:21px;
    border-radius:18px;
  }

  .service-card h3{
    font-size:17px;
    margin-top:18px;
  }

  .service-card p{
    min-height:0;
    font-size:12px;
    line-height:1.65;
  }

  .service-card a{
    font-size:11px;
  }

  /* Nosotros */
  .section-dark{
    padding:64px 0;
  }

  .about-grid{
    gap:30px;
  }

  .about-grid p{
    font-size:13px;
    line-height:1.7;
  }

  .about-visual{
    min-height:285px;
    border-radius:22px;
  }

  .about-logo-card{
    width:82%;
    padding:15px 18px;
    border-radius:18px;
  }

  .about-badge{
    right:12px;
    top:12px;
    padding:8px 9px;
  }

  .about-badge span{
    width:26px;
    height:26px;
  }

  .about-badge strong{
    font-size:9px;
  }

  .about-badge small{
    font-size:8px;
  }

  .about-visual .quote{
    left:20px;
    bottom:20px;
    font-size:16px;
  }

  /* Planes */
  .pricing-grid{
    gap:14px;
  }

  .price-card{
    padding:24px;
    border-radius:20px;
  }

  .price-card h3{
    font-size:20px;
  }

  .price strong{
    font-size:27px;
  }

  /* FAQ */
  .faq-grid{
    gap:35px;
  }

  summary{
    font-size:13px;
    gap:15px;
  }

  details{
    padding:16px 0;
  }

  details p{
    font-size:12px;
    line-height:1.65;
  }

  /* Contactanos */
  .contact-section{
    padding:58px 0;
  }

  .contact-card{
    width:100%;
    padding:23px 18px;
    gap:25px;
    border-radius:21px;
  }

  .contact-heading h2{
    font-size:38px;
    letter-spacing:-1.4px;
  }

  .contact-heading p{
    font-size:13px;
    line-height:1.65;
  }

  .contact-item{
    padding:14px 12px;
    gap:11px;
    border-radius:14px;
  }

  .contact-icon{
    flex:0 0 39px;
    width:39px;
    height:39px;
    border-radius:11px;
    font-size:17px;
  }

  .contact-item small{
    font-size:8px;
    letter-spacing:.8px;
  }

  .contact-item strong,
  .contact-email strong{
    font-size:12px;
    line-height:1.35;
    word-break:break-word;
  }

  .contact-whatsapp{
    min-height:48px;
    font-size:12px;
  }

  /* CTA */
  .cta-section{
    padding:50px 0;
  }

  .cta h2{
    font-size:31px;
  }

  /* Footer */
  .footer{
    padding:42px 0 18px;
  }

  .footer-grid{
    gap:25px;
  }

  .footer-grid>div:not(.footer-symbol){
    font-size:11px;
  }

  .footer-symbol{
    min-height:60px;
  }

  .footer-symbol img{
    width:68px;
  }

  .copyright{
    margin-top:30px;
    font-size:9px;
    line-height:1.5;
  }

  /* WhatsApp */
  .whatsapp{
    width:54px;
    height:54px;
    right:15px;
    bottom:15px;
    font-size:13px;
  }
}

/* Teléfonos muy pequeños */
@media (max-width:380px){
  .container{
    width:calc(100% - 24px);
  }

  .brand-logo img{
    width:177px;
  }

  h1{
    font-size:35px;
  }

  .hero-art{
    height:240px;
  }

  .promo-card{
    display:block;
  }

  .promo-badge{
    display:inline-block;
    margin-bottom:8px;
  }

  .contact-heading h2{
    font-size:34px;
  }
}
