/* ============================================================
   AQI Editorial v2 — light, flat, editorial (Cartier-inspired).
   Loaded LAST in <head>, after each page's inline <style>, so it wins the
   cascade. Pairs with the light base in styles.css. Rollback: remove the link.
   Spec: REFONTE-PHASE1.md sections 11 (revised) + 12.
   ============================================================ */

:root{
  --fd:'Archivo','Helvetica Neue',Arial,sans-serif;
  --fd-ar:'Almarai','Segoe UI',Tahoma,sans-serif;
  --lux-ease:cubic-bezier(.22,1,.36,1);
}

/* ---------- kill ALL glassmorphism site-wide ---------- */
*{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

/* ---------- typography ---------- */
body{font-family:var(--fs);letter-spacing:.005em}
h1,h2,h3,h4,.hero-title,.section-title,.page-hero-title,.lg-section-title,.tr-title,.fn-text h3{
  font-family:var(--fp);font-weight:600;color:var(--ink);letter-spacing:-.015em;line-height:1.08}
h1 em,h2 em,h3 em,.hero-title em,.section-title em,.page-hero-title em,.lg-section-title em,.tr-title em{
  font-style:normal;font-weight:600;color:var(--accent-soft)}
.section-desc,.lg-section-desc,.hero-sub,.page-hero-sub,p{color:var(--ink-2)}
.section-title,.lg-section-title{font-size:clamp(1.9rem,3.4vw,3rem)}

/* eyebrows: thin spaced capitals */
.section-eyebrow,.hero-eyebrow,.page-hero-eyebrow,.tr-eyebrow,.lg-eyebrow{
  font-family:var(--fs)!important;font-size:.64rem!important;font-weight:600!important;
  letter-spacing:.24em!important;text-transform:uppercase!important;color:var(--accent-soft)!important}

/* ---------- sections: light, no dark backgrounds, generous air ---------- */
.section{padding:130px 0}
.track-record,.services-section,.why-us,.articles-section,.home-faq,.vision-2030,
.key-figures,.how-section,.lg-section,.lg-alt,.lg-cta-band,.lg-highlight{
  background:var(--paper)!important;border-color:var(--line-soft)!important}
.track-record::before,.track-record::after,.services-section::before,.services-section::after,
.why-us::before,.why-us::after,.articles-section::before,.articles-section::after,
.home-faq::before,.vision-2030::before,.vision-2030::after,.key-figures::before,
.how-section::before,.lg-cta-band::before,.lg-cta-band::after,.lg-highlight::before,
.lg-section::before,.lg-section::after,.lg-alt::before,.lg-alt::after,
.services-hub::before,.services-hub::after{
  background:none!important;opacity:0!important;display:none!important}
.lg-alt,.paper-alt{background:var(--paper-2)!important}

/* broad safety net: kill every dark section overlay pseudo (france-excellence keeps
   its scrim via higher specificity) and flatten every remaining *-card box */
section::before,section::after{background:none!important;opacity:0!important}
[class*="-card"]{background:none!important;border-radius:0!important;box-shadow:none!important}

/* section-title / desc colors on dark inline defaults */
.section-title,.tr-title,.kf-num,.sc-title,.hsc-title,.faq-q,.why-item-title,
.article-title,.lg-card-title,.pc-title,.how-step-title{color:var(--ink)!important}
.section-desc,.tr-desc,.tr-sub,.kf-label,.sc-text,.hsc-desc,.faq-a,.why-item-text,
.article-excerpt,.lg-card-desc,.pc-desc,.how-step-desc{color:var(--ink-2)!important}
.article-date,.article-tag{color:var(--accent)!important}

/* ---------- flatten every card: no glass, no radius, no shadow ---------- */
.hp-item,.why-item,.faq-item,.article-card,.lg-card,.lg-highlight,.pricing-card,
.home-service-card,.service-card,.next-steps-card,.related-section .article-card,
.lg-tier,.cal-card,.rv-card,.rv-note,.stat-card{
  background:none!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;transition:transform .4s var(--lux-ease),border-color .4s var(--lux-ease)}
.hp-item:hover,.why-item:hover,.faq-item:hover,.article-card:hover,.lg-card:hover,
.home-service-card:hover,.service-card:hover{transform:none!important;box-shadow:none!important}

/* pillar / service cells: separated by hairlines, not boxes */
.home-service-card,.lg-card,.service-card{padding:34px 30px 34px 0!important;border-top:1px solid var(--line)!important}
.hsc-title,.sc-title,.lg-card-title{font-family:var(--fd);font-weight:600;font-size:1.15rem;letter-spacing:-.01em;margin-bottom:12px}
.hsc-desc,.sc-text,.lg-card-desc{font-weight:400;line-height:1.7}
.hsc-cta,.lg-card-cta{font-family:var(--fs);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)!important}
.hsc-num,.lg-num{color:var(--ink-3)!important;font-family:var(--fs);font-weight:600}
.hsc-icon,.sc-icon,.hp-icon{color:var(--accent)!important;background:none!important;border:0!important}

/* faq: flat rows divided by rules */
.faq-item{padding:28px 0!important;border-top:1px solid var(--line)!important}
.faq-q{font-family:var(--fd);font-weight:600;color:var(--ink)!important}
.faq-q::before{display:none!important}
.faq-a{color:var(--ink-2)!important}

/* why-item: flat numbered rows */
.why-item{padding:26px 0!important;border-top:1px solid var(--line)!important}
.why-item-title{font-family:var(--fd);font-weight:600}
.why-photo-wrap{border-radius:0!important;box-shadow:none!important}

/* ---------- track record counters: tall, thin, ink ---------- */
.tr-num,.kf-num{font-family:var(--fd)!important;font-weight:300!important;color:var(--ink)!important;letter-spacing:-.03em}
.tr-num{font-size:clamp(3rem,5vw,4.4rem)!important}
.tr-num .pct{font-weight:300!important;color:var(--accent)!important}
.tr-label,.kf-label{font-family:var(--fs)!important;font-weight:600!important;letter-spacing:.2em!important;text-transform:uppercase!important;color:var(--ink)!important;font-size:.64rem!important}
.tr-item+.tr-item::before,.kf-item+.kf-item::before{background:var(--line)!important}
.track-record::before,.track-record::after{display:none!important}

/* ---------- how-it-works steps: flat ---------- */
.how-step-num{background:none!important;border:1px solid var(--accent)!important;color:var(--accent)!important;border-radius:0!important;box-shadow:none!important;font-family:var(--fd);font-weight:600}
.how-steps::before{background:var(--line)!important;opacity:1!important}

/* ---------- france excellence: keep as a full-bleed image band, light text over scrim ---------- */
.france-excellence::before{display:block!important;background:linear-gradient(180deg,rgba(20,18,15,.42),rgba(20,18,15,.52))!important;opacity:1!important}
.france-excellence .section-title,.france-excellence .section-desc,.france-excellence .section-eyebrow,
.france-excellence .fx-center *{color:var(--white)!important}
.france-excellence .section-eyebrow{color:rgba(255,255,255,.75)!important}
.fx-logo-pill{background:none!important;border:0!important;border-radius:0!important;color:rgba(255,255,255,.7)!important;font-family:var(--fd);font-weight:500;font-size:.9rem;padding:8px 22px!important;letter-spacing:.04em}

/* ---------- ARTICLES / JOURNAL: full-image editorial, no box ---------- */
.article-card{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}
.article-card:hover{transform:none!important;box-shadow:none!important;border:0!important}
.article-thumb{height:auto!important;aspect-ratio:4/3;border-radius:0!important;overflow:hidden}
.article-thumb-img{transition:transform .8s var(--lux-ease)}
.article-card:hover .article-thumb-img{transform:scale(1.04)}
.article-thumb-overlay{display:none!important}
.article-body{padding:20px 0 0!important}
.article-tag{background:none!important;border:0!important;border-radius:0!important;padding:0!important;color:var(--accent)!important;font-family:var(--fs);font-weight:700;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:12px}
.article-title{font-family:var(--fd)!important;font-weight:600!important;font-size:1.2rem!important;line-height:1.28!important;color:var(--ink)!important;transition:color .3s ease}
.article-card:hover .article-title{color:var(--accent)!important}
.article-excerpt{color:var(--ink-2)!important;font-size:.92rem}
.article-date{color:var(--ink-3)!important}
.articles-grid{gap:44px!important}
.related-section .article-card .article-thumb{aspect-ratio:4/3}

/* in-article prose: ink body, bold and headings readable (template set them white) */
.article-content,.article-content p,.article-content li,.article-content td,
.article-content ul,.article-content ol,.post-content,.post-content p{color:var(--ink)!important}
.article-content strong,.article-content b,article strong{color:var(--ink)!important;font-weight:700}
.article-content h2,.article-content h3,.article-content h4{color:var(--ink)!important}
.article-content a,.post-content a{color:var(--accent)!important;text-decoration:underline;text-underline-offset:3px}
.article-content blockquote{border-inline-start:2px solid var(--accent)!important;background:var(--paper-2)!important;color:var(--ink-2)!important}
.author-card,.author-box{background:var(--paper-2)!important;border:1px solid var(--line)!important;border-radius:0!important;box-shadow:none!important}
.author-name{color:var(--ink)!important}.author-role,.author-credentials{color:var(--ink-2)!important}

/* ============================================================
   LUX v3 — dark luxury refinements (deep navy field, champagne warmth)
   ============================================================ */
body{letter-spacing:.006em}
.section{padding:clamp(94px,11vw,170px) 0}
h1,h2,h3,.hero-title,.section-title,.page-hero-title,.lg-section-title,.tr-title{
  font-weight:500!important;letter-spacing:-.02em}
.hero-sub,.page-hero-sub{color:var(--ink-2)!important;font-weight:300}
/* eyebrows: green detail, thin widely-spaced capitals */
.section-eyebrow,.hero-eyebrow,.page-hero-eyebrow,.tr-eyebrow,.lg-eyebrow{
  color:var(--accent-soft)!important;letter-spacing:.3em!important;font-size:.6rem!important;font-weight:600!important}
.section-eyebrow::before,.hero-eyebrow::before,.page-hero-eyebrow::before{background:var(--accent-soft)!important}
/* champagne/gold numerals: the metallic luxury detail */
.hsc-num,.value-num,.he-num,.lg-num,.lg-grid-item-num,.step-num,.cred-num,.thp-num{
  color:var(--gold)!important;font-weight:400!important}
.how-step-num{color:var(--gold)!important;border-color:var(--gold)!important}
/* counters: thin ivory numerals, gold percent */
.tr-num,.kf-num{color:var(--ink)!important;font-weight:200!important;letter-spacing:-.03em}
.tr-num .pct{color:var(--gold)!important}
.tr-label,.kf-label{color:var(--gold)!important;font-weight:600!important;font-size:.6rem!important;letter-spacing:.24em!important}
.tr-item+.tr-item::before,.kf-item+.kf-item::before{background:var(--line)!important}
/* flat cards keep a champagne hairline for warmth */
.home-service-card,.lg-card,.service-card,.value-card,.lg-grid-item,.faq-item,.why-item{
  border-color:var(--line)!important}
.hsc-title,.sc-title,.lg-card-title,.value-title,.why-item-title,.faq-q{color:var(--ink)!important}
.hsc-cta,.lg-card-cta{color:var(--accent-soft)!important}
/* refined buttons on the dark field */
.btn{transition:background .5s var(--lux-ease),color .5s var(--lux-ease),border-color .5s var(--lux-ease)}
.btn-primary{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important;font-weight:600}
.btn-primary:hover{background:var(--accent-dark)!important;border-color:var(--accent-dark)!important}
.btn-ghost{background:transparent!important;border:1px solid var(--ink)!important;color:var(--ink)!important}
.btn-ghost:hover{background:var(--ink)!important;color:var(--paper)!important}
.btn-outline,.btn-navy,.btn-sand-outline{background:transparent!important;border:1px solid var(--line)!important;color:var(--gold)!important}
.btn-outline:hover,.btn-navy:hover,.btn-sand-outline:hover{border-color:var(--gold)!important;color:var(--gold)!important}
.header-cta{background:var(--accent)!important;color:#fff!important;font-weight:600}
.header-cta:hover{background:var(--accent-dark)!important}
/* footer + brand warmth */
.footer-brand-name{color:var(--gold)!important}
.footer-social a:hover{border-color:var(--gold)!important;color:var(--gold)!important}
.article-tag{color:var(--gold)!important}
.article-card:hover .article-title{color:var(--gold)!important}
/* hairline reveal on section dividers */
.hero-band{border-top-color:var(--line)!important}
::selection{background:var(--accent);color:#fff}

/* ---------- forms: squared, hairline, quiet ---------- */
input[type="text"],input[type="email"],input[type="tel"],select,textarea,.fn-input{
  border-radius:0!important;border:1px solid var(--line)!important;background:var(--paper)!important;color:var(--ink)!important;font-family:var(--fs)}
input:focus,select:focus,textarea:focus,.fn-input:focus{outline:none!important;border-color:var(--ink)!important}
label{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}

/* ---------- pricing / tiers (services): flat ---------- */
.pricing-card{border:1px solid var(--line)!important;padding:34px 30px!important}
.pricing-card--popular{border-color:var(--accent)!important;background:var(--paper-2)!important}
.pc-title,.pc-price{color:var(--ink)!important;font-family:var(--fd)}
.pc-badge{background:var(--accent)!important;border-radius:0!important;color:var(--white)!important}
.lg-tier-cta{border-radius:0!important;letter-spacing:.16em;text-transform:uppercase;font-size:.64rem}

/* ---------- vision 2030 band (about): light ---------- */
.v2030-stat-num{color:var(--accent)!important;font-family:var(--fd)}
.v2030-logo{filter:none!important}
.v30-dot{border-radius:50%!important}

/* ---------- disclaimers / notes (wealth, business): flat ---------- */
.disclaimer,.disclaimer-box,.compliance-note,.rv-disclaimer{
  background:var(--paper-2)!important;border:1px solid var(--line)!important;border-left:2px solid var(--accent)!important;border-radius:0!important;box-shadow:none!important;color:var(--ink-2)!important}
[dir="rtl"] .disclaimer,[dir="rtl"] .disclaimer-box,[dir="rtl"] .compliance-note,[dir="rtl"] .rv-disclaimer{border-left:1px solid var(--line)!important;border-right:2px solid var(--accent)!important}

/* ---------- consent banner: light, squared ---------- */
#aqi-consent{background:var(--paper)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:0!important;box-shadow:0 24px 70px rgba(20,18,15,.16)!important}
#aqi-consent h3{font-family:var(--fd)!important;font-weight:600!important;color:var(--ink)!important}
#aqi-consent p{color:var(--ink-2)!important}
#aqi-consent a{color:var(--ink)!important}
#aqi-consent button{border-radius:0!important;letter-spacing:.14em;text-transform:uppercase;font-size:11px!important;padding:11px 18px!important;font-weight:600}
#aqi-consent .aqi-c-accept{background:var(--accent)!important;border-color:var(--accent)!important;color:var(--white)!important}
#aqi-consent .aqi-c-accept:hover{background:var(--accent-dark)!important}
#aqi-consent .aqi-c-deny,#aqi-consent .aqi-c-prefs,#aqi-consent .aqi-c-back{background:transparent!important;color:var(--ink-2)!important;border-color:var(--line)!important}

/* ---------- misc ---------- */
table{border-collapse:collapse}
table td,table th{border-color:var(--line)!important;color:var(--ink)}
hr{border:0;border-top:1px solid var(--line)}
a:focus-visible,button:focus-visible{outline:1px solid var(--accent);outline-offset:3px}
.breadcrumb,.breadcrumb a{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.breadcrumb a:hover{color:var(--ink)}

/* ---------- Arabic: Almarai, no letterspacing on Arabic text ---------- */
html[lang="ar"] body,html[lang="ar"] h1,html[lang="ar"] h2,html[lang="ar"] h3,html[lang="ar"] h4,
html[lang="ar"] .hero-title,html[lang="ar"] .section-title,html[lang="ar"] .page-hero-title,
html[lang="ar"] .lg-section-title,html[lang="ar"] .hsc-title,html[lang="ar"] .article-title,
html[lang="ar"] .footer-brand-name,html[lang="ar"] .fn-text h3,html[lang="ar"] .mobile-nav a,
html[lang="ar"] .faq-q,html[lang="ar"] .why-item-title{font-family:var(--fd-ar)!important;letter-spacing:0!important}
html[lang="ar"] h1 em,html[lang="ar"] h2 em,html[lang="ar"] h3 em,
html[lang="ar"] .hero-title em,html[lang="ar"] .section-title em,html[lang="ar"] .page-hero-title em{
  font-family:var(--fd-ar)!important;color:var(--accent)!important}
html[lang="ar"] .section-eyebrow,html[lang="ar"] .hero-eyebrow,html[lang="ar"] .page-hero-eyebrow,
html[lang="ar"] .btn,html[lang="ar"] .header-cta,html[lang="ar"] .header-nav a,html[lang="ar"] .tr-label,
html[lang="ar"] .footer-col-title,html[lang="ar"] .hsc-cta,html[lang="ar"] .article-tag,
html[lang="ar"] label,html[lang="ar"] .fn-submit,html[lang="ar"] .breadcrumb,html[lang="ar"] .lang-btn,
html[lang="ar"] .mobile-nav a{
  letter-spacing:0!important;text-transform:none!important}
html[lang="ar"] .tr-num,html[lang="ar"] .kf-num{font-family:var(--fd)!important}
html[lang="ar"] .hero-sub,html[lang="ar"] .page-hero-sub,html[lang="ar"] .section-desc{letter-spacing:0!important;line-height:2}

/* ---------- comprehensive ink sweep: every bespoke content class that inline
     dark CSS painted white must read on the light background ---------- */
.value-title,.lg-section-title,.lg-highlight-title,.lg-grid-item-title,.lg-cta-band h2,
.founder-name,.form-title,.office-city,.map-card-country,.map-card-city,.rv-box h3,
.cred-num,.ci-value,.bridge-quote,.cta-ribbon-text h3,.cta-band .section-title,
.vision-big,.pc-title,.pc-price,.fr-table-card td,.lg-grid-note,.wt-title,.next-steps-title{
  color:var(--ink)!important}
.value-text,.lg-section-desc,.lg-section-note,.lg-prose p,.lg-highlight-text,
.lg-grid-item-desc,.lg-filter p,.lg-cta-band p,.founder-bio,.form-textarea,.form-check,
.rv-box p,.rv-note,.wt-note,.wt-disclaimer p,.student-note,.student-note p,.next-steps li,
.bridge-text,.cta-band .section-desc,.cta-band p,.pc-item,.map-card-city,.office-hours{
  color:var(--ink-2)!important}
.value-num,.lg-grid-item-num,.cred-label,.founder-role{color:var(--accent)!important}

/* flatten remaining bespoke card containers */
.value-card,.lg-highlight,.lg-grid-item,.map-card,.rv-box,.next-steps-card,.founder-card,
.cred-card,.ci-card,.office-card,.story-card,.wt-disclaimer,.lg-filter,.fr-table-card,.pc-card{
  background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.value-card{border-top:1px solid var(--line)!important;padding:32px 0!important}
.lg-grid-item{border-top:1px solid var(--line)!important;padding:30px 0!important}

/* CTA bands: light editorial, not a dark slab */
.cta-band,.cta-ribbon,.final-cta,.lg-cta-band{background:var(--paper-2)!important;color:var(--ink)!important}
.cta-band .section-title,.cta-ribbon-text h3,.final-cta .section-title,.lg-cta-band h2,
.cta-band .section-eyebrow,.final-cta .section-eyebrow{color:var(--ink)!important}
.cta-band *,.cta-ribbon *,.final-cta *{border-color:var(--line)}

/* vision 2030 band: light */
.vision-2030{background:var(--paper-2)!important}
.vision-overlay{background:none!important}
.vision-big,.vision-2030 .section-title,.vision-2030 .section-desc{color:var(--ink)!important}

/* forms: ensure ink text, keep green submit buttons white */
.form-title,.form-label,.form-check{color:var(--ink)}
.form-submit,.form-book-btn,.pc-cta,.pc-badge{color:var(--white)!important}
.story-photo-badge{background:var(--ink)!important;color:var(--white)!important;border-radius:0!important}

/* stab tabs (services legacy) */
.stab.active{background:var(--accent)!important;color:var(--white)!important;border-radius:0!important;box-shadow:none!important}
.stab{color:var(--ink-2)!important}
.services-tabs{background:none!important;border:1px solid var(--line)!important;border-radius:0!important}

/* ---------- articles, founder profiles, legal, tools/quiz: remaining bespoke
     content classes that inline dark CSS painted white ---------- */
.advisory-title,.author-name,.csn-title,.how-title,.pkg-name,.preview-title,
.preview-benefit-title,.price-name,.price-amount,.profile-name,.profile-section-title,
.question-text,.preview-q-text,.riasec-name,.stf-question,.stf-result-tag,.stf-result,
.test-hero-title,.thp-num,.tool-title,.track-name,.type-name,.comparison-header,
.comparison-cell.feature,.legal-hero h1,.toc-box strong,.captcha-question{color:var(--ink)!important}
.advisory-bullet-text,.advisory-fallback,.captcha-label,.captcha-input,.expertise-list,
.expertise-list li,.legal-content,.legal-content p,.legal-content li,.pkg-item,.price-item,
.profile-bio,.riasec-section p,.stf-facts,.stf-ref,.stf-links,.stf-opt,.test-hero-sub,
.tool-list,.tool-list li,.comparison-cell,.author-role,.thp-text,.preview-q-text{color:var(--ink-2)!important}
.type-name,.track-name,.riasec-name,.stf-result-tag{color:var(--accent)!important}

/* flatten/lighten remaining bands and boxes */
.test-hero,.legal-hero,.stf-hero,.csn,.related-section,.tool-embed,.photo-band,
.profile-cta-box,.advisory-fallback,.comparison-table,.riasec-section,.preview-box,
.toc-box,.pkg-box,.price-box,.stf-result,.stf-share{
  background:var(--paper)!important;border-color:var(--line)!important}
.test-hero,.legal-hero,.stf-hero{background:var(--paper-2)!important;color:var(--ink)!important}
.toc-box,.profile-cta-box,.advisory-fallback,.stf-result,.stf-share,.pkg-box,.price-box{
  background:var(--paper-2)!important;border:1px solid var(--line)!important;border-radius:0!important;box-shadow:none!important}
.author-avatar{background:var(--paper-2)!important;color:var(--ink)!important}
.stf-opt.selected,.option.selected,.step.active,.step.completed{background:var(--accent)!important;color:var(--white)!important;border-color:var(--accent)!important}
.related-section .section-title,.csn-title,.toc-box strong,.how-title{color:var(--ink)!important}

/* ============================================================
   LUX v4 — sobriety & elegance: serif display (Cartier register),
   single-tone titles, understated eyebrows
   ============================================================ */
:root{--fd-display:'Jost','Helvetica Neue',Arial,sans-serif}
/* sober, refined sans on the large display titles (Cartier register); body/labels stay Archivo */
.hero-title,.section-title,.page-hero-title,.tr-title,.lg-section-title,.fn-text h3{
  font-family:var(--fd-display)!important;font-weight:400!important;letter-spacing:.005em!important;line-height:1.16!important}
.hero-title{line-height:1.08!important;font-weight:400!important}
/* single tone: no white+green split, the accent word simply matches the title */
.hero-title em,.section-title em,.page-hero-title em,.tr-title em,.lg-section-title em,h1 em,h2 em,h3 em{
  color:inherit!important;font-style:normal!important;font-weight:500!important;font-family:var(--fd-display)!important}
/* understated eyebrows: muted, humane, not a shouty green tech-label */
.section-eyebrow,.hero-eyebrow,.page-hero-eyebrow,.tr-eyebrow,.lg-eyebrow{
  color:var(--ink-2)!important;letter-spacing:.16em!important;font-size:.6rem!important;font-weight:500!important;
  text-transform:uppercase!important;opacity:.85}
.section-eyebrow::before,.hero-eyebrow::before,.page-hero-eyebrow::before{background:var(--line-strong,var(--line))!important;width:24px!important}
/* Arabic display keeps the Amiri serif; do not force Bodoni on RTL */
html[lang="ar"] .hero-title,html[lang="ar"] .section-title,html[lang="ar"] .page-hero-title,
html[lang="ar"] .tr-title,html[lang="ar"] .lg-section-title{font-family:var(--fd-ar)!important}
html[lang="ar"] .hero-title em,html[lang="ar"] .section-title em,html[lang="ar"] .page-hero-title em{
  font-family:var(--fd-ar)!important;font-style:normal!important;color:inherit!important}

/* ---------- responsive ---------- */
@media(max-width:640px){
  .section{padding:84px 0}
  .btn{padding:14px 26px;letter-spacing:.14em}
  .tr-num{font-size:2.9rem!important}
  .home-service-card,.lg-card,.service-card{padding:26px 0!important}
  .articles-grid{gap:32px!important}
}

/* ---------- Journal index: flatten theme filters + pager to the 2D system ---------- */
.filter-strip{border-top-color:var(--line)!important}
.filter-tag,.pager button{border-radius:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:none!important;border:1px solid var(--line)!important;color:var(--ink-2)!important;box-shadow:none!important;transform:none!important;font-family:var(--fs)!important;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  /* the 38px/18px-padding/12.48px sizing was tuned for the original glass PILL
     (now flattened to a hairline rectangle); at that size a plain bordered
     rectangle reads as oversized next to the site's thin label language.
     Trim to match. */
  height:32px!important;padding:0 14px!important;font-size:.66rem!important}
.filter-tag:hover,.pager button:hover:not(:disabled){background:none!important;border-color:var(--ink-3)!important;color:var(--ink)!important;transform:none!important;box-shadow:none!important}
.filter-tag.active,.pager button.active{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important;box-shadow:none!important;transform:none!important}
.filter-tag.active:hover,.pager button.active:hover{background:var(--accent-dark)!important;border-color:var(--accent-dark)!important;transform:none!important;box-shadow:none!important}
.pager button{letter-spacing:.04em}
.pager button:disabled{opacity:.3!important;transform:none!important}
.pager button:disabled:hover{background:none!important;border-color:var(--line)!important;color:var(--ink-2)!important}
.pager-ellipsis{color:var(--ink-3)!important}
html[lang="ar"] .filter-tag,html[lang="ar"] .pager button{letter-spacing:0!important;text-transform:none!important}

/* ---------- FAQ + legal pages: flatten remnants (rounded badges/cards/gradients) ---------- */
.faq-category-num{background:none!important;border:1px solid var(--accent)!important;color:var(--accent)!important;border-radius:0!important;font-weight:600!important}
.faq-category-title{color:var(--ink)!important}
.faq-item{background:none!important;border-radius:0!important;overflow:visible!important}
/* legacy faq.html uses native <details class="faq-item"> for its accordion; the
   overflow:visible above defeats the browser's closed-collapse, so a closed panel
   still reserves its answer height. Re-hide the answer when closed. The vitrine FAQ
   uses <div class="faq-item"> (always-open), so details.* leaves it untouched. */
details.faq-item:not([open]) .faq-answer{display:none!important}
.faq-cta{background:none!important;border:1px solid var(--line)!important;border-radius:0!important}
.legal-card{background:none!important;border:1px solid var(--line)!important;border-radius:0!important;box-shadow:none!important}

/* ---------- Contact page: flatten remaining glass (form container, fields, buttons, social, cta) ---------- */
.contact-form{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}
.form-input,.form-select,.form-textarea{background:var(--paper-2)!important;border:1px solid var(--line)!important;border-radius:0!important;box-shadow:none!important}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent-soft)!important;box-shadow:none!important}
.form-submit,.form-book-btn{border-radius:0!important;box-shadow:none!important}
.form-submit:hover,.form-book-btn:hover{transform:none!important;box-shadow:none!important}
.social-link{background:var(--paper-2)!important;border:1px solid var(--line)!important;border-radius:0!important;box-shadow:none!important}
.social-link:hover{background:var(--accent)!important;color:#fff!important;transform:none!important;box-shadow:none!important}
.office-card,.next-card{border:1px solid var(--line)!important}
.next-note{border-top:0!important}
.map-divider{display:none!important}
.cta-band,.cta-band::before,.cta-band::after{background:var(--paper)!important}

/* ---------- Nicolas: the thin light divider lines read cheap; separate by space, not hairlines ---------- */
.site-header::before{border-bottom:none!important}
.track-record,.hero-band,.site-footer,.page-hero{border-top:none!important;border-bottom:none!important}
.hp-item{border-right:none!important;border-bottom:none!important}
.hero-bg{border-top:none!important}
.hero-bg::after{display:none!important}

/* ============ Marked 2D luxe: flat colour blocks, crisp edges, zero depth, no divider bars ============ */
/* no shadows anywhere */
*{box-shadow:none!important}
/* zero rounded corners anywhere (Nicolas: no rounded angles at all). Catches
   the bespoke IDs/photos the per-class flatteners miss (.story-photo, hero,
   test cards...). Only the round chatbot launcher keeps its shape. */
*:not([class*="aqi-cb"]){border-radius:0!important}
/* colour sections become flat solid blocks: kill radial/linear glow backgrounds + the blue separator line */
.articles-section,.home-faq,.final-cta,.vision-2030{border-top:none!important;border-bottom:none!important}
/* alternate flat tonal blocks so each section reads as a distinct block (no lines) */
.services-section,.why-us,.home-faq{background:#12243D!important}
.track-record,.how-section,.key-figures,.articles-section,.final-cta,.vision-2030{background:var(--paper)!important}
/* drop every hairline row/cell separator luxe was using (services cells, faq rows, why rows) */
.home-service-card,.lg-card,.service-card,.faq-item,.why-item{border-top:none!important}
/* drop the remaining decorative divider bars (track-record verticals, how-steps rule) */
.tr-item + .tr-item::before,.kf-item + .kf-item::before{display:none!important}
.how-steps::before{display:none!important}
/* the little dash before every eyebrow label reads as a bar and repeats on every section: remove */
[class*="eyebrow"]::before,[class*="eyebrow"]::after{display:none!important}
.hero-eyebrow::before,.section-eyebrow::before,.tr-eyebrow::before,.tr-eyebrow::after,.lg-section-eyebrow::before,.page-hero-eyebrow::before{display:none!important}
/* no borders between sections at all; no rule above the footer copyright */
section{border-top:none!important;border-bottom:none!important}
.footer-bottom{border-top:none!important}
.footer-newsletter{border-bottom:none!important}
/* Services hub: the 6 cells were a tight bordered grid (gap:0). Space them, drop the grid hairlines. */
.lg-grid-5{gap:56px 52px!important;border-top:none!important;max-width:1180px!important}
.lg-grid-item{border:none!important;padding:0!important}
.lg-grid-item:hover{background:none!important}

/* ============================================================
   MOBILE ELEGANCE PASS (2026-07-08) — the flat luxe layout is tuned for
   desktop; on phones the desktop vertical rhythm (96-150px sections,
   48-56px grid gaps, 1.75-2.0 line-heights, 26-34px card padding) reads
   as empty oceans. This block tightens the phone rhythm into a controlled
   editorial cadence WITHOUT reintroducing hairlines (Nicolas: separate by
   space, not rules). Central: applies to EN + AR alike. Rollback: delete.
   ============================================================ */
@media(max-width:640px){
  /* --- section vertical padding: breathe, don't yawn (~54px) --- */
  .section,.lg-section,.track-record,.services-section,.why-us,.how-engagement,
  .how-section,.values-section,.articles-section,.home-faq,.map-band,.hero-band,
  .lg-highlight,.practice-section,.founders-section,.credentials-section,.story-section{
    padding-top:54px!important;padding-bottom:54px!important}
  .lg-cta-band,.cta-ribbon,.final-cta,.cta-band{
    padding-top:48px!important;padding-bottom:48px!important}
  /* thin compliance strip: its 40px desktop value must NOT inflate to the 54px
     section blanket (it appears twice per page on wealth + business) */
  .wt-disclaimer-band{padding-top:34px!important;padding-bottom:34px!important}
  /* .student-note is dual-use (a real section on the hub, a 2-line footnote on
     schools): leave its inline rhythm, do not force the 54px blanket on it */

  /* --- section headers: less gap below the title --- */
  .lg-section-header{margin-bottom:30px!important}
  .section-header,.tr-header,.articles-header,.services-header,.how-header{margin-bottom:28px!important}

  /* --- descriptions / subs: calmer leading, less airy (was 1.7-1.85) --- */
  .page-hero-sub,.hero-sub,.section-desc,.lg-section-desc,.lg-card-desc,
  .lg-grid-item-desc,.lg-grid-note,.lg-highlight-text,.lg-section-note,.lg-note,
  .lg-pb-text,.faq-a,.hsc-desc,.sc-text,.value-text,.why-item-text,.how-step-desc,
  .flow-step-desc,.tr-sub,.tr-desc,.rv-note,.rv-box p,.wt-note,.fr-table-note,
  .founder-bio,.bridge-text,.article-excerpt,.ci-value,.next-steps li,.lg-prose p,
  .lg-filter p,.disclaimer p,.wt-disclaimer p,.lg-cta-band p,.wt-verdict,.rv-verdict,
  .map-card-city,.office-hours{
    line-height:1.6!important}
  .fr-table-card td{line-height:1.55!important} /* tabular: a touch denser */

  /* --- card-bearing grids: stack to one column, separated by space only --- */
  .home-services-grid,.services-grid,.articles-grid,.lg-grid-2,.lg-grid-3,.lg-grid-4,
  .lg-grid-5,.lg-highlight-grid,.faq-grid,.values-grid,.founders-grid,.why-split,
  .v2030-split,.story-split,.vision-split,.practice-grid{
    grid-template-columns:1fr!important;gap:0!important;max-width:520px!important;
    margin-left:auto!important;margin-right:auto!important}
  .articles-grid{gap:30px!important}          /* images need a little air */
  .why-split,.v2030-split,.story-split,.vision-split{gap:26px!important} /* photo + text splits */
  .faq-grid{margin-top:30px!important}        /* was 52px under the header */

  /* --- flattened cards/rows: modest vertical padding (net ~32-40px apart) --- */
  .home-service-card,.lg-card,.service-card{padding:18px 0!important}
  .faq-item:not(details){padding:18px 0!important} /* vitrine FAQ is <div>; legacy faq.html <details> keeps its own summary padding */
  details.faq-item{padding:2px 0!important}        /* legacy accordion: the <summary> carries the tap padding, keep the row tight */
  .why-item{padding:16px 0!important}
  .value-card{padding:20px 0!important}
  .lg-grid-item{padding:14px 0!important}

  /* --- home animated flow schema: pull it up under the header, tighten steps
         (spacing only, the draw animation is untouched) --- */
  .flow{margin-top:32px!important}
  .flow-step{padding-bottom:24px!important}

  /* --- grids that stay multi-column on phones: give them a real gap --- */
  .tr-grid{grid-template-columns:1fr!important;gap:28px!important;max-width:300px!important}
  .kf-grid{gap:20px 18px!important;padding:34px 0!important}
  .credentials-grid{grid-template-columns:1fr 1fr!important;gap:22px 18px!important;max-width:420px!important}
  .v2030-stats{gap:16px!important}

  /* --- Arabic keeps a little more air than Latin (taller glyphs): 1.8, not 1.6 --- */
  html[lang="ar"] .page-hero-sub,html[lang="ar"] .hero-sub,html[lang="ar"] .section-desc,
  html[lang="ar"] .lg-section-desc,html[lang="ar"] .lg-card-desc,html[lang="ar"] .lg-grid-item-desc,
  html[lang="ar"] .faq-a,html[lang="ar"] .hsc-desc,html[lang="ar"] .value-text,
  html[lang="ar"] .why-item-text,html[lang="ar"] .founder-bio,html[lang="ar"] .lg-highlight-text,
  html[lang="ar"] .rv-note,html[lang="ar"] .wt-note,html[lang="ar"] .article-excerpt,
  html[lang="ar"] .lg-cta-band p,html[lang="ar"] .wt-disclaimer p,html[lang="ar"] .wt-disclaimer-band p,
  html[lang="ar"] .wt-verdict,html[lang="ar"] .rv-verdict{line-height:1.8!important}

  /* ---------- gaps the pass missed (audit 2026-07-08) ---------- */
  /* in-copy notes: their 44px inline top margin reads as a void after the
     tightened card rhythm */
  .rv-note,.lg-section-note,.lg-grid-note,.wt-note,.rv-verdict,.wt-verdict{margin-top:28px!important}
  /* footer: never reduced on phones anywhere (80px top, 44px grid gap, ~104px
     newsletter block) — it sits under EVERY page */
  .site-footer{padding-top:56px!important}
  .footer-grid{gap:30px!important}
  .footer-newsletter{padding-bottom:32px!important;margin-bottom:32px!important}

  /* ---------- home bespoke ---------- */
  .tr-item+.tr-item{padding-top:0!important}   /* the 28px grid gap carries it now */
  .home-services-footnote{margin-top:34px!important}
  .fx-content{padding:48px 0 28px!important}

  /* ---------- contact bespoke ---------- */
  .map-band,.map-overlay{min-height:300px!important}
  .map-overlay{padding:44px 20px!important}
  .contact-grid{gap:32px!important}
  .ci-block{margin-bottom:24px!important}
  .map-cards{gap:32px!important}               /* .map-divider is hidden site-wide */
  .fr-table-card td:last-child{white-space:normal!important;font-size:13.5px!important} /* fees: wrap not clip, sized so the short values still sit on one line */

  /* ---------- services bespoke ---------- */
  .lg-highlight-card{padding:22px 0!important} /* was 36px 32px: drop side padding + tighten */

  /* ---------- about bespoke ---------- */
  .values-grid,.practice-grid,.credentials-grid{margin-top:28px!important} /* was 48px under each title */
  .founders-grid{gap:32px!important}           /* two full-photo founder cards need real air */
  .credential-card{padding:24px 10px!important}

  /* ---------- header language switch: was cramped/squished on phones ---------- */
  .lang-switch{padding:0!important;gap:0!important}
  .lang-btn{padding:10px 15px!important;min-width:46px!important;font-size:.64rem!important}
}

/* ---------- header nav/hamburger gap (2026-07-09): several older pages (home,
   get-started, the 26 article pages) still carry their own inline copy of
   ".header-nav{display:none}" from before this was centralised in styles.css,
   with the OLD 1024px threshold. That leaves the logo pinned far-left and the
   lang-switch/CTA/hamburger cluster pinned far-right with an empty void
   between them across 1001-1024px (iPad landscape included). styles.css now
   switches at 1000px; this override forces the same behaviour on every page,
   including the ones with a stale inline duplicate, without editing 30 files. */
@media(min-width:1001px) and (max-width:1024px){
  .header-nav{display:flex!important}
  .mobile-toggle{display:none!important}
}
