:root{
 --zc-primary:#101719;--zc-teal:#0b4a50;--zc-teal-deep:#07383d;--zc-accent:#dfffc7;
 --zc-paper:#f6f8f8;--zc-warm:#f8f6f0;--zc-surface:#fff;--zc-text:#64747a;--zc-line:#dce4e6;
 --zc-shell:min(1180px,calc(100% - 48px));--zc-font-ui:"Inter",system-ui,sans-serif;
 --zc-font-heading:"Anek Bangla","Noto Sans Bengali",sans-serif;--zc-font-body:"Noto Sans Bengali",system-ui,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:#fff;color:var(--zc-primary);font-family:var(--zc-font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.zc-main{min-height:58vh}.zc-skip{position:absolute;left:-9999px;top:8px;z-index:2147483647}.zc-skip:focus{left:8px;background:#fff;padding:10px 14px;border:1px solid var(--zc-line);border-radius:8px}
/* Header */
.zc-header{position:-webkit-sticky;position:sticky;top:0;z-index:2147483000;background:rgba(255,255,255,.975);border-bottom:1px solid rgba(220,228,230,.95);backdrop-filter:blur(16px) saturate(125%);transition:box-shadow .2s ease,background .2s ease}.zc-header.is-scrolled{box-shadow:0 6px 22px rgba(10,27,31,.065);background:rgba(255,255,255,.99)}.zc-header-shell{width:var(--zc-shell);height:var(--zc-header-height-desktop,68px);min-height:var(--zc-header-height-desktop,68px);margin:auto;display:flex;align-items:center;gap:20px}.zc-brand{width:var(--zc-logo-desktop,145px);max-width:var(--zc-logo-desktop,145px);height:calc(var(--zc-header-height-desktop,68px) - 16px);display:flex;align-items:center;margin-right:auto;overflow:hidden}.zc-header-logo-link,.zc-wordmark{display:flex;align-items:center;justify-content:flex-start;width:100%;height:100%}.zc-header-logo-image{display:block;width:100%;height:auto;max-height:100%;object-fit:contain;object-position:left center}.zc-wordmark{flex-direction:column;align-items:flex-start;justify-content:center}.zc-wordmark strong{font:800 18px/1 var(--zc-font-ui)}.zc-wordmark small{margin-top:4px;font:700 9px/1 var(--zc-font-ui);letter-spacing:.12em;color:var(--zc-teal)}.zc-desktop-nav{margin-left:auto}.zc-menu,.zc-mobile-menu,.zc-footer-menu{list-style:none;margin:0;padding:0}.zc-menu{display:flex;align-items:center;gap:2px}.zc-menu>li{position:relative}.zc-menu>li>a{display:flex;align-items:center;min-height:40px;padding:0 12px;border-radius:8px;font:600 13px/1.25 var(--zc-font-body);color:#253236;transition:background .16s ease,color .16s ease}.zc-menu>li>a:hover,.zc-menu>li>a:focus-visible,.zc-menu>.current-menu-item>a,.zc-menu>.current-menu-ancestor>a{background:#eef3f4;color:var(--zc-teal);outline:none}.zc-menu .menu-item-has-children>a:after{content:"⌄";margin-left:6px;font-size:11px}.zc-menu .sub-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:240px;padding:7px;list-style:none;background:#fff;border:1px solid var(--zc-line);border-radius:10px;box-shadow:0 16px 44px rgba(9,29,33,.10);opacity:0;visibility:hidden;transform:translateY(6px);transition:.16s ease}.zc-menu li:hover>.sub-menu,.zc-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.zc-menu .sub-menu a{display:block;padding:10px 11px;border-radius:7px;font:600 13px/1.4 var(--zc-font-body)}.zc-menu .sub-menu a:hover{background:#f1f5f5;color:var(--zc-teal)}.zc-header-actions{display:flex;align-items:center;gap:8px}.zc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid transparent;border-radius:9px;font:700 13px/1 var(--zc-font-body);transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.zc-btn:hover{transform:translateY(-1px)}.zc-btn-primary{background:var(--zc-primary);border-color:var(--zc-primary);color:#fff}.zc-btn-primary:hover{background:#1a2427;box-shadow:0 7px 18px rgba(11,20,23,.12)}.zc-btn-outline{background:#fff;border-color:var(--zc-line);color:var(--zc-teal)}.zc-btn-outline:hover{border-color:#b8c9cc;background:#fbfdfd}
/* Mobile navigation — checkbox/CSS drives core open/close, JS only enhances scroll-lock/closing */
.zc-mobile-nav{display:none;position:relative;flex:0 0 42px;width:42px;height:42px}
.zc-mobile-check{position:absolute;inset:0;width:42px;height:42px;margin:0;opacity:0;cursor:pointer;z-index:2147483003;-webkit-tap-highlight-color:transparent}
.zc-toggle{position:absolute;inset:0;display:flex!important;flex-direction:column;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--zc-line);border-radius:9px;background:#fff;pointer-events:none;z-index:2147483002}
.zc-toggle span{display:block;width:18px;height:2px;background:var(--zc-primary);border-radius:4px;margin:2px 0;transition:transform .18s ease,opacity .18s ease}
.zc-mobile-check:focus-visible + .zc-toggle{outline:3px solid rgba(11,74,80,.18);outline-offset:2px;border-color:#aac0c4}
.zc-mobile-check:checked + .zc-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.zc-mobile-check:checked + .zc-toggle span:nth-child(2){opacity:0}
.zc-mobile-check:checked + .zc-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.zc-mobile-panel{display:none;visibility:hidden;opacity:0;pointer-events:none}
.zc-mobile-check:checked ~ .zc-mobile-panel{display:block;visibility:visible;opacity:1;pointer-events:auto;position:fixed;top:var(--zc-header-height-mobile,64px);left:0;right:0;bottom:0;width:100vw;height:calc(100dvh - var(--zc-header-height-mobile,64px));background:#f9fbfb;background:rgba(249,251,251,.997);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--zc-line);z-index:2147482999;overflow:hidden}
.zc-mobile-panel-inner{width:min(100% - 28px,700px);height:100%;margin:auto;padding:14px 0 24px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.zc-mobile-menu>li{border-bottom:1px solid #e8edef}.zc-mobile-menu a{display:flex;align-items:center;min-height:54px;font:700 15px/1.35 var(--zc-font-body)}.zc-mobile-menu .sub-menu{position:static;display:block;list-style:none;margin:-2px 0 9px;padding:0 0 0 16px;border-left:2px solid #e3e9eb}.zc-mobile-menu .sub-menu a{min-height:44px;color:#66757b;font-size:14px}.zc-mobile-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:16px;padding-bottom:18px}
html.zc-menu-open,body.zc-menu-open{overflow:hidden!important;overscroll-behavior:none!important}
/* Modern browsers can lock scroll even if JS optimization is disabled. */
html:has(.zc-mobile-check:checked),body:has(.zc-mobile-check:checked){overflow:hidden!important;overscroll-behavior:none!important}
/* Logged-in WordPress admin bar offsets: keep sticky header and full-screen menu visible. */
body.admin-bar .zc-header{top:32px}
body.admin-bar .zc-mobile-check:checked ~ .zc-mobile-panel{top:calc(32px + var(--zc-header-height-mobile,64px));height:calc(100dvh - 32px - var(--zc-header-height-mobile,64px))}
/* Generic content only — page plugin owns Elementor layouts */
.zc-default-page,.zc-fallback-home{padding:64px 20px}.zc-default-shell,.zc-fallback-shell{width:min(900px,100%);margin:auto}.zc-default-shell{background:#fff;border:1px solid var(--zc-line);border-radius:12px;padding:clamp(22px,4vw,40px)}.zc-default-shell h1,.zc-default-shell h2,.zc-fallback-shell h1{font-family:var(--zc-font-heading);font-weight:600}.zc-fallback-home{background:var(--zc-warm)}.zc-fallback-shell>span{font:700 11px/1 var(--zc-font-body);color:var(--zc-teal)}.zc-fallback-shell h1{font-size:clamp(38px,5vw,54px);line-height:1.12;margin:14px 0}.zc-fallback-shell p{font-size:16px;color:var(--zc-text);max-width:720px}.zc-fallback-shell>div{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.zc-main table{border-collapse:collapse;width:100%}.zc-main table th,.zc-main table td{padding:12px 13px;border-bottom:1px solid var(--zc-line);text-align:left;vertical-align:top}.zc-main table th{font-size:13px;font-weight:700}.zc-main table td{font-size:15px}
/* Footer */
.zc-footer{background:#061f1d;color:#fff}.zc-footer-shell{width:var(--zc-shell);margin:auto;padding:48px 0 24px}.zc-footer-grid{display:grid;grid-template-columns:1.55fr repeat(3,1fr);gap:36px}.zc-footer-brand p{max-width:330px;color:#a7b7b4;font-size:14px;line-height:1.7;margin:15px 0}.zc-footer-logo-link{display:inline-flex;align-items:center;max-width:var(--zc-footer-logo,126px)}.zc-footer-logo-image{display:block;width:var(--zc-footer-logo,126px);height:auto}.zc-footer-wordmark{font:800 14px/1.2 var(--zc-font-ui)}.zc-footer-highlight{display:inline-flex;color:var(--zc-accent);font-weight:700;font-size:13px;transition:transform .16s ease}.zc-footer-highlight:hover{transform:translateX(2px)}.zc-footer h3{font-family:var(--zc-font-heading);font-size:16px;line-height:1.3;font-weight:600;margin:0 0 13px}.zc-footer-menu li+li{margin-top:7px}.zc-footer-menu a{display:inline-block;color:#bac9c6;font-size:14px;line-height:1.5;transition:color .16s ease,transform .16s ease}.zc-footer-menu a:hover{color:#fff;transform:translateX(2px)}.zc-footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:36px;padding-top:18px;border-top:1px solid #24413d;color:#80938f;font-size:12px}.zc-footer-bottom p{margin:0}.zc-404{padding:80px 20px;min-height:55vh;display:grid;place-items:center;background:var(--zc-paper)}.zc-404-shell{width:min(700px,100%);text-align:center;background:#fff;border:1px solid var(--zc-line);border-radius:14px;padding:38px 30px}.zc-404-shell h1{font-family:var(--zc-font-heading);font-size:clamp(32px,4vw,46px);line-height:1.15;font-weight:600}.zc-404-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:22px}
@media(max-width:1020px){:root{--zc-shell:min(100% - 36px,1180px)}.zc-footer-grid{grid-template-columns:1.4fr 1fr 1fr}.zc-footer-grid>.zc-footer-column:last-child{grid-column:2/4}}
@media(max-width:960px){.zc-desktop-nav,.zc-desktop-action{display:none!important}.zc-mobile-nav{display:block}.zc-header-actions{margin-left:auto}.zc-brand{width:var(--zc-logo-tablet,136px);max-width:var(--zc-logo-tablet,136px)}.zc-footer-grid{grid-template-columns:1fr 1fr}.zc-footer-brand{grid-column:1/-1}.zc-footer-grid>.zc-footer-column:last-child{grid-column:auto}}
@media(max-width:767px){:root{--zc-shell:calc(100% - 28px)}.zc-header-shell{height:var(--zc-header-height-mobile,64px);min-height:var(--zc-header-height-mobile,64px);gap:10px}.zc-brand{width:var(--zc-logo-mobile,122px);max-width:var(--zc-logo-mobile,122px);height:calc(var(--zc-header-height-mobile,64px) - 14px)}.zc-footer-shell{padding:40px 0 22px}.zc-footer-grid{grid-template-columns:1fr;gap:26px}.zc-footer-brand{grid-column:auto}.zc-footer-bottom{flex-direction:column;margin-top:28px}.zc-main table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;max-width:100%}.zc-main table th,.zc-main table td{min-width:140px}.zc-fallback-shell>div{display:grid}.zc-fallback-shell .zc-btn{width:100%}}

@media(max-width:782px){body.admin-bar .zc-header{top:46px}body.admin-bar .zc-mobile-check:checked ~ .zc-mobile-panel{top:calc(46px + var(--zc-header-height-mobile,64px));height:calc(100dvh - 46px - var(--zc-header-height-mobile,64px))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
