:root{
  --color-primary:#0d9488;--color-primary-dark:#0f766e;--color-primary-soft:#ccfbf1;
  --color-secondary:#7c3aed;--color-accent:#f59e0b;
  --color-bg:#020617;--color-bg-soft:#0f172a;--color-surface:#111827;--color-surface-strong:#1e293b;
  --color-card:rgba(17,24,39,.92);--color-card-alt:rgba(15,23,42,.85);
  --color-border:rgba(255,255,255,.08);--color-border-strong:rgba(255,255,255,.15);
  --color-text:#e2e8f0;--color-text-soft:#94a3b8;--color-text-muted:#64748b;
  --color-success:#22c55e;--color-warning:#f59e0b;--color-danger:#ef4444;
  --color-footer-bg:rgba(2,6,23,.96);--color-footer-text:#cbd5e1;
  --gradient-hero:linear-gradient(135deg,rgba(13,148,136,.2),rgba(124,58,237,.15));
  --gradient-button:linear-gradient(135deg,var(--color-primary),var(--color-secondary));
  --gradient-card:linear-gradient(145deg,rgba(13,148,136,.08),rgba(124,58,237,.06));
  --shadow-header:0 2px 20px rgba(0,0,0,.3);--shadow-card:0 8px 32px rgba(0,0,0,.2);
  --shadow-card-hover:0 16px 48px rgba(13,148,136,.15);--shadow-button:0 6px 20px rgba(13,148,136,.25);
  --radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-xl:28px;--radius-pill:999px;
  --font-base:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,"Noto Sans Bengali",sans-serif;
  --fs-h1:clamp(28px,4vw,48px);--fs-h2:clamp(22px,3vw,36px);--fs-h3:clamp(18px,2.2vw,24px);
  --fs-body:17px;--fs-small:14px;--fs-nav:clamp(13px,.84vw,15px);
  --lh-body:1.85;--lh-heading:1.25;
  --container-max:1200px;--section-y:clamp(48px,6vw,80px);--header-h:72px;
  --motion-normal:.3s;--ease-out:cubic-bezier(.22,1,.36,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-base);background:radial-gradient(ellipse at top right,rgba(13,148,136,.12),transparent 40%),radial-gradient(ellipse at top left,rgba(124,58,237,.1),transparent 35%),var(--color-bg);color:var(--color-text);line-height:var(--lh-body);font-size:var(--fs-body);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--color-primary);text-decoration:none;transition:color var(--motion-normal) var(--ease-out)}
a:hover{color:#5eead4}
h1,h2,h3,h4,h5{font-weight:700;color:#fff;line-height:var(--lh-heading)}
h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2);margin-bottom:16px}h3{font-size:var(--fs-h3)}
p{margin-bottom:16px;color:var(--color-text-soft)}
.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 20px}
:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:4px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* HEADER */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(2,6,23,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-header)}
.header-inner{width:100%;max-width:none;padding-left:clamp(10px,1.2vw,20px);padding-right:clamp(10px,1.2vw,20px);min-height:var(--header-h);display:flex;align-items:center;gap:clamp(10px,1vw,18px)}
.brand-wrap{flex:0 0 auto;margin-right:clamp(4px,.8vw,14px)}
.site-logo{display:block;width:auto;height:clamp(32px,3vw,42px);max-width:clamp(118px,10vw,168px);object-fit:contain}
.primary-nav{flex:1 1 auto;min-width:0;display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:clamp(6px,.72vw,14px);white-space:nowrap;overflow:visible}
.primary-nav a{flex:0 1 auto;min-width:0;padding:9px clamp(6px,.65vw,12px);font-size:var(--fs-nav);line-height:1;white-space:nowrap;color:#dbeafe;font-weight:500;border-radius:var(--radius-sm);transition:all var(--motion-normal) var(--ease-out)}
.primary-nav a:hover,.primary-nav a:focus{color:#fff;background:rgba(255,255,255,.06)}
.primary-nav a.active{color:#5eead4;background:rgba(13,148,136,.12)}
.header-actions{flex:0 0 auto;margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:clamp(6px,.6vw,10px);white-space:nowrap}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:var(--radius-pill);font-weight:600;font-size:14px;cursor:pointer;transition:all var(--motion-normal) var(--ease-out);border:none;text-decoration:none;min-height:42px;line-height:1}
.btn-login{background:rgba(255,255,255,.08);color:#e2e8f0;border:1px solid rgba(255,255,255,.15)}
.btn-login:hover{background:rgba(255,255,255,.14);color:#fff}
.btn-register,.btn-primary{background:var(--gradient-button);color:#fff;box-shadow:var(--shadow-button)}
.btn-register:hover,.btn-primary:hover{opacity:.92;transform:translateY(-1px);color:#fff}
.btn-outline{background:transparent;color:#ccfbf1;border:1px solid rgba(13,148,136,.5)}
.btn-outline:hover{background:rgba(13,148,136,.1);color:#fff;border-color:rgba(13,148,136,.7)}
.btn-full{width:100%}
.nav-toggle{display:none;flex:0 0 40px;width:40px;height:40px;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;gap:5px;padding:8px}
.nav-toggle span{display:block;width:22px;height:2px;background:#e2e8f0;border-radius:2px;transition:all var(--motion-normal) var(--ease-out)}
.mobile-menu{display:none;position:fixed;top:var(--header-h);left:0;right:0;bottom:0;background:rgba(2,6,23,.98);backdrop-filter:blur(16px);z-index:999;overflow-y:auto;padding:20px}
.mobile-menu.is-open{display:block}
.mobile-nav{display:flex;flex-direction:column;gap:4px}
.mobile-nav a{display:block;padding:14px 16px;color:#dbeafe;font-size:16px;font-weight:500;border-radius:var(--radius-md);transition:background var(--motion-normal)}
.mobile-nav a:hover,.mobile-nav a.active{background:rgba(13,148,136,.12);color:#5eead4}

@media(max-width:1180px){
  .primary-nav{display:none}
  .nav-toggle{display:inline-flex}
  .header-inner{padding-left:clamp(8px,2.4vw,14px);padding-right:clamp(8px,2.4vw,14px);gap:clamp(6px,1.8vw,10px)}
  .brand-wrap{margin-right:0}
  .header-actions{margin-left:auto}
  .header-actions .btn{min-height:40px;padding-inline:clamp(10px,2.6vw,14px);font-size:clamp(12px,3.2vw,14px)}
  .site-logo{height:clamp(30px,8vw,40px);max-width:clamp(104px,27vw,138px)}
}
@media(max-width:375px){
  .header-inner{padding-left:8px;padding-right:8px;gap:6px}
  .site-logo{max-width:104px}
  .header-actions .btn{min-height:38px;padding-inline:9px;font-size:12px}
  .nav-toggle{flex-basis:38px;width:38px;height:38px}
}

/* SECTIONS */
.section-base,.section-alt,.section-features,.section-steps,.section-faq,.section-related,
.home-hero,.home-why-choose,.home-features,.home-mobile-exp,.home-sports-center,
.home-privacy-security,.home-steps,.home-local-scene,.home-comparison,.home-responsible,
.home-faq,.home-final,.inner-intro,.section-theme-features,.section-local-view,
.section-privacy-block,.section-responsible-inner,.section-mobile-note,.guide-intro,
.guide-steps,.guide-safety,.guide-responsible,.guide-mobile-tip,.policy-header,
.about-intro,.auth-header,.auth-form-section,.faq-hero,.faq-content,.error-page{
  padding:var(--section-y) 0}
.section-alt{background:rgba(15,23,42,.5)}
.section-header{text-align:center;max-width:860px;margin:0 auto clamp(28px,4vw,48px)}
.section-header p{color:var(--color-text-soft);max-width:800px;margin:0 auto}

/* HERO */
.home-hero{padding:clamp(80px,10vw,120px) 0 var(--section-y);background:var(--gradient-hero)}
.hero-split{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,48px);align-items:center}
.hero-content{max-width:720px}
.hero-badge{display:inline-block;padding:8px 16px;background:var(--gradient-button);border-radius:var(--radius-pill);font-size:14px;font-weight:600;color:#fff;margin-bottom:20px}
.hero-lead{font-size:clamp(15px,1.6vw,18px);color:var(--color-text-soft);line-height:1.8;margin-bottom:24px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}
.hero-note{font-size:var(--fs-small);color:var(--color-text-muted)}
.hero-visual img{border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-card)}
@media(max-width:900px){.hero-split{grid-template-columns:1fr}.hero-visual{order:-1;max-width:480px;margin:0 auto}}

/* CONTENT SPLIT */
.content-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,48px);align-items:center}
.content-reverse .content-body{order:1}.content-reverse .content-media{order:2}
.content-media img{border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-card)}
.content-body{max-width:680px}
.content-body p{line-height:var(--lh-body)}
@media(max-width:900px){.content-split{grid-template-columns:1fr}.content-reverse .content-body,.content-reverse .content-media{order:unset}.content-media{max-width:480px;margin:0 auto}}

/* FEATURE GRID */
.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.feature-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:28px;transition:all var(--motion-normal) var(--ease-out)}
.feature-card:hover{border-color:rgba(13,148,136,.3);box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}
.feature-wide{grid-column:span 2}
.feature-icon{width:52px;height:52px;border-radius:var(--radius-md);background:var(--gradient-button);display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:#fff;margin-bottom:16px;box-shadow:0 6px 16px rgba(13,148,136,.2)}
@media(max-width:640px){.feature-wide{grid-column:span 1}}

/* DUAL PANEL */
.dual-panel{display:grid;grid-template-columns:1.2fr .8fr;gap:24px}
.panel-main,.panel-side{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:clamp(24px,3vw,36px)}
.panel-side{background:var(--color-card-alt)}
@media(max-width:900px){.dual-panel{grid-template-columns:1fr}}

/* STEPS */
.steps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;margin-bottom:28px}
.step-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;position:relative}
.step-num{width:42px;height:42px;border-radius:50%;background:var(--gradient-button);display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;margin-bottom:14px;font-size:18px}
.cta-center{text-align:center;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px}

/* TIMELINE */
.timeline{display:flex;flex-direction:column;gap:24px;position:relative;padding-left:48px}
.timeline::before{content:'';position:absolute;left:20px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--color-primary),var(--color-secondary))}
.timeline-item{position:relative;display:flex;gap:16px}
.timeline-marker{position:absolute;left:-48px;width:40px;height:40px;border-radius:50%;background:var(--gradient-button);display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:16px;z-index:1}
.timeline-content{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px;flex:1}

/* TABLE */
.table-scroll{overflow-x:auto;margin:16px 0;border-radius:var(--radius-md);border:1px solid var(--color-border)}
table{width:100%;border-collapse:collapse}
th,td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--color-border)}
th{background:rgba(13,148,136,.1);color:#5eead4;font-weight:600}
td{color:var(--color-text-soft)}
.note-text{font-size:var(--fs-small);color:var(--color-text-muted);margin-top:8px}

/* FAQ */
.faq-list{display:flex;flex-direction:column;gap:12px;max-width:900px;margin:0 auto}
.faq-list-full{max-width:none}
.faq-item{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}
.faq-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;background:transparent;border:none;color:#fff;font-size:16px;font-weight:600;cursor:pointer;text-align:left;font-family:inherit}
.faq-trigger i{transition:transform var(--motion-normal);flex-shrink:0;color:var(--color-primary)}
.faq-trigger[aria-expanded="true"] i{transform:rotate(180deg)}
.faq-answer{display:none;padding:0 24px 20px}
.faq-answer p{color:var(--color-text-soft);line-height:1.8}
.faq-item.is-open .faq-answer{display:block}
.faq-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:16px}
@media(max-width:640px){.faq-grid{grid-template-columns:1fr}}

/* FAQ CATEGORIES */
.faq-categories{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.faq-cat{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:14px;color:var(--color-text-soft)}
.faq-cat i{color:var(--color-primary)}

/* BREADCRUMB */
.breadcrumb{padding:16px 0;max-width:var(--container-max);margin:0 auto;padding-left:20px;padding-right:20px}
.breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;font-size:var(--fs-small);color:var(--color-text-muted)}
.breadcrumb li::after{content:'/';margin-left:8px;color:var(--color-text-muted)}
.breadcrumb li:last-child::after{display:none}
.breadcrumb a{color:var(--color-primary)}

/* RELATED LINKS */
.related-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin:20px 0}
.related-card{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:#fff;font-weight:500;transition:all var(--motion-normal)}
.related-card:hover{border-color:rgba(13,148,136,.4);box-shadow:var(--shadow-card-hover);transform:translateY(-2px);color:#fff}
.related-card i{color:var(--color-primary)}

/* INNER PAGE INTRO */
.inner-intro,.about-intro,.policy-header,.auth-header,.faq-hero,.guide-intro{background:var(--gradient-hero)}
.intro-split{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,40px);align-items:center}
.intro-visual img{border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-card)}
@media(max-width:900px){.intro-split{grid-template-columns:1fr}.intro-visual{max-width:480px;margin:0 auto}}

/* THEME FEATURES */
.theme-feature-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:20px}
.theme-feat{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px}
.feat-num{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--gradient-button);color:#fff;font-weight:700;margin-bottom:12px;font-size:16px}

/* GUIDE */
.guide-header{display:flex;align-items:center;gap:20px;margin-bottom:24px}
.guide-icon{width:64px;height:64px;border-radius:var(--radius-lg);background:var(--gradient-button);display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;flex-shrink:0}

/* POLICY */
.policy-updated{font-size:var(--fs-small);color:var(--color-text-muted);margin-bottom:20px}
.policy-badges,.auth-badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.policy-badge,.auth-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:14px;color:var(--color-text-soft)}
.policy-badge i,.auth-badge i{color:var(--color-primary);font-size:18px}
.policy-block,.about-block,.auth-content-block{max-width:860px}
.policy-visual img,.about-visual img,.faq-visual img{border-radius:var(--radius-xl);border:1px solid var(--color-border);max-width:640px;margin:0 auto}

/* AUTH FORM */
.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.auth-form-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:clamp(24px,4vw,40px)}
.auth-form{display:flex;flex-direction:column;gap:16px;margin-top:20px}
.form-group{display:flex;flex-direction:column;gap:6px}
.form-group label{font-size:14px;font-weight:600;color:#fff}
.form-group input{padding:12px 16px;background:rgba(255,255,255,.06);border:1px solid var(--color-border);border-radius:var(--radius-md);color:#fff;font-size:16px;font-family:inherit;transition:border-color var(--motion-normal)}
.form-group input:focus{border-color:var(--color-primary);outline:none;background:rgba(13,148,136,.06)}
.form-group input::placeholder{color:var(--color-text-muted)}
.form-note{text-align:center;font-size:14px;color:var(--color-text-soft);margin-top:8px}
.auth-security-note{display:flex;align-items:flex-start;gap:12px;padding:16px;background:rgba(13,148,136,.08);border-radius:var(--radius-md);margin-top:16px}
.auth-security-note i{color:var(--color-primary);font-size:20px;flex-shrink:0;margin-top:2px}
.auth-security-note p{font-size:14px;color:var(--color-text-soft);margin:0}
.auth-trust-panel{background:var(--color-card-alt);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:clamp(24px,3vw,36px)}
.trust-list{list-style:none;display:flex;flex-direction:column;gap:12px;margin:16px 0}
.trust-list li{display:flex;align-items:center;gap:10px;color:var(--color-text-soft);font-size:15px}
.trust-list i{color:var(--color-primary)}
@media(max-width:900px){.auth-layout{grid-template-columns:1fr}}

/* FOOTER */
.site-footer{margin-top:40px;padding:48px 0 28px;background:var(--color-footer-bg);border-top:1px solid var(--color-border)}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:clamp(24px,4vw,40px)}
.footer-brand h4,.footer-links h4{color:#5eead4;font-size:16px;margin-bottom:16px}
.footer-brand p{color:var(--color-footer-text);font-size:15px;line-height:1.7}
.footer-links ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-links a{color:#dbeafe;font-size:15px;transition:color var(--motion-normal)}
.footer-links a:hover{color:#5eead4}
.footer-bottom{padding-top:24px;margin-top:28px;border-top:1px solid var(--color-border)}
.footer-bottom p{color:var(--color-text-muted);font-size:var(--fs-small);margin:0}
@media(max-width:768px){.footer-grid{grid-template-columns:1fr}}

/* 404 */
.error-page{min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center}
.error-content h1{font-size:clamp(72px,15vw,140px);background:var(--gradient-button);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
.error-content h2{margin-bottom:16px}
.error-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:24px}

/* AOS FALLBACK */
[data-aos]{opacity:1!important;transform:none!important}
.swiper:not(.swiper-initialized){overflow-x:auto;display:flex;gap:16px;scroll-snap-type:x mandatory}
.swiper:not(.swiper-initialized) .swiper-slide{flex:0 0 auto;scroll-snap-align:start}

/* UTILITY */
@media(max-width:414px){
  body{font-size:16px}
  .container{padding:0 14px}
  .feature-grid,.theme-feature-list,.steps-grid{grid-template-columns:1fr}
  .hero-actions{flex-direction:column}
  .hero-actions .btn{width:100%}
}
@media(max-width:375px){
  .container{padding:0 12px}
  h1{font-size:24px}h2{font-size:20px}
}
