:root{--g-ink:#0a2436;--g-green:#0b4b42;--g-mint:#08705c;--g-gold:#d9ad5d;--g-cream:#fff9ef;--g-max:1420px}

/* Gauntlet pass: every remaining block uses the same stage width as the hero. */
.medical-approved,.documents-ready,.travel-approved,.membership-approved,.insurance-proposal,.security-visual,.plans-proposal,.faq-proposal,.footer-redesign{position:relative;isolation:isolate;overflow:hidden}
.medical-approved-art,.documents-ready-art,.travel-approved-art,.membership-approved-art{width:min(100%,var(--g-max));max-width:var(--g-max);margin-inline:auto;position:relative;z-index:1}
.medical-approved{background:#e9f8f2}
.travel-approved{background:#fcede2}
.membership-approved{background:#e9f6fd}
.membership-approved-art{mask-image:none}

/* A small animated cue adds life without covering the story. */
.medical-approved::after{content:'♥';position:absolute;z-index:3;right:max(3vw,24px);top:12%;display:grid;place-items:center;width:68px;height:68px;border:1px solid #ffffffb8;border-radius:50%;background:#fff9f2db;color:#cf3e39;font-size:30px;box-shadow:0 14px 40px #174f4130;animation:g-heart 1.7s ease-in-out infinite;pointer-events:none}
.travel-approved::after{content:'✈';position:absolute;z-index:3;right:7%;top:12%;color:#c58f3c;font-size:30px;filter:drop-shadow(0 8px 10px #7f5a2b35);animation:g-plane 7s ease-in-out infinite;pointer-events:none}
.membership-approved::after{content:'';position:absolute;z-index:2;inset:-35% auto -35% -18%;width:18%;background:linear-gradient(105deg,transparent,#ffffff80,transparent);transform:rotate(8deg);animation:g-glint 8s ease-in-out infinite;pointer-events:none}

/* Four distinct document actions remain visible and gain one restrained scan cue. */
.documents-ready::after{content:'';position:absolute;z-index:3;top:17%;bottom:11%;left:-2px;width:3px;background:linear-gradient(transparent,#d9ad5d 30%,#fff 50%,#d9ad5d 70%,transparent);box-shadow:0 0 26px #d9ad5dcc;opacity:0;pointer-events:none}
.documents-ready.gauntlet-visible::after{animation:g-scan 5.8s .6s ease-in-out both}

/* Insurance: one human scene plus three clearly separated categories. */
.insurance-proposal{background:linear-gradient(118deg,#dce8d6 0%,#e9f0e2 58%,#d6e6dd 100%)}
.insurance-proposal-wrap{position:relative;z-index:1}
.insurance-proposal-top>img{box-shadow:0 22px 54px #174f4128;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.insurance-proposal.gauntlet-visible .insurance-proposal-top>img{transform:scale(1.012)}
.insurance-proposal-features article{border-top-width:4px;border-radius:0 0 18px 18px;padding:18px 18px 16px;transition:transform .3s ease,background .3s ease}
.insurance-proposal-features article:nth-child(1){border-color:#c8794f;background:#fae9de80}
.insurance-proposal-features article:nth-child(2){border-color:#d2a440;background:#fff4ce82}
.insurance-proposal-features article:nth-child(3){border-color:#367966;background:#def0e980}
.insurance-proposal-features article+article{border-left:0}
.insurance-proposal-features article:hover{transform:translateY(-4px);background:#fffaf0}

/* Security: less monochrome, more visual proof, while keeping the exact technical claims. */
.security-visual{background:radial-gradient(circle at 84% 16%,#f4dfb8 0 10%,transparent 26%),radial-gradient(circle at 12% 84%,#dbe9f4 0 12%,transparent 29%),#f6f4ed}
.security-visual-wrap{position:relative;z-index:1}
.security-lock-scene{position:relative;border-radius:36px;background:linear-gradient(145deg,#0b4b42,#08362f);box-shadow:0 26px 70px #123d3630;color:#f1c872;padding:34px 28px}
.security-lock-scene:before,.security-lock-scene:after{content:'';position:absolute;inset:13%;border:1px solid #edc66c55;border-radius:50%;animation:g-ring 3.2s ease-out infinite;pointer-events:none}
.security-lock-scene:after{animation-delay:1.6s}
.security-lock-scene>span{color:#fff8eb}.security-lock-scene>p{color:#d2e4dc}
.security-visual-cards article{border:1px solid #ffffffb5;box-shadow:0 14px 34px #133c3320;transition:transform .3s ease,box-shadow .3s ease}
.security-visual-cards article:hover{transform:translateY(-5px);box-shadow:0 20px 42px #133c3330}
.security-visual-cards article:nth-child(1){background:#dfefe9}.security-visual-cards article:nth-child(2){background:#dfe9f5}.security-visual-cards article:nth-child(3){background:#f6e7c8}.security-visual-cards article:nth-child(4){background:#eee2ef}
.cipher-label>strong{color:#0b4b42;text-shadow:0 1px #fff}

/* Plans: clear free/premium decision with a visible recommendation. */
.plans-proposal{background:linear-gradient(120deg,#e8eef5,#f6f3eb 53%,#e7efe8)}
.plans-proposal-grid article{box-shadow:0 18px 46px #203f4b1a;transition:transform .3s ease,box-shadow .3s ease}
.plans-proposal-grid article:hover{transform:translateY(-5px);box-shadow:0 24px 56px #203f4b2c}
.plan-premium{position:relative;background:linear-gradient(145deg,#0b4b42,#062f2b)}
.plan-premium:before{content:'MÁS ELEGIDO';position:absolute;top:18px;right:22px;padding:7px 11px;border-radius:999px;background:#e6bf73;color:#173c34;font-size:11px;letter-spacing:1.35px;font-weight:800}
.plan-free{background:#fffaf3}

/* FAQ feels editorial; the sticker and open answer provide the motion. */
.faq-proposal{background:linear-gradient(135deg,#f7e9dc,#f3dfca 55%,#f8eee3)}
.faq-proposal-heading img{filter:drop-shadow(0 16px 22px #855d3c25);animation:g-float 5s ease-in-out infinite}
.faq-proposal-grid details{transition:background .3s ease,transform .3s ease,box-shadow .3s ease}
.faq-proposal-grid details[open]{transform:translateY(-2px);box-shadow:0 14px 34px #80552d1c}
.faq-proposal-grid details p{animation:g-answer .35s ease both}

/* Footer: the complete identity closes the page as a designed final block. */
.footer-redesign{background:radial-gradient(circle at 88% 20%,#176456 0 8%,transparent 28%),#073c36;border-top:4px solid #d8ad60}
.footer-redesign:after{content:'';position:absolute;right:2%;bottom:-18%;width:360px;height:360px;background:url('/assets/brand/isotipo-oscuro.png') center/contain no-repeat;opacity:.045;filter:grayscale(1) brightness(3);pointer-events:none}
.footer-redesign-wrap{position:relative;z-index:1}
.footer-redesign-top nav a,.footer-app-link{transition:color .2s ease,transform .2s ease}
.footer-redesign-top nav a:hover,.footer-app-link:hover{color:#efc877;transform:translateX(3px)}

/* Enter transitions are purposely subtle and run only once. */
.gauntlet-ready .medical-approved-art,.gauntlet-ready .documents-ready-art,.gauntlet-ready .travel-approved-art,.gauntlet-ready .membership-approved-art,.gauntlet-ready .insurance-proposal-wrap,.gauntlet-ready .security-visual-wrap,.gauntlet-ready .plans-proposal-wrap,.gauntlet-ready .faq-proposal-wrap{opacity:.01;transform:translateY(18px)}
.gauntlet-visible .medical-approved-art,.gauntlet-visible .documents-ready-art,.gauntlet-visible .travel-approved-art,.gauntlet-visible .membership-approved-art,.gauntlet-visible .insurance-proposal-wrap,.gauntlet-visible .security-visual-wrap,.gauntlet-visible .plans-proposal-wrap,.gauntlet-visible .faq-proposal-wrap{opacity:1;transform:none;transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1)}

@keyframes g-heart{0%,100%{transform:scale(1)}12%{transform:scale(1.14)}24%{transform:scale(1)}36%{transform:scale(1.1)}50%{transform:scale(1)}}
@keyframes g-plane{0%,100%{transform:translate(0,0) rotate(-7deg)}50%{transform:translate(-24px,-11px) rotate(3deg)}}
@keyframes g-glint{0%,62%{left:-20%;opacity:0}72%{opacity:.85}88%,100%{left:112%;opacity:0}}
@keyframes g-scan{0%{left:0;opacity:0}10%{opacity:.8}88%{opacity:.8}100%{left:100%;opacity:0}}
@keyframes g-ring{0%{transform:scale(.72);opacity:.65}100%{transform:scale(1.3);opacity:0}}
@keyframes g-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1deg)}}
@keyframes g-answer{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

@media(min-width:1100px){
  .medical-approved,.documents-ready,.travel-approved,.membership-approved{height:calc(100svh - 80px);min-height:620px;display:flex;align-items:center;padding:0}
  .medical-approved-art,.documents-ready-art,.travel-approved-art,.membership-approved-art{max-height:calc(100svh - 80px);object-fit:contain}
  .insurance-proposal,.security-visual,.plans-proposal,.faq-proposal{height:calc(100svh - 80px);min-height:620px;padding-block:clamp(12px,2vh,22px)}
  .insurance-proposal h2{font-size:clamp(46px,3.7vw,58px);margin:12px 0 16px}
  .insurance-proposal-intro{font-size:clamp(18px,1.35vw,22px);line-height:1.38}
  .insurance-proposal-line{font-size:17px;margin-top:18px}
  .insurance-proposal-top>img{max-height:clamp(300px,43vh,390px);object-fit:cover;object-position:center top}
  .insurance-proposal-features{gap:22px;margin-top:clamp(14px,2vh,22px)}
  .insurance-proposal-features article{padding-top:12px}
  .insurance-proposal-features h3{font-size:clamp(23px,1.8vw,28px);margin:7px 0}
  .insurance-proposal-features p{font-size:clamp(15px,1.12vw,18px);line-height:1.35}
  .security-visual-top{gap:clamp(30px,4vw,70px)}
  .security-visual h2{font-size:clamp(48px,4.1vw,66px)}
  .security-lead{font-size:clamp(18px,1.4vw,22px);line-height:1.35;margin-block:8px}
  .cipher-label{margin-top:12px}.cipher-label>strong{font-size:clamp(58px,4.5vw,72px)}
  .security-lock-scene{padding:clamp(18px,2.5vh,30px)}
  .security-lock-scene>svg{width:clamp(110px,15vh,145px);height:clamp(110px,15vh,145px)}
  .security-lock-scene>span{font-size:20px;margin-top:9px}.security-lock-scene>p{font-size:15px;line-height:1.35;margin-bottom:0}
  .security-visual-cards{margin-top:clamp(14px,2.1vh,28px)}
  .security-visual-cards article{padding:clamp(15px,2vh,22px) clamp(17px,1.7vw,24px)}
  .security-visual-cards p{font-size:clamp(14px,1.05vw,17px)}
  .security-visual h3{font-size:clamp(20px,1.55vw,24px);margin:8px 0}
  .security-visual-bottom{margin-top:clamp(8px,1.2vh,14px)}
  .security-visual-bottom details{padding-top:8px}.security-visual-bottom summary{font-size:15px}
  .faq-proposal-heading{grid-template-columns:1.7fr .8fr}.faq-proposal-heading img{height:clamp(145px,23vh,220px)}
  .faq-proposal-grid{margin-top:clamp(12px,2vh,24px)}
  .faq-proposal-grid details{padding-block:clamp(12px,1.8vh,20px)}
}

@media(max-width:1099px){
  .medical-approved::after,.travel-approved::after{width:52px;height:52px;font-size:24px;top:8%}
  .insurance-proposal,.security-visual,.plans-proposal,.faq-proposal{min-height:auto}
}
@media(max-width:650px){
  .medical-approved::after,.travel-approved::after,.documents-ready::after{display:none}
  .medical-approved-art,.documents-ready-art,.travel-approved-art,.membership-approved-art{width:100%;height:auto}
  .insurance-proposal-wrap,.security-visual-wrap,.plans-proposal-wrap,.faq-proposal-wrap{width:min(100% - 32px,var(--g-max))}
  .security-lock-scene{padding:26px 18px}.security-visual-cards{gap:14px}
  .plan-premium:before{position:static;display:table;margin:0 0 14px auto}
  .footer-redesign:after{width:220px;height:220px}
}

@media(prefers-reduced-motion:reduce){
  .medical-approved::after,.travel-approved::after,.membership-approved::after,.documents-ready::after,.security-lock-scene:before,.security-lock-scene:after,.faq-proposal-heading img{animation:none!important}
  .gauntlet-ready .medical-approved-art,.gauntlet-ready .documents-ready-art,.gauntlet-ready .travel-approved-art,.gauntlet-ready .membership-approved-art,.gauntlet-ready .insurance-proposal-wrap,.gauntlet-ready .security-visual-wrap,.gauntlet-ready .plans-proposal-wrap,.gauntlet-ready .faq-proposal-wrap{opacity:1;transform:none}
}
