:root{--bg:#fff;--text:#18151f;--muted:#67616f;--navy:#171031;--navy2:#25174d;--purple:#6333a4;--purple2:#875cc1;--green:#20c86b;--green2:#12a858;--soft:#f7f5fb;--line:#e9e4f1;--radius:24px;--shadow:0 18px 56px rgba(31,18,58,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--bg);color:var(--text);font-family:"Cairo",system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.85;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;height:auto}a{text-decoration:none}.container{max-width:1180px}.narrow{max-width:920px}.skip-link{z-index:9999}.site-header{background:rgba(23,16,49,.96);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px)}.nav-shell{min-height:76px}.brand img{width:168px;height:auto;display:block}.navbar-dark .navbar-nav .nav-link{color:#eee9f8;font-weight:800;font-size:.91rem;padding:.7rem .8rem;border-radius:10px}.navbar-dark .navbar-nav .nav-link:hover,.navbar-dark .navbar-nav .nav-link:focus{color:#fff;background:rgba(255,255,255,.08)}.navbar-toggler:focus{box-shadow:0 0 0 .2rem rgba(255,255,255,.18)}
.section{padding:82px 0}.section-dark{background:radial-gradient(circle at 10% 10%,rgba(126,77,190,.35),transparent 36%),linear-gradient(145deg,#100a27,#22134a 58%,#160d34);color:#fff}.section-tint{background:var(--soft)}.hero{padding:72px 0 80px}.hero h1{font-size:clamp(2.15rem,4.2vw,3.85rem);line-height:1.2;font-weight:700;letter-spacing:-.035em;margin:12px 0 18px}.lead{font-size:clamp(1.03rem,2vw,1.22rem);color:#e1daed;margin:0 0 10px}.hero-sub{color:#c8bdd8;max-width:700px;margin:0 0 28px;font-size:.96rem}.eyebrow,.section-heading>span{display:inline-flex;align-items:center;gap:8px;color:#cdb8ee;font-weight:900;font-size:.83rem}.section-heading>span{color:var(--purple)}.section-heading{max-width:790px;text-align:center;margin:0 auto 38px}.section-heading.text-lg-start{margin-inline-start:0}.section-heading h2,.final-cta h2,.section-title-light{font-size:clamp(1.78rem,3.1vw,2.65rem);line-height:1.35;font-weight:900;letter-spacing:-.02em;margin:8px 0 12px}.section-heading p{color:var(--muted);margin:0;font-size:1rem}.section-heading.light p,.text-soft{color:#cec5dc}.section-heading.light>span{color:#d7c4f5}.mini-title{font-size:1.18rem;font-weight:900;margin:26px 0 8px}.short-copy{color:var(--muted);font-size:.95rem}
.btn-whatsapp{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:linear-gradient(135deg,var(--green),var(--green2));border:0;color:#fff!important;font-weight:900;padding:13px 20px;border-radius:14px;box-shadow:0 13px 34px rgba(17,178,84,.22);transition:transform .18s ease,box-shadow .18s ease}.btn-whatsapp:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(17,178,84,.31)}.btn-hero{width:min(100%,530px);min-height:72px;padding:14px 20px;border-radius:18px;text-align:start;font-size:1rem}.btn-hero>span:last-child{display:flex;flex-direction:column}.btn-hero strong{font-size:1.08rem}.btn-hero small{font-weight:700;opacity:.74;font-size:.77rem;margin-top:1px}.btn-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.55);font-size:1.25rem;flex:0 0 auto}.btn-light-wa{background:linear-gradient(135deg,var(--green),var(--green2));color:#fff!important;box-shadow:0 16px 36px rgba(0,0,0,.18)}.trust-grid span{display:flex;align-items:center;gap:7px;color:#ddd5e9;font-size:.86rem;font-weight:700}.trust-grid i{color:#43d989}.quick-nav{background:#fff}.quick-nav .col{border-inline-start:1px solid var(--line);border-bottom:1px solid var(--line)}.quick-nav a{display:flex;align-items:center;justify-content:center;gap:7px;padding:15px 6px;color:#302a39;font-size:.86rem;font-weight:900;height:100%}.quick-nav a:hover{background:var(--soft);color:var(--purple)}.quick-nav i{color:var(--purple)}
.visual-slot{min-height:440px;border:1px solid rgba(99,51,164,.22);border-radius:30px;background:radial-gradient(circle at 78% 24%,rgba(135,92,193,.23),transparent 32%),linear-gradient(145deg,#faf8fd,#ebe5f6);display:grid;place-items:center;text-align:center;box-shadow:var(--shadow);position:relative;overflow:hidden}.visual-slot:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(99,51,164,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(99,51,164,.055) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to bottom,#000,transparent)}.visual-slot>div{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:4px}.visual-slot i{font-size:1.8rem;color:#8062ad}.visual-slot span{font-size:.75rem;color:#7652aa;font-weight:900}.visual-slot strong{font-size:1.2rem;color:#2d1a51}.visual-slot small{color:#857494}.hero-slot{min-height:535px;background:radial-gradient(circle at 50% 35%,rgba(138,92,201,.38),transparent 34%),linear-gradient(145deg,#281852,#120b2c);border-color:rgba(255,255,255,.13);box-shadow:none}.hero-slot strong,.dark-slot strong,.wide-slot strong{color:#fff}.hero-slot span,.hero-slot small,.dark-slot span,.dark-slot small,.wide-slot span,.wide-slot small{color:#bfaade}.hero-slot i,.dark-slot i,.wide-slot i{color:#cfb9ef}.dark-slot{background:linear-gradient(145deg,#2a1957,#140c31);border-color:rgba(255,255,255,.12);box-shadow:none}.wide-slot{min-height:250px;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border-color:rgba(255,255,255,.1);box-shadow:none}
.benefit-card{height:100%;min-height:130px;border:1px solid var(--line);border-radius:20px;padding:20px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;background:#fff;box-shadow:0 10px 28px rgba(31,18,58,.04)}.benefit-card i{font-size:1.7rem;color:var(--purple)}.benefit-card strong{font-size:.9rem}.step-card{height:100%;display:flex;gap:14px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 9px 30px rgba(31,18,58,.04)}.step-card>span{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:#eee7fa;color:var(--purple);font-weight:900}.step-card h3{font-size:1rem;font-weight:900;margin:1px 0 4px}.step-card p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.72}.dark-steps .step-card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.11);box-shadow:none}.dark-steps .step-card>span{background:rgba(255,255,255,.1);color:#d8c4f7}.dark-steps .step-card h3{color:#fff}.dark-steps .step-card p{color:#c9bfd6}
.price-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 12px 38px rgba(31,18,58,.05)}.price-card.featured{border:2px solid var(--purple);box-shadow:0 20px 52px rgba(93,50,157,.15);transform:translateY(-7px)}.price-card .card-body{padding:24px}.package-tag{display:inline-flex;background:#efe8fa;color:var(--purple);font-size:.72rem;font-weight:900;padding:5px 10px;border-radius:999px}.price-card h3{font-size:1.14rem;font-weight:900;margin:12px 0 7px}.price{display:flex;align-items:flex-end;gap:6px;margin:10px 0 15px}.price strong{font-size:2.05rem;line-height:1;color:var(--navy)}.price span{font-size:.78rem;color:var(--muted)}.price-card p{color:var(--muted);font-size:.86rem;line-height:1.72}.price-card ul{list-style:none;padding:0;margin:15px 0 0;display:grid;gap:8px;color:#5f5868;font-size:.85rem}.price-card li{display:flex;gap:6px}.price-card li i{color:#20af63}.price-card .card-footer{background:#fff;border-top:1px solid var(--line);padding:14px 20px}.price-card .card-footer a{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--purple);font-size:.84rem;font-weight:900}.price-note{border:1px solid #dfd3ef;background:#f7f2fd;color:#503f67;border-radius:14px;font-size:.88rem}.price-note i{color:var(--purple);margin-inline-end:6px}
.custom-list{border-radius:18px;overflow:hidden}.custom-list .list-group-item{display:flex;gap:13px;align-items:flex-start;padding:14px;border-color:var(--line)}.custom-list .list-group-item>i{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#efe9f9;color:var(--purple);flex:0 0 auto}.custom-list strong,.custom-list span{display:block}.custom-list strong{font-size:.9rem;margin-bottom:2px}.custom-list span{font-size:.83rem;color:var(--muted)}.league-grid article{height:100%;padding:21px;border-radius:20px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.105)}.league-grid article>i{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:rgba(255,255,255,.11);color:#d8c4f6}.league-grid h3{font-size:1rem;font-weight:900;margin:12px 0 6px}.league-grid p{margin:0;color:#c9bfd5;font-size:.84rem;line-height:1.72}.compare-grid article{height:100%;padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff}.compare-grid article>i{font-size:1.55rem;color:var(--purple)}.compare-grid h3{font-size:1.05rem;font-weight:900;margin:9px 0}.compare-grid ul{margin:0;padding-inline-start:18px;color:var(--muted);font-size:.9rem}.icon-list{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:9px}.icon-list li{display:flex;align-items:center;gap:8px;color:#514a5a;font-size:.91rem}.icon-list i{color:#23b968}.digital-grid>div>div{height:100%;min-height:102px;border:1px solid var(--line);border-radius:18px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center}.digital-grid i{font-size:1.4rem;color:var(--purple)}.digital-grid span{font-size:.82rem;font-weight:900}.answer-box{padding:20px 22px;border-radius:18px;border:1px solid var(--line);background:#fff}.answer-box h3{font-size:1.02rem;font-weight:900;margin:0 0 6px}.answer-box p{margin:0;color:var(--muted);font-size:.9rem}.checklist-cards span,.offer-checks span,.commercial-grid span,.contact-reasons span,.entertainment-tags span{display:flex;align-items:center;justify-content:center;gap:8px;min-height:54px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:.86rem;font-weight:800}.checklist-cards i,.offer-checks i,.entertainment-tags i{color:var(--purple)}.feature-grid article{height:100%;border:1px solid var(--line);border-radius:23px;padding:24px;background:#fff}.feature-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:#efe8fa;color:var(--purple);font-size:1.2rem}.feature-grid h2{font-size:1.16rem;font-weight:900;margin:12px 0 7px}.feature-grid p,.feature-grid li{color:var(--muted);font-size:.87rem}.feature-grid ul{margin-bottom:0}.commercial-grid span{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.07);color:#fff}.commercial-grid i{color:#d7c2f6}.contact-reasons span{background:#f8f6fb;color:#4d4458}
.faq-accordion{display:grid;gap:10px}.faq-accordion .accordion-item{border:1px solid var(--line)!important;border-radius:15px!important;overflow:hidden}.faq-accordion .accordion-button{font-family:"Cairo",sans-serif;font-size:.92rem;font-weight:900;padding:16px 18px;box-shadow:none!important}.faq-accordion .accordion-button:not(.collapsed){color:var(--purple);background:#f6f2fb}.faq-accordion .accordion-button:after{margin-right:auto;margin-left:0}.faq-accordion .accordion-body{color:var(--muted);font-size:.88rem;line-height:1.8;padding:15px 18px}.final-cta{padding:82px 0}.final-cta p{max-width:720px;margin:0 auto 27px;color:#cec5dc}.site-footer{padding:30px 0;background:#0c081c;color:#bfb6cb}.site-footer p{margin:0;font-size:.8rem;line-height:1.7}.site-footer a{color:#e0d6ee;font-size:.84rem;font-weight:800}.floating-wa{position:fixed;left:18px;bottom:18px;z-index:80;display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--green),var(--green2));color:#fff!important;padding:12px 16px;border-radius:999px;font-weight:900;font-size:.86rem;box-shadow:0 14px 38px rgba(15,120,62,.32)}.floating-wa i{font-size:1.15rem}
@media(max-width:991.98px){.site-header{backdrop-filter:none}.navbar-collapse{padding:8px 0 14px}.navbar-dark .navbar-nav .nav-link{padding:.7rem .8rem}.hero{text-align:center}.hero-sub{margin-inline:auto}.section-heading.text-lg-start{text-align:center!important;margin-inline:auto}.visual-slot,.hero-slot{min-height:390px}.price-card.featured{transform:none}.floating-wa{left:12px;right:12px;bottom:12px;justify-content:center;border-radius:15px}.site-footer{padding-bottom:86px}}
@media(max-width:767.98px){.nav-shell{min-height:66px}.brand img{width:140px}.section{padding:58px 0}.hero{padding:48px 0 58px}.hero h1{font-size:2.05rem;font-weight:700}.lead{font-size:1rem}.btn-hero{min-height:68px}.visual-slot,.hero-slot{min-height:315px;border-radius:23px}.wide-slot{min-height:205px}.section-heading{margin-bottom:30px}.section-heading h2,.final-cta h2,.section-title-light{font-size:1.72rem}.quick-nav a{font-size:.78rem;padding:13px 4px}.benefit-card{min-height:112px}.price-card .card-body{padding:21px}.league-grid article{padding:18px}.final-cta{padding:60px 0}}
@media(max-width:420px){.container{--bs-gutter-x:1.35rem}.hero h1{font-size:1.82rem;font-weight:700}.lead,.hero-sub{line-height:1.78}.btn-hero{padding:13px 15px}.btn-hero strong{font-size:.98rem}.btn-icon{width:38px;height:38px}.trust-grid span{font-size:.8rem}.visual-slot,.hero-slot{min-height:270px}.floating-wa span{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn-whatsapp{transition:none}}

/* user-requested button text override */
.btn-whatsapp,.btn-whatsapp:hover,.btn-whatsapp:focus,.btn-whatsapp:active,.btn-whatsapp strong,.btn-whatsapp small,.btn-whatsapp i,.floating-wa,.floating-wa:hover,.floating-wa:focus,.floating-wa i{color:#fff!important}.btn-whatsapp .btn-icon{color:#fff!important;background:rgba(255,255,255,.16)}

/* =========================================================
   Responsive hardening — prevent horizontal page overflow
   Tested design targets: 320 / 360 / 375 / 390 / 412 / 430 /
   576 / 768 / 992 / 1200 / 1440px
   ========================================================= */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  overscroll-behavior-x:none;
}
@supports (overflow:clip){
  html,body{overflow-x:clip}
}
body{position:relative}

header,
main,
footer,
section,
nav{
  max-width:100%;
}

/* Bootstrap rows/flex children can overflow when a child has a large
   intrinsic width. min-width:0 lets them shrink inside the viewport. */
.row > *,
.navbar > *,
.navbar-collapse,
.navbar-nav,
.hero .col-lg-6,
.price-card,
.step-card,
.compare-grid article,
.feature-grid article,
.league-grid article{
  min-width:0;
}

.container,
.container-fluid{
  width:100%;
  margin-inline:auto;
}

img,
svg,
video,
iframe,
canvas{
  max-width:100%;
}

/* Keep long CTA/English phrases inside their own box. */
.btn,
.btn-whatsapp,
.btn-hero,
.quick-nav a,
.nav-link,
.eyebrow,
.section-heading,
.answer-box,
.accordion-button,
p,
li,
h1,h2,h3,h4,
strong,
small{
  overflow-wrap:anywhere;
  word-break:normal;
}

.btn-whatsapp,
.btn-hero{
  max-width:100%;
  white-space:normal;
}
.btn-hero > span:last-child{
  min-width:0;
  max-width:100%;
}
.eyebrow{
  max-width:100%;
  flex-wrap:wrap;
}
.visual-slot,
.hero-slot,
.wide-slot{
  width:100%;
  max-width:100%;
}

/* Header must never create a wider intrinsic width on small screens. */
.nav-shell{
  width:100%;
  flex-wrap:wrap;
}
.navbar-brand{
  margin-left:0;
  margin-right:0;
  max-width:calc(100% - 64px);
}
.brand img{
  max-width:100%;
}
.navbar-toggler{
  flex:0 0 auto;
}
.navbar-collapse{
  flex-basis:100%;
  width:100%;
}

/* Avoid a fixed WhatsApp element increasing the visual viewport width. */
.floating-wa{
  max-width:calc(100vw - 24px);
}

@media (max-width:575.98px){
  html{scroll-padding-top:72px}
  .container,
  .container-sm{
    max-width:100%;
    padding-right:16px;
    padding-left:16px;
  }
  .nav-shell{
    padding-right:16px;
    padding-left:16px;
  }
  .hero{
    padding-top:38px;
    padding-bottom:50px;
  }
  .hero .row{
    --bs-gutter-x:0;
    row-gap:1.35rem;
    margin-right:0;
    margin-left:0;
  }
  .hero .row > *{
    padding-right:0;
    padding-left:0;
  }
  .hero h1{
    font-size:clamp(1.58rem,7.2vw,1.9rem);
    line-height:1.42;
    letter-spacing:-.02em;
    margin-top:10px;
    margin-bottom:14px;
  }
  .lead{
    font-size:.96rem;
    line-height:1.9;
  }
  .hero-sub{
    font-size:.9rem;
    line-height:1.9;
    margin-bottom:22px;
  }
  .eyebrow{
    justify-content:center;
    font-size:.76rem;
    line-height:1.65;
  }
  .btn-hero{
    width:100%;
    min-height:64px;
    padding:11px 13px;
    border-radius:16px;
    gap:8px;
  }
  .btn-hero strong{
    font-size:.94rem;
    line-height:1.55;
  }
  .btn-hero small{
    font-size:.7rem;
    line-height:1.55;
  }
  .btn-icon{
    width:36px;
    height:36px;
    font-size:1.05rem;
  }
  .trust-grid{
    --bs-gutter-x:.55rem;
  }
  .trust-grid span{
    justify-content:center;
    text-align:center;
    font-size:.77rem;
    line-height:1.65;
  }
  .hero-slot,
  .visual-slot{
    min-height:245px;
    border-radius:20px;
  }
  .wide-slot{min-height:190px}
  .section{
    padding:50px 0;
  }
  .section-heading{
    width:100%;
    margin-bottom:26px;
  }
  .section-heading h2,
  .final-cta h2,
  .section-title-light{
    font-size:1.48rem;
    line-height:1.5;
  }
  .section-heading p{
    font-size:.9rem;
    line-height:1.85;
  }
  .quick-nav .row{
    margin-inline:0;
  }
  .quick-nav a{
    min-height:52px;
    padding:10px 5px;
    font-size:.73rem;
    line-height:1.5;
    text-align:center;
    flex-wrap:wrap;
  }
  .benefit-card{
    padding:15px 8px;
    min-height:105px;
  }
  .benefit-card strong{
    font-size:.8rem;
  }
  .step-card{
    padding:15px;
  }
  .price-card .card-body{
    padding:18px;
  }
  .price strong{
    font-size:1.75rem;
  }
  .league-grid article,
  .compare-grid article,
  .feature-grid article{
    padding:17px;
  }
  .answer-box{
    padding:17px;
  }
  .faq-accordion .accordion-button{
    padding:14px 15px;
    font-size:.86rem;
    line-height:1.75;
  }
  .floating-wa{
    left:10px;
    right:10px;
    bottom:10px;
    width:auto;
    max-width:none;
    min-height:50px;
    padding:10px 12px;
    text-align:center;
  }
}

@media (max-width:359.98px){
  .container,
  .container-sm,
  .nav-shell{
    padding-right:12px;
    padding-left:12px;
  }
  .brand img{width:124px}
  .hero h1{font-size:1.48rem}
  .lead{font-size:.9rem}
  .hero-sub{font-size:.84rem}
  .eyebrow{font-size:.7rem}
  .btn-hero strong{font-size:.88rem}
  .btn-hero small{font-size:.66rem}
  .section-heading h2,
  .final-cta h2,
  .section-title-light{font-size:1.34rem}
  .quick-nav a{font-size:.68rem}
}
.visual-slot.visual-image{min-height:0;padding:0;display:block;aspect-ratio:16/9;background:#120b2c;overflow:hidden}.visual-slot.visual-image::after{display:none}.visual-slot.visual-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit}.hero-slot.visual-image{height:clamp(330px,34vw,500px);aspect-ratio:auto}.wide-slot.visual-image{aspect-ratio:16/7}.commercial-image{max-width:900px;margin-inline:auto}@media(max-width:767.98px){.hero-slot.visual-image{height:auto;aspect-ratio:16/9}.wide-slot.visual-image{aspect-ratio:16/9}}
.floating-wa,.floating-wa:hover,.floating-wa:focus,.floating-wa:active{position:fixed;left:18px;right:auto;bottom:18px;z-index:80;width:58px;height:58px;min-width:58px;min-height:58px;max-width:58px;padding:0;margin:0;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#25d366,#11b954);color:#fff!important;border:2px solid rgba(255,255,255,.22);box-shadow:0 10px 28px rgba(11,104,51,.34),0 0 0 6px rgba(37,211,102,.08);text-decoration:none;transform:none;overflow:hidden}.floating-wa i{font-size:1.72rem;line-height:1;color:#fff!important}.floating-wa:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 14px 34px rgba(11,104,51,.42),0 0 0 7px rgba(37,211,102,.10)}.floating-wa:focus-visible{outline:3px solid rgba(37,211,102,.35);outline-offset:4px}@media(max-width:991.98px){.floating-wa,.floating-wa:hover,.floating-wa:focus,.floating-wa:active{left:14px;right:auto;bottom:14px;width:56px;height:56px;min-width:56px;min-height:56px;max-width:56px;border-radius:50%;padding:0}.floating-wa i{font-size:1.62rem}.site-footer{padding-bottom:30px}}@media(max-width:420px){.floating-wa,.floating-wa:hover,.floating-wa:focus,.floating-wa:active{left:12px;right:auto;bottom:12px;width:54px;height:54px;min-width:54px;min-height:54px;max-width:54px}.floating-wa i{font-size:1.55rem}}
