*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}html{scroll-behavior:smooth;font-family:'Sora',sans-serif;-webkit-text-size-adjust:100%;text-size-adjust:100%;}body{background:#060000 !important;color:#fff;overflow-x:hidden;overscroll-behavior-y:contain;}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation;}@media (hover:none){.btn-primary:active{transform:scale(0.97);filter:brightness(0.95);}.btn-secondary:active{transform:scale(0.97);background:rgba(0,154,68,0.08);}.card-hover:active{transform:translateY(-3px);border-color:rgba(0,154,68,0.3) !important;box-shadow:0 10px 30px rgba(0,0,0,0.6),0 0 20px rgba(0,154,68,0.1);}.ent-tab:active{filter:brightness(0.9);}.faq-item button:active{background:rgba(255,255,255,0.02);}}::-webkit-scrollbar{width:4px;}::-webkit-scrollbar-track{background:#0A0000;}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#009A44,#C8102E);border-radius:2px;}

/* ============================================================ GLASS / UTILITIES ============================================================ */
.glass{background:rgba(255,255,255,0.04);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.08);}.glass-dark{background:rgba(3,0,0,0.65);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(139,0,0,0.2);}.glass-dark:hover{border-color:rgba(0,154,68,0.28);}

/* Glow effects — dual green/red */
.glow-green{box-shadow:0 0 20px rgba(0,154,68,0.35),0 0 60px rgba(0,154,68,0.12);}.glow-green-strong{box-shadow:0 0 30px rgba(0,154,68,0.55),0 0 80px rgba(0,154,68,0.22);}.glow-red{box-shadow:0 0 20px rgba(200,16,46,0.35),0 0 60px rgba(200,16,46,0.12);}.glow-red-strong{box-shadow:0 0 30px rgba(139,0,0,0.5),0 0 80px rgba(200,16,46,0.18);}.glow-gold{box-shadow:0 0 20px rgba(255,215,0,0.3),0 0 60px rgba(255,215,0,0.1);}.text-glow-green{text-shadow:0 0 30px rgba(0,154,68,0.5);}.text-glow-red{text-shadow:0 0 30px rgba(200,16,46,0.5);}

/* Gradient text */
.gradient-text{background:linear-gradient(135deg,#FFD700 0%,#009A44 50%,#006633 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.gradient-text-red{background:linear-gradient(135deg,#FFD700 0%,#C8102E 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.gradient-text-green{background:linear-gradient(135deg,#009A44 0%,#006633 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}

/* Shimmer animated headline — gold/green/red loop */
@keyframes shimmer{0%{background-position:-200% center;}100%{background-position:200% center;}}.shimmer-text{background:linear-gradient(90deg,#FFD700 0%,#009A44 22%,#FFD700 44%,#C8102E 66%,#FFD700 88%,#009A44 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 5s linear infinite;}

/* ============================================================ BUTTONS ============================================================ */
.btn-primary{background:linear-gradient(135deg,#009A44,#006633);color:#fff;font-weight:700;border-radius:50px;transition:all 0.3s ease;box-shadow:0 4px 20px rgba(0,154,68,0.45);}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 35px rgba(0,154,68,0.65);filter:brightness(1.08);}.btn-secondary{background:transparent;color:#009A44;border:1.5px solid #009A44;font-weight:600;border-radius:50px;transition:all 0.3s ease;}.btn-secondary:hover{background:rgba(0,154,68,0.12);box-shadow:0 0 22px rgba(0,154,68,0.35);transform:translateY(-2px);}

/* Red CTA variant */
.btn-red{background:linear-gradient(135deg,#C8102E,#8B0000);color:#fff;font-weight:700;border-radius:50px;transition:all 0.3s ease;box-shadow:0 4px 20px rgba(139,0,0,0.45);}.btn-red:hover{transform:translateY(-2px);box-shadow:0 8px 35px rgba(139,0,0,0.65);}

/* Magnetic button base */
.btn-magnetic{will-change:transform;}

/* ============================================================ NAVBAR ============================================================ */
#navbar{position:fixed;top:0;left:0;right:0;z-index:1000;transition:all 0.3s ease;}#navbar.scrolled{background:rgba(3,0,0,0.95);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:none;box-shadow:0 2px 30px rgba(0,0,0,0.8);}#navbar.scrolled::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent 0%,#046A38 28%,rgba(4,106,56,0.5) 46%,rgba(218,41,28,0.5) 54%,#DA291C 72%,transparent 100%);opacity:0.7;}
.nav-link{position:relative;transition:color 0.25s ease,text-shadow 0.25s ease;}.nav-link:hover{color:#fff !important;text-shadow:0 0 20px rgba(4,106,56,0.6);}.nav-link.active{color:#fff;}.nav-link.active::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:2px;background:linear-gradient(to right,#046A38,#DA291C);border-radius:1px;}
#navbar .btn-primary{background:linear-gradient(135deg,#046A38,#035530);box-shadow:0 4px 20px rgba(4,106,56,0.45),inset -3px 0 10px rgba(218,41,28,0.07);}#navbar .btn-primary:hover{box-shadow:0 8px 32px rgba(4,106,56,0.65),0 0 16px rgba(218,41,28,0.15);filter:brightness(1.06);}
#mobile-menu{max-height:0;overflow:hidden;transition:max-height 0.4s cubic-bezier(0.4,0,0.2,1);}#mobile-menu.open{max-height:560px;}

/* ============================================================ HERO — DUAL RADIAL ATMOSPHERE ============================================================ */
.hero-bg{background:radial-gradient(ellipse at 50% 5%,rgba(139,0,0,0.72) 0%,transparent 58%),radial-gradient(ellipse at 88% 42%,rgba(107,0,0,0.38) 0%,transparent 50%),radial-gradient(ellipse at 12% 55%,rgba(100,0,0,0.28) 0%,transparent 45%),radial-gradient(ellipse at 50% 100%,rgba(80,0,0,0.32) 0%,transparent 45%),#060000;}.hero-grid{background-image:linear-gradient(rgba(0,154,68,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(0,154,68,0.04) 1px,transparent 1px);background-size:50px 50px;}
.hero-orb-green{background:radial-gradient(circle at center,rgba(0,154,68,0.07) 0%,transparent 70%);filter:blur(40px);pointer-events:none;}.hero-orb-red{background:radial-gradient(circle at center,rgba(139,0,0,0.28) 0%,transparent 70%);filter:blur(40px);pointer-events:none;}

/* ============================================================ SECTION ATMOSPHERE SYSTEM ============================================================ */

/* Standard dark sections — cinematic crimson that works at any section height */
.section-dark{background:radial-gradient(ellipse at 50% 22%,rgba(139,0,0,0.55) 0%,transparent 65%),radial-gradient(ellipse at 82% 72%,rgba(100,0,0,0.22) 0%,transparent 50%),linear-gradient(180deg,rgba(50,0,0,0.42) 0%,rgba(10,0,0,0) 28%,rgba(10,0,0,0) 72%,rgba(50,0,0,0.38) 100%),#040000 !important;}
.section-dark-alt{background:radial-gradient(ellipse at 50% 78%,rgba(139,0,0,0.52) 0%,transparent 65%),radial-gradient(ellipse at 18% 28%,rgba(100,0,0,0.2) 0%,transparent 50%),linear-gradient(180deg,rgba(50,0,0,0.38) 0%,rgba(10,0,0,0) 28%,rgba(10,0,0,0) 72%,rgba(50,0,0,0.42) 100%),#060000 !important;}

/* Cinematic crimson — for pricing / hero overlays */
.section-crimson{background:radial-gradient(ellipse at 50% 20%,rgba(139,0,0,0.62) 0%,transparent 65%),radial-gradient(ellipse at 20% 80%,rgba(200,16,46,0.22) 0%,transparent 50%),radial-gradient(ellipse at 85% 50%,rgba(107,0,0,0.28) 0%,transparent 50%),linear-gradient(180deg,rgba(60,0,0,0.45) 0%,rgba(10,0,0,0) 30%,rgba(10,0,0,0) 70%,rgba(40,0,0,0.35) 100%),#060000 !important;}

/* Cards inside crimson sections */
.section-crimson .glass-dark{background:rgba(0,0,0,0.65) !important;border-color:rgba(200,16,46,0.18) !important;}
.section-crimson .glass-dark:hover{border-color:rgba(0,154,68,0.3) !important;}
.section-crimson .pricing-featured{border-color:#009A44 !important;box-shadow:0 0 40px rgba(0,154,68,0.3),0 20px 60px rgba(0,0,0,0.6) !important;}
.section-crimson .card-hover:hover{border-color:rgba(0,154,68,0.35) !important;box-shadow:0 20px 60px rgba(0,0,0,0.7),0 0 30px rgba(0,154,68,0.15) !important;}
.section-crimson .toggle-btn.active{background:linear-gradient(135deg,#009A44,#006633);color:#fff;}

/* Cards inside section-dark/section-dark-alt */
.section-dark .glass-dark,.section-dark-alt .glass-dark{border-color:rgba(139,0,0,0.18) !important;}
.section-dark .glass-dark:hover,.section-dark-alt .glass-dark:hover{border-color:rgba(0,154,68,0.28) !important;}

/* ============================================================ PRICING ============================================================ */
.pricing-featured{border:2px solid #009A44 !important;transform:scale(1.02);box-shadow:0 0 35px rgba(0,154,68,0.25),0 20px 60px rgba(0,0,0,0.5) !important;}.pricing-featured:hover{transform:scale(1.04) translateY(-4px) !important;}

/* ============================================================ CARD HOVER ============================================================ */
.card-hover{transition:all 0.3s ease;}.card-hover:hover{transform:translateY(-6px);border-color:rgba(0,154,68,0.35) !important;box-shadow:0 20px 60px rgba(0,0,0,0.6),0 0 30px rgba(0,154,68,0.12);}

/* ============================================================ 3D TILT ============================================================ */
.tilt-card{transition:transform 0.15s ease,box-shadow 0.15s ease;transform-style:preserve-3d;}.card-shine{position:absolute;inset:0;border-radius:inherit;pointer-events:none;transition:background 0.1s ease;}

/* ============================================================ REVEAL ============================================================ */
.reveal{opacity:0;transform:translateY(30px);transition:opacity 0.7s ease,transform 0.7s ease;}.reveal.visible{opacity:1;transform:translateY(0);}

/* ============================================================ FAQ ============================================================ */
.faq-content{max-height:0;overflow:hidden;transition:max-height 0.5s ease,padding 0.3s ease;}.faq-content.open{max-height:400px;}.faq-icon{transition:transform 0.3s ease;}.faq-item.open .faq-icon{transform:rotate(180deg);}

/* ============================================================ TYPING CURSOR ============================================================ */
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}.typing-cursor{animation:blink 0.8s step-end infinite;display:inline-block;color:#009A44;font-weight:300;}

/* ============================================================ SCROLL INDICATOR ============================================================ */
@keyframes scroll-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}.scroll-indicator{animation:scroll-bounce 1.5s ease-in-out infinite;}

/* ============================================================ WHATSAPP PULSE ============================================================ */
@keyframes pulse-wa{0%,100%{box-shadow:0 0 0 0 rgba(37,211,102,0.5);}50%{box-shadow:0 0 0 12px rgba(37,211,102,0);}}.wa-pulse{animation:pulse-wa 2s infinite;}

/* Green CTA pulse */
@keyframes pulse-green{0%,100%{box-shadow:0 4px 20px rgba(0,154,68,0.45),0 0 0 0 rgba(0,154,68,0.4);}50%{box-shadow:0 4px 20px rgba(0,154,68,0.45),0 0 0 10px rgba(0,154,68,0);}}.btn-glow-pulse{animation:pulse-green 2.5s infinite;}

/* Red pulse */
@keyframes pulse-red{0%,100%{box-shadow:0 0 0 0 rgba(200,16,46,0.4);}50%{box-shadow:0 0 0 10px rgba(200,16,46,0);}}

/* ============================================================ TOAST ============================================================ */
.toast{position:fixed;bottom:90px;left:16px;z-index:999;transform:translateX(-150%);transition:transform 0.5s cubic-bezier(0.4,0,0.2,1);}.toast.show{transform:translateX(0);}

/* ============================================================ TESTIMONIAL ============================================================ */
.testimonial-track{display:flex;transition:transform 0.5s cubic-bezier(0.4,0,0.2,1);}

/* ============================================================ ENTERTAINMENT CARDS ============================================================ */
.ent-card{position:relative;overflow:hidden;border-radius:12px;cursor:pointer;}.ent-card::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.85) 0%,transparent 60%);transition:opacity 0.3s;}.ent-card:hover::after{opacity:0.5;}.ent-card:hover .ent-img{transform:scale(1.08);}.ent-img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease;display:block;}

/* Ent tab active */
.ent-tab.btn-primary{background:linear-gradient(135deg,#009A44,#006633) !important;color:#fff !important;}

/* Toggle active */
.toggle-btn{transition:all 0.3s ease;}.toggle-btn.active{background:linear-gradient(135deg,#009A44,#006633);color:#fff;}

/* Lang dropdown */
#lang-menu{display:none;min-width:9rem;}#lang-menu.open{display:block;}

/* ============================================================ FLAG ICON NORMALIZATION ============================================================ */
/* Forces all flag icons in the language selector to a uniform 20×15 px size regardless of the flag-icons library's per-country aspect-ratio overrides */
#lang-flag,
#lang-menu .fi,
#mobile-menu .fi {
  width:16px !important;
  height:12px !important;
  display:inline-block !important;
  flex-shrink:0;
  border-radius:2px;
  vertical-align:middle;
  background-size:cover !important;
  background-position:50% 50% !important;
}

/* Stars */
.stars{color:#FFD700;letter-spacing:2px;}

/* WhatsApp green */
.wa-green{background:linear-gradient(135deg,#25D366,#128C7E);}

/* ============================================================ SECTION DIVIDER — Portugal flag gradient ============================================================ */
.section-divider{height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,154,68,0.4) 35%,rgba(200,16,46,0.3) 65%,transparent 100%);}

/* Savings badge */
.savings-badge{background:linear-gradient(135deg,#C8102E,#8B0000);}

/* ============================================================ SECTION BAND — deep red header like reference ============================================================ */
.section-band{background:linear-gradient(135deg,#6B0000,#8B0000);padding:16px 0;position:relative;overflow:hidden;}.section-band::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,rgba(200,16,46,0.3) 0%,transparent 70%);pointer-events:none;}

/* ============================================================ KEYFRAMES — FLOATING BADGES ============================================================ */
@keyframes fl-a{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.fl-a{animation:fl-a 4s ease-in-out infinite;}
@keyframes fl-b{0%,100%{transform:translateY(-5px)}50%{transform:translateY(5px)}}.fl-b{animation:fl-b 5.2s ease-in-out infinite;}
@keyframes fl-c{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1deg)}}.fl-c{animation:fl-c 3.6s ease-in-out infinite;}

/* ============================================================ CHANNEL BADGE ============================================================ */
.chan-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;background:rgba(5,0,0,0.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,0.12);border-radius:50px;font-size:.72rem;font-weight:700;color:rgba(255,255,255,0.85);white-space:nowrap;box-shadow:0 8px 28px rgba(0,0,0,0.6);}

/* ============================================================ TICKER ============================================================ */
.ticker-section{background:radial-gradient(ellipse at 50% 50%,rgba(0,154,68,0.05) 0%,transparent 70%),#0A0A0A;border-top:1px solid rgba(0,154,68,0.12);border-bottom:1px solid rgba(0,154,68,0.12);padding:14px 0;overflow:hidden;}.ticker-fade-l{background:linear-gradient(to right,#0A0A0A,transparent);}.ticker-fade-r{background:linear-gradient(to left,#0A0A0A,transparent);}.ticker-track{display:flex;gap:10px;width:max-content;}@keyframes ticker-l{from{transform:translateX(0)}to{transform:translateX(-50%)}}.ticker-left{animation:ticker-l 45s linear infinite;}@keyframes ticker-r{from{transform:translateX(-50%)}to{transform:translateX(0)}}.ticker-right{animation:ticker-r 38s linear infinite;}.ticker-pill,.ticker-item{display:inline-flex;align-items:center;gap:7px;padding:6px 15px;border-radius:50px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.09);white-space:nowrap;font-size:.72rem;font-weight:600;color:rgba(255,255,255,0.55);flex-shrink:0;}.t-live{width:6px;height:6px;border-radius:50%;background:#C8102E;flex-shrink:0;animation:pulse-wa 2s infinite;}.t-hd{width:6px;height:6px;border-radius:50%;background:#009A44;flex-shrink:0;}

/* ============================================================ PRICING CARD ATOMS ============================================================ */
.pr-dur-feat{background:rgba(0,154,68,0.18);color:#009A44;border:1px solid rgba(0,154,68,0.35);}
.pr-dur-plain{background:rgba(255,255,255,0.05);color:rgba(255,255,255,0.45);border:1px solid rgba(255,255,255,0.08);}
.pr-euro{color:rgba(255,255,255,0.5);}
.pr-price-num{color:#ffffff;}
.pr-permth{color:rgba(255,255,255,0.35);}
.pr-divider{background:rgba(255,255,255,0.07);}
.pr-divider-feat{background:rgba(0,154,68,0.2);}
.pr-feat-li{color:rgba(255,255,255,0.75);}

/* ============================================================ HERO PROOF ============================================================ */
.hero-proof{display:inline-flex;align-items:center;gap:10px;background:rgba(0,0,0,0.5);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,0.1);border-radius:50px;padding:8px 16px;}

/* ============================================================ SPOTLIGHTS ============================================================ */
.spotlight{padding:96px 16px;position:relative;overflow:hidden;}@media(max-width:768px){.spotlight{padding:60px 16px;}}.spotlight::before{content:'';position:absolute;inset:0;pointer-events:none;}.spotlight-odd::before{background:radial-gradient(ellipse at 0% 50%,rgba(139,0,0,0.18) 0%,transparent 55%);}.spotlight-even::before{background:radial-gradient(ellipse at 100% 50%,rgba(139,0,0,0.15) 0%,transparent 55%);}

/* Vis box */
.vis-box{border-radius:24px;padding:32px;background:rgba(4,0,0,0.7);border:1px solid rgba(139,0,0,0.2);position:relative;overflow:hidden;}.vis-box::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(139,0,0,0.12) 0%,transparent 65%);pointer-events:none;}

/* Uptime ring — green primary */
.uptime-ring{position:relative;width:180px;height:180px;}.uptime-ring::before{content:'';position:absolute;inset:-8px;border-radius:50%;background:conic-gradient(#009A44 0deg 356.4deg,rgba(255,255,255,0.05) 356.4deg 360deg);mask:radial-gradient(transparent 66px,black 67px);-webkit-mask:radial-gradient(transparent 66px,black 67px);animation:ring-spin 10s linear infinite;}@keyframes ring-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}

/* Spot list */
.spot-li{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;}.spot-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:rgba(0,154,68,0.12);}

/* Guarantee cards */
.guar-card{background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.06);border-radius:20px;padding:24px 20px;transition:all 0.3s;}.guar-card:hover{border-color:rgba(0,154,68,0.3);background:rgba(0,154,68,0.04);transform:translateY(-3px);box-shadow:0 12px 40px rgba(0,0,0,0.5),0 0 20px rgba(0,154,68,0.08);}

/* Device cards */
.dev-card{background:linear-gradient(145deg,rgba(255,255,255,0.045) 0%,rgba(255,255,255,0.02) 100%);border:1px solid rgba(0,154,68,0.12);border-radius:20px;padding:22px 14px 18px;text-align:center;transition:all 0.3s ease;position:relative;overflow:hidden;}.dev-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,154,68,0.4),transparent);}.dev-card:hover{border-color:rgba(0,154,68,0.35);transform:translateY(-5px);box-shadow:0 18px 44px rgba(0,0,0,0.55),0 0 25px rgba(0,154,68,0.1);}.dev-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;background:linear-gradient(145deg,rgba(225,242,233,0.09) 0%,rgba(0,154,68,0.07) 100%);border:1px solid rgba(225,242,233,0.16);box-shadow:0 0 0 1px rgba(0,154,68,0.06) inset,0 4px 14px rgba(0,0,0,0.4),inset 0 1px 0 rgba(225,242,233,0.10);color:#E1F2E9;flex-shrink:0;}.dev-icon svg{filter:drop-shadow(0 0 4px rgba(0,154,68,0.22));}.dev-card-featured{background:linear-gradient(145deg,rgba(0,154,68,0.08) 0%,rgba(200,16,46,0.05) 100%);border-color:rgba(0,154,68,0.25);}.dev-card-featured::before{background:linear-gradient(90deg,transparent,rgba(0,154,68,0.55),rgba(200,16,46,0.2),transparent);}.dev-card-featured:hover{border-color:rgba(0,154,68,0.5);box-shadow:0 18px 44px rgba(0,0,0,0.5),0 0 30px rgba(0,154,68,0.15);}

/* App window mock */
.app-window{background:linear-gradient(160deg,#0e0c1f 0%,#14112c 55%,#0e0c1f 100%);border:1px solid rgba(255,255,255,0.1);box-shadow:0 40px 100px rgba(0,0,0,0.9),inset 0 1px 0 rgba(255,255,255,0.07);}.app-cat-tile{transition:all 0.2s ease;}.app-cat-tile:hover{background:rgba(255,255,255,0.08) !important;border-color:rgba(255,255,255,0.14) !important;transform:translateY(-1px);}

/* ============================================================ SWIPE / IOS ============================================================ */
.ios-scroll{-webkit-overflow-scrolling:touch;}.ios-scroll::-webkit-scrollbar{display:none;}.swipe-hint{display:flex;align-items:center;justify-content:center;gap:6px;color:rgba(255,255,255,0.35);font-size:0.7rem;margin-top:8px;}@keyframes swipe-left{0%,100%{transform:translateX(0);opacity:0.5;}50%{transform:translateX(-6px);opacity:1;}}.swipe-hint svg{animation:swipe-left 1.6s ease-in-out infinite;}

/* ============================================================ FADE IN ============================================================ */
@keyframes fadeIn{from{opacity:0;transform:scale(0.95);}to{opacity:1;transform:scale(1);}}

/* ============================================================ COUNT UP ============================================================ */
@keyframes countUp{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}

/* ============================================================ MOBILE CTA BAR ============================================================ */
#mobile-cta-bar{transform:translateY(100%);transition:transform 0.4s cubic-bezier(0.4,0,0.2,1);padding-bottom:calc(12px+env(safe-area-inset-bottom,0px));}#mobile-cta-bar.show{transform:translateY(0);}

/* ============================================================ RESPONSIVE ============================================================ */
@media (max-width:1023px){body{padding-bottom:calc(76px+env(safe-area-inset-bottom,0px));}.toast{bottom:calc(96px+env(safe-area-inset-bottom,0px)) !important;}}

@media (max-width:768px){
  /* Pricing featured card — no scale transform on mobile (prevents overflow) */
  .pricing-featured{transform:scale(1);}
  .pricing-featured:hover{transform:scale(1.01) translateY(-4px) !important;}
  /* Section padding */
  .section-py{padding-top:3rem;padding-bottom:3rem;}
  .spotlight{padding:56px 16px;}
  /* Pricing cards — reduce internal padding on mobile so content fits */
  #pricing-grid .glass{padding:1rem !important;}
  #pricing-grid .glass .text-6xl{font-size:3.25rem !important;}
  /* Stats bar — tighter padding on mobile */
  #stats .glass-dark{padding:1.25rem !important;}
  #stats .text-4xl{font-size:2rem !important;}
  /* Device cards grid gap */
  .dev-grid{gap:0.75rem;}
}

@media (max-width:639px){
  /* Testimonials — hide arrows, full-width cards */
  .testimonial-arrow{display:none !important;}
  .testimonial-card{width:100% !important;}
  /* Hero — smaller h1 on very small screens */
  #hero-h1{font-size:2.1rem !important;line-height:1.15 !important;}
  /* Mockup — reduce bottom badges to avoid overlap with CTA bar */
  .fl-badge{font-size:0.7rem;}
  /* Hero orbs — reduce size on mobile to prevent visual noise */
  .hero-orb-green{width:14rem !important;height:14rem !important;left:-5rem !important;}
  .hero-orb-red{width:12rem !important;height:12rem !important;right:-4rem !important;}
  /* Channel tabs — ensure wrap/scroll nicely */
  .ent-tab{padding-left:0.75rem !important;padding-right:0.75rem !important;font-size:0.75rem !important;}
  /* Section headings — responsive tightening */
  .section-py h2{font-size:1.75rem !important;}
  /* Guarantee cards — horizontal layout on mobile becomes vertical */
  .guar-card{text-align:center !important;}
  /* Blog cards — reduce image height on small screens */
  .blog-card-img{height:10rem !important;}
}

@media (max-width:400px){
  /* Toggle buttons — very small screens */
  .toggle-btn{padding-left:0.7rem !important;padding-right:0.7rem !important;font-size:0.7rem !important;letter-spacing:-0.01em;}
  /* H1 — minimum readable size */
  #hero-h1{font-size:1.875rem !important;}
  /* Pricing card price number */
  #pricing-grid .glass .text-6xl{font-size:2.75rem !important;}
}

/* ============================================================ LUXURY ICON SYSTEM — Pearl Green #E1F2E9 ============================================================ */

/* Primary icon container — frosted pearl-green */
.icon-lux{background:linear-gradient(145deg,rgba(225,242,233,0.09) 0%,rgba(0,154,68,0.07) 100%);border:1px solid rgba(225,242,233,0.16);box-shadow:inset 0 0 0 1px rgba(0,154,68,0.07),0 4px 14px rgba(0,0,0,0.40),inset 0 1px 0 rgba(225,242,233,0.10);color:#E1F2E9;flex-shrink:0;transition:box-shadow 0.3s ease,border-color 0.3s ease;}
.icon-lux svg{filter:drop-shadow(0 0 4px rgba(0,154,68,0.22));}
.feature-card:hover .icon-lux,.guar-card:hover .icon-lux{border-color:rgba(225,242,233,0.26);box-shadow:inset 0 0 0 1px rgba(0,154,68,0.12),0 4px 20px rgba(0,0,0,0.45),inset 0 1px 0 rgba(225,242,233,0.14),0 0 14px rgba(0,154,68,0.12);}

/* Featured icon — richer green glow (use on "popular" highlighted cards) */
.icon-lux-feat{background:linear-gradient(145deg,rgba(0,154,68,0.22) 0%,rgba(0,102,51,0.14) 100%);border:1px solid rgba(0,154,68,0.34);box-shadow:0 0 16px rgba(0,154,68,0.18),0 4px 14px rgba(0,0,0,0.40),inset 0 1px 0 rgba(225,242,233,0.10);color:#4ade80;flex-shrink:0;transition:box-shadow 0.3s ease;}
.icon-lux-feat svg{filter:drop-shadow(0 0 5px rgba(0,154,68,0.35));}
.feature-card:hover .icon-lux-feat{box-shadow:0 0 24px rgba(0,154,68,0.28),0 4px 20px rgba(0,0,0,0.45),inset 0 1px 0 rgba(225,242,233,0.14);}

/* Gold accent icon */
.icon-lux-gold{background:linear-gradient(145deg,rgba(255,215,0,0.12) 0%,rgba(255,193,7,0.07) 100%);border:1px solid rgba(255,215,0,0.22);box-shadow:0 0 14px rgba(255,215,0,0.12),0 4px 14px rgba(0,0,0,0.40),inset 0 1px 0 rgba(255,215,0,0.08);color:#FFD700;flex-shrink:0;}
.icon-lux-gold svg{filter:drop-shadow(0 0 4px rgba(255,215,0,0.28));}

/* Red accent icon */
.icon-lux-red{background:linear-gradient(145deg,rgba(200,16,46,0.16) 0%,rgba(139,0,0,0.10) 100%);border:1px solid rgba(200,16,46,0.26);box-shadow:0 0 12px rgba(200,16,46,0.12),0 4px 14px rgba(0,0,0,0.40),inset 0 1px 0 rgba(255,160,160,0.06);color:#f87171;flex-shrink:0;}
.icon-lux-red svg{filter:drop-shadow(0 0 4px rgba(200,16,46,0.25));}

/* Step circles — premium numbered (how-it-works) */
.step-circle{background:linear-gradient(145deg,#046A38 0%,#009A44 55%,#00a84a 100%) !important;border:1px solid rgba(225,242,233,0.22) !important;box-shadow:0 0 22px rgba(0,154,68,0.32),0 8px 28px rgba(0,0,0,0.50),inset 0 1px 0 rgba(225,242,233,0.22) !important;}

/* Step star badge — premium gold */
.step-star{background:linear-gradient(135deg,#FFD700 0%,#FFA500 100%) !important;box-shadow:0 0 10px rgba(255,215,0,0.55),0 2px 6px rgba(0,0,0,0.35) !important;}

/* Luxury check bullets */
.check-lux{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:linear-gradient(135deg,rgba(225,242,233,0.10) 0%,rgba(0,154,68,0.11) 100%);border:1px solid rgba(225,242,233,0.18);box-shadow:inset 0 1px 0 rgba(225,242,233,0.08);color:#E1F2E9;}
.check-lux svg{filter:drop-shadow(0 0 2px rgba(0,154,68,0.30));}
.check-lux-red{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:linear-gradient(135deg,rgba(200,16,46,0.14) 0%,rgba(139,0,0,0.10) 100%);border:1px solid rgba(200,16,46,0.24);box-shadow:inset 0 1px 0 rgba(255,160,160,0.06);color:#f87171;}
.check-lux-gold{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:linear-gradient(135deg,rgba(255,215,0,0.12) 0%,rgba(255,193,7,0.08) 100%);border:1px solid rgba(255,215,0,0.22);box-shadow:inset 0 1px 0 rgba(255,215,0,0.08);color:#FFD700;}

/* Trust-bar inline icons — pearl tint */
.trust-icon{color:#E1F2E9 !important;filter:drop-shadow(0 0 3px rgba(0,154,68,0.20));}

/* ============================================================ LUXURY — LIGHT MODE OVERRIDES ============================================================ */
body.light-mode .icon-lux{background:linear-gradient(145deg,#FFFFFF 0%,#EFF8F3 100%);border:1px solid rgba(0,154,68,0.18);box-shadow:0 2px 10px rgba(0,0,0,0.07),0 0 0 1px rgba(0,154,68,0.05);color:#009A44;}
body.light-mode .icon-lux svg{filter:none;}
body.light-mode .feature-card:hover .icon-lux,.icon-lux.light:hover{border-color:rgba(0,154,68,0.30) !important;box-shadow:0 4px 16px rgba(0,0,0,0.09),0 0 12px rgba(0,154,68,0.10);}
body.light-mode .icon-lux-feat{background:linear-gradient(145deg,rgba(0,154,68,0.10) 0%,rgba(0,154,68,0.06) 100%);border:1px solid rgba(0,154,68,0.26);box-shadow:0 4px 16px rgba(0,154,68,0.10),inset 0 1px 0 rgba(255,255,255,0.80);color:#009A44;}
body.light-mode .icon-lux-feat svg{filter:none;}
body.light-mode .icon-lux-gold{background:linear-gradient(145deg,rgba(255,193,7,0.10) 0%,rgba(255,215,0,0.06) 100%);border:1px solid rgba(255,193,7,0.28);box-shadow:0 4px 12px rgba(255,193,7,0.12);color:#B8860B;}
body.light-mode .icon-lux-gold svg{filter:none;}
body.light-mode .icon-lux-red{background:linear-gradient(145deg,rgba(200,16,46,0.08) 0%,rgba(200,16,46,0.04) 100%);border:1px solid rgba(200,16,46,0.20);box-shadow:0 4px 12px rgba(200,16,46,0.08);color:#C8102E;}
body.light-mode .icon-lux-red svg{filter:none;}
body.light-mode .step-circle{box-shadow:0 4px 16px rgba(0,154,68,0.28),0 8px 24px rgba(0,0,0,0.10),inset 0 1px 0 rgba(255,255,255,0.30) !important;}
body.light-mode .step-star{box-shadow:0 0 8px rgba(255,193,7,0.40),0 2px 6px rgba(0,0,0,0.15) !important;}
body.light-mode .check-lux{background:linear-gradient(135deg,rgba(0,154,68,0.10) 0%,rgba(0,154,68,0.06) 100%);border:1px solid rgba(0,154,68,0.22);box-shadow:none;color:#009A44;}
body.light-mode .check-lux svg{filter:none;}
body.light-mode .check-lux-red{background:linear-gradient(135deg,rgba(200,16,46,0.08) 0%,rgba(200,16,46,0.04) 100%);border:1px solid rgba(200,16,46,0.22);color:#C8102E;}
body.light-mode .check-lux-gold{background:linear-gradient(135deg,rgba(255,193,7,0.10) 0%,rgba(255,215,0,0.06) 100%);border:1px solid rgba(255,215,0,0.22);color:#B8860B;}
body.light-mode .trust-icon{color:#009A44 !important;filter:none;}
body.light-mode .dev-icon{background:linear-gradient(145deg,#FFFFFF 0%,#EFF8F3 100%) !important;border:1px solid rgba(0,154,68,0.18) !important;box-shadow:0 2px 10px rgba(0,0,0,0.07) !important;color:#009A44 !important;}
body.light-mode .dev-icon svg{filter:none !important;}

/* ============================================================ LIGHT MODE — Portugal Premium ============================================================ */

/* Prevent background flash before body class is applied by inline script */
html.light-mode{background:#EBF5F0 !important;}

/* Theme toggle button */
#theme-toggle{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.10);transition:all 0.25s ease;}
#theme-toggle:hover{background:rgba(255,255,255,0.11);border-color:rgba(255,255,255,0.20);}
body.light-mode #theme-toggle{background:rgba(0,0,0,0.05) !important;border-color:rgba(0,0,0,0.12) !important;}
body.light-mode #theme-toggle:hover{background:rgba(0,0,0,0.09) !important;border-color:rgba(0,154,68,0.30) !important;}

/* BASE — Unified soft sage-green across all pages */
body.light-mode{background:#EBF5F0;color:#0F1A14;}

/* SCROLLBAR */
body.light-mode ::-webkit-scrollbar-track{background:#D5E9DF;}

/* NAVBAR */
body.light-mode #navbar.scrolled{background:rgba(255,255,255,0.98) !important;box-shadow:0 2px 24px rgba(0,0,0,0.08),0 1px 0 rgba(0,154,68,0.10) !important;}
body.light-mode #navbar.scrolled::after{opacity:1;}
body.light-mode .nav-link{color:#2C3E35 !important;}
body.light-mode .nav-link:hover{color:#046A38 !important;text-shadow:0 0 16px rgba(4,106,56,0.2);}
body.light-mode .nav-link.active{color:#046A38 !important;}
body.light-mode #mobile-menu{background:rgba(237,248,242,0.99) !important;border-top-color:rgba(0,154,68,0.12) !important;}
body.light-mode #lang-menu{background:rgba(237,248,242,0.99) !important;border-color:rgba(0,154,68,0.15) !important;}
body.light-mode #lang-menu button{color:#2C3E35 !important;}
body.light-mode #lang-menu button:hover{background:rgba(0,154,68,0.08) !important;}

/* HERO — same sage-green base, no white */
body.light-mode .hero-bg{background:radial-gradient(ellipse at 18% 8%,rgba(0,154,68,0.13) 0%,transparent 48%),radial-gradient(ellipse at 85% 65%,rgba(200,16,46,0.08) 0%,transparent 48%),radial-gradient(ellipse at 50% 95%,rgba(0,106,56,0.06) 0%,transparent 40%),#EBF5F0 !important;}
body.light-mode .hero-grid{background-image:linear-gradient(rgba(0,154,68,0.08) 1px,transparent 1px),linear-gradient(90deg,rgba(0,154,68,0.08) 1px,transparent 1px) !important;}
body.light-mode .hero-orb-green{background:radial-gradient(circle at center,rgba(0,154,68,0.16) 0%,transparent 70%) !important;}
body.light-mode .hero-orb-red{background:radial-gradient(circle at center,rgba(200,16,46,0.09) 0%,transparent 70%) !important;}
body.light-mode .hero-proof{background:rgba(255,255,255,0.92) !important;border-color:rgba(0,154,68,0.18) !important;box-shadow:0 4px 16px rgba(0,0,0,0.08);}
body.light-mode .chan-badge{background:rgba(255,255,255,0.92) !important;border-color:rgba(0,154,68,0.18) !important;color:#1A2E20 !important;box-shadow:0 4px 16px rgba(0,0,0,0.09);}
/* HERO MOCKUP CARD — premium shadow on sage-green background */
body.light-mode .hero-mockup-card{box-shadow:0 0 50px rgba(0,154,68,0.25),0 20px 60px rgba(0,0,0,0.14) !important;}
/* TV SCREEN — restore dark-theme text so all content stays legible on the black screen */
body.light-mode .tv-screen-inner .text-white{color:#ffffff !important;}
body.light-mode .tv-screen-inner .text-gray-300{color:rgba(255,255,255,0.84) !important;}
body.light-mode .tv-screen-inner .text-gray-400{color:rgba(255,255,255,0.62) !important;}
body.light-mode .tv-screen-inner .text-gray-500{color:rgba(255,255,255,0.44) !important;}

/* TICKER — same sage-green as surrounding sections */
body.light-mode .ticker-section{background:#EBF5F0 !important;border-top-color:rgba(0,154,68,0.14) !important;border-bottom-color:rgba(0,154,68,0.14) !important;}
body.light-mode .ticker-fade-l{background:linear-gradient(to right,#EBF5F0,transparent) !important;}
body.light-mode .ticker-fade-r{background:linear-gradient(to left,#EBF5F0,transparent) !important;}
body.light-mode .ticker-item,body.light-mode .ticker-pill{background:rgba(255,255,255,0.65) !important;border-color:rgba(0,154,68,0.18) !important;color:#3D5045 !important;}

/* SECTIONS — All in the same sage-green family, no rose/pink */
body.light-mode .section-dark{background:radial-gradient(ellipse at 50% 22%,rgba(0,154,68,0.07) 0%,transparent 60%),radial-gradient(ellipse at 82% 72%,rgba(0,154,68,0.04) 0%,transparent 50%),#EDF7F2 !important;}
body.light-mode .section-dark-alt{background:radial-gradient(ellipse at 50% 78%,rgba(0,154,68,0.07) 0%,transparent 60%),radial-gradient(ellipse at 18% 28%,rgba(0,106,56,0.04) 0%,transparent 50%),#E7F2ED !important;}
body.light-mode .section-crimson{background:radial-gradient(ellipse at 50% 20%,rgba(0,154,68,0.10) 0%,transparent 60%),radial-gradient(ellipse at 20% 80%,rgba(200,16,46,0.06) 0%,transparent 50%),radial-gradient(ellipse at 85% 50%,rgba(0,106,56,0.07) 0%,transparent 50%),#E3EEE9 !important;}

/* TEXT HIERARCHY */
body.light-mode .text-white{color:#0F1A14 !important;}
body.light-mode .text-gray-300{color:#3D5045 !important;}
body.light-mode .text-gray-400{color:#5E7366 !important;}
body.light-mode .text-gray-500{color:#7D9486 !important;}
body.light-mode .text-gray-600{color:#90A89A !important;}
/* Restore white text on colored elements */
body.light-mode .btn-primary{color:#fff !important;}
body.light-mode .btn-red{color:#fff !important;}
body.light-mode .toggle-btn.active{color:#fff !important;}
body.light-mode .ent-tab.btn-primary{color:#fff !important;}
body.light-mode .savings-badge{color:#fff !important;}
body.light-mode .shimmer-text{-webkit-text-fill-color:transparent !important;}
body.light-mode .gradient-text,body.light-mode .gradient-text-green,body.light-mode .gradient-text-red{-webkit-text-fill-color:transparent !important;}

/* GLASS CARDS — white elevation lifts cleanly from sage-green base */
body.light-mode .glass-dark{background:rgba(255,255,255,0.94) !important;border-color:rgba(0,154,68,0.14) !important;box-shadow:0 2px 16px rgba(0,0,0,0.07),0 0 0 1px rgba(0,154,68,0.05);}
body.light-mode .glass-dark:hover{border-color:rgba(0,154,68,0.30) !important;box-shadow:0 8px 32px rgba(0,0,0,0.10),0 0 20px rgba(0,154,68,0.09) !important;}
body.light-mode .glass{background:rgba(255,255,255,0.78) !important;border-color:rgba(0,154,68,0.12) !important;box-shadow:0 2px 12px rgba(0,0,0,0.05);}
/* Crimson section card overrides */
body.light-mode .section-crimson .glass-dark{background:rgba(255,255,255,0.96) !important;border-color:rgba(0,154,68,0.18) !important;box-shadow:0 4px 24px rgba(0,0,0,0.08),0 0 0 1px rgba(0,154,68,0.06);}
body.light-mode .section-crimson .glass-dark:hover{border-color:rgba(0,154,68,0.32) !important;box-shadow:0 12px 40px rgba(0,0,0,0.11),0 0 24px rgba(0,154,68,0.11) !important;}

/* SPOTLIGHTS */
body.light-mode .spotlight-odd::before{background:radial-gradient(ellipse at 0% 50%,rgba(0,154,68,0.08) 0%,transparent 55%);}
body.light-mode .spotlight-even::before{background:radial-gradient(ellipse at 100% 50%,rgba(200,16,46,0.06) 0%,transparent 55%);}
body.light-mode .vis-box{background:rgba(255,255,255,0.94) !important;border-color:rgba(0,154,68,0.16) !important;box-shadow:0 8px 40px rgba(0,0,0,0.08);}
body.light-mode .vis-box::after{background:radial-gradient(ellipse at 50% 0%,rgba(0,154,68,0.08) 0%,transparent 65%);}
body.light-mode .spot-icon{background:rgba(0,154,68,0.10);}

/* DEVICE CARDS */
body.light-mode .dev-card{background:linear-gradient(145deg,#FFFFFF 0%,#EFF8F3 100%) !important;border-color:rgba(0,154,68,0.16) !important;box-shadow:0 2px 16px rgba(0,0,0,0.07);}
body.light-mode .dev-card:hover{border-color:rgba(0,154,68,0.36) !important;box-shadow:0 12px 40px rgba(0,0,0,0.10),0 0 24px rgba(0,154,68,0.10) !important;}
body.light-mode .dev-card::before{background:linear-gradient(90deg,transparent,rgba(0,154,68,0.30),transparent);}
/* dev-icon light mode handled in luxury icon block above */

/* GUARANTEE CARDS */
body.light-mode .guar-card{background:rgba(255,255,255,0.94) !important;border-color:rgba(0,154,68,0.14) !important;box-shadow:0 2px 16px rgba(0,0,0,0.07);}
body.light-mode .guar-card:hover{background:rgba(0,154,68,0.06) !important;border-color:rgba(0,154,68,0.30) !important;box-shadow:0 12px 40px rgba(0,0,0,0.08),0 0 20px rgba(0,154,68,0.09) !important;}

/* CARD HOVER */
body.light-mode .card-hover:hover{box-shadow:0 16px 50px rgba(0,0,0,0.09),0 0 24px rgba(0,154,68,0.09);}

/* PRICING */
body.light-mode .pricing-featured{box-shadow:0 0 28px rgba(0,154,68,0.22),0 12px 40px rgba(0,0,0,0.10) !important;}
body.light-mode .toggle-btn{color:#2C3E35;}
body.light-mode .section-label{background:rgba(0,154,68,0.08) !important;border-color:rgba(0,154,68,0.20) !important;}
/* PRICING CARD ATOMS */
body.light-mode .pr-dur-plain{background:rgba(0,154,68,0.08) !important;color:#3D5045 !important;border-color:rgba(0,154,68,0.22) !important;}
body.light-mode .pr-euro{color:#5E7366 !important;}
body.light-mode .pr-price-num{color:#0F1A14 !important;}
body.light-mode .pr-permth{color:#7D9486 !important;}
body.light-mode .pr-divider{background:rgba(0,154,68,0.14) !important;}
body.light-mode .pr-feat-li{color:#2C3E35 !important;}

/* APP WINDOW */
body.light-mode .app-window{background:linear-gradient(160deg,#D6EBE2 0%,#E3EEE9 55%,#D6EBE2 100%) !important;border-color:rgba(0,154,68,0.18) !important;box-shadow:0 20px 60px rgba(0,0,0,0.09) !important;}

/* FAQ */
body.light-mode .faq-item{background:rgba(255,255,255,0.92);border-color:rgba(0,154,68,0.12);}
body.light-mode .faq-item:hover,body.light-mode .faq-item.open{border-color:rgba(0,154,68,0.28) !important;}
/* Question text — stays near-black (inherits .text-white override → #0F1A14) */
/* Answer text — darker than the global gray-400 override (#5E7366) so it reads clearly on white cards */
body.light-mode .faq-content p{color:#374B40 !important;}
/* Chevron icon — slightly darker too so it doesn't look disabled */
body.light-mode .faq-icon{color:#5A7062 !important;}

/* SECTION DIVIDER */
body.light-mode .section-divider{background:linear-gradient(90deg,transparent 0%,rgba(0,154,68,0.25) 35%,rgba(200,16,46,0.20) 65%,transparent 100%);}

/* CONTACT — WhatsApp card in light mode */
body.light-mode #contacto .glass-dark{background:rgba(255,255,255,0.97) !important;border-color:rgba(37,211,102,0.30) !important;box-shadow:0 0 40px rgba(37,211,102,0.10),0 20px 60px rgba(0,0,0,0.07) !important;}
body.light-mode #contacto .glass-dark:hover{border-color:rgba(37,211,102,0.50) !important;box-shadow:0 0 55px rgba(37,211,102,0.15),0 24px 70px rgba(0,0,0,0.09) !important;}

/* MOBILE CTA BAR */
body.light-mode #mobile-cta-bar{background:rgba(237,248,242,0.99) !important;border-top-color:rgba(0,154,68,0.15) !important;}

/* PAYMENT TRUST section */
body.light-mode #payment-trust-text{color:rgba(15,26,20,0.35) !important;}

/* FOOTER — intentionally kept dark for visual anchoring */
body.light-mode footer{background:#0F1A14 !important;}

/* ============================================================ FOOTER — Portugal flag identity ============================================================ */
footer a:not([class*="btn"]):hover{color:#046A38 !important;text-shadow:0 0 14px rgba(4,106,56,0.4);}
.footer-bottom-sep{border-top:1px solid transparent;border-image:linear-gradient(to right,transparent 0%,rgba(4,106,56,0.2) 30%,rgba(218,41,28,0.15) 70%,transparent 100%) 1;}
#mobile-cta-bar{border-top-color:rgba(4,106,56,0.2) !important;}
