@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600&family=Noto+Sans+Arabic:wght@400;500;600;700&display=swap");:root{--deep:#062c33;--ink:#123338;--paper:#fbfaf5;--cream:#f0eee5;--mint:#d8ebe5;--coral:#ef9979;--muted:#687d7f;--line:rgba(9,51,58,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:DM Sans,sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.icon{width:20px;height:20px;flex:0 0 auto}.portrait{width:100%;height:min(78svh,820px);overflow:hidden;background:#d9ddd9}.portrait img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 35%}.intro{padding:clamp(76px,9vw,132px) clamp(22px,7vw,110px);background:var(--paper);font-family:Noto Sans Arabic,sans-serif;text-align:right}.introInner{width:min(1180px,100%);margin-inline:auto}.eyebrow{margin:0 0 17px;color:#54827e;font:700 11px Noto Sans Arabic;letter-spacing:.04em}.identity{padding-bottom:42px;border-bottom:1px solid var(--line)}.intro h1{margin:0;color:var(--deep);font:500 clamp(48px,6.4vw,90px)/.98 Manrope;letter-spacing:-.065em;text-align:right;white-space:nowrap}.title{max-width:720px;margin:22px 0 0 auto;color:#4f6d70;font:700 12px/1.6 DM Sans;letter-spacing:.055em;text-transform:uppercase;text-align:right}.copyGrid{margin-top:48px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-gap:clamp(30px,5vw,74px);gap:clamp(30px,5vw,74px);align-items:start}.explanation{margin:0;padding-top:5px;color:#315155;font:500 clamp(22px,2.4vw,32px)/1.75 Noto Sans Arabic}.transformative{min-height:100%;margin:0;padding:32px 34px 34px 100px;position:relative;overflow:hidden;border:1px solid rgba(29,91,86,.13);border-radius:26px;background:linear-gradient(135deg,#eaf3ef,#f5f2e9);color:var(--deep);box-shadow:0 20px 50px rgba(12,48,53,.07)}.transformative:before{content:"";width:180px;height:180px;position:absolute;left:-75px;bottom:-90px;border-radius:50%;background:rgba(110,165,155,.12)}.cardLabel{display:block;margin-bottom:12px;color:#56847f;font-size:10px;font-weight:700}.transformative p{margin:0;font:500 clamp(16px,1.65vw,21px)/1.95 Noto Sans Arabic}.programBadge{width:64px;height:64px;position:absolute;left:24px;top:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:var(--deep);color:white;box-shadow:0 10px 24px rgba(6,44,51,.2)}.programBadge strong{font:600 24px/1 Manrope}.programBadge span{margin-top:4px;font-size:8px}.sessionFacts{margin-top:26px;display:grid;grid-template-columns:.7fr 1fr 1.35fr;grid-gap:10px;gap:10px;color:#506c6f}.sessionFacts>div{min-height:112px;padding:20px 21px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto 1fr;grid-column-gap:10px;column-gap:10px;align-items:start;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.62)}.sessionFacts .icon{grid-row:1/3;width:19px;margin-top:3px;color:#5c8e88}.sessionFacts span{color:#71888a;font-size:9px;font-weight:700}.sessionFacts b,.sessionFacts strong{align-self:end;color:var(--deep);font:600 14px/1.6 Noto Sans Arabic}.sessionFacts .priceFact{display:flex;flex-direction:column;justify-content:space-between;background:var(--deep);border-color:var(--deep)}.sessionFacts .priceFact span{color:#a9c4c1}.sessionFacts .priceFact strong{color:white;font:600 31px/1 Manrope}.sessionFacts .priceFact small{font:600 11px Noto Sans Arabic}.reservation{padding:clamp(72px,8vw,112px) clamp(22px,7vw,110px);position:relative;overflow:hidden;background:var(--deep);color:white;font-family:Noto Sans Arabic,sans-serif;text-align:right}.reservation:before{content:"";width:520px;height:520px;position:absolute;left:-220px;top:-260px;border:1px solid rgba(216,235,229,.12);border-radius:50%}.reservationInner{width:min(1180px,100%);margin-inline:auto;position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;grid-gap:70px;gap:70px}.reservation .eyebrow{color:#9dc4be}.reservation h2{max-width:790px;margin:0;font:600 clamp(42px,5.8vw,76px)/1.35 Noto Sans Arabic;letter-spacing:-.04em}.reservation p:not(.eyebrow){max-width:620px;margin:25px 0 0;color:#b6cbcc;font-size:15px;line-height:1.65}.darkCta,.primaryCta,.submitCta{border:0;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:700}.primaryCta{width:min(100%,390px);min-height:74px;padding:10px 15px;border-radius:20px;background:var(--coral);color:var(--deep);box-shadow:0 22px 45px rgba(0,0,0,.24);transition:transform .2s,box-shadow .2s}.darkCta:hover,.primaryCta:hover,.submitCta:hover{transform:translateY(-2px)}.primaryCta:hover{box-shadow:0 28px 55px rgba(0,0,0,.3)}.primaryCta>span:not(.whatsappCircle){flex:1 1;text-align:right;font:700 15px Noto Sans Arabic}.primaryCta small{display:block;margin-top:2px;color:#7b4b3c;font-size:9px;font-weight:600}.whatsappCircle{width:45px;height:45px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.4)}.whatsappCircle .icon{width:22px}.primaryCta .icon:last-child{transform:scaleX(-1)}.modalBackdrop{position:fixed;inset:0;z-index:100;padding:20px;display:grid;place-items:center;background:rgba(1,22,27,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fade .2s ease}.bookingModal{width:min(730px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:clamp(28px,5vw,50px);border-radius:25px;background:var(--paper);position:relative;box-shadow:0 40px 100px rgba(0,0,0,.35);animation:rise .24s ease;font-family:Noto Sans Arabic,sans-serif;text-align:right}.closeButton{position:absolute;top:18px;left:18px;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--deep);display:grid;place-items:center}.closeButton .icon{width:17px}.modalEyebrow{margin:0 0 15px;color:#4e8984;font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.bookingModal h2{margin:0;font:600 clamp(32px,5vw,48px)/1.4 Noto Sans Arabic}.modalLead{max-width:570px;color:var(--muted);line-height:1.6}.bookingModal form{margin-top:24px;display:grid;grid-gap:15px;gap:15px}.slotFields,.twoFields{display:grid;grid-gap:10px;gap:10px}.twoFields{grid-template-columns:repeat(2,1fr)}.slotFields{grid-template-columns:repeat(3,1fr)}.bookingModal label{color:#3d5d60;font-size:10px;font-weight:700}.bookingModal input{width:100%;margin-top:7px;padding:12px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink);outline:0}.bookingModal input[type=datetime-local]{direction:ltr;text-align:left}.bookingModal input:focus{border-color:#67a29d;box-shadow:0 0 0 3px rgba(103,162,157,.12)}.submitCta{min-height:50px;padding:11px 15px;border-radius:12px;background:var(--deep);color:white}.submitCta .icon:last-child{margin-right:auto;transform:scaleX(-1)}.submitCta:disabled{opacity:.45;cursor:not-allowed;transform:none}.bookingModal form>small{color:#869697;font-size:8px;text-align:center}.readyState{min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.readyState>span{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:var(--mint)}.readyState h2{margin-top:20px}.readyState p{color:var(--muted)}.readyState button{margin-top:12px;padding:11px 24px;border:1px solid var(--deep);border-radius:99px;background:transparent;color:var(--deep);font-weight:700}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(13px) scale(.985)}}@media(max-width:900px){.copyGrid{grid-template-columns:1fr}.sessionFacts{grid-template-columns:1fr 1fr}.sessionFacts .priceFact{grid-column:1/-1;min-height:100px}.reservationInner{grid-template-columns:1fr;align-items:start;gap:38px}}@media(max-width:640px){.portrait{height:64svh}.portrait img{object-position:62% center}.intro{padding:64px 20px 70px}.identity{padding-bottom:30px}.intro h1{font-size:clamp(42px,12.5vw,60px);white-space:normal}.title{margin-block:24px;font-size:10px;line-height:1.5}.copyGrid{margin-top:34px;gap:27px}.explanation{font-size:20px}.transformative{padding:27px 23px 92px;border-radius:22px}.transformative p{font-size:16px}.programBadge{width:58px;height:58px;left:22px;top:auto;bottom:22px}.sessionFacts{grid-template-columns:1fr;gap:9px}.sessionFacts .priceFact{grid-column:auto}.sessionFacts>div{min-height:96px}.reservation{padding:70px 20px}.reservation h2{font-size:39px}.primaryCta{width:100%}.modalBackdrop{padding:0;align-items:end}.bookingModal{max-height:95vh;border-radius:23px 23px 0 0;padding:30px 20px}.slotFields,.twoFields{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation:none!important;transition:none!important}}