/* A R NET TELECOM | stylesheet final organizada */

:root{
  --bg:#f7fafc;
  --bg-soft:#edf4fb;
  --surface:#ffffff;
  --surface-2:#f9fbfd;
  --text:#18212f;
  --muted:#617084;
  --gold:#f7b733;
  --gold-2:#f59e0b;
  --blue:#0b8ef0;
  --blue-2:#0a5fd7;
  --line:rgba(24,33,47,.10);
  --shadow:0 18px 45px rgba(15,23,42,.08);
  --radius:28px;
  --container:1180px;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  color:var(--text);
  background:linear-gradient(180deg,#f6faff 0%, #eef5ff 52%, #f8fbff 100%);
  overflow-x:hidden;
}
a{text-decoration:none;color:inherit}
button{font:inherit}
.container{width:min(calc(100% - 32px),var(--container));margin:0 auto}

.bg-orb{position:fixed;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:-1}
.orb-1{width:300px;height:300px;top:-50px;left:-70px;background:rgba(255,191,71,.18)}
.orb-2{width:340px;height:340px;top:0;right:-100px;background:rgba(37,99,235,.14)}

.site-header{position:sticky;top:0;z-index:50;padding:16px 0;backdrop-filter:blur(12px)}
.nav{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:16px 18px;border-radius:24px;border:1px solid var(--line);
  background:rgba(255,255,255,.86);box-shadow:var(--shadow);transition:.28s var(--ease);
}
.site-header.is-scrolled .nav{background:rgba(255,255,255,.92);transform:translateY(-1px)}
.brand{display:flex;align-items:center;gap:14px}
.brand-mark{
  width:58px;height:58px;border-radius:18px;display:grid;place-items:center;
  font-weight:900;color:#09131f;background:linear-gradient(135deg,var(--gold),var(--gold-2));
  box-shadow:0 12px 24px rgba(255,191,71,.22)
}
.brand-copy strong{display:block;font-size:1.05rem}
.brand-copy span{display:block;color:var(--muted);margin-top:4px}
.menu{display:flex;gap:8px;flex-wrap:wrap}
.menu a{padding:11px 14px;border-radius:14px;color:var(--muted);transition:.22s ease}
.menu a:hover{background:rgba(255,191,71,.16);color:var(--text)}

.btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;
  border-radius:16px;font-weight:700;transition:.22s var(--ease);border:none
}
.btn:hover{transform:translateY(-2px)}
.btn-sm{min-height:46px}
.btn-primary{
  color:#18212f;background:linear-gradient(135deg,var(--gold),var(--gold-2));
  box-shadow:0 0 22px rgba(255,191,71,.18)
}
.btn-outline{border:1px solid var(--line);background:rgba(255,255,255,.88)}
.full{width:100%}

.hero,.plans,.simulator,.benefits,.coverage,.mid-cta,.speed-section,.faq,.contact{padding:76px 0}
.hero-grid,.contact-box{display:grid;grid-template-columns:1.06fr .94fr;gap:28px;align-items:center}
.eyebrow{
  display:inline-flex;padding:8px 14px;border-radius:999px;font-weight:700;
  background:rgba(255,191,71,.16);color:#8a5a00;border:1px solid rgba(255,191,71,.26);margin-bottom:16px
}
.hero-copy h1,.section-head h2,.coverage-copy h2,.mid-cta-box h2,.contact h2,.simulator-copy h2{
  margin:0 0 14px;line-height:1.04;font-size:clamp(2.1rem,5vw,4rem)
}
.hero-copy p,.section-head p,.coverage-copy p,.mid-cta-box p,.contact p,.simulator-copy p{
  margin:0;color:var(--muted);line-height:1.8
}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-notes,.plans-grid,.benefits-grid,.coverage-grid,.faq-list{display:grid;gap:18px}
.hero-notes{grid-template-columns:repeat(3,1fr);margin-top:30px}
.plans-grid,.benefits-grid{grid-template-columns:repeat(3,1fr)}

.note-card,.hero-offer,.plan-card,.benefit-card,.coverage-item,.mid-cta-box,.faq-item,.contact-card,.simulator-box,.sim-result,.speed-card{
  border-radius:var(--radius);border:1px solid var(--line);
  background:linear-gradient(180deg,var(--surface),var(--surface-2));box-shadow:var(--shadow)
}
.note-card,.benefit-card,.coverage-item,.contact-card{padding:20px}
.note-card{font-weight:700;color:var(--muted);text-align:center}
.hero-offer{padding:28px;position:relative;overflow:hidden}
.hero-offer::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at top, rgba(255,191,71,.16), transparent 40%);
  pointer-events:none
}
.offer-chip{
  display:inline-block;padding:8px 14px;border-radius:999px;background:#fff3d8;
  color:#7a4d00;font-weight:800;margin-bottom:18px
}
.hero-offer strong{display:block;font-size:clamp(3rem,7vw,5rem);line-height:1;color:var(--blue)}
.hero-offer small{display:block;color:var(--muted);margin-top:8px;text-transform:uppercase}
.offer-price{margin:18px 0 24px;font-size:clamp(2rem,5vw,3rem);font-weight:900}
.hero-offer ul{padding-left:18px;color:var(--muted);line-height:1.8;margin:0 0 22px}

.section-head{text-align:center;max-width:760px;margin:0 auto 36px}
.plan-card{position:relative;padding:24px}
.featured{border-color:rgba(255,191,71,.28);box-shadow:var(--shadow),0 0 24px rgba(255,191,71,.14)}
.popular-badge{
  position:absolute;top:-14px;left:50%;transform:translateX(-50%);
  padding:8px 16px;border-radius:999px;background:#fff3d8;color:#7a4d00;font-weight:800
}
.plan-top span{display:block;color:var(--muted);margin-bottom:10px}
.plan-top strong{display:block;font-size:clamp(2.4rem,6vw,3.8rem);color:var(--blue)}
.plan-price{margin:18px 0;font-size:clamp(2rem,4vw,2.8rem);font-weight:900}
.plan-card p,.benefit-card p,.faq-item p,.contact-line span{margin:0;color:var(--muted);line-height:1.75}
.price-animated{position:relative;display:inline-block;animation:priceFloat 3.6s ease-in-out infinite}
.price-animated::after{
  content:"";position:absolute;left:-10%;top:50%;width:120%;height:55%;
  transform:translateY(-50%);border-radius:999px;
  background:radial-gradient(circle, rgba(255,191,71,.18), transparent 70%);z-index:-1;
  animation:priceGlow 3.6s ease-in-out infinite
}
.plan-card.featured .price-animated{animation-duration:2.8s}
.plan-card.featured .price-animated::after{background:radial-gradient(circle, rgba(255,191,71,.28), transparent 72%)}

.simulator-box{
  display:grid;grid-template-columns:.95fr 1.05fr;gap:24px;align-items:center;padding:28px
}
.simulator-ui{display:grid;gap:18px}
.simulator-options{display:flex;flex-wrap:wrap;gap:12px}
.sim-option{
  border:1px solid var(--line);background:#fff;color:var(--text);
  min-height:50px;padding:0 18px;border-radius:14px;cursor:pointer;font-weight:700;transition:.22s ease
}
.sim-option:hover,.sim-option.is-active{
  background:rgba(255,191,71,.14);border-color:rgba(255,191,71,.28);transform:translateY(-1px)
}
.sim-result{padding:22px;border-radius:22px}
.sim-result strong{display:block;margin-bottom:10px;font-size:1.2rem}
.sim-result p{margin:0 0 18px;color:var(--muted);line-height:1.7}

.benefit-card h3{margin:0 0 10px}
.coverage-box{
  display:grid;grid-template-columns:.95fr 1.05fr;gap:24px;align-items:center;
  border-radius:var(--radius);border:1px solid var(--line);
  background:linear-gradient(180deg,var(--surface),var(--surface-2));box-shadow:var(--shadow);padding:28px
}
.coverage-grid{grid-template-columns:repeat(2,1fr)}
.coverage-item{text-align:center;font-weight:700}
.coverage-link{transition:.22s ease}
.coverage-link:hover{transform:translateY(-4px);box-shadow:0 18px 34px rgba(15,23,42,.08),0 0 20px rgba(255,191,71,.12)}

.mid-cta-box{
  display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;
  background:linear-gradient(135deg, rgba(255,191,71,.10), rgba(37,99,235,.06)), linear-gradient(180deg,var(--surface),var(--surface-2))
}
.speed-compare{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.speed-card{padding:24px;transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .28s var(--ease)}
.speed-card:hover{transform:translateY(-6px)}
.speed-card-arnet{border-color:rgba(37,99,235,.18);box-shadow:0 18px 45px rgba(15,23,42,.08),0 0 26px rgba(37,99,235,.08)}
.speed-card-top strong{display:block;font-size:1.25rem;margin-bottom:6px}
.speed-card-top span{color:var(--muted)}
.speed-meter{display:grid;grid-template-columns:160px 1fr;gap:20px;align-items:center;margin:22px 0 18px}
.speed-gauge{
  position:relative;width:160px;height:80px;border-radius:160px 160px 0 0;
  background:conic-gradient(from 180deg at 50% 100%, #e7eef7 0deg, #d9e2ef 70deg, #cfe9ff 110deg, #9fd0ff 145deg, #4da3ff 180deg);
  overflow:hidden
}
.speed-gauge::after{
  content:"";position:absolute;left:16px;right:16px;bottom:-48px;height:96px;border-radius:999px;
  background:linear-gradient(180deg,#ffffff,#f6f9fc);border:1px solid rgba(24,33,47,.06)
}
.speed-needle{
  position:absolute;left:50%;bottom:0;width:4px;height:62px;border-radius:999px;
  transform-origin:bottom center;transform:translateX(-50%) rotate(-88deg);z-index:2;box-shadow:0 0 16px rgba(0,0,0,.12)
}
.needle-arnet{background:linear-gradient(180deg,#1d4ed8,#ffbf47)}
.needle-concorrencia{background:linear-gradient(180deg,#6b7280,#cbd5e1)}
.speed-center{
  position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);
  width:18px;height:18px;border-radius:50%;background:#18212f;z-index:3
}
.speed-readout{display:flex;align-items:baseline;gap:8px}
.speed-number{font-size:clamp(2.4rem,5vw,3.8rem);font-weight:900;line-height:1}
.speed-readout small{color:var(--muted);font-size:1rem;font-weight:700}
.speed-response{
  display:flex;align-items:baseline;gap:10px;margin:4px 0 18px;padding:14px 16px;border-radius:18px;
  background:rgba(255,255,255,.72);border:1px solid rgba(24,33,47,.06)
}
.speed-response strong{font-size:1.4rem;line-height:1}
.speed-response span{color:var(--muted);font-weight:700}
.speed-response-good strong{color:#1d4ed8}
.speed-response-bad strong{color:#b45309}
.speed-alert{margin:0 0 16px;padding:12px 14px;border-radius:16px;font-weight:700;font-size:.92rem}
.speed-alert-good{color:#1d4ed8;background:rgba(29,78,216,.08);border:1px solid rgba(29,78,216,.10)}
.speed-alert-bad{color:#b45309;background:rgba(245,158,11,.14);border:1px solid rgba(245,158,11,.16)}
.speed-bars{display:grid;gap:14px}
.bar-line{display:grid;grid-template-columns:110px 1fr;gap:12px;align-items:center}
.bar-line span{color:var(--muted);font-weight:700}
.bar-track{height:12px;border-radius:999px;background:#ebf1f7;overflow:hidden}
.bar-fill{width:0;height:100%;border-radius:inherit}
.fill-arnet{background:linear-gradient(90deg,#1d4ed8,#60a5fa)}
.fill-arnet.upload{width:88%}
.fill-arnet.stable{width:96%}
.fill-concorrencia{background:linear-gradient(90deg,#9ca3af,#cbd5e1)}
.fill-concorrencia.upload{width:42%}
.fill-concorrencia.stable{width:58%}
.speed-card-arnet .fill-arnet{width:100%}
.speed-card-concorrencia .fill-concorrencia{width:63%}

.faq-item{padding:18px 22px}
.faq-item summary{cursor:pointer;list-style:none;font-weight:800}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item p{margin-top:14px}

.contact-card{padding:24px}
.contact-line + .contact-line{margin-top:16px}
.contact-line strong{display:block;margin-bottom:6px}

.floating-whatsapp{
  position:fixed;right:22px;bottom:22px;z-index:60;
  display:inline-flex;align-items:center;gap:12px;padding:10px 16px 10px 10px;border-radius:999px;
  background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-weight:800;
  box-shadow:0 18px 34px rgba(15,23,42,.14);transition:.24s var(--ease)
}
.floating-whatsapp:hover{transform:translateY(-3px) scale(1.02)}
.floating-icon{
  width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.16);font-size:1.1rem
}
.floating-copy{display:flex;flex-direction:column;line-height:1.1}
.floating-copy small{margin-top:4px;font-size:.76rem;color:rgba(255,255,255,.88)}
.floating-status{
  width:10px;height:10px;border-radius:50%;background:#dcfce7;
  box-shadow:0 0 0 0 rgba(220,252,231,.8);animation:statusPing 2s infinite
}

.footer{padding:28px 0 42px}
.footer-inner{text-align:center;color:var(--muted)}

.reveal{
  opacity:0;transform:translateY(24px) scale(.985);
  transition:opacity .7s var(--ease),transform .7s var(--ease)
}
.reveal.show{opacity:1;transform:none}
.delay-1{transition-delay:.08s}
.delay-2{transition-delay:.16s}

@keyframes statusPing{
  0%{box-shadow:0 0 0 0 rgba(220,252,231,.75)}
  70%{box-shadow:0 0 0 12px rgba(220,252,231,0)}
  100%{box-shadow:0 0 0 0 rgba(220,252,231,0)}
}
@keyframes priceFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes priceGlow{
  0%,100%{opacity:.45;transform:translateY(-50%) scale(1)}
  50%{opacity:.95;transform:translateY(-50%) scale(1.06)}
}

@media (max-width:980px){
  .hero-grid,.contact-box,.plans-grid,.benefits-grid,.hero-notes,.coverage-box,.simulator-box,.speed-compare{grid-template-columns:1fr}
  .mid-cta-box{flex-direction:column;align-items:flex-start}
  .nav{flex-wrap:wrap}
  .menu{width:100%;justify-content:center}
}
@media (max-width:720px){
  .hero-actions,.mid-cta-box{flex-direction:column}
  .btn,.btn-sm{width:100%}
  .coverage-grid{grid-template-columns:1fr}
  .floating-whatsapp{right:16px;bottom:16px}
  .floating-copy{display:none}
  .speed-meter{grid-template-columns:1fr;justify-items:center;text-align:center}
  .bar-line{grid-template-columns:1fr}
  .simulator-options{flex-direction:column}
}

.public-section{
  padding: 76px 0;
}

.public-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.public-card{
  padding: 22px;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: linear-gradient(180deg, var(--surface), var(--surface-2));
  box-shadow: var(--shadow);
  transition: transform .26s var(--ease), box-shadow .26s var(--ease), border-color .26s var(--ease);
}

.public-card:hover{
  transform: translateY(-6px);
  border-color: rgba(255,191,71,.24);
  box-shadow: 0 22px 58px rgba(15,23,42,.10), 0 0 24px rgba(255,191,71,.10);
}

.public-card strong{
  display:block;
  margin-bottom:8px;
  font-size:1.12rem;
}

.public-card p{
  margin:0;
  color:var(--muted);
  line-height:1.75;
}

@media (max-width: 980px){
  .public-grid{
    grid-template-columns: 1fr;
  }
}

/* public section enhanced */
.public-section .section-head{
  max-width: 860px;
}

.public-grid{
  perspective: 1200px;
}

.public-card{
  position: relative;
  overflow: hidden;
  cursor: default;
  transform-style: preserve-3d;
  transition:
    transform .35s var(--ease),
    box-shadow .35s var(--ease),
    border-color .35s var(--ease),
    background .35s var(--ease);
}

.public-card::before{
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at var(--mx, 50%) var(--my, 50%), rgba(255,191,71,.16), transparent 28%),
    linear-gradient(135deg, rgba(37,99,235,.04), transparent 45%);
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

.public-card::after{
  content: "";
  position: absolute;
  top: 0;
  left: -32%;
  width: 24%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent);
  transform: skewX(-18deg);
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

.public-card:hover{
  transform: translateY(-10px) rotateX(2deg) rotateY(-2deg) scale(1.01);
  border-color: rgba(255,191,71,.28);
  box-shadow:
    0 26px 60px rgba(15,23,42,.12),
    0 0 28px rgba(255,191,71,.12);
}

.public-card:hover::before,
.public-card:hover::after{
  opacity: 1;
}

.public-card:hover::after{
  animation: publicSweep 1.2s ease;
}

.public-icon{
  width: 62px;
  height: 62px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  font-size: 1.7rem;
  margin-bottom: 14px;
  background: linear-gradient(135deg, rgba(255,191,71,.18), rgba(37,99,235,.10));
  border: 1px solid rgba(255,191,71,.18);
  box-shadow: 0 12px 26px rgba(15,23,42,.06);
  animation: publicIconFloat 4.5s ease-in-out infinite;
}

.public-card strong{
  position: relative;
  display: inline-block;
}

.public-card strong::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 0%;
  height: 2px;
  background: linear-gradient(90deg, var(--gold), var(--blue));
  border-radius: 999px;
  transition: width .28s ease;
}

.public-card:hover strong::after{
  width: 100%;
}

.public-card p{
  transition: color .25s ease, transform .25s ease;
}

.public-card:hover p{
  color: #516073;
  transform: translateY(-1px);
}

.public-card-school .public-icon{ animation-delay: 0s; }
.public-card-creche .public-icon{ animation-delay: .45s; }
.public-card-hospital .public-icon{ animation-delay: .9s; }

@keyframes publicIconFloat{
  0%,100%{ transform: translateY(0); }
  50%{ transform: translateY(-5px); }
}

@keyframes publicSweep{
  0%{ left: -32%; }
  100%{ left: 118%; }
}

@media (max-width: 980px){
  .public-card:hover{
    transform: translateY(-6px) scale(1.01);
  }
}

/* real logo adaptation */
.brand-logo-wrap{
  width: 180px;
  max-width: 34vw;
  display: flex;
  align-items: center;
  justify-content: center;
}

.brand-logo-img{
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  filter: drop-shadow(0 10px 18px rgba(29,78,216,.10));
}

.brand{
  gap: 16px;
}

.brand-copy strong{
  font-size: 1.02rem;
}

.offer-logo{
  width: 190px;
  max-width: 70%;
  height: auto;
  display: block;
  margin: 0 0 14px;
  filter: drop-shadow(0 10px 22px rgba(29,78,216,.10));
}

@media (max-width: 980px){
  .brand-logo-wrap{
    width: 150px;
  }
}

@media (max-width: 720px){
  .brand{
    gap: 12px;
  }

  .brand-logo-wrap{
    width: 118px;
    max-width: 38vw;
  }

  .brand-copy strong{
    font-size: .96rem;
  }

  .brand-copy span{
    font-size: .82rem;
  }

  .offer-logo{
    width: 150px;
    max-width: 78%;
  }
}

/* palette + logo refinement */
body::before{
  content:"";
  position:fixed;
  inset:0;
  background:
    radial-gradient(circle at 12% 8%, rgba(11,142,240,.08), transparent 20%),
    radial-gradient(circle at 88% 0%, rgba(11,142,240,.07), transparent 22%),
    radial-gradient(circle at 50% 18%, rgba(247,183,51,.05), transparent 26%);
  pointer-events:none;
  z-index:-2;
}

.site-header.is-scrolled .nav{
  box-shadow: 0 20px 45px rgba(10,95,215,.08);
}

.brand-logo-wrap{
  width: 170px;
  max-width: 32vw;
  padding: 8px 10px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(11,142,240,.06), rgba(10,95,215,.03));
  border: 1px solid rgba(11,142,240,.08);
}

.brand-logo-img{
  filter: drop-shadow(0 10px 18px rgba(10,95,215,.10));
}

@media (max-width: 720px){
.hero-copy h1{
    max-width: none;
  }
}

/* hero refined after removing logo */
.hero-copy{
  padding-top: 8px;
}

.hero-copy h1{
  max-width: 11.5ch;
}

@media (max-width: 720px){
  .hero-copy{
    padding-top: 0;
  }
}

/* top logo proportion + palette refinement */
:root{
  --gold: #f0b02b;
  --gold-2: #e59a16;
  --blue: #0a8ff0;
  --blue-2: #0b63d8;
  --bg: #f5f9ff;
  --bg-soft: #edf4fc;
  --surface: #ffffff;
  --surface-2: #f8fbff;
}

body{
  background:
    radial-gradient(circle at top right, rgba(10,143,240,.08), transparent 22%),
    radial-gradient(circle at top left, rgba(240,176,43,.08), transparent 20%),
    linear-gradient(180deg, var(--bg) 0%, var(--bg-soft) 100%);
}

.nav{
  border-color: rgba(10,99,216,.08);
  box-shadow: 0 18px 44px rgba(10,99,216,.06);
}

.site-header.is-scrolled .nav{
  box-shadow: 0 20px 46px rgba(10,99,216,.08);
}

.brand{
  gap: 12px;
}

.brand-logo-wrap{
  width: 126px;
  max-width: 22vw;
  padding: 4px 6px;
  border-radius: 14px;
  background: transparent;
  border: none;
}

.brand-logo-img{
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 6px 14px rgba(10,99,216,.08));
}

.brand-copy strong{
  font-size: .98rem;
  color: #162132;
}

.brand-copy span{
  font-size: .9rem;
  color: #5d6c81;
}

.menu a:hover{
  background: rgba(10,143,240,.08);
  color: #162132;
}

.btn-primary{
  color: #132132;
  background: linear-gradient(135deg, var(--gold), #ffc44e);
}

.eyebrow{
  background: rgba(240,176,43,.12);
  border-color: rgba(240,176,43,.18);
  color: #9a6500;
}

.plan-top strong,
.hero-offer strong,
.speed-response-good strong{
  color: var(--blue);
}

.featured,
.hero-offer,
.simulator-box,
.mid-cta-box,
.speed-card-arnet{
  border-color: rgba(10,99,216,.10);
}

.floating-whatsapp{
  box-shadow: 0 18px 34px rgba(15,23,42,.12), 0 0 0 1px rgba(255,255,255,.06) inset;
}

@media (max-width: 980px){
  .brand-logo-wrap{
    width: 112px;
    max-width: 26vw;
  }

  .brand-copy strong{
    font-size: .94rem;
  }
}

@media (max-width: 720px){
  .brand{
    gap: 10px;
  }

  .brand-logo-wrap{
    width: 88px;
    max-width: 28vw;
    padding: 0;
  }

  .brand-copy strong{
    font-size: .86rem;
  }

  .brand-copy span{
    font-size: .76rem;
  }
}

/* anchor offset fix */
#inicio,
#planos,
#vantagens,
#cobertura,
#contato {
  scroll-margin-top: 130px;
}

.section-head {
  scroll-margin-top: 130px;
}

@media (max-width: 980px) {
  #inicio,
  #planos,
  #vantagens,
  #cobertura,
  #contato,
  .section-head {
    scroll-margin-top: 150px;
  }
}

/* slightly better spacing below sticky header */
.hero {
  padding-top: 92px;
}

/* smoother anchor landing */
html {
  scroll-padding-top: 130px;
}

@media (max-width: 980px) {
  html {
    scroll-padding-top: 150px;
  }
}

/* refined circular logo frame */
.brand{
  align-items: center;
}

.brand-logo-wrap{
  position: relative;
  width: 112px;
  height: 112px;
  min-width: 112px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(180deg, #ffffff, #f6f9ff);
  border: 1px solid rgba(10,99,216,.08);
  box-shadow: 0 14px 28px rgba(15,23,42,.07);
  transition: transform .24s var(--ease), box-shadow .24s var(--ease), border-color .24s var(--ease);
  overflow: hidden;
}

.brand-logo-wrap:hover{
  transform: translateY(-2px);
  border-color: rgba(10,143,240,.12);
  box-shadow: 0 18px 34px rgba(15,23,42,.09), 0 0 18px rgba(10,143,240,.05);
}

.brand-logo-glow{
  display: none;
}

.brand-logo-img{
  position: relative;
  z-index: 2;
  width: 82%;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 6px 10px rgba(10,99,216,.08));
}

.brand-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.brand-copy strong{
  font-size: 1rem;
  line-height: 1.1;
}

.brand-copy span{
  margin-top: 6px;
}

@media (max-width: 980px){
  .brand-logo-wrap{
    width: 102px;
    height: 102px;
    min-width: 102px;
  }
}

@media (max-width: 720px){
  .brand{
    gap: 10px;
  }

  .brand-logo-wrap{
    width: 82px;
    height: 82px;
    min-width: 82px;
  }

  .brand-logo-img{
    width: 80%;
  }

  .brand-copy strong{
    font-size: .86rem;
  }

  .brand-copy span{
    font-size: .76rem;
  }
}
.brand-logo-wrap{
    width: 68px;
    height: 68px;
    min-width: 68px;
  }

  .brand-logo-wrap::before{
    inset: 7px;
  }

  .brand-logo-glow{
    inset: 4px;
  }

  .brand-logo-img{
    width: 72%;
  }

  .brand-copy strong{
    font-size: .86rem;
  }

  .brand-copy span{
    font-size: .76rem;
  }
}
.brand-logo-wrap{
    width: 74px;
    height: 74px;
    min-width: 74px;
    padding: 8px;
  }

  .brand-logo-glow{
    inset: 6px;
  }

  .brand-copy strong{
    font-size: .86rem;
  }

  .brand-copy span{
    font-size: .76rem;
  }
}
.brand-logo-wrap{
    width: 74px;
    height: 74px;
    min-width: 74px;
    padding: 8px;
    border-radius: 20px;
  }

  .brand-logo-glow{
    inset: 7px;
    border-radius: 14px;
  }

  .brand-copy strong{
    font-size: .86rem;
  }

  .brand-copy span{
    font-size: .76rem;
  }
}

/* elegant logo background refinement */
.brand-logo-wrap{
  border-color: rgba(10,99,216,.08);
  box-shadow:
    0 14px 28px rgba(15,23,42,.07),
    0 0 0 1px rgba(255,255,255,.78) inset;
}

.brand-logo-wrap::after{
  content:"";
  position:absolute;
  inset: 4px;
  border-radius: 50%;
  border: 1px solid rgba(240,176,43,.18);
  pointer-events:none;
}

.brand-logo-wrap:hover{
  border-color: rgba(10,143,240,.14);
  box-shadow:
    0 18px 34px rgba(15,23,42,.09),
    0 0 18px rgba(10,143,240,.08),
    0 0 0 1px rgba(255,255,255,.84) inset;
}

/* client area */
#central{ scroll-margin-top: 130px; }

.client-area{
  padding: 76px 0;
}

.client-area-grid{
  display:grid;
  grid-template-columns: 1.08fr .92fr;
  gap: 22px;
  align-items: stretch;
}

.client-area-main,
.shortcut-card{
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: linear-gradient(180deg,var(--surface),var(--surface-2));
  box-shadow: var(--shadow);
}

.client-area-main{
  padding: 24px;
  position: relative;
  overflow: hidden;
}

.client-area-main::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at top right, rgba(10,143,240,.08), transparent 30%),
    radial-gradient(circle at bottom left, rgba(240,176,43,.08), transparent 28%);
  pointer-events:none;
}

.client-panel-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  position:relative;
  z-index:1;
}

.client-online{
  display:inline-flex;
  align-items:center;
  gap:10px;
}

.client-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#22c55e;
  box-shadow:0 0 0 0 rgba(34,197,94,.6);
  animation: clientDot 2s infinite;
}

.client-chip{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(10,143,240,.08);
  color:#184168;
  border:1px solid rgba(10,143,240,.10);
  font-size:.85rem;
  font-weight:700;
}

.client-area-main h3{
  position:relative;
  z-index:1;
  margin:18px 0 10px;
  font-size:1.6rem;
}

.client-area-main p{
  position:relative;
  z-index:1;
  margin:0;
  color:var(--muted);
  line-height:1.75;
}

.client-actions{
  position:relative;
  z-index:1;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:22px;
}

.client-mini-window{
  position:relative;
  z-index:1;
  margin-top:24px;
  border-radius:24px;
  border:1px solid rgba(10,99,216,.08);
  background:linear-gradient(180deg,#ffffff,#f6faff);
  box-shadow:0 18px 38px rgba(15,23,42,.06);
  overflow:hidden;
}

.client-window-bar{
  display:flex;
  gap:8px;
  padding:14px 16px;
  border-bottom:1px solid rgba(24,33,47,.06);
  background:rgba(10,143,240,.04);
}

.client-window-bar span{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#cdd8e8;
}

.client-window-bar span:nth-child(1){ background:#ffb84d; }
.client-window-bar span:nth-child(2){ background:#7bd88f; }
.client-window-bar span:nth-child(3){ background:#6db8ff; }

.client-window-content{
  display:grid;
  grid-template-columns: .95fr 1.05fr;
  gap:16px;
  padding:18px;
  align-items:start;
}

.client-login-card{
  padding:18px;
  border-radius:20px;
  border:1px solid rgba(24,33,47,.06);
  background:#ffffff;
}

.client-login-card strong{
  display:block;
  margin-bottom:14px;
}

.client-field{
  min-height:46px;
  display:flex;
  align-items:center;
  padding:0 14px;
  border-radius:14px;
  border:1px solid rgba(24,33,47,.08);
  color:#708096;
  background:#f8fbff;
}

.client-field + .client-field{
  margin-top:10px;
}

.client-login-button{
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:14px;
  border-radius:14px;
  font-weight:800;
  color:#18212f;
  background:linear-gradient(135deg,var(--gold),#ffc44e);
}

.client-side-info{
  display:grid;
  gap:10px;
}

.info-pill{
  min-height:48px;
  display:flex;
  align-items:center;
  padding:0 14px;
  border-radius:14px;
  color:#24507e;
  background:rgba(10,143,240,.08);
  border:1px solid rgba(10,143,240,.10);
  font-weight:700;
}

.client-shortcuts{
  display:grid;
  gap:16px;
}

.shortcut-card{
  display:block;
  padding:20px;
  transition: transform .24s var(--ease), box-shadow .24s var(--ease), border-color .24s var(--ease);
}

.shortcut-card:hover{
  transform:translateY(-6px);
  border-color:rgba(10,143,240,.18);
  box-shadow:0 20px 42px rgba(10,99,216,.08), 0 0 24px rgba(240,176,43,.08);
}

.shortcut-icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:16px;
  font-size:1.5rem;
  background:linear-gradient(135deg, rgba(10,143,240,.10), rgba(240,176,43,.10));
  border:1px solid rgba(10,143,240,.08);
  margin-bottom:14px;
}

.shortcut-card strong{
  display:block;
  margin-bottom:8px;
  font-size:1.08rem;
}

.shortcut-card p{
  margin:0;
  color:var(--muted);
  line-height:1.7;
}

@keyframes clientDot{
  0%{ box-shadow:0 0 0 0 rgba(34,197,94,.6); }
  70%{ box-shadow:0 0 0 12px rgba(34,197,94,0); }
  100%{ box-shadow:0 0 0 0 rgba(34,197,94,0); }
}

@media (max-width: 980px){
  #central{ scroll-margin-top: 150px; }

  .client-area-grid,
  .client-window-content{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px){
  .client-actions{
    flex-direction:column;
  }

  .client-actions .btn{
    width:100%;
  }

  .client-panel-top{
    flex-direction:column;
    align-items:flex-start;
  }
}

/* integrated client iframe */
.client-iframe-wrap{
  padding: 0;
  overflow: hidden;
}

.client-window-bar{
  align-items: center;
}

.client-window-bar strong{
  margin-left: 8px;
  font-size: .95rem;
  color: #415168;
}

.client-iframe-holder{
  padding: 0;
  background: #eef3fa;
}

.client-iframe{
  display: block;
  width: 100%;
  height: 980px;
  border: 0;
  background: #ffffff;
}

.client-iframe-actions{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px 18px;
  border-top: 1px solid rgba(24,33,47,.06);
  background: linear-gradient(180deg,#ffffff,#f8fbff);
}

.client-iframe-note{
  color: var(--muted);
  line-height: 1.6;
}

@media (max-width: 980px){
  .client-iframe{
    height: 900px;
  }
}

@media (max-width: 720px){
  .client-iframe{
    height: 820px;
  }

  .client-iframe-actions{
    flex-direction: column;
    align-items: stretch;
  }

  .client-iframe-actions .btn{
    width: 100%;
  }
}

/* animated client area */
.client-area-main{
  transition: transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);
}

.client-area-main:hover{
  transform: translateY(-4px);
  box-shadow: 0 22px 42px rgba(10,99,216,.08), 0 0 24px rgba(240,176,43,.08);
  border-color: rgba(10,143,240,.14);
}

.client-choice-grid{
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 22px;
}

.client-choice-card{
  display: block;
  padding: 18px;
  border-radius: 22px;
  border: 1px solid rgba(10,99,216,.10);
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  box-shadow: 0 16px 34px rgba(15,23,42,.05);
  transition: transform .26s var(--ease), box-shadow .26s var(--ease), border-color .26s var(--ease), background .26s var(--ease);
}

.client-choice-card.active{
  background: linear-gradient(135deg, rgba(10,143,240,.08), rgba(240,176,43,.08)), linear-gradient(180deg, #ffffff, #f8fbff);
  border-color: rgba(10,143,240,.16);
}

.client-choice-card:hover{
  transform: translateY(-5px);
  box-shadow: 0 20px 42px rgba(10,99,216,.08), 0 0 20px rgba(240,176,43,.08);
  border-color: rgba(10,143,240,.18);
}

.client-choice-icon{
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  font-size: 1.4rem;
  background: linear-gradient(135deg, rgba(10,143,240,.10), rgba(240,176,43,.12));
  border: 1px solid rgba(10,143,240,.08);
  margin-bottom: 12px;
  animation: clientIconFloat 4.4s ease-in-out infinite;
}

.client-choice-card strong{
  display: block;
  margin-bottom: 8px;
  font-size: 1.08rem;
}

.client-choice-card p{
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}

.client-mini-window.client-iframe-wrap{
  transition: transform .28s var(--ease), box-shadow .28s var(--ease), border-color .28s var(--ease);
}

.client-mini-window.client-iframe-wrap:hover{
  transform: translateY(-4px);
  box-shadow: 0 22px 40px rgba(10,99,216,.08), 0 0 22px rgba(240,176,43,.08);
  border-color: rgba(10,143,240,.12);
}

.client-window-bar{
  position: relative;
  overflow: hidden;
}

.client-window-bar::after{
  content: "";
  position: absolute;
  top: 0;
  left: -30%;
  width: 24%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.38), transparent);
  transform: skewX(-18deg);
  animation: clientSweep 5.8s ease-in-out infinite;
}

.client-iframe-actions{
  position: relative;
}

.client-iframe-actions::before{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:0;
  height:1px;
  background: linear-gradient(90deg, transparent, rgba(10,143,240,.10), transparent);
}

@keyframes clientIconFloat{
  0%,100%{ transform: translateY(0); }
  50%{ transform: translateY(-4px); }
}

@keyframes clientSweep{
  0%{ left: -30%; opacity: 0; }
  12%{ opacity: 1; }
  38%{ left: 116%; opacity: 1; }
  100%{ left: 116%; opacity: 0; }
}

@media (max-width: 980px){
  .client-choice-grid{
    grid-template-columns: 1fr;
  }
}

/* central closed by default */
.client-central-locked{
  position: relative;
  z-index: 1;
  margin-top: 24px;
  padding: 20px 22px;
  border-radius: 22px;
  border: 1px dashed rgba(10,99,216,.18);
  background: linear-gradient(180deg, rgba(10,143,240,.04), rgba(240,176,43,.04));
  color: #28405e;
}

.client-central-locked strong{
  display:block;
  margin-bottom:8px;
  font-size:1.04rem;
}

.client-central-locked p{
  margin:0;
  color: var(--muted);
  line-height: 1.7;
}

.client-mini-window.client-iframe-wrap.is-hidden{
  display:none;
}

.client-open-central{
  cursor:pointer;
  text-align:left;
  font: inherit;
}

.client-open-central.active{
  background: linear-gradient(135deg, rgba(10,143,240,.08), rgba(240,176,43,.08)), linear-gradient(180deg, #ffffff, #f8fbff);
}

.client-close-central{
  min-height: 42px;
}

.client-iframe-actions{
  flex-wrap: wrap;
}

.client-iframe-actions .btn{
  min-height: 42px;
}

/* stable final additions */
.legal-section{
  padding: 18px 0 58px;
}
.legal-box{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  padding: 22px;
  border-radius: var(--radius);
  border: 1px solid rgba(10,99,216,.08);
  background: linear-gradient(180deg,#ffffff,#f8fbff);
  box-shadow: 0 18px 40px rgba(15,23,42,.06);
}
.legal-item{
  padding: 18px;
  border-radius: 20px;
  border: 1px solid rgba(10,99,216,.06);
  background: rgba(255,255,255,.72);
}
.legal-item strong{
  display:block;
  margin-bottom:8px;
  font-size:1rem;
}
.legal-item span{
  color: var(--muted);
  line-height: 1.7;
}
.footer-grid{
  display:grid;
  grid-template-columns: 1fr auto auto;
  gap: 18px;
  align-items: center;
}
.footer-brand{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.footer-brand strong{
  color:#18212f;
}
.footer-brand span,
.footer-legal span{
  color: var(--muted);
}
.footer-links{
  display:flex;
  flex-wrap:wrap;
  gap: 14px;
}
.footer-links a{
  color:#1c3554;
  font-weight:700;
}
.footer-legal{
  display:flex;
  flex-direction:column;
  gap:6px;
  text-align:right;
}
@media (max-width: 980px){
  .legal-box{
    grid-template-columns: 1fr;
  }
  .footer-grid{
    grid-template-columns: 1fr;
    text-align: center;
  }
  .footer-brand,
  .footer-links,
  .footer-legal{
    justify-content:center;
    text-align:center;
    align-items:center;
  }
}

/* strong interaction refinement */
.nav{
  transition:
    transform .28s var(--ease),
    box-shadow .28s var(--ease),
    background .28s var(--ease),
    border-color .28s var(--ease);
}

.nav-interactive{
  position: relative;
  overflow: hidden;
}

.nav-interactive::after{
  content:"";
  position:absolute;
  top:0;
  left:-28%;
  width:20%;
  height:100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.34), transparent);
  transform: skewX(-18deg);
  animation: headerSweep 6s ease-in-out infinite;
  pointer-events:none;
}

.menu a{
  position: relative;
  overflow: hidden;
}

.menu a::after{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  bottom:8px;
  height:2px;
  border-radius:999px;
  background: linear-gradient(90deg, var(--gold), var(--blue));
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .24s var(--ease);
}

.menu a:hover::after,
.menu a.is-active::after{
  transform: scaleX(1);
}

.menu a:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(10,99,216,.06);
}

.btn-header-cta{
  box-shadow: 0 14px 26px rgba(240,176,43,.16);
  animation: ctaPulse 2.8s ease-in-out infinite;
}

.btn-header-cta:hover{
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 18px 34px rgba(240,176,43,.24);
}

.hero-copy h1{
  position: relative;
}

.hero-copy h1::before{
  content:"";
  position:absolute;
  left:-18px;
  top:-18px;
  width:80px;
  height:80px;
  border-radius:50%;
  background: radial-gradient(circle, rgba(10,143,240,.12), transparent 70%);
  z-index:-1;
  animation: heroGlowFloat 4.8s ease-in-out infinite;
}

.hero-panel .hero-offer{
  animation: offerFloat 4.2s ease-in-out infinite;
}

.hero-offer:hover{
  transform: translateY(-8px) scale(1.01);
  box-shadow:
    0 30px 60px rgba(10,99,216,.10),
    0 0 40px rgba(240,176,43,.10);
}

.note-card,
.plan-card,
.benefit-card,
.coverage-item,
.trust-mini,
.legal-item,
.public-card,
.faq-item,
.client-choice-card,
.shortcut-card{
  transition:
    transform .28s var(--ease),
    box-shadow .28s var(--ease),
    border-color .28s var(--ease),
    background .28s var(--ease);
}

.note-card:hover,
.plan-card:hover,
.benefit-card:hover,
.coverage-item:hover,
.trust-mini:hover,
.legal-item:hover,
.public-card:hover,
.faq-item:hover,
.client-choice-card:hover,
.shortcut-card:hover{
  transform: translateY(-7px);
  box-shadow: 0 22px 42px rgba(10,99,216,.08), 0 0 22px rgba(240,176,43,.08);
  border-color: rgba(10,143,240,.16);
}

.client-choice-card.active{
  box-shadow: 0 18px 34px rgba(10,99,216,.08), 0 0 20px rgba(240,176,43,.08);
}

.client-choice-card.active .client-choice-icon{
  animation: clientIconBounce 2.8s ease-in-out infinite;
}

.floating-whatsapp{
  animation: whatsappFloat 2.4s ease-in-out infinite;
  box-shadow: 0 18px 34px rgba(15,23,42,.14), 0 0 28px rgba(34,197,94,.14);
}

.floating-whatsapp:hover{
  transform: translateY(-4px) scale(1.03);
}

.footer{
  padding-top: 36px;
}

.footer-grid{
  padding: 22px 0 10px;
  border-top: 1px solid rgba(10,99,216,.08);
}

.footer-brand strong{
  font-size: 1.02rem;
}

.footer-links a{
  position: relative;
  transition: transform .22s var(--ease), color .22s var(--ease);
}

.footer-links a:hover{
  transform: translateY(-2px);
  color: var(--blue);
}

.footer-links a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  width:100%;
  height:2px;
  background: linear-gradient(90deg, var(--gold), var(--blue));
  transform: scaleX(0);
  transform-origin:left;
  transition: transform .22s var(--ease);
}

.footer-links a:hover::after{
  transform: scaleX(1);
}

.footer-legal{
  gap: 4px;
}

@keyframes headerSweep{
  0%{ left:-28%; opacity:0; }
  12%{ opacity:1; }
  36%{ left:112%; opacity:1; }
  100%{ left:112%; opacity:0; }
}

@keyframes ctaPulse{
  0%,100%{ box-shadow: 0 14px 26px rgba(240,176,43,.16); }
  50%{ box-shadow: 0 18px 36px rgba(240,176,43,.24), 0 0 18px rgba(240,176,43,.14); }
}

@keyframes heroGlowFloat{
  0%,100%{ transform: translateY(0); opacity:.8; }
  50%{ transform: translateY(-8px); opacity:1; }
}

@keyframes offerFloat{
  0%,100%{ transform: translateY(6px); }
  50%{ transform: translateY(-2px); }
}

@keyframes whatsappFloat{
  0%,100%{ transform: translateY(0); }
  50%{ transform: translateY(-4px); }
}

@keyframes clientIconBounce{
  0%,100%{ transform: translateY(0); }
  50%{ transform: translateY(-5px) scale(1.03); }
}

@media (max-width: 980px){
  .nav-interactive::after{
    display:none;
  }

  .hero-panel .hero-offer{
    animation: none;
  }
}

/* premium coverage section */
.coverage-copy h2{
  max-width: 11ch;
}

.coverage-copy p{
  max-width: 46ch;
}

.coverage-grid{
  gap: 16px;
}

.coverage-item-premium{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height: 78px;
  padding: 0 18px;
  border-radius: 24px;
  border: 1px solid rgba(10,99,216,.08);
  background: linear-gradient(180deg,#ffffff,#f8fbff);
  box-shadow: 0 14px 28px rgba(15,23,42,.05);
  transition: transform .26s var(--ease), box-shadow .26s var(--ease), border-color .26s var(--ease), background .26s var(--ease);
}

.coverage-item-premium span:last-child{
  font-weight: 800;
  color: #18212f;
}

.coverage-icon{
  width: 34px;
  height: 34px;
  display:grid;
  place-items:center;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(10,143,240,.10), rgba(240,176,43,.12));
  border: 1px solid rgba(10,143,240,.08);
  font-size: 1rem;
  transition: transform .26s var(--ease), box-shadow .26s var(--ease);
}

.coverage-item-premium:hover{
  transform: translateY(-6px);
  border-color: rgba(10,143,240,.16);
  box-shadow: 0 20px 40px rgba(10,99,216,.08), 0 0 20px rgba(240,176,43,.08);
  background: linear-gradient(135deg, rgba(10,143,240,.06), rgba(240,176,43,.06)), linear-gradient(180deg,#ffffff,#f8fbff);
}

.coverage-item-premium:hover .coverage-icon{
  transform: scale(1.08) translateY(-1px);
  box-shadow: 0 10px 22px rgba(10,143,240,.12);
}

.coverage-extra-cta{
  margin-top: 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 22px;
  border: 1px dashed rgba(10,99,216,.16);
  background: linear-gradient(180deg, rgba(10,143,240,.04), rgba(240,176,43,.04));
}

.coverage-extra-cta strong{
  color:#1b2a3d;
}

.coverage-extra-cta a{
  color: var(--blue);
  font-weight: 800;
  position: relative;
}

.coverage-extra-cta a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  width:100%;
  height:2px;
  background: linear-gradient(90deg, var(--gold), var(--blue));
  transform: scaleX(.25);
  transform-origin:left;
  transition: transform .22s var(--ease);
}

.coverage-extra-cta a:hover::after{
  transform: scaleX(1);
}

@media (max-width: 980px){
  .coverage-copy h2{
    max-width: none;
  }

  .coverage-extra-cta{
    flex-direction: column;
    align-items: flex-start;
  }
}

/* naming and organization refinements */
.menu a{
  font-weight: 700;
}

.section-head h2,
.coverage-copy h2,
.final-sales-box h2,
.client-area-main h3{
  letter-spacing: -.02em;
}

.hero-notes,
.trust-band-grid,
.coverage-grid,
.client-choice-grid,
.public-grid{
  align-items: stretch;
}

.coverage-item-premium,
.coverage-item{
  position: relative;
  overflow: hidden;
}

.coverage-item-premium::after,
.coverage-item::after{
  content:"";
  position:absolute;
  top:0;
  left:-30%;
  width:22%;
  height:100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.32), transparent);
  transform: skewX(-18deg);
  opacity: 0;
  transition: opacity .22s ease;
}

.coverage-item-premium:hover::after,
.coverage-item:hover::after{
  opacity: 1;
  animation: coverageSweep 1.05s ease;
}

.reveal-item{
  opacity: 0;
  transform: translateY(14px);
  animation: revealItem .7s var(--ease) forwards;
}

.coverage-grid .reveal-item:nth-child(1){ animation-delay: .05s; }
.coverage-grid .reveal-item:nth-child(2){ animation-delay: .12s; }
.coverage-grid .reveal-item:nth-child(3){ animation-delay: .19s; }
.coverage-grid .reveal-item:nth-child(4){ animation-delay: .26s; }
.coverage-grid .reveal-item:nth-child(5){ animation-delay: .33s; }
.coverage-grid .reveal-item:nth-child(6){ animation-delay: .40s; }

.client-choice-card,
.trust-mini,
.legal-item,
.public-card,
.note-card{
  backdrop-filter: blur(6px);
}

.client-choice-card strong,
.trust-mini strong,
.legal-item strong{
  color: #162132;
}

.footer-grid{
  row-gap: 12px;
}

.footer-links{
  justify-content: center;
}

@keyframes coverageSweep{
  0%{ left:-30%; }
  100%{ left:115%; }
}

@keyframes revealItem{
  from{
    opacity:0;
    transform: translateY(14px);
  }
  to{
    opacity:1;
    transform:none;
  }
}

@media (max-width: 980px){
  .menu{
    gap: 10px;
  }
}

/* dynamic hero upgrade */
.hero{
  position: relative;
  overflow: hidden;
}

.hero::before{
  content:"";
  position:absolute;
  left: 4%;
  top: 12%;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(10,143,240,.10), transparent 68%);
  filter: blur(6px);
  animation: heroOrbMove 8s ease-in-out infinite;
  pointer-events:none;
}

.hero::after{
  content:"";
  position:absolute;
  right: 6%;
  top: 18%;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(240,176,43,.10), transparent 68%);
  filter: blur(8px);
  animation: heroOrbMove2 9s ease-in-out infinite;
  pointer-events:none;
}

.hero-title-dynamic{
  position: relative;
  max-width: 10ch;
}

.hero-rotating-word{
  display: inline-block;
  color: var(--blue);
  position: relative;
  min-width: 3.8ch;
  text-shadow: 0 0 0 rgba(10,143,240,0);
  animation: rotatingGlow 2.8s ease-in-out infinite;
}

.hero-rotating-word::after{
  content:"";
  position:absolute;
  left: -8px;
  right: -8px;
  bottom: 6px;
  height: 22px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(240,176,43,.14), rgba(10,143,240,.10));
  z-index: -1;
}

.hero-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin: 22px 0 10px;
}

.hero-chip{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(10,99,216,.08);
  background: linear-gradient(180deg,#ffffff,#f8fbff);
  color:#24415f;
  font-weight:800;
  box-shadow: 0 10px 22px rgba(15,23,42,.04);
  animation: chipPop .55s var(--ease) backwards;
}

.hero-chip:nth-child(1){ animation-delay: .06s; }
.hero-chip:nth-child(2){ animation-delay: .14s; }
.hero-chip:nth-child(3){ animation-delay: .22s; }

.btn-hero-main{
  box-shadow: 0 18px 34px rgba(240,176,43,.20);
}

.btn-hero-main:hover{
  transform: translateY(-3px) scale(1.02);
}

.btn-hero-secondary:hover{
  border-color: rgba(10,143,240,.16);
  box-shadow: 0 14px 28px rgba(10,99,216,.08);
}

.hero-trust{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin: 26px 0 18px;
}

.hero-trust-card{
  padding: 16px 16px;
  border-radius: 20px;
  border: 1px solid rgba(10,99,216,.08);
  background: linear-gradient(180deg,#ffffff,#f8fbff);
  box-shadow: 0 12px 24px rgba(15,23,42,.04);
  transition: transform .24s var(--ease), box-shadow .24s var(--ease), border-color .24s var(--ease);
}

.hero-trust-card:hover{
  transform: translateY(-5px);
  border-color: rgba(10,143,240,.16);
  box-shadow: 0 18px 34px rgba(10,99,216,.08), 0 0 18px rgba(240,176,43,.06);
}

.hero-trust-card strong{
  display:block;
  margin-bottom:6px;
  font-size: .98rem;
}

.hero-trust-card span{
  color: var(--muted);
  line-height: 1.5;
}

.hero-offer{
  position: relative;
  overflow: hidden;
}

.hero-offer::after{
  content:"";
  position:absolute;
  top:0;
  left:-28%;
  width:20%;
  height:100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent);
  transform: skewX(-18deg);
  animation: offerSweep 5.4s ease-in-out infinite;
  pointer-events:none;
}

.hero-offer strong{
  animation: offerNumberIn .8s var(--ease);
}

.offer-price{
  animation: pricePulseStrong 2.6s ease-in-out infinite;
}

.offer-chip{
  animation: chipGlow 2.4s ease-in-out infinite;
}

.hero-notes{
  margin-top: 18px;
}

@keyframes heroOrbMove{
  0%,100%{ transform: translateY(0) translateX(0); opacity: .9; }
  50%{ transform: translateY(-10px) translateX(10px); opacity: 1; }
}

@keyframes heroOrbMove2{
  0%,100%{ transform: translateY(0) translateX(0); opacity: .8; }
  50%{ transform: translateY(12px) translateX(-8px); opacity: 1; }
}

@keyframes rotatingGlow{
  0%,100%{ text-shadow: 0 0 0 rgba(10,143,240,0); }
  50%{ text-shadow: 0 0 18px rgba(10,143,240,.14); }
}

@keyframes chipPop{
  from{ opacity:0; transform: translateY(10px) scale(.96); }
  to{ opacity:1; transform:none; }
}

@keyframes offerSweep{
  0%{ left:-28%; opacity:0; }
  14%{ opacity:1; }
  38%{ left:115%; opacity:1; }
  100%{ left:115%; opacity:0; }
}

@keyframes offerNumberIn{
  from{ opacity:0; transform: translateY(12px) scale(.96); }
  to{ opacity:1; transform:none; }
}

@keyframes pricePulseStrong{
  0%,100%{
    transform: translateY(0);
    text-shadow: 0 0 0 rgba(240,176,43,0);
  }
  50%{
    transform: translateY(-4px);
    text-shadow: 0 0 18px rgba(240,176,43,.16);
  }
}

@keyframes chipGlow{
  0%,100%{ box-shadow: 0 10px 22px rgba(240,176,43,.10); }
  50%{ box-shadow: 0 14px 28px rgba(240,176,43,.18), 0 0 18px rgba(240,176,43,.10); }
}

@media (max-width: 980px){
  .hero-trust{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px){
  .hero-chip-row{
    gap: 8px;
  }

  .hero-chip{
    width: 100%;
    justify-content: center;
  }
}

/* premium loader */
.site-loader{
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    radial-gradient(circle at top right, rgba(10,143,240,.08), transparent 22%),
    radial-gradient(circle at top left, rgba(240,176,43,.08), transparent 20%),
    linear-gradient(180deg, #f5f9ff 0%, #edf4fc 100%);
  opacity: 1;
  visibility: visible;
  transition: opacity .65s ease, visibility .65s ease;
}

.site-loader.is-hidden{
  opacity: 0;
  visibility: hidden;
}

.loader-core{
  position: relative;
  width: 220px;
  height: 220px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.loader-ring{
  position: absolute;
  width: 184px;
  height: 184px;
  border-radius: 50%;
  border: 4px solid rgba(10,143,240,.10);
  border-top-color: rgba(10,143,240,.88);
  border-right-color: rgba(240,176,43,.65);
  animation: loaderSpin 1.4s linear infinite;
  box-shadow: 0 0 24px rgba(10,143,240,.08);
}

.loader-pulse{
  position: absolute;
  width: 142px;
  height: 142px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(10,143,240,.10), rgba(240,176,43,.06), transparent 70%);
  animation: loaderPulse 2.2s ease-in-out infinite;
}

.loader-logo-wrap{
  position: relative;
  width: 104px;
  height: 104px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg,#ffffff,#f7fbff);
  border: 1px solid rgba(10,99,216,.08);
  box-shadow: 0 16px 34px rgba(15,23,42,.08);
}

.loader-logo{
  width: 76%;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 6px 10px rgba(10,99,216,.08));
}

.loader-text{
  position: absolute;
  left: 50%;
  bottom: -30px;
  transform: translateX(-50%);
  width: 320px;
  text-align: center;
  color: #35506f;
  font-weight: 700;
  letter-spacing: .01em;
  animation: loaderTextFade 1.8s ease-in-out infinite;
}

@keyframes loaderSpin{
  from{ transform: rotate(0deg); }
  to{ transform: rotate(360deg); }
}

@keyframes loaderPulse{
  0%,100%{ transform: scale(1); opacity: .72; }
  50%{ transform: scale(1.08); opacity: 1; }
}

@keyframes loaderTextFade{
  0%,100%{ opacity: .75; }
  50%{ opacity: 1; }
}

body.is-loading{
  overflow: hidden;
}


/* mobile header fix */
@media (max-width: 980px){
  .site-header{
    padding: 10px 0;
    transition: transform .28s ease, opacity .28s ease, box-shadow .28s ease;
  }

  .site-header.is-hidden-mobile{
    transform: translateY(-120%);
    opacity: .98;
    pointer-events: none;
  }

  .site-header .nav{
    border-radius: 22px;
  }

  body{
    padding-top: 0;
  }
}
