/* Arabeez — Arabic classes landing page (local release candidate)
   One scoped namespace: every rule lives under .abz so the stylesheet can sit inside the
   Eduma child theme without touching the rest of the site. No framework, no builder. */

.abz{
  --ink:#142947; --muted:#3b4f69; --blue:#0757a7; --blue-dark:#063b78; --blue-deep:#092f5d;
  --blue-soft:#eaf4ff; --green:#58a944; --green-dark:#2f7a2c; --green-soft:#e6f6e3;
  --yellow:#f4c928; --yellow-hover:#ffd63a; --yellow-soft:#fff5be; --cream:#fffaf0; --sand:#f6efdf; --white:#fff;
  --line:#d8e2e9; --danger:#aa2534;
  --shadow-soft:0 18px 55px rgba(10,47,91,.11); --shadow-card:0 16px 38px rgba(13,55,104,.14);
  --r-lg:24px; --r-md:16px;
  --ul:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 14' preserveAspectRatio='none'%3E%3Cpath d='M4 10 C 50 4, 120 3, 196 8' fill='none' stroke='%23f4c928' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E");
  color:var(--ink); background:var(--cream);
  font-family:"Avenir Next","Segoe UI",Roboto,Arial,sans-serif; font-size:17px; line-height:1.55;
  overflow-x:clip; -webkit-text-size-adjust:100%; position:relative;
}
.abz *,.abz *::before,.abz *::after{box-sizing:border-box}
.abz img{max-width:100%;height:auto;display:block}
.abz [hidden]{display:none !important}
.abz a{color:inherit}
.abz :where(p,h1,h2,h3,figure,blockquote,ul,ol){margin:0}
.abz :where(p,h1,h2,h3,label,legend,summary,a,button){overflow-wrap:break-word}
.abz ul,.abz ol{padding:0;list-style:none}
.abz h1,.abz h2,.abz h3{letter-spacing:-.03em;font-family:"Avenir Next","Trebuchet MS","Segoe UI",Roboto,sans-serif;text-wrap:balance}
.abz h2{font-size:clamp(2.25rem,4.2vw,4.2rem);line-height:.99;color:var(--blue-deep)}
.abz h3{font-size:1.3rem;line-height:1.15;color:var(--blue-deep)}
.abz button,.abz input,.abz select,.abz textarea{font:inherit;color:inherit}
.abz button{-webkit-appearance:none;appearance:none;margin:0;font:inherit;letter-spacing:normal;text-shadow:none;text-transform:none;background-image:none}
.abz .abz-home,.abz .abz-quote-btn,.abz .abz-quote-pause,.abz .abz-seg-btn,.abz button.abz-btn,.abz .abz-text-action{-webkit-appearance:none;appearance:none;margin:0;font-family:inherit;letter-spacing:normal;text-shadow:none;text-transform:none;background-image:none}
.abz :focus-visible{outline:4px solid var(--blue);outline-offset:3px;border-radius:6px}
.abz-skip{position:absolute;left:12px;top:-100px;z-index:1000;background:var(--blue-deep);color:var(--white);padding:10px 16px;border-radius:8px;font-weight:800}
.abz-skip:focus{top:12px}
.abz .abz-visually-hidden,.abz .abz-honeypot{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.abz .abz-form-fields{display:grid;gap:18px;min-width:0;min-inline-size:0;padding:0;margin:0;border:0}
.abz-form-noscript,.abz-submit-status{padding:14px 16px;margin-bottom:16px;background:var(--yellow-soft);color:var(--blue-deep);border-radius:12px;font-size:.95rem;line-height:1.5}
.abz-submit-status{margin:16px 0 0}
.abz-privacy a{text-decoration:underline;text-underline-offset:3px}
.abz .abz-quote-pause{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:0;min-height:44px;height:auto;padding:8px 12px;border:2px solid rgba(255,255,255,.65);border-radius:12px;background:transparent;color:var(--white);box-shadow:none;font:inherit;font-size:.9rem;line-height:1.15;cursor:pointer}
.abz .abz-quote-btn{display:grid;place-items:center;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px;padding:0;border:2px solid rgba(255,255,255,.55);border-radius:50%;background:transparent;color:var(--white);box-shadow:none;font-size:1.4rem;font-weight:900;line-height:1;cursor:pointer}
.abz .abz-quotes :focus-visible,.abz .abz-footer :focus-visible,.abz .abz-help :focus-visible{outline-color:var(--yellow)}
.abz .abz-quote-nav{flex-wrap:wrap}
.abz .abz-submit:disabled{cursor:wait;opacity:.7;transform:none}
.abz .abz-form-fields:disabled .abz-submit{cursor:not-allowed}
.abz .abz-thanks-status{margin:14px 0;line-height:1.5}
.abz-shell{width:min(1180px,100% - 48px);margin-inline:auto}

/* labels & voice lines — one label standard */
.abz-label{color:var(--green-dark);font-size:.95rem;font-weight:700;font-style:italic;letter-spacing:0;text-transform:none;margin-bottom:14px}
.abz-label-green{color:var(--green-dark)}
.abz-label-dark{color:var(--blue-dark)}
.abz-label-blue{color:var(--blue)}
.abz-label-yellow{color:var(--yellow)}
.abz-voice{color:var(--green-dark);font-style:italic;font-weight:800;font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.3;margin-bottom:10px}
.abz-voice-yellow{color:var(--yellow)}
.abz-voice-pale{color:#dff2da}

/* buttons — one CTA colour everywhere: the brand yellow with navy text */
.abz-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:13px 24px;border:0;border-radius:999px;font-weight:800;line-height:1.18;text-align:center;text-decoration:none;cursor:pointer;transition:transform .18s,box-shadow .18s,background-color .18s}
.abz-btn:hover{transform:translateY(-2px)}
.abz-btn:active{transform:translateY(0)}
.abz .abz-btn-primary{color:var(--blue-deep);background:var(--yellow);box-shadow:0 10px 24px -10px rgba(9,47,93,.45)}
.abz .abz-btn-primary:hover{background:var(--yellow-hover)}
.abz .abz-btn-blue{color:var(--white);background:var(--blue);box-shadow:0 10px 24px -10px rgba(7,87,167,.6)}
.abz .abz-btn-blue:hover{background:#064d94}
.abz .abz-btn-white{color:var(--blue-deep);background:var(--white);border:2px solid var(--line);box-shadow:0 8px 20px -12px rgba(9,47,93,.35)}
.abz .abz-btn-white:hover{border-color:var(--blue);background:var(--blue-soft)}
.abz-btn-small{min-height:44px;padding:10px 18px;font-size:.92rem}
.abz-btn-large{min-height:60px;padding:16px 28px;font-size:1.05rem}
.abz .abz-text-action{display:inline-block;width:fit-content;height:auto;min-height:0;color:var(--blue-dark);background:transparent;border:0;border-bottom:2px solid currentColor;border-radius:0;box-shadow:none;padding:3px 0;font-weight:800;line-height:1.4;text-decoration:none;cursor:pointer}
.abz .abz-text-action:hover{color:var(--green-dark)}

/* header */
.abz-header{position:sticky;top:0;z-index:80;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;min-height:76px;padding:9px max(24px,50vw - 620px);background:rgba(255,250,240,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(9,47,93,.09);box-shadow:0 8px 22px rgba(9,47,93,.05)}
.abz-brand{display:inline-flex;align-items:center;width:fit-content}
.abz-logo{width:174px;height:auto}
.abz-header-context{color:var(--muted);text-align:center;font-size:.92rem;font-weight:700}


/* hero */
.abz-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,.94fr) minmax(420px,1.06fr);align-items:center;gap:clamp(40px,6vw,90px);width:min(1280px,100% - 32px);min-height:600px;margin:16px auto 0;padding:52px clamp(28px,5vw,78px) 64px;border-radius:38px;background:var(--cream)}
.abz-hero::before{content:"";position:absolute;right:-170px;bottom:-160px;width:540px;height:540px;border:2px dashed rgba(7,87,167,.14);border-radius:50%}
.abz-hero-copy,.abz-hero-visual{position:relative;z-index:2}
.abz-hero h1{color:var(--blue-deep);font-size:clamp(2.9rem,6vw,5.6rem);line-height:.9;margin-bottom:18px}
.abz-hero h1>span{display:block}
.abz-hero h1>.abz-h1-b{display:inline-block;position:relative}
.abz-h1-b{color:var(--green-dark)}
.abz-hero h1 em{position:relative;z-index:1;color:var(--blue);font-style:normal}
.abz-hero h1 em::after{content:"";position:absolute;z-index:-1;left:-2%;right:-3%;bottom:-.08em;height:.17em;background:var(--ul) no-repeat center/100% 100%;transform-origin:left;animation:abz-draw .6s .6s ease-out both}
@keyframes abz-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.abz-hero h1 small{display:block;color:var(--ink);letter-spacing:-.015em;margin-top:14px;font-size:clamp(1.15rem,2vw,1.6rem);font-weight:750;line-height:1.18}
.abz-hero-support{color:var(--ink);max-width:540px;font-size:clamp(1rem,1.3vw,1.16rem);font-weight:500;line-height:1.6;margin-bottom:26px}
.abz-hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.abz-hero-visual{min-width:0;padding:34px 14px 34px 34px}
.abz-hero-frame{position:relative;overflow:hidden;border:10px solid var(--white);background:var(--white);border-radius:30px 30px 60px;box-shadow:0 24px 65px rgba(9,47,93,.24);transform:rotate(1.5deg)}
.abz-hero-frame::after{content:"";pointer-events:none;position:absolute;inset:0;border:3px solid rgba(244,201,40,.66);border-radius:19px 19px 49px}
.abz-hero-photo{aspect-ratio:1.35;object-fit:cover;object-position:center 45%;width:100%}
.abz-hero-inset{position:absolute;right:-16px;bottom:-22px;width:43%;padding:7px;background:var(--yellow);border-radius:18px;box-shadow:0 17px 38px rgba(9,47,93,.25);transform:rotate(-3deg)}
.abz-hero-inset img{aspect-ratio:1.42;object-fit:cover;border-radius:12px;width:100%}
.abz-hero-inset figcaption{color:var(--blue-deep);text-align:center;padding:6px 5px 2px;font-size:.9rem;font-weight:800;font-style:italic}
.abz-hero-note{position:absolute;left:2px;bottom:-6px;display:grid;gap:1px;padding:11px 15px;color:var(--white);background:var(--blue-deep);border-radius:12px;box-shadow:var(--shadow-card);transform:rotate(-2deg)}
.abz-hero-note strong{color:var(--yellow);font-size:.95rem}
.abz-hero-note span{font-size:.88rem;font-weight:700}
.abz-bee{width:56px;height:auto;filter:drop-shadow(0 5px 4px rgba(9,47,93,.22))}
.abz-h1-flight{position:absolute;left:calc(100% + 4px);bottom:-.12em;width:150px;height:110px;transform-origin:0 100%;pointer-events:none}
.abz-hero-trail{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;stroke:var(--yellow);stroke-width:3.4;stroke-linecap:round}
.abz-hero-trail path{stroke-dasharray:.1 7.9;animation:abz-trail-in 1.4s .2s ease-out both,abz-march 1.4s linear 1.6s infinite}
@keyframes abz-trail-in{from{opacity:0}to{opacity:1}}
@keyframes abz-march{from{stroke-dashoffset:16}to{stroke-dashoffset:0}}
.abz-bob{animation:abz-bob 2.4s ease-in-out infinite alternate}
@keyframes abz-bob{from{transform:translateY(0) rotate(-5deg)}to{transform:translateY(-7px) rotate(5deg)}}
.abz-hero-bee{position:absolute;left:0;top:0;width:58px;display:block;offset-path:path("M2 92 C 18 92, 26 74, 40 72 C 56 70, 66 80, 60 90 C 54 100, 38 96, 40 84 C 42 74, 60 72, 78 76 C 100 80, 118 82, 136 80");offset-rotate:auto;offset-distance:100%;animation:abz-fly 2.1s .3s ease-in-out both;pointer-events:none}
.abz-hero-bee .abz-bee{width:58px}
@keyframes abz-fly{from{offset-distance:0%}to{offset-distance:100%}}
@supports not (offset-path:path("M0 0")){.abz-hero-bee{left:108px;top:50px;animation:abz-bee-arrive 1.35s cubic-bezier(.2,.8,.2,1) .4s both}}
.abz-bee-arrive{animation:abz-bee-arrive 1.35s cubic-bezier(.2,.8,.2,1) .4s both}
@keyframes abz-bee-arrive{0%{opacity:0;transform:translate(-75px,22px) rotate(-18deg) scale(.8)}100%{opacity:1;transform:translate(0,0) rotate(6deg) scale(1)}}
.abz-letter{position:absolute;z-index:1;color:rgba(7,87,167,.11);font-family:Tahoma,Arial,sans-serif;font-weight:900;line-height:1;user-select:none;animation:abz-float 7s ease-in-out infinite alternate}
.abz-letter-one{font-size:7rem;top:6%;right:45%;--rot:12deg}
.abz-letter-two{color:rgba(88,169,68,.13);font-size:9rem;bottom:4%;left:1%;--rot:-10deg;animation-duration:8.5s}
.abz-letter-three{color:rgba(244,201,40,.35);font-size:5rem;top:52%;right:2%;--rot:8deg;animation-duration:6s}
@keyframes abz-float{from{transform:translate(0,0) rotate(var(--rot))}to{transform:translate(8px,-28px) rotate(calc(var(--rot) + 7deg))}}

/* section reveal: everything rests visible; sections settle by a few pixels when they enter view */
.abz.js .abz-reveal{translate:0 22px;transition:translate .8s cubic-bezier(.2,.8,.2,1)}
.abz.js .abz-reveal.is-in{translate:0 0}

/* fact chips */
.abz-facts{position:relative;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);width:min(1110px,100% - 64px);margin:-34px auto 0;background:var(--white);border:1px solid rgba(9,47,93,.08);border-radius:20px;box-shadow:var(--shadow-card);overflow:hidden}
.abz-facts p{display:grid;grid-template-columns:44px 1fr;column-gap:12px;align-items:center;min-height:82px;padding:18px 22px;border-right:1px solid var(--line)}
.abz-facts p:last-child{border-right:0}
.abz-ico-wrap{display:grid;place-items:center;width:44px;height:44px;border-radius:14px 8px}
.abz-ico{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.abz-ico-blue{background:var(--blue-soft);color:var(--blue)}
.abz-ico-yellow{background:var(--yellow-soft);color:#b78700}
.abz-ico-yellow .abz-ico-star{fill:var(--yellow);stroke:#c59b00}
.abz-ico-green{background:var(--green-soft);color:var(--green-dark)}
.abz-ico-navy{background:#e7ecf5;color:var(--blue-deep)}
.abz .abz-facts strong{display:block;min-width:0;margin:0;padding:0;border:0;background:transparent;box-shadow:none;color:var(--blue-dark);font-family:"Avenir Next","Segoe UI",Roboto,Arial,sans-serif;font-size:1.06rem;font-style:normal;font-weight:700;letter-spacing:normal;line-height:1.15;text-decoration:none;text-shadow:none;text-transform:none;overflow-wrap:anywhere}
.abz-facts span{color:var(--muted);font-size:.9rem;line-height:1.3}

/* familiar moment — the approved lines on a navy card, then tap to recognise */
.abz-recognition{padding-block:64px 60px}
.abz-recog-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(24px,4vw,56px);align-items:start}
.abz-recog-card{position:relative;min-width:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-content:start;padding:clamp(28px,4vw,44px);color:var(--white);background:var(--blue-deep);border-radius:26px 70px 26px 26px;box-shadow:var(--shadow-soft)}
.abz-recog-text,.abz-recog-side,.abz-levels-copy{min-width:0;overflow-wrap:anywhere}
.abz-recog-photo{overflow:hidden;border:6px solid rgba(255,255,255,.16);border-radius:18px 40px 18px 18px;transform:rotate(1.2deg)}
.abz-recog-photo img{width:100%;aspect-ratio:1.45;object-fit:cover;object-position:center 48%}
.abz-recog-card h2{position:relative;z-index:1;color:var(--white);margin-bottom:14px;font-size:clamp(2.2rem,4.2vw,4rem)}
.abz-recog-card h2 em{color:var(--yellow);font-style:normal}
.abz-recog-card h3{position:relative;z-index:1;color:var(--white);font-size:clamp(1.3rem,2.1vw,1.8rem);padding-bottom:22px}
.abz-recog-card h3::after{content:"";position:absolute;left:0;bottom:4px;width:min(240px,85%);height:12px;background:var(--ul) no-repeat center/100% 100%}
.abz-recog-card .abz-voice{position:relative;z-index:1}
.abz-recog-side{display:grid;gap:14px}
.abz-recog-lead{color:var(--blue);font-weight:800;font-size:1.05rem}
.abz-homes{display:grid;gap:10px}
.abz .abz-home{display:flex;align-items:center;gap:14px;width:100%;height:auto;min-height:0;padding:14px 16px;background:var(--white);border:2px solid var(--line);border-radius:16px;box-shadow:none;color:var(--ink);text-align:left;font-size:1rem;font-weight:600;line-height:1.35;cursor:pointer;transition:border-color .18s,background-color .18s,transform .18s}
.abz .abz-home:hover{border-color:var(--blue);background:var(--white);box-shadow:none;transform:translateX(3px)}
.abz .abz-home[aria-pressed="true"]{border-color:var(--blue);background:var(--blue-soft);box-shadow:inset 0 0 0 1px var(--blue)}
.abz-home-mark{display:grid;place-items:center;flex:none;width:30px;height:30px;background:var(--white);border:2px solid #c9d5df;border-radius:50%;color:transparent;transition:background-color .18s,border-color .18s,color .18s}
.abz-home-mark svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.abz-home[aria-pressed="true"] .abz-home-mark{background:var(--yellow);border-color:var(--yellow);color:var(--blue-deep)}
.abz-answer{padding:6px 0 6px 18px;border-left:5px solid var(--yellow);min-height:96px;transition:opacity .25s,translate .25s}
.abz-answer.is-swapping{opacity:0;translate:0 8px}
.abz-answer h3{font-size:clamp(1.25rem,2vw,1.6rem);margin-bottom:8px}
.abz-answer p{color:var(--ink);font-size:1.02rem}

/* the arabeez difference */
.abz-method{background:linear-gradient(108deg,rgba(88,169,68,.08),transparent 58%),var(--green-soft);padding-block:64px 70px}
.abz-method-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);grid-template-areas:"heading aside" "collage aside";align-items:start;gap:40px 58px}
.abz-method-heading{grid-area:heading}
.abz-method-heading .abz-label{margin-bottom:14px}
.abz-method-aside{grid-area:aside;display:grid;align-content:start;gap:22px;padding-top:33px}
.abz-method-intro{color:var(--ink);font-size:1.02rem}
.abz-w-green{color:var(--green-dark)}
.abz-w-blue{position:relative;color:var(--blue)}
.abz-w-blue::after{content:"";position:absolute;z-index:-1;left:-2%;right:-3%;bottom:0;height:.11em;background:var(--yellow);border-radius:50%}
.abz-collage{grid-area:collage;position:relative;display:grid;padding-bottom:0}
.abz-collage-main{overflow:hidden;border:9px solid var(--white);background:var(--white);border-radius:var(--r-lg);box-shadow:var(--shadow-soft);transform:rotate(-.7deg)}
.abz-collage-main img{aspect-ratio:1.25;object-fit:cover;object-position:center 30%;width:100%}
.abz-collage-small{position:absolute;right:-10px;top:58%;width:34%;overflow:hidden;border:6px solid var(--white);background:var(--white);border-radius:18px;box-shadow:var(--shadow-card);transform:rotate(3deg)}
.abz-collage-small img{aspect-ratio:1;object-fit:cover;width:100%}
.abz-collage>figcaption{grid-column:1/-1;padding:14px 36% 0 4px;color:var(--blue-deep);text-align:left;font-size:.92rem;font-weight:700;font-style:italic}
.abz-method-points{display:grid}
.abz-point{display:grid;grid-template-columns:60px 1fr;gap:17px;padding:20px 0 22px;border-bottom:1px solid rgba(51,127,47,.25)}
.abz-point:first-child{padding-top:4px}
.abz-point:last-child{border-bottom:0}
.abz-point-ico{display:grid;place-items:center;width:56px;height:56px;color:var(--blue-deep);background:var(--yellow-soft);border:2px solid var(--green-dark);border-radius:18px 8px;transform:rotate(-3deg);animation:abz-tilt 5.5s ease-in-out infinite alternate}
.abz-point:nth-child(2) .abz-point-ico{border-color:var(--blue);background:var(--blue-soft);animation-delay:-1.8s}
.abz-point:nth-child(3) .abz-point-ico{animation-delay:-3.6s}
@keyframes abz-tilt{from{transform:rotate(-4deg) translateY(0)}to{transform:rotate(3deg) translateY(-3px)}}
.abz-point-ico svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.abz-point-letters{font-family:Tahoma,Arial,sans-serif;font-size:1.5rem;font-weight:900;direction:rtl;display:flex;align-items:center;justify-content:center;gap:0}
.abz-point-letters i{font-style:normal;display:inline-block}
.abz.js .abz-point-letters i:first-child{translate:-10px 0;transition:translate .8s cubic-bezier(.2,.8,.2,1) .25s}
.abz.js .abz-point-letters i:last-child{translate:10px 0;transition:translate .8s cubic-bezier(.2,.8,.2,1) .25s}
.abz.js .abz-method.is-in .abz-point-letters i{translate:0 0}
.abz-point h3{margin-bottom:5px;font-size:1.28rem}
.abz-point p{color:#2e4a3d;font-size:1rem}

/* levels: where they start, where they get to */
.abz-levels{padding-block:64px 70px;background:var(--cream)}
.abz-levels-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);align-items:start;gap:clamp(30px,5vw,70px)}
.abz-levels h2{margin-bottom:14px}
.abz-levels-copy>p:not(.abz-label):not(.abz-goal):not(.abz-older){color:var(--ink);max-width:600px;font-size:1.02rem;margin-bottom:28px}
.abz-ladder{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:1fr auto;column-gap:10px;row-gap:8px;align-items:end;min-height:250px;padding:0 4px;border-bottom:3px solid var(--blue-deep);margin-bottom:22px}
.abz-step{display:contents;text-align:center}
.abz-bar{grid-row:1;width:100%;display:grid;place-items:center;align-self:end;background:var(--yellow);border:2px solid #d9ad12;border-bottom:0;border-radius:12px 12px 0 0;color:var(--blue-deep);font-family:Tahoma,Arial,sans-serif;font-size:1.3rem;font-weight:900;transform-origin:bottom;cursor:default;transition:transform .25s,box-shadow .25s,filter .25s}
.abz .abz-step:hover .abz-bar,.abz.js .abz-levels.is-in .abz-step:hover .abz-bar{transform:translateY(-8px) scale(1.05);box-shadow:0 14px 26px -10px rgba(9,47,93,.4);filter:brightness(1.08) saturate(1.08);animation:abz-wiggle .5s ease-out}
@keyframes abz-wiggle{0%{rotate:0deg}25%{rotate:-2deg}55%{rotate:2deg}80%{rotate:-1deg}100%{rotate:0deg}}
.abz-step:nth-child(1) .abz-bar{grid-column:1;height:3.60577em}
.abz-step:nth-child(2) .abz-bar{grid-column:2;height:5.76923em;background:var(--green);border-color:var(--green-dark);color:var(--white)}
.abz-step:nth-child(3) .abz-bar{grid-column:3;height:7.93269em;background:var(--blue);border-color:var(--blue-dark);color:var(--white)}
.abz-step:nth-child(4) .abz-bar{grid-column:4;height:10.09615em;background:var(--blue-deep);border-color:var(--blue-deep);color:var(--yellow)}
.abz-bar [lang="ar"]{white-space:nowrap;overflow-wrap:normal;word-break:normal}
.abz-step b{grid-row:2;align-self:start;display:block;min-width:0;min-height:2.45em;max-width:100%;overflow-wrap:anywhere;word-break:normal;hyphens:manual;font-size:1rem;color:var(--blue-deep);line-height:1.15;padding-top:4px}
.abz-step:nth-child(4) b{overflow-wrap:normal}
.abz-step:nth-child(1) b{grid-column:1}.abz-step:nth-child(2) b{grid-column:2}.abz-step:nth-child(3) b{grid-column:3}.abz-step:nth-child(4) b{grid-column:4}
.abz-step small{font-size:.9rem;color:var(--muted);line-height:1.2}
.abz.js .abz-bar{transform:scaleY(.06);transition:transform 1s cubic-bezier(.34,1.4,.64,1)}
.abz.js .abz-step b{opacity:0;translate:0 8px;transition:opacity .5s ease .6s,translate .5s ease .6s}
.abz.js .abz-levels.is-in .abz-step b{opacity:1;translate:0 0}
.abz.js .abz-levels.is-in .abz-step:nth-child(2) b{transition-delay:.75s}
.abz.js .abz-levels.is-in .abz-step:nth-child(3) b{transition-delay:.9s}
.abz.js .abz-levels.is-in .abz-step:nth-child(4) b{transition-delay:1.05s}
.abz.js .abz-levels.is-in .abz-bar{transform:scaleY(1)}
.abz.js .abz-levels.is-in .abz-step:nth-child(2) .abz-bar{transition-delay:.15s}
.abz.js .abz-levels.is-in .abz-step:nth-child(3) .abz-bar{transition-delay:.3s}
.abz.js .abz-levels.is-in .abz-step:nth-child(4) .abz-bar{transition-delay:.45s}
.abz.js .abz-levels.is-settled .abz-step:nth-child(n) .abz-bar{transition:transform .25s,box-shadow .25s,filter .25s;transition-delay:0s}
.abz-ladder-trail{position:absolute;left:0;top:0;width:100%;height:100%;fill:none;stroke:var(--yellow);stroke-width:3;stroke-dasharray:7 9;stroke-linecap:round;pointer-events:none;z-index:1}
.abz.js .abz-ladder-trail path{stroke-dashoffset:900;transition:stroke-dashoffset 1.8s ease-out .5s}
.abz.js .abz-levels.is-in .abz-ladder-trail path{stroke-dashoffset:0}
.abz-ladder-bee{position:absolute;width:54px;left:0;top:0;z-index:2;display:block;offset-path:path("M20 150 C 90 60, 150 140, 210 80 S 330 20, 385 24");offset-rotate:auto 6deg;offset-distance:100%}
.abz-ladder-bee .abz-bee{width:54px}
.abz.js .abz-levels.is-in .abz-ladder-trail path{animation:abz-march 1.6s linear 2.4s infinite}
.abz.js .abz-ladder-bee{offset-distance:0%;transition:offset-distance 1.8s ease-in-out .5s}
.abz.js .abz-levels.is-in .abz-ladder-bee{offset-distance:100%}
@supports not (offset-path:path("M0 0")){.abz-ladder-bee{left:auto;right:6px;top:-30px}}
.abz-goal{padding:16px 18px;color:var(--blue-deep);background:var(--white);border:1px solid var(--line);border-left:8px solid var(--green);border-radius:14px;font-size:1.02rem;margin:22px 0 14px}
.abz-goal strong{color:var(--green-dark)}
.abz-levels-cta{display:flex;align-items:center;justify-content:space-between;gap:14px 24px;flex-wrap:wrap;margin:0 0 10px;color:var(--blue-deep);font-weight:700;font-size:1.02rem}
.abz-older{display:inline-flex;align-items:center;gap:10px;padding:10px 16px 10px 12px;color:var(--blue-deep);background:var(--yellow-soft);border-radius:999px;font-size:1rem;font-weight:800}
.abz-older span{display:grid;place-items:center;width:30px;height:30px;background:var(--yellow);border-radius:50%;font-family:Tahoma,Arial,sans-serif;font-size:.95rem}
.abz-levels-visual{position:relative;padding-bottom:70px}
.abz-levels-photo{overflow:hidden;border:8px solid var(--white);background:var(--white);border-radius:22px 60px 22px 22px;box-shadow:var(--shadow-soft);transform:rotate(1.2deg)}
.abz-levels-photo img{aspect-ratio:.78;object-fit:cover;object-position:center 30%;width:100%}
.abz-levels-photo figcaption{padding:10px 10px 4px 44%;color:var(--blue-deep);text-align:right;font-size:.9rem;font-weight:700}
.abz-levels-book{position:absolute;left:-10px;bottom:-6px;width:40%;overflow:hidden;border:6px solid var(--white);background:var(--white);border-radius:16px;box-shadow:var(--shadow-card);transform:rotate(-4deg)}
.abz-levels-book img{aspect-ratio:1.05;object-fit:cover;width:100%}
.abz-levels-book figcaption{min-width:0;padding:6px 8px 2px;color:var(--blue-deep);text-align:center;font-size:.9rem;font-weight:800;font-style:italic;overflow-wrap:anywhere}

/* parent proof (before the price) */
.abz-proof{padding-block:64px;background:linear-gradient(180deg,#ffeda0,var(--yellow-soft))}
.abz-proof-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr);align-items:center;gap:60px}
.abz-proof-copy h2{margin-bottom:14px;font-size:clamp(2.2rem,4vw,3.9rem)}
.abz-proof-copy h2 em{color:var(--green-dark);font-style:normal}
.abz-proof-copy>p:not(.abz-label):not(.abz-google){color:var(--ink);max-width:520px;font-size:1.02rem}
.abz-google{margin-top:18px;display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:10px 16px;background:var(--white);border:1px solid var(--line);border-radius:999px;color:var(--ink);font-size:.98rem}
.abz-stars{color:#b78700;letter-spacing:.1em;font-size:1.05rem}
.abz-stars5{display:inline-flex;align-items:center;gap:3px}
.abz-stars5 svg{width:19px;height:19px;fill:var(--yellow);stroke:#b98a00;stroke-width:1.2;stroke-linejoin:round}
.abz-proof-photos{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:20px;align-items:end}
.abz-proof-photo-a,.abz-proof-photo-b{overflow:hidden;border:7px solid var(--white);background:var(--white);box-shadow:var(--shadow-card)}
.abz-proof-photo-a{border-radius:19px 46px 19px 19px;transform:rotate(-1.5deg)}
.abz-proof-photo-b{border-radius:19px 19px 46px 19px;transform:rotate(2deg)}
.abz-proof-photo-a img{aspect-ratio:.82;object-fit:cover;object-position:center 40%;width:100%}
.abz-proof-photo-b img{aspect-ratio:.8;object-fit:cover;object-position:center 30%;width:100%}
.abz-proof-photos figcaption{display:flex;justify-content:space-between;gap:10px;padding:9px 10px 4px;color:var(--blue-deep);font-size:.9rem}
.abz-proof-photos figcaption :where(strong,span){min-width:0;overflow-wrap:anywhere}
.abz-proof-photos figcaption span{color:var(--muted)}
.abz-google-line{grid-column:1/-1;display:flex;justify-content:center;align-items:center;gap:10px;margin-top:8px;color:var(--blue-deep);font-weight:800;font-size:.98rem}

/* tuition — one card, one number */
.abz-program{padding-block:64px 70px;color:var(--white);background:var(--blue-deep)}
.abz-program .abz-label{color:var(--yellow)}
.abz-program-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.95fr);gap:clamp(30px,5vw,70px);align-items:start}
.abz-program-copy{min-width:0;overflow-wrap:anywhere}
.abz-program-copy h2{margin-bottom:14px;color:var(--white)}
.abz-program-copy>p:not(.abz-label){color:rgba(255,255,255,.88);font-size:1.02rem;max-width:520px}
.abz .abz-program-calendar{display:grid;gap:6px;max-width:560px;margin-top:20px;padding:0;border:0;border-radius:0;background:transparent;color:rgba(255,255,255,.94);font-size:.96rem;font-weight:400;line-height:1.4}
.abz .abz-program-calendar .abz-calendar-range{color:var(--white);font-size:1.12rem;font-weight:400}
.abz .abz-program-calendar strong{color:var(--white);font-weight:850}
.abz-price-card{position:relative;display:grid;gap:14px;padding:clamp(24px,3vw,34px);color:var(--ink);background:var(--white);border-radius:var(--r-lg);box-shadow:0 30px 64px rgba(3,18,40,.5)}
.abz-seg{position:relative;display:grid;grid-template-columns:1fr 1fr;isolation:isolate;padding:5px;background:#dde7f1;border:1px solid rgba(9,47,93,.14);border-radius:999px}
.abz .abz-seg-btn{position:relative;z-index:1;display:block;width:100%;min-width:0;height:auto;min-height:44px;margin:0;padding:11px 12px;border:0;border-radius:999px;background:transparent;color:var(--blue-deep);box-shadow:none;font-weight:800;font-size:1rem;line-height:1.15;white-space:normal;overflow-wrap:break-word;cursor:pointer;transition:color .2s}
.abz .abz-seg-btn.is-on{background:transparent;color:var(--white);box-shadow:none}
.abz-seg-thumb{position:absolute;z-index:0;top:5px;bottom:5px;left:5px;width:calc(50% - 5px);background:var(--blue-deep);border-radius:999px;box-shadow:0 4px 12px rgba(9,47,93,.35);transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.abz-seg.is-second .abz-seg-thumb{transform:translateX(100%)}
.abz-price-card>*,.abz-seg,.abz-price-summary,.abz-price,.abz-price-facts{min-width:0;max-width:100%}
.abz-price-summary{display:grid;gap:14px}
.abz-price{display:flex;align-items:flex-end;gap:14px;margin-top:8px;flex-wrap:wrap}
.abz-price-big{position:relative;display:inline-block;color:var(--blue-deep);font-family:"Avenir Next","Trebuchet MS","Segoe UI",Roboto,sans-serif;font-size:clamp(3.8rem,7.5vw,5.2rem);font-weight:900;letter-spacing:-.055em;line-height:.94;font-variant-numeric:tabular-nums}
.abz-price-num{display:inline-block}
.abz-price-num.is-flip{animation:abz-flip .32s ease-out}
@keyframes abz-flip{0%{transform:scale(.92);opacity:.4}100%{transform:scale(1);opacity:1}}
.abz-price-big::after{content:"";position:absolute;left:-2%;right:-2%;bottom:-12px;height:14px;background:var(--ul) no-repeat center/100% 100%}
.abz-price-note{margin-top:0;color:var(--muted);font-size:.9rem;font-weight:600}
.abz-price-facts{display:flex;flex-wrap:wrap;gap:8px}
.abz-price-facts span{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;color:var(--blue-deep);background:var(--blue-soft);border:1px solid rgba(7,87,167,.16);border-radius:999px;font-size:.95rem;font-weight:800;line-height:1.2}
.abz-save{display:inline-flex;justify-self:start;align-items:center;gap:8px;max-width:100%;padding:9px 14px;color:var(--green-dark);background:var(--green-soft);border-radius:999px;font-size:.98rem;font-weight:800;animation:abz-pop .35s cubic-bezier(.34,1.56,.64,1) both}
.abz-save span[aria-hidden]{display:grid;place-items:center;width:20px;height:20px;background:var(--green-dark);color:var(--white);border-radius:50%;font-size:.7rem}
@keyframes abz-pop{from{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}
.abz-price-actions{display:grid;grid-template-columns:1.4fr .8fr;gap:10px;margin-top:8px}
.abz-price-actions .abz-btn{width:100%;padding-inline:14px}
/* quotes: one card at a time, drifting gently while on display, then shuffling */
.abz-quotes{margin-top:26px;max-width:560px}
.abz-quote-track{position:relative;display:grid;align-items:start;overflow:hidden;padding:4px}
.abz-quote{grid-area:1/1;position:relative;overflow:hidden;padding:24px 24px 20px;color:var(--ink);background:var(--cream);border-radius:20px 20px 20px 6px;box-shadow:0 20px 44px rgba(3,18,40,.4);opacity:0;visibility:hidden;transform:translateY(18px) scale(.985);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1),visibility .75s}
.abz-quote.is-active{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.abz-quote-mark{position:absolute;right:16px;top:-22px;color:rgba(244,201,40,.75);font-family:Georgia,serif;font-size:7.5rem;line-height:1;pointer-events:none}
.abz-avatar{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;background:var(--yellow);color:var(--blue-deep);font-weight:900;font-size:1rem}
.abz-quote .abz-stars5{margin-bottom:10px}
.abz-quote blockquote{color:var(--blue-deep);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.12rem,1.6vw,1.38rem);font-weight:700;line-height:1.42;margin-bottom:14px}
.abz-quote figcaption{display:flex;align-items:center;gap:10px;color:var(--blue-deep);font-size:.95rem;font-weight:800}
.abz-quote figcaption small{display:block;color:var(--muted);font-size:.86rem;font-weight:700}
.abz-quote-nav{display:flex;align-items:center;justify-content:flex-start;gap:14px;margin-top:14px}
.abz-quote-dots{display:inline-flex;gap:6px}
.abz-quote-dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.35);transition:background-color .3s}
.abz-quote-dots i.is-on{background:var(--yellow)}

/* message-us bee moment */
.abz-help{position:relative;overflow:hidden;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px 34px;margin-top:36px;margin-bottom:36px;padding:34px 40px;color:var(--white);background:var(--green-dark);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}
.abz-help-letter{position:absolute;right:22%;bottom:-70px;color:rgba(255,255,255,.1);font-family:Tahoma,Arial,sans-serif;font-size:10rem;font-weight:900;line-height:1;pointer-events:none}
.abz-help-bee{position:relative;width:150px;height:80px}
.abz-help-trail{position:absolute;left:0;top:10px;width:140px;height:60px;fill:none;stroke:rgba(255,255,255,.7);stroke-width:3;stroke-dasharray:7 9;stroke-linecap:round}
.abz-help-bee-fly{position:absolute;right:-4px;top:-8px;width:64px;display:block}
.abz-help-bee .abz-bee{width:64px}
.abz.js .abz-help .abz-help-bee-fly{opacity:0}
.abz.js .abz-help.is-in .abz-help-bee-fly{animation:abz-bee-arrive 1.35s cubic-bezier(.2,.8,.2,1) .1s both}
.abz.js .abz-help .abz-help-trail path{stroke-dashoffset:300}
.abz.js .abz-help.is-in .abz-help-trail path{animation:abz-trail-s 1.2s ease-out both,abz-march 1.6s linear 1.3s infinite}
@keyframes abz-trail-s{from{stroke-dashoffset:300}to{stroke-dashoffset:0}}
.abz-help h2{color:var(--white);font-size:clamp(1.7rem,2.6vw,2.4rem);margin-bottom:8px}
.abz-help-copy p:not(.abz-voice){color:#e6f3e2;font-size:1.02rem;max-width:560px}
.abz-help .abz-voice{margin-bottom:4px}
.abz-help-actions{display:grid;gap:8px;justify-items:center;min-width:240px}
.abz-help-actions .abz-btn{width:100%}
.abz-help-phone{color:#e6f3e2;text-align:center;font-size:.95rem;font-weight:700}
.abz .abz-help-phone a{color:var(--white);font-weight:800}

/* form */
.abz-form-section{padding-block:64px;background:linear-gradient(130deg,rgba(7,87,167,.06),transparent 54%),var(--blue-soft);scroll-margin-top:76px}
.abz-form-layout{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(460px,1.25fr);align-items:start;gap:clamp(36px,6vw,80px)}
.abz-form-copy>p:not(.abz-label){color:var(--ink);font-size:1.02rem;margin-bottom:24px}
.abz-form-copy h2{margin-bottom:14px}
.abz-form-card{min-width:0;padding:clamp(22px,3.5vw,36px);background:var(--white);border:1px solid rgba(7,87,167,.12);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}
.abz-form{display:grid;gap:16px}
.abz-form fieldset{border:0;min-width:0;margin:0;padding:0}
.abz-form legend,.abz-field>label{display:block;margin-bottom:7px;color:var(--blue-deep);font-size:.95rem;font-weight:850}
.abz-opt{color:var(--muted);font-weight:600}
.abz-intent{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.abz-intent label{position:relative;cursor:pointer}
.abz-intent input{position:absolute;opacity:0;width:1px;height:1px}
.abz-intent span{display:grid;gap:2px;padding:12px 14px;border:2px solid var(--line);border-radius:14px;color:var(--ink);font-weight:800;font-size:1rem;line-height:1.2}
.abz-intent small{color:var(--muted);font-weight:600;font-size:.88rem}
.abz-intent input:checked+span{border-color:var(--blue);background:var(--blue-soft);box-shadow:inset 0 0 0 1px var(--blue)}
.abz-intent input:focus-visible+span{outline:4px solid var(--yellow);outline-offset:3px}
.abz-reassure{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;color:var(--green-dark);background:var(--green-soft);border-radius:12px;font-size:.95rem;line-height:1.4}
.abz-reassure>span:first-child{display:grid;place-items:center;flex:none;width:22px;height:22px;margin-top:1px;background:var(--green-dark);color:var(--white);border-radius:50%;font-size:.75rem}
.abz-reassure strong{color:var(--green-dark)}
.abz-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.abz-field{min-width:0}
.abz-field input,.abz-field select,.abz-field textarea{width:100%;min-height:50px;padding:11px 13px;color:var(--ink);background:var(--white);border:2px solid #bdcad5;border-radius:10px;font-size:1rem}
.abz-field textarea{resize:vertical;min-height:72px}
.abz-field-help{margin-top:6px;color:var(--muted);font-size:.88rem;line-height:1.4}
.abz-registration-fields{display:grid;gap:18px;min-width:0}
.abz-field input:focus,.abz-field select:focus,.abz-field textarea:focus{border-color:var(--blue)}
.abz .abz-field.is-invalid input,.abz .abz-field.is-invalid select,.abz .abz-field.is-invalid textarea{border:1px solid #ad626c;background:var(--white);box-shadow:none}
.abz .abz-field-error{margin-top:5px;color:#82414a;font-size:.88rem;font-weight:650;line-height:1.35}
.abz .abz-form-error{padding:10px 12px;color:#5b4b13;background:var(--yellow-soft);border:0;border-left:4px solid #c99a00;border-radius:0 9px 9px 0;font-size:.92rem;font-weight:700;line-height:1.35}
.abz-more{border:1px dashed var(--line);border-radius:12px;padding:4px 14px}
.abz-more summary{color:var(--blue-dark);cursor:pointer;padding:8px 0;font-size:.92rem;font-weight:800;list-style:none}
.abz-more summary::-webkit-details-marker{display:none}
.abz-more summary::before{content:"+";display:inline-block;width:18px;font-weight:900}
.abz-more[open] summary::before{content:"–"}
.abz-more-body{display:grid;gap:14px;padding:6px 0 12px}
.abz-days-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.abz-days-options label{position:relative;cursor:pointer}
.abz-days-options input{position:absolute;opacity:0;width:1px;height:1px}
.abz-days-options span{display:grid;place-items:center;min-height:44px;padding:8px;color:var(--muted);background:var(--white);border:2px solid var(--line);border-radius:10px;font-size:.92rem;font-weight:800}
.abz-days-options input:checked+span{color:var(--blue-dark);background:var(--blue-soft);border-color:var(--blue)}
.abz-days-options input:focus-visible+span{outline:4px solid var(--yellow);outline-offset:3px}
.abz-optin{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:center;min-height:52px;padding:12px 14px;color:var(--ink);background:var(--cream);border:1px solid var(--line);border-radius:12px;font-size:.94rem;line-height:1.35;cursor:pointer;transition:border-color .18s,background-color .18s,box-shadow .18s}
.abz-optin:hover{border-color:var(--blue);background:var(--blue-soft)}
.abz-optin:has(input:checked){border-color:var(--green-dark);background:var(--green-soft);box-shadow:inset 0 0 0 1px var(--green-dark)}
.abz-optin input{width:24px;height:24px;margin:0;accent-color:var(--green-dark);cursor:pointer}
.abz-optin input:focus-visible{outline:4px solid var(--yellow);outline-offset:3px}
.abz-follow-up{color:var(--blue-deep);font-size:.92rem;line-height:1.45}
.abz .abz-follow-up a{color:var(--blue-dark);font-weight:800;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
.abz-privacy{color:var(--muted);font-size:.9rem;line-height:1.45}
.abz button.abz-submit{width:100%;height:auto;min-height:58px;padding:13px 24px;border:0;border-radius:999px;font-size:1.05rem;line-height:1.18}
.abz-thanks{display:grid;gap:14px;min-height:400px;align-content:start}
.abz-thanks-mark{display:grid;place-items:center;width:64px;height:64px;color:var(--white);background:var(--green-dark);border-radius:50%;font-size:1.8rem;font-weight:900}
.abz-thanks h3{font-size:1.9rem}
.abz-next-steps{display:grid;gap:12px}
.abz-next-steps li{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:start}
.abz-next-steps b{display:grid;place-items:center;width:30px;height:30px;color:var(--blue-deep);background:var(--yellow);border-radius:50%;font-size:.85rem}
.abz-next-steps strong{display:block;color:var(--blue-deep)}
.abz-next-steps span{color:var(--muted);font-size:.95rem}
.abz-thanks-phone{color:var(--muted)}
.abz .abz-thanks-phone a{color:var(--blue-dark);font-weight:800}

/* faq */
.abz-faq{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(460px,1.25fr);align-items:start;gap:60px;padding-block:64px}
.abz-faq-heading{position:sticky;top:112px}
.abz-faq-heading h2{font-size:clamp(2.1rem,3.4vw,3.2rem)}
.abz-faq-list{border-top:2px solid var(--blue-deep)}
.abz-faq-list details{border-bottom:1px solid #cfd7db}
.abz-faq-list summary{display:grid;grid-template-columns:1fr auto;align-items:center;gap:15px;padding:18px 2px;color:var(--blue-deep);font-weight:850;cursor:pointer;list-style:none}
.abz-faq-list summary::-webkit-details-marker{display:none}
.abz-faq-list summary span{display:grid;place-items:center;width:32px;height:32px;border:2px solid var(--blue-deep);border-radius:50%;transition:transform .18s}
.abz-faq-list details[open] summary span{transform:rotate(45deg)}
.abz-faq-list details p{max-width:680px;margin:-4px 48px 22px 2px;color:var(--muted);font-size:.96rem}

/* close */
.abz-final{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(36px,6vw,80px);width:min(1280px,100% - 32px);min-height:460px;margin:0 auto 18px;padding:54px clamp(30px,6vw,80px);background:radial-gradient(circle at 90% 8%,rgba(244,201,40,.35),transparent 28%),var(--yellow-soft);border-radius:38px}
.abz-final-photo{position:relative;z-index:2;overflow:hidden;max-width:400px;border:9px solid var(--white);border-radius:28px 28px 70px;box-shadow:12px 14px 0 var(--yellow),0 20px 40px rgba(9,47,93,.15);transform:rotate(-2deg)}
.abz-final-photo img{aspect-ratio:.85;object-fit:cover;object-position:center 10%;width:100%}
.abz-final-copy{position:relative;z-index:2}
.abz-final-copy h2{margin-bottom:14px}
.abz-final-copy>p:not(.abz-voice){color:var(--ink);font-weight:700}
.abz-final-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:24px}
.abz-final-letter{position:absolute;right:3%;bottom:-70px;color:rgba(9,47,93,.06);font-family:Tahoma,Arial,sans-serif;font-size:16rem;font-weight:900;line-height:1}

/* footer */
.abz-footer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:36px;width:min(1180px,100% - 48px);min-height:150px;margin:0 auto;padding:28px 0 36px;color:var(--muted);font-size:.95rem}
.abz-footer-line{display:flex;align-items:center;gap:12px;font-weight:700;color:var(--ink)}
.abz-footer-bee img{width:38px;height:auto;transform:rotate(-8deg)}
.abz-logo-footer{width:155px}
.abz-footer-meta{display:flex;flex-wrap:wrap;gap:20px;font-weight:750}
.abz .abz-footer a{color:var(--blue-dark);text-decoration:none}
.abz-footer a:hover{text-decoration:underline}

/* sticky mobile cta */
.abz-sticky{display:none}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .abz-hero{grid-template-columns:minmax(0,.96fr) minmax(380px,1.04fr);gap:36px;padding-inline:36px}
  .abz-hero h1{font-size:clamp(2.8rem,6vw,4.8rem)}
  .abz-h1-flight{transform:scale(.85)}
  .abz-facts p{padding-inline:16px}
  .abz-program-layout{grid-template-columns:minmax(0,1fr);gap:14px}
  .abz-program-layout>*{min-width:0;max-width:100%}
  .abz-program-copy{display:contents}
  .abz-program-copy>*{grid-column:1;min-width:0;max-width:100%;overflow-wrap:anywhere}
  .abz-program-copy h2{margin-bottom:0}
  .abz-quotes{order:3;margin-top:16px}
  .abz-price-card{order:2;margin-top:16px}
  .abz-help{grid-template-columns:auto 1fr}
  .abz-help-actions{grid-column:1/-1;justify-items:start;min-width:0}
  .abz-help-actions .abz-btn{width:auto;min-width:240px}
}
@media (max-width:920px){
  .abz-header{padding-inline:22px}
  .abz-hero{grid-template-columns:1fr;gap:34px;min-height:0;padding:44px 28px 70px}
  .abz-hero-visual{max-width:640px;padding:30px 24px 34px 8px}
  .abz-recog-grid,.abz-method-layout,.abz-levels-layout,.abz-proof-layout,.abz-form-layout,.abz-faq,.abz-final{grid-template-columns:1fr}
  .abz-recognition,.abz-proof-layout,.abz-form-layout,.abz-faq,.abz-levels-layout{max-width:760px}
  .abz-recog-grid{max-width:760px}
  .abz-method-layout{grid-template-areas:none}
  .abz-method-heading{grid-area:auto;order:1}
  .abz-method-heading .abz-label{margin-bottom:14px}
  .abz-method-aside{display:contents}
  .abz-method-intro{order:2}
  .abz-collage{grid-area:auto;order:3}
  .abz-method-points{order:4}
  .abz-collage{max-width:760px}
  .abz-proof-photos{max-width:640px}
  .abz-faq-heading{position:static}
  .abz-final{width:min(760px,100% - 32px);padding:44px}
  .abz-footer{grid-template-columns:1fr 1fr}
  .abz-footer-meta{grid-column:1/-1}
}
@media (max-width:700px){
  .abz{font-size:16px;padding-bottom:84px}
  .abz-shell{width:min(100% - 32px,600px)}
  .abz-header{grid-template-columns:1fr;min-height:66px;padding:8px 16px}
  .abz-logo{width:145px}
  .abz-header-context,.abz-header .abz-btn-small{display:none}
  .abz-hero{width:calc(100% - 16px);margin-top:8px;padding:30px 18px 40px;border-radius:24px;gap:26px}
  .abz-hero h1{font-size:clamp(2.6rem,13vw,3.6rem);line-height:.9;margin-bottom:14px}
  .abz-hero h1 small{margin-top:12px;font-size:1.05rem}
  .abz h2{font-size:clamp(2.2rem,9.6vw,3.3rem)}
  .abz-hero-support{font-size:1rem;line-height:1.5;margin-bottom:22px}
  .abz-hero-actions{gap:14px;width:100%;align-items:center}
  .abz-hero-actions .abz-btn{width:100%;min-height:58px;padding-inline:14px;font-size:1rem}
  .abz-hero-visual{padding:28px 12px 44px 4px;margin-top:6px}
  .abz-hero-frame{border-width:7px;border-radius:20px 20px 42px}
  .abz-hero-inset{width:40%;padding:5px;right:-2px;bottom:-12px}
  .abz-hero-inset figcaption{display:none}
  .abz-hero-note{left:0;bottom:-8px;padding:9px 12px}
  .abz-h1-flight{transform:scale(.8)}
  .abz-levels-cta{display:none}
  .abz-letter-one{font-size:5rem;top:34%;right:-18px}
  .abz-letter-two{font-size:6rem;bottom:2%}
  .abz-letter-three{font-size:3.6rem;top:22%;right:6%}
  .abz-facts{grid-template-columns:repeat(2,1fr);width:calc(100% - 32px);margin-top:6px;border-radius:15px}
  .abz-facts p{min-height:64px;padding:12px 12px;grid-template-columns:36px 1fr;column-gap:10px}
  .abz-ico-wrap{width:36px;height:36px}
  .abz-facts p:nth-child(2){border-right:0}
  .abz-facts p:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .abz-ico{width:22px;height:22px}
  .abz .abz-facts strong{font-size:.98rem}
  .abz-recognition{padding-block:46px 42px}
  .abz-recog-card{gap:20px;padding:26px 20px 20px;border-radius:20px 45px 20px 20px}
  .abz-recog-card h2{font-size:clamp(2.1rem,10vw,3.1rem);margin-bottom:14px}
  .abz-recog-photo img{aspect-ratio:1.3;object-position:center 45%}
  .abz .abz-home{padding:13px 14px;font-size:.98rem}
  .abz-answer{min-height:0}
  .abz-method,.abz-levels,.abz-proof,.abz-program,.abz-form-section{padding-block:46px}
  .abz-method-layout{gap:28px}
  .abz-point{grid-template-columns:52px 1fr;gap:14px;padding:18px 0}
  .abz-point-ico{width:48px;height:48px}
  .abz-point-letters{font-size:1.25rem}
  .abz-collage-small{width:38%;right:-4px;top:56%}
  .abz-collage>figcaption{padding-right:40%}
  .abz-ladder{min-height:200px;column-gap:6px;row-gap:8px}
  .abz-step b{min-height:2.7em;font-size:.82rem}
  .abz-bar{font-size:1.05rem}
  .abz-step:nth-child(1) .abz-bar{height:3.57143em}
  .abz-step:nth-child(2) .abz-bar{height:5.71429em}
  .abz-step:nth-child(3) .abz-bar{height:7.85714em}
  .abz-step:nth-child(4) .abz-bar{height:10em}
  .abz-ladder-bee,.abz-ladder-bee .abz-bee{width:44px}
  .abz .abz-ladder-bee,.abz.js .abz-ladder-bee,.abz.js .abz-levels.is-in .abz-ladder-bee{left:auto;right:4px;top:-22px;offset-path:none;offset-distance:0%;offset-rotate:0deg;transition:none}
  .abz .abz-ladder-bee .abz-bob{animation:none}
  .abz-levels-visual{max-width:520px;padding-bottom:60px}
  .abz-levels-photo img{aspect-ratio:1.1;object-position:center 20%}
  .abz-proof-copy h2{font-size:clamp(2.2rem,10vw,3.2rem)}
  .abz-proof-photos{grid-template-columns:1.1fr .9fr;gap:12px}
  .abz-proof-photos figcaption{flex-direction:column;gap:2px;font-size:.88rem}
  .abz-price-card{padding:22px 18px 24px}
  .abz-price-big{font-size:3.2rem}
  .abz-price-actions{grid-template-columns:1fr}
  .abz-quotes{max-width:none}
  .abz-help{grid-template-columns:1fr;gap:18px;margin-block:34px;padding:28px 22px 30px}
  .abz-help-bee{width:130px;height:66px}
  .abz-help-actions{justify-items:stretch}
  .abz-help-actions .abz-btn{width:100%;min-width:0}
  .abz-form-layout{gap:26px}
  .abz-form-card{padding:20px 16px 24px}
  .abz-field-row{grid-template-columns:1fr}
  .abz-intent span{padding:11px 12px;font-size:.95rem}
  .abz-faq{gap:26px;padding-block:46px}
  .abz-faq-heading h2{font-size:2.4rem}
  .abz-faq-list summary{padding-block:16px;font-size:.98rem}
  .abz-final{width:calc(100% - 16px);min-height:0;padding:30px 20px 40px;border-radius:24px;gap:26px}
  .abz-final-photo{max-width:100%;border-width:6px;border-radius:19px 19px 45px;box-shadow:8px 9px 0 var(--yellow)}
  .abz-final-photo img{aspect-ratio:1.15;object-position:center 12%}
  .abz-final-actions{display:grid;gap:18px;justify-items:center}
  .abz-final-actions .abz-btn{width:100%}
  .abz-footer{grid-template-columns:1fr;gap:18px;min-height:0;padding:30px 0 20px;text-align:center}
  .abz-footer .abz-brand,.abz-footer-meta{justify-self:center}
  .abz-footer-meta{justify-content:center}
  .abz-sticky{position:fixed;z-index:90;left:0;right:0;bottom:0;display:flex;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,250,240,.96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(9,47,93,.15);box-shadow:0 -10px 25px rgba(9,47,93,.12);transition:transform .22s,opacity .22s,visibility .22s}
  .abz-sticky[hidden]{display:none}
  .abz-sticky .abz-btn{width:min(100%,560px);min-height:50px;margin:0 auto;padding:11px;font-size:.95rem}
  .abz-sticky.is-hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(125%)}
}
@media (max-width:390px){
  .abz-hero h1{font-size:2.6rem}
  .abz-h1-flight{transform:scale(.7)}
  .abz-price-big{font-size:2.65rem}
  .abz-intent{grid-template-columns:1fr}
  .abz-days-options{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:340px){
  .abz-price-big{font-size:2.25rem;letter-spacing:-.07em}
  .abz-facts{grid-template-columns:1fr}
  .abz-facts p,.abz-facts p:nth-child(n){border-right:0;border-bottom:1px solid var(--line)}
  .abz-facts p:last-child{border-bottom:0}
}

@media (min-width:921px){.abz-form-copy,.abz-recog-side{position:sticky;top:96px}}

/* reduced motion: every movement has a complete static state */
@media (prefers-reduced-motion:reduce){
  .abz *,.abz *::before,.abz *::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .abz .abz-hero-bee{offset-distance:100%}
  .abz.js .abz-reveal,.abz.js .abz-point-letters i{translate:0 0}
  .abz.js .abz-bar{transform:scaleY(1)}
  .abz.js .abz-ladder-bee{offset-distance:100%}
  .abz.js .abz-step b{opacity:1;translate:0 0}
  .abz.js .abz-ladder-trail path{stroke-dashoffset:0}
  .abz.js .abz-help .abz-help-bee-fly{opacity:1}
  .abz-quote.is-active{animation:none}
  .abz-hero-frame,.abz-hero-inset,.abz-hero-note,.abz-collage-main,.abz-collage-small,.abz-recog-photo,.abz-levels-photo,.abz-levels-book,.abz-proof-photo-a,.abz-proof-photo-b,.abz-final-photo{transform:none}
}


/* ===== Arabeez CO landing tweaks — Sept 9 2026 (appended, reversible; .bak saved) ===== */
/* "The goal": drop the warning-style box, keep the green accent */
.abz .abz-goal{background:none!important;border:0!important;border-radius:0!important;padding:6px 0 0!important;margin:18px 0 14px!important}
/* Level labels fit on one line on mobile (no "Inter/mediate" stacking) */
@media (max-width:700px){.abz-ladder b{font-size:clamp(.58rem,2.7vw,.82rem)!important;line-height:1.12!important;letter-spacing:-.2px!important}}
/* Guide bee on the ladder travels slower so people notice it */
.abz.js .abz-ladder-bee{transition:offset-distance 3.6s ease-in-out .5s!important}
/* Consent panel: compact; lifted clear of the mobile sticky call bar */
#abz-production-consent-panel{padding:12px 14px!important;max-width:400px!important;font-size:13.5px!important;line-height:1.35!important}
#abz-production-consent-panel strong{font-size:14px!important}
#abz-production-consent-panel p{margin:3px 0 9px!important;font-size:12.5px!important}
#abz-production-consent-panel #abz-production-consent-actions button{min-height:40px!important;padding:7px 12px!important;font-size:13px!important}
@media (max-width:700px){#abz-production-consent-panel{left:10px!important;right:10px!important;bottom:92px!important;max-width:none!important;padding:10px 12px!important}}
/* ===== end CO tweaks ===== */


/* ===== Arabeez CO — PREVIEW-only (visible only at /arabic-classes/?abzpreview=1) — Sept 9 2026 ===== */
/* Sticky short-column effect on section 3 (The Arabeez difference) + section 6 (Tuition), matching section 2 */
@media (min-width:921px){
  .abz-method-aside{position:sticky;top:96px;align-self:start}
  .abz-price-card{position:sticky;top:96px;align-self:start}
}
/* Ladder bee: reliable slow continuous climb so it is always gently moving (independent of scroll timing) */
.abz-preview .abz.js .abz-ladder-bee{transition:none!important;animation:abz-bee-climb 8s ease-in-out .4s infinite!important}
@keyframes abz-bee-climb{0%{offset-distance:0%;opacity:0}6%{offset-distance:0%;opacity:1}66%{offset-distance:100%;opacity:1}78%{offset-distance:100%;opacity:0}79%{offset-distance:0%;opacity:0}100%{offset-distance:0%;opacity:0}}
/* ===== end PREVIEW block ===== */
