/* Behkavan — redesign. RTL-first, mobile-first. Font: Vazirmatn (as on the current site). */

@font-face{font-family:"Vazirmatn";font-style:normal;font-weight:100 900;font-display:swap;
  src:url("../fonts/vazirmatn-arabic.woff2") format("woff2");
  unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"Vazirmatn";font-style:normal;font-weight:100 900;font-display:swap;
  src:url("../fonts/vazirmatn-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --indigo:#4a54a6;      /* logo */
  --indigo-d:#363e86;
  --cyan:#2ac8d3;        /* logo accent */
  --violet:#8882ee;      /* current site accent */
  --lime:#e6f7a9;
  --ink:#1c2040;
  --text:#4a4f6b;
  --muted:#7a7f9a;
  --line:#e4e6f3;
  --bg:#fff;
  --tint:#f5f6fd;
  --radius:20px;
  --shadow:0 10px 30px rgba(40,48,110,.10);
  --shadow-lg:0 22px 50px rgba(40,48,110,.16);
  --header-h:76px;
}

*,*::before,*::after{box-sizing:border-box}
html{overflow-x:hidden;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Vazirmatn",system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif;font-size:1rem;line-height:1.9;color:var(--text);background:var(--bg);overflow-x:clip;display:flex;flex-direction:column;min-height:100vh}
main{flex:1 0 auto}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3{color:var(--ink);line-height:1.5;margin:0;font-weight:800}
p{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--violet);outline-offset:3px;border-radius:8px}
.container{width:min(1200px,100% - 2rem);margin-inline:auto}
.skip{position:absolute;inset-inline-start:1rem;top:-100px;background:var(--indigo);color:#fff;padding:.6rem 1rem;border-radius:10px;z-index:200}
.skip:focus{top:1rem}
bdi{unicode-bidi:isolate}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:0;cursor:pointer;font-weight:700;border-radius:999px;padding:.8rem 1.6rem;line-height:1.4;transition:transform .2s,box-shadow .2s,background .2s,color .2s}
.btn--primary{background:var(--indigo);color:#fff;box-shadow:0 8px 20px rgba(74,84,166,.28)}
.btn--primary:hover{background:var(--indigo-d);transform:translateY(-2px)}
.btn--ghost{background:#fff;color:var(--indigo);box-shadow:inset 0 0 0 2px var(--line)}
.btn--ghost:hover{box-shadow:inset 0 0 0 2px var(--violet);transform:translateY(-2px)}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}
.navbar__in{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:var(--header-h)}
.brand img{height:50px;width:auto}

.nav{display:flex;align-items:center;gap:1.25rem}
.nav__list{display:flex;align-items:center;gap:.25rem}
.nav__link{display:inline-flex;align-items:center;gap:.35rem;background:none;border:0;cursor:pointer;padding:.6rem .95rem;border-radius:12px;font-weight:600;color:var(--ink);transition:background .2s,color .2s}
.nav__link{position:relative}
.nav__link::after{content:"";position:absolute;inset-inline:.95rem;bottom:.3rem;height:2px;border-radius:2px;background:var(--indigo);transform:scaleX(0);transition:transform .25s}
.nav__link:hover,.has-sub.is-open>.nav__link{color:var(--indigo)}
.nav__link:hover::after,.has-sub.is-open>.nav__link::after{transform:scaleX(1)}
.chev{width:16px;height:16px;transition:transform .2s}
.has-sub{position:relative}
.has-sub.is-open .chev{transform:rotate(180deg)}
.sub{position:absolute;inset-inline-start:0;top:100%;min-width:230px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg);padding:.5rem;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s,transform .18s,visibility .18s}
.sub::before{content:"";position:absolute;inset-inline:0;top:-12px;height:12px} /* hover bridge */
.sub--wide{min-width:260px}
.sub a{display:block;padding:.55rem .85rem;border-radius:10px;font-size:.95rem;color:var(--text);transition:background .15s,color .15s}
.sub a:hover,.sub a:focus-visible{background:var(--tint);color:var(--indigo)}
.burger{display:none}
.scrim{position:fixed;inset:0;background:rgba(20,24,60,.45);z-index:90;opacity:0;transition:opacity .25s}
.scrim.is-on{opacity:1}

@media (hover:hover) and (min-width:961px){
  .has-sub:hover>.sub,.has-sub:has(:focus-visible)>.sub{opacity:1;visibility:visible;transform:none}
  .has-sub:hover .chev{transform:rotate(180deg)}
  .has-sub:hover>.nav__link{color:var(--indigo)}
  .has-sub:hover>.nav__link::after{transform:scaleX(1)}
}
.has-sub.is-open>.sub{opacity:1;visibility:visible;transform:none}

/* ---------- Nested flyout (second-level submenu inside a .sub) ---------- */
.has-flyout{position:relative}
.sub__link{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.55rem .85rem;border:0;background:none;border-radius:10px;font:inherit;font-size:.95rem;color:var(--text);cursor:pointer;text-align:start;transition:background .15s,color .15s}
.sub__link:hover,.sub__link:focus-visible,.has-flyout.is-open>.sub__link{background:var(--tint);color:var(--indigo)}
.has-sub .has-flyout .chev{transform:rotate(90deg)}   /* points toward the flyout (left in RTL) */
.has-flyout{--fly-gap:.6rem;--fly-off:calc(.5rem + 1px + var(--fly-gap))}   /* .sub padding + border + visible gap */
.flyout{position:absolute;top:-.5rem;inset-inline-start:100%;min-width:230px;margin-inline-start:var(--fly-off);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg);padding:.5rem;opacity:0;visibility:hidden;transform:translateX(8px);transition:opacity .18s,transform .18s,visibility .18s}
.flyout::before{content:"";position:absolute;top:0;bottom:0;inset-inline-start:100%;width:var(--fly-off)}   /* invisible hover bridge across the gap */
.has-flyout.is-open>.flyout{opacity:1;visibility:visible;transform:none}
@media (hover:hover) and (min-width:961px){
  .has-flyout:hover>.flyout,.has-flyout:has(:focus-visible)>.flyout{opacity:1;visibility:visible;transform:none}
  .has-flyout:hover>.sub__link{background:var(--tint);color:var(--indigo)}
}

.nav__head,.nav__foot{display:none}

/* ---------- Mobile nav (hamburger) ---------- */
@media (max-width:960px){
  :root{--header-h:66px}
  .site-header{backdrop-filter:none;background:#fff}
  .topbar{display:none}
  .brand img{height:42px}
  .burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:46px;height:46px;border:1px solid var(--line);background:#fff;border-radius:14px;cursor:pointer;align-items:center}
  .burger span{display:block;width:22px;height:2.5px;border-radius:2px;background:var(--indigo);transition:transform .25s,opacity .2s}
  .burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
  .burger[aria-expanded="true"] span:nth-child(2){opacity:0}
  .burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

  /* drawer: head (logo + close) / scrolling list / sticky footer (CTA + phone) */
  .nav{position:fixed;top:0;bottom:0;inset-inline-end:0;width:min(88vw,380px);background:#fff;z-index:110;flex-direction:column;align-items:stretch;gap:0;padding:0;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 0 60px rgba(20,24,60,.28);border-start-start-radius:24px;border-end-start-radius:24px;transform:translateX(-102%);visibility:hidden;transition:transform .34s cubic-bezier(.22,.8,.3,1),visibility .34s}
  .nav.is-open{transform:none;visibility:visible}
  .nav__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.1rem;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:2}
  .nav__brand img{height:40px;width:auto}
  .nav__close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:14px;background:var(--tint);color:var(--indigo);cursor:pointer;transition:background .2s,transform .2s}
  .nav__close:hover{background:var(--line)}
  .nav__close:active{transform:scale(.92)}
  .nav__close svg{width:22px;height:22px}
  .nav__list{flex-direction:column;align-items:stretch;gap:.15rem;padding:.75rem .85rem;flex:1 0 auto}
  .nav__list>li{opacity:0;translate:0 10px;transition:opacity .35s ease,translate .35s ease}
  .nav.is-open .nav__list>li{opacity:1;translate:0 0}
  .nav.is-open .nav__list>li:nth-child(1){transition-delay:.08s}
  .nav.is-open .nav__list>li:nth-child(2){transition-delay:.13s}
  .nav.is-open .nav__list>li:nth-child(3){transition-delay:.18s}
  .nav.is-open .nav__list>li:nth-child(4){transition-delay:.23s}
  .nav__link{width:100%;justify-content:space-between;min-height:52px;padding:.7rem 1rem;font-size:1.05rem;font-weight:700;border-radius:14px;-webkit-tap-highlight-color:transparent}
  .nav__link:active{background:var(--tint)}
  .nav__link .chev{width:20px;height:20px;padding:3px;border-radius:50%;background:var(--tint);color:var(--indigo);transition:transform .25s,background .2s,color .2s}
  .has-sub.is-open>.nav__link .chev{background:var(--indigo);color:#fff}
  .nav__link::after{display:none}
  .has-sub.is-open>.nav__link{background:var(--tint);color:var(--indigo)}
  /* submenu: tree-style panel with a guide line on the start side */
  .sub{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-radius:0;background:none;margin:.15rem 1.35rem .5rem 0;padding:.15rem 0;padding-inline-start:.6rem;border-inline-start:2px solid var(--line);display:none;min-width:0}
  .sub::before{display:none}
  .has-sub.is-open>.sub{display:block;animation:navIn .25s ease both}
  .sub a,.sub__link{min-height:46px;display:flex;align-items:center;padding:.5rem .85rem;font-size:.98rem;border-radius:12px}
  .sub__link{font-weight:600}
  .sub a:active,.sub__link:active{background:var(--tint)}
  /* nested level becomes an indented accordion */
  .flyout{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:none;margin:.1rem 1rem .35rem 0;padding:.1rem 0;padding-inline-start:.6rem;border-inline-start:2px solid var(--line);display:none;min-width:0;border-radius:0}
  .flyout::before{display:none}
  .has-flyout.is-open>.flyout{display:block;animation:navIn .25s ease both}
  .flyout a{color:var(--muted);font-size:.93rem}
  .has-sub .has-flyout .chev{transform:none}
  .has-sub .has-flyout.is-open .chev{transform:rotate(180deg)}
  .nav__foot{display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.1rem calc(1rem + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:linear-gradient(180deg,var(--tint),#fff);position:sticky;bottom:0}
  .nav__foot .btn{width:100%;min-height:50px}
  .nav__tel{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-size:.92rem;font-weight:600;color:var(--text);min-height:40px}
  .nav__tel svg{width:17px;height:17px;fill:var(--indigo);flex:none}
  .burger{position:relative;z-index:120}
  .burger[aria-expanded="true"]{opacity:0;pointer-events:none}
  html.nav-open{overflow:hidden}
  .scrim{touch-action:none;backdrop-filter:blur(3px)}
  @keyframes navIn{from{opacity:0;translate:0 -6px}to{opacity:1;translate:0 0}}
}
@media (max-width:960px) and (prefers-reduced-motion:reduce){
  .nav,.nav__list>li{transition:none}
  .has-sub.is-open>.sub,.has-flyout.is-open>.flyout{animation:none}
}

/* ---------- Hero ---------- */
.hero{position:relative;padding:clamp(2rem,5vw,4.5rem) 0 clamp(2.5rem,6vw,5rem);background:
  radial-gradient(60rem 30rem at 100% -10%,rgba(136,130,238,.18),transparent 60%),
  radial-gradient(40rem 24rem at 0% 100%,rgba(230,247,169,.55),transparent 60%),#fff}
.hero__in{display:grid;gap:2.25rem;align-items:center}
.eyebrow{display:inline-block;color:var(--indigo);background:rgba(136,130,238,.14);padding:.2rem .9rem;border-radius:999px;font-size:.85rem;font-weight:700;margin-bottom:1rem}
.hero h1{font-size:clamp(1.65rem,4.2vw,2.9rem);letter-spacing:-.01em}
.lead{margin-top:1rem;font-size:clamp(1rem,1.6vw,1.15rem);max-width:34rem}
.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}

/* slider */
.slider{position:relative}
.slider__viewport{position:relative;aspect-ratio:16/10;border-radius:28px;overflow:hidden;background:var(--tint);box-shadow:var(--shadow-lg)}
.slide{position:absolute;inset:0;margin:0;opacity:0;transform:scale(1.04);transition:opacity .7s ease,transform 1.2s ease}
.slide.is-active{opacity:1;transform:none;z-index:1}
.slide img{width:100%;height:100%;object-fit:cover}
.slider::before{content:"";position:absolute;inset:auto auto -14px -14px;width:55%;height:55%;border-radius:28px;background:linear-gradient(135deg,var(--violet),var(--cyan));opacity:.25;z-index:0;filter:blur(2px)}
.slider__viewport{z-index:1}
.slider__btn{position:absolute;top:50%;translate:0 -50%;z-index:3;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:var(--indigo);display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow);transition:transform .2s,background .2s}
.slider__btn:hover{background:#fff;transform:scale(1.08)}
.slider__btn svg{width:22px;height:22px}
.slider__btn--prev{inset-inline-start:.75rem}
.slider__btn--next{inset-inline-end:.75rem}
.slider__dots{position:absolute;z-index:3;inset-inline:0;bottom:.9rem;display:flex;justify-content:center;gap:.45rem}
.slider__dots button{width:9px;height:9px;padding:0;border-radius:99px;border:0;background:rgba(255,255,255,.7);cursor:pointer;transition:width .25s,background .25s}
.slider__dots button[aria-selected="true"]{width:28px;background:#fff}

@media (min-width:961px){
  .hero__in{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:3.5rem}
  .slider__viewport{aspect-ratio:4/3}
}

/* ---------- Sections ---------- */
.section{padding:clamp(3rem,7vw,6rem) 0}
.section--tint{background:var(--tint)}
.section__head{max-width:42rem;margin:0 auto clamp(2rem,4vw,3.25rem);text-align:center}
.section__head h2{font-size:clamp(1.45rem,3vw,2.2rem)}
.section__head p:last-child{margin-top:.75rem}

/* ---------- Cards ---------- */
.cards{display:grid;gap:1.25rem;grid-template-columns:1fr}
.card{display:flex}
.card__link{display:flex;flex-direction:column;width:100%;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}
.card__link:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:transparent}
.card__media{aspect-ratio:16/10;overflow:hidden;background:var(--tint)}
.card__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.card__link:hover .card__media img{transform:scale(1.06)}
.card__body{position:relative;display:flex;flex-direction:column;flex:1;padding:1.5rem 1.4rem 1.4rem}
.card__num{position:absolute;inset-inline-end:1.25rem;top:-1.5rem;width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--indigo),var(--violet));color:#fff;font-weight:800;box-shadow:0 8px 18px rgba(74,84,166,.35)}
.card h3{font-size:1.15rem;margin-top:.5rem}
.card p{margin-top:.6rem;font-size:.95rem;flex:1}
.card__more{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.1rem;font-weight:700;color:var(--indigo);font-size:.92rem}
.card__more svg{width:18px;height:18px;transition:transform .2s}
.card__link:hover .card__more svg{transform:translate(-3px,-3px)}

@media (min-width:640px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.cards{grid-template-columns:repeat(3,1fr);gap:1.75rem}}

/* ---------- Form ---------- */
.request{display:grid;gap:2rem;align-items:start}
.request__intro h2{font-size:clamp(1.4rem,2.8vw,2rem)}
.request__intro>p:not(.eyebrow){margin-top:.9rem}
.request__facts{margin-top:1.5rem;display:grid;gap:.8rem}
.request__facts li{display:flex;align-items:center;gap:.7rem;font-weight:600;color:var(--ink)}
.request__facts svg{width:38px;height:38px;padding:9px;border-radius:12px;background:#fff;fill:var(--indigo);box-shadow:var(--shadow);flex:none}
.form{display:grid;gap:1rem;grid-template-columns:1fr;background:#fff;padding:clamp(1.25rem,3vw,2rem);border-radius:24px;box-shadow:var(--shadow-lg);border:1px solid var(--line)}
.field{display:flex;flex-direction:column;gap:.4rem;min-width:0}
.field label{font-weight:600;color:var(--ink);font-size:.92rem}
.field label b{color:#e5484d}
.field input,.field select,.field textarea{width:100%;background:var(--tint);border:1.5px solid transparent;border-radius:14px;padding:.8rem 1rem;transition:border-color .2s,background .2s,box-shadow .2s}
.field textarea{resize:vertical;min-height:110px}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;background:#fff;border-color:var(--violet);box-shadow:0 0 0 4px rgba(136,130,238,.18)}
.field input[dir="ltr"]{text-align:right}
.field [aria-invalid="true"]{border-color:#e5484d;background:#fff6f6}
.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a54a6' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 1rem center;background-size:18px;padding-inline-end:1rem;padding-inline-start:2.6rem}
.form__foot{flex-direction:row;flex-wrap:wrap;align-items:center;gap:1rem}
.form__status{font-weight:600;font-size:.95rem}
.form__status.is-ok{color:#18794e}
.form__status.is-err{color:#c23b3f}
.hp{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;opacity:0;pointer-events:none}
@media (min-width:640px){.form{grid-template-columns:1fr 1fr}.field--full{grid-column:1/-1}}
@media (min-width:961px){.request{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:3.5rem}}

/* ---------- Footer ---------- */
.footer{background:#1c2040;color:#c9cdea;margin-top:auto;overflow:hidden;flex-shrink:0}
.footer__grid{display:grid;gap:2rem;padding:clamp(2.5rem,5vw,4rem) 0;grid-template-columns:1fr}
.footer__brand img{height:58px;width:auto;background:#fff;border-radius:16px;padding:6px 14px}
.footer__brand p{margin-top:1rem;max-width:22rem;font-size:.95rem}
.footer__col h2{color:#fff;font-size:1.05rem;margin-bottom:1rem}
.footer__col li+li{margin-top:.5rem}
.footer__col a:hover{color:#fff;text-decoration:underline}
.footer__trust img{background:#fff;border-radius:14px;padding:6px;width:110px;height:auto}
.footer__bar{border-top:1px solid rgba(255,255,255,.12);padding:1rem 0;text-align:center;font-size:.88rem}
@media (min-width:640px){.footer__grid{grid-template-columns:1fr 1fr}}
@media (min-width:961px){.footer__grid{grid-template-columns:1.6fr 1fr 1fr auto;gap:3rem}}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ---------- Entrance animations ----------
   Vertical only (nothing may ever stick out sideways) and driven by the individual
   `translate` / `scale` properties, so they never fight an element's own hover
   `transform`/`transition`.  Above-the-fold items animate on load with pure CSS (no JS wait);
   items further down are hidden from the very first paint and revealed by main.js. */
@keyframes bk-reveal{from{opacity:0;translate:0 24px;scale:var(--s,1)}to{opacity:1;translate:0 0;scale:1}}

/* above the fold: play on load */
.hero__text .eyebrow,.hero__text h1,.hero__text .lead,.hero__actions,.slider,.page-hero .crumbs,.page-hero .eyebrow,.page-hero h1,.page-hero .lead{animation:bk-reveal .6s cubic-bezier(.22,.61,.36,1) var(--d,0ms) both}
.hero__text .eyebrow,.page-hero .crumbs{--d:0ms}
.hero__text h1,.page-hero .eyebrow{--d:90ms}
.hero__text .lead,.page-hero h1{--d:180ms}
.hero__actions,.page-hero .lead{--d:270ms}
.slider{--d:150ms;--s:.97}

/* below the fold: hidden until main.js adds .is-in. There is deliberately NO timed "failsafe" animation here
   (it used to un-hide items after 4s and then the real reveal restarted from opacity 0 = the flash/flicker).
   If main.js never loads, the inline script in <head> removes the .js class so everything is simply visible. */
.js :is(.section__head>*,.cards .card,.request__intro>*,.request__facts li,.form,.footer__grid>*,.channels .channel,.split__text>*,.split__media,.features .feature,.two-col>div,.cta){opacity:0;translate:0 24px}
.js :is(.cards .card,.features .feature,.split__media,.cta){scale:.96;--s:.96}
.js :is(.section__head>*,.cards .card,.request__intro>*,.request__facts li,.form,.footer__grid>*,.channels .channel,.split__text>*,.split__media,.features .feature,.two-col>div,.cta).is-in{animation:bk-reveal .6s cubic-bezier(.22,.61,.36,1) var(--d,0ms) both}

@media (prefers-reduced-motion:reduce){
  .hero__text .eyebrow,.hero__text h1,.hero__text .lead,.hero__actions,.slider,.page-hero .crumbs,.page-hero .eyebrow,.page-hero h1,.page-hero .lead,.js :is(.section__head>*,.cards .card,.request__intro>*,.request__facts li,.form,.footer__grid>*,.channels .channel,.split__text>*,.split__media,.features .feature,.two-col>div,.cta){opacity:1!important;translate:none!important;scale:none!important;animation:none!important}
}

/* ---------- Custom scrollbar ---------- */
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:#eceefa}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--violet),var(--indigo));border-radius:99px;border:3px solid #eceefa}
::-webkit-scrollbar-thumb:hover{background:var(--indigo-d)}
@supports (-moz-appearance:none){html{scrollbar-width:thin;scrollbar-color:var(--indigo) #eceefa}}
.nav{scrollbar-width:thin}

/* ---------- Lenis (smooth scroll) ---------- */
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}
.lenis.lenis-smooth iframe{pointer-events:none}

/* ---------- Inner pages ---------- */
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.page-hero{padding:clamp(2rem,5vw,4rem) 0 clamp(1.5rem,3vw,2.5rem);background:
  radial-gradient(50rem 24rem at 100% -20%,rgba(136,130,238,.18),transparent 60%),
  radial-gradient(36rem 20rem at 0% 120%,rgba(230,247,169,.5),transparent 60%),#fff}
.page-hero h1{font-size:clamp(1.65rem,4vw,2.7rem)}
.page-hero .lead{max-width:48rem}
.crumbs ol{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;font-size:.88rem;color:var(--muted)}
.crumbs li+li::before{content:"‹";margin-inline-end:.5rem;color:var(--line)}
.crumbs a:hover{color:var(--indigo)}
.crumbs [aria-current]{color:var(--ink);font-weight:600}
.section--flush{padding-top:clamp(1.5rem,3vw,2.5rem)}

/* contact channels */
.channels{display:grid;gap:1.1rem;grid-template-columns:1fr}
.channel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease,background-color .35s ease}
.channel:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:transparent}
.channel__icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,var(--indigo),var(--violet));box-shadow:0 8px 18px rgba(74,84,166,.3);margin-bottom:1rem}
.channel__icon svg{width:24px;height:24px;fill:#fff}
.channel h3{font-size:1rem;color:var(--muted);font-weight:600}
.channel__value{display:inline-block;margin-top:.2rem;font-size:1.2rem;font-weight:800;color:var(--ink);word-break:break-word}
a.channel__value:hover{color:var(--indigo)}
.channel__note{margin-top:.25rem;font-size:.9rem;color:var(--muted)}
@media (min-width:600px){.channels{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.channels{grid-template-columns:repeat(3,1fr)}}

/* about */
.split{display:grid;gap:2.5rem;align-items:center}
.split__text h2{font-size:clamp(1.4rem,2.8vw,2.1rem)}
.split__text p:not(.eyebrow){margin-top:1rem}
.split__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.split__media{position:relative;padding-bottom:3rem}
.split__img{border-radius:24px;box-shadow:var(--shadow-lg);object-fit:cover}
.split__img--a{width:88%;aspect-ratio:4/3}
.split__img--b{position:absolute;inset-inline-end:0;bottom:0;width:52%;aspect-ratio:16/10;border:6px solid #fff}
@media (min-width:961px){.split{grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:4rem}}

.features{display:grid;gap:1.25rem;grid-template-columns:1fr}
.feature{position:relative;background:var(--tint);border-radius:var(--radius);padding:2.4rem 1.5rem 1.5rem;border:1px solid transparent;transition:background-color .4s ease,box-shadow .4s ease,transform .4s ease,border-color .4s ease}
.feature:hover{background:#fff;box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.feature__num{position:absolute;top:-1.1rem;inset-inline-start:1.25rem;display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--indigo),var(--violet));color:#fff;font-weight:800;box-shadow:0 8px 18px rgba(74,84,166,.3)}
.feature h3{font-size:1.08rem}
.feature p{margin-top:.5rem;font-size:.95rem}
@media (min-width:640px){.features{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.features{grid-template-columns:repeat(3,1fr);gap:1.75rem}}

.two-col{display:grid;gap:2.5rem}
.two-col h2{font-size:clamp(1.3rem,2.4vw,1.8rem)}
.chips{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem}
.chips li{background:#fff;border:1px solid var(--line);border-radius:999px;padding:.4rem 1.1rem;font-weight:600;color:var(--ink);font-size:.95rem;transition:border-color .2s,color .2s,transform .2s}
.chips li:hover{border-color:var(--violet);color:var(--indigo);transform:translateY(-2px)}
@media (min-width:900px){.two-col{grid-template-columns:1fr 1fr;gap:4rem}}

.cta{display:flex;flex-direction:column;gap:1.5rem;align-items:flex-start;justify-content:space-between;background:linear-gradient(120deg,var(--indigo),var(--violet));color:#fff;border-radius:28px;padding:clamp(1.75rem,4vw,3rem);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}
.cta::after{content:"";position:absolute;inset-inline-start:-60px;bottom:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(42,200,211,.55),transparent 65%)}
.cta h2{color:#fff;font-size:clamp(1.3rem,2.8vw,2rem)}
.cta p{margin-top:.5rem;color:rgba(255,255,255,.9);max-width:34rem}
.cta>*{position:relative;z-index:1}
.cta__actions{display:flex;flex-wrap:wrap;gap:.75rem}
.btn--light{background:#fff;color:var(--indigo)}
.btn--light:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,0,0,.18)}
.btn--outline-light{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}
.btn--outline-light:hover{box-shadow:inset 0 0 0 2px #fff;transform:translateY(-2px)}
@media (min-width:800px){.cta{flex-direction:row;align-items:center}}

@media (max-width:599px){
  .channel{display:grid;grid-template-columns:auto 1fr;column-gap:1rem;align-items:center;padding:1.1rem 1.2rem}
  .channel__icon{grid-row:1/4;margin:0;width:46px;height:46px}
  .channel__value{font-size:1.1rem}
}

/* ---------- WordPress: generic content + admin bar ---------- */
.entry__content{max-width:60rem}
.entry__content>*+*{margin-top:1rem}
.entry__content h2,.entry__content h3,.entry__content h4{margin-top:2rem}
.entry__content a{color:var(--indigo);text-decoration:underline;text-underline-offset:3px}
.entry__content img{border-radius:16px;height:auto}
.entry__content ul,.entry__content ol{padding-inline-start:1.4rem;list-style:revert}
.entry__content blockquote{margin-inline:0;padding:1rem 1.25rem;border-inline-start:4px solid var(--violet);background:var(--tint);border-radius:12px}
.entry__content table{width:100%;border-collapse:collapse}
.entry__content th,.entry__content td{border:1px solid var(--line);padding:.6rem .8rem;text-align:start}
.navigation.pagination{margin-top:2.5rem}
.nav-links{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}
.nav-links .page-numbers{padding:.45rem 1rem;border-radius:12px;background:var(--tint);color:var(--ink);font-weight:600}
.nav-links .page-numbers.current,.nav-links a.page-numbers:hover{background:var(--indigo);color:#fff}
.admin-bar .site-header{top:32px}
@media (max-width:960px){.admin-bar .nav{top:32px}}
@media (max-width:782px){.admin-bar .site-header{top:46px}.admin-bar .nav{top:46px}}
@media (max-width:600px){.admin-bar .site-header{top:0}.admin-bar .nav{top:0}}
