/* ==========================================================
   HEGZ Soluciones Empresariales · capa de marca sobre Insur
   Colores, tipografías y componentes propios
   ========================================================== */

@font-face{font-family:"Franie";src:url("../fonts/Franie-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Futura PT";src:url("../fonts/FuturaPT-Light.ttf") format("truetype");font-weight:300;font-display:swap}
@font-face{font-family:"Futura PT";src:url("../fonts/FuturaPT-Book.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Futura PT";src:url("../fonts/FuturaPT-Medium.ttf") format("truetype");font-weight:500;font-display:swap}
@font-face{font-family:"Futura PT";src:url("../fonts/FuturaPT-Demi.ttf") format("truetype");font-weight:600 700;font-display:swap}
/* Respaldo solo para acentos, ñ, ¿ y ¡ (los archivos Futura actuales no los traen) */
@font-face{font-family:"Jost";src:url("../fonts/Jost.ttf") format("truetype");font-weight:100 900;font-display:swap}

:root{
  --insur-font:"Futura PT","Jost",sans-serif;
  --hegz-title:"Franie","Futura PT","Jost",sans-serif;
  --insur-gray:#4E5D6B;           --insur-gray-rgb:78,93,107;
  --insur-base:#003C3C;           --insur-base-rgb:0,60,60;
  --insur-black:#0E2B45;          --insur-black-rgb:14,43,69;
  --insur-primary:#8FD9C8;        --insur-primary-rgb:143,217,200;
  --insur-extra:#F2F1EC;          --insur-extra-rgb:242,241,236;
  --insur-bdr-color:#DDE3DF;      --insur-bdr-color-rgb:221,227,223;
  --insur-letter-spacing:0;
  --gold:#A68B5F; --gold-l:#D9C29A; --gold-d:#7A5C2E;
  --mint:#BFD6CF; --mint-l:#DCE9E4; --glow:#8FD9C8;
  --navy:#0E2B45; --em:#003C3C; --cream:#F2F1EC;
}

body{font-family:var(--insur-font);font-size:17px;line-height:1.6;color:var(--insur-gray)}
h1,h2,h3,h4,h5,h6,
.section-title__title,.main-slider__title,.feature-one__title,.service-one__title,
.why-choose-one__list-title,.tracking__title,.footer-widget__title,.counter-one__text,
.accrodion-title h4,.main-menu__call-content a,.about-one__experience-year{
  font-family:var(--hegz-title);font-weight:400;letter-spacing:0}
::selection{background:var(--glow);color:var(--navy)}
a{transition:color .3s}

/* ---------- utilidades ---------- */
.hl{color:var(--gold)}
.dk .hl{color:var(--gold-l)}
.thm-btn{font-family:var(--insur-font);font-weight:600;letter-spacing:.02em;border-radius:999px;padding:14px 34px}
.thm-btn--gold{background:var(--gold)}
.thm-btn--ghost{background:transparent;color:var(--navy);box-shadow:inset 0 0 0 2px rgba(14,43,69,.18)}
.thm-btn--ghost:hover{color:#fff}
.section-sub-title{font-family:var(--insur-font);font-weight:600;letter-spacing:.16em;color:var(--gold-d)}
.why-choose-one .section-sub-title,.dk .section-sub-title{color:var(--gold-l)}
.section-title__title{font-size:44px;line-height:1.12}
section[id]{scroll-margin-top:90px}

/* ---------- preloader / cursor ---------- */
.preloader{background:var(--cream)}
.preloader__image{background-image:url(../images/resources/hegz-logo-azul.png);background-size:contain;width:150px;height:56px;animation:hegzPulse 1.4s ease-in-out infinite}
@keyframes hegzPulse{0%,100%{opacity:.35}50%{opacity:1}}
.custom-cursor__cursor{border-color:var(--gold)}
.custom-cursor__cursor-two{background:var(--gold)}

/* ---------- header ---------- */
.main-header__top{background:var(--navy)}
.main-header__top-address-list li .icon{color:var(--glow)}
.main-header__top-social a:hover{color:var(--gold-l)}
.main-menu__logo img,.sticky-header__content .main-menu__logo img{height:46px;width:auto}
.main-menu__list>li>a{font-family:var(--insur-font);font-weight:500;font-size:16px}
.main-menu__list>li.current>a,.main-menu__list>li:hover>a{color:var(--em)}
.main-menu__call-icon{background:var(--em)}
.main-menu__call-content a{font-size:19px}
.main-menu__main-menu-box-get-quote-btn{padding:10px 26px}
.mobile-nav__content{background:var(--navy)}
.mobile-nav__content .logo-box img{height:44px;width:auto}

/* ---------- hero ---------- */
.main-slider .container{padding-top:150px;padding-bottom:150px}
.main-slider .image-layer{width:62%}
.main-slider .image-layer:before{width:420px}
.main-slider__eyebrow{display:inline-flex;align-items:center;gap:10px;padding:7px 16px;border-radius:999px;background:#fff;
  box-shadow:0 8px 24px rgba(14,43,69,.08);font-size:14px;font-weight:600;color:var(--navy);margin-bottom:34px;
  opacity:0;transition:opacity 1500ms ease}
.main-slider__eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--em)}
.main-slider .swiper-slide-active .main-slider__eyebrow{opacity:1}
.main-slider__title{font-size:66px;line-height:1.06;max-width:640px}
.main-slider__title:before{display:none}
.main-slider__title span{color:var(--gold);font-weight:400}
.main-slider__text{max-width:520px;font-size:19px;line-height:1.55}
.main-slider__btn-box{display:flex;flex-wrap:wrap;gap:14px}
.main-slider__nav .swiper-button-next:hover,.main-slider__nav .swiper-button-prev:hover{color:var(--em);border-color:var(--em)}
.hero-card{position:absolute;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);border-radius:16px;
  box-shadow:0 24px 50px rgba(14,43,69,.14);padding:16px 18px;font-size:14px;color:var(--navy)}
.hero-card .t{font-weight:600;margin-bottom:8px;display:flex;align-items:center;gap:8px}
.hero-card .t:after{content:"";width:7px;height:7px;border-radius:50%;background:var(--em)}
.hero-card .row-chk{display:flex;align-items:center;gap:10px;padding:5px 0;border-top:1px solid rgba(14,43,69,.07)}
.hero-card .row-chk i{color:var(--em);font-size:12px}
.hero-card .row-chk em{margin-left:auto;font-style:normal;font-size:12px;font-weight:600;color:var(--em);background:var(--mint-l);padding:1px 9px;border-radius:999px}

/* ---------- feature ---------- */
.feature-one__single-inner{border-radius:16px}
.feature-one__icon{background:var(--navy)}
.feature-one__icon span,.feature-one__icon i{font-size:30px;color:var(--gold-l)}
.feature-one__count:before{font-family:var(--hegz-title)}
.feature-one__title{font-size:22px}

/* ---------- about ---------- */
.about-one-bg{background:radial-gradient(closest-side,rgba(191,214,207,.55),transparent) !important}
.about-one__img img,.about-one__img-two img{border-radius:14px}
.about-one__experience{background:var(--navy)}
.about-one__experience-year{font-size:52px}
.about-one__points li .icon{background:var(--mint-l);color:var(--em)}
.about-one__text-1{color:var(--em);font-weight:500}
.about-one__call-icon{background:var(--em)}
.about-one__call-content a{font-family:var(--hegz-title)}

/* ---------- servicios ---------- */
.hegz-services{position:relative;padding:120px 0 110px;background:var(--cream);overflow:hidden}
.hegz-services:before{content:"";position:absolute;width:720px;height:720px;right:-260px;top:-260px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(191,214,207,.75),transparent)}
.svc-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:40px 0 34px}
.svc-tabs button{border:0;background:#fff;color:var(--navy);font-family:var(--insur-font);font-weight:600;font-size:16px;
  padding:12px 22px;border-radius:999px;box-shadow:0 6px 18px rgba(14,43,69,.06);display:inline-flex;align-items:center;gap:9px;transition:.3s}
.svc-tabs button i{color:var(--gold)}
.svc-tabs button.active,.svc-tabs button:hover{background:var(--navy);color:#fff}
.svc-tabs button.active i,.svc-tabs button:hover i{color:var(--gold-l)}
.svc-panel{display:none}
.svc-panel.active{display:block;animation:svcIn .5s ease}
@keyframes svcIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.svc-intro{max-width:720px;font-size:18px;margin-bottom:28px}
.svc-card{position:relative;height:100%;background:#fff;border-radius:16px;padding:28px 26px 26px;border:1px solid rgba(14,43,69,.06);
  box-shadow:0 10px 30px rgba(14,43,69,.05);transition:transform .35s,box-shadow .35s}
.svc-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(14,43,69,.11)}
.svc-card__icon{width:56px;height:56px;border-radius:14px;display:grid;place-items:center;background:var(--mint-l);color:var(--em);font-size:22px;margin-bottom:18px;transition:.35s}
.svc-card:hover .svc-card__icon{background:var(--navy);color:var(--gold-l)}
.svc-card h3{font-size:21px;line-height:1.25;color:var(--navy);margin-bottom:8px}
.svc-card p{font-size:16px;line-height:1.55;margin:0}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.tags span{font-size:13px;font-weight:500;color:var(--em);background:var(--mint-l);padding:3px 11px;border-radius:999px}
.svc-band{position:relative;overflow:hidden;margin-top:30px;border-radius:20px;padding:38px 40px;color:#fff;
  background:radial-gradient(70% 90% at 100% 0%,rgba(143,217,200,.22),transparent 70%),linear-gradient(150deg,#0E2B45,#06303A)}
.svc-band .eb{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-l)}
.svc-band h3{color:#fff;font-size:30px;line-height:1.2;margin:8px 0 22px}
.svc-band ul{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 30px;margin:0;padding:0;list-style:none}
.svc-band li{display:flex;gap:12px;align-items:flex-start;color:rgba(255,255,255,.86);font-size:16px}
.svc-band li i{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:10px;background:rgba(143,217,200,.2);color:var(--glow);margin-top:2px}
.svc-mini{display:flex;gap:18px;align-items:center;margin-top:20px;background:#fff;border-radius:16px;padding:20px 24px;border:1px solid rgba(14,43,69,.06)}
.svc-mini .svc-card__icon{margin:0;flex:none;background:var(--navy);color:var(--gold-l)}
.svc-mini h3{font-size:20px;color:var(--navy);margin:0 0 3px}
.svc-mini p{margin:0;font-size:16px}

/* ---------- a quién atendemos (why choose) ---------- */
.why-choose-one{background:var(--navy)}
.why-choose-one__list-icon{background:var(--em)}
.why-choose-one__list-icon i{font-size:26px;color:var(--gold-l)}
.why-choose-one__single:hover .why-choose-one__list-icon,.why-choose-one__list li:hover .why-choose-one__list-icon{background:var(--gold)}
.why-choose-one__list-title{font-size:19px;line-height:1.3}
.why-choose-one-img img{max-height:640px;width:auto}

/* ---------- planes ---------- */
.hegz-plans{position:relative;padding:120px 0;background:#fff;overflow:hidden}
.hegz-plans:after{content:"";position:absolute;width:640px;height:640px;left:-280px;bottom:-280px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(217,194,154,.32),transparent)}
.plan{position:relative;z-index:1;height:100%;border-radius:20px;padding:34px 30px;background:var(--cream);border:1px solid rgba(14,43,69,.06);display:flex;flex-direction:column}
.plan__icon{width:56px;height:56px;border-radius:14px;display:grid;place-items:center;background:#fff;color:var(--em);font-size:22px}
.plan h3{font-size:28px;color:var(--navy);margin:20px 0 2px}
.plan .mod{font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-d)}
.plan .d{margin:14px 0 18px;font-size:16px}
.plan ul{list-style:none;padding:0;margin:0 0 26px}
.plan li{display:flex;gap:11px;align-items:flex-start;font-size:16px;line-height:1.45;padding:7px 0;border-top:1px solid rgba(14,43,69,.07);color:var(--navy)}
.plan li i{flex:none;font-size:11px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--mint-l);color:var(--em);margin-top:2px}
.plan .thm-btn{margin-top:auto;align-self:flex-start}
.plan--feat{background:linear-gradient(160deg,#0E2B45 0%,#0B2438 60%,#06303A 100%);color:rgba(255,255,255,.8);transform:translateY(-14px);box-shadow:0 30px 60px rgba(14,43,69,.25)}
.plan--feat h3{color:#fff}.plan--feat .mod{color:var(--gold-l)}
.plan--feat li{color:#fff;border-color:rgba(255,255,255,.1)}
.plan--feat li i{background:rgba(143,217,200,.18);color:var(--glow)}
.plan--feat .plan__icon{background:rgba(143,217,200,.14);color:var(--glow)}
.plan__badge{position:absolute;top:26px;right:26px;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:4px 12px;border-radius:999px;background:var(--gold);color:#fff}
.plans-note{position:relative;z-index:1;margin-top:40px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;
  padding:24px 28px;border-radius:18px;background:var(--mint-l)}
.plans-note h4{font-size:24px;color:var(--navy);margin:0}
.plans-note p{margin:2px 0 0}
.plans-legal{position:relative;z-index:1;font-size:14px;margin-top:14px}

/* ---------- proceso (counter band) ---------- */
.counter-one{background:linear-gradient(120deg,#003C3C 0%,#0E2B45 100%)}
.counter-one__icon span,.counter-one__icon i{color:var(--gold-l);font-size:40px}
.step-num{font-family:var(--hegz-title);font-size:46px;line-height:1;color:#fff}
.counter-one__text{font-size:22px;color:#fff;margin-top:12px}
.counter-one__desc{color:rgba(255,255,255,.72);font-size:16px;line-height:1.5;margin-top:6px}
.counter-one__single:before{background:var(--gold)}

/* ---------- FAQ ---------- */
.hegz-faq{padding:120px 0 100px;background:var(--cream)}
.faq-one-accrodion .accrodion{border-radius:14px;border:1px solid rgba(14,43,69,.06);background:#fff}
.faq-one-accrodion .accrodion.active{box-shadow:0 16px 40px rgba(14,43,69,.08)}
.faq-one-accrodion .accrodion-title h4{font-size:19px;line-height:1.35;color:var(--navy)}
.faq-one-accrodion .accrodion-title h4 span{background:var(--mint-l);color:var(--em)}
.faq-one-accrodion .accrodion.active .accrodion-title h4 span{background:var(--em);color:#fff}
.faq-one-accrodion .accrodion-title h4::before{color:var(--em)}
.faq-one-accrodion .accrodion-content p{font-size:16px}
.faq-side{position:sticky;top:120px}
.faq-side .lead{font-size:18px;margin:18px 0 26px}

/* ---------- contacto ---------- */
.hegz-contact{padding:110px 0 120px;background:#fff}
.ct-card{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-bottom:1px solid rgba(14,43,69,.08)}
.ct-card:last-child{border:0}
.ct-card i{flex:none;width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:var(--mint-l);color:var(--em);font-size:19px}
.ct-card span{display:block;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-d)}
.ct-card a,.ct-card p{color:var(--navy);font-size:18px;margin:2px 0 0;line-height:1.45}
.ct-card a:hover{color:var(--em)}
.ct-form{border-radius:22px;padding:40px;background:var(--cream);position:relative;overflow:hidden}
.ct-form h3{font-size:30px;color:var(--navy);margin-bottom:6px}
.ct-form p.sub{margin-bottom:24px}
.ct-form label{display:block;font-size:14px;font-weight:600;color:var(--navy);margin-bottom:6px}
.ct-form input,.ct-form select,.ct-form textarea{width:100%;border:1px solid rgba(14,43,69,.12);background:#fff;border-radius:12px;padding:13px 16px;
  font-family:var(--insur-font);font-size:16px;color:var(--navy);outline:none;transition:border-color .3s,box-shadow .3s}
.ct-form input:focus,.ct-form select:focus,.ct-form textarea:focus{border-color:var(--em);box-shadow:0 0 0 4px rgba(0,60,60,.1)}
.ct-form textarea{min-height:120px;resize:vertical}
.ct-form .f{margin-bottom:16px}
.ct-form .thm-btn{border:0;display:inline-flex;align-items:center;gap:10px}
.ct-form small{display:block;margin-top:12px;font-size:13px}
.map-wrap{margin-top:26px;border-radius:18px;overflow:hidden;border:1px solid rgba(14,43,69,.08);height:260px}
.map-wrap iframe{width:100%;height:100%;border:0;filter:grayscale(.35) contrast(1.05)}

/* ---------- CTA + footer ---------- */
.tracking__inner{background:linear-gradient(120deg,#003C3C 0%,#0E2B45 100%);border-radius:20px}
.tracking__icon{color:var(--gold-l)}
.tracking__icon i{font-size:52px;color:var(--gold-l)}
.tracking__sub-title{color:var(--glow)}
.tracking__title{font-size:34px}
.tracking__btn{background:var(--gold)}
.tracking__btn:hover{color:var(--navy)}
.tracking__btn:before{background:#fff}
.site-footer{background:#0A2236}
.footer-widget__logo img{height:56px;width:auto}
.footer-widget__title{color:#fff;font-size:22px}
.footer-widget__about-text,.footer-widget__contact-list .text p,.footer-widget__contact-list .text a{color:rgba(255,255,255,.66)}
.footer-widget__contact-list .icon{color:var(--glow)}
.site-footer__social a{background:rgba(255,255,255,.07)}
.site-footer__social a:hover{background:var(--gold);color:#fff}
.footer-links{list-style:none;padding:0;margin:0}
.footer-links li{padding:4px 0}
.footer-links a{color:rgba(255,255,255,.66)}
.footer-links a:hover{color:var(--gold-l)}
.footer-widget__phone-icon{color:var(--glow)}
.footer-widget__phone-text a{font-family:var(--hegz-title)}
.site-footer__bottom-text a{color:var(--gold-l)}
.scroll-to-top{background:var(--em)}
.scroll-to-top:hover{background:var(--gold)}
.wa-float{position:fixed;left:24px;bottom:24px;z-index:99;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;
  background:#1FAF62;color:#fff;font-size:28px;box-shadow:0 12px 30px rgba(0,0,0,.2);transition:transform .3s}
.wa-float:hover{transform:scale(1.08);color:#fff}

/* ---------- responsive ---------- */
@media (max-width:1199px){
  .main-slider__title{font-size:54px}
  .hero-card{display:none}
  .section-title__title{font-size:38px}
}
@media (max-width:991px){
  .main-slider .image-layer{width:100%;opacity:.28}
  .main-slider .container{padding-top:110px;padding-bottom:120px}
  .plan--feat{transform:none}
  .svc-band ul{grid-template-columns:1fr}
  .faq-side{position:static;margin-bottom:40px}
}
@media (max-width:767px){
  body{font-size:16px}
  .main-slider__title{font-size:40px}
  .main-slider__text{font-size:17px}
  .section-title__title{font-size:32px}
  .hegz-services,.hegz-plans,.hegz-faq,.hegz-contact{padding:80px 0}
  .ct-form{padding:28px 22px}
  .svc-band{padding:28px 22px}
  .tracking__title{font-size:26px}
  .wa-float{left:16px;bottom:16px}
}

/* ---------- ajustes tras revisión ---------- */
.feature-one__icon{background-image:none}
.feature-one__icon i{position:relative;display:inline-block;top:112px;left:84px;font-size:46px;color:var(--gold-l);transition:all 500ms linear}
.feature-one__single:hover .feature-one__icon{background:var(--em)}
.about-one__experience:before{border-color:var(--gold-l)}
@media (max-width:1499px){.main-menu__right{display:none}}
@media (max-width:1299px){.main-menu__main-menu-box-get-quote-btn-box{display:none}}
.why-choose-one__list-icon{background:transparent}
.why-choose-one__list li:hover .why-choose-one__list-icon{background:transparent}
.why-choose-one__single{border-radius:14px}
.footer-widget__contact-list .text p,.footer-widget__contact-list .text a{font-size:16px}
.why-choose-one-img{right:6%;top:50%;transform:translateY(-50%)}
.why-choose-one-img img{max-height:560px;max-width:440px;height:auto}
@media (max-width:1199px){.why-choose-one-img{display:none}}

/* ---------- logo más grande, sin teléfono en el encabezado ---------- */
.main-menu__right{display:none!important}
.main-menu__logo img{height:72px;width:auto}
.sticky-header__content .main-menu__logo img{height:58px}
.main-menu__wrapper-inner{padding-top:6px;padding-bottom:6px}
.mobile-nav__content .logo-box img{height:56px}
.footer-widget__logo img{height:72px}
@media (max-width:1199px){.main-menu__logo img{height:60px}}
@media (max-width:767px){.main-menu__logo img,.sticky-header__content .main-menu__logo img{height:54px}}
.main-menu__left{display:flex;align-items:center;float:none}
.main-menu__wrapper-inner{display:flex;align-items:center}
.main-menu__logo{padding:14px 0}

/* ---------- versión celular ---------- */
@media (max-width:1199px){
  .main-menu__wrapper-inner{justify-content:space-between}
  .main-menu__left{width:100%;justify-content:space-between}
  .main-menu__main-menu-box{background:transparent;padding-left:0}
  .main-menu .mobile-nav__toggler{width:48px;height:48px;border-radius:12px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:20px;margin:0}
  .main-menu .mobile-nav__toggler:hover{background:var(--em);color:#fff}
  .main-menu__logo{margin-right:0}
}
@media (max-width:991px){
  .main-slider .image-layer{width:100%;top:auto;height:300px;opacity:1}
  .main-slider .image-layer:before{width:100%;height:140px;left:0;right:0;top:-1px;bottom:auto;
    background-image:linear-gradient(180deg,rgb(242,241,236) 0%,rgba(242,241,236,0) 100%)}
  .main-slider .container{padding-top:60px;padding-bottom:330px}
  .main-slider__eyebrow{margin-bottom:22px}
}
@media (max-width:767px){
  .main-header__top{display:none}
  .main-slider__btn-box .thm-btn{padding:13px 26px}
  .scroll-to-top{display:none!important}
  .wa-float{left:auto;right:16px;bottom:16px;width:52px;height:52px;font-size:26px}
  .site-footer .footer-widget__column{margin-bottom:34px}
  .site-footer__social{margin-bottom:6px}
  .feature-one__single{margin-bottom:24px}
  .svc-tabs{gap:8px}
  .svc-tabs button{font-size:15px;padding:10px 16px}
  .counter-one__single{margin-bottom:34px;text-align:left}
  .plans-note .thm-btn{width:100%;justify-content:center;display:inline-flex}
  .tracking__inner{text-align:center}
}

/* ---------- teléfono legible y con aire en toda la página ---------- */
a[href^="tel:"],.plans-note .thm-btn{font-family:var(--insur-font);font-weight:600;letter-spacing:.04em;word-spacing:.12em;white-space:nowrap;font-variant-numeric:lining-nums tabular-nums}
.about-one__call{gap:16px}
.about-one__call-content a{font-size:21px;line-height:1.2;display:inline-block;margin-bottom:2px}
.about-one__call-content p{margin:0;line-height:1.3}
.ct-card a[href^="tel:"]{font-size:20px}
.mobile-nav__contact li{gap:12px;align-items:center}
.mobile-nav__contact li a{letter-spacing:.04em;word-spacing:.12em}

/* Pie de página: contacto en filas iguales */
.f-contact{margin:0;padding:0}
.f-contact li{display:flex;gap:16px;align-items:flex-start;padding:16px 0;border-top:1px solid rgba(255,255,255,.08)}
.f-contact li:first-child{border-top:0;padding-top:0}
.f-contact li>i{flex:none;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(143,217,200,.12);color:var(--glow);font-size:15px;margin-top:2px}
.f-contact span{display:block;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-l);margin-bottom:4px}
.f-contact a,.f-contact p{color:rgba(255,255,255,.82);font-size:16px;line-height:1.5;margin:0}
.f-contact a:hover{color:#fff}
.f-contact a.tel{font-size:22px;color:#fff;line-height:1.25}
.footer-widget__title{margin-bottom:26px;line-height:1.2}
.footer-links li{padding:6px 0}
@media (max-width:767px){
  .site-footer__top{padding-top:70px;padding-bottom:20px}
  .site-footer .footer-widget__column{margin-bottom:40px}
  .footer-widget__about-text{margin-bottom:22px}
  .site-footer__social{margin-bottom:0}
  .footer-widget__title{margin-bottom:18px}
  .about-one__btn-call{display:flex;flex-direction:column;align-items:flex-start;gap:26px}
  .about-one__call{margin-left:0}
}
@media (max-width:1199px){.site-footer .footer-widget__column{margin-top:0!important}}
.about-one__call-content{margin-left:4px;top:0}

/* ==========================================================
   Movimiento y dinamismo
   ========================================================== */
html{scroll-behavior:auto}
:target{scroll-margin-top:100px}

/* barra de progreso */
.read-progress{position:fixed;left:0;top:0;height:3px;width:100%;z-index:10000;transform-origin:0 50%;transform:scaleX(0);
  background:linear-gradient(90deg,var(--em),var(--glow),var(--gold));pointer-events:none}

/* encabezado fijo con sombra al bajar */
.stricky-header.stricky-fixed{box-shadow:0 10px 30px rgba(14,43,69,.08)}

/* enlaces del menú: subrayado que crece */
.main-menu__list>li>a{position:relative}
.main-menu__list>li>a:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;border-radius:2px;background:var(--gold);
  transform:scaleX(0);transform-origin:center;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.main-menu__list>li:hover>a:after,.main-menu__list>li.current>a:after{transform:scaleX(1)}
.footer-links a,.f-contact a,.ct-card a{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .35s ease,color .3s}
.footer-links a:hover,.f-contact a:hover,.ct-card a:hover{background-size:100% 1px}
.footer-links a{display:inline-block;transition:transform .3s ease,color .3s,background-size .35s ease}
.footer-links a:hover{transform:translateX(4px)}

/* botones: brillo que cruza */
.thm-btn{overflow:hidden;isolation:isolate}
.thm-btn:after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;z-index:2;pointer-events:none;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .7s ease}
.thm-btn:hover:after{left:130%}
.thm-btn:active{transform:scale(.97)}

/* entrada al hacer scroll (usa translate para no chocar con otras transformaciones) */
.js-motion .rv{opacity:0;translate:0 28px;transition:opacity .7s ease var(--d,0ms),translate .8s cubic-bezier(.2,.8,.2,1) var(--d,0ms)}
.js-motion .rv.in{opacity:1;translate:0 0}
.reduce-motion .rv{opacity:1!important;translate:none!important;transition:none!important}

/* tarjetas: inclinación ligera y luz que sigue al mouse */
.svc-card,.plan{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.svc-card:hover{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-6px)}
.svc-card:after,.plan:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;
  background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(143,217,200,.18),transparent 60%)}
.svc-card:hover:after,.plan:hover:after{opacity:1}
.plan--feat{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-14px)}
.svc-card__icon i{transition:transform .45s cubic-bezier(.3,1.6,.5,1)}
.svc-card:hover .svc-card__icon i{transform:scale(1.15) rotate(-6deg)}

/* pestañas con indicador deslizante */
.svc-tabs{position:relative}
.svc-tabs button{position:relative;z-index:1;background:#fff}
.svc-tabs button.active{background:transparent;color:#fff}
.svc-tabs button.active i{color:var(--gold-l)}
.svc-ink{position:absolute;left:0;top:0;border-radius:999px;background:var(--navy);z-index:0;box-shadow:0 10px 24px rgba(14,43,69,.25);
  transition:transform .5s cubic-bezier(.2,.8,.2,1),width .5s cubic-bezier(.2,.8,.2,1),height .3s}
.svc-panel.active .svc-card{animation:none}

/* hero: tarjeta flotante */
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.hero-float{animation:heroFloat 5s ease-in-out infinite}
.hero-card .row-chk em{animation:chkIn .6s ease both}
.hero-card .row-chk:nth-child(3) em{animation-delay:.25s}.hero-card .row-chk:nth-child(4) em{animation-delay:.5s}.hero-card .row-chk:nth-child(5) em{animation-delay:.75s}
@keyframes chkIn{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}
.main-slider__eyebrow i{animation:dotPulse 1.8s ease-in-out infinite}
@keyframes dotPulse{0%,100%{box-shadow:0 0 0 0 rgba(0,60,60,.45)}50%{box-shadow:0 0 0 6px rgba(0,60,60,0)}}

/* imágenes */
.about-one__img{overflow:hidden;border-radius:14px}
.about-one__img img{transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.about-one__img:hover img{transform:scale(1.05)}
[data-parallax]{will-change:transform;transition:transform .1s linear}

/* llegada a una sección: el título se ilumina un instante */
@keyframes arrive{0%{opacity:.35;translate:0 10px}100%{opacity:1;translate:0 0}}
section.arrive .section-title__title{animation:arrive .7s cubic-bezier(.2,.8,.2,1)}

/* proceso: línea que avanza bajo cada paso */
.counter-one__single{position:relative}
.counter-one__single:after{content:"";position:absolute;left:0;bottom:-14px;height:2px;width:0;background:linear-gradient(90deg,var(--gold),transparent);transition:width 1.2s ease .3s}
.counter-one .animated .counter-one__single:after,.counter-one .counter-one__single:hover:after{width:70%}

/* preguntas */
.faq-one-accrodion .accrodion{transition:box-shadow .35s,transform .35s}
.faq-one-accrodion .accrodion:hover{transform:translateX(4px)}

/* WhatsApp: pulso suave */
.wa-float:before{content:"";position:absolute;inset:0;border-radius:50%;background:#1FAF62;z-index:-1;animation:waPulse 2.4s ease-out infinite}
@keyframes waPulse{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.7);opacity:0}}

/* formulario */
@keyframes shake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(3px)}30%,50%,70%{transform:translateX(-6px)}40%,60%{transform:translateX(6px)}}
.ct-form input.shake{animation:shake .5s;border-color:var(--gold)!important}

@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* encabezado fijo también en celular (logo + menú siempre a la mano) */
@media (max-width:1199px){
  .stricky-header{display:block!important}
  .stricky-header .main-menu__wrapper-inner{padding-top:4px;padding-bottom:4px}
  .sticky-header__content .main-menu__logo{padding:8px 0}
  .sticky-header__content .main-menu__logo img{height:42px}
  .stricky-header .mobile-nav__toggler{width:42px;height:42px;font-size:18px}
}
@media (hover:none),(pointer:coarse){.custom-cursor__cursor,.custom-cursor__cursor-two{display:none!important}}
