/* SCHOOLY V2: isolated rebuild for blog,
store,
product,
FAQ,
and preloader. */
.site-preloader .preloader-logo .custom-logo-link { display: inline-flex !important; }
.site-preloader .preloader-logo .custom-logo { width: auto !important; height: 48px !important; max-width: 150px !important; object-fit: contain !important; }
.site-preloader .preloader-bar { width: 88px !important; margin-top: 12px !important; }

/* Unified interactive controls */
.sv2-btn,
.sv2-icon-btn,
.sv2-text-link,
.ecommza-btn,
.ecommza-view-all,
.schooly-product-link,
.shop-widget__btn,
.quickview-add-btn,
.submit-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  position:relative; isolation:isolate; overflow:hidden; display:inline-flex; align-items:center; justify-content:center; gap:10px; border:1px solid transparent; text-decoration:none!important; cursor:pointer; transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease,color .28s ease,background-color .28s ease,border-color .28s ease!important;
}
.sv2-btn::before,
.ecommza-btn::before,
.ecommza-view-all::before,
.schooly-product-link::before,
.shop-widget__btn::before,
.quickview-add-btn::before,
.submit-btn::before,
.woocommerce a.button::before,
.woocommerce button.button::before,
.woocommerce input.button::before {
  content:""; position:absolute; z-index:-1; top:-60%; left:-45%; width:28%; height:220%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent); transform:rotate(20deg); transition:left .65s cubic-bezier(.22,.61,.36,1);
}
.sv2-btn:hover,
.ecommza-btn:hover,
.ecommza-view-all:hover,
.schooly-product-link:hover,
.shop-widget__btn:hover,
.quickview-add-btn:hover,
.submit-btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover { transform:translateY(-3px)!important; box-shadow:0 15px 32px rgba(15,48,112,.18)!important; }
.sv2-btn:hover::before,
.ecommza-btn:hover::before,
.ecommza-view-all:hover::before,
.schooly-product-link:hover::before,
.shop-widget__btn:hover::before,
.quickview-add-btn:hover::before,
.submit-btn:hover::before,
.woocommerce a.button:hover::before,
.woocommerce button.button:hover::before { left:125%; }
.sv2-btn:active,
.sv2-icon-btn:active,
.ecommza-btn:active,
.ecommza-view-all:active,
.schooly-product-link:active,
.woocommerce a.button:active,
.woocommerce button.button:active { transform:translateY(0) scale(.97)!important; box-shadow:none!important; }
.sv2-btn i,
.sv2-text-link i,
.ecommza-btn i,
.ecommza-view-all i,
.schooly-product-link i,
.quickview-add-btn i { transition:transform .28s ease; }
.sv2-btn:hover i,
.sv2-text-link:hover i,
.ecommza-btn:hover i,
.ecommza-view-all:hover i,
.schooly-product-link:hover i,
.quickview-add-btn:hover i { transform:translateX(-4px); }
.sv2-btn { min-height:48px; padding:0 18px; border-radius:14px; font-size:11px; font-weight:900; }
.sv2-btn--primary { background:#2059c9; color:#fff; box-shadow:0 10px 25px rgba(32,89,201,.22); }
.sv2-btn--light { background:#fff; color:#123568; box-shadow:0 12px 28px rgba(0,0,0,.16); }
.sv2-btn--outline { border-color:rgba(255,255,255,.25); background:rgba(255,255,255,.08); color:#fff; backdrop-filter:blur(12px); }
.sv2-icon-btn { width:48px; height:48px; flex:0 0 48px; border-radius:50%; background:#fff; color:#174da9; box-shadow:0 12px 28px rgba(0,0,0,.18); }
.sv2-icon-btn:hover { background:#2059c9; color:#fff; transform:translateY(-3px) rotate(-8deg); box-shadow:0 16px 36px rgba(0,0,0,.24); }
.sv2-text-link { color:#2059c9; font-size:10px; font-weight:900; overflow:visible; }
.sv2-text-link:hover { color:#0d337a; }
.box-icon,
.schooly-global-action,
.schooly-global-search,
.schooly-global-cart,
.schooly-global-menu-toggle,
.scroll-top-btn,
.quickview-close,
.compare-modal__close,
.categories-slider-btn,
.schooly-showcase__arrow {
  transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease,background-color .28s ease,color .28s ease,border-color .28s ease!important;
}
.box-icon:hover,
.schooly-global-action:hover,
.schooly-global-search:hover,
.schooly-global-cart:hover,
.schooly-global-menu-toggle:hover,
.scroll-top-btn:hover,
.quickview-close:hover,
.compare-modal__close:hover,
.categories-slider-btn:hover,
.schooly-showcase__arrow:hover { transform:translateY(-3px) scale(1.04)!important; box-shadow:0 13px 30px rgba(13,35,78,.18)!important; }
.schooly-command-search__tag,
.compare-bar__btn,
.compare-modal__clear,
.schooly-mobile-drawer__search,
.search-submit-btn,
.footer-newsletter button,
.qv-qty-btn {
  transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,color .25s ease,border-color .25s ease!important;
}
.schooly-command-search__tag:hover,
.compare-bar__btn:hover,
.compare-modal__clear:hover,
.schooly-mobile-drawer__search:hover,
.search-submit-btn:hover,
.footer-newsletter button:hover,
.qv-qty-btn:hover {
  transform:translateY(-2px)!important; box-shadow:0 11px 26px rgba(13,35,78,.16)!important;
}
a:focus-visible,
button:focus-visible,
input[type="submit"]:focus-visible { outline:3px solid rgba(64,124,255,.35)!important; outline-offset:3px!important; }

.sv2-home-head { margin-bottom:30px; display:flex; align-items:flex-end; justify-content:space-between; gap:24px; }
.sv2-home-head h2 { margin:9px 0 8px; color:#fff; font-size:clamp(28px,4vw,48px); line-height:1.2; font-weight:900; }
.sv2-home-head p { max-width:650px; margin:0; color:rgba(255,255,255,.65); font-size:13px; line-height:1.8; }
.sv2-home-kicker { display:inline-flex; align-items:center; gap:8px; color:#a9c5ff; font-size:11px; font-weight:900; }

/* Home offers rebuild */
.sv2-home-offers { position:relative; overflow:hidden; padding:78px 0 88px; background:radial-gradient(circle at 5% 5%,rgba(75,132,255,.25),transparent 28%),linear-gradient(135deg,#071a3b,#123b7c); }
.sv2-home-offers::after { content:""; position:absolute; width:420px; height:420px; bottom:-280px; right:-140px; border:1px solid rgba(255,255,255,.1); border-radius:50%; box-shadow:0 0 0 65px rgba(255,255,255,.025),0 0 0 130px rgba(255,255,255,.014); pointer-events:none; }
.sv2-offers-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.35fr .85fr; grid-template-rows:repeat(2,240px); gap:18px; }
.sv2-offer { position:relative; min-width:0; min-height:0; overflow:hidden; isolation:isolate; border:1px solid rgba(255,255,255,.16); border-radius:24px; background:#0c244d; box-shadow:0 20px 55px rgba(0,0,0,.2); transition:transform .45s cubic-bezier(.22,.61,.36,1),box-shadow .45s ease,border-color .35s ease; }
.sv2-offer--lead { grid-row:1/span 2; }
.sv2-offer__media,
.sv2-offer__media img,
.sv2-offer__overlay { position:absolute; inset:0; width:100%; height:100%; }
.sv2-offer__media img { object-fit:cover; transition:transform .75s cubic-bezier(.22,.61,.36,1),filter .4s ease; }
.sv2-offer__overlay { z-index:1; background:linear-gradient(0deg,rgba(3,14,34,.98),rgba(3,14,34,.14) 76%); }
.sv2-offer__content { position:absolute; z-index:2; inset:auto 22px 22px; color:#fff; }
.sv2-offer__discount { min-height:29px; padding:0 10px; display:inline-flex; align-items:center; border:1px solid rgba(255,255,255,.2); border-radius:999px; background:rgba(255,255,255,.12); color:#c5d8ff; font-size:9px; font-weight:900; backdrop-filter:blur(12px); }
.sv2-offer h3 { max-width:540px; margin:11px 0 16px; font-size:clamp(19px,2vw,30px); line-height:1.35; font-weight:900; }
.sv2-offer h3 a { color:#fff; }
.sv2-offer__footer { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.sv2-offer__price { display:flex; align-items:baseline; gap:9px; direction:ltr; }
.sv2-offer__price ins { color:#fff; font-size:21px; font-weight:900; text-decoration:none; }
.sv2-offer__price del { color:rgba(255,255,255,.45); font-size:11px; font-weight:700; }
.sv2-offer:hover { border-color:rgba(255,255,255,.4); transform:translateY(-7px); box-shadow:0 32px 72px rgba(0,0,0,.3); }
.sv2-offer:hover .sv2-offer__media img { transform:scale(1.07); filter:saturate(1.08) contrast(1.04); }

/* Home blog rebuild */
.sv2-home-blog { padding:82px 0 92px; background:#f5f8ff; }
.sv2-home-blog .sv2-home-head h2 { color:#081a39; }
.sv2-home-blog .sv2-home-head p { color:#72809a; }
.sv2-home-blog .sv2-home-kicker { color:#2059c9; }
.sv2-home-blog .sv2-btn--outline { border-color:#dce5f3; background:#fff; color:#174da9; }
.sv2-home-blog-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr); gap:20px; }
.sv2-home-blog-lead { position:relative; min-height:560px; overflow:hidden; isolation:isolate; border-radius:28px; background:#071a3b; box-shadow:0 24px 65px rgba(13,35,78,.16); }
.sv2-home-blog-lead__media,
.sv2-home-blog-lead__media img { position:absolute; inset:0; width:100%; height:100%; }
.sv2-home-blog-lead__media img { object-fit:cover; transition:transform .75s cubic-bezier(.22,.61,.36,1),filter .45s ease; }
.sv2-home-blog-lead::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(4,18,43,.98),rgba(4,18,43,.08) 78%); }
.sv2-home-blog-lead__content { position:absolute; z-index:2; inset:auto 30px 30px; max-width:620px; color:#fff; }
.sv2-home-blog-lead__content>span { color:#a9c5ff; font-size:10px; font-weight:900; }
.sv2-home-blog-lead h3 { margin:10px 0 12px; font-size:clamp(26px,3.4vw,43px); line-height:1.35; font-weight:900; }
.sv2-home-blog-lead h3 a { color:#fff; }
.sv2-home-blog-lead p { margin:0 0 20px; color:rgba(255,255,255,.7); font-size:13px; line-height:1.9; }
.sv2-home-blog-lead:hover .sv2-home-blog-lead__media img { transform:scale(1.06); filter:saturate(1.08); }
.sv2-home-blog-list { display:grid; grid-template-rows:repeat(3,1fr); gap:14px; }
.sv2-home-blog-item { min-width:0; padding:8px; display:grid; grid-template-columns:145px minmax(0,1fr); gap:16px; align-items:center; border:1px solid #e3eaf5; border-radius:19px; background:#fff; box-shadow:0 12px 35px rgba(13,35,78,.06); transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease; }
.sv2-home-blog-item__media { height:100%; min-height:140px; overflow:hidden; border-radius:13px; background:#eaf0fa; }
.sv2-home-blog-item__media img { width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }
.sv2-home-blog-item span { color:#8290a6; font-size:9px; font-weight:800; }
.sv2-home-blog-item h3 { margin:7px 0 12px; font-size:14px; line-height:1.65; font-weight:900; }
.sv2-home-blog-item h3 a { color:#10284e; }
.sv2-home-blog-item:hover { border-color:#bdd0f8; transform:translateY(-5px); box-shadow:0 22px 48px rgba(13,35,78,.12); }
.sv2-home-blog-item:hover .sv2-home-blog-item__media img { transform:scale(1.07); }

/* Unified modern blog archive */
.sv2-archive-hero { position:relative; overflow:hidden; padding:72px 0 62px; background:radial-gradient(circle at 12% 0,rgba(78,137,255,.25),transparent 32%),linear-gradient(135deg,#061832,#123f86); color:#fff; }
.sv2-archive-hero::after { content:""; position:absolute; width:360px; height:360px; top:-250px; left:8%; border:1px solid rgba(255,255,255,.12); border-radius:50%; box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.014); }
.sv2-archive-hero__inner { position:relative; z-index:1; display:flex; align-items:flex-end; justify-content:space-between; gap:30px; }
.sv2-archive-hero h1 { margin:10px 0 12px; color:#fff; font-size:clamp(40px,6vw,72px); line-height:1.08; font-weight:900; }
.sv2-archive-hero p { max-width:680px; margin:0; color:rgba(255,255,255,.68); font-size:14px; line-height:1.9; }
.sv2-archive-hero__count { min-width:142px; padding:20px; border:1px solid rgba(255,255,255,.18); border-radius:20px; background:rgba(255,255,255,.08); backdrop-filter:blur(14px); text-align:center; }
.sv2-archive-hero__count strong,
.sv2-archive-hero__count span { display:block; color:#fff; }
.sv2-archive-hero__count strong { font-size:34px; font-weight:900; }
.sv2-archive-hero__count span { margin-top:4px; font-size:10px; opacity:.66; }
.sv2-archive { padding:40px 0 72px; background:#f5f8ff; }
.sv2-archive-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; align-items:start; }
.sv2-archive-cards .sv2-archive-featured { grid-column:1/-1; margin-bottom:2px; }

/* ── Featured lead card ── */
.sv2-archive-featured { overflow:hidden; display:grid; grid-template-columns:minmax(300px,44%) minmax(0,1fr); height:320px; border:1px solid #dce6f4; border-radius:20px; background:#fff; box-shadow:0 12px 40px rgba(13,35,78,.08); transition:box-shadow .3s ease,border-color .3s ease,transform .3s ease; }
.sv2-archive-featured:hover { border-color:#b8ccf0; box-shadow:0 18px 48px rgba(13,35,78,.12); transform:translateY(-2px); }
.sv2-archive-featured__media { display:block; height:100%; overflow:hidden; background:#eaf0fa; }
.sv2-archive-featured__media img { width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.sv2-archive-featured:hover .sv2-archive-featured__media img { transform:scale(1.05); }
.sv2-archive-featured__content { min-width:0; height:100%; padding:26px 30px; display:flex; flex-direction:column; justify-content:space-between; gap:16px; overflow:hidden; }
.sv2-archive-featured__main { min-width:0; }
.sv2-archive-featured__top { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.sv2-archive-featured__top>a,
.sv2-archive-featured__badge { min-height:28px; padding:0 11px; display:inline-flex; align-items:center; gap:6px; border-radius:999px; background:#edf3ff; color:#2059c9; font-size:11px; font-weight:800; }
.sv2-archive-featured__badge { background:#2059c9; color:#fff; }
.sv2-archive-featured h2 { margin:14px 0 10px; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-clamp:2; color:#081a39; font-size:clamp(21px,2.2vw,28px); line-height:1.4; font-weight:900; }
.sv2-archive-featured h2 a { color:inherit; transition:color .2s ease; }
.sv2-archive-featured h2 a:hover { color:#2059c9; }
.sv2-archive-featured p { margin:0; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; line-clamp:3; color:#667892; font-size:14px; line-height:1.75; }
.sv2-archive-featured__footer { flex-shrink:0; padding-top:16px; display:flex; align-items:center; justify-content:space-between; gap:14px; border-top:1px solid #e8edf5; }
.sv2-archive-featured__footer>div { display:flex; flex-wrap:wrap; gap:12px; color:#8491a6; font-size:11px; font-weight:700; }
.sv2-archive-featured__footer span { display:inline-flex; align-items:center; gap:5px; }
.sv2-archive-featured .sv2-btn { min-height:42px; padding:0 16px; border-radius:12px; font-size:12px; white-space:nowrap; }

/* ── Standard archive cards ── */
.sv2-archive-card { min-width:0; overflow:hidden; display:flex; flex-direction:column; border:1px solid #dce6f4; border-radius:18px; background:#fff; box-shadow:0 8px 26px rgba(13,35,78,.06); transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease; }
.sv2-archive-card__media { position:relative; display:block; height:188px; overflow:hidden; background:#eaf0fa; }
.sv2-archive-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.sv2-archive-card__media>span { position:absolute; top:12px; right:12px; padding:6px 10px; border-radius:999px; background:rgba(255,255,255,.95); color:#174da9; font-size:10px; font-weight:800; backdrop-filter:blur(8px); box-shadow:0 2px 8px rgba(13,35,78,.08); }
.sv2-archive-card__body { padding:16px 18px 18px; display:flex; flex-direction:column; gap:0; }
.sv2-archive-card__meta { display:flex; flex-wrap:wrap; gap:10px; color:#8491a6; font-size:11px; font-weight:700; }
.sv2-archive-card__meta span { display:inline-flex; align-items:center; gap:5px; }
.sv2-archive-card h3 { margin:10px 0 8px; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-clamp:2; color:#10284e; font-size:16px; line-height:1.55; font-weight:900; }
.sv2-archive-card h3 a { color:inherit; transition:color .2s ease; }
.sv2-archive-card h3 a:hover { color:#2059c9; }
.sv2-archive-card p { margin:0; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-clamp:2; color:#75849b; font-size:13px; line-height:1.7; }
.sv2-archive-card .sv2-text-link { margin-top:14px; padding-top:14px; border-top:1px solid #edf1f7; font-size:12px; font-weight:800; color:#2059c9; }
.sv2-archive-card:hover { border-color:#b8ccf0; transform:translateY(-4px); box-shadow:0 16px 38px rgba(13,35,78,.11); }
.sv2-archive-card:hover .sv2-archive-card__media img { transform:scale(1.05); }
.sv2-archive-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:24px; align-items:start; }
.sv2-archive-main { min-width:0; }
.sv2-archive-section-head { min-height:60px; margin-bottom:18px; display:flex; align-items:flex-end; justify-content:space-between; }
.sv2-archive-section-head span { color:#2059c9; font-size:9px; font-weight:900; }
.sv2-archive-section-head h2 { margin:5px 0 0; color:#081a39; font-size:27px; font-weight:900; }
.sv2-archive-sidebar { position:sticky; top:105px; display:grid; gap:18px; }
.sv2-side-panel { padding:20px; border:1px solid #e2e9f4; border-radius:20px; background:#fff; box-shadow:0 12px 34px rgba(13,35,78,.06); }
.sv2-side-panel__head { margin-bottom:14px; padding-bottom:13px; display:flex; align-items:center; gap:9px; border-bottom:1px solid #e8edf5; }
.sv2-side-panel__head i { width:32px; height:32px; display:grid; place-items:center; border-radius:10px; background:#edf3ff; color:#2059c9; }
.sv2-side-panel__head h2 { margin:0; color:#10284e; font-size:14px; font-weight:900; }
.sv2-most-viewed { display:grid; }
.sv2-most-viewed article { padding:12px 0; display:grid; grid-template-columns:30px minmax(0,1fr); gap:11px; border-bottom:1px solid #edf1f7; }
.sv2-most-viewed article:last-child { padding-bottom:0; border-bottom:0; }
.sv2-most-viewed strong { width:28px; height:28px; display:grid; place-items:center; border-radius:9px; background:#edf3ff; color:#2059c9; font-size:9px; font-weight:900; }
.sv2-most-viewed h3 { margin:0 0 5px; font-size:11px; line-height:1.65; font-weight:900; }
.sv2-most-viewed h3 a { color:#1a335b; }
.sv2-most-viewed span { color:#8a96a9; font-size:8px; font-weight:800; }
.sv2-side-categories { display:grid; gap:6px; }
.sv2-side-categories a { min-height:42px; padding:0 10px; display:flex; align-items:center; justify-content:space-between; gap:10px; border-radius:11px; background:#f7f9fd; color:#29466f; font-size:10px; font-weight:900; transition:.25s ease; }
.sv2-side-categories b { min-width:24px; height:24px; display:grid; place-items:center; border-radius:50%; background:#fff; color:#2059c9; font-size:8px; }
.sv2-side-categories a:hover { background:#2059c9; color:#fff; transform:translateX(-3px); }
.sv2-side-guide { padding:24px; overflow:hidden; position:relative; border-radius:21px; background:radial-gradient(circle at 15% 10%,rgba(89,146,255,.35),transparent 35%),linear-gradient(145deg,#071a3b,#174da9); color:#fff; box-shadow:0 18px 45px rgba(13,35,78,.18); }
.sv2-side-guide>i { width:44px; height:44px; margin-bottom:17px; display:grid; place-items:center; border-radius:13px; background:rgba(255,255,255,.12); color:#fff; font-size:18px; }
.sv2-side-guide>span { color:#aec8ff; font-size:9px; font-weight:900; }
.sv2-side-guide h2 { margin:7px 0 9px; color:#fff; font-size:19px; line-height:1.5; font-weight:900; }
.sv2-side-guide p { margin:0 0 18px; color:rgba(255,255,255,.67); font-size:10px; line-height:1.8; }
.sv2-side-guide .sv2-btn { width:100%; }

.sv2-hero { padding: 74px 0 64px; overflow: hidden; background: radial-gradient(circle at 15% 10%, rgba(73,125,255,.24), transparent 35%), linear-gradient(135deg,#071a3b,#143d82); color:#fff; }
.sv2-hero__inner { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:30px; }
.sv2-eyebrow { display:inline-flex; align-items:center; gap:8px; color:#a9c5ff; font-size:12px; font-weight:900; }
.sv2-hero h1 { margin:12px 0 14px; color:#fff; font-size:clamp(38px,6vw,76px); line-height:1.05; font-weight:900; }
.sv2-hero p { max-width:660px; margin:0; color:rgba(255,255,255,.72); font-size:15px; line-height:1.9; }
.sv2-hero__stat { min-width:140px; padding:20px; border:1px solid rgba(255,255,255,.18); border-radius:22px; background:rgba(255,255,255,.08); backdrop-filter:blur(16px); text-align:center; }
.sv2-hero__stat strong,
.sv2-hero__stat span { display:block; color:#fff; }
.sv2-hero__stat strong { font-size:34px; }
.sv2-hero__stat span { margin-top:5px; font-size:11px; opacity:.68; }

/* ── Store / School Profile Page ─────────────────────────────────────────────── */
.sv2-store-profile {
  position:relative;
  min-height:300px;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  background:linear-gradient(135deg,#062c1c 0%,#104d35 100%);
}
.sv2-store-profile::before {
  content:'';
  position:absolute;
  inset:-20px;
  background-image:var(--sv2-banner,none);
  background-size:cover;
  background-position:center;
  filter:blur(7px) brightness(.38) saturate(1.2);
  transition:opacity .4s;
}
.sv2-store-profile__overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(5,25,16,.85) 0%,rgba(5,25,16,.2) 70%);
}
.sv2-store-profile__inner {
  position:relative;
  z-index:1;
  display:flex;
  align-items:flex-end;
  gap:28px;
  padding-top:56px;
  padding-bottom:40px;
}
.sv2-store-profile__logo {
  flex-shrink:0;
  width:104px;
  height:104px;
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  border:3px solid rgba(255,255,255,.22);
  box-shadow:0 12px 40px rgba(0,0,0,.35);
  display:flex;
  align-items:center;
  justify-content:center;
}
.sv2-store-profile__logo img { width:100%; height:100%; object-fit:contain; padding:6px; }
.sv2-store-profile__meta { flex:1; color:#fff; }
.sv2-store-profile__breadcrumb {
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  color:rgba(255,255,255,.6);
  margin-bottom:10px;
}
.sv2-store-profile__breadcrumb a { color:rgba(255,255,255,.6); text-decoration:none; }
.sv2-store-profile__breadcrumb a:hover { color:#fff; }
.sv2-store-profile__breadcrumb i { font-size:10px; }
.sv2-store-profile__title-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:6px;
}
.sv2-store-profile__name {
  margin:0;
  font-size:clamp(22px,3.5vw,38px);
  font-weight:900;
  color:#fff;
  line-height:1.15;
  text-shadow:0 3px 12px rgba(0,0,0,.4);
}
.sv2-store-profile__whatsapp {
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  gap:7px;
  background:#25D366;
  color:#fff;
  font-size:.875rem;
  font-weight:700;
  padding:10px 20px;
  border-radius:12px;
  text-decoration:none;
  transition:background .22s,transform .22s,box-shadow .22s;
  box-shadow:0 4px 18px rgba(37,211,102,.35);
}
.sv2-store-profile__whatsapp:hover { background:#1ebe5a; transform:translateY(-2px); box-shadow:0 8px 24px rgba(37,211,102,.45); color:#fff; }
.sv2-store-profile__whatsapp i { font-size:1.1rem; }
.sv2-store-profile__address {
  display:flex;
  align-items:center;
  gap:7px;
  margin:6px 0 12px;
  font-size:.875rem;
  color:rgba(255,255,255,.72);
}
.sv2-store-profile__address i { color:rgba(255,255,255,.55); font-size:.8rem; }
.sv2-store-profile__desc {
  margin:0 0 20px;
  font-size:.925rem;
  color:rgba(255,255,255,.8);
  max-width:560px;
  line-height:1.7;
}
.sv2-store-profile__stats { display:flex; gap:10px; flex-wrap:wrap; }
.sv2-store-profile__stat {
  display:flex;
  align-items:center;
  gap:7px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.2);
  backdrop-filter:blur(10px);
  border-radius:12px;
  padding:9px 18px;
}
.sv2-store-profile__stat strong { font-size:1.15rem; font-weight:900; color:#fff; }
.sv2-store-profile__stat span { font-size:.8rem; color:rgba(255,255,255,.75); }
@media(max-width:640px) {
  .sv2-store-profile__inner { flex-direction:column; align-items:flex-start; gap:16px; padding-top:36px; padding-bottom:28px; }
  .sv2-store-profile__logo { width:80px; height:80px; border-radius:14px; }
  .sv2-store-profile__name { font-size:1.35rem; }
  .sv2-store-profile__whatsapp { padding:8px 14px; font-size:.8rem; }
  .sv2-store-profile__title-row { gap:10px; }
}

.sv2-blog { padding:56px 0 86px; background:#f5f8ff; }
.sv2-blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.sv2-article { min-width:0; overflow:hidden; display:flex; flex-direction:column; border:1px solid #e4eaf5; border-radius:24px; background:#fff; box-shadow:0 14px 42px rgba(13,35,78,.07); transition:.35s ease; }
.sv2-article:hover { transform:translateY(-7px); box-shadow:0 26px 60px rgba(13,35,78,.15); }
.sv2-article--lead { grid-column:span 2; display:grid; grid-template-columns:1.1fr .9fr; }
.sv2-article__media { position:relative; min-height:240px; overflow:hidden; background:#eaf0fa; }
.sv2-article__media img { width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.sv2-article:hover .sv2-article__media img { transform:scale(1.05); }
.sv2-article__tag { position:absolute; top:16px; right:16px; padding:7px 11px; border-radius:999px; background:#fff; color:#16459b; font-size:10px; font-weight:900; }
.sv2-article__body { min-width:0; padding:24px; display:flex; flex:1; flex-direction:column; }
.sv2-article__meta { display:flex; flex-wrap:wrap; gap:12px; color:#72809a; font-size:10px; font-weight:800; }
.sv2-article h2,
.sv2-article h3 { margin:14px 0 10px; color:#081a39; font-size:20px; line-height:1.45; font-weight:900; }
.sv2-article--lead h2 { font-size:clamp(25px,3vw,38px); }
.sv2-article h2 a,
.sv2-article h3 a { color:inherit; }
.sv2-article p { margin:0 0 18px; color:#72809a; font-size:13px; line-height:1.9; }
.sv2-link { margin-top:auto; display:inline-flex; align-items:center; gap:9px; color:#2059c9; font-size:11px; font-weight:900; }
.sv2-topics { margin-bottom:28px; display:flex; flex-wrap:wrap; gap:8px; }
.sv2-topics a { padding:9px 13px; border:1px solid #dfe7f4; border-radius:999px; background:#fff; color:#23416f; font-size:10px; font-weight:900; }
.sv2-topics a:hover { border-color:#2059c9; background:#2059c9; color:#fff; }

body.woocommerce-shop .schooly-shop-page,
body.tax-product_cat .schooly-shop-page { padding:48px 0 90px !important; background:#f5f8ff !important; }
body.woocommerce-shop .wc-page-header,
body.tax-product_cat .wc-page-header { width:min(calc(100% - 32px),1320px) !important; margin:22px auto 0 !important; border-radius:28px !important; background:linear-gradient(135deg,#071a3b,#2059c9) !important; }
.shop-layout.row { --bs-gutter-x:28px; }
.shop-sidebar__inner { border:0 !important; border-radius:22px !important; box-shadow:0 14px 40px rgba(13,35,78,.08) !important; }
.shop-toolbar { min-height:70px !important; padding:12px 16px !important; border:0 !important; border-radius:18px !important; box-shadow:0 10px 30px rgba(13,35,78,.07) !important; }
.shop-products-wrapper ul.products.row { margin-inline:-9px !important; row-gap:18px !important; }
.shop-products-wrapper ul.products.row>li.product { padding-inline:9px !important; margin:0 0 18px !important; }
.schooly-product-card { overflow:hidden !important; border:1px solid #e4eaf5 !important; border-radius:20px !important; background:#fff !important; box-shadow:0 12px 34px rgba(13,35,78,.07) !important; }
.schooly-product-card:hover { transform:translateY(-6px) !important; box-shadow:0 24px 56px rgba(13,35,78,.15) !important; }
.schooly-product-card__image { aspect-ratio:4/4.7 !important; margin:7px 7px 0 !important; border-radius:15px !important; }
.schooly-product-card__body { padding:17px !important; }
.schooly-product-card h3 { min-height:48px !important; font-size:14px !important; line-height:1.7 !important; }
.schooly-product-link { width:100%; min-height:42px; justify-content:center; border-radius:12px; background:#edf3ff; color:#174da9; }
.schooly-product-link:hover { background:#174da9; color:#fff; }
.sv2-shop { background:#f5f8ff !important; }
.sv2-shop-cats { margin-bottom:22px; padding-bottom:8px; display:flex; gap:9px; overflow-x:auto; scrollbar-width:none; }
.sv2-shop-cats a { flex:0 0 auto; min-height:44px; padding:0 15px; display:inline-flex; align-items:center; gap:8px; border:1px solid #dfe7f4; border-radius:999px; background:#fff; color:#29466f; font-size:11px; font-weight:900; }
.sv2-shop-cats a span { min-width:22px; height:22px; display:grid; place-items:center; border-radius:50%; background:#edf3ff; color:#2059c9; font-size:9px; }
.sv2-shop-cats a:hover,
.sv2-shop-cats a.is-active { border-color:#2059c9; background:#2059c9; color:#fff; }
.sv2-shop-cats a:hover span,
.sv2-shop-cats a.is-active span { background:rgba(255,255,255,.18); color:#fff; }
.sv2-shop-toolbar { min-height:70px; margin-bottom:24px; padding:12px 16px; display:flex; align-items:center; justify-content:space-between; gap:16px; border:1px solid #e3eaf5; border-radius:18px; background:#fff; box-shadow:0 10px 30px rgba(13,35,78,.06); }
.sv2-shop-toolbar .woocommerce-result-count,
.sv2-shop-toolbar .woocommerce-ordering { float:none !important; margin:0 !important; }
.sv2-shop-products ul.products.row>li.product { flex:0 0 25% !important; width:25% !important; max-width:25% !important; }


.sv2-faq { padding:60px 0 90px; background:#f5f8ff; }
.sv2-faq-shell { padding:28px; border:1px solid #e3eaf5; border-radius:28px; background:#fff; box-shadow:0 20px 60px rgba(13,35,78,.08); }
.sv2-faq-tools { display:grid; grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr); gap:16px; margin-bottom:30px; }
.sv2-faq-search { position:relative; }
.sv2-faq-search i { position:absolute; top:50%; right:17px; transform:translateY(-50%); color:#6f7f99; }
.sv2-faq-search input { width:100%; min-height:52px; padding:0 48px 0 16px; border:1px solid #dfe7f4; border-radius:15px; background:#f8faff; }
.sv2-faq-tabs { display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; }
.sv2-faq-tab { flex:0 0 auto; min-height:52px; padding:0 18px; border:1px solid #dfe7f4; border-radius:15px; background:#fff; color:#29466f; font-size:11px; font-weight:900; }
.sv2-faq-tab:hover,
.sv2-faq-tab.is-active { border-color:#2059c9; background:#2059c9; color:#fff; transform:none; }
.sv2-faq-results { min-height:280px; transition:opacity .3s ease,transform .38s cubic-bezier(.22,.61,.36,1); }
.sv2-faq-results.is-loading { pointer-events:none; }
.sv2-faq-results.is-entering { animation:sv2FaqResultsIn .42s cubic-bezier(.22,.61,.36,1) both; }
.sv2-faq-group+.sv2-faq-group { margin-top:32px; }
.sv2-faq-group__head { margin-bottom:14px; display:flex; align-items:center; gap:10px; }
.sv2-faq-group__head span { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:#eaf1ff; color:#2059c9; font-size:11px; font-weight:900; }
.sv2-faq-group__head h2 { margin:0; color:#081a39; font-size:20px; font-weight:900; }
.sv2-faq-list { display:grid; gap:10px; }
.sv2-faq-item { overflow:hidden; border:1px solid #e3eaf5; border-radius:16px; background:#fff; transition:border-color .32s ease,box-shadow .32s ease,transform .32s cubic-bezier(.22,.61,.36,1),background-color .32s ease; }
.sv2-faq-item:hover { border-color:#cbdaf5; transform:translateY(-2px); }
.sv2-faq-item.is-open { border-color:#b9cdf8; box-shadow:0 12px 30px rgba(32,89,201,.09); }
.sv2-faq-question { width:100%; min-height:66px; padding:14px 18px; display:flex; align-items:center; justify-content:space-between; gap:16px; border:0; background:transparent; color:#10284e; text-align:right; font-size:14px; font-weight:900; transform:none !important; transition:color .3s ease,background-color .3s ease!important; }
.sv2-faq-question:hover { color:#174da9; background:#f8faff; }
.sv2-faq-question i { width:32px; height:32px; display:grid; place-items:center; flex:0 0 32px; border-radius:50%; background:#eef3fc; color:#2059c9; transition:transform .38s cubic-bezier(.22,.61,.36,1),background-color .3s ease,color .3s ease,box-shadow .3s ease; }
.sv2-faq-item.is-open .sv2-faq-question i { transform:rotate(45deg); background:#2059c9; color:#fff; }
.sv2-faq-answer { display:block; height:0; overflow:hidden; padding:0 18px; color:#697a95; font-size:13px; line-height:1.9; opacity:0; transform:translateY(-8px); transition:height .42s cubic-bezier(.22,.61,.36,1),opacity .28s ease,transform .38s cubic-bezier(.22,.61,.36,1),padding-bottom .38s ease; will-change:height; }
.sv2-faq-answer p:first-child { margin-top:0; }
.sv2-faq-answer p:last-child { margin-bottom:0; }
.sv2-faq-item.is-open .sv2-faq-answer { padding-bottom:20px; opacity:1; transform:translateY(0); }
.sv2-faq-empty { padding:60px 20px; text-align:center; color:#697a95; }
.sv2-faq-empty i { font-size:38px; color:#2059c9; }

/* FAQ AJAX content skeleton */
.sv2-faq-skeleton { display:grid; gap:15px; }
.sv2-faq-skeleton__heading { width:min(260px,70%); height:34px; margin-top:8px; display:flex; align-items:center; gap:10px; }
.sv2-faq-skeleton__heading--short { width:min(210px,58%); margin-top:18px; }
.sv2-faq-skeleton__heading i,
.sv2-faq-skeleton__heading b,
.sv2-faq-skeleton__item i,
.sv2-faq-skeleton__item b {
  position:relative; overflow:hidden; display:block; border-radius:999px; background:#eef3f2;
}
.sv2-faq-skeleton__heading i { width:34px; height:34px; flex:0 0 34px; border-radius:10px; }
.sv2-faq-skeleton__heading b { width:170px; height:14px; }
.sv2-faq-skeleton__list { display:grid; gap:10px; }
.sv2-faq-skeleton__item { min-height:66px; padding:14px 18px; display:flex; align-items:center; justify-content:space-between; gap:18px; border:1px solid #edf2f2; border-radius:16px; background:#fff; }
.sv2-faq-skeleton__item i { width:var(--skeleton-width,75%); height:13px; }
.sv2-faq-skeleton__item b { width:32px; height:32px; flex:0 0 32px; border-radius:50%; }
.sv2-faq-skeleton__heading i::after,
.sv2-faq-skeleton__heading b::after,
.sv2-faq-skeleton__item i::after,
.sv2-faq-skeleton__item b::after {
  content:""; position:absolute; inset:0; transform:translateX(110%); background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),transparent); animation:sv2SkeletonShimmer 1.25s ease-in-out infinite;
}
@keyframes sv2SkeletonShimmer { to { transform:translateX(-110%); } }
@keyframes sv2FaqResultsIn { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }

@media(max-width:1199px){.sv2-shop-products ul.products.row>li.product {flex-basis:33.333%!important;width:33.333%!important;max-width:33.333%!important}.sv2-home-blog-grid {grid-template-columns:minmax(0,1fr) minmax(320px,.8fr)}.sv2-home-blog-item {grid-template-columns:115px minmax(0,1fr)}.sv2-archive-layout {grid-template-columns:minmax(0,1fr) 290px}}
@media(max-width:991px){.sv2-blog-grid {grid-template-columns:repeat(2,minmax(0,1fr))}.sv2-article--lead {grid-column:1/-1}.sv2-faq-tools {grid-template-columns:1fr}.sv2-shop-products ul.products.row>li.product {flex-basis:50%!important;width:50%!important;max-width:50%!important}.sv2-offers-grid {grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:420px 330px}.sv2-offer--lead {grid-column:1/-1;grid-row:auto}.sv2-home-blog-grid {grid-template-columns:1fr}.sv2-home-blog-list {grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto}.sv2-home-blog-item {display:flex;flex-direction:column;align-items:stretch}.sv2-home-blog-item__media {height:170px}.sv2-archive-featured {height:280px;grid-template-columns:1fr 1fr}.sv2-archive-featured__media {height:100%}.sv2-archive-layout {grid-template-columns:1fr}.sv2-archive-sidebar {position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.sv2-side-guide {grid-column:1/-1}}
@media(max-width:767px){.sv2-hero {padding:48px 0}.sv2-hero__inner {grid-template-columns:1fr}.sv2-hero__stat {display:none}.sv2-blog-grid {grid-template-columns:1fr}.sv2-article--lead {display:flex;grid-column:auto}.sv2-faq-shell {padding:16px;border-radius:20px}.sv2-faq-tabs {margin-inline:-16px;padding-inline:16px}.sv2-faq-tab {min-height:46px;padding:0 14px}.sv2-shop-toolbar {align-items:stretch;flex-direction:column}.sv2-shop-toolbar .woocommerce-ordering,
.sv2-shop-toolbar select {width:100%!important}.sv2-home-head {align-items:flex-start;flex-direction:column}.sv2-home-head p {display:none}.sv2-home-offers,
.sv2-home-blog {padding:56px 0 64px}.sv2-offers-grid {grid-template-columns:1fr;grid-template-rows:none}.sv2-offer,
.sv2-offer--lead {height:360px;grid-column:auto}.sv2-home-blog-lead {min-height:500px;border-radius:22px}.sv2-home-blog-lead__content {inset:auto 20px 20px}.sv2-home-blog-list {grid-template-columns:1fr}.sv2-home-blog-item {display:grid;grid-template-columns:120px minmax(0,1fr)}.sv2-home-blog-item__media {height:135px}.sv2-btn {min-height:44px}.sv2-archive-hero {padding:52px 0}.sv2-archive-hero__inner {align-items:flex-start;flex-direction:column}.sv2-archive-hero__count {display:none}.sv2-archive {padding:24px 0 60px}.sv2-archive-featured {height:auto;grid-template-columns:1fr;border-radius:16px}.sv2-archive-featured__content {padding:20px 18px;gap:14px}.sv2-archive-featured__media {height:210px}.sv2-archive-featured__footer {align-items:flex-start;flex-direction:column;gap:12px}.sv2-archive-cards {grid-template-columns:1fr;gap:14px}.sv2-archive-card {border-radius:16px}.sv2-archive-card__media {height:200px}.sv2-archive-sidebar {grid-template-columns:1fr}.sv2-side-guide {grid-column:auto}}
@media(max-width:480px){.sv2-shop-products ul.products.row>li.product {flex-basis:100%!important;width:100%!important;max-width:100%!important}}

/* ============================================================
   Unified typography and price scale
============================================================ */
:root {
  --sv2-text-xs: 11px;
  --sv2-text-sm: 13px;
  --sv2-text-md: 15px;
  --sv2-text-lg: 18px;
  --sv2-title-sm: 20px;
  --sv2-title-md: 30px;
  --sv2-title-lg: 46px;
}

body {
  font-family: "Tajawal", "Cairo", Arial, sans-serif !important;
  font-size: var(--sv2-text-md) !important;
  line-height: 1.8 !important;
}

p,
li,
label,
input,
select,
textarea {
  font-size: var(--sv2-text-sm);
}

.sv2-home-head h2,
.ecommza-section-head h2 {
  font-size: clamp(28px, 3vw, 42px) !important;
  line-height: 1.3 !important;
}

.sv2-hero h1,
.sv2-archive-hero h1,
.schooly-unified-breadcrumb__title,
.schooly-showcase__title {
  font-size: clamp(38px, 5vw, 64px) !important;
  line-height: 1.15 !important;
}

.sv2-home-blog-lead h3,
.sv2-archive-featured h2 {
  font-size: clamp(21px, 2.2vw, 28px) !important;
  line-height: 1.4 !important;
}

.sv2-offer h3,
.sv2-archive-section-head h2,
.sv2-faq-group__head h2 {
  font-size: clamp(21px, 2vw, 29px) !important;
  line-height: 1.45 !important;
}

.schooly-product-card h3,
.sv2-archive-card h3,
.sv2-home-blog-item h3,
.ecommza-blog-card h2,
.ecommza-blog-card h3 {
  font-size: 16px !important;
  line-height: 1.55 !important;
}

.sv2-home-head p,
.sv2-hero p,
.sv2-archive-hero p,
.sv2-archive-featured p,
.sv2-home-blog-lead p,
.sv2-article p,
.sv2-faq-answer,
.schooly-single-post__content {
  font-size: 14px !important;
}

.sv2-home-kicker,
.sv2-eyebrow,
.schooly-section-kicker,
.schooly-product-card__meta,
.sv2-article__meta,
.sv2-archive-card__meta,
.sv2-archive-featured__footer > div,
.sv2-home-blog-item span,
.sv2-most-viewed span,
.schooly-single-post__meta {
  font-size: var(--sv2-text-xs) !important;
  line-height: 1.55 !important;
}

.sv2-btn,
.ecommza-btn,
.ecommza-view-all,
.schooly-product-link,
.shop-widget__btn,
.quickview-add-btn,
.submit-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  font-size: var(--sv2-text-sm) !important;
}

.schooly-global-menu > li > a,
.schooly-global-menu .sub-menu a,
.schooly-global-search,
.schooly-global-action,
.schooly-global-cart__text strong {
  font-size: 13px !important;
}

.schooly-global-header__message,
.schooly-global-header__contacts,
.schooly-global-cart__text small {
  font-size: var(--sv2-text-xs) !important;
}

.sv2-most-viewed h3,
.sv2-side-categories a,
.sv2-side-guide p,
.schooly-post-toc a,
.schooly-post-most-viewed article a {
  font-size: 12px !important;
}

.sv2-side-panel__head h2,
.sv2-side-guide h2 {
  font-size: 16px !important;
}

/* Prices: current value is dominant,
old value stays readable. */
.schooly-product-card__price {
  min-height: 36px;
  display: flex !important;
  align-items: baseline !important;
  flex-wrap: wrap;
  gap: 8px;
  color: #174da9 !important;
  font-size: 22px !important;
  line-height: 1.3 !important;
  font-weight: 900 !important;
}

.schooly-product-card__price > .woocommerce-Price-amount,
.schooly-product-card__price ins,
.schooly-product-card__price ins .woocommerce-Price-amount {
  color: #174da9 !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

.schooly-product-card__price del,
.schooly-product-card__price del .woocommerce-Price-amount {
  color: #8a96aa !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  opacity: 1 !important;
}

.sv2-offer__price ins,
.sv2-offer__price ins .woocommerce-Price-amount {
  font-size: 27px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}

.sv2-offer__price del,
.sv2-offer__price del .woocommerce-Price-amount {
  font-size: 16px !important;
  font-weight: 700 !important;
  opacity: .72 !important;
}

.schooly-showcase__price,
.schooly-showcase__price > .woocommerce-Price-amount,
.schooly-showcase__price ins,
.schooly-showcase__price ins .woocommerce-Price-amount {
  font-size: 28px !important;
  font-weight: 900 !important;
}

.schooly-showcase__price del,
.schooly-showcase__price del .woocommerce-Price-amount {
  font-size: 18px !important;
  font-weight: 700 !important;
}


.quickview-price,
.quickview-price > .woocommerce-Price-amount,
.quickview-price ins,
.quickview-price ins .woocommerce-Price-amount {
  font-size: 21px !important;
  font-weight: 900 !important;
}

.quickview-price del,
.quickview-price del .woocommerce-Price-amount {
  font-size: 14px !important;
  font-weight: 700 !important;
  opacity: .75 !important;
}

@media (max-width: 767px) {
  body { font-size: 14px !important; }
  .sv2-hero h1,
.sv2-archive-hero h1,
.schooly-unified-breadcrumb__title,
.schooly-showcase__title { font-size: clamp(32px, 10vw, 44px) !important; }
  .sv2-home-head h2,
.ecommza-section-head h2 { font-size: 27px !important; }
  .schooly-product-card__price { font-size: 20px !important; }

}

/* Normalize the remaining compact labels and secondary commerce prices. */
.sv2-text-link,
.sv2-offer__discount,
.sv2-home-blog-lead__content > span,
.sv2-archive-hero__count span,
.sv2-archive-featured__top > a,
.sv2-archive-featured__badge,
.sv2-archive-section-head span,
.sv2-archive-card__media > span,
.sv2-most-viewed strong,
.sv2-side-categories b,
.sv2-side-guide > span,
.sv2-article__tag,
.sv2-topics a,
.sv2-shop-cats a span {
  font-size: var(--sv2-text-xs) !important;
  line-height: 1.45 !important;
}


.cs-related-card__price,
.schooly-command-result__price,
.compare-bar-item__price,
.compare-modal-price,
.hero-slide__price {
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
}

.cs-related-card__price ins,
.schooly-command-result__price ins,
.compare-bar-item__price ins,
.compare-modal-price ins,
.hero-slide__price ins {
  font-size: inherit !important;
  font-weight: inherit !important;
  text-decoration: none !important;
}

.cs-related-card__price del,
.schooly-command-result__price del,
.compare-bar-item__price del,
.compare-modal-price del,
.hero-slide__price del {
  font-size: 13px !important;
  font-weight: 700 !important;
  opacity: .72 !important;
}

@media (prefers-reduced-motion: reduce) {
  .sv2-faq-results,
.sv2-faq-item,
.sv2-faq-question,
.sv2-faq-question i,
.sv2-faq-answer {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }

  .sv2-faq-skeleton__heading i::after,
.sv2-faq-skeleton__heading b::after,
.sv2-faq-skeleton__item i::after,
.sv2-faq-skeleton__item b::after {
    animation: none !important;
  }
}

/* ═══════════════ FOOTER — premium polish (v2) ═══════════════ */
.sf {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(120% 120% at 85% -10%, rgba(47,98,206,.22) 0%, rgba(47,98,206,0) 42%),
    radial-gradient(90% 90% at 8% 0%, rgba(26,122,82,.16) 0%, rgba(26,122,82,0) 40%),
    linear-gradient(180deg, #0f1b34 0%, #0b1426 100%);
}

/* Gradient top accent instead of flat red */
.sf::before {
  height:3px !important;
  background:linear-gradient(90deg, #2f62ce 0%, #3aa6ff 35%, #1a7a52 70%, #2f62ce 100%) !important;
}

/* Soft decorative glow */
.sf::after {
  content:"";
  position:absolute;
  z-index:0;
  width:520px;
  height:520px;
  top:-260px;
  inset-inline-start:-160px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(47,98,206,.14) 0%, rgba(47,98,206,0) 70%);
  pointer-events:none;
}

.sf > * { position:relative; z-index:1; }

/* Body spacing */
.sf__body { padding:64px 0 46px; }
.sf__grid {
  grid-template-columns:1.9fr 1fr 1fr 1.5fr;
  gap:54px;
}

/* Brand */
.sf__logo img { height:46px; }
.sf__tagline { font-size:14px; line-height:1.9; max-width:300px; color:rgba(255,255,255,.6); }

.sf__contact li { font-size:13.5px; }
.sf__contact-icon {
  border-radius:10px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
  color:#7fb0ff;
}

/* Socials */
.sf__socials { gap:10px; }
.sf__social-link {
  width:40px; height:40px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.045);
  color:rgba(255,255,255,.62);
  transition:transform .3s cubic-bezier(.22,.61,.36,1),background .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.sf__social-link:hover {
  background:linear-gradient(135deg,#2f62ce,#3aa6ff);
  border-color:transparent;
  color:#fff;
  transform:translateY(-4px) scale(1.04);
  box-shadow:0 14px 28px rgba(47,98,206,.4);
}

/* Headings */
.sf__heading {
  font-size:13px;
  letter-spacing:1.4px;
  margin-bottom:24px;
}
.sf__heading::after {
  width:30px; height:3px;
  border-radius:3px;
  background:linear-gradient(90deg,#2f62ce,#3aa6ff);
}

/* Nav links */
.sf__nav li a { font-size:14px; color:rgba(255,255,255,.58); }
.sf__nav li a::before { color:#3aa6ff; }
.sf__nav li a:hover { color:#fff; }

/* ── Connect column ── */
.sf__col--connect { min-width:0; }

.sf__support-card {
  display:flex;
  align-items:center;
  gap:13px;
  margin-bottom:20px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  color:#fff;
  transition:transform .3s cubic-bezier(.22,.61,.36,1),border-color .3s ease,box-shadow .3s ease;
}
.sf__support-card:hover {
  transform:translateY(-3px);
  border-color:rgba(58,166,255,.45);
  box-shadow:0 18px 38px rgba(8,18,40,.5);
}
.sf__support-icon {
  flex:0 0 46px;
  width:46px; height:46px;
  display:grid; place-items:center;
  border-radius:13px;
  background:linear-gradient(135deg,#2f62ce,#3aa6ff);
  color:#fff;
  font-size:18px;
  box-shadow:0 10px 22px rgba(47,98,206,.4);
}
.sf__support-text { display:flex; flex-direction:column; gap:3px; min-width:0; }
.sf__support-text em {
  font-style:normal;
  font-size:11px;
  font-weight:700;
  color:rgba(255,255,255,.55);
  letter-spacing:.3px;
}
.sf__support-text strong {
  font-size:16px;
  font-weight:900;
  color:#fff;
  direction:ltr;
  unicode-bidi:plaintext;
}
.sf__support-arrow {
  margin-inline-start:auto;
  color:rgba(255,255,255,.4);
  font-size:13px;
  transition:transform .3s ease,color .3s ease;
}
.sf__support-card:hover .sf__support-arrow { color:#3aa6ff; transform:translateX(-4px); }

.sf__connect-text {
  margin:0 0 16px;
  color:rgba(255,255,255,.6);
  font-size:13.5px;
  line-height:1.85;
}

/* App badges */
.sf__app-badges { display:flex; flex-wrap:wrap; gap:11px; margin:0; }
.sf__app-badge {
  flex:1 1 0;
  min-width:148px;
  display:flex; align-items:center; gap:11px;
  padding:11px 16px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.045);
  color:#fff;
  transition:transform .3s cubic-bezier(.22,.61,.36,1),background .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.sf__app-badge:hover {
  transform:translateY(-3px);
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.24);
  box-shadow:0 14px 30px rgba(8,18,40,.45);
}
.sf__app-badge > i { font-size:24px; color:#fff; flex:0 0 auto; }
.sf__app-badge > span { display:flex; flex-direction:column; }
.sf__app-badge em { font-size:10px; color:rgba(255,255,255,.5); font-style:normal; line-height:1; margin-bottom:3px; }
.sf__app-badge > span > span { font-size:13px; font-weight:800; color:#fff; }

/* Payment strip */
.sf__payments { background:rgba(0,0,0,.22); }
.sf__payment-badge {
  height:40px; min-width:58px; padding:0 11px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.05);
  transition:transform .3s ease,background .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.sf__payment-badge:hover {
  transform:translateY(-3px);
  border-color:rgba(58,166,255,.4);
  background:rgba(255,255,255,.1);
}

/* Real uploaded logos: white chip, full colour (no inversion), fully visible */
.sf__payment-badge--img {
  height:42px; width:64px; min-width:64px; max-width:64px; padding:5px 9px;
  overflow:hidden;
  background:#fff;
  border-color:rgba(255,255,255,.18);
}
.sf__payment-badge--img:hover {
  background:#fff;
  box-shadow:0 12px 26px rgba(0,0,0,.3);
}
.sf__payment-badge--img img {
  width:100%; height:100%; max-width:100%; max-height:100%;
  object-fit:contain;
  object-position:center;
  filter:none !important;
  opacity:1 !important;
}

/* Bottom bar */
.sf__copy a:hover,
.sf__legal a:hover { color:#3aa6ff; }

@media (max-width:1199px) {
  .sf__grid { grid-template-columns:1fr 1fr 1fr; }
  .sf__col--connect { grid-column:1 / -1; }
  .sf__col--connect .sf__app-badges { max-width:520px; }
}

@media (max-width:767px) {
  .sf__body { padding:44px 0 34px; }
  .sf__grid { grid-template-columns:1fr 1fr; gap:34px; }
  .sf__col--brand { grid-column:1 / -1; }
  .sf__col--connect { grid-column:1 / -1; }
}

@media (max-width:600px) {
  .sf__app-badge { flex:1 1 100%; }
}

/* Unified active state */
:root {
  --schooly-active:#2f62ce;
  --schooly-active-dark:#214f9e;
  --schooly-active-soft:rgba(47,98,206,.13);
  --schooly-active-ring:rgba(47,98,206,.28);
}

.schooly-global-menu > li.current-menu-item > a,
.schooly-global-menu > li.current-menu-ancestor > a,
.schooly-mobile-nav li.current-menu-item > a,
.schooly-mobile-nav li.current-menu-ancestor > a,
.sv2-faq-tab.is-active,
.sv2-shop-cats a.is-active,
.ecommza-faq-cat-btn.is-active,
.view-toggle-btn.is-active,
.shop-categories-list li.is-active > a,
.woocommerce-MyAccount-navigation li.is-active > a,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--is-active > a,
[role="tab"][aria-selected="true"] {
  border-color:var(--schooly-active)!important;
  background:var(--schooly-active)!important;
  color:#fff!important;
  box-shadow:0 9px 24px var(--schooly-active-ring)!important;
}

.variable-items-wrapper .variable-item.selected,
.quickview-thumb.is-active {
  border-color:var(--schooly-active)!important;
  box-shadow:0 0 0 3px var(--schooly-active-ring)!important;
}

.swiper-pagination-bullet-active,
.hero-pagination .swiper-pagination-bullet-active {
  background:var(--schooly-active)!important;
  border-color:var(--schooly-active)!important;
}


.shop-categories-list li.is-active .cat-count,
.sv2-shop-cats a.is-active span {
  background:#fff!important;
  color:var(--schooly-active-dark)!important;
}

.ecommza-menu > li.current-menu-item > a,
.ecommza-menu > li.current-menu-ancestor > a,
.ecommza-faq-item.is-open .ecommza-faq-item__question {
  color:var(--schooly-active-dark)!important;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.page-numbers.current {
  border-color:var(--schooly-active)!important;
  background:var(--schooly-active)!important;
  color:#fff!important;
}

.ecommza-wishlist-btn.is-wishlisted,
.ecommza-compare-btn.is-comparing,
.compare-btn.is-comparing,
[aria-pressed="true"].ecommza-wishlist-btn,
[aria-pressed="true"].ecommza-compare-btn {
  border-color:var(--schooly-active)!important;
  background:var(--schooly-active)!important;
  color:#fff!important;
  box-shadow:0 9px 24px var(--schooly-active-ring)!important;
}

.ecommza-wishlist-btn.is-wishlisted i,
.ecommza-compare-btn.is-comparing i,
.compare-btn.is-comparing i {
  color:#fff!important;
}

input[type="radio"]:checked,
input[type="checkbox"]:checked {
  accent-color:var(--schooly-active);
}

.sv2-faq-item.is-open {
  border-color:var(--schooly-active)!important;
  box-shadow:0 12px 30px var(--schooly-active-ring)!important;
}

.sv2-faq-item.is-open .sv2-faq-question i,
.ecommza-faq-item.is-open .ecommza-faq-item__icon {
  border-color:var(--schooly-active)!important;
  background:var(--schooly-active)!important;
  color:#fff!important;
}

/* Premium mobile navigation */
@media (max-width:991px) {
  .schooly-global-menu-toggle {
    border-color:rgba(47,98,206,.28)!important;
    background:linear-gradient(145deg,#fff,#f2fbf7)!important;
    box-shadow:0 8px 22px rgba(11,65,45,.09);
  }

  .schooly-global-menu-toggle span {
    background:#123c2e!important;
  }

  .schooly-global-menu-toggle.is-open {
    border-color:var(--schooly-active)!important;
    background:var(--schooly-active)!important;
    box-shadow:0 10px 25px var(--schooly-active-ring)!important;
  }

  .schooly-mobile-overlay {
    background:rgba(5,20,32,.62)!important;
    backdrop-filter:blur(9px) saturate(.8)!important;
  }

  .schooly-mobile-drawer {
    width:min(92vw,430px)!important;
    padding:0!important;
    overflow:hidden!important;
    border-inline-end:1px solid rgba(255,255,255,.5);
    background:linear-gradient(180deg,#f9fcfb 0,#fff 42%,#f5faf8 100%)!important;
    box-shadow:25px 0 80px rgba(4,27,46,.28)!important;
    transition:transform .48s cubic-bezier(.22,.61,.36,1),visibility .48s!important;
  }

  .schooly-mobile-drawer__head {
    min-height:80px;
    padding:16px 20px!important;
    border-bottom:1px solid rgba(20,70,52,.08)!important;
    background:rgba(255,255,255,.84);
    backdrop-filter:blur(16px);
  }

  .schooly-mobile-drawer__head .schooly-global-brand img,
  .schooly-mobile-drawer__head .custom-logo {
    width:auto!important;
    height:42px!important;
    max-width:140px!important;
    object-fit:contain;
  }

  .schooly-mobile-drawer__close {
    width:44px!important;
    height:44px!important;
    border:1px solid rgba(20,70,52,.1)!important;
    background:#f0f8f5!important;
    color:#153f31!important;
    transition:transform .3s ease,background-color .3s ease,color .3s ease!important;
  }

  .schooly-mobile-drawer__close:hover {
    background:var(--schooly-active)!important;
    color:#fff!important;
    transform:rotate(90deg);
  }

  .schooly-mobile-drawer__intro {
    position:relative;
    overflow:hidden;
    margin:14px 14px 0;
    padding:20px;
    border-radius:22px;
    background:radial-gradient(circle at 0 0,rgba(47,98,206,.3),transparent 38%),linear-gradient(145deg,#0a1f3f,#123b6f);
    color:#fff;
    box-shadow:0 18px 42px rgba(7,54,39,.2);
  }

  .schooly-mobile-drawer__intro::after {
    content:"";
    position:absolute;
    width:125px;
    height:125px;
    bottom:-85px;
    inset-inline-end:-35px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;
    box-shadow:0 0 0 25px rgba(255,255,255,.025);
  }

  .schooly-mobile-drawer__eyebrow {
    display:flex;
    align-items:center;
    gap:7px;
    color:#95f0ce;
    font-size:11px;
    font-weight:900;
  }

  .schooly-mobile-drawer__intro h2 {
    max-width:300px;
    margin:9px 0 7px;
    color:#fff;
    font-size:clamp(18px,5vw,21px)!important;
    line-height:1.4;
    font-weight:900;
  }

  .schooly-mobile-drawer__intro p {
    max-width:330px;
    margin:0;
    color:rgba(255,255,255,.66);
    font-size:12px!important;
    line-height:1.75;
  }

  .schooly-mobile-drawer__search {
    width:auto!important;
    max-width:none;
    box-sizing:border-box;
    min-height:54px!important;
    margin:12px 14px!important;
    padding:0 16px!important;
    gap:11px!important;
    border:1px solid rgba(20,70,52,.1)!important;
    border-radius:16px!important;
    background:#fff!important;
    color:#567267!important;
    box-shadow:0 10px 26px rgba(18,63,46,.07);
    transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease!important;
  }

  .schooly-mobile-drawer__search span {
    flex:1;
    text-align:start;
    font-size:12px;
  }

  .schooly-mobile-drawer__search i:first-child {
    color:var(--schooly-active-dark);
  }

  .schooly-mobile-drawer__search i:last-child {
    color:#8ca59b;
    transition:transform .28s ease;
  }

  .schooly-mobile-drawer__search:hover {
    border-color:var(--schooly-active)!important;
    transform:translateY(-2px);
    box-shadow:0 14px 30px var(--schooly-active-ring)!important;
  }

  .schooly-mobile-drawer__search:hover i:last-child {
    transform:translateX(-4px);
  }

  .schooly-mobile-drawer__body {
    flex:1;
    min-height:0;
    padding:4px 14px calc(20px + env(safe-area-inset-bottom));
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:var(--schooly-active) transparent;
  }

  .schooly-mobile-drawer__body::-webkit-scrollbar { width:5px; }
  .schooly-mobile-drawer__body::-webkit-scrollbar-thumb {
    border-radius:99px;
    background:rgba(20,70,52,.18);
  }

  .schooly-mobile-drawer__section-head {
    padding:9px 4px 12px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:#799187;
    font-size:11px;
    font-weight:900;
  }

  .schooly-mobile-drawer__section-head i { color:var(--schooly-active-dark); }

  .schooly-mobile-nav {
    display:grid;
    gap:7px;
  }

  .schooly-mobile-nav > li {
    position:relative;
    overflow:hidden;
    border:1px solid rgba(20,70,52,.08)!important;
    border-radius:15px;
    background:#fff;
    box-shadow:0 7px 20px rgba(18,63,46,.045);
    opacity:0;
    transform:translateY(12px);
    transition:border-color .3s ease,box-shadow .3s ease,transform .38s cubic-bezier(.22,.61,.36,1),opacity .38s ease;
  }

  .schooly-mobile-drawer.is-open .schooly-mobile-nav > li {
    opacity:1;
    transform:translateY(0);
  }

  .schooly-mobile-drawer.is-open .schooly-mobile-nav > li:nth-child(1) { transition-delay:.08s; }
  .schooly-mobile-drawer.is-open .schooly-mobile-nav > li:nth-child(2) { transition-delay:.11s; }
  .schooly-mobile-drawer.is-open .schooly-mobile-nav > li:nth-child(3) { transition-delay:.14s; }
  .schooly-mobile-drawer.is-open .schooly-mobile-nav > li:nth-child(4) { transition-delay:.17s; }
  .schooly-mobile-drawer.is-open .schooly-mobile-nav > li:nth-child(5) { transition-delay:.2s; }
  .schooly-mobile-drawer.is-open .schooly-mobile-nav > li:nth-child(n+6) { transition-delay:.23s; }

  .schooly-mobile-nav > li:hover,
  .schooly-mobile-nav > li.is-open,
  .schooly-mobile-nav > li.current-menu-item,
  .schooly-mobile-nav > li.current-menu-ancestor {
    border-color:rgba(47,98,206,.5)!important;
    box-shadow:0 12px 26px var(--schooly-active-soft);
  }

  .schooly-mobile-drawer.is-open .schooly-mobile-nav > li:hover {
    transform:translateY(0) translateX(-3px);
  }

  .schooly-mobile-nav > li > a {
    position:relative;
    min-height:56px!important;
    padding:0 15px!important;
    justify-content:flex-start!important;
    gap:10px;
    color:#173c2f!important;
    font-size:13px!important;
    font-weight:900!important;
  }

  /* Accent bar on the inline-start edge for active / open items */
  .schooly-mobile-nav > li > a::after {
    content:"";
    position:absolute;
    inset-block:14px;
    inset-inline-start:0;
    width:3px;
    border-radius:0 99px 99px 0;
    background:var(--schooly-active);
    opacity:0;
    transform:scaleY(.3);
    transition:opacity .3s ease,transform .3s ease;
  }

  .schooly-mobile-nav > li.is-open > a::after,
  .schooly-mobile-nav > li.current-menu-item > a::after,
  .schooly-mobile-nav > li.current-menu-ancestor > a::after {
    opacity:1;
    transform:scaleY(1);
  }

  .schooly-mobile-nav > li > a::before {
    content:"";
    width:7px;
    height:7px;
    flex:0 0 7px;
    border-radius:50%;
    background:#d9e9e3;
    box-shadow:0 0 0 5px #f3f8f6;
    transition:background-color .3s ease,box-shadow .3s ease;
  }

  .schooly-mobile-nav > li.current-menu-item > a,
  .schooly-mobile-nav > li.current-menu-ancestor > a {
    background:transparent!important;
    color:var(--schooly-active-dark)!important;
    box-shadow:none!important;
  }

  .schooly-mobile-nav > li.current-menu-item > a::before,
  .schooly-mobile-nav > li.current-menu-ancestor > a::before,
  .schooly-mobile-nav > li.is-open > a::before {
    background:var(--schooly-active);
    box-shadow:0 0 0 5px var(--schooly-active-soft);
  }

  .schooly-mobile-submenu-toggle {
    position:absolute;
    z-index:2;
    top:8px;
    inset-inline-end:8px;
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border:0;
    border-radius:12px;
    background:#eff8f4;
    color:#527267;
    transition:transform .3s ease,background-color .3s ease,color .3s ease!important;
  }

  .schooly-mobile-submenu-toggle:hover,
  .schooly-mobile-submenu-toggle[aria-expanded="true"] {
    background:var(--schooly-active)!important;
    color:#fff!important;
  }

  .schooly-mobile-submenu-toggle[aria-expanded="true"] i {
    transform:rotate(180deg);
  }

  .schooly-mobile-submenu-toggle i { transition:transform .35s cubic-bezier(.22,.61,.36,1); }

  .schooly-mobile-nav .sub-menu {
    margin:0 8px 8px!important;
    padding:7px!important;
    border:1px solid rgba(20,70,52,.07);
    border-radius:12px!important;
    background:#f5faf8!important;
  }

  .schooly-mobile-nav .sub-menu li + li { margin-top:3px; }

  .schooly-mobile-nav .sub-menu a {
    min-height:42px;
    padding:9px 11px!important;
    border-radius:10px;
    color:#456458!important;
    font-size:12px!important;
    transition:background-color .25s ease,color .25s ease,padding .25s ease!important;
  }

  .schooly-mobile-nav .sub-menu a:hover,
  .schooly-mobile-nav .sub-menu .current-menu-item > a {
    background:var(--schooly-active-soft)!important;
    color:var(--schooly-active-dark)!important;
    padding-inline-start:15px!important;
  }

  .schooly-mobile-drawer__footer {
    padding:12px 14px 16px!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
    border-top:1px solid rgba(20,70,52,.08)!important;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(16px);
  }

  .schooly-mobile-drawer__footer a,
  .schooly-mobile-drawer__footer button {
    position:relative;
    min-width:0;
    min-height:60px!important;
    padding:7px 4px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:5px!important;
    border:1px solid rgba(20,70,52,.08);
    border-radius:13px!important;
    background:#f3f9f6!important;
    color:#31594a!important;
    font-size:10px!important;
    font-weight:900;
    transition:transform .28s ease,background-color .28s ease,color .28s ease,border-color .28s ease!important;
  }

  .schooly-mobile-drawer__footer a:hover,
  .schooly-mobile-drawer__footer button:hover {
    border-color:var(--schooly-active)!important;
    background:var(--schooly-active)!important;
    color:#fff!important;
    transform:translateY(-3px);
  }

  .schooly-mobile-drawer__footer i { font-size:15px; }

  .schooly-mobile-drawer__footer button span {
    position:absolute;
    top:4px;
    inset-inline-end:7px;
    min-width:17px;
    height:17px;
    padding:0 4px;
    display:grid;
    place-items:center;
    border-radius:99px;
    background:var(--schooly-active);
    color:#fff;
    font-size:8px;
  }
}

/* Fixed mobile bottom tab bar (account / wishlist / store / cart) */
.schooly-mobile-tabbar { display:none; }

@media (max-width:991px) {
  .schooly-mobile-tabbar {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    align-items:stretch;
    position:fixed;
    inset-inline:0;
    bottom:0;
    z-index:1200;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom));
    background:rgba(255,255,255,.97);
    backdrop-filter:blur(18px);
    border-top:1px solid rgba(20,70,52,.1);
    box-shadow:0 -8px 30px rgba(4,27,46,.12);
  }

  .schooly-mobile-tabbar__item {
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    padding:6px 4px;
    border:0;
    background:transparent;
    color:#56697b;
    font-size:11px;
    font-weight:800;
    text-decoration:none;
    cursor:pointer;
    transition:color .22s ease,transform .22s ease;
  }

  .schooly-mobile-tabbar__item:hover,
  .schooly-mobile-tabbar__item:active { color:var(--schooly-active,#2563eb); }
  .schooly-mobile-tabbar__item:active { transform:scale(.93); }

  .schooly-mobile-tabbar__icon {
    position:relative;
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    font-size:18px;
    line-height:1;
  }

  .schooly-mobile-tabbar__label { line-height:1; }

  .schooly-mobile-tabbar__badge {
    position:absolute;
    top:-6px;
    inset-inline-end:-9px;
    min-width:17px;
    height:17px;
    padding:0 4px;
    display:grid;
    place-items:center;
    border-radius:99px;
    background:var(--schooly-active,#2563eb);
    color:#fff;
    font-size:9px;
    font-weight:800;
    line-height:1;
  }

  /* Wishlist badge only appears when there are items */
  .schooly-mobile-tabbar__badge.ecommza-wishlist-count { display:none; }
  .schooly-mobile-tabbar__badge.ecommza-wishlist-count.is-visible { display:grid; }

  /* These actions now live in the bottom bar — keep the header clean */
  .schooly-global-actions .schooly-global-action,
  .schooly-global-actions .schooly-global-cart,
  .schooly-global-actions .schooly-figma-lang { display:none !important; }

  /* Compact, icon-only search button in the header */
  .schooly-global-search span,
  .schooly-global-search kbd { display:none !important; }
  .schooly-global-search {
    width:44px !important;
    height:44px !important;
    padding:0 !important;
    justify-content:center !important;
    border-radius:50% !important;
  }

  /* Reserve space so content is not hidden behind the fixed bar */
  body { padding-bottom:calc(66px + env(safe-area-inset-bottom)); }

  /* Keep the compare bar above the tab bar */
  .compare-bar { bottom:calc(66px + env(safe-area-inset-bottom)) !important; }

  /* Scroll-to-top: sit above the fixed tab bar, not underneath it */
  .scroll-top-btn {
    bottom:calc(78px + env(safe-area-inset-bottom)) !important;
    z-index:1195;
  }

  html[dir="rtl"] .scroll-top-btn {
    left:16px !important;
    right:auto !important;
  }
}

/* Schools/shop AJAX filtering */
.sv2-school-filter-layout {
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:16px;
  align-items:start;
}

.sv2-school-filter {
  position:relative;
  border:1px solid #dfe6f1;
  border-radius:12px;
  overflow: hidden;
  background:#fff;
  box-shadow:0 18px 48px rgba(15,40,90,.08);
}

.sv2-school-filter__head {
  padding:14px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  background:radial-gradient(circle at 0 0,rgba(47,98,206,.25),transparent 42%),linear-gradient(145deg,#0a1f3f,#123b6f);
  color:#fff;
}

.sv2-school-filter__head span { color:#92e8c7; font-size:10px; font-weight:900; }
.sv2-school-filter__head h2 { margin:5px 0 0; display:flex; align-items:center; gap:8px; color:#fff; font-size:18px!important; font-weight:900; }
.sv2-school-filter__head h2 { margin:2px 0 0; font-size:16px!important; }
.sv2-school-filter__head button { display:none; }

.sv2-school-filter__search {
  position:relative;
  margin:10px 12px;
  display:block;
}

.sv2-school-filter__search i {
  position:absolute;
  z-index:1;
  top:50%;
  left:15px;
  right:auto;
  transform:translateY(-50%);
  color:var(--schooly-active-dark);
  pointer-events:none;
}

.sv2-school-filter__search input {
  width:100%;
  height:42px;
  padding:0 12px 0 48px;
  border:1px solid #e2e8f2!important;
  border-radius:14px!important;
  background:#f6faf8!important;
  font-size:12px!important;
  text-align:right;
}

.sv2-school-filter__search input:focus {
  border-color:var(--schooly-active)!important;
  background:#fff!important;
  box-shadow:0 0 0 4px var(--schooly-active-soft)!important;
}

.sv2-school-filter__section {
  padding:10px 14px;
  border-top:1px solid #edf3f0;
}

.sv2-school-filter__title {
  margin-bottom:8px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#163d30;
}

.sv2-school-filter__title > span { display:flex; align-items:center; gap:8px; font-size:14px; font-weight:900; }
.sv2-school-filter__title > span i { color:var(--schooly-active-dark); }
.sv2-school-filter__title small,
.sv2-school-filter__title output {
  padding:5px 9px;
  border-radius:99px;
  background:var(--schooly-active-soft);
  color:var(--schooly-active-dark);
  font-size:11px;
  font-weight:900;
  font-variant-numeric:tabular-nums;
}

.sv2-school-filter__options {
  max-height:245px;
  padding-left:3px;
  display:grid;
  gap:6px;
  overflow-y:auto;
  scrollbar-width:thin;
  scrollbar-color:var(--schooly-active) transparent;
}

/* Make the filter panel shorter and scrollable inside */
.sv2-school-filter {
  position: sticky;
  top: 84px;
  max-height: calc(100vh - 96px);
}

.sv2-school-filter form#sv2SchoolFilterForm {
  max-height: inherit;
  overflow: auto;
  overscroll-behavior: contain;
  direction: ltr;
  scrollbar-width: thin;
  scrollbar-color: var(--schooly-active) transparent;
}
.sv2-school-filter form#sv2SchoolFilterForm > * {
  direction: rtl;
}

.sv2-school-filter__head {
  position: sticky;
  top: 0;
  z-index: 5;
}

.sv2-school-filter__actions {
  position: sticky;
  bottom: 0;
  z-index: 5;
}

.sv2-school-filter__options label {
  position:relative;
  min-height:48px;
  padding:6px 8px;
  display:flex;
  align-items:center;
  gap:9px;
  border:1px solid transparent;
  border-radius:12px;
  background:#f6f8fc;
  cursor:pointer;
  transition:border-color .25s ease,background-color .25s ease,transform .25s ease,box-shadow .25s ease;
}

.sv2-school-filter__options label:hover {
  border-color:rgba(47,98,206,.45);
  background:#fff;
  transform:translateX(-2px);
  box-shadow:0 8px 20px rgba(15,40,90,.07);
}

.sv2-school-filter__options input { position:absolute; opacity:0; pointer-events:none; }
.sv2-school-filter__options label:has(input:checked) { border-color:var(--schooly-active); background:var(--schooly-active-soft); }
.sv2-school-filter__options b { min-width:0; flex:1; color:#3a5170; font-size:11px; font-weight:900; }
.sv2-school-filter__options label:has(input:checked) b { color:#0b6648; }
.sv2-school-filter__options small { color:#8ba299; font-size:9px; font-weight:800; }

.sv2-school-filter__radio-mark {
  width:18px;
  height:18px;
  flex:0 0 18px;
  border:2px solid #cbdcd5;
  border-radius:50%;
  background:#fff;
  box-shadow:inset 0 0 0 4px #fff;
}
.sv2-school-filter__options input:checked + .sv2-school-filter__radio-mark { border-color:var(--schooly-active); background:var(--schooly-active); }

.sv2-school-filter__school-logo {
  width:34px;
  height:34px;
  flex:0 0 34px;
  overflow:hidden;
  display:grid;
  place-items:center;
  border:1px solid #e3ece8;
  border-radius:10px;
  background:#fff;
}
.sv2-school-filter__school-logo img { width:100%; height:100%; padding:3px; object-fit:contain; }

.sv2-school-filter__select { position:relative; display:block; }
.sv2-school-filter__select select {
  width:100%;
  height:48px;
  padding:0 12px 0 44px;
  border:1px solid #e2e8f2!important;
  border-radius:12px!important;
  background:#f6f8fc!important;
  color:#3a5170;
  font-size:11px!important;
  font-weight:800;
  appearance:none;
}
.sv2-school-filter__select i { position:absolute; bottom:0; top:auto; left:14px; right:auto; width:44px; height:48px; display:flex; align-items:center; justify-content:center; transform:none; color:var(--schooly-active-dark); pointer-events:none; }

.sv2-school-filter__price-inputs { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.sv2-school-filter__price-inputs label { height:44px; padding:0 10px; display:flex; align-items:center; gap:8px; border:1px solid #dfe6f1; border-radius:13px; background:#f6f8fc; transition:border-color .25s ease,box-shadow .25s ease,background-color .25s ease; }
.sv2-school-filter__price-inputs label:focus-within { border-color:var(--schooly-active); background:#fff; box-shadow:0 0 0 4px var(--schooly-active-soft); }
.sv2-school-filter__price-inputs span { color:#6b7c93; font-size:11px; font-weight:900; }
.sv2-school-filter__price-inputs input { width:100%; min-width:0; padding:0!important; border:0!important; background:transparent!important; box-shadow:none!important; color:#214f9e; font-family:Arial,sans-serif!important; font-size:13px!important; line-height:1!important; font-weight:900; font-variant-numeric:tabular-nums; text-align:center!important; }
.sv2-school-filter__price-inputs input::-webkit-inner-spin-button,
.sv2-school-filter__price-inputs input::-webkit-outer-spin-button { opacity:.45; }

.sv2-school-filter__range-wrap { position:relative; height:30px; margin-top:12px; direction:ltr; isolation:isolate; touch-action:none; }
.sv2-school-filter__range-track,
.sv2-school-filter__range-progress { position:absolute; z-index:1; top:50%; right:0; left:0; height:5px; border-radius:99px; transform:translateY(-50%); pointer-events:none; }
.sv2-school-filter__range-track { background:#e4eee9; box-shadow:inset 0 1px 0 rgba(255,255,255,.75); }
.sv2-school-filter__range-progress { z-index:2; left:var(--price-left); right:var(--price-right); min-width:6px; background:linear-gradient(90deg,var(--schooly-active),#22ad7b); box-shadow:0 3px 12px var(--schooly-active-ring); }
.sv2-school-filter__range { position:absolute; z-index:3; inset:0; width:100%; height:34px; margin:0; border:0; border-radius:0; background:transparent!important; box-shadow:none!important; cursor:pointer; pointer-events:none; appearance:none; -webkit-appearance:none; }
.sv2-school-filter__range--min { z-index:4; }
.sv2-school-filter__range--max { z-index:5; }
.sv2-school-filter__range.is-active { z-index:8; }
.sv2-school-filter__range::-webkit-slider-runnable-track { width:100%; height:5px; border:0; background:transparent; box-shadow:none; }
.sv2-school-filter__range::-moz-range-track { width:100%; height:5px; border:0; background:transparent; box-shadow:none; }
.sv2-school-filter__range::-webkit-slider-thumb { width:34px; height:34px; margin-top:-14.5px; border:0; border-radius:50%; background:transparent; box-shadow:none; cursor:grab; opacity:0; pointer-events:auto; appearance:none; -webkit-appearance:none; }
.sv2-school-filter__range::-moz-range-thumb { width:34px; height:34px; border:0; border-radius:50%; background:transparent; box-shadow:none; cursor:grab; opacity:0; pointer-events:auto; }
.sv2-school-filter__range-thumb { position:absolute; z-index:7; top:50%; width:22px; height:22px; border:4px solid #fff; border-radius:50%; background:var(--schooly-active); box-shadow:0 0 0 1px var(--schooly-active-dark),0 6px 16px var(--schooly-active-ring); transform:translate(-50%,-50%); pointer-events:none; transition:left .08s linear,transform .18s ease,box-shadow .18s ease; }
.sv2-school-filter__range-thumb--max { left:var(--price-left); }
.sv2-school-filter__range-thumb--min { left:calc(100% - var(--price-right)); }
.sv2-school-filter__range--min.is-active ~ .sv2-school-filter__range-thumb--max,
.sv2-school-filter__range--max.is-active ~ .sv2-school-filter__range-thumb--min { z-index:9; transform:translate(-50%,-50%) scale(1.12); box-shadow:0 0 0 5px var(--schooly-active-ring),0 8px 18px rgba(12,128,88,.22); }
.sv2-school-filter__range-labels { margin-top:1px; display:flex; align-items:center; justify-content:space-between; color:#8aa096; font-family:Arial,sans-serif; font-size:10px; font-weight:800; font-variant-numeric:tabular-nums; }

.sv2-school-filter__checks { display:grid; grid-template-columns:repeat(2,1fr); gap:6px; }
.sv2-school-filter__checks label { position:relative; cursor:pointer; }
.sv2-school-filter__checks input { position:absolute; opacity:0; pointer-events:none; }
.sv2-school-filter__checks span { min-height:48px; padding:6px 4px; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:5px; border:1px solid #e2e8f2; border-radius:12px; background:#f6f8fc; color:#64748b; font-size:9px; font-weight:900; transition:.25s ease; }
.sv2-school-filter__checks span i { font-size:14px; color:#8ca59b; }
.sv2-school-filter__checks input:checked + span { border-color:var(--schooly-active); background:var(--schooly-active-soft); color:#0b6648; box-shadow:0 7px 18px var(--schooly-active-soft); }
.sv2-school-filter__checks input:checked + span i { color:var(--schooly-active-dark); }

.sv2-school-filter__actions {
  padding:14px 16px 17px;
  display:grid;
  grid-template-columns:1fr 1.25fr;
  gap:8px;
  border-top:1px solid #edf3f0;
  background:#fafcfb;
}
.sv2-school-filter__actions button { min-height:45px; padding:0 10px; display:flex; align-items:center; justify-content:center; gap:7px; border-radius:12px; font-size:10px; font-weight:900; transition:.28s ease; }
.sv2-school-filter__reset { width:100%; border:1px solid #dce8e3; background:#fff; color:#64748b; }
.sv2-school-filter__apply { border:1px solid var(--schooly-active); background:var(--schooly-active); color:#fff; box-shadow:0 9px 22px var(--schooly-active-ring); }
.sv2-school-filter__actions button:hover { transform:translateY(-2px); box-shadow:0 12px 25px rgba(15,40,90,.13); }

.sv2-school-results { min-width:0; }
.sv2-school-results .sv2-shop-toolbar { margin-bottom:20px; }
.sv2-school-result-count { display:flex; align-items:baseline; gap:6px; color:#718a80; font-size:11px; font-weight:800; }
.sv2-school-result-count strong { color:#123f30; font-size:20px; font-weight:900; }
.sv2-school-order { position:relative; display:flex; align-items:center; gap:8px; }
.sv2-school-order > i { color:var(--schooly-active-dark); }
.sv2-school-order select { min-width:190px; height:44px; padding:0 12px; border:1px solid #dfe6f1!important; border-radius:12px!important; background:#f6f8fc!important; color:#3a5170; font-size:11px!important; font-weight:800; }

.sv2-school-results .sv2-shop-products ul.products.row > li.product {
  flex:0 0 33.333333%!important;
  width:33.333333%!important;
  max-width:33.333333%!important;
}

.sv2-school-pagination { margin-top:28px; display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:7px; }
.sv2-school-pagination button { width:42px; height:42px; display:grid; place-items:center; border:1px solid #dce8e3; border-radius:12px; background:#fff; color:#456458; font-size:11px; font-weight:900; transition:.25s ease; }
.sv2-school-pagination button:hover,
.sv2-school-pagination button.is-active { border-color:var(--schooly-active)!important; background:var(--schooly-active)!important; color:#fff!important; transform:translateY(-2px); box-shadow:0 9px 22px var(--schooly-active-ring); }

.sv2-school-filter-empty { min-height:380px; padding:35px; display:flex; align-items:center; justify-content:center; flex-direction:column; border:1px dashed #cfe0d9; border-radius:22px; background:#fff; text-align:center; }
.sv2-school-filter-empty i { margin-bottom:16px; color:var(--schooly-active-dark); font-size:42px; }
.sv2-school-filter-empty h3 { margin:0 0 7px; color:#173f31; font-size:20px; font-weight:900; }
.sv2-school-filter-empty p { margin:0; color:#7a9188; font-size:12px; }

.sv2-school-product-skeleton { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.sv2-school-product-skeleton article { overflow:hidden; border:1px solid #e3ece8; border-radius:20px; background:#fff; }
.sv2-school-product-skeleton__image { display:block; aspect-ratio:4/4.7; margin:7px; border-radius:15px; background:#edf4f1; }
.sv2-school-product-skeleton article div { padding:17px; display:grid; gap:11px; }
.sv2-school-product-skeleton i,
.sv2-school-product-skeleton b,
.sv2-school-product-skeleton em,
.sv2-school-product-skeleton strong,
.sv2-school-product-skeleton__image { position:relative; overflow:hidden; }
.sv2-school-product-skeleton i,
.sv2-school-product-skeleton b,
.sv2-school-product-skeleton em,
.sv2-school-product-skeleton strong { display:block; border-radius:99px; background:#edf4f1; }
.sv2-school-product-skeleton i { width:45%; height:9px; }
.sv2-school-product-skeleton b { width:90%; height:14px; }
.sv2-school-product-skeleton em { width:58%; height:20px; }
.sv2-school-product-skeleton strong { width:100%; height:42px; border-radius:12px; }
.sv2-school-product-skeleton__image::after,
.sv2-school-product-skeleton article div > *::after { content:""; position:absolute; inset:0; transform:translateX(110%); background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent); animation:sv2SkeletonShimmer 1.25s ease-in-out infinite; }
.sv2-school-results .sv2-shop-products.is-entering { animation:sv2FaqResultsIn .42s cubic-bezier(.22,.61,.36,1) both; }

.sv2-school-filter-mobile-head,
.sv2-school-filter-overlay { display:none; }

@media(max-width:1199px) {
  .sv2-school-filter-layout { grid-template-columns:285px minmax(0,1fr); gap:18px; }
  .sv2-school-results .sv2-shop-products ul.products.row > li.product { flex-basis:50%!important; width:50%!important; max-width:50%!important; }
  .sv2-school-product-skeleton { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media(max-width:991px) {
  .sv2-school-filter-layout { display:block; }
  .sv2-school-filter-mobile-head { margin-bottom:16px; padding:10px; display:flex; align-items:center; justify-content:space-between; gap:10px; border:1px solid #dfe6f1; border-radius:15px; background:#fff; }
  .sv2-school-filter-mobile-head button { min-height:44px; padding:0 14px; display:flex; align-items:center; gap:8px; border:1px solid var(--schooly-active); border-radius:11px; background:var(--schooly-active); color:#fff; font-size:11px; font-weight:900; }
  .sv2-school-filter-mobile-head span { color:#6b7c93; font-size:10px; font-weight:800; }
  .sv2-school-filter-mobile-head strong { color:#174b39; font-size:15px; }
  .sv2-school-filter-overlay { position:fixed; z-index:2100; inset:0; display:block; opacity:0; visibility:hidden; pointer-events:none; background:rgba(4,24,37,.6); backdrop-filter:blur(7px); transition:.35s ease; }
  .sv2-school-filter-overlay.is-open { opacity:1; visibility:visible; pointer-events:auto; }
  .sv2-school-filter { position:fixed; z-index:2110; top:0; bottom:0; right:0; width:min(92vw,390px); overflow-y:auto; border:0; border-radius:0; visibility:hidden; transform:translateX(105%); transition:transform .42s cubic-bezier(.22,.61,.36,1),visibility .42s; }
  .sv2-school-filter.is-open { visibility:visible; transform:translateX(0); }
  .sv2-school-filter__head { position:sticky; z-index:2; top:0; }
  .sv2-school-filter__head button { width:40px; height:40px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.18); border-radius:50%; background:rgba(255,255,255,.1); color:#fff; }
  body.sv2-school-filter-open { overflow:hidden; }
}

@media(max-width:600px) {
  .sv2-school-results .sv2-shop-products ul.products.row > li.product { flex-basis:100%!important; width:100%!important; max-width:100%!important; }
  .sv2-school-product-skeleton { grid-template-columns:1fr; }
  .sv2-school-results .sv2-shop-toolbar { align-items:stretch; flex-direction:column; }
  .sv2-school-order,
.sv2-school-order select { width:100%; }
}

/* Rebuilt home schools slider */
.ecommza-categories {
  padding:82px 0 88px!important;
  overflow:hidden;
  background:radial-gradient(circle at 5% 8%,rgba(47,98,206,.13),transparent 27%),linear-gradient(180deg,#f6f8fc 0%,#fff 100%)!important;
}

.ecommza-categories::before {
  border-color:rgba(47,98,206,.16)!important;
  box-shadow:0 0 0 48px rgba(47,98,206,.035),0 0 0 96px rgba(47,98,206,.018)!important;
}

.schooly-schools-head {
  margin-bottom:30px!important;
  align-items:center!important;
}

.schooly-schools-head h2 {
  margin:7px 0 8px;
  color:#0a1f3f;
  font-size:clamp(31px,4vw,48px)!important;
  line-height:1.2;
  font-weight:900;
}

.schooly-schools-head p {
  max-width:720px!important;
  margin:0!important;
  color:#718c81!important;
  font-size:13px!important;
  line-height:1.85!important;
}

.schooly-schools-head__actions {
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
}

.schooly-schools-controls {
  padding:6px;
  display:flex;
  align-items:center;
  gap:7px;
  border:1px solid #dce9e3;
  border-radius:999px;
  background:rgba(255,255,255,.88);
  box-shadow:0 12px 32px rgba(15,40,90,.1);
}

.categories-slider-btn {
  position:static!important;
  top:auto!important;
  right:auto!important;
  left:auto!important;
  width:46px!important;
  height:46px!important;
  display:grid!important;
  place-items:center;
  border:1px solid transparent!important;
  border-radius:50%!important;
  background:#eef8f4!important;
  color:#176d4f!important;
  box-shadow:none!important;
  transform:none!important;
  font-size:14px;
  transition:transform .25s ease,background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease,opacity .25s ease!important;
}

.categories-slider-btn:hover {
  border-color:var(--schooly-active)!important;
  background:var(--schooly-active)!important;
  color:#fff!important;
  transform:scale(1.07)!important;
  box-shadow:0 9px 22px var(--schooly-active-ring)!important;
}

.categories-slider-btn:active { transform:scale(.94)!important; }

.categories-slider-btn.swiper-button-disabled {
  opacity:.38!important;
  cursor:not-allowed!important;
  pointer-events:none;
  box-shadow:none!important;
}

.schooly-schools-head__favorite {
  min-height:52px!important;
  padding:0 19px!important;
  border-color:#d6e6df!important;
  background:#fff!important;
  color:#176d4f!important;
  font-size:12px!important;
  box-shadow:0 10px 28px rgba(15,40,90,.07)!important;
}

.schooly-schools-head__favorite:hover {
  border-color:var(--schooly-active)!important;
  background:var(--schooly-active)!important;
  color:#fff!important;
  box-shadow:0 15px 30px var(--schooly-active-ring)!important;
}

.ecommza-categories__shell {
  padding:10px 5px 0;
}

.ecommza-categories__shell::before,
.ecommza-categories__shell::after {
  display:none!important;
}

.categories-swiper {
  width:100%;
  padding:8px 0 18px!important;
  overflow:hidden!important;
}

.categories-swiper .swiper-wrapper {
  align-items:stretch!important;
  transition-timing-function:cubic-bezier(.22,.61,.36,1)!important;
}

.categories-swiper .swiper-slide {
  height:auto!important;
  min-width:0;
  display:flex;
  align-items:stretch;
}

.categories-swiper .ecommza-cat-item {
  width:100%;
  height:430px!important;
  min-height:430px;
  padding:8px!important;
  overflow:hidden;
  border:1px solid #dfeae5!important;
  border-radius:23px!important;
  background:#fff!important;
  box-shadow:0 13px 34px rgba(15,40,90,.075)!important;
  transform:none;
}

.categories-swiper .ecommza-cat-item:hover {
  border-color:rgba(47,98,206,.7)!important;
  box-shadow:0 25px 55px rgba(15,40,90,.15)!important;
  transform:translateY(-7px);
}

.categories-swiper .ecommza-cat-item__img {
  flex:0 0 250px!important;
  height:250px!important;
  border-radius:17px!important;
  background:#edf5f1!important;
}

.categories-swiper .ecommza-cat-item__img img {
  width:100%!important;
  height:100%!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center!important;
}

.schooly-school-card__logo {
  position:absolute;
  z-index:3;
  inset-inline-end:12px;
  bottom:12px;
  width:42px;
  height:42px;
  overflow:hidden;
  display:grid;
  place-items:center;
  border:2px solid rgba(255,255,255,.9);
  border-radius:12px;
  background:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
}

.schooly-school-card__logo img {
  width:100%!important;
  height:100%!important;
  padding:4px!important;
  object-fit:contain!important;
}

.categories-swiper .schooly-school-card__number {
  top:12px;
  inset-inline-start:12px;
  inset-inline-end:auto;
  min-width:31px;
  justify-content:center;
  background:rgba(5,37,27,.62);
  font-size:10px;
}

.categories-swiper .schooly-school-card__products {
  bottom:12px;
  inset-inline-start:12px;
  min-height:29px;
  background:rgba(5,37,27,.68);
  font-size:10px;
}

.categories-swiper .schooly-school-card__body {
  height:164px!important;
  min-height:164px!important;
  padding:17px 12px 11px!important;
  flex:1 1 auto!important;
}

.categories-swiper .schooly-school-card__label {
  height:auto;
  margin-bottom:6px;
  color:var(--schooly-active-dark)!important;
  font-size:10px!important;
}

.categories-swiper .ecommza-cat-item__name {
  height:50px!important;
  min-height:50px!important;
  color:#123f30!important;
  font-size:15px!important;
  line-height:1.65!important;
  font-weight:900!important;
}

.categories-swiper .schooly-school-card__cta {
  margin-top:auto!important;
  padding-top:10px!important;
  border-color:#e7efeb!important;
  color:#176d4f!important;
  font-size:10px!important;
}

.categories-swiper .schooly-school-card__cta i {
  background:var(--schooly-active-soft)!important;
  color:var(--schooly-active-dark)!important;
}

.categories-swiper .schooly-school-card:hover .schooly-school-card__cta i {
  background:var(--schooly-active)!important;
  color:#fff!important;
}

.categories-swiper .schooly-school-favorite:hover,
.categories-swiper .schooly-school-favorite.is-favorite {
  border-color:var(--schooly-active)!important;
  background:var(--schooly-active)!important;
  color:#fff!important;
  box-shadow:0 9px 24px var(--schooly-active-ring)!important;
}

.schooly-schools-progress {
  margin:13px 5px 0;
  display:grid;
  grid-template-columns:minmax(120px,220px) auto;
  align-items:center;
  justify-content:center;
  gap:13px;
}

.schooly-schools-progress__bar {
  position:relative!important;
  width:100%!important;
  height:4px!important;
  overflow:hidden;
  border-radius:99px;
  background:#dfeae5!important;
}

.schooly-schools-progress__bar .swiper-pagination-progressbar-fill {
  border-radius:99px;
  background:var(--schooly-active)!important;
}

.schooly-schools-progress span {
  color:#849b91;
  font-size:10px;
  font-weight:800;
}

@media(max-width:767px) {
  .ecommza-categories { padding:58px 0 62px!important; }
  .schooly-schools-head { margin-bottom:20px!important; align-items:flex-start!important; flex-direction:column; }
  .schooly-schools-head p { display:block!important; font-size:11px!important; }
  .schooly-schools-head__actions { width:100%; justify-content:space-between; }
  .schooly-schools-head__favorite span { display:inline!important; }
  .categories-slider-btn { width:39px!important; height:39px!important; }
  .schooly-schools-head__favorite { min-height:49px!important; padding:0 14px!important; }
  .ecommza-categories__shell { margin:0!important; padding:4px 0 0!important; }
  .categories-swiper { padding:7px 0 16px!important; overflow:hidden!important; }
  .categories-swiper .ecommza-cat-item { height:395px!important; min-height:395px; border-radius:19px!important; }
  .categories-swiper .ecommza-cat-item__img { flex-basis:225px!important; height:225px!important; }
  .categories-swiper .schooly-school-card__body { height:154px!important; min-height:154px!important; }
  .schooly-schools-progress { grid-template-columns:minmax(100px,1fr) auto; margin-inline:0; }
}

/* Rebuilt global command search */
.schooly-command-search {
  padding:clamp(10px,2vw,24px)!important;
  place-items:center!important;
}

.schooly-command-search__backdrop {
  background:rgba(4,24,37,.82)!important;
  backdrop-filter:blur(15px) saturate(.8)!important;
}

.schooly-command-search__dialog {
  width:min(860px,calc(100vw - 24px))!important;
  max-height:min(72vh,640px)!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.7)!important;
  border-radius:22px!important;
  background:#f6f8fc!important;
  box-shadow:0 32px 90px rgba(1,17,29,.42)!important;
}

.schooly-command-search__header {
  position:relative;
  overflow:hidden;
  min-height:112px;
  margin:0!important;
  padding:20px 24px!important;
  align-items:center!important;
  background:radial-gradient(circle at 7% 0,rgba(47,98,206,.34),transparent 35%),linear-gradient(145deg,#0a1f3f,#123b6f);
}

.schooly-command-search__header::after {
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  bottom:-135px;
  left:8%;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
  box-shadow:0 0 0 34px rgba(255,255,255,.025),0 0 0 68px rgba(255,255,255,.015);
}

.schooly-command-search__header > div { position:relative; z-index:1; }
.schooly-command-search__kicker { margin-bottom:7px!important; display:flex!important; align-items:center; gap:7px; color:#8ee9c6!important; font-size:11px!important; letter-spacing:0!important; }
.schooly-command-search__header h2 { color:#fff!important; font-size:clamp(22px,2.4vw,30px)!important; font-weight:900!important; }
.schooly-command-search__header p { max-width:520px; margin:6px 0 0; color:rgba(255,255,255,.62); font-size:11px!important; line-height:1.7; }
.schooly-command-search__close { position:relative; z-index:2; width:40px!important; height:40px!important; border:1px solid rgba(255,255,255,.16)!important; background:rgba(255,255,255,.1)!important; color:#fff!important; backdrop-filter:blur(10px); }
.schooly-command-search__close:hover { background:var(--schooly-active)!important; color:#fff!important; }

.schooly-command-search__bar {
  position:sticky;
  z-index:5;
  top:0;
  margin:0!important;
  padding:10px 14px!important;
  grid-template-columns:minmax(0,1fr) 210px!important;
  gap:8px!important;
  border:0!important;
  border-bottom:1px solid #e2ece7!important;
  border-radius:0!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 12px 30px rgba(15,40,90,.07)!important;
  backdrop-filter:blur(18px);
}

.schooly-command-search__input {
  min-height:50px!important;
  padding:0 14px!important;
  border:1px solid #dce9e3!important;
  border-radius:15px!important;
  background:#f7faf9!important;
  transition:border-color .28s ease,background-color .28s ease,box-shadow .28s ease!important;
}

.schooly-command-search__input:focus-within {
  border-color:var(--schooly-active)!important;
  background:#fff!important;
  box-shadow:0 0 0 4px var(--schooly-active-soft)!important;
}

.schooly-command-search__input > i { color:var(--schooly-active-dark)!important; }
.schooly-command-search__input input { height:48px!important; color:#123f30!important; font-size:13px!important; font-weight:800!important; }
.schooly-command-search__clear { background:#eaf4ef!important; color:#567267!important; transition:.25s ease; }
.schooly-command-search__clear:hover { background:var(--schooly-active)!important; color:#fff!important; transform:rotate(90deg); }
.schooly-command-search__shortcut { border-color:#d6e5de!important; background:#eef6f2!important; color:#648075!important; }

.schooly-command-search__filter {
  min-height:50px;
  border:1px solid #164f3b;
  border-radius:15px!important;
  background:#0b3c2e!important;
  color:#fff!important;
}
.schooly-command-search__filter > i:first-child { color:#83e1bc; }
.schooly-command-search__filter select { font-size:11px!important; }

.schooly-command-search__results {
  margin:0!important;
  padding:14px 16px 4px!important;
  flex:0 0 auto!important;
  min-height:0!important;
  overflow:hidden!important;
}

.schooly-command-search__results:not(:empty) {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  border:0!important;
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  scrollbar-width:thin!important;
  scrollbar-color:#bdd8ce transparent!important;
}

.schooly-command-search__results:not(:empty)::-webkit-scrollbar {
  width:6px;
}

.schooly-command-search__results:not(:empty)::-webkit-scrollbar-thumb {
  background:#bdd8ce;
  border-radius:999px;
}

.schooly-command-search__results.is-entering { animation:sv2FaqResultsIn .38s cubic-bezier(.22,.61,.36,1) both; }

.schooly-command-search__results-head {
  grid-column:1/-1;
  min-height:42px;
  padding:0 4px 8px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#173f31;
}
.schooly-command-search__results-head span { display:flex; align-items:center; gap:7px; font-size:12px; font-weight:900; }
.schooly-command-search__results-head span i { color:var(--schooly-active-dark); }
.schooly-command-search__results-head strong { padding:5px 9px; border-radius:99px; background:var(--schooly-active-soft); color:var(--schooly-active-dark); font-family:Arial,sans-serif; font-size:10px; }

.schooly-command-result {
  min-height:76px;
  padding:8px!important;
  grid-template-columns:58px minmax(0,1fr) auto 26px!important;
  gap:9px!important;
  border:1px solid #e0eae5!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 7px 20px rgba(15,40,90,.04);
  transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease,background-color .3s ease!important;
}
.schooly-command-result:hover { border-color:rgba(47,98,206,.65)!important; background:#fff!important; transform:translateY(-3px)!important; box-shadow:0 16px 34px rgba(15,40,90,.11)!important; }
.schooly-command-result > img,
.schooly-command-result__type { width:58px!important; height:58px!important; border-radius:11px!important; background:#edf5f1!important; }
.schooly-command-result__type { color:var(--schooly-active-dark)!important; }
.schooly-command-result__info { gap:5px!important; }
.schooly-command-result__info b { color:#123f30!important; font-size:12px!important; line-height:1.55; font-weight:900!important; }
.schooly-command-result__info small { color:#6b7c93!important; font-size:9px!important; }
.schooly-command-result__price { color:#0f8059!important; font-size:14px!important; font-weight:900!important; }
.schooly-command-result__arrow { width:28px; height:28px; display:grid; place-items:center; border-radius:50%; background:var(--schooly-active-soft); color:var(--schooly-active-dark)!important; transition:.28s ease; }
.schooly-command-result:hover .schooly-command-result__arrow { background:var(--schooly-active); color:#fff!important; transform:translateX(-3px); }

.schooly-command-search__empty {
  min-height:220px!important;
  border-color:#cfe2d9!important;
  border-radius:18px!important;
  background:#f3f9f6!important;
  color:#718c81!important;
}
.schooly-command-search__empty i { color:var(--schooly-active-dark)!important; font-size:30px!important; }
.schooly-command-search__empty h3 { margin:5px 0 0; color:#173f31; font-size:17px; font-weight:900; }

.schooly-command-search__discover {
  margin:0!important;
  padding:18px 16px 20px;
  grid-template-columns:250px minmax(0,1fr)!important;
  gap:16px!important;
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:hidden!important;
}
.schooly-command-search__discover.is-popular-empty {
  grid-template-columns:minmax(0,1fr)!important;
}
.schooly-command-search__popular,
.schooly-command-search__categories { padding:18px; border:1px solid #e0eae5; border-radius:19px; background:#fff; box-shadow:0 8px 25px rgba(15,40,90,.045); }
.schooly-command-search__section-head { margin-bottom:13px!important; }
.schooly-command-search__section-head span { color:#173f31!important; font-size:12px!important; }
.schooly-command-search__section-head span i { color:var(--schooly-active-dark)!important; }
.schooly-command-search__tags { gap:7px!important; }
.schooly-command-search__tag { min-height:44px!important; border-color:#e0eae5!important; border-radius:12px!important; background:#f6f8fc!important; color:#456458!important; }
.schooly-command-search__tag:hover { border-color:var(--schooly-active)!important; background:var(--schooly-active)!important; color:#fff!important; }

.schooly-command-search__category-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:8px!important; }
.schooly-command-search__category {
  min-height:72px!important;
  padding:8px!important;
  grid-template-columns:48px minmax(0,1fr) 28px!important;
  align-items:center!important;
  gap:9px!important;
  border-color:#e0eae5!important;
  border-radius:14px!important;
  background:#f6f8fc!important;
  color:#173f31!important;
}
.schooly-command-search__category:hover { border-color:rgba(47,98,206,.65)!important; background:#fff!important; box-shadow:0 12px 25px rgba(15,40,90,.09); transform:translateY(-2px); }
.schooly-command-search__category-image { width:48px; height:48px; overflow:hidden; display:grid; place-items:center; border:1px solid #e2ece7; border-radius:12px; background:#fff; }
.schooly-command-search__category-image img { width:100%; height:100%; padding:3px; object-fit:contain; }
.schooly-command-search__category-copy { min-width:0; display:flex; flex-direction:column; gap:3px; }
.schooly-command-search__category-copy strong { overflow:hidden; color:#173f31; font-size:10px; font-weight:900; text-overflow:ellipsis; white-space:nowrap; }
.schooly-command-search__category-copy small { color:#81978e!important; font-size:8px!important; }
.schooly-command-search__category > i { grid-column:3!important; grid-row:auto!important; color:var(--schooly-active-dark)!important; }

@media(max-width:767px) {
  .schooly-command-search { padding:8px!important; }
  .schooly-command-search__dialog { min-height:0!important; max-height:calc(100vh - 16px)!important; border:0!important; border-radius:18px!important; }
  .schooly-command-search__header { min-height:104px; padding:18px 14px!important; }
  .schooly-command-search__header h2 { font-size:21px!important; }
  .schooly-command-search__header p { font-size:10px!important; }
  .schooly-command-search__bar { padding:9px!important; grid-template-columns:1fr!important; }
  .schooly-command-search__input,
.schooly-command-search__filter { min-height:50px!important; }
  .schooly-command-search__input input { height:48px!important; font-size:12px!important; }
  .schooly-command-search__filter { padding:0 12px!important; }
  .schooly-command-search__results { padding:12px 9px 2px!important; }
  .schooly-command-search__results:not(:empty) { grid-template-columns:1fr!important; gap:7px!important; }
  .schooly-command-result { min-height:74px; grid-template-columns:56px minmax(0,1fr) auto!important; }
  .schooly-command-result > img,
.schooly-command-result__type { width:56px!important; height:56px!important; }
  .schooly-command-result__arrow { display:none!important; }
  .schooly-command-result__price { font-size:12px!important; }
  .schooly-command-search__discover { padding:18px 9px 24px; grid-template-columns:1fr!important; gap:12px!important; }
  .schooly-command-search__popular,
.schooly-command-search__categories { padding:14px; border-radius:16px; }
  .schooly-command-search__tags { display:flex!important; flex-direction:row!important; overflow-x:auto; }
  .schooly-command-search__tag { min-width:135px!important; }
  .schooly-command-search__category-grid { grid-template-columns:1fr!important; }
}

/* Search overlay: fixed dialog height, scroll results + schools internally. */
.schooly-command-search__dialog {
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}

.schooly-command-search__header,
.schooly-command-search__bar {
  flex:0 0 auto!important;
}

.schooly-command-search__results:empty {
  flex:0 0 auto!important;
  padding:0!important;
}

.schooly-command-search__discover {
  min-height:0!important;
  overflow:hidden!important;
}

.schooly-command-search__categories {
  min-height:0!important;
  overflow:hidden!important;
}

.schooly-command-search__category-grid {
  max-height:min(220px,32vh)!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  padding-inline-end:4px!important;
  scrollbar-width:thin!important;
  scrollbar-color:#bdd8ce transparent!important;
}

.schooly-command-search__category-grid::-webkit-scrollbar {
  width:6px;
}

.schooly-command-search__category-grid::-webkit-scrollbar-track {
  background:transparent;
}

.schooly-command-search__category-grid::-webkit-scrollbar-thumb {
  background:#bdd8ce;
  border-radius:999px;
}

.schooly-command-search__input,
.schooly-command-search__input:focus,
.schooly-command-search__input:focus-within {
  border-color:#dce9e3!important;
  box-shadow:none!important;
  outline:0!important;
}

.schooly-command-search__input input,
.schooly-command-search__input input:focus,
.schooly-command-search__input input:focus-visible {
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}

@media(max-width:767px) {
  .schooly-command-search__dialog {
    width:100%!important;
    max-height:calc(100vh - 16px)!important;
    overflow:hidden!important;
  }

  .schooly-command-search__discover {
    overflow:hidden!important;
  }

  .schooly-command-search__results:not(:empty) {
    grid-template-columns:1fr!important;
    gap:7px!important;
  }

  .schooly-command-search__category-grid {
    max-height:min(360px,42vh)!important;
  }
}

/* Schools app page */
body.page-template-page-schools {
  background:#f3f6f8!important;
}

.schooly-schools-app {
  padding:0 0 74px;
  background:#f3f6f8;
  direction:rtl;
  text-align:right;
}

.schooly-schools-app__frame {
  width:min(100%,1180px);
  margin:0 auto;
  background:#fff;
  box-shadow:0 22px 70px rgba(15,23,42,.08);
  overflow:hidden;
}

.schooly-schools-app__top,
.schooly-school-detail-head {
  min-height:72px;
  padding:10px clamp(14px,3vw,24px);
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  border-bottom:1px solid #e6e9ee;
  background:#fff;
}

.schooly-schools-app__back {
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#20242a;
  font-size:18px;
  transition:background-color .2s ease,color .2s ease;
}

.schooly-schools-app__back:hover {
  background:#f0f3f6;
  color:#136df5;
}

.schooly-schools-app__title-block {
  min-width:0;
}

.schooly-schools-app__title-block span {
  display:block;
  color:#136df5;
  font-size:12px;
  font-weight:800;
}

.schooly-schools-app__title-block h1 {
  margin:2px 0 0;
  color:#23262b;
  font-size:22px!important;
  line-height:1.15!important;
  font-weight:900;
}

.schooly-schools-app__count {
  min-width:42px;
  height:34px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#eef4ff;
  color:#136df5;
  font-family:Arial,sans-serif;
  font-size:13px;
  font-weight:900;
}

.schooly-schools-directory {
  padding:16px clamp(12px,3vw,24px) 32px;
}

/* ── School Cards ──────────────────────────────────────────────────────────── */
.schooly-school-card {
  position:relative;
  display:flex;
  flex-direction:column;
  height:100%;
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  border:1px solid #eaecf0;
  box-shadow:0 4px 24px rgba(15,23,42,.06);
  transition:transform .22s,box-shadow .22s;
  text-decoration:none;
  color:inherit;
}
.schooly-school-card:hover { transform:translateY(-5px); box-shadow:0 14px 44px rgba(15,23,42,.13); }

.schooly-school-card .schooly-school-favorite {
  z-index: 5;
  top: 12px;
  inset-inline-end: 12px;
}

.schooly-school-card__banner {
  position:relative;
  height:110px;
  background:linear-gradient(135deg,#062c1c,#1a5c3a);
  overflow:hidden;
  flex-shrink:0;
}
.schooly-school-card__banner::before {
  content:'';
  position:absolute;
  inset:-10px;
  background-image:var(--sc-banner,none);
  background-size:cover;
  background-position:center;
  filter:blur(5px) brightness(.42);
}
.schooly-school-card__overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,transparent 25%,rgba(0,0,0,.5));
}

.schooly-school-card__wa {
  position:absolute;
  top:10px;
  left:10px;
  z-index:2;
  width:34px;
  height:34px;
  background:#25D366;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:15px;
  text-decoration:none;
  box-shadow:0 3px 10px rgba(37,211,102,.4);
  transition:transform .2s,box-shadow .2s;
}
.schooly-school-card__wa:hover { transform:scale(1.12); box-shadow:0 6px 18px rgba(37,211,102,.55); color:#fff; }

.schooly-school-card__logo-wrap {
  position:absolute;
  top:82px; /* banner(110px) - logo/2(28px) = centered on divider */
  right:18px;
  z-index:3;
  width:56px;
  height:56px;
  background:#fff;
  border-radius:14px;
  border:2px solid #f0f2f5;
  box-shadow:0 4px 18px rgba(0,0,0,.14);
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.schooly-school-card__logo-img { width:100%; height:100%; object-fit:cover; }

.schooly-school-card__body {
  flex:1;
  padding:38px 18px 10px;
}
.schooly-school-card__name {
  font-size:.975rem;
  font-weight:800;
  color:#16191e;
  margin:0 0 5px;
  line-height:1.3;
}
.schooly-school-card__name a { color:inherit; text-decoration:none; }
.schooly-school-card__address {
  display:flex;
  align-items:center;
  gap:5px;
  font-size:.775rem;
  color:#74777d;
  margin:0 0 7px;
}
.schooly-school-card__address i { color:#3b82f6; font-size:.7rem; flex-shrink:0; }
.schooly-school-card__desc {
  font-size:.8rem;
  color:#5a5e66;
  margin:0;
  line-height:1.6;
  display:-webkit-box;
  -webkit-line-clamp:2;
  line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.schooly-school-card__footer {
  padding:10px 18px 14px;
  border-top:1px solid #f0f2f5;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.schooly-school-card__count {
  display:flex;
  align-items:center;
  gap:5px;
  font-size:.775rem;
  font-weight:700;
  color:#3a6e53;
}
.schooly-school-card__count i { font-size:.7rem; }
.schooly-school-card__cta {
  display:flex;
  align-items:center;
  gap:5px;
  font-size:.775rem;
  font-weight:700;
  color:var(--schooly-active,#2e7d5a);
  transition:gap .18s;
}
.schooly-school-card:hover .schooly-school-card__cta { gap:9px; }

.schooly-school-detail-head__logo {
  display:grid;
  place-items:center;
  border-radius:4px;
  background:#f6f6f6;
  overflow:hidden;
  width:54px;
  height:54px;
}
.schooly-school-detail-head__logo img { width:100%; height:100%; object-fit:contain; padding:5px; }

.schooly-school-detail-head {
  grid-template-columns:54px minmax(0,1fr) 44px;
  gap:12px;
}

.schooly-school-detail-head__logo {
  width:54px;
  height:54px;
}

.schooly-school-detail-head__body { min-width:0; }

.schooly-school-detail-head__title-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:3px;
}

.schooly-school-detail-head__body h1 {
  margin:0;
  font-size:16px!important;
  letter-spacing:0!important;
  flex:1;
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.schooly-school-detail-head__wa {
  flex-shrink:0;
  width:32px;
  height:32px;
  background:#25D366;
  border-radius:9px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:15px;
  text-decoration:none;
  box-shadow:0 3px 10px rgba(37,211,102,.35);
  transition:transform .2s,box-shadow .2s;
}
.schooly-school-detail-head__wa:hover { transform:scale(1.1); color:#fff; }

.schooly-school-detail-head__fav {
  position:relative;
  inset:unset;
  width:44px;
  height:44px;
  align-self:center;
  display:grid;
  place-items:center;
  border:1.5px solid #e5e7eb;
  border-radius:12px;
  background:#fafafa;
  color:#64748b;
  font-size:20px;
  cursor:pointer;
  transition:border-color .2s,background .2s,color .2s,box-shadow .2s;
}

.schooly-school-detail-head__fav:hover,
.schooly-school-detail-head__fav.is-active,
.schooly-school-detail-head__fav[aria-pressed="true"] {
  border-color:#e3395f;
  background:#fff1f4;
  color:#e3395f;
  box-shadow:0 4px 12px rgba(227,57,95,.18);
}

.schooly-school-stage-tabs {
  min-height:50px;
  padding:0 clamp(10px,3vw,24px);
  display:flex;
  align-items:end;
  justify-content:flex-start;
  gap:0;
  border-bottom:1px solid #e6e9ee;
  background:#fff;
  overflow-x:auto;
  scrollbar-width:none;
}

.schooly-school-stage-tabs::-webkit-scrollbar,
.schooly-school-sub-tabs::-webkit-scrollbar {
  display:none;
}

.schooly-school-stage-tabs a {
  height:50px;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-bottom:2px solid transparent;
  color:#353840;
  font-size:15px;
  line-height:1;
  font-weight:500;
  white-space:nowrap;
}

.schooly-school-stage-tabs a:hover,
.schooly-school-stage-tabs a.is-active {
  border-bottom-color:#136df5;
  color:#136df5;
}

.schooly-school-sub-tabs-shell {
  background:#fff;
  border-bottom:1px solid #edf0f3;
}

.schooly-school-sub-tabs {
  min-height:64px;
  padding:14px clamp(12px,3vw,24px);
  display:none;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  background:#fff;
  overflow-x:auto;
  scrollbar-width:none;
}

.schooly-school-sub-tabs.is-active {
  display:flex;
}

.schooly-school-sub-tabs a {
  min-height:36px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #e0e4ea;
  border-radius:999px;
  background:#fff;
  color:#252a31;
  font-size:15px;
  font-weight:500;
  white-space:nowrap;
  box-shadow:0 4px 14px rgba(15,23,42,.035);
}

.schooly-school-sub-tabs a:hover,
.schooly-school-sub-tabs a.is-active {
  border-color:#e9eefb;
  background:#edf3ff;
  color:#136df5;
}

.schooly-school-products {
  padding:22px clamp(12px,3vw,24px) 34px;
  background:#f5f7fa;
}

.schooly-schools-ajax-results {
  min-height:320px;
  transition:opacity .25s ease;
}

.schooly-schools-ajax-results.is-loading {
  opacity:.82;
}

.schooly-school-products .products {
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  list-style:none!important;
}

.schooly-school-products .products > li.product {
  width:auto!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
  float:none!important;
}

.schooly-school-products .products .schooly-product-card {
  height:100%;
  border-radius:18px;
}

.schooly-school-products .sv2-school-pagination {
  margin-top:24px;
}

.schooly-school-products__grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.schooly-school-products__grid .schooly-product-card {
  height:100%;
  border-radius:18px;
}

.schooly-school-products__pagination {
  margin-top:24px;
  display:flex;
  justify-content:center;
}

.schooly-school-products__pagination ul {
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  gap:8px;
  list-style:none;
}

.schooly-school-products__pagination a,
.schooly-school-products__pagination span {
  min-width:38px;
  height:38px;
  padding:0 12px;
  display:grid;
  place-items:center;
  border:1px solid #dde5ee;
  border-radius:12px;
  background:#fff;
  color:#26313d;
  font-family:Arial,sans-serif;
  font-size:13px;
  font-weight:900;
}

.schooly-school-products__pagination .current {
  border-color:#136df5;
  background:#136df5;
  color:#fff;
}

@media(min-width:900px) {
  .schooly-schools-app {
    padding-top:28px;
  }

  .schooly-schools-app__frame {
    border-radius:26px;
  }
}

@media(max-width:991px) {
  .schooly-school-products__grid,
  .schooly-school-products .products {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:575px) {
  .schooly-schools-app {
    padding:0;
  }

  .schooly-schools-app__frame {
    min-height:100vh;
    box-shadow:none;
  }

  .schooly-school-products__grid,
  .schooly-school-products .products {
    grid-template-columns:1fr;
  }

  .schooly-school-stage-tabs a {
    padding:0 16px;
    font-size:14px;
  }

  .schooly-school-sub-tabs a {
    min-height:35px;
    padding:0 16px;
    font-size:14px;
  }
}

/* ── Attribute Selectors — اختيارات المقاس / اللون / النوع ── */
.schooly-attr-selectors {
  margin:18px 0 22px;
  padding:14px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  border:1px solid #e3e9ef;
  border-radius:16px;
  background:#f8fafc;
}

.schooly-attr-selectors__head {
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#1f3c32;
  font-size:13px;
  font-weight:900;
}

.schooly-attr-row {
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:7px;
}

.schooly-attr-label {
  color:#53675f;
  font-size:12px;
  line-height:1.2;
  font-weight:900;
  white-space:nowrap;
}

.schooly-attr-select {
  width:100%;
  min-height:46px;
  padding:0 13px;
  border:1px solid #d7e2dc;
  border-radius:12px;
  background:#fff;
  color:#143f31;
  cursor:pointer;
  font-size:14px;
  font-weight:800;
  box-shadow:0 8px 22px rgba(15,23,42,.035);
  transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;
  appearance:auto;
}

.schooly-attr-select:focus {
  outline:0;
  border-color:var(--schooly-active);
  box-shadow:0 0 0 4px var(--schooly-active-soft),0 10px 24px rgba(15,23,42,.05);
}

.schooly-attr-select.schooly-attr-error {
  border-color:#e53935;
  background:#fff8f8;
  box-shadow:0 0 0 4px rgba(229,57,53,.12);
}

@media (max-width: 480px) {
  .schooly-attr-selectors { grid-template-columns:1fr; padding:12px; }
}

/* ── تاب معلومات المنتج + تاب المقاسات ── */
.schooly-product-info-tab,
.schooly-size-chart-tab {
  display: flex;
  flex-direction: column;
  gap: 28px;
  padding: 4px 0;
}
.schooly-size-chart-tab__image {
  border-top: none;
  padding-top: 0;
  text-align: center;
}
.schooly-size-guide-image {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.schooly-info-section {
  border-top: 1px solid #eef0f5;
  padding-top: 20px;
}
.schooly-info-section:first-child { border-top: none; padding-top: 0; }
.schooly-info-heading {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 700;
  color: #1a1a2e;
  margin: 0 0 12px;
}
.schooly-info-heading i { color: #3c6af5; font-size: 14px; }
.schooly-info-body { font-size: 14px; color: #444; line-height: 1.8; }
.schooly-info-body ul { padding-right: 20px; margin: 0; }
.schooly-info-body li { margin-bottom: 6px; }

/* Contact page */
.sv2-contact-hero__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.sv2-contact { padding:60px 0 90px; background:#f5f8ff; }
.sv2-contact-shell { display:grid; grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr); gap:24px; align-items:start; }
.sv2-contact-aside { display:grid; gap:16px; }
.sv2-contact-cards { display:grid; gap:12px; }
.sv2-contact-card { display:flex; align-items:flex-start; gap:14px; padding:18px; border:1px solid #e3eaf5; border-radius:20px; background:#fff; box-shadow:0 10px 30px rgba(13,35,78,.05); transition:border-color .28s ease,transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease; }
.sv2-contact-card:hover { border-color:#cbdaf5; transform:translateY(-2px); box-shadow:0 16px 40px rgba(13,35,78,.08); }
.sv2-contact-card__icon { width:46px; height:46px; display:grid; place-items:center; flex:0 0 46px; border-radius:14px; background:linear-gradient(135deg,#eaf1ff,#f4f8ff); color:#2059c9; font-size:16px; }
.sv2-contact-card h2 { margin:0 0 6px; color:#6f7f99; font-size:11px; font-weight:900; letter-spacing:.02em; }
.sv2-contact-card p,
.sv2-contact-card a { margin:0; color:#10284e; font-size:14px; line-height:1.8; font-weight:700; text-decoration:none; }
.sv2-contact-card a:hover { color:#2059c9; }
.sv2-contact-social,
.sv2-contact-help { padding:20px; border:1px solid #e3eaf5; border-radius:20px; background:#fff; box-shadow:0 10px 30px rgba(13,35,78,.05); }
.sv2-contact-social h2,
.sv2-contact-help h2 { margin:0 0 10px; color:#081a39; font-size:15px; font-weight:900; }
.sv2-contact-social__links { display:flex; flex-wrap:wrap; gap:10px; }
.sv2-contact-social__links a { width:44px; height:44px; display:grid; place-items:center; border:1px solid #dfe7f4; border-radius:14px; background:#f8faff; color:#2059c9; font-size:16px; transition:transform .28s ease,background-color .28s ease,border-color .28s ease,color .28s ease; }
.sv2-contact-social__links a:hover { border-color:#2059c9; background:#2059c9; color:#fff; transform:translateY(-2px); }
.sv2-contact-help { display:flex; gap:14px; align-items:flex-start; background:linear-gradient(135deg,#f8faff,#fff); }
.sv2-contact-help__icon { width:46px; height:46px; display:grid; place-items:center; flex:0 0 46px; border-radius:14px; background:#eaf1ff; color:#2059c9; font-size:18px; }
.sv2-contact-help p { margin:0 0 12px; color:#697a95; font-size:13px; line-height:1.8; }
.sv2-contact-form-panel { padding:28px; border:1px solid #e3eaf5; border-radius:28px; background:#fff; box-shadow:0 20px 60px rgba(13,35,78,.08); }
.sv2-contact-form-panel__head { margin-bottom:24px; }
.sv2-contact-form-panel__head h2 { margin:10px 0 8px; color:#081a39; font-size:clamp(24px,3vw,32px); font-weight:900; }
.sv2-contact-form-panel__head p { margin:0; color:#697a95; font-size:14px; line-height:1.8; }
.sv2-eyebrow--dark { padding:8px 12px; border-radius:999px; color:#2059c9; background:#eaf1ff; }
.sv2-contact-form__row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-bottom:16px; }
.sv2-contact-field { display:flex; flex-direction:column; gap:8px; }
.sv2-contact-field--full { grid-column:1/-1; }
.sv2-contact-field label { color:#29466f; font-size:12px; font-weight:900; }
.sv2-contact-field label span { color:#e74c3c; }
.sv2-contact-field input,
.sv2-contact-field select,
.sv2-contact-field textarea { width:100%; min-height:52px; padding:0 16px; border:1px solid #dfe7f4; border-radius:15px; background:#f8faff; color:#10284e; font-size:14px; transition:border-color .28s ease,box-shadow .28s ease,background-color .28s ease; }
.sv2-contact-field textarea { min-height:150px; padding:14px 16px; resize:vertical; }
.sv2-contact-field input:focus,
.sv2-contact-field select:focus,
.sv2-contact-field textarea:focus { border-color:#2059c9; background:#fff; box-shadow:0 0 0 4px rgba(32,89,201,.1); outline:0; }
.sv2-contact-form .submit-btn { width:100%; margin-top:4px; }
.sv2-contact-map { margin-top:24px; height:420px; overflow:hidden; border:1px solid #e3eaf5; border-radius:28px; background:#fff; box-shadow:0 20px 60px rgba(13,35,78,.08); }
.sv2-contact-map iframe { width:100%; height:100%; border:0; display:block; }
.sv2-contact-cf7 .wpcf7 { margin:0; }
.sv2-contact-cf7 form { margin:0; }
.sv2-contact-cf7 .wpcf7-form-control-wrap { display:block; }
.sv2-contact-cf7 input.wpcf7-form-control:not([type="submit"]),
.sv2-contact-cf7 select.wpcf7-form-control,
.sv2-contact-cf7 textarea.wpcf7-form-control { width:100%; min-height:52px; padding:0 16px; border:1px solid #dfe7f4; border-radius:15px; background:#f8faff; color:#10284e; font-size:14px; transition:border-color .28s ease,box-shadow .28s ease,background-color .28s ease; }
.sv2-contact-cf7 textarea.wpcf7-form-control { min-height:150px; padding:14px 16px; resize:vertical; }
.sv2-contact-cf7 input.wpcf7-form-control:focus,
.sv2-contact-cf7 select.wpcf7-form-control:focus,
.sv2-contact-cf7 textarea.wpcf7-form-control:focus { border-color:#2059c9; background:#fff; box-shadow:0 0 0 4px rgba(32,89,201,.1); outline:0; }
.sv2-contact-cf7 .wpcf7-submit { width:100%; margin-top:4px; }
.sv2-contact-cf7 .wpcf7-spinner { margin:12px auto 0; }
.sv2-contact-cf7 .wpcf7-response-output { margin:16px 0 0; padding:14px 16px; border:1px solid #dfe7f4; border-radius:15px; background:#f8faff; color:#29466f; font-size:13px; line-height:1.8; }
.sv2-contact-cf7 .wpcf7 form.sent .wpcf7-response-output { border-color:#b8e6c8; background:#edf9f1; color:#1f6b3f; }
.sv2-contact-cf7 .wpcf7 form.failed .wpcf7-response-output,
.sv2-contact-cf7 .wpcf7 form.aborted .wpcf7-response-output,
.sv2-contact-cf7 .wpcf7 form.spam .wpcf7-response-output,
.sv2-contact-cf7 .wpcf7 form.invalid .wpcf7-response-output { border-color:#f3c4c4; background:#fff5f5; color:#a83232; }
.sv2-contact-cf7 .wpcf7-not-valid-tip { margin-top:6px; color:#d64545; font-size:12px; font-weight:700; }
.sv2-contact-empty { padding:40px 20px; border:1px dashed #dfe7f4; border-radius:18px; background:#f8faff; text-align:center; color:#697a95; }
.sv2-contact-empty i { display:block; margin-bottom:12px; color:#2059c9; font-size:30px; }
@media(max-width:991px){.sv2-contact-shell {grid-template-columns:1fr}}
@media(max-width:767px){.sv2-contact {padding:40px 0 70px}.sv2-contact-form-panel {padding:18px;border-radius:20px}.sv2-contact-form__row {grid-template-columns:1fr}.sv2-contact-map {height:300px;border-radius:20px}.sv2-contact-hero__actions {flex-direction:column;align-items:stretch}.sv2-contact-hero__actions .sv2-btn {width:100%}}
