:root{--navy:#12285a;--navy-2:#0b1b40;--blue:#1d4ea8;--sky:#e9f0fb;--wine:#9b2743;--wine-2:#7d1d35;--gold:#e9a93a;--ink:#101a33;--muted:#5d6782;--line:#e4e7ef;--cream:#faf8f3;--r:18px;--max:1220px;--sh:0 26px 50px -30px rgba(11,27,64,.45);
--fd:'Fraunces',Georgia,serif;--fb:'Inter',system-ui,sans-serif}
[dir=rtl]{--fd:'Cairo','IBM Plex Sans Arabic',sans-serif;--fb:'IBM Plex Sans Arabic',system-ui,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:92px}
body{font-family:var(--fb);color:var(--ink);background:#fff;line-height:1.7;-webkit-font-smoothing:antialiased}
[dir=rtl] body{line-height:1.9}
img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--fd);line-height:1.15;letter-spacing:-.01em;font-weight:700}
[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3{letter-spacing:0;line-height:1.35;font-weight:800}
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:22px}
.kicker{display:inline-flex;align-items:center;gap:10px;font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--wine);margin-block-end:14px}
[dir=rtl] .kicker{letter-spacing:0;font-size:.95rem}
.kicker::before{content:"";width:24px;height:2px;background:currentColor}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 24px;border-radius:999px;font-weight:700;font-size:.97rem;border:1.5px solid transparent;transition:.22s;white-space:nowrap;font-family:var(--fb)}
.btn svg{width:19px;height:19px;fill:currentColor;flex:none}
.b-wine{background:var(--wine);color:#fff;box-shadow:0 14px 26px -14px rgba(155,39,67,.7)}.b-wine:hover{background:var(--wine-2);transform:translateY(-2px)}
.b-navy{background:var(--navy);color:#fff}.b-navy:hover{background:var(--navy-2);transform:translateY(-2px)}
.b-ghost{border-color:rgba(18,40,90,.25);color:var(--navy);background:#fff}.b-ghost:hover{border-color:var(--navy)}
.b-light{border-color:rgba(255,255,255,.35);color:#fff}.b-light:hover{background:#fff;color:var(--navy)}
.b-wa{background:#25d366;color:#fff}.b-wa:hover{background:#1fbd5a;transform:translateY(-2px)}
.sm{padding:10px 18px;font-size:.9rem}
.sec{padding-block:clamp(64px,8vw,110px)}.cream{background:var(--cream)}.dark{background:var(--navy-2);color:#fff}
.head{max-width:700px;margin-block-end:46px}.head.c{text-align:center;margin-inline:auto}.head.c .kicker{justify-content:center}
.head h2{font-size:clamp(2rem,3.8vw,3rem);margin-block-end:14px}.head p{color:var(--muted);font-size:1.08rem}.dark .head p{color:#b9c3dc}
/* header */
.top{background:var(--navy-2);color:#c7d0e6;font-size:.84rem}.top .wrap{display:flex;justify-content:space-between;gap:16px;min-height:38px;align-items:center;flex-wrap:wrap}
.top a:hover{color:#fff}.top .l{display:flex;gap:22px;flex-wrap:wrap}.ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}
.lang{font-weight:700;color:#fff;border:1px solid rgba(255,255,255,.3);padding:2px 12px;border-radius:99px}.lang:hover{background:#fff;color:var(--navy)}
header.h{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-block-end:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:26px;height:80px}.logo img{height:54px;width:auto}
.menu{display:flex;gap:4px;margin-inline-start:auto}.menu a{font-weight:600;font-size:.95rem;color:#28324d;padding:9px 12px;border-radius:10px;white-space:nowrap}
.menu a:hover,.menu a.on{color:var(--wine);background:var(--sky)}
.tog{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:8px;cursor:pointer;margin-inline-start:auto}.tog span{width:24px;height:2px;background:var(--ink);transition:.3s}
/* hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(1100px 520px at 85% -10%,rgba(29,78,168,.14),transparent 60%),radial-gradient(800px 500px at -5% 110%,rgba(155,39,67,.10),transparent 60%),var(--cream)}
.hero .wrap{display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center;padding-block:clamp(56px,7vw,100px)}
.hero h1{font-size:clamp(2.5rem,5.4vw,4.3rem);color:var(--navy)}.hero h1 em{font-style:italic;color:var(--wine)}[dir=rtl] .hero h1 em{font-style:normal}
.hero .lead{font-size:1.15rem;color:var(--muted);max-width:560px;margin-block:22px 30px}
.hero .acts{display:flex;gap:12px;flex-wrap:wrap}
.hero .proof{display:flex;gap:28px;margin-block-start:38px;flex-wrap:wrap}.proof b{display:block;font-family:var(--fd);font-size:1.7rem;color:var(--navy)}.proof span{color:var(--muted);font-size:.88rem}
.stack{position:relative;min-height:470px}
.stack .shield{position:absolute;inset:6% 10% auto auto;width:62%;opacity:.08}
[dir=rtl] .stack .shield{inset:6% auto auto 10%}
.xcard{position:absolute;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--sh);padding:20px 22px;width:min(300px,78%)}
.xcard .tag{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.12em;padding:4px 10px;border-radius:99px;margin-block-end:10px}
[dir=rtl] .xcard .tag{letter-spacing:.04em}
.xcard h3{font-size:1.5rem;color:var(--navy);margin-block-end:4px}.xcard p{color:var(--muted);font-size:.9rem;line-height:1.5}
.xcard .bar{display:flex;gap:6px;margin-block-start:14px}.xcard .bar i{flex:1;height:6px;border-radius:6px;background:var(--sky)}.xcard .bar i.f{background:var(--wine)}
.x1{top:0;inset-inline-start:0;transform:rotate(-2.5deg)}.x1 .tag{background:#f6e3e8;color:var(--wine)}
.x2{top:150px;inset-inline-end:0;transform:rotate(2deg)}.x2 .tag{background:var(--sky);color:var(--blue)}.x2 .bar i.f{background:var(--blue)}
.x3{bottom:0;inset-inline-start:12%;transform:rotate(-1deg)}.x3 .tag{background:#fbf1de;color:#a06b10}.x3 .bar i.f{background:var(--gold)}
/* strip */
.strip{background:var(--navy);color:#fff}.strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-block:26px}
.strip div{display:flex;gap:12px;align-items:center}.strip svg{width:40px;height:40px;fill:var(--gold);flex:none;background:rgba(255,255,255,.08);padding:9px;border-radius:12px}
.strip b{display:block}.strip span{font-size:.85rem;color:#b9c3dc}
/* oet feature */
.oet{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.oet-panel{background:linear-gradient(150deg,var(--wine),#5e1428);color:#fff;border-radius:26px;padding:clamp(28px,4vw,46px);position:relative;overflow:hidden}
.oet-panel::after{content:"OET";position:absolute;inset-inline-end:-10px;bottom:-40px;font-family:'Fraunces',serif;font-weight:800;font-size:11rem;color:rgba(255,255,255,.07);line-height:1}
.oet-panel h3{font-size:1.6rem;margin-block-end:16px}.prof{display:flex;flex-wrap:wrap;gap:8px;margin-block-end:22px}
.prof span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);padding:6px 13px;border-radius:99px;font-size:.88rem;font-weight:600}
.subs{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative;z-index:1}.subs div{background:rgba(255,255,255,.1);border-radius:14px;padding:14px}
.subs b{display:block;font-family:var(--fd);font-size:1.1rem}.subs small{color:#f1d6dd;font-size:.85rem}
.ticks{list-style:none;display:grid;gap:14px;margin-block:22px 28px}.ticks li{position:relative;padding-inline-start:32px;color:#2b3550}
.ticks li::before{content:"";position:absolute;inset-inline-start:0;top:.45em;width:20px;height:20px;border-radius:50%;background:var(--wine) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'><path d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>") center/13px no-repeat}
.dark .ticks li{color:#dbe2f2}
/* grids & cards */
.g{display:grid;gap:22px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:28px;transition:.25s;position:relative}
.card:hover{transform:translateY(-5px);box-shadow:var(--sh);border-color:transparent}
.card .ic{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;margin-block-end:18px;background:var(--sky)}.card .ic svg{width:26px;height:26px;fill:var(--blue)}
.card h3{font-size:1.3rem;color:var(--navy);margin-block-end:8px}.card p{color:var(--muted);font-size:.96rem}
.card .meta{margin-block-start:14px;font-size:.82rem;font-weight:700;color:var(--wine);letter-spacing:.06em;text-transform:uppercase}
[dir=rtl] .card .meta{letter-spacing:0;text-transform:none}
.exam{border-top:4px solid var(--blue)}.exam .big{font-family:var(--fd);font-size:2rem;color:var(--navy);margin-block-end:2px}
.exam.wine{border-top-color:var(--wine)}.exam.gold{border-top-color:var(--gold)}.exam.teal{border-top-color:#1b8a8f}
.lang-card{display:flex;gap:18px;align-items:center}.flag{width:56px;height:56px;border-radius:50%;flex:none;display:grid;place-items:center;font-weight:800;font-family:var(--fd);color:#fff;font-size:1.05rem}
/* steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:s}
.step{counter-increment:s;padding:28px 24px;border-radius:var(--r);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.step::before{content:"0" counter(s);display:block;font-family:'Fraunces',serif;font-size:2.4rem;color:var(--gold);margin-block-end:8px;line-height:1}
.step h3{font-size:1.15rem;margin-block-end:6px}.step p{color:#b9c3dc;font-size:.94rem}
/* feed */
.feed{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.feed a{border-radius:14px;overflow:hidden;aspect-ratio:1}.feed img{width:100%;height:100%;object-fit:cover;transition:.4s}.feed a:hover img{transform:scale(1.05)}
/* careers + cta */
.cta{background:linear-gradient(120deg,var(--navy),var(--blue));color:#fff;border-radius:28px;padding:clamp(30px,5vw,56px);display:grid;grid-template-columns:1.3fr .7fr;gap:28px;align-items:center;position:relative;overflow:hidden}
.cta::after{content:"";position:absolute;inset-inline-end:-80px;top:-80px;width:280px;height:280px;border-radius:50%;border:46px solid rgba(255,255,255,.06)}
.cta h2{font-size:clamp(1.7rem,3vw,2.4rem);margin-block-end:10px}.cta p{color:#cfd8ee}.cta .acts{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;position:relative;z-index:1}
.hire{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;border:1.5px dashed rgba(155,39,67,.35);border-radius:22px;padding:26px 28px;background:#fff}
.hire .ic{width:58px;height:58px;border-radius:16px;background:#f6e3e8;display:grid;place-items:center}.hire .ic svg{width:28px;height:28px;fill:var(--wine)}
.hire h3{font-size:1.25rem;color:var(--navy)}.hire p{color:var(--muted)}
/* contact */
.contact{display:grid;grid-template-columns:1fr 1.25fr;gap:22px}
.cbox{background:var(--navy);color:#fff;border-radius:22px;padding:32px;display:flex;flex-direction:column;gap:18px}
.cbox h3{font-size:1.5rem}.cbox .ln{display:flex;gap:14px;align-items:flex-start}.cbox .ln svg{width:22px;height:22px;fill:var(--gold);flex:none;margin-block-start:3px}
.cbox small{display:block;color:#b9c3dc;font-size:.82rem}.cbox .acts{display:flex;gap:10px;flex-wrap:wrap;margin-block-start:auto}
.map iframe{width:100%;height:100%;min-height:380px;border:0;border-radius:22px}
/* page head (oet page) */
.phead{background:linear-gradient(140deg,var(--wine),#5e1428 70%);color:#fff;padding-block:64px 56px;position:relative;overflow:hidden}
.phead::after{content:"OET";position:absolute;inset-inline-end:3%;bottom:-60px;font-family:'Fraunces',serif;font-weight:800;font-size:14rem;color:rgba(255,255,255,.07);line-height:1}
.phead .crumb{font-size:.88rem;color:#f1d6dd;margin-block-end:12px}.phead h1{font-size:clamp(2.2rem,4.6vw,3.6rem);max-width:820px}.phead p{color:#f1d6dd;max-width:720px;margin-block-start:14px;font-size:1.1rem}
.faq details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:6px 22px;margin-block-end:12px}
.faq summary{cursor:pointer;font-weight:700;padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:14px;color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";color:var(--wine);font-size:1.4rem;line-height:1}.faq details[open] summary::after{content:"−"}
.faq p{color:var(--muted);padding-block-end:16px}
/* footer */
footer.f{background:var(--navy-2);color:#b9c3dc;padding-block-start:60px;margin-block-start:clamp(64px,8vw,110px)}
.fg{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:34px;padding-block-end:40px}
.f .flogo{background:#fff;border-radius:14px;padding:10px 14px;width:fit-content;margin-block-end:16px}.f .flogo img{height:46px}
.f h4{color:#fff;font-family:var(--fb);font-size:1rem;margin-block-end:14px}.f a,.f .s{display:block;margin-block-end:9px;font-size:.93rem}.f a:hover{color:#fff}
.soc{display:flex;gap:10px}.soc a{width:40px;height:40px;border-radius:11px;background:rgba(255,255,255,.08);display:grid;place-items:center;margin:0}.soc svg{width:20px;height:20px;fill:#fff}.soc a:hover{background:var(--wine)}
.fb2{border-block-start:1px solid rgba(255,255,255,.1);padding-block:18px;font-size:.86rem}.fb2 .wrap{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.wa{position:fixed;inset-inline-end:18px;bottom:18px;z-index:60;width:58px;height:58px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 14px 28px -10px rgba(37,211,102,.7)}.wa svg{width:30px;height:30px;fill:#fff}
/* responsive */
@media(max-width:1080px){.g4,.steps{grid-template-columns:repeat(2,1fr)}.fg{grid-template-columns:1fr 1fr}.feed{grid-template-columns:repeat(3,1fr)}.menu a{padding:9px 8px;font-size:.9rem}}
@media(max-width:920px){.hero .wrap,.oet,.contact,.cta{grid-template-columns:1fr}.stack{min-height:430px;max-width:520px;width:100%;margin-inline:auto}.g3{grid-template-columns:repeat(2,1fr)}.strip .wrap{grid-template-columns:1fr 1fr}.cta .acts{justify-content:flex-start}.hire{grid-template-columns:auto 1fr}.hire .btn{grid-column:1/-1;justify-self:start}}
@media(max-width:820px){.menu{position:absolute;top:100%;inset-inline:0;flex-direction:column;gap:0;background:#fff;padding:8px 22px 18px;border-block-end:1px solid var(--line);box-shadow:var(--sh);visibility:hidden;opacity:0;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility 0s .2s}
.menu.open{visibility:visible;opacity:1;transform:none;transition:opacity .2s,transform .2s}.menu a{padding:13px 4px;border-block-end:1px solid var(--line);border-radius:0}.tog{display:flex}.nav .b-wine{display:none}
.tog.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.tog.open span:nth-child(2){opacity:0}.tog.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.top .hm{display:none}}
@media(max-width:600px){.g2,.g3,.g4,.steps,.strip .wrap,.fg,.subs{grid-template-columns:1fr}.feed{grid-template-columns:repeat(2,1fr)}.logo img{height:44px}.hero .acts .btn{flex:1}.stack{min-height:400px}.xcard{padding:16px 18px}.x2{top:135px}.hire{grid-template-columns:1fr}}
/* hero stack spacing */
.stack{min-height:560px}.x1{z-index:1}.x2{top:180px;z-index:2}.x3{top:365px;bottom:auto;z-index:3}
@media(max-width:820px){.stack{min-height:0;display:grid;gap:14px;max-width:460px}.stack .shield{display:none}.xcard{position:relative;inset:auto;width:100%;transform:none}.x2,.x3{top:auto}}
