/* Sabak Academy — premium Islamic Bangla theme */
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Hind Siliguri','Plus Jakarta Sans',system-ui,sans-serif;color:#16211c;background:#f3f0e6;line-height:1.8}
body.islamic-bg{background-color:#f3efe3;background-image:radial-gradient(circle at 20% 10%,rgba(15,122,61,.07),transparent 40%),radial-gradient(circle at 85% 20%,rgba(245,179,1,.12),transparent 40%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%230f7a3d' stroke-opacity='.12'%3E%3Cpath d='M60 10 L70 50 L110 60 L70 70 L60 110 L50 70 L10 60 L50 50 Z'/%3E%3Ccircle cx='60' cy='60' r='4'/%3E%3C/g%3E%3C/svg%3E")}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}

/* ---------- আইকন ----------
   <x-icon> কম্পোনেন্টের SVG-তে width/height লেখা থাকে না, শুধু viewBox
   থাকে। তাই মাপ না দিলে ব্রাউজার তাকে ডিফল্ট ৩০০×১৫০ আকারে আঁকে — সাইটে
   আইকনগুলো ২০০px চওড়া হয়ে পাতা ফুলিয়ে দিচ্ছিল। এই একটি নিয়মই সব ঠিক
   করে দেয়, কারণ বাকি সব জায়গা em-এ মাপ দেয় (যেমন .wic{font-size:30px})। */
.ico{width:1.15em;height:1.15em;vertical-align:-.19em;flex:0 0 auto;display:inline-block;overflow:visible}
.ico-tx{vertical-align:-.05em}
a .ico,button .ico,.btn .ico{pointer-events:none}

.wrap{max-width:1180px;margin:auto;padding:0 18px}
.center{text-align:center}
.eyebrow{color:#0f7a3d;font-weight:800;letter-spacing:2px;font-size:12px;margin-bottom:8px}
.eyebrow.light{color:#ffd84d}
h2{font-size:32px;line-height:1.25;font-weight:800;color:#101f16;margin-bottom:10px}
h2 span{color:#0f7a3d}
h2.light{color:#fff}
.muted{color:#5b6b60}
.btn{display:inline-block;padding:12px 26px;border-radius:30px;font-weight:700;font-size:14px}
.btn-green{background:#0f7a3d;color:#fff}
.btn-gold{background:#f5b301;color:#221a00}
.btn.sm{padding:10px 20px}
.section{padding:64px 0}
.section.soft{background:#eef3ec}

/* topbar */
.topbar{background:#0b2b1a;color:#cfe3d3;font-size:13px}
.topbar-in{display:flex;justify-content:space-between;align-items:center;padding-top:8px;padding-bottom:8px}
.top-left{display:flex;gap:18px;flex-wrap:wrap}
.top-right{display:flex;gap:12px}
.top-right a{opacity:.8}
@media(max-width:700px){.hide-m{display:none}}

/* nav */
.nav{background:rgba(255,255,255,.96);backdrop-filter:blur(10px);position:sticky;top:0;z-index:50;box-shadow:0 4px 18px rgba(11,43,26,.12);border-bottom:3px solid #0f7a3d}
.nav-in{display:flex;align-items:center;gap:18px;padding-top:10px;padding-bottom:10px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:22px;color:#0b2b1a}
.logo-ic{font-size:30px}
.logo-tx{line-height:1.1}
.logo-img{height:34px;width:auto;max-width:150px;object-fit:contain;display:block}
.logo-tx em{display:block;font-style:normal;font-size:11px;letter-spacing:4px;color:#0f7a3d}
.logo.light{color:#fff}
.links{list-style:none;display:flex;gap:4px;margin-left:auto;font-size:14px;font-weight:700;flex-wrap:wrap}
.links li{position:relative}
.links li a{display:block;padding:9px 12px;border-radius:10px;white-space:nowrap}
.links li.active a{background:#0f7a3d;color:#fff}
.links li.hot a{background:linear-gradient(135deg,#f5b301,#e09b00);color:#221a00;box-shadow:0 6px 16px rgba(245,179,1,.4)}
.links li:not(.active):not(.hot) a:hover{background:#e8f2ea;color:#0b2b1a}
.links .sub{position:absolute;top:100%;left:0;background:#fff;min-width:210px;list-style:none;box-shadow:0 14px 30px rgba(0,0,0,.14);border-radius:10px;overflow:hidden;display:none;padding:6px}
.links .has-sub:hover .sub{display:block}
.links .sub a{display:block;padding:9px 12px;font-weight:500}
.links .sub a:hover{background:#eef6ee}
.menu-toggle{display:none;border:1px solid #0f7a3d;background:#fff;color:#0b2b1a;border-radius:10px;padding:7px 12px;font-size:18px;cursor:pointer;line-height:1}
.top-login{background:#f5b301;color:#221a00;font-weight:800;padding:4px 16px;border-radius:20px;white-space:nowrap}
/* ডেস্কটপ অ্যাকশন */
.nav-actions{display:flex;align-items:center;gap:10px}
.m-admit{display:none}
/* ===== মোবাইল সাইডবার নেভ ===== */
.side-overlay{position:fixed;inset:0;background:rgba(4,18,10,.55);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:.3s;z-index:90}
.side-overlay.show{opacity:1;visibility:visible}
.mobile-side{position:fixed;top:0;bottom:0;right:0;width:min(330px,86vw);background:linear-gradient(180deg,#fffdf4,#f6efdb);border-left:3px solid #c9a227;box-shadow:-24px 0 60px rgba(0,0,0,.35);z-index:95;transform:translateX(105%);transition:transform .35s cubic-bezier(.22,.8,.3,1);display:flex;flex-direction:column;overflow:hidden}
.mobile-side.open{transform:none}
.mobile-side::before{content:"";position:absolute;top:0;right:24px;left:24px;height:4px;border-radius:0 0 10px 10px;background:linear-gradient(90deg,transparent,#0f7a3d,#c9a227,#f5b301,transparent)}
.side-head{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 12px}
.side-close{width:40px;height:40px;border-radius:50%;border:1px solid #c9a227;background:#0b2b1a;color:#ffd84d;font-size:17px;cursor:pointer}
.side-cta{margin:4px 18px 12px;text-align:center}
.side-links{list-style:none;padding:4px 14px 10px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:2px}
.side-links li a{display:block;padding:11px 14px;border-radius:12px;font-weight:700;font-size:15px}
.side-links li.active > a{background:#0f7a3d;color:#fff}
.side-links li.hot > a{background:linear-gradient(135deg,#f5b301,#e09b00);color:#221a00}
.side-links li:not(.active):not(.hot) > a:hover{background:#e9f2ea}
.side-sub-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:11px 14px;border:none;background:transparent;border-radius:12px;font:inherit;font-weight:700;font-size:15px;cursor:pointer;color:inherit}
.side-links .has-sub .sub{list-style:none;display:none;background:#efe8d2;border-radius:12px;padding:6px;margin:4px 0 6px}
.side-links .has-sub.sub-open .sub{display:block}
.side-links .has-sub .sub a{font-size:14px;font-weight:600;padding:9px 12px}
.side-links .has-sub.sub-open .side-sub-btn span{transform:rotate(180deg);display:inline-block}
.side-foot{padding:14px 18px 20px;border-top:1px dashed #d5c48d;font-size:13px;color:#5b6b60;background:rgba(255,255,255,.6)}
/* ===== রেসপন্সিভ নেভবার ===== */
@media(max-width:1100px){
.nav-in{gap:10px;justify-content:space-between}
.links{display:none}
.desk-admit{display:none}
.nav-actions{margin-left:auto}
.m-admit{display:inline-block;background:linear-gradient(135deg,#f5b301,#e09b00);color:#221a00;font-weight:800;font-size:13px;padding:8px 14px;border-radius:20px;white-space:nowrap;box-shadow:0 6px 16px rgba(245,179,1,.4)}
.menu-toggle{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:42px;font-size:20px;background:#0b2b1a;color:#ffd84d;border:1px solid #c9a227}
}
@media(max-width:480px){
.logo{font-size:18px}
.logo-ic{font-size:24px}
.logo-img{height:26px;max-width:110px}
.m-admit{font-size:12px;padding:7px 10px}
}

/* hero */
.hero{background-size:cover;background-position:center;position:relative;color:#fff;padding:70px 0 0}
.hero-ov{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,12,8,.88) 30%,rgba(4,12,8,.45))}
.hero-in{position:relative;padding-top:40px;padding-bottom:120px;max-width:1180px}
.hero-ar{font-family:'Amiri',serif;color:#ffd84d;font-size:22px;margin-bottom:10px}
.hero h1{font-size:46px;line-height:1.15;color:#fff}
.hero h1 span{color:#ffd84d}
.hero-sub{color:#d6e2d8;max-width:520px;margin:14px 0 20px}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap;position:relative}
@media(max-width:700px){.hero h1{font-size:32px}}

/* strip */
.strip{position:relative;margin:-70px 0 0;background:#0f3d22;border-radius:14px;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.25)}
.strip-item{display:flex;gap:12px;padding:20px;border-right:1px solid rgba(255,255,255,.12);color:#fff;align-items:center}
.strip-item:last-child{border-right:none}
.strip-ic{width:44px;height:44px;border-radius:50%;background:rgba(245,179,1,.18);border:1px solid #f5b301;display:flex;align-items:center;justify-content:center;color:#ffd84d;flex-shrink:0}
.strip-ic .ico{width:22px;height:22px}
.strip-item b{display:block;font-size:14px}
.strip-item small{font-size:12px;color:#cfe3d3}
@media(max-width:900px){.strip{grid-template-columns:1fr 1fr}.strip-item{border-bottom:1px solid rgba(255,255,255,.12)}}
@media(max-width:520px){.strip{grid-template-columns:1fr}}

/* about */
.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:36px;align-items:center;text-align:left}
.about-img img{border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.15)}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0 20px;font-size:14px;font-weight:600}
@media(max-width:900px){.about-grid{grid-template-columns:1fr}}

/* why */
.cards-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:26px}
.wcard{background:#fff;border-radius:14px;padding:26px 20px;box-shadow:0 10px 26px rgba(0,0,0,.06)}
.wic{font-size:30px;margin-bottom:10px}
.wic .ico{width:34px;height:34px;vertical-align:0}
.wcard b{display:block;margin-bottom:6px}
.wcard p{font-size:13px;color:#5b6b60}
@media(max-width:900px){.cards-4{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.cards-4{grid-template-columns:1fr}}

/* stats */
.stats{background:#0b2b1a;color:#fff}
.stats-in{display:grid;grid-template-columns:repeat(4,1fr);padding-top:22px;padding-bottom:22px;text-align:center}
.stat b{display:block;font-size:26px;color:#ffd84d}
.stat span{font-size:13px;color:#cfe3d3}
@media(max-width:700px){.stats-in{grid-template-columns:1fr 1fr;gap:14px}}

/* courses */
.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px;text-align:left}
.course{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 10px 26px rgba(0,0,0,.07)}
.course img{height:190px;width:100%;object-fit:cover}
.course-b{padding:18px}
.course-b b{font-size:16px}
.course-b p{font-size:13px;color:#5b6b60;margin:8px 0 10px}
.course-b a{font-size:12px;font-weight:800;color:#0f7a3d;letter-spacing:1px}
@media(max-width:900px){.course-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.course-grid{grid-template-columns:1fr}}

/* steps */
.steps{background:#0b2b1a;padding:64px 0}
.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px;text-align:left}
.scard{background:#fff;border-radius:14px;padding:26px 22px;position:relative}
.sno{position:absolute;top:14px;right:16px;background:#0f7a3d;color:#fff;font-size:11px;font-weight:800;padding:3px 10px;border-radius:20px}
.sic{font-size:30px;margin-bottom:8px}
.scard b{display:block;margin-bottom:6px}
.scard p{font-size:13px;color:#5b6b60}
.tcard{background:#f6f8f5;border:1px solid #e3eae2;border-radius:14px;padding:26px 22px;text-align:left}
.tcard small{color:#0f7a3d;font-weight:700;display:block}
.stars{color:#f5a301;margin:8px 0;font-size:14px}
.tcard p{font-size:13px;color:#43544a}
@media(max-width:900px){.cards-3{grid-template-columns:1fr}}

/* cta */
.cta{background:linear-gradient(90deg,#0b2b1a 55%,#f5b301 55%);margin-top:10px}
.cta-in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:26px;padding-bottom:26px;flex-wrap:wrap}
.cta-t{display:flex;gap:14px;align-items:center;color:#fff}
.cta-t b{display:block;font-size:20px}
.cta-t small{color:#cfe3d3}
.cta-ic{width:52px;height:52px;border-radius:50%;background:#f5b301;display:flex;align-items:center;justify-content:center;font-size:24px;color:#221a00}
.cta-ic .ico{width:26px;height:26px}
@media(max-width:800px){.cta{background:#0b2b1a}}

/* footer */
.footer{background:#071f12;color:#b9cdc0}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:20px;padding-top:44px;padding-bottom:30px}
.footer h4{color:#fff;margin-bottom:10px}
.footer ul{list-style:none;font-size:14px}
.footer ul li{padding:4px 0}
.footer ul a:hover{color:#ffd84d}
.footer .app-link{color:#ffd84d;font-weight:700}
.copy{background:#04120a;text-align:center;font-size:12px;padding:12px;color:#8aa392}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.foot-grid{grid-template-columns:1fr}}

/* notice */
.notice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px;text-align:left}
.notice-card{background:#fff;border-radius:14px;padding:20px;display:flex;gap:14px;box-shadow:0 10px 26px rgba(0,0,0,.07);border-top:4px solid #0f7a3d}
.notice-date{background:#0f7a3d;color:#fff;border-radius:10px;text-align:center;padding:8px 12px;min-width:64px;height:fit-content}
.notice-date b{display:block;font-size:20px;line-height:1}
.notice-date span{font-size:11px}
.notice-b b{display:block;margin-bottom:6px}
.notice-b p{font-size:13px;color:#5b6b60}
@media(max-width:900px){.notice-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.notice-grid{grid-template-columns:1fr}}

/* teachers */
.teacher-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}
.teacher-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 10px 26px rgba(0,0,0,.2)}
.teacher-card img{height:230px;width:100%;object-fit:cover;object-position:top}
.teacher-b{padding:16px;color:#101f16}
.teacher-b b{display:block}
.teacher-b small{color:#0f7a3d;font-weight:700;display:block}
.teacher-b span{font-size:12px;color:#5b6b60}
@media(max-width:900px){.teacher-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.teacher-grid{grid-template-columns:1fr}}

/* ===== শিক্ষক সেকশন v2 — মসজিদ-থিম প্রিমিয়াম ===== */
.teacher-sec{position:relative;padding:70px 0;overflow:hidden;background:linear-gradient(180deg,#f8f3e2,#efe6cb);border-top:4px double #c9a227;border-bottom:4px double #c9a227}
.teacher-bg{position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1564769625392-651b2c0a8a4f?w=1600&q=60') center/cover;opacity:.14;filter:saturate(.9)}
.teacher-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(248,243,226,.9),rgba(248,243,226,.55) 40%,rgba(11,43,26,.55))}
.teacher-in{position:relative}
.teacher-sec .teacher-grid{gap:22px}
.teacher-card.v2{background:rgba(255,255,255,.94);border:1px solid rgba(201,162,39,.45);border-radius:20px;box-shadow:0 22px 50px rgba(11,43,26,.18);transition:transform .25s,box-shadow .25s;position:relative}
.teacher-card.v2:hover{transform:translateY(-8px);box-shadow:0 30px 60px rgba(11,43,26,.28)}
.teacher-card.v2::before{content:"";position:absolute;top:0;right:22px;left:22px;height:4px;border-radius:0 0 8px 8px;background:linear-gradient(90deg,transparent,#c9a227,#0f7a3d,#c9a227,transparent)}
.t-photo{position:relative;margin:18px 18px 0;border-radius:16px;overflow:hidden;aspect-ratio:4/4.4;background:#e8e2cc}
.t-photo img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .4s}
.teacher-card.v2:hover .t-photo img{transform:scale(1.06)}
.t-frame{position:absolute;inset:10px;border:1px solid rgba(255,255,255,.75);border-radius:12px;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(201,162,39,.5)}
.teacher-card.v2 .teacher-b{padding:16px 18px 20px}
.t-role{color:#0f7a3d}
.t-sub{display:inline-block;margin-top:8px;font-size:12px;font-weight:700;color:#5b4a12;background:#f7ecC8;background:#f7ecc8;border:1px solid #e3d194;padding:3px 12px;border-radius:20px}

/* ===== বাণী / অভিমত — ইসলামিক মেসেজ UI ===== */
.msg-sec{position:relative;padding:70px 0;background:radial-gradient(circle at 50% -10%,#14532d 0%,#0b2b1a 45%,#04120a 100%);overflow:hidden;border-bottom:4px solid #c9a227}
.msg-sec::before{content:"";position:absolute;inset:0;opacity:.35;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150' viewBox='0 0 150 150'%3E%3Cg fill='none' stroke='%23ffd84d' stroke-opacity='.3'%3E%3Cpath d='M75 10 L83 60 L135 68 L83 76 L75 126 L67 76 L15 68 L67 60 Z'/%3E%3Ccircle cx='75' cy='68' r='26'/%3E%3C/g%3E%3C/svg%3E") repeat}
.msg-sec::after{content:"﷽";position:absolute;top:14px;left:50%;transform:translateX(-50%);color:rgba(255,216,77,.25);font-size:44px;font-family:'Amiri',serif}
.msg-sec .wrap{position:relative}
.msg-ayah{font-family:'Amiri',serif;color:#ffd84d;font-size:22px;margin:4px 0 6px}
.msg-ayah span{display:block;font-family:'Hind Siliguri',sans-serif;font-size:13px;color:#cfe3d3;margin-top:4px}
.msg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px;text-align:right}
/* ===== অভিমত ক্যারোসেল (RTL ট্র্যাক: ডান → বামে স্লাইড) ===== */
.msg-carousel{position:relative;max-width:760px;margin:28px auto 0}
.msg-viewport{position:relative;overflow:hidden;border-radius:24px;padding:4px}
.msg-track{display:flex;direction:ltr;align-items:stretch;transition:transform .6s cubic-bezier(.22,.8,.3,1);will-change:transform;margin:0;padding:0}
.msg-slide{flex:0 0 100%;max-width:100%;min-width:100%;box-sizing:border-box;margin:0;display:block}
.msg-slide .msg-card{height:100%;margin:0;text-align:right;display:flex;flex-direction:column;box-sizing:border-box}
.msg-slide blockquote{flex:1}
.msg-nav{position:absolute;top:50%;translate:0 -50%;width:50px;height:50px;border-radius:50%;border:1px solid rgba(255,216,77,.65);background:rgba(7,31,18,.8);color:#ffd84d;font-size:30px;line-height:1;cursor:pointer;z-index:3;transition:.2s;backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding-bottom:4px}
.msg-nav:hover{background:#f5b301;color:#221a00;border-color:#f5b301;transform:scale(1.08)}
.msg-nav.prev{right:-66px}
.msg-nav.next{left:-66px}
.msg-dots{display:flex;gap:10px;justify-content:center;margin-top:22px}
.msg-dots button{width:32px;height:8px;border-radius:20px;border:none;background:rgba(255,216,77,.3);cursor:pointer;padding:0;transition:.25s}
.msg-dots button.on{background:#ffd84d;box-shadow:0 0 14px rgba(255,216,77,.9);width:44px}
.msg-count{position:absolute;top:-8px;left:50%;transform:translateX(-50%);background:#f5b301;color:#221a00;font-size:13px;font-weight:800;padding:3px 16px;border-radius:20px;z-index:3;box-shadow:0 8px 18px rgba(0,0,0,.35)}
.msg-count span{opacity:.7;margin:0 3px}
.msg-progress{height:3px;background:rgba(255,216,77,.2);border-radius:10px;margin-top:14px;overflow:hidden;max-width:420px;margin-left:auto;margin-right:auto}
.msg-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#0f7a3d,#ffd84d);border-radius:10px}
@media(max-width:1024px){.msg-nav.prev{right:8px}.msg-nav.next{left:8px}}
@media(max-width:640px){.msg-card blockquote{font-size:13.5px;min-height:0}.msg-nav{width:42px;height:42px;font-size:24px}.msg-carousel{max-width:100%}}
.msg-card{position:relative;background:linear-gradient(180deg,rgba(255,253,244,.98),rgba(247,240,212,.96));border-radius:22px 22px 60px 22px;padding:30px 24px 22px;color:#22301f;box-shadow:0 24px 55px rgba(0,0,0,.4);border:1px solid #e3d194;overflow:hidden;transition:transform .25s}
.msg-card:hover{transform:translateY(-6px)}
.msg-card::before{content:"";position:absolute;top:0;right:0;left:0;height:6px;background:linear-gradient(90deg,#0f7a3d,#c9a227,#f5b301,#c9a227,#0f7a3d)}
.msg-q{position:absolute;top:2px;left:18px;font-family:Georgia,serif;font-size:72px;line-height:1;color:#c9a227;opacity:.4}
.msg-card .stars{color:#d99a00;font-size:15px;margin:2px 0 10px;letter-spacing:3px}
.msg-card blockquote{font-size:14.5px;line-height:1.9;color:#33402e;min-height:110px}
.msg-card figcaption{display:flex;align-items:center;gap:12px;margin-top:14px;padding-top:14px;border-top:1px dashed #d5c48d}
.msg-av{width:46px;height:46px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;color:#fff;background:linear-gradient(135deg,#0b2b1a,#0f7a3d);border:2px solid #c9a227}
.msg-who b{display:block;font-size:15px}
.msg-who small{color:#0f7a3d;font-weight:700;font-size:12px}
.msg-arch{position:absolute;bottom:-38px;left:-38px;width:130px;height:130px;border:26px solid rgba(15,122,61,.08);border-bottom:none;border-radius:100px 100px 0 0}
@media(max-width:900px){.msg-grid{grid-template-columns:1fr}.msg-card blockquote{min-height:0}}

/* ===== premium Islamic finish ===== */
h2.orn{font-family:'Noto Serif Bengali','Hind Siliguri',serif;position:relative;padding-bottom:14px}
h2.orn::after{content:"✦ ✦ ✦";display:block;font-size:13px;color:#c9a227;letter-spacing:6px;margin-top:6px}
h2.orn-light::after{color:#ffd84d}
.pattern-sec{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(255,255,255,.6));border-top:1px solid #e4dcc3;border-bottom:1px solid #e4dcc3}
.pattern-sec::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cg fill='none' stroke='%23c9a227' stroke-opacity='.25'%3E%3Cpath d='M70 8 L78 52 L122 60 L78 68 L70 112 L62 68 L18 60 L62 52 Z'/%3E%3C/g%3E%3C/svg%3E") repeat}
.pattern-sec .wrap{position:relative}
.glass{background:rgba(255,255,255,.82);backdrop-filter:blur(12px);border:1px solid rgba(201,162,39,.35);border-radius:16px;box-shadow:0 16px 40px rgba(11,43,26,.12)}
.premium-dark{background:radial-gradient(circle at 15% 10%,#14532d,#071f12 60%),linear-gradient(180deg,#0b2b1a,#071f12);padding:64px 0;position:relative;overflow:hidden;border-top:4px double #c9a227;border-bottom:4px double #c9a227}
.premium-dark::before{content:"☪";position:absolute;right:-30px;top:-40px;font-size:280px;opacity:.06;color:#ffd84d;transform:rotate(-12deg)}
.btn-glass{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.5);backdrop-filter:blur(8px)}
.btn-gold{box-shadow:0 10px 24px rgba(245,179,1,.35)}
.mt{margin-top:22px;display:inline-block}
.small{font-size:13px}
.narrow{max-width:640px;margin:auto}
.page-hero{background:linear-gradient(135deg,#071f12 10%,#0f7a3d 60%,#14532d),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23ffd84d' stroke-opacity='.25'%3E%3Cpath d='M80 10 L88 60 L140 70 L88 80 L80 130 L72 80 L20 70 L72 60 Z'/%3E%3C/g%3E%3C/svg%3E");color:#fff;padding:56px 0 60px;text-align:center;border-bottom:4px solid #c9a227;position:relative;overflow:hidden}
.page-hero h1{font-family:'Noto Serif Bengali',serif;font-size:40px;color:#fff}
.page-hero .hero-ar{color:#ffd84d;font-size:26px;margin-bottom:6px}
.crumb{color:#e8dfc0;font-size:14px}.crumb a{color:#ffd84d;font-weight:700}.crumb span{margin:0 6px}
.hero{border-bottom:4px solid #c9a227}
.hero-in h1{font-family:'Noto Serif Bengali',serif;text-shadow:0 6px 24px rgba(0,0,0,.5)}
.result-form{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;padding:20px;margin:22px auto 0;max-width:900px}
.result-form select,.result-form input,.admit-form input,.admit-form textarea,.reprint-form input{padding:12px 14px;border-radius:12px;border:1px solid #d8cfae;font-family:inherit;font-size:14px;background:#fffdf4;min-width:200px;flex:1}
.result-demo{padding:24px;margin-top:20px;text-align:right}
.kv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:14px 0}
.kv-grid div{background:#f7f3e3;border:1px dashed #c9a227;border-radius:12px;padding:10px}
.kv-grid span{display:block;font-size:12px;color:#6b6250}.kv-grid b{font-size:16px}
.cal-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;text-align:right}
.event-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}
.event-row{display:flex;gap:12px;align-items:center;padding:14px;text-align:right}
.notice-date.gold{background:linear-gradient(135deg,#f5b301,#c98a00)}
.tag{display:inline-block;background:#e8f2ea;color:#0b2b1a;font-size:11px;font-weight:800;padding:2px 10px;border-radius:20px;margin-right:8px}
.holiday-list{padding:8px 18px;margin-top:16px}
.holiday-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 4px;border-bottom:1px dashed #d8cfae}
.holiday-row:last-child{border-bottom:none}
.holiday-row small{display:block;color:#6b6250}
.pill{background:#0f7a3d;color:#fff;font-size:12px;font-weight:800;padding:4px 14px;border-radius:20px;white-space:nowrap}
.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px;text-align:right}
.event-card{padding:20px;display:flex;gap:14px;align-items:flex-start}
.event-card p{font-size:13px;color:#5b6b60;margin-top:6px}
.holiday-wrap{padding:8px 22px;max-width:760px;margin:20px auto 0;text-align:right}
.table-wrap{overflow-x:auto;padding:6px;margin-top:20px}
.routine-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border-radius:12px;font-size:14px;background:#fff}
.routine-table th{background:#0b2b1a;color:#ffd84d;padding:12px 10px;font-size:14px}
.routine-table td{padding:11px 10px;border-bottom:1px solid #eee3c2;text-align:center}
.routine-table tr:last-child td{border-bottom:none}
.day-cell{background:#f7f0d4;font-weight:800;white-space:nowrap}
.admit-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;text-align:right}
.admit-form{display:flex;flex-direction:column;gap:12px;padding:20px;margin-top:16px}
.admit-form .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.steps-mini{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.step-mini{background:#0b2b1a;color:#fff;font-size:13px;padding:8px 14px;border-radius:30px;display:flex;gap:8px;align-items:center}
.step-mini span{background:#f5b301;color:#221a00;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:12px}
.slip{padding:18px;margin-top:14px;border-right:5px solid #0f7a3d}
.reprint-form{display:flex;gap:10px;padding:18px;margin-top:16px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;text-align:right}
.contact-card{padding:26px}
.contact-card textarea{resize:vertical}
.footer{background:linear-gradient(180deg,#0b2b1a,#04120a);border-top:4px solid #c9a227}
@media(max-width:900px){.cal-grid,.admit-grid,.contact-grid{grid-template-columns:1fr}.event-grid{grid-template-columns:1fr 1fr}.page-hero h1{font-size:30px}}
@media(max-width:600px){.event-grid{grid-template-columns:1fr}.admit-form .two{grid-template-columns:1fr}.result-form{flex-direction:column}}

/* ===== হোম: ইভেন্ট • ছুটি • নোটিশ (premium 3-col) ===== */
.trio-sec{position:relative;padding-top:70px}
.trio-sec::before{content:"";position:absolute;inset:0 0 auto;height:120px;background:radial-gradient(60% 100% at 50% 0,rgba(201,162,39,.18),transparent);pointer-events:none}
.trio-grid{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:22px;margin-top:30px;text-align:right;align-items:stretch}
.trio-card{display:flex;flex-direction:column;overflow:hidden;padding:0;border-radius:22px;background:linear-gradient(180deg,#fffdf6,#f8f1da);border:1px solid rgba(201,162,39,.5);box-shadow:0 24px 55px rgba(11,43,26,.14);position:relative;transition:transform .25s,box-shadow .25s}
.trio-card:hover{transform:translateY(-6px);box-shadow:0 32px 65px rgba(11,43,26,.2)}
.trio-card::before{content:"";position:absolute;top:0;right:26px;left:26px;height:4px;border-radius:0 0 10px 10px;background:linear-gradient(90deg,transparent,#0f7a3d,#c9a227,#f5b301,#c9a227,transparent);z-index:1}
.trio-head{display:flex;align-items:center;gap:14px;padding:22px 22px 16px;position:relative;background:linear-gradient(180deg,rgba(11,43,26,.06),transparent)}
.trio-tt{min-width:0}
.trio-tt{min-width:0;flex:1}
.trio-head b{font-family:'Noto Serif Bengali',serif;font-size:19px;display:block;line-height:1.4;color:#0b2b1a}
.trio-head small{color:#7a6f52;font-size:12px}
.trio-ic{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#ffd84d;background:linear-gradient(135deg,#071f12,#0f7a3d 70%);border:1px solid rgba(255,216,77,.55);box-shadow:0 10px 22px rgba(11,43,26,.35),inset 0 0 0 2px rgba(255,255,255,.08);flex-shrink:0;position:relative}
.trio-ic::after{content:"";position:absolute;inset:5px;border:1px dashed rgba(255,216,77,.5);border-radius:11px}
.trio-ic .ico{width:28px;height:28px;vertical-align:0}
.trio-line{position:absolute;bottom:0;right:20px;left:20px;height:2px;background:linear-gradient(90deg,transparent,#c9a227,transparent)}
.trio-live{margin-right:auto;font-size:11px;font-weight:800;color:#b91c1c;background:#fee2e2;border:1px solid #fecaca;padding:3px 12px;border-radius:20px;display:flex;align-items:center;gap:6px}
.trio-live i{width:8px;height:8px;border-radius:50%;background:#dc2626;display:inline-block;animation:blink 1.2s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.25}}
.trio-body{padding:10px 14px;display:flex;flex-direction:column;min-height:352px}
.mini-row{display:flex;align-items:center;gap:12px;padding:11px 10px;border-bottom:1px dashed #e0d5b3;border-radius:12px;transition:.2s}
.mini-row:hover{background:#fff;box-shadow:0 8px 20px rgba(11,43,26,.1)}
.mini-row:last-child{border-bottom:none}
.mini-tx b{font-size:14px;display:block}
.mini-tx small{font-size:12px;color:#6b6250}
.mini-tx p{font-size:12px;color:#6b6250;margin-top:2px}
.notice-date.sm{min-width:54px;padding:6px 8px}
.notice-date.sm b{font-size:16px}
.trio-foot{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;font-weight:800;font-size:14px;color:#fff;background:linear-gradient(135deg,#0b2b1a,#0f7a3d);padding:13px;transition:.25s;margin:0 14px 14px;border-radius:12px}
.trio-foot:hover{background:linear-gradient(135deg,#f5b301,#d99a00);color:#221a00}
.notice-trio{border-top:none}
/* নোটিশ: নিচ → উপর অটো স্ক্রল */
.ticker-viewport{height:340px;overflow:hidden;position:relative;margin:6px 12px 0;border-radius:12px;background:linear-gradient(180deg,#fffdf4,#f7f0d4);border:1px solid #e7dcbb;-webkit-mask-image:linear-gradient(180deg,transparent,#000 12px,#000 calc(100% - 12px),transparent);mask-image:linear-gradient(180deg,transparent,#000 12px,#000 calc(100% - 12px),transparent)}
.ticker-col{display:flex;flex-direction:column;animation:riseLoop 26s linear infinite}
.ticker-viewport:hover .ticker-col{animation-play-state:paused}
@keyframes riseLoop{from{transform:translateY(0)}to{transform:translateY(-50%)}}
.tick-item{display:flex;gap:12px;padding:12px 14px;border-bottom:1px dashed #e0d5b3;align-items:flex-start}
@media(max-width:1000px){.trio-grid{grid-template-columns:1fr}.trio-body,.ticker-viewport{min-height:0;height:300px}}
