/* ==========================================================================
   مدرسة القلم — school section (from the client's concept)
   Loaded on the /school/ tree and LearnPress pages only.
   ========================================================================== */

body.alq-school {
	--s-brown: #6D3D34;
	--s-ink: #2A1E1A;
	--s-soft: #4A3F3B;
	--s-muted: #686463;
	--s-cream: #FAF6F1;
	--s-line: #E6DDD5;
	--s-line2: #D9CFC6;
	--s-terra: #D87558;
	--s-peach: #EBB09D;
	--s-sage: #8CA493;
	--s-blue: #A3B3BA;
	--s-gold: #C4A04A;
	--s-olive: #A0946A;
	--s-rust: #B0563B;
	--s-blush: #F6E4DC;
	--s-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%23EBB09D' stroke-opacity='.28' stroke-width='1'%3E%3Cpath d='M40 8l9.4 22.6L72 40l-22.6 9.4L40 72l-9.4-22.6L8 40l22.6-9.4z'/%3E%3Cpath d='M17.4 17.4h45.2v45.2H17.4z' transform='rotate(45 40 40)'/%3E%3Ccircle cx='40' cy='40' r='6'/%3E%3C/g%3E%3C/svg%3E");

	/* Skin: the site's design tokens in the school palette, so older school pages match the new ones. */
	--alq-ink: var(--s-ink);
	--alq-ink-soft: var(--s-soft);
	--alq-muted: var(--s-muted);
	--alq-terra: var(--s-brown);
	--alq-terra-light: var(--s-terra);
	--alq-gold: var(--s-gold);
	--alq-cream: var(--s-cream);
	--alq-sand: var(--s-line);
	--alq-line: var(--s-line);
	--alq-white: #fff;
	--alq-radius: 0px;
	--alq-radius-sm: 0px;
	--alq-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%236D3D34' stroke-opacity='.08' stroke-width='1'%3E%3Cpath d='M40 8l9.4 22.6L72 40l-22.6 9.4L40 72l-9.4-22.6L8 40l22.6-9.4z'/%3E%3Cpath d='M17.4 17.4h45.2v45.2H17.4z' transform='rotate(45 40 40)'/%3E%3Ccircle cx='40' cy='40' r='6'/%3E%3C/g%3E%3C/svg%3E");
	background: #fff;
	color: var(--s-ink);
}
body.alq-school .wp-block-button__link,
body.alq-school .ast-button,
body.alq-school .button,
body.alq-school button.button,
body.alq-school .lp-button,
body.alq-school input[type="submit"] { border-radius: 0 !important; }
body.alq-school .wp-block-button__link,
body.alq-school .lp-button { background: var(--s-brown); color: #fff; }
body.alq-school .is-style-alq-ghost .wp-block-button__link { background: transparent; color: var(--s-brown); border-color: var(--s-brown); }

/* Older school pages: title band in the concept's brown pattern. */
body.alq-school:not(.alq-school-landing) .page .entry-header,
body.alq-school:not(.alq-school-landing) .ast-archive-description {
	background: linear-gradient(rgba(109, 61, 52, .93), rgba(109, 61, 52, .93)), var(--s-pattern);
	background-size: auto, 80px 80px;
	border-radius: 0;
	border-top: 0;
}
body.alq-school:not(.alq-school-landing) .page .entry-title,
body.alq-school:not(.alq-school-landing) .ast-archive-description .ast-archive-title { color: #fff; }
body.alq-school .alq-card, body.alq-school .alq-member { border-radius: 0; }
body.alq-school .alq-card__more { color: var(--s-brown); }

/* Landing pages draw everything themselves. */
body.alq-school-landing .entry-header { display: none; }
body.alq-school-landing .site-content > .ast-container,
body.alq-school-landing #primary { padding: 0 !important; margin: 0 !important; max-width: none; }
body.alq-school-landing .entry-content > * { margin-block: 0; }
body.alq-school-landing article.page { padding: 0 !important; margin: 0 !important; }

/* ---------- School bar ---------- */
.alq-stripe { display: flex; height: 6px; }
.alq-stripe i { flex: 1; }
.alq-stripe i:nth-child(1) { background: #8CA493; }
.alq-stripe i:nth-child(2) { background: #A3B3BA; }
.alq-stripe i:nth-child(3) { background: #D87558; }
.alq-stripe i:nth-child(4) { background: #EBB09D; }
.alq-stripe i:nth-child(5) { background: #6D3D34; }
.alq-stripe i:nth-child(6) { background: #686463; }
.alq-stripe i:nth-child(7) { background: #A0946A; }
.alq-stripe i:nth-child(8) { background: #C4A04A; }

.alq-sbar { position: relative; z-index: 30; background: #fff; border-bottom: 1px solid var(--s-line); font-family: var(--alq-font); }
.alq-sbar__in { max-width: 1280px; margin: 0 auto; padding: 8px 24px; display: flex; align-items: center; gap: 20px; }
.alq-sbar__brand { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--s-ink); font-weight: 700; font-size: 17px; flex: none; }
.alq-sbar__brand img { height: 44px; width: auto; border-radius: 0; }
.alq-sbar__nav { display: flex; align-items: center; gap: 4px 22px; flex: 1; flex-wrap: wrap; font-size: 15.5px; font-weight: 600; }
.alq-sbar__nav a { color: var(--s-ink); text-decoration: none; padding: 10px 0; }
.alq-sbar__nav a:hover { color: var(--s-brown); box-shadow: inset 0 -3px 0 var(--s-terra); }
.alq-sbar__toggle { font: inherit; font-weight: 700; display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 14px; border: 0; background: transparent; color: var(--s-ink); cursor: pointer; border-radius: 0; }
.alq-sbar__toggle[aria-expanded="true"] { background: var(--s-brown); color: #fff; }
.alq-sbar__toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.alq-sbar__cta { flex: none; }

.alq-smenu { position: absolute; top: 100%; inset-inline: 0; background: #fff; border-top: 4px solid var(--s-brown); box-shadow: 0 28px 56px rgba(42, 30, 26, .22); }
.alq-smenu[hidden] { display: none; }
.alq-smenu__in { max-width: 1280px; margin: 0 auto; padding: 24px; display: flex; flex-wrap: wrap; gap: 24px; }
.alq-smenu__col { flex: 1 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.alq-smenu__col--branch { flex: 1 1 360px; }
.alq-smenu__label { font-size: 14.5px; font-weight: 700; color: var(--s-muted); }
.alq-smenu__modes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.alq-mode { text-decoration: none; color: var(--s-ink); background: var(--s-cream); border-top: 5px solid var(--c); padding: 16px; display: flex; flex-direction: column; gap: 6px; min-height: 130px; }
.alq-mode svg { color: var(--s-brown); }
.alq-mode strong { font-size: 20px; }
.alq-mode span { font-size: 14.5px; line-height: 1.7; color: var(--s-soft); }
.alq-mode:hover { background: #F3ECE4; color: var(--s-ink); }
.alq-branch { text-decoration: none; color: var(--s-ink); border: 1.5px solid var(--s-line); border-inline-start: 6px solid var(--s-terra); padding: 14px 16px; display: flex; flex-direction: column; gap: 4px; }
.alq-branch--more { border-inline-start-color: var(--s-blue); }
.alq-branch strong { font-size: 19px; }
.alq-branch span { font-size: 14.5px; color: var(--s-soft); line-height: 1.7; }
.alq-branch em { font-style: normal; font-size: 14px; font-weight: 700; color: var(--s-brown); }
.alq-branch:hover { color: var(--s-ink); background: var(--s-cream); }
.alq-smenu__foot { flex: 1 1 100%; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; border-top: 1px solid var(--s-line); padding-top: 12px; font-size: 15.5px; }
.alq-smenu__foot a { font-weight: 700; color: var(--s-brown); }
.alq-smenu__close { font: inherit; font-size: 14.5px; font-weight: 700; min-height: 42px; padding: 0 16px; border: 1.5px solid var(--s-line2); background: #fff; color: var(--s-ink); cursor: pointer; border-radius: 0; }

/* ---------- Building blocks ---------- */
.alq-s { color: var(--s-ink); font-family: var(--alq-font); font-size: 17px; line-height: 1.8; }
.alq-s h1, .alq-s h2, .alq-s h3 { font-family: var(--alq-font); color: inherit; font-weight: 800; margin: 0; letter-spacing: 0; }
.alq-s p { margin: 0; }
.alq-s img { border-radius: 0; }
.alq-s a { text-underline-offset: .2em; }
.alq-swrap { max-width: 1280px; margin: 0 auto; padding-inline: 32px; }
.alq-ssec { padding-block: 84px; }
.alq-ssec--tight { padding-block: 56px; }
.alq-ssec--cream { background: var(--s-cream); }
.alq-bgp { background-color: var(--s-brown); background-image: linear-gradient(rgba(109, 61, 52, .9), rgba(109, 61, 52, .9)), var(--s-pattern); background-size: auto, 80px 80px; color: #fff; }
.alq-center { text-align: center; margin-top: 28px !important; }
.alq-muted { color: var(--s-muted); font-size: 15px; }

.alq-shead { display: flex; flex-direction: column; gap: 10px; max-width: 780px; margin-bottom: 30px; }
.alq-seyebrow { font-size: 16.5px; font-weight: 700; color: var(--s-rust); }
.alq-seyebrow--light { color: var(--s-peach); }
.alq-shead h2 { font-size: clamp(30px, 2.2rem + 1vw, 44px); line-height: 1.35; }
.alq-slead { font-size: 19px; line-height: 1.8; color: var(--s-soft); }

.alq-sbtn { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 22px; background: var(--s-brown); color: #fff !important; font-weight: 700; font-size: 16px; text-decoration: none; border: 1.5px solid var(--s-brown); border-radius: 0; cursor: pointer; font-family: inherit; line-height: 1.3; text-align: center; transition: background .2s, color .2s; }
.alq-sbtn:hover { background: var(--s-ink); border-color: var(--s-ink); color: #fff !important; }
.alq-sbtn--block { display: flex; width: 100%; }
.alq-sbtn--outline { background: transparent; color: var(--s-brown) !important; }
.alq-sbtn--outline:hover { background: var(--s-brown); color: #fff !important; }
.alq-sbtn--light { background: var(--s-peach); border-color: var(--s-peach); color: var(--s-brown) !important; min-height: 54px; font-size: 17.5px; }
.alq-sbtn--light:hover { background: #fff; border-color: #fff; color: var(--s-brown) !important; }
.alq-sbtn--outline-light { background: transparent; border-color: var(--s-peach); color: #fff !important; min-height: 54px; font-size: 17.5px; }
.alq-sbtn--outline-light:hover { background: var(--s-peach); color: var(--s-brown) !important; }
.alq-sbtns { display: flex; flex-wrap: wrap; gap: 10px; }
.alq-more { font-weight: 700; color: var(--s-brown); text-decoration: none; }

.alq-chips { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 22px; }
.alq-chips__label { font-weight: 700; font-size: 16.5px; margin-inline-end: 6px; }
.alq-chip { font: inherit; font-size: 15.5px; font-weight: 600; padding: 0 16px; min-height: 44px; cursor: pointer; background: #fff; color: var(--s-ink); border: 1.5px solid var(--s-line2); border-radius: 0; }
.alq-chip[aria-pressed="true"] { background: var(--s-brown); color: #fff; border-color: var(--s-brown); }
.alq-chip:hover { border-color: var(--s-brown); }

.alq-tags { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.alq-tags li { font-size: 14px; font-weight: 700; padding: 4px 10px; border: 1.5px solid var(--c, var(--s-line2)); color: var(--s-ink); margin: 0; }
.alq-tags--ink li { border-color: var(--s-ink); }

.alq-dots { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; font-size: 17.5px; }
.alq-dots li { display: flex; gap: 12px; align-items: flex-start; margin: 0; }
.alq-dots li::before { content: ""; flex: none; width: 12px; height: 12px; background: var(--c); margin-top: 10px; }
.alq-dots--ink { font-size: 16px; }

.alq-snote { font-size: 16px; line-height: 1.8; color: var(--s-soft); background: var(--s-cream); padding: 14px 18px; margin-block: 18px !important; }
.alq-sstrip { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; background: var(--s-cream); padding: 20px 24px; margin-top: 26px; }
.alq-sstrip p { font-size: 17.5px; line-height: 1.7; }

/* ---------- Hero ---------- */
.alq-shero__in { display: flex; flex-wrap: wrap; align-items: center; gap: 48px; padding-block: 72px; }
.alq-shero__text { flex: 1 1 540px; min-width: 0; display: flex; flex-direction: column; gap: 20px; }
.alq-shero__eyebrow { font-size: 18px; font-weight: 700; color: var(--s-peach); }
.alq-shero h1 { font-size: clamp(36px, 2rem + 2.6vw, 60px); line-height: 1.3; font-weight: 900; color: #fff; }
.alq-shero__lead { font-size: clamp(19px, 1rem + .6vw, 24px); line-height: 1.7; font-weight: 600; }
.alq-shero__sub { font-size: 18px; line-height: 1.9; color: var(--s-blush); max-width: 600px; }
.alq-shero__stats { margin: 8px 0 0; display: flex; flex-wrap: wrap; gap: 12px 36px; border-top: 1px solid rgba(235, 176, 157, .5); padding-top: 18px; }
.alq-shero__stats dt { font-size: 14px; color: var(--s-peach); font-weight: 400; }
.alq-shero__stats dd { margin: 4px 0 0; font-size: 17px; font-weight: 700; }
.alq-shero__fig { flex: 1 1 400px; min-width: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.alq-shero__fig img { width: 100%; height: 500px; object-fit: cover; display: block; border: 6px solid var(--s-peach); box-sizing: border-box; }
.alq-shero__fig figcaption { font-size: 15px; line-height: 1.6; color: var(--s-blush); }

/* ---------- Audience split ---------- */
.alq-split { display: flex; flex-wrap: wrap; gap: 24px; }
.alq-splitcard { flex: 1 1 420px; min-width: 0; text-decoration: none; color: var(--s-ink); background: var(--s-cream); border-top: 6px solid var(--c); padding: 30px; display: flex; flex-direction: column; gap: 10px; transition: background .2s; }
.alq-splitcard:hover { background: #F3ECE4; color: var(--s-ink); }
.alq-splitcard__k { font-size: 15px; font-weight: 700; color: var(--s-muted); }
.alq-splitcard__t { font-size: 28px; font-weight: 900; }
.alq-splitcard__d { font-size: 18px; line-height: 1.8; color: var(--s-soft); }

/* ---------- Paths ---------- */
.alq-paths { display: flex; flex-wrap: wrap; gap: 20px; }
.alq-path { flex: 1 1 300px; min-width: 0; display: flex; flex-direction: column; background: #fff; border: 2px solid var(--s-line); transition: border-color .2s, box-shadow .2s; }
.alq-path.is-match { border-color: var(--s-brown); box-shadow: 0 14px 36px rgba(109, 61, 52, .22); }
.alq-path__top { background: var(--c); color: var(--s-ink); padding: 24px; display: flex; flex-direction: column; gap: 6px; min-height: 150px; }
.alq-path__row { display: flex; justify-content: space-between; align-items: center; min-height: 28px; }
.alq-path__verb { font-size: 30px; font-weight: 900; }
.alq-path__match { display: none; background: var(--s-ink); color: #fff; font-size: 13px; font-weight: 700; padding: 3px 10px; }
.alq-path.is-match .alq-path__match { display: inline-block; }
.alq-path h3 { font-size: 22px; font-weight: 700; color: var(--s-ink); }
.alq-path__tag { font-size: 16px; font-weight: 600; }
.alq-path__body { padding: 22px 24px 24px; display: flex; flex-direction: column; gap: 16px; flex: 1; }
.alq-path__body > p { font-size: 17px; line-height: 1.8; color: var(--s-soft); }
.alq-path__who { display: flex; gap: 8px; align-items: baseline; border-top: 1px solid var(--s-line); padding-top: 14px; }
.alq-path__who span { font-size: 14px; font-weight: 700; color: var(--s-muted); }
.alq-path__who strong { font-size: 17px; }
.alq-path__body .alq-sbtn { margin-top: auto; }

/* ---------- Recorded ---------- */
.alq-rec { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.alq-rec__card { display: flex; flex-direction: column; gap: 8px; text-decoration: none; color: var(--s-ink); background: #fff; border: 1px solid var(--s-line); border-top: 5px solid var(--s-blue); padding-bottom: 16px; }
.alq-rec__img img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.alq-rec__t { font-size: 20px; font-weight: 800; padding-inline: 18px; }
.alq-rec__card .alq-more { padding-inline: 18px; font-size: 15px; }
.alq-rec__card:hover { color: var(--s-ink); border-color: var(--s-brown); }

/* ---------- Learn from the artist ---------- */
.alq-tabs { display: flex; flex-wrap: wrap; border-bottom: 2px solid var(--s-line2); margin-bottom: 22px; }
.alq-tab { font: inherit; font-size: 19px; font-weight: 700; padding: 0 24px; min-height: 56px; border: 0; cursor: pointer; background: transparent; color: var(--s-muted); border-bottom: 4px solid transparent; margin-bottom: -2px; border-radius: 0; }
.alq-tab span { font-weight: 400; font-size: 15px; }
.alq-tab[aria-selected="true"] { background: #fff; color: var(--s-brown); border-bottom-color: var(--s-terra); }
.alq-tabpanel + .alq-tabpanel { margin-top: 40px; }
.alq-sjs .alq-tabpanel + .alq-tabpanel { margin-top: 0; }
.alq-sjs .alq-tabpanel:not(.is-on), .alq-sjs .alq-disc:not(.is-on), .alq-sjs .alq-wdetail:not(.is-on), .alq-sjs .alq-svcpanel:not(.is-on) { display: none; }
.alq-disc { display: flex; flex-wrap: wrap; background: #fff; border: 1px solid var(--s-line); margin-bottom: 14px; }
.alq-disc__text { flex: 1 1 400px; min-width: 0; padding: 32px; display: flex; flex-direction: column; gap: 14px; }
.alq-disc__bar { display: flex; justify-content: space-between; align-items: center; gap: 12px; font-size: 15px; font-weight: 700; color: var(--s-muted); }
.alq-disc__nav { display: none; gap: 8px; }
.alq-sjs .alq-disc__nav { display: flex; }
.alq-disc__nav button { width: 46px; height: 46px; border: 1.5px solid var(--s-brown); background: #fff; color: var(--s-brown); cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 0; border-radius: 0; }
.alq-disc__nav .alq-disc__next { background: var(--s-brown); color: #fff; }
.alq-disc h3 { font-size: clamp(30px, 1.6rem + 1vw, 40px); line-height: 1.3; font-weight: 900; }
.alq-disc__en { font-family: "Segoe UI", system-ui, sans-serif; font-size: 15.5px; font-weight: 700; color: var(--s-muted); text-align: right; }
.alq-disc__text > p { font-size: 18.5px; line-height: 1.9; color: var(--s-soft); }
.alq-disc dl { margin: 0; display: flex; flex-direction: column; gap: 8px; font-size: 16.5px; }
.alq-disc dl div { display: flex; gap: 10px; flex-wrap: wrap; }
.alq-disc dt { color: var(--s-muted); font-weight: 700; min-width: 96px; }
.alq-disc dd { margin: 0; font-weight: 700; }
.alq-disc dd a { color: var(--s-brown); }
.alq-disc .alq-sbtns { padding-top: 6px; }
.alq-disc__media { flex: 1 1 460px; min-width: 0; min-height: 380px; display: flex; background: #fff; }
.alq-disc__media img { width: 100%; height: 440px; display: block; object-fit: contain; padding: 16px; box-sizing: border-box; }
.alq-fit-cover img { object-fit: cover; padding: 0; }
.alq-disc__ph { flex: 1; display: flex; align-items: center; justify-content: center; padding: 32px; text-align: center; min-height: 420px; }
.alq-disc__ph span { font-size: 54px; font-weight: 900; line-height: 1.3; }
.alq-thumbs { display: none; gap: 8px; overflow-x: auto; padding-bottom: 6px; scrollbar-width: thin; }
.alq-sjs .alq-thumbs { display: flex; }
.alq-thumbs .alq-chip { flex: none; }
.alq-agrid__title { font-size: 26px; font-weight: 900; margin: 30px 0 16px !important; }
.alq-agrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; }
.alq-acard { background: #fff; border: 1px solid var(--s-line); padding: 20px; display: flex; flex-direction: column; gap: 12px; text-decoration: none; color: var(--s-ink); transition: border-color .2s; }
.alq-acard:hover { border-color: var(--s-brown); color: var(--s-ink); }
.alq-acard__head { display: flex; gap: 14px; align-items: center; }
.alq-acard__img { flex: none; width: 58px; height: 58px; background: var(--s-peach); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.alq-acard__img img { width: 100%; height: 100%; object-fit: cover; }
.alq-acard__ini { font-size: 26px; font-weight: 900; color: var(--s-ink); }
.alq-acard:nth-child(5n+2) .alq-acard__img { background: var(--s-sage); }
.alq-acard:nth-child(5n+3) .alq-acard__img { background: var(--s-blue); }
.alq-acard:nth-child(5n+4) .alq-acard__img { background: var(--s-gold); }
.alq-acard:nth-child(5n+5) .alq-acard__img { background: var(--s-terra); }
.alq-acard__name { display: block; font-size: 18.5px; font-weight: 900; }
.alq-acard__role { display: block; font-size: 14px; font-weight: 600; color: var(--s-muted); }
.alq-acard__bio { font-size: 15.5px; line-height: 1.8; color: var(--s-soft); }
.alq-acard__areas { font-size: 14px; font-weight: 700; color: var(--s-brown); margin-top: auto; }

/* ---------- Events ---------- */
.alq-evbig { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 420px), 1fr)); gap: 20px; }
.alq-evbig article { background: var(--c); color: var(--s-ink); padding: 28px; display: flex; flex-direction: column; gap: 12px; }
.alq-evbig__row { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; font-size: 16px; font-weight: 700; }
.alq-evbig__row em { font-style: normal; background: var(--s-ink); color: #fff; font-size: 13px; padding: 3px 10px; }
.alq-evbig h3 { font-size: 30px; font-weight: 900; color: var(--s-ink); }
.alq-evbig p { font-size: 17px; line-height: 1.8; }
.alq-stories { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 20px; }
.alq-story { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--s-line); }
.alq-story img { width: 100%; height: 270px; object-fit: cover; display: block; }
.alq-story > div { padding: 20px; display: flex; flex-direction: column; gap: 8px; }
.alq-story__k { font-size: 14px; font-weight: 700; color: var(--s-brown); }
.alq-story h3 { font-size: 21px; font-weight: 900; }
.alq-story p { font-size: 16px; line-height: 1.8; color: var(--s-soft); }
.alq-timeline { list-style: none; margin: 34px 0 0 !important; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); border-top: 2px solid var(--s-brown); }
.alq-timeline li { padding: 16px 0 0 18px; display: flex; flex-direction: column; gap: 6px; font-size: 16px; line-height: 1.7; margin: 0; }
.alq-timeline li span { font-size: 26px; font-weight: 900; color: var(--s-rust); }

/* ---------- Services cards ---------- */
.alq-svcs { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 18px; }
.alq-svc { background: #fff; border-top: 6px solid var(--c); padding: 26px; display: flex; flex-direction: column; gap: 12px; }
.alq-svc h3 { font-size: 23px; font-weight: 900; }
.alq-svc p { font-size: 17px; line-height: 1.8; color: var(--s-soft); }
.alq-svc__meta { font-size: 14px; font-weight: 700; color: var(--s-muted); }
.alq-svc .alq-sbtn { margin-top: auto; }

/* ---------- Organizations ---------- */
.alq-orgs__in { display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-start; }
.alq-orgs__text { flex: 1 1 460px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.alq-orgs__text h2 { font-size: clamp(30px, 2rem + 1vw, 42px); line-height: 1.35; color: #fff; }
.alq-orgs__text > p { font-size: 19px; line-height: 1.9; color: var(--s-blush); }
.alq-orgs__form { flex: 1 1 420px; min-width: 0; background: #fff; color: var(--s-ink); padding: 32px; }
.alq-orgs__form form { display: flex; flex-direction: column; gap: 14px; }
.alq-orgs__form h3 { font-size: 24px; font-weight: 900; }

/* ---------- Visit ---------- */
.alq-visit { display: flex; flex-wrap: wrap; gap: 24px; }
.alq-visit__intro { flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.alq-visit__intro h2 { font-size: 34px; font-weight: 900; }
.alq-visit__intro p { font-size: 18px; line-height: 1.8; color: var(--s-soft); }
.alq-visit__card { flex: 1 1 240px; min-width: 0; border-top: 6px solid var(--c); background: var(--s-cream); padding: 22px; display: flex; flex-direction: column; gap: 6px; }
.alq-visit__card h3 { font-size: 20px; font-weight: 900; }
.alq-visit__card p { font-size: 16px; line-height: 1.8; }
.alq-visit__card a { font-weight: 700; color: var(--s-brown); text-decoration: none; }
.alq-visit__wa { font-size: 22px; text-align: right; }

/* ---------- Forms ---------- */
.alq-hp { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.alq-field { display: flex; flex-direction: column; gap: 6px; font-size: 15px; font-weight: 700; color: var(--s-ink); }
.alq-hint { font-weight: 400; color: var(--s-muted); font-size: 13.5px; }
.alq-s input[type="text"], .alq-s input[type="tel"], .alq-s input[type="email"], .alq-s input[type="number"], .alq-s input[type="url"], .alq-s select, .alq-s textarea {
	font-family: inherit; font-size: 16px; padding: 11px 14px; border: 1.5px solid var(--s-line2); min-height: 48px; box-sizing: border-box; width: 100%; border-radius: 0; background: #fff; color: var(--s-ink); font-weight: 400; box-shadow: none;
}
.alq-s textarea { min-height: 0; resize: vertical; }
.alq-s input:focus, .alq-s select:focus, .alq-s textarea:focus { border-color: var(--s-brown); outline: 2px solid rgba(109, 61, 52, .25); outline-offset: 0; }
.alq-frow, .alq-fgrid { display: flex; flex-wrap: wrap; gap: 12px; }
.alq-frow .alq-field { flex: 1 1 180px; }
.alq-frow .alq-field--sm { flex: 1 1 120px; }
.alq-fgrid .alq-field { flex: 1 1 260px; }
.alq-fnote { font-size: 14px; line-height: 1.6; color: var(--s-muted); }
.alq-check { display: flex; gap: 10px; align-items: flex-start; font-size: 15.5px; font-weight: 600; cursor: pointer; }
.alq-check input { margin-top: 6px; width: 18px; height: 18px; accent-color: var(--s-brown); flex: none; }
.alq-checks { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.alq-radios { display: flex; flex-wrap: wrap; gap: 8px; }
.alq-radios label { display: inline-flex; align-items: center; gap: 8px; border: 1.5px solid var(--s-line2); padding: 8px 14px; min-height: 44px; cursor: pointer; font-size: 15.5px; font-weight: 600; }
.alq-radios label:has(input:checked) { border-color: var(--s-brown); background: var(--s-cream); }
.alq-radios input { accent-color: var(--s-brown); }
.alq-fs { border: 1px solid var(--s-line); padding: 22px; margin: 0 0 16px; display: flex; flex-direction: column; gap: 14px; background: #fff; }
.alq-fs legend { font-size: 19px; font-weight: 900; padding: 0 8px; }
.alq-fs--inner { border-style: dashed; padding: 14px; }
.alq-fs--inner legend { font-size: 15.5px; }
.alq-fsubmit { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; padding-top: 4px; }
.alq-snotice { padding: 14px 18px; margin-bottom: 14px; font-size: 16px; line-height: 1.7; border-inline-start: 5px solid; }
.alq-snotice--ok { background: #E8F0EA; border-color: var(--s-sage); color: #24432c; }
.alq-snotice--err { background: #FBEDE8; border-color: var(--s-terra); color: #7a2e16; }

/* ---------- Path & services pages ---------- */
.alq-phero { padding-block: 34px 44px; background: var(--s-cream); }
.alq-phero--dark { background-color: var(--s-brown); }
.alq-crumbs { display: flex; gap: 8px; flex-wrap: wrap; font-size: 14.5px; margin-bottom: 18px; color: var(--s-muted); }
.alq-crumbs a { color: var(--s-brown); text-decoration: none; font-weight: 700; }
.alq-phero--dark .alq-crumbs, .alq-phero--dark .alq-crumbs a { color: var(--s-peach); }
.alq-phero__in { display: flex; flex-wrap: wrap; gap: 32px; align-items: flex-end; justify-content: space-between; }
.alq-phero__in > div { flex: 1 1 520px; display: flex; flex-direction: column; gap: 12px; }
.alq-phero h1 { font-size: clamp(34px, 2rem + 2vw, 52px); line-height: 1.3; font-weight: 900; }
.alq-phero--dark h1 { color: #fff; }
.alq-phero__lead { font-size: 21px; font-weight: 700; line-height: 1.6; }
.alq-phero--dark .alq-phero__lead { font-weight: 400; color: var(--s-blush); max-width: 760px; margin-top: 10px !important; }
.alq-phero__badges { display: flex; flex-wrap: wrap; gap: 8px; }
.alq-badge-green { background: var(--s-sage); color: var(--s-ink); font-size: 14px; font-weight: 700; padding: 4px 12px; }
.alq-badge-line { border: 1.5px solid var(--s-brown); color: var(--s-brown); font-size: 14px; font-weight: 700; padding: 3px 12px; }
.alq-facts { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(150px, 1fr)); gap: 0; background: #fff; border: 1px solid var(--s-line); flex: 0 1 440px; }
.alq-facts div { padding: 14px 18px; border-bottom: 1px solid var(--s-line); }
.alq-facts div:nth-child(odd) { border-inline-end: 1px solid var(--s-line); }
.alq-facts dt { font-size: 13.5px; color: var(--s-muted); font-weight: 700; }
.alq-facts dd { margin: 2px 0 0; font-size: 16.5px; font-weight: 800; }

.alq-sgrid { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 36px; align-items: start; padding-block: 44px 72px; }
.alq-sgrid__main { min-width: 0; display: flex; flex-direction: column; gap: 44px; }
.alq-wpick h2, .alq-wsec h2 { font-size: 30px; font-weight: 900; margin-bottom: 18px !important; }
.alq-wsec h3 { font-size: 22px; font-weight: 900; margin: 18px 0 12px !important; }
.alq-wpick__label { display: block; font-size: 15px; font-weight: 700; color: var(--s-muted); margin: 14px 0 8px; }
.alq-wchoices { display: flex; flex-wrap: wrap; gap: 8px; }
.alq-wchoice { cursor: pointer; }
.alq-wchoice input { position: absolute; opacity: 0; pointer-events: none; }
.alq-wchoice span { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border: 1.5px solid var(--s-line2); font-weight: 700; font-size: 15.5px; background: #fff; }
.alq-wchoice input:checked + span { background: var(--s-brown); color: #fff; border-color: var(--s-brown); }
.alq-wchoice input:focus-visible + span { outline: 3px solid var(--s-terra); outline-offset: 2px; }
.alq-wchoice.is-dim { display: none; }
.alq-wdetail { margin-top: 20px; border: 2px solid var(--s-brown); background: #fff; }
.alq-wdetail + .alq-wdetail { margin-top: 14px; }
.alq-wdetail__head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; padding: 22px 24px; background: var(--s-cream); }
.alq-wdetail__head h3 { font-size: 28px; font-weight: 900; }
.alq-wdetail__by { display: block; font-size: 16px; font-weight: 600; color: var(--s-soft); }
.alq-wdetail__by a { color: var(--s-brown); font-weight: 700; }
.alq-wdetail__note { display: inline-block; margin-top: 6px; background: var(--s-gold); font-size: 14px; font-weight: 700; padding: 3px 10px; }
.alq-prices { display: flex; gap: 10px; }
.alq-prices div { background: #fff; border: 1px solid var(--s-line); padding: 10px 16px; min-width: 120px; }
.alq-prices span { display: block; font-size: 13.5px; color: var(--s-muted); font-weight: 700; }
.alq-prices strong { font-size: 24px; font-weight: 900; }
.alq-wdetail__slots { padding: 8px 24px 22px; }
.alq-slots { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 10px; }
.alq-slot { position: relative; display: flex; flex-direction: column; gap: 2px; padding: 14px 16px 14px 14px; border: 1.5px solid var(--s-line); cursor: pointer; background: #fff; }
.alq-slot input { position: absolute; opacity: 0; }
.alq-slot i { width: 12px; height: 12px; background: var(--c); display: block; margin-bottom: 4px; }
.alq-slot__p { font-size: 13.5px; color: var(--s-muted); font-weight: 700; }
.alq-slot strong { font-size: 18px; }
.alq-slot:has(input:checked) { border-color: var(--s-brown); background: var(--s-cream); box-shadow: inset 0 0 0 1px var(--s-brown); }
.alq-slot:has(input:focus-visible) { outline: 3px solid var(--s-terra); }
.alq-steps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.alq-steps li { display: flex; gap: 16px; align-items: flex-start; margin: 0; font-size: 17px; line-height: 1.8; color: var(--s-soft); }
.alq-steps li > span { flex: none; width: 42px; height: 42px; background: var(--s-brown); color: #fff; font-weight: 900; font-size: 18px; display: flex; align-items: center; justify-content: center; }
.alq-steps strong { display: block; color: var(--s-ink); font-size: 18px; }
.alq-inside { padding: 32px; }
.alq-inside h2 { color: #fff; }
.alq-inside > p { color: var(--s-blush); font-size: 17px; }
.alq-inside ol { list-style: none; margin: 18px 0 !important; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; counter-reset: s; }
.alq-inside li { background: rgba(255, 255, 255, .1); border-top: 4px solid var(--s-peach); padding: 16px; display: flex; flex-direction: column; gap: 4px; margin: 0; counter-increment: s; }
.alq-inside li::before { content: counter(s, arabic-indic); color: var(--s-peach); font-weight: 900; font-size: 20px; }
.alq-inside li strong { font-size: 18px; }
.alq-inside li span { font-size: 15px; color: var(--s-blush); }
.alq-levels { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.alq-levels div { border: 1.5px solid var(--s-line); padding: 18px; display: flex; flex-direction: column; gap: 4px; }
.alq-levels .is-here { border-color: var(--s-brown); background: var(--s-cream); }
.alq-levels span { font-size: 13.5px; font-weight: 700; color: var(--s-muted); }
.alq-levels .is-here span { color: var(--s-brown); }
.alq-levels strong { font-size: 19px; }
.alq-levels em { font-style: normal; font-size: 15px; color: var(--s-soft); }
.alq-faq details { border-bottom: 1px solid var(--s-line); padding: 14px 0; }
.alq-faq summary { cursor: pointer; font-weight: 800; font-size: 18px; }
.alq-faq details p { margin-top: 8px !important; color: var(--s-soft); }

.alq-book { position: sticky; top: 110px; background: #fff; border: 2px solid var(--s-brown); padding: 24px; display: flex; flex-direction: column; gap: 14px; }
.alq-book h2 { font-size: 24px; font-weight: 900; }
.alq-book fieldset { border: 0; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.alq-book fieldset[hidden] { display: none; }
.alq-seg { display: grid; grid-template-columns: 1fr 1fr; border: 1.5px solid var(--s-brown); }
.alq-seg label { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; cursor: pointer; font-weight: 700; }
.alq-seg input { position: absolute; opacity: 0; }
.alq-seg label:has(input:checked) { background: var(--s-brown); color: #fff; }
.alq-book__sum { margin: 0; background: var(--s-cream); padding: 12px 16px; display: flex; flex-direction: column; gap: 6px; font-size: 15.5px; }
.alq-book__sum div { display: flex; gap: 10px; }
.alq-book__sum dt { color: var(--s-muted); font-weight: 700; min-width: 58px; }
.alq-book__sum dd { margin: 0; font-weight: 800; }
.alq-book__foot { border-top: 1px solid var(--s-line); padding-top: 12px; font-size: 15px; display: flex; flex-direction: column; gap: 2px; }
.alq-book__foot a { font-weight: 700; color: var(--s-brown); }

.alq-stabs { display: flex; flex-wrap: wrap; gap: 0; margin-top: 26px; border-bottom: 1px solid rgba(235, 176, 157, .4); }
.alq-stab { color: #fff !important; text-decoration: none; font-weight: 700; font-size: 17px; padding: 14px 22px; border-bottom: 4px solid transparent; }
.alq-stab[aria-selected="true"] { background: #fff; color: var(--s-brown) !important; border-bottom-color: var(--c); }
.alq-svchead { border-inline-start: 6px solid var(--c); padding-inline-start: 18px; display: flex; flex-direction: column; gap: 10px; }
.alq-svchead h2 { font-size: 32px; font-weight: 900; }
.alq-svchead p { font-size: 18px; line-height: 1.85; color: var(--s-soft); }
.alq-svcaside { position: sticky; top: 110px; display: flex; flex-direction: column; gap: 14px; }
.alq-svcsum { border-top: 6px solid var(--c); background: var(--s-cream); padding: 22px; display: flex; flex-direction: column; gap: 10px; }
.alq-svcsum h3 { font-size: 22px; font-weight: 900; }
.alq-svcsum dl { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.alq-svcsum dl div { display: flex; gap: 10px; }
.alq-svcsum dt { color: var(--s-muted); font-weight: 700; min-width: 60px; }
.alq-svcsum dd { margin: 0; font-weight: 800; }
.alq-svcafter { border: 1px solid var(--s-line); padding: 20px; }
.alq-svcafter h3 { font-size: 19px; font-weight: 900; margin-bottom: 8px !important; }
.alq-svcafter ol { margin: 0 1.2em 0 0; padding: 0; font-size: 15.5px; line-height: 1.8; color: var(--s-soft); }
.alq-svcwa { display: flex; flex-direction: column; gap: 4px; padding: 20px; text-decoration: none; color: #fff !important; }
.alq-svcwa span { font-size: 15px; color: var(--s-blush); }
.alq-svcwa strong { font-size: 24px; text-align: right; }

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
	.alq-sgrid { grid-template-columns: minmax(0, 1fr); }
	.alq-book, .alq-svcaside { position: static; }
	.alq-sbar__nav { gap: 4px 16px; font-size: 15px; }
}
@media (max-width: 900px) {
	.alq-swrap { padding-inline: 16px; }
	.alq-ssec { padding-block: 56px; }
	.alq-ssec--tight { padding-block: 40px; }
	.alq-sbar__in { flex-wrap: wrap; gap: 6px 12px; padding: 8px 16px; }
	.alq-sbar__brand img { height: 36px; }
	.alq-sbar__nav { order: 3; flex: 1 1 100%; min-width: 0; flex-wrap: nowrap; overflow-x: auto; gap: 18px; padding-bottom: 2px; scrollbar-width: none; white-space: nowrap; }
	.alq-sbar__nav::-webkit-scrollbar { display: none; }
	.alq-sbar__cta { margin-inline-start: auto; min-height: 40px; padding: 0 14px; font-size: 15px; }
	.alq-smenu { position: fixed; top: auto; bottom: 0; max-height: 85vh; overflow-y: auto; }
	.alq-smenu__modes { grid-template-columns: minmax(0, 1fr); }
	.alq-mode { min-height: 0; }
	.alq-shero__in { padding-block: 44px; gap: 28px; }
	.alq-shero__fig img { height: 300px; }
	.alq-rec { grid-template-columns: minmax(0, 1fr); }
	.alq-disc__text { padding: 22px; }
	.alq-disc__media, .alq-disc__media img { min-height: 0; height: 300px; }
	.alq-disc__ph { min-height: 240px; }
	.alq-disc__ph span { font-size: 40px; }
	.alq-inside { padding: 22px; }
	.alq-inside ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.alq-levels { grid-template-columns: minmax(0, 1fr); }
	.alq-facts { flex-basis: 100%; }
	.alq-splitcard, .alq-orgs__form { padding: 22px; }
	.alq-fs { padding: 16px; }
	.alq-stab { padding: 12px 14px; font-size: 15.5px; }
	.alq-tab { padding: 0 14px; font-size: 17px; }
	.alq-timeline { grid-template-columns: minmax(0, 1fr); }
}

/* Astra/theme overrides inside school blocks */
.alq-sbar button, .alq-s button, .alq-sbar .alq-sbtn, .alq-s .alq-sbtn { border-radius: 0 !important; box-shadow: none; }
.alq-sbar a, .alq-s a.alq-sbtn, .alq-s a.alq-more, .alq-s a.alq-splitcard, .alq-s a.alq-acard, .alq-s a.alq-rec__card, .alq-s a.alq-stab, .alq-s a.alq-svcwa, .alq-s .alq-crumbs a, .alq-s .alq-visit__card a { text-decoration: none !important; }
.alq-sbar__toggle:hover, .alq-sbar__toggle:focus { background: var(--s-cream); color: var(--s-ink); }
.alq-sbar__toggle[aria-expanded="true"]:hover { background: var(--s-brown); color: #fff; }
.alq-s .alq-chip:hover, .alq-s .alq-chip:focus { background: #fff; color: var(--s-ink); }
.alq-s .alq-chip[aria-pressed="true"]:hover { background: var(--s-brown); color: #fff; }
.alq-s .alq-tab:hover, .alq-s .alq-tab:focus { background: rgba(255,255,255,.6); color: var(--s-brown); }
.alq-s .alq-disc__nav button:hover { background: var(--s-ink); color: #fff; border-color: var(--s-ink); }
@media (max-width: 1240px) { .alq-sbar__brand span { display: none; } }
.alq-s button.alq-chip { background: #fff; color: var(--s-ink); border: 1.5px solid var(--s-line2); }
.alq-s button.alq-chip[aria-pressed="true"] { background: var(--s-brown); color: #fff; border-color: var(--s-brown); }
.alq-s button.alq-tab { background: transparent; color: var(--s-muted); border: 0; border-bottom: 4px solid transparent; }
.alq-s button.alq-tab[aria-selected="true"] { background: #fff; color: var(--s-brown); border-bottom-color: var(--s-terra); }
.alq-s .alq-disc__nav button.alq-disc__prev { background: #fff; color: var(--s-brown); border: 1.5px solid var(--s-brown); }
.alq-s .alq-disc__nav button.alq-disc__next { background: var(--s-brown); color: #fff; border: 1.5px solid var(--s-brown); }
.alq-sbar button.alq-sbar__toggle { background: transparent; color: var(--s-ink); }
.alq-sbar button.alq-sbar__toggle[aria-expanded="true"] { background: var(--s-brown); color: #fff; }
.alq-sbar button.alq-smenu__close { background: #fff; color: var(--s-ink); border: 1.5px solid var(--s-line2); }
/* English: longer labels */
html[lang^="en"] .alq-sbar__nav { gap: 4px 18px; font-size: 15px; }
@media (max-width: 1440px) { html[lang^="en"] .alq-sbar__brand span { display: none; } }
html[lang^="en"] .alq-disc__en { display: none; }
