/* Trust pages (4.10.4): About Us section and one-page Terms. */
.about-us .about-note{margin:1.1em 0;padding:.9em 1.1em;border-left:4px solid var(--c-accent);border-radius:0 12px 12px 0;background:color-mix(in srgb,var(--c-accent) 9%,white);color:var(--c-dark);font-size:.97rem;line-height:1.65}
.about-us .about-cta{display:flex;flex-wrap:wrap;gap:.6em;margin-top:1.2em}
.about-us .about-fb{color:var(--c-dark);border:1px solid color-mix(in srgb,var(--c-dark) 22%,transparent);background:#fff}
.about-offer{margin-top:2.2rem}
.about-h{margin:0 0 .9rem;font-size:1.15rem;color:var(--c-dark)}
.offer-grid{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.offer-grid li{padding:1.1em 1.2em;border-radius:16px;background:#fff;border:1px solid color-mix(in srgb,var(--c-dark) 10%,transparent);box-shadow:0 1px 2px rgba(8,28,38,.05),0 10px 24px -14px rgba(8,28,38,.2)}
.offer-grid strong{display:block;margin-bottom:.3em;color:var(--c-primary)}
.offer-grid span{font-size:.93rem;line-height:1.6;color:color-mix(in srgb,var(--c-text) 80%,white)}
.about-links{display:flex;flex-wrap:wrap;gap:.6em}
.about-links a{padding:.55em 1.1em;border-radius:999px;border:1px solid color-mix(in srgb,var(--c-primary) 35%,white);text-decoration:none;font-weight:600}

.terms-page{font-size:1rem;line-height:1.75}
.terms-date{margin:0 0 1.2rem;font-size:.82rem;opacity:.7}
.terms-key{margin:0 0 1.8rem;padding:1.1em 1.3em;border-radius:16px;background:color-mix(in srgb,var(--c-accent) 10%,white);border:1px solid color-mix(in srgb,var(--c-accent) 35%,white)}
.terms-key h2{margin:0 0 .5em;font-size:1.05rem}
.terms-key ul{margin:0;padding-left:1.2em}
.terms-key li{margin-bottom:.45em}
.terms-list{margin:0;padding:0;list-style:none;counter-reset:t}
.terms-list>li{counter-increment:t;position:relative;padding:0 0 1.1rem 2.6rem;margin-bottom:1rem;border-bottom:1px solid color-mix(in srgb,var(--c-dark) 9%,transparent)}
.terms-list>li::before{content:counter(t);position:absolute;left:0;top:.1em;width:1.9rem;height:1.9rem;border-radius:50%;display:grid;place-items:center;font:700 .85rem var(--f-head,inherit);color:#fff;background:var(--c-primary)}
.terms-list h2{margin:0 0 .3em;font-size:1.08rem;color:var(--c-dark)}
.terms-list p{margin:0}
.terms-accept{margin-top:1.4rem;padding:1em 1.2em;border-radius:14px;background:var(--c-dark);color:#fff}
@media print{.site-header,.dock,.to-top,.progress,.tc-pop{display:none!important}.terms-list>li{break-inside:avoid}}

/* Header and footer brand: keep "Holy Cross Rajshahi" on ONE line */
.brand{flex-shrink:0;min-width:0}
.brand-name,.dock-logo>div{white-space:nowrap}
.brand-name strong,.dock-logo strong{display:block;white-space:nowrap}
@media (max-width:1100px){.brand-name strong{font-size:1.05rem}}
@media (max-width:480px){.brand-name strong{font-size:.92rem}.brand .custom-logo{width:44px;height:44px}}

/* ==========================================================
   Header menu fix (4.10.6): one tidy row, no wrapping.
   Wide screens: compact single-line menu.
   Tablet / small laptop (1101-1239px): the menu button, because
   9 items + 2 buttons cannot fit on one clean line there.
   ========================================================== */
@media (min-width:1240px){
	.site-header .wrap.bar{width:min(1360px,100% - 32px);gap:12px;flex-wrap:nowrap}
	.brand{flex:none}
	.nav{flex:1 1 auto;min-width:0}
	.nav .menu{flex-wrap:nowrap;justify-content:center;gap:0}
	.nav .menu>li{flex:none}
	.nav .menu a{white-space:nowrap;display:inline-flex;align-items:center;gap:.3em;padding:.55em .68em;font-size:.86rem;border-radius:12px}
	.nav .menu-item-has-children>a::after{margin:0 0 0 .3em;flex:none;width:.34em;height:.34em;transform:rotate(45deg) translateY(-1px)}
	.nav .menu li:last-child>a{padding:.6em 1.05em;margin-left:6px;border-radius:999px}
	.nav .menu li:last-child>a::after{margin-left:.4em}
	.hm-acc{flex:none;margin-left:6px}
	.hm-acc-btn{white-space:nowrap;padding:.55em 1em;font-size:.86rem}
}
@media (min-width:1101px) and (max-width:1239px){
	.nav-toggle{display:flex;min-width:46px;min-height:46px}
	.site-header,.site-header.scrolled{background:rgba(7,11,26,.96)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
	.site-header .bar,.site-header.scrolled .bar{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
	.nav{position:fixed;top:var(--hdr-bottom,76px);left:0;right:0;bottom:0;height:auto;z-index:99;background:var(--ink)!important;border-top:1px solid var(--edge);padding:14px 20px calc(40px + env(safe-area-inset-bottom,0px));overflow-y:auto;transform:translateX(100%);transition:transform .3s;visibility:hidden}
	body.admin-bar .nav{top:var(--hdr-bottom,122px)}
	.nav.open{transform:none;visibility:visible}
	.nav .menu{flex-direction:column;align-items:stretch;gap:2px}
	.nav .menu a{display:flex;align-items:center;min-height:46px;padding:1em .4em;font-size:1.05rem;border-bottom:1px solid var(--edge);border-radius:0}
	.nav .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;padding:0 0 0 14px;min-width:0;background:transparent;border:0}
	.nav .menu-item-has-children>a::after{display:none}
	.nav .menu li:last-child>a{margin-top:16px;margin-left:0;border-radius:14px;justify-content:center;border:0}
	.hm-acc{margin-left:auto;margin-right:8px;flex:none}
	.hm-acc-btn{white-space:nowrap}
}
