/* ============================================================
   BCS Daily — Shared Design System
   এই ফাইলটি সব পেজে ব্যবহৃত হয়। একবার বদলালে সব পেজে বদলে যাবে।
   ============================================================ */

:root{
  --navy:#1F4E5F; --navy-deep:#163A47; --blue:#2E6E8E;
  --gold:#D6A700; --gold-bright:#F0BE0A;
  --paper:#FAF8F4; --paper-warm:#F2EDE4;
  --ink:#1A1A1A; --ink-soft:#4A4A4A;
  --line:#DDD6C9; --white:#FFFFFF; --red:#B5121B;
  --bn:'Tiro Bangla',serif; --display:'Fraunces',Georgia,serif; --ui:'Inter',system-ui,sans-serif;
  --max:1120px; --pad:clamp(20px,5vw,40px);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--bn);font-size:17px;line-height:1.85;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.has-sticky{padding-bottom:76px}
@media(min-width:768px){body.has-sticky{padding-bottom:0}}
img{max-width:100%;display:block}
a{color:inherit}

.wrap{max-width:var(--max);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.narrow{max-width:760px;margin-left:auto;margin-right:auto}
section{padding:clamp(56px,9vw,110px) 0}
.center{text-align:center}

.eyebrow{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:18px}
.eyebrow.on-dark{color:var(--gold-bright)}
h2.sec{font-family:var(--bn);font-size:clamp(26px,4.2vw,40px);line-height:1.45;font-weight:400;letter-spacing:-.01em;margin-bottom:24px}
.lede{font-size:clamp(17px,2vw,19px);color:var(--ink-soft);line-height:2}
.lede p+p{margin-top:20px}

/* ---------- BUTTONS ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--gold);color:var(--navy-deep);font-family:var(--bn);font-size:19px;padding:16px 40px;border:none;border-radius:2px;cursor:pointer;text-decoration:none;box-shadow:0 2px 0 var(--navy-deep);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.btn:hover{background:var(--gold-bright);transform:translateY(-2px);box-shadow:0 4px 0 var(--navy-deep)}
.btn:active{transform:translateY(0);box-shadow:0 1px 0 var(--navy-deep)}
.btn:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.btn-ghost{background:transparent;color:var(--white);border:1px solid rgba(255,255,255,.45);box-shadow:none}
.btn-ghost:hover{background:rgba(255,255,255,.1);color:var(--white);box-shadow:none}
.btn-outline{background:transparent;color:var(--navy);border:1px solid var(--navy);box-shadow:none}
.btn-outline:hover{background:var(--navy);color:var(--white);box-shadow:none}
.btn-full{width:100%;font-size:19px;padding:17px}

/* ---------- NAV ---------- */
.nav{position:sticky;top:0;z-index:60;background:rgba(250,248,244,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-in{max-width:var(--max);margin:0 auto;padding:12px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand-mark{width:36px;height:36px;flex:none;background:var(--navy);color:var(--white);display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:19px;border-radius:2px}
.brand-name{font-family:var(--ui);font-weight:700;font-size:15px;letter-spacing:.02em;line-height:1.2}
.brand-sub{font-family:var(--ui);font-size:10.5px;color:var(--ink-soft);letter-spacing:.09em;text-transform:uppercase}
.nav-links{display:none;gap:24px;align-items:center}
@media(min-width:980px){.nav-links{display:flex}}
.nav-links a{font-size:15.5px;text-decoration:none;color:var(--ink-soft);transition:color .15s ease;white-space:nowrap}
.nav-links a:hover,.nav-links a.on{color:var(--navy)}
.nav-links a.on{border-bottom:2px solid var(--gold);padding-bottom:2px}
.soon-tag{font-family:var(--ui);font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:var(--line);color:var(--ink-soft);padding:2px 6px;margin-left:5px;border-radius:2px;vertical-align:middle}
.nav .btn{padding:10px 24px;font-size:16px}
@media(max-width:520px){.nav .btn{padding:9px 18px;font-size:15px}.brand-sub{display:none}}

/* ---------- HERO ---------- */
.hero{background:var(--navy);color:var(--white);position:relative;overflow:hidden;padding:clamp(48px,7vw,84px) 0 clamp(56px,8vw,96px)}
.hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.055) 1px,transparent 0);background-size:22px 22px;pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:1fr;gap:clamp(40px,6vw,64px);align-items:center}
@media(min-width:900px){.hero-grid{grid-template-columns:1.05fr .95fr}}
.hero h1{font-family:var(--bn);font-size:clamp(30px,5vw,46px);font-weight:400;line-height:1.4;letter-spacing:-.01em;margin-bottom:20px}
.hero h1 em{font-style:normal;color:var(--gold-bright)}
.hero-sub{font-size:17px;line-height:1.95;color:rgba(255,255,255,.75);max-width:46ch;margin-bottom:32px}
.price-row{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:22px}
.price{font-family:var(--display);font-size:clamp(38px,6vw,52px);font-weight:600;color:var(--gold-bright);line-height:1}
.price-note{font-size:15px;color:rgba(255,255,255,.62)}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hero-cta .btn{font-size:20px;padding:17px 40px}
.hero-meta{font-family:var(--ui);font-size:13px;color:rgba(255,255,255,.55);margin-top:22px;display:flex;gap:20px;flex-wrap:wrap}
.hero-meta span{display:flex;align-items:center;gap:7px}
.hero-meta span::before{content:"";width:5px;height:5px;background:var(--gold);border-radius:50%;flex:none}

/* ---------- BOOK COVER ---------- */
.cover-stage{position:relative;display:grid;place-items:center;min-height:400px;perspective:1400px}
.cover{width:min(74%,320px);border-radius:3px 5px 5px 3px;box-shadow:0 30px 60px -20px rgba(0,0,0,.65),0 8px 18px rgba(0,0,0,.35),-2px 0 0 rgba(0,0,0,.15) inset;transform:rotateY(-16deg) rotateX(2deg);transition:transform .4s ease;animation:coverIn .9s cubic-bezier(.2,.7,.3,1) both}
.cover:hover{transform:rotateY(-6deg) rotateX(1deg)}
@keyframes coverIn{from{opacity:0;transform:rotateY(-24deg) translateY(20px)}to{opacity:1;transform:rotateY(-16deg) rotateX(2deg)}}
.cover-cap{font-family:var(--ui);font-size:12px;color:rgba(255,255,255,.5);text-align:center;margin-top:30px;letter-spacing:.04em}

/* ---------- STAT STRIP ---------- */
.strip{background:var(--navy-deep);color:var(--white);padding:34px 0}
.strip-in{display:flex;align-items:center;justify-content:center;gap:clamp(18px,4vw,40px);flex-wrap:wrap;text-align:center}
.strip-item{font-size:15.5px;color:rgba(255,255,255,.88);line-height:1.6}
.strip-item b{font-family:var(--display);font-size:21px;font-weight:600;color:var(--gold-bright);display:block;line-height:1.2;margin-bottom:2px}
.strip-div{width:1px;height:40px;background:rgba(255,255,255,.22)}
@media(max-width:860px){.strip-div{display:none}.strip-in{gap:16px;flex-direction:column}}

/* ---------- GENERIC BLOCKS ---------- */
.alt{background:var(--paper-warm)}
.dark{background:var(--navy);color:var(--white)}
.dark h2.sec{color:var(--white)}
.dark .lede{color:rgba(255,255,255,.78)}

.xlist{list-style:none;margin:36px 0 0}
.xlist li{position:relative;padding:14px 0 14px 34px;border-bottom:1px solid var(--line);font-size:16.5px;line-height:1.8}
.xlist li:last-child{border-bottom:none}
.xlist li::before{content:"×";position:absolute;left:6px;top:13px;font-family:var(--ui);font-size:19px;color:var(--red);line-height:1.4}
.punch{margin-top:34px;padding:22px 24px;background:var(--white);border-left:3px solid var(--red);font-size:17.5px;line-height:1.85}

.dlist{list-style:none;margin:32px 0}
.dlist li{position:relative;padding:14px 0 14px 30px;border-bottom:1px solid var(--line);font-size:16.5px;line-height:1.8}
.dlist li:last-child{border-bottom:none}
.dlist li::before{content:"";position:absolute;left:4px;top:25px;width:7px;height:7px;background:var(--gold);border-radius:50%}
.dark .dlist li{border-bottom-color:rgba(255,255,255,.15);color:rgba(255,255,255,.9)}

/* ---------- CARD GRID ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:48px}
.cell{background:var(--paper);padding:32px 28px;transition:background .2s ease}
.cell:hover{background:var(--white)}
.cell-n{font-family:var(--display);font-size:30px;font-weight:600;color:var(--gold);line-height:1;margin-bottom:12px}
.cell h3{font-family:var(--bn);font-size:20px;font-weight:400;color:var(--navy);margin-bottom:9px;line-height:1.5}
.cell p{font-size:15.5px;color:var(--ink-soft);line-height:1.8}

.grid-dark{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.16);margin-top:48px}
.cell-dark{background:var(--navy);padding:28px 24px}
.cell-dark .l{font-family:var(--ui);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-bright);margin-bottom:10px}
.cell-dark .v{font-size:16.5px;line-height:1.7;color:rgba(255,255,255,.94)}
.cell-dark .v b{font-family:var(--display);font-size:27px;font-weight:600;color:var(--white);display:block;line-height:1.1;margin-bottom:4px}

.tops{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:30px;margin-top:48px}
.top{border-top:3px solid var(--navy);padding-top:20px}
.top h3{font-family:var(--bn);font-size:20px;font-weight:400;color:var(--navy);margin-bottom:9px}
.top p{font-size:15.5px;color:var(--ink-soft);line-height:1.8}

.callout{margin-top:44px;padding:24px 26px;background:var(--navy);color:var(--white);font-size:17.5px;line-height:1.85;border-left:3px solid var(--gold)}

/* ---------- GALLERY ---------- */
.gallery{display:flex;gap:18px;overflow-x:auto;padding:44px 0 24px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.gallery::-webkit-scrollbar{height:5px}
.gallery::-webkit-scrollbar-track{background:rgba(255,255,255,.1)}
.gallery::-webkit-scrollbar-thumb{background:var(--gold)}
.shot{flex:none;width:min(74vw,290px);scroll-snap-align:center;background:var(--paper-warm);aspect-ratio:7/9.5;display:grid;place-items:center;color:var(--ink-soft);font-family:var(--ui);font-size:12.5px;text-align:center;padding:20px;border-radius:2px;box-shadow:0 14px 34px -12px rgba(0,0,0,.5);overflow:hidden}
.shot img{width:100%;height:100%;object-fit:cover;object-position:top}
.shot-cap{position:absolute;bottom:0;left:0;right:0;background:rgba(22,58,71,.92);color:#fff;font-family:var(--ui);font-size:11.5px;padding:8px 12px;letter-spacing:.03em}
.shot-wrap{position:relative;flex:none;width:min(74vw,290px);scroll-snap-align:center}
.shot-wrap .shot{width:100%}

/* ---------- TESTIMONIALS ---------- */
.tgrid{columns:1;column-gap:22px;margin-top:48px}
@media(min-width:640px){.tgrid{columns:2}}
@media(min-width:980px){.tgrid{columns:3}}
.tcard{break-inside:avoid;background:var(--white);border:1px solid var(--line);padding:26px 24px;margin-bottom:22px;display:inline-block;width:100%}
.dark .tcard{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14)}
.tstars{color:var(--gold);font-size:14px;letter-spacing:2px;margin-bottom:14px}
.ttext{font-size:15.5px;line-height:1.85;color:var(--ink)}
.dark .ttext{color:rgba(255,255,255,.9)}
.tperson{display:flex;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.dark .tperson{border-top-color:rgba(255,255,255,.14)}
.tav{width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;font-family:var(--ui);font-weight:600;font-size:16px;color:#fff}
.tname{font-family:var(--ui);font-size:14.5px;font-weight:600;color:var(--navy);line-height:1.3}
.dark .tname{color:#fff}
.trole{font-family:var(--ui);font-size:12px;color:var(--ink-soft)}
.dark .trole{color:rgba(255,255,255,.6)}
.tsource{display:inline-flex;align-items:center;gap:6px;margin-top:34px;font-family:var(--ui);font-size:13px;color:var(--ink-soft)}
.dark .tsource{color:rgba(255,255,255,.6)}

/* ---------- ORDER / FORM ---------- */
.order-grid{display:grid;grid-template-columns:1fr;gap:32px;margin-top:44px}
@media(min-width:900px){.order-grid{grid-template-columns:1fr 1fr;gap:52px}}
.panel{background:var(--white);border:1px solid var(--line);padding:clamp(26px,4vw,36px)}
.panel h3{font-family:var(--bn);font-size:22px;font-weight:400;color:var(--navy);margin-bottom:20px}
.pline{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line);font-size:16.5px}
.pline:last-of-type{border-bottom:none}
.pline b{font-family:var(--ui);font-weight:600;white-space:nowrap}
.ptotal{display:flex;justify-content:space-between;align-items:baseline;margin-top:18px;padding-top:18px;border-top:2px solid var(--navy)}
.ptotal .lbl{font-size:17px}
.ptotal .amt{font-family:var(--display);font-size:32px;font-weight:600;color:var(--navy)}
.assure{margin-top:22px;padding:20px 22px;background:#FFF8E1;border-left:3px solid var(--gold);font-size:16px;line-height:1.85}
.assure .at{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--navy);margin-bottom:9px}

.steps{margin-top:6px}
.step{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}
.step:last-child{border-bottom:none}
.step-n{flex:none;width:29px;height:29px;background:var(--navy);color:var(--white);display:grid;place-items:center;border-radius:50%;font-family:var(--ui);font-size:13.5px;font-weight:600}
.step-b{font-size:15.5px;line-height:1.75}
.step-b strong{font-family:var(--ui);font-weight:600;color:var(--navy);font-size:16.5px}

label{display:block;font-size:15px;margin-bottom:7px}
label .req{color:var(--red)}
label .opt{color:var(--ink-soft);font-size:13.5px}
input,select,textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:2px;font-family:var(--bn);font-size:16px;background:var(--paper);color:var(--ink);margin-bottom:17px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(31,78,95,.12)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:560px){.form-row{grid-template-columns:1fr}}
.same-row{display:flex;align-items:center;gap:9px;margin:-8px 0 17px}
.same-row input{width:auto;margin:0}
.same-row label{font-size:14px;margin:0;color:var(--ink-soft);cursor:pointer}
.form-note{font-size:13.5px;color:var(--ink-soft);margin-top:13px;line-height:1.7;text-align:center}
.ok-msg{display:none;background:#EBF4F9;border-left:3px solid var(--blue);padding:19px;margin-top:19px;font-size:15.5px;line-height:1.8}
.ok-msg.show{display:block}

/* ---------- FAQ ---------- */
.faq-list{margin-top:44px;border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{padding:21px 40px 21px 0;cursor:pointer;list-style:none;font-size:17.5px;color:var(--navy);position:relative;line-height:1.6}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-family:var(--ui);font-size:24px;color:var(--blue);transition:transform .2s ease}
details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
summary:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
details p{padding:0 0 23px;font-size:16.5px;color:var(--ink-soft);line-height:1.9;max-width:68ch}

/* ---------- BENEFIT BOX ---------- */
.gift{background:rgba(214,167,0,.13);border:1px solid rgba(240,190,10,.4);padding:30px 28px;margin:36px 0}
.gift-badge{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--navy-deep);font-family:var(--ui);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:5px 12px;margin-bottom:16px}
.gift h4{font-family:var(--bn);font-size:21px;font-weight:400;color:var(--gold-bright);margin-bottom:14px;line-height:1.5}
.gift ul{list-style:none}
.gift li{position:relative;padding:9px 0 9px 26px;font-size:16.5px;line-height:1.8;color:rgba(255,255,255,.94)}
.gift li::before{content:"";position:absolute;left:2px;top:20px;width:7px;height:7px;background:var(--gold-bright);border-radius:50%}
.gift li b{color:var(--white)}

/* ---------- FINAL CTA ---------- */
.final{background:var(--paper-warm);text-align:center}
.final h2{font-family:var(--bn);font-size:clamp(27px,4.5vw,42px);font-weight:400;line-height:1.45;color:var(--navy);margin-bottom:32px}
.final .btn{font-size:21px;padding:19px 48px}
.final-sub{font-size:15.5px;color:var(--ink-soft);margin-top:20px;line-height:1.8}
.final-close{margin-top:40px;padding-top:32px;border-top:1px solid var(--line);font-size:16.5px;color:var(--ink-soft);line-height:1.9;max-width:56ch;margin-left:auto;margin-right:auto}

/* ---------- FOOTER ---------- */
.foot{background:var(--navy-deep);color:rgba(255,255,255,.72);padding:54px 0 32px;text-align:center}
.foot .brand{justify-content:center;margin-bottom:22px}
.foot .brand-name,.foot .brand-sub{color:var(--white)}
.foot-nav{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin-bottom:24px;font-size:15.5px}
.foot-nav a{text-decoration:none;color:rgba(255,255,255,.72);transition:color .15s ease}
.foot-nav a:hover{color:var(--gold-bright)}
.foot-contact{font-family:var(--ui);font-size:15px;color:var(--white);margin-bottom:24px}
.foot-contact a{color:var(--gold-bright);text-decoration:none}
.foot-bar{border-top:1px solid rgba(255,255,255,.14);padding-top:21px;font-family:var(--ui);font-size:12.5px;color:rgba(255,255,255,.45)}

/* ---------- STICKY BAR ---------- */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--navy);border-top:1px solid rgba(255,255,255,.16);padding:11px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:0 -4px 20px rgba(0,0,0,.2)}
@media(min-width:768px){.sticky{display:none}}
.sticky-amt{font-family:var(--display);font-size:23px;font-weight:600;color:var(--gold-bright)}
.sticky-l{font-family:var(--ui);font-size:11px;color:rgba(255,255,255,.6);display:block}
.sticky .btn{padding:13px 26px;font-size:17px;box-shadow:none}
.sticky .btn:hover{transform:none;box-shadow:none}

/* ---------- WHATSAPP ---------- */
.wa{position:fixed;right:16px;bottom:88px;z-index:65;width:54px;height:54px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 5px 18px rgba(0,0,0,.28);text-decoration:none;transition:transform .18s ease}
.wa:hover{transform:scale(1.07)}
@media(min-width:768px){.wa{bottom:24px}}
body:not(.has-sticky) .wa{bottom:24px}
.wa svg{width:29px;height:29px;fill:#fff}

@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* ---------- VISIT COUNTER ---------- */
.visits{font-family:var(--ui);font-size:12.5px;color:rgba(255,255,255,.5);margin-bottom:14px;letter-spacing:.03em}
.visits b{color:var(--gold-bright);font-weight:600;font-variant-numeric:tabular-nums}
