/* ═══════════════════════════════════════════════════════
   CLARYGO — GLOBAL STYLESHEET v6.0 — Mai 2026
   Orange #F5620F · Navy #0A3D8F · Premium Design System
   ═══════════════════════════════════════════════════════ */

/* ─── FONTS ─── */
@import url('https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&display=swap');

:root{
  --o:#F5620F; --o2:#FF7A2F; --o3:#FFF0E8; --o4:#FFD4B5; --o5:#B83A0A;
  --b:#0A3D8F; --b2:#072D6B; --b3:#1A5CB8; --b4:#E8F0FF; --b5:#C5D8FF;
  --g:#22C55E; --g2:#16A34A; --g3:#DCFCE7;
  --dk:#0D0D1A; --dk2:#1A1A2E; --gr:#6B7280; --gr2:#9CA3AF; --gl:#F4F5F7; --gl2:#EBEDF2; --wh:#FFFFFF;
  --r:16px; --rs:10px; --rl:24px;
  --sh:0 4px 24px rgba(10,61,143,.10);
  --sh2:0 8px 40px rgba(10,61,143,.16);
  --sl:0 20px 60px rgba(10,61,143,.18);
  --sl2:0 32px 80px rgba(10,61,143,.22);
  --fd:'Syne',sans-serif;
  --fb:'Plus Jakarta Sans',sans-serif;
  --ease-spring:cubic-bezier(.34,1.56,.64,1);
  --ease-smooth:cubic-bezier(.4,0,.2,1);
  --ease-back:cubic-bezier(.175,.885,.32,1.275);
}

/* ─── RESET ─── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}
body{font-family:var(--fb);color:var(--dk);background:var(--wh);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip;width:100%;max-width:100vw}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none}
button{cursor:pointer;font-family:var(--fb)}
input,textarea,select{font-family:var(--fb)}

/* ─── SCROLLBAR ─── */
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:#f1f1f1}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--o),var(--b));border-radius:3px}

/* ─── PROMO BAR ─── */
#promo-bar{
  background:linear-gradient(90deg,#B83A0A 0%,var(--o) 45%,#0A3D8F 100%);
  color:#fff;overflow:hidden;height:40px;display:flex;align-items:center;
  position:relative;z-index:200;width:100%;max-width:100vw;
}
.pbar-track{
  display:flex;align-items:center;gap:60px;white-space:nowrap;
  animation:marquee 28s linear infinite;font-size:12.5px;font-weight:600;
}
.pbar-track:hover{animation-play-state:paused}
.pbar-track span{display:flex;align-items:center;gap:8px}
.pbar-track strong{font-weight:800;color:#FFE0CC}
.pbar-track a{color:#FFD4B5;text-decoration:underline;font-weight:700}
.pbar-track .hot-badge{background:rgba(255,255,255,.2);border-radius:4px;padding:1px 7px;font-size:11px;font-weight:800;letter-spacing:.05em}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ─── CUSTOM CURSOR ─── */
#cursor{
  position:fixed;width:10px;height:10px;background:var(--o);border-radius:50%;
  pointer-events:none;z-index:99999;transform:translate(-50%,-50%);
  mix-blend-mode:multiply;transition:width .2s,height .2s,background .3s;will-change:left,top;
}
#cursor-trail{
  position:fixed;width:34px;height:34px;border:2px solid rgba(245,98,15,.4);border-radius:50%;
  pointer-events:none;z-index:99998;transform:translate(-50%,-50%);
  transition:all .14s var(--ease-smooth);mix-blend-mode:multiply;
}
body.link-hover #cursor{width:22px;height:22px;background:var(--b)}
body.link-hover #cursor-trail{width:52px;height:52px;border-color:rgba(10,61,143,.28)}
@media(hover:none){#cursor,#cursor-trail{display:none}body{cursor:auto}}

/* ─── NAV ─── */
#main-nav{
  position:sticky;top:0;z-index:1000;
  background:rgba(255,255,255,.96);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);
  border-bottom:1px solid rgba(10,61,143,.07);
  padding:0 clamp(16px,5%,80px);
  display:flex;align-items:center;justify-content:space-between;
  height:68px;transition:box-shadow .35s,background .35s;
  width:100%;max-width:100vw;box-sizing:border-box;overflow:hidden;
}
#main-nav.scrolled{box-shadow:0 4px 32px rgba(10,61,143,.12);background:rgba(255,255,255,.99)}
.nav-logo{
  font-family:var(--fd);font-weight:800;font-size:26px;color:var(--b);
  text-decoration:none;letter-spacing:-.04em;display:flex;align-items:center;gap:2px;
  flex-shrink:0;transition:transform .3s;
}
.nav-logo:hover{transform:scale(1.04)}
.nav-logo em{color:var(--o);font-style:normal}
.nav-logo-dot{width:8px;height:8px;border-radius:50%;background:var(--o);margin-left:2px;animation:dotPulse 2.5s ease infinite;display:inline-block}
@keyframes dotPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.6}}
.nav-links{display:flex;align-items:center;gap:2px;list-style:none}
.nav-links a{
  text-decoration:none;color:var(--dk);font-size:13.5px;font-weight:500;
  padding:8px 13px;border-radius:10px;transition:all .22s;white-space:nowrap;
}
.nav-links a:hover{background:var(--gl);color:var(--b)}
.nav-links a.active{color:var(--o);font-weight:700;background:var(--o3)}
.nav-links .nav-cta{
  background:var(--o)!important;color:#fff!important;
  padding:10px 22px!important;border-radius:50px!important;font-weight:700!important;
  box-shadow:0 4px 18px rgba(245,98,15,.38);transition:all .28s!important;margin-left:4px;
}
.nav-links .nav-cta:hover{background:var(--o2)!important;transform:translateY(-3px)!important;box-shadow:0 10px 30px rgba(245,98,15,.5)!important}

/* ─── NAV LOGO IMAGES ─── */
.nav-partner-logo{
  display:inline-flex;align-items:center;justify-content:center;
  height:28px;width:auto;object-fit:contain;vertical-align:middle;
}

/* ─── HAMBURGER ─── */
.nav-hbg{
  display:none;flex-direction:column;gap:5px;cursor:pointer;
  border:none;background:none;padding:8px;width:42px;height:42px;
  border-radius:10px;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0;
}
.nav-hbg:hover{background:var(--gl)}
.nav-hbg span{display:block;width:22px;height:2px;background:var(--dk);border-radius:2px;transition:all .35s var(--ease-smooth);transform-origin:center}
.nav-hbg.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-hbg.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-hbg.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ─── MOBILE NAV ─── */
#mob-nav{position:fixed;inset:0;z-index:9999;background:rgba(7,45,107,.7);backdrop-filter:blur(12px);opacity:0;visibility:hidden;transition:opacity .32s,visibility .32s}
#mob-nav.open{opacity:1;visibility:visible}
#mob-panel{position:absolute;top:0;right:0;bottom:0;width:min(340px,92vw);background:#fff;display:flex;flex-direction:column;transform:translateX(105%);transition:transform .38s var(--ease-smooth);overflow:hidden;box-shadow:-20px 0 60px rgba(10,61,143,.22)}
#mob-nav.open #mob-panel{transform:translateX(0)}
.mob-head{padding:20px 22px 16px;background:linear-gradient(135deg,var(--b) 0%,var(--b2) 100%);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.mob-head .nav-logo{color:#fff}
.mob-head .nav-logo em{color:var(--o2)}
.mob-close{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.15);border:none;cursor:pointer;color:#fff;font-size:20px;display:flex;align-items:center;justify-content:center;transition:.2s}
.mob-close:hover{background:rgba(255,255,255,.25)}
.mob-body{flex:1;overflow-y:auto;padding:10px 0}
.mob-body::-webkit-scrollbar{width:3px}
.mob-body::-webkit-scrollbar-thumb{background:#E5E7EB;border-radius:3px}
.mob-sec{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gr);padding:14px 22px 7px}
.mob-link{display:flex;align-items:center;gap:12px;padding:12px 22px;text-decoration:none;color:var(--dk);font-size:14px;font-weight:600;transition:.2s;position:relative}
.mob-link::before{content:'';position:absolute;left:0;top:8px;bottom:8px;width:3px;background:var(--o);border-radius:0 3px 3px 0;transform:scaleY(0);transition:.22s}
.mob-link:hover{background:var(--gl);color:var(--o);padding-left:26px}
.mob-link:hover::before{transform:scaleY(1)}
.mob-link-ico{width:36px;height:36px;border-radius:10px;background:var(--gl);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;transition:.2s;overflow:hidden}
.mob-link-ico img{width:36px;height:36px;object-fit:contain;padding:4px}
.mob-link:hover .mob-link-ico{background:var(--o3)}
.mob-div{height:1px;background:#F0F2F7;margin:8px 22px}
.mob-footer{padding:16px 22px 28px;border-top:1px solid #F0F2F7;flex-shrink:0}
.mob-cta{display:flex;align-items:center;justify-content:center;gap:9px;background:linear-gradient(135deg,var(--o),var(--o2));color:#fff;text-decoration:none;padding:15px;border-radius:14px;font-weight:800;font-size:14.5px;box-shadow:0 6px 24px rgba(245,98,15,.42);transition:.28s}
.mob-cta:hover{transform:translateY(-3px);box-shadow:0 12px 36px rgba(245,98,15,.55)}
.mob-footer-note{text-align:center;font-size:11px;color:var(--gr);margin-top:8px}
.mob-promo-badge{
  background:linear-gradient(135deg,#FF3D00,var(--o));color:#fff;
  border-radius:10px;padding:10px 16px;margin:12px 22px 4px;
  font-size:12px;font-weight:700;display:flex;align-items:center;gap:8px;
}
.mob-promo-badge strong{font-size:15px;font-weight:800}
.mob-promo-badge span{opacity:.85;font-size:11px}

/* ─── PARTNER BADGE SYSTEM ─── */
.badge-partner{
  display:inline-flex;align-items:center;gap:5px;
  background:linear-gradient(135deg,var(--o3),#FFF5EE);
  border:1.5px solid rgba(245,98,15,.3);border-radius:20px;
  padding:3px 10px;font-size:10.5px;font-weight:800;color:var(--o5);
  text-transform:uppercase;letter-spacing:.06em;
}
.badge-partner::before{content:'★';font-size:9px}
.badge-ext{
  display:inline-flex;align-items:center;gap:5px;
  background:var(--gl2);border:1.5px solid rgba(107,114,128,.2);border-radius:20px;
  padding:3px 10px;font-size:10px;font-weight:700;color:var(--gr);
  text-transform:uppercase;letter-spacing:.05em;
}
.ext-note{
  font-size:10.5px;color:var(--gr2);font-style:italic;
  border-left:2px solid var(--gl2);padding-left:8px;margin-top:4px;
}

/* ─── OPERATOR LOGO IMAGES ─── */
.op-logo-wrap{
  display:inline-flex;align-items:center;justify-content:center;
  height:44px;padding:6px 14px;background:#fff;
  border:1.5px solid rgba(10,61,143,.1);border-radius:12px;
  transition:all .25s;box-shadow:0 2px 8px rgba(10,61,143,.06);
}
.op-logo-wrap:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(10,61,143,.12);border-color:var(--o)}
.op-logo-wrap img{height:28px;width:auto;object-fit:contain;display:block}

/* Operator badge pills (text fallback) */
.op-logo{display:inline-flex;align-items:center;justify-content:center;padding:7px 18px;border-radius:10px;font-family:var(--fd);font-size:13px;font-weight:700;white-space:nowrap;border:1.5px solid rgba(10,61,143,.08);background:#fff;transition:.2s;cursor:default}
.op-logo:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(10,61,143,.1)}
.op-auchan{background:#E31837;color:#fff;border-color:#C01130}
.op-nrj{background:linear-gradient(135deg,#E30613,#FF6B00);color:#fff;border-color:#C01130}
.op-lebara{background:#1DB954;color:#fff;border-color:#189944}
.op-lyca{background:linear-gradient(135deg,#6B21A8,#9333EA);color:#fff;border-color:#6B21A8}
.op-youprice{background:linear-gradient(135deg,#7C3AED,#A855F7);color:#fff;border-color:#7C3AED}
.op-engie{background:#00AAFF;color:#fff;border-color:#0085CC}
.op-canal{background:linear-gradient(135deg,#000,#2D2D2D);color:#fff;border-color:#000}
.op-doro{background:linear-gradient(135deg,#1A3D6B,#2A5FAA);color:#fff;border-color:#1A3D6B}
.op-topchaleur{background:linear-gradient(135deg,#C0290F,#E84012);color:#fff;border-color:#C0290F}
.op-free{background:#000;color:#fff;border-color:#333}
.op-sfr{background:#E2001A;color:#fff;border-color:#C00015}
.op-orange{background:#FF6600;color:#fff;border-color:#E55A00}
.op-bouygues{background:#0064A8;color:#fff;border-color:#004E84}
.op-laposte{background:#FFD200;color:#1A1A1A;border-color:#E6BD00}

/* ─── FOOTER ─── */
#main-footer{
  background:linear-gradient(160deg,#F0F6FF 0%,#FFF5EF 40%,#F0F8FF 100%);
  border-top:1px solid rgba(10,61,143,.08);position:relative;overflow:hidden;
  color:var(--dk);width:100%;max-width:100vw;
}
.footer-blob{position:absolute;border-radius:50%;pointer-events:none;animation:fBlob 14s ease-in-out infinite;will-change:transform}
.footer-blob1{width:300px;height:300px;top:-80px;right:0;background:radial-gradient(circle,rgba(245,98,15,.05) 0%,transparent 70%)}
.footer-blob2{width:350px;height:350px;bottom:-100px;left:0;background:radial-gradient(circle,rgba(10,61,143,.05) 0%,transparent 70%);animation-delay:7s}
@keyframes fBlob{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(22px,-18px) scale(1.08)}}

/* Footer operator strip */
.footer-operators{padding:20px 5%;border-bottom:1px solid rgba(10,61,143,.06);background:rgba(255,255,255,.55);overflow:hidden;width:100%}
.fo-inner{max-width:1280px;width:100%;margin:0 auto;display:flex;align-items:center;overflow:hidden;min-width:0}
.fo-label{font-size:10.5px;font-weight:800;color:var(--gr);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;margin-right:28px;flex-shrink:0}
.fo-track{display:flex;align-items:center;gap:24px;animation:foScroll 22s linear infinite;flex-shrink:0}
.fo-track:hover{animation-play-state:paused}
@keyframes foScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.fo-op{
  display:inline-flex;align-items:center;justify-content:center;
  background:#fff;border:1.5px solid rgba(10,61,143,.1);border-radius:12px;
  height:44px;padding:0 14px;transition:.25s;text-decoration:none;
  box-shadow:0 2px 8px rgba(10,61,143,.05);flex-shrink:0;
}
.fo-op:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(10,61,143,.12);border-color:var(--o)}
.fo-op img{height:28px;width:auto;object-fit:contain;display:block;max-width:90px}

.footer-inner{max-width:1280px;width:100%;margin:0 auto;padding:60px 5% 0;position:relative;z-index:1;box-sizing:border-box}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:44px;margin-bottom:48px}
.footer-brand-desc{font-size:13.5px;color:var(--gr);line-height:1.75;max-width:300px;margin-bottom:22px}

/* Footer contact block */
.footer-contact-block{margin-bottom:20px}
.footer-phone-link{
  display:inline-flex;align-items:center;gap:8px;
  background:linear-gradient(135deg,var(--o3),#FFF5EE);
  border:1.5px solid rgba(245,98,15,.25);border-radius:12px;
  padding:10px 16px;text-decoration:none;color:var(--o5);
  font-weight:800;font-size:15px;transition:.25s;
}
.footer-phone-link:hover{background:var(--o);color:#fff;box-shadow:0 6px 20px rgba(245,98,15,.35);transform:translateY(-2px)}
.footer-phone-hours{font-size:11px;color:var(--gr2);margin-top:5px}

.footer-social{display:flex;gap:10px;margin-bottom:22px;flex-wrap:wrap}
.foot-soc{
  display:flex;align-items:center;justify-content:center;gap:6px;
  background:#fff;border:1.5px solid rgba(10,61,143,.1);border-radius:12px;
  padding:8px 14px;font-size:13px;font-weight:600;color:var(--dk);
  text-decoration:none;transition:.28s;box-shadow:0 2px 10px rgba(10,61,143,.06);
}
.foot-soc:hover{background:var(--o);border-color:var(--o);color:#fff;transform:translateY(-3px);box-shadow:0 8px 24px rgba(245,98,15,.3)}
.footer-trust-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.ftbadge{display:inline-flex;align-items:center;gap:5px;background:#fff;border:1.5px solid rgba(10,61,143,.08);border-radius:8px;padding:5px 12px;font-size:11px;font-weight:700;color:var(--dk);box-shadow:0 2px 8px rgba(10,61,143,.05)}
.ftbadge .dot{width:7px;height:7px;border-radius:50%;background:#22C55E;flex-shrink:0;animation:dotPulse 2.5s ease infinite}

.footer-col h4{font-family:var(--fd);font-size:12px;font-weight:800;color:var(--dk);text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.footer-col h4::after{content:'';flex:1;height:1px;background:rgba(10,61,143,.07)}
.footer-col a{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--gr);text-decoration:none;margin-bottom:9px;transition:.22s;padding:2px 0;border-radius:4px}
.footer-col a::before{content:'›';color:var(--o);font-weight:700;transition:.2s;flex-shrink:0}
.footer-col a:hover{color:var(--b);padding-left:5px}
.footer-col a.hot{color:var(--o);font-weight:600}
.footer-col a.hot::after{content:'HOT';background:var(--o);color:#fff;font-size:9px;font-weight:800;padding:1px 6px;border-radius:4px;margin-left:4px;vertical-align:middle}
.footer-col a.partner{color:var(--b);font-weight:600}
.footer-col a.partner::after{content:'★';color:var(--o);margin-left:3px;font-size:11px}

/* Footer newsletter */
.footer-newsletter{background:#fff;border-radius:20px;padding:26px;border:1.5px solid rgba(10,61,143,.08);box-shadow:var(--sh);margin-bottom:36px}
.fn-head{display:flex;align-items:center;gap:12px;margin-bottom:6px}
.fn-ico{width:44px;height:44px;border-radius:14px;background:var(--o3);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}
.fn-title{font-family:var(--fd);font-size:16px;font-weight:800;color:var(--dk)}
.fn-sub{font-size:12.5px;color:var(--gr);margin-bottom:14px;line-height:1.55}
.fn-form{display:flex;gap:8px}
.fn-input{flex:1;border:1.5px solid rgba(10,61,143,.12);border-radius:12px;padding:11px 15px;font-family:var(--fb);font-size:13.5px;color:var(--dk);outline:none;transition:.2s;background:#F8FAFF}
.fn-input:focus{border-color:var(--b);background:#fff;box-shadow:0 0 0 3px rgba(10,61,143,.07)}
.fn-btn{background:linear-gradient(135deg,var(--o),var(--o2));color:#fff;border:none;border-radius:12px;padding:11px 20px;font-family:var(--fb);font-weight:700;font-size:13.5px;cursor:pointer;transition:.28s;white-space:nowrap;box-shadow:0 4px 16px rgba(245,98,15,.35)}
.fn-btn:hover{transform:translateY(-2px);box-shadow:0 8px 26px rgba(245,98,15,.5)}

.footer-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(10,61,143,.1),transparent)}
.footer-bottom{padding:22px 5% 30px;max-width:1280px;width:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;box-sizing:border-box}
.footer-bottom-left p{font-size:12.5px;color:var(--gr);word-break:break-word;overflow-wrap:break-word}
.footer-bottom-left p strong{color:var(--o);font-weight:700}
.footer-rating{display:flex;align-items:center;gap:8px}
.fr-stars{color:#FBBF24;font-size:14px;letter-spacing:1px}
.fr-txt{font-size:12px;color:var(--gr)}
.fr-txt strong{color:var(--dk)}
.footer-bottom-links{display:flex;gap:18px;flex-wrap:wrap}
.footer-bottom-links a{font-size:11.5px;color:var(--gr);text-decoration:none;transition:.2s}
.footer-bottom-links a:hover{color:var(--o)}

/* Footer affiliate disclaimer */
.footer-affiliate-note{
  background:rgba(10,61,143,.04);border-top:1px solid rgba(10,61,143,.07);
  padding:12px 5%;text-align:center;max-width:100%;
  font-size:10.5px;color:var(--gr2);line-height:1.55;
}
.footer-affiliate-note a{color:var(--b);text-decoration:underline}

/* ─── SHARED SECTION STYLES ─── */
.sec-tag{display:inline-flex;align-items:center;gap:7px;background:var(--o3);border:1px solid rgba(245,98,15,.2);border-radius:50px;padding:5px 16px;font-size:11.5px;font-weight:700;color:var(--o);margin-bottom:14px}
.sec-tag.blue{background:var(--b4);border-color:rgba(10,61,143,.15);color:var(--b)}
.sec-tag.green{background:var(--g3);border-color:rgba(34,197,94,.2);color:var(--g2)}
.sec-tag::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor;animation:dotPulse 2.5s ease infinite;flex-shrink:0}
.sec-h2{font-family:var(--fd);font-size:clamp(28px,3.5vw,44px);font-weight:800;line-height:1.1;letter-spacing:-.03em;color:var(--dk);margin-bottom:14px}
.sec-h2 .ao{color:var(--o)}
.sec-h2 .ab{color:var(--b)}
.sec-p{font-size:clamp(14px,1.3vw,16.5px);color:var(--gr);line-height:1.78}
.sec-header{text-align:center;max-width:660px;margin:0 auto 52px}

/* ─── BREADCRUMB ─── */
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--gr);margin-bottom:18px;flex-wrap:wrap}
.breadcrumb a{color:var(--gr);text-decoration:none;transition:.2s}
.breadcrumb a:hover{color:var(--o)}

/* ─── PAGE HERO ─── */
.page-hero{background:linear-gradient(145deg,#F0F5FF 0%,#E8F4FF 50%,#FFF5EF 100%);padding:56px 5% 48px;border-bottom:1px solid rgba(10,61,143,.07);position:relative;overflow:hidden;width:100%;box-sizing:border-box}
.page-hero::before{content:'';position:absolute;top:-100px;right:-50px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(245,98,15,.07) 0%,transparent 70%);pointer-events:none}

/* ─── REVEAL ANIMATIONS ─── */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .75s var(--ease-smooth),transform .75s var(--ease-smooth)}
.reveal.in{opacity:1;transform:translateY(0)}
.reveal-l{opacity:0;transform:translateY(24px);transition:opacity .75s var(--ease-smooth),transform .75s var(--ease-smooth)}
.reveal-l.in{opacity:1;transform:translateY(0)}
.reveal-r{opacity:0;transform:translateY(24px);transition:opacity .75s var(--ease-smooth),transform .75s var(--ease-smooth)}
.reveal-r.in{opacity:1;transform:translateY(0)}
.reveal-scale{opacity:0;transform:scale(.88);transition:opacity .7s var(--ease-smooth),transform .7s var(--ease-spring)}
.reveal-scale.in{opacity:1;transform:scale(1)}
.reveal-up{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease-smooth),transform .6s var(--ease-smooth)}
.reveal-up.in{opacity:1;transform:translateY(0)}

/* ─── BUTTONS ─── */
.btn-p{display:inline-flex;align-items:center;gap:9px;background:var(--o);color:#fff;text-decoration:none;padding:15px 34px;border-radius:50px;font-weight:700;font-size:15px;box-shadow:0 8px 36px rgba(245,98,15,.42);transition:all .3s;position:relative;overflow:hidden;border:none;cursor:pointer;font-family:var(--fb)}
.btn-p::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.2) 0%,transparent 60%);pointer-events:none}
.btn-p:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 18px 54px rgba(245,98,15,.55);background:var(--o2)}
.btn-s{display:inline-flex;align-items:center;gap:9px;background:transparent;color:var(--b);text-decoration:none;padding:14px 28px;border-radius:50px;font-weight:600;font-size:15px;border:2px solid rgba(10,61,143,.2);transition:all .28s;font-family:var(--fb);cursor:pointer}
.btn-s:hover{background:var(--b4);border-color:var(--b);transform:translateY(-3px)}
.btn-ghost{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.12);color:#fff;text-decoration:none;padding:13px 26px;border-radius:50px;font-weight:600;font-size:14px;border:1.5px solid rgba(255,255,255,.25);transition:all .28s;font-family:var(--fb);cursor:pointer}
.btn-ghost:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.4);transform:translateY(-3px)}
.btn-sm{display:inline-flex;align-items:center;gap:7px;background:var(--o);color:#fff;text-decoration:none;padding:10px 22px;border-radius:30px;font-weight:700;font-size:13px;border:none;cursor:pointer;transition:all .25s;font-family:var(--fb);box-shadow:0 4px 16px rgba(245,98,15,.35)}
.btn-sm:hover{transform:translateY(-2px);box-shadow:0 8px 26px rgba(245,98,15,.5)}

/* ─── OFFER CARDS ─── */
.offer-card{
  background:#fff;border-radius:var(--rl);border:1.5px solid rgba(10,61,143,.07);
  overflow:hidden;transition:all .32s var(--ease-smooth);
  display:flex;flex-direction:column;position:relative;
}
.offer-card:hover{transform:translateY(-8px);box-shadow:var(--sl);border-color:transparent}
.offer-card.featured{border-color:var(--o);box-shadow:0 8px 36px rgba(245,98,15,.15)}
.offer-card.featured:hover{box-shadow:0 24px 72px rgba(245,98,15,.25)}
.offer-card .oc-header{padding:22px;position:relative;overflow:hidden;min-height:90px;display:flex;flex-direction:column;justify-content:flex-end}
.offer-card .oc-header::before{content:'';position:absolute;inset:0;background:inherit;opacity:.08}
.offer-card .oc-logo{height:36px;width:auto;object-fit:contain;margin-bottom:8px;filter:brightness(0) invert(1);position:relative;z-index:1}
.offer-card .oc-op-name{color:rgba(255,255,255,.9);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;position:relative;z-index:1}
.offer-card .oc-body{padding:20px;flex:1;display:flex;flex-direction:column}
.offer-card .oc-data{font-family:var(--fd);font-size:42px;font-weight:800;line-height:1;color:var(--dk);margin-bottom:2px;display:flex;align-items:baseline;gap:4px}
.offer-card .oc-data small{font-size:18px;font-weight:700;color:var(--gr)}
.offer-card .oc-price{font-size:24px;font-weight:800;color:var(--o);margin-bottom:12px}
.offer-card .oc-price small{font-size:13px;font-weight:500;color:var(--gr)}
.offer-card .oc-feats{list-style:none;margin-bottom:16px;display:flex;flex-direction:column;gap:6px}
.offer-card .oc-feats li{font-size:13px;color:var(--gr);display:flex;align-items:center;gap:7px;line-height:1.4}
.offer-card .oc-feats li::before{content:'✓';color:var(--g);font-weight:800;font-size:12px;flex-shrink:0;width:16px;height:16px;background:var(--g3);border-radius:50%;display:flex;align-items:center;justify-content:center}
.offer-card .oc-cta{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--o),var(--o2));color:#fff;text-decoration:none;padding:14px;border-radius:14px;font-weight:700;font-size:14px;transition:.28s;margin-top:auto;border:none;cursor:pointer;box-shadow:0 4px 16px rgba(245,98,15,.3)}
.offer-card .oc-cta:hover{box-shadow:0 10px 30px rgba(245,98,15,.5);transform:translateY(-2px)}
.offer-card .oc-badge{position:absolute;top:12px;right:12px;background:linear-gradient(135deg,#FBBF24,#F59E0B);color:#fff;font-size:10px;font-weight:800;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.05em;z-index:2}
.offer-card .oc-badge.green{background:linear-gradient(135deg,var(--g),var(--g2))}
.offer-card .oc-badge.blue{background:linear-gradient(135deg,var(--b),var(--b3))}

/* ─── PREMIUM COOKIE CONSENT ─── */
#ckb{
  position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(130%);
  z-index:99990;max-width:600px;width:calc(100% - 32px);
  border-radius:24px;overflow:hidden;
  box-shadow:0 24px 80px rgba(10,61,143,.25),0 0 0 1px rgba(10,61,143,.08);
  opacity:0;visibility:hidden;transition:transform .55s var(--ease-spring),opacity .4s,visibility .4s;
}
#ckb.show{transform:translateX(-50%) translateY(0);opacity:1;visibility:visible}
.ckb-header{
  background:linear-gradient(135deg,var(--b) 0%,var(--b2) 100%);
  padding:22px 28px 18px;position:relative;overflow:hidden;
}
.ckb-header::after{content:'🍪';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:52px;opacity:.1}
.ckb-header h3{font-family:var(--fd);font-size:17px;font-weight:800;color:#fff;margin-bottom:5px}
.ckb-header p{font-size:12.5px;color:rgba(255,255,255,.68);line-height:1.55}
.ckb-header a{color:var(--o2);text-decoration:underline}
.ckb-body{background:#fff;padding:20px 28px 24px}
.ckb-prefs{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}
.ckb-pref{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--gl);border-radius:12px}
.ckb-pref-info{display:flex;flex-direction:column;gap:2px}
.ckb-pref-name{font-size:13px;font-weight:700;color:var(--dk)}
.ckb-pref-desc{font-size:11px;color:var(--gr2)}
/* Toggle switch */
.ckb-toggle{position:relative;width:44px;height:24px;flex-shrink:0}
.ckb-toggle input{opacity:0;width:0;height:0;position:absolute}
.ckb-toggle-slider{position:absolute;cursor:pointer;inset:0;background:#D1D5DB;border-radius:24px;transition:.3s}
.ckb-toggle-slider::before{content:'';position:absolute;width:18px;height:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s;box-shadow:0 2px 4px rgba(0,0,0,.2)}
.ckb-toggle input:checked + .ckb-toggle-slider{background:linear-gradient(135deg,var(--o),var(--o2))}
.ckb-toggle input:checked + .ckb-toggle-slider::before{transform:translateX(20px)}
.ckb-toggle input:disabled + .ckb-toggle-slider{opacity:.7;cursor:not-allowed}
.ckb-btns{display:flex;gap:10px}
.ckb-ok{flex:1;background:linear-gradient(135deg,var(--o),var(--o2));color:#fff;border:none;border-radius:12px;padding:14px;font-family:var(--fb);font-weight:800;font-size:14px;cursor:pointer;box-shadow:0 4px 18px rgba(245,98,15,.35);transition:.25s}
.ckb-ok:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(245,98,15,.5)}
.ckb-save{flex:0.6;background:var(--gl2);color:var(--dk);border:none;border-radius:12px;padding:14px;font-family:var(--fb);font-weight:600;font-size:13px;cursor:pointer;transition:.2s}
.ckb-save:hover{background:#E5E7EB}

/* ─── FLOATING CTA ─── */
#float-cta{
  position:fixed;bottom:28px;right:28px;z-index:9000;
  background:linear-gradient(135deg,var(--o),var(--o2));
  color:#fff;border:none;border-radius:50px;
  padding:14px 24px;font-family:var(--fb);font-weight:800;font-size:14px;
  cursor:pointer;box-shadow:0 8px 32px rgba(245,98,15,.5);
  transition:all .3s;text-decoration:none;display:flex;align-items:center;gap:9px;
  animation:floatBounce 3s ease-in-out infinite;
}
#float-cta:hover{transform:translateY(-4px) scale(1.04);box-shadow:0 16px 48px rgba(245,98,15,.65);animation:none}
@keyframes floatBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
#float-cta .fc-pulse{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.7);animation:fcPulse 1.8s ease infinite;flex-shrink:0}
@keyframes fcPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.5}}

/* ─── SCROLL PROGRESS ─── */
#scroll-bar{position:fixed;top:0;left:0;height:3px;z-index:2000;background:linear-gradient(90deg,var(--o),var(--b));transition:width .1s}

/* ─── PROMO POPUP ─── */
#promo-popup{
  position:fixed;inset:0;z-index:99995;
  display:flex;align-items:center;justify-content:center;
  background:rgba(7,45,107,.7);backdrop-filter:blur(12px);
  opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s;
}
#promo-popup.show{opacity:1;visibility:visible}
.pp-box{
  background:#fff;border-radius:28px;max-width:520px;width:calc(100% - 32px);
  overflow:hidden;box-shadow:0 40px 100px rgba(10,61,143,.3);
  transform:scale(.9);transition:transform .45s var(--ease-spring);
}
#promo-popup.show .pp-box{transform:scale(1)}
.pp-header{
  background:linear-gradient(135deg,#B83A0A 0%,var(--o) 50%,var(--o2) 100%);
  padding:32px 36px 28px;text-align:center;position:relative;overflow:hidden;
}
.pp-header::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.pp-fire{font-size:48px;margin-bottom:8px;display:block;animation:ppFire .8s ease-in-out infinite alternate}
@keyframes ppFire{0%{transform:scale(1) rotate(-3deg)}100%{transform:scale(1.1) rotate(3deg)}}
.pp-pretitle{color:rgba(255,255,255,.85);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}
.pp-title{font-family:var(--fd);font-size:32px;font-weight:800;color:#fff;line-height:1.1;margin-bottom:4px}
.pp-title del{opacity:.5;font-size:20px;text-decoration:line-through}
.pp-sub{color:rgba(255,255,255,.78);font-size:13px;margin-top:8px}
.pp-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s}
.pp-close:hover{background:rgba(255,255,255,.25)}
.pp-body{padding:28px 36px 32px;text-align:center}
.pp-perks{display:flex;flex-direction:column;gap:8px;margin-bottom:22px;text-align:left}
.pp-perk{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--gr);background:var(--gl);border-radius:12px;padding:11px 14px}
.pp-perk strong{color:var(--dk);font-weight:700}
.pp-perk-ico{width:28px;height:28px;border-radius:8px;background:var(--o3);display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}
.pp-urgency{font-size:12px;color:var(--o5);font-weight:700;margin-bottom:18px;padding:8px 16px;background:var(--o3);border-radius:8px;display:inline-block}
.pp-cta{display:block;background:linear-gradient(135deg,var(--o),var(--o2));color:#fff;text-decoration:none;padding:16px;border-radius:16px;font-weight:800;font-size:16px;box-shadow:0 8px 30px rgba(245,98,15,.5);transition:.28s;border:none;cursor:pointer;width:100%;font-family:var(--fb)}
.pp-cta:hover{transform:translateY(-3px);box-shadow:0 16px 44px rgba(245,98,15,.6)}
.pp-skip{display:block;text-align:center;font-size:12px;color:var(--gr2);margin-top:12px;cursor:pointer;background:none;border:none;font-family:var(--fb)}
.pp-skip:hover{color:var(--gr)}

/* Countdown timer */
.pp-countdown{display:flex;align-items:center;justify-content:center;gap:16px;margin:16px 0}
.pp-cnt-unit{text-align:center}
.pp-cnt-num{font-family:var(--fd);font-size:28px;font-weight:800;color:var(--o);background:var(--o3);border-radius:10px;padding:6px 14px;display:block;min-width:54px;line-height:1}
.pp-cnt-label{font-size:10px;color:var(--gr2);font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-top:4px;display:block}
.pp-cnt-sep{font-family:var(--fd);font-size:26px;font-weight:800;color:var(--o);padding-bottom:14px}

/* ─── CHATBOT ─── */
#chat-trigger{
  position:fixed;bottom:92px;right:28px;z-index:9001;
  width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--b),var(--b3));
  border:none;cursor:pointer;box-shadow:0 8px 28px rgba(10,61,143,.45);
  display:flex;align-items:center;justify-content:center;
  transition:all .3s;animation:chatBounce 3.5s ease-in-out infinite;
}
#chat-trigger:hover{transform:scale(1.1);box-shadow:0 14px 40px rgba(10,61,143,.6);animation:none}
@keyframes chatBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
#chat-trigger svg{width:26px;height:26px;fill:#fff;transition:.3s}
#chat-trigger .chat-notif{position:absolute;top:0;right:0;width:18px;height:18px;background:var(--o);border-radius:50%;border:2px solid #fff;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;font-weight:800}
#chat-panel{
  position:fixed;bottom:170px;right:28px;z-index:9002;
  width:360px;max-height:540px;background:#fff;border-radius:24px;
  box-shadow:0 24px 72px rgba(10,61,143,.25),0 0 0 1px rgba(10,61,143,.08);
  display:flex;flex-direction:column;overflow:hidden;
  transform:scale(.85) translateY(30px);transform-origin:bottom right;
  opacity:0;visibility:hidden;transition:all .38s var(--ease-spring);
}
#chat-panel.open{transform:scale(1) translateY(0);opacity:1;visibility:visible}
.chat-head{
  background:linear-gradient(135deg,var(--b) 0%,var(--b3) 100%);
  padding:16px 20px;display:flex;align-items:center;gap:12px;flex-shrink:0;
}
.chat-avatar{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;position:relative}
.chat-avatar::after{content:'';position:absolute;bottom:1px;right:1px;width:10px;height:10px;background:var(--g);border-radius:50%;border:2px solid var(--b)}
.chat-head-info{}
.chat-head-name{color:#fff;font-weight:800;font-size:15px}
.chat-head-status{color:rgba(255,255,255,.75);font-size:11.5px;display:flex;align-items:center;gap:4px}
.chat-head-status::before{content:'';width:7px;height:7px;background:var(--g);border-radius:50%;display:inline-block}
.chat-close{margin-left:auto;background:rgba(255,255,255,.15);border:none;color:#fff;width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:.2s;flex-shrink:0}
.chat-close:hover{background:rgba(255,255,255,.25)}
.chat-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.chat-msgs::-webkit-scrollbar{width:3px}
.chat-msgs::-webkit-scrollbar-thumb{background:#E5E7EB;border-radius:3px}
.chat-msg{max-width:80%;animation:msgPop .3s var(--ease-spring)}
@keyframes msgPop{0%{transform:scale(.85) translateY(8px);opacity:0}100%{transform:scale(1) translateY(0);opacity:1}}
.chat-msg.bot{align-self:flex-start}
.chat-msg.user{align-self:flex-end}
.chat-bubble{padding:10px 14px;border-radius:16px;font-size:13.5px;line-height:1.5}
.chat-msg.bot .chat-bubble{background:var(--gl);color:var(--dk);border-bottom-left-radius:4px}
.chat-msg.user .chat-bubble{background:linear-gradient(135deg,var(--o),var(--o2));color:#fff;border-bottom-right-radius:4px}
.chat-bubble a{color:inherit;font-weight:700;text-decoration:underline}
.chat-msg.bot .chat-bubble a{color:var(--b)}
.chat-suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:8px 16px}
.chat-sug{
  background:var(--b4);border:1.5px solid rgba(10,61,143,.15);border-radius:20px;
  padding:7px 14px;font-size:12px;font-weight:600;color:var(--b);cursor:pointer;
  transition:.2s;border:none;font-family:var(--fb);
}
.chat-sug:hover{background:var(--b);color:#fff}
.chat-offer-card{background:linear-gradient(135deg,var(--o3),#FFF5EE);border:1.5px solid rgba(245,98,15,.2);border-radius:14px;padding:12px;margin-top:4px}
.chat-offer-card .coc-title{font-weight:800;font-size:13px;color:var(--dk);margin-bottom:4px}
.chat-offer-card .coc-price{font-size:18px;font-weight:800;color:var(--o)}
.chat-offer-card .coc-link{display:inline-flex;align-items:center;gap:6px;background:var(--o);color:#fff;text-decoration:none;padding:7px 14px;border-radius:20px;font-size:12px;font-weight:700;margin-top:8px;transition:.2s}
.chat-offer-card .coc-link:hover{background:var(--o2)}
.chat-input-wrap{border-top:1px solid var(--gl2);padding:12px 16px;display:flex;gap:8px;flex-shrink:0}
.chat-input{flex:1;border:1.5px solid rgba(10,61,143,.12);border-radius:22px;padding:10px 16px;font-family:var(--fb);font-size:13px;color:var(--dk);outline:none;transition:.2s;background:#F8FAFF}
.chat-input:focus{border-color:var(--b);background:#fff}
.chat-send{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--o),var(--o2));border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.25s;flex-shrink:0;box-shadow:0 4px 14px rgba(245,98,15,.4)}
.chat-send:hover{transform:scale(1.1);box-shadow:0 8px 22px rgba(245,98,15,.55)}
.chat-send svg{width:18px;height:18px;fill:#fff}
.chat-typing{display:flex;align-items:center;gap:4px;padding:10px 14px}
.chat-typing span{width:7px;height:7px;background:var(--gr2);border-radius:50%;animation:typing 1.2s ease-in-out infinite}
.chat-typing span:nth-child(2){animation-delay:.2s}
.chat-typing span:nth-child(3){animation-delay:.4s}
@keyframes typing{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-6px)}}
.chat-promp-card{background:#fff;border:1.5px solid var(--gl2);border-radius:14px;padding:12px;margin-top:6px}
.chat-promp-card .cpc-title{font-size:11px;font-weight:700;color:var(--gr);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.chat-promp-card .cpc-price{font-family:var(--fd);font-size:22px;font-weight:800;color:var(--o)}
.chat-promp-card .cpc-price del{font-size:14px;color:var(--gr2)}
.chat-promp-card .cpc-perks{font-size:12px;color:var(--gr);line-height:1.6;margin-top:4px}
.chat-promp-card .cpc-cta{display:block;background:linear-gradient(135deg,var(--o),var(--o2));color:#fff;text-decoration:none;padding:10px;border-radius:12px;font-weight:700;font-size:13px;text-align:center;margin-top:10px;transition:.2s}

/* ─── PREMIUM FORM FUNNEL ─── */
#funnel-modal{
  position:fixed;inset:0;z-index:99996;
  display:flex;align-items:center;justify-content:center;
  background:rgba(7,45,107,.75);backdrop-filter:blur(14px);
  opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s;
}
#funnel-modal.show{opacity:1;visibility:visible}
.funnel-box{
  background:#fff;border-radius:28px;max-width:560px;width:calc(100% - 32px);
  max-height:90vh;overflow-y:auto;
  box-shadow:0 40px 100px rgba(10,61,143,.3);
  transform:translateY(30px);transition:transform .45s var(--ease-spring);
}
#funnel-modal.show .funnel-box{transform:translateY(0)}
.funnel-header{background:linear-gradient(135deg,var(--b),var(--b3));padding:28px 32px 24px;position:relative}
.funnel-header h2{font-family:var(--fd);font-size:22px;font-weight:800;color:#fff;margin-bottom:4px}
.funnel-header p{color:rgba(255,255,255,.72);font-size:13px}
.funnel-progress{height:4px;background:rgba(255,255,255,.2);border-radius:4px;margin-top:16px;overflow:hidden}
.funnel-progress-bar{height:100%;background:linear-gradient(90deg,var(--o),var(--o2));border-radius:4px;transition:width .4s var(--ease-smooth)}
.funnel-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s}
.funnel-close:hover{background:rgba(255,255,255,.25)}
.funnel-step{padding:28px 32px;display:none;flex-direction:column;gap:16px}
.funnel-step.active{display:flex}
.funnel-step-label{font-size:11.5px;font-weight:700;color:var(--o);text-transform:uppercase;letter-spacing:.1em;margin-bottom:-4px}
.funnel-step h3{font-family:var(--fd);font-size:20px;font-weight:800;color:var(--dk)}
.funnel-field{display:flex;flex-direction:column;gap:6px}
.funnel-field label{font-size:13px;font-weight:700;color:var(--dk)}
.funnel-input{
  border:2px solid rgba(10,61,143,.1);border-radius:14px;
  padding:14px 18px;font-family:var(--fb);font-size:15px;color:var(--dk);
  outline:none;transition:.25s;background:#F8FAFF;width:100%;
}
.funnel-input:focus{border-color:var(--b);background:#fff;box-shadow:0 0 0 4px rgba(10,61,143,.08)}
.funnel-input.error{border-color:#EF4444;background:#FFF5F5}
.funnel-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.funnel-choice{
  padding:16px;background:var(--gl);border:2px solid transparent;border-radius:14px;
  cursor:pointer;transition:.25s;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:7px;
  font-size:13.5px;font-weight:600;color:var(--dk);
}
.funnel-choice span.ico{font-size:28px;line-height:1}
.funnel-choice:hover{border-color:rgba(10,61,143,.2);background:var(--b4)}
.funnel-choice.selected{border-color:var(--o);background:var(--o3);color:var(--o5)}
.funnel-next{
  background:linear-gradient(135deg,var(--o),var(--o2));color:#fff;
  border:none;border-radius:50px;padding:16px;font-family:var(--fb);
  font-weight:800;font-size:15px;cursor:pointer;transition:.28s;
  box-shadow:0 6px 24px rgba(245,98,15,.42);width:100%;
}
.funnel-next:hover{transform:translateY(-3px);box-shadow:0 14px 38px rgba(245,98,15,.55)}
.funnel-confirm{padding:28px 32px;text-align:center;display:none}
.funnel-confirm.active{display:block}
.funnel-confirm-ico{font-size:56px;margin-bottom:12px;animation:confirmBounce .6s var(--ease-spring) forwards}
@keyframes confirmBounce{0%{transform:scale(0)}100%{transform:scale(1)}}
.funnel-confirm h3{font-family:var(--fd);font-size:22px;font-weight:800;color:var(--dk);margin-bottom:8px}
.funnel-confirm p{font-size:14px;color:var(--gr);line-height:1.65;margin-bottom:20px}
.funnel-confirm-offer{background:var(--o3);border:1.5px solid rgba(245,98,15,.2);border-radius:16px;padding:20px;margin-bottom:20px;text-align:left}
.funnel-confirm-offer h4{font-family:var(--fd);font-size:18px;font-weight:800;color:var(--dk);margin-bottom:4px}
.funnel-confirm-offer .price{font-size:28px;font-weight:800;color:var(--o);line-height:1}
.funnel-confirm-offer del{font-size:16px;color:var(--gr2)}
.funnel-confirm-offer p{font-size:13px;color:var(--gr);margin-bottom:0}

/* ─── URGENCY ELEMENTS ─── */
.urgency-bar{
  display:inline-flex;align-items:center;gap:8px;
  background:linear-gradient(135deg,#FF3D00,var(--o));
  color:#fff;border-radius:50px;padding:7px 18px;
  font-size:12.5px;font-weight:800;
}
.urgency-bar .u-dot{width:8px;height:8px;background:rgba(255,255,255,.8);border-radius:50%;animation:dotPulse 1.5s ease infinite}
.promo-chip{
  display:inline-flex;align-items:center;gap:6px;
  background:linear-gradient(135deg,#FF3D00,#F5620F);
  color:#fff;border-radius:8px;padding:4px 12px;
  font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
}
.promo-countdown{
  display:flex;align-items:center;gap:10px;
  background:rgba(245,98,15,.08);border:1.5px solid rgba(245,98,15,.18);
  border-radius:12px;padding:10px 18px;margin-top:12px;
}
.promo-countdown .pc-label{font-size:12px;color:var(--gr);font-weight:600}
.promo-countdown .pc-timer{font-family:var(--fd);font-size:18px;font-weight:800;color:var(--o)}

/* ─── GLASSMORPHISM CARD ─── */
.glass-card{
  background:rgba(255,255,255,.7);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1.5px solid rgba(255,255,255,.9);border-radius:var(--rl);
  box-shadow:0 8px 32px rgba(10,61,143,.1);
}
.glass-dark{
  background:rgba(7,45,107,.4);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1.5px solid rgba(255,255,255,.15);border-radius:var(--rl);
}

/* ─── STAT COUNTER ─── */
.stat-item{text-align:center}
.stat-num{font-family:var(--fd);font-size:clamp(32px,4vw,52px);font-weight:800;color:var(--o);line-height:1;margin-bottom:4px}
.stat-label{font-size:13.5px;color:var(--gr)}

/* ─── MOBILE OVERFLOW SAFETY NET ─── */
/* Hides decorative blobs whose CSS transforms can escape overflow:hidden on iOS Safari */
@media(max-width:1024px){
  .footer-blob{display:none!important}
  .page-hero::before,.page-hero::after{display:none!important}
  .hero::before{right:0!important;left:auto!important;width:50%!important}
  /* Inline-flex badges: constrain to parent width so they can't cause page overflow */
  .hero-promo,.sec-tag,.badge-partner,.promo-chip,.urgency-bar{max-width:100%;overflow:hidden}
  /* All sections must be full-width and overflow-clipped */
  section,.section,.page-hero,.hero{width:100%;max-width:100%;overflow-x:hidden;box-sizing:border-box}
}

/* ─── RESPONSIVE ─── */
@media(max-width:1200px){
  .footer-top{grid-template-columns:2fr 1fr 1fr;gap:36px}
  .footer-top .footer-col:nth-child(4),.footer-top .footer-col:nth-child(5){display:none}
}
@media(max-width:768px){
  .nav-links{display:none}
  .nav-hbg{display:flex}
  .footer-top{grid-template-columns:1fr 1fr;gap:24px}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:10px}
  .fn-form{flex-direction:column}
  #float-cta span.label{display:none}
  #float-cta{padding:14px;border-radius:50%;width:56px;height:56px;justify-content:center;font-size:20px}
  #float-cta .fc-pulse{display:none}
  #chat-panel{width:calc(100vw - 20px);right:10px;bottom:160px;max-height:460px}
  .pp-body,.pp-header{padding-left:22px;padding-right:22px}
  .pp-box{border-radius:20px}
  .funnel-box{border-radius:20px}
  .funnel-step,.funnel-confirm{padding:22px 22px}
  .funnel-choices{grid-template-columns:1fr 1fr}
  .offer-card .oc-data{font-size:36px}
  .footer-inner{padding:40px 5% 0}
  .footer-brand-desc{max-width:100%}
  .footer-newsletter{margin-bottom:24px}
  .stats-grid{grid-template-columns:1fr 1fr}
  .testimonials-grid{grid-template-columns:1fr}
}
@media(max-width:480px){
  .footer-top{grid-template-columns:1fr}
  .footer-bottom-links{flex-direction:column;gap:6px}
  .ckb-btns{flex-direction:column}
  #chat-trigger{right:14px;bottom:80px}
  #chat-panel{width:calc(100vw - 16px);right:8px;bottom:148px}
  #float-cta{right:14px;bottom:14px}
  .pp-countdown{gap:8px}
  .pp-cnt-num{font-size:22px;min-width:42px;padding:5px 10px}
  .pp-cnt-sep{font-size:20px}
  .pp-title{font-size:26px}
  .pp-body,.pp-header{padding-left:18px;padding-right:18px}
  .promo-countdown{flex-wrap:wrap;gap:6px;justify-content:center}
  .sec-h2{font-size:clamp(22px,7vw,44px)}
  .sec-p{font-size:14px}
  .fn-form{flex-direction:column}
  .footer-newsletter{padding:18px}
  #ckb{width:calc(100% - 20px);bottom:16px;border-radius:18px}
  .funnel-choices{grid-template-columns:1fr 1fr}
  .funnel-step,.funnel-confirm{padding:20px 18px}
}
