/* ================================================================
   MEDICAL TOURISM — REDESIGN SYSTEM
   Calm clinical clarity + modern travel hospitality
   ================================================================ */
:root {
    --brand-950:#062f2d;
    --brand-900:#0b4f4b;
    --brand-800:#0f635e;
    --brand-700:#0f766e;
    --brand-600:#0d9488;
    --brand-500:#14b8a6;
    --brand-400:#2dd4bf;
    --brand-300:#5eead4;
    --brand-100:#ccfbf1;
    --brand-50:#f0fdfa;
    --sky-700:#0369a1;
    --sky-600:#0284c7;
    --sky-500:#0ea5e9;
    --sky-100:#e0f2fe;
    --sky-50:#f0f9ff;
    --sun-500:#f59e0b;
    --ink-950:#102a2d;
    --ink-900:#17383b;
    --ink-850:#203f42;
    --ink-800:#2b4b4e;
    --ink-700:#3f5d60;
    --ink-600:#587174;
    --ink-500:#718789;
    --ink-400:#8fa2a4;
    --ink-300:#aebdbf;
    --ink:var(--ink-950);
    --muted:var(--ink-500);
    --surface:#ffffff;
    --surface-soft:#f6fbfa;
    --surface-muted:#eef7f5;
    --line:#dcebea;
    --line-strong:#c9dfdd;
    --danger:#dc4c64;
    --success:#158b68;
    --warning:#b7791f;
    --shadow-xs:0 1px 2px rgba(12, 74, 70, .04);
    --shadow-sm:0 8px 24px rgba(17, 75, 72, .07);
    --shadow-md:0 18px 50px rgba(17, 75, 72, .10);
    --shadow-lg:0 30px 80px rgba(17, 75, 72, .15);
    --radius-sm:12px;
    --radius-md:18px;
    --radius-lg:26px;
    --radius-xl:36px;
    --header-height:78px;
    --content-width:1240px;

    /* legacy system compatibility */
    --primary-color:var(--brand-700);
    --success-color:var(--success);
    --warning-color:var(--warning);
    --error-color:var(--danger);
    --bg-primary:var(--surface);
    --bg-secondary:var(--surface-soft);
    --bg-tertiary:var(--surface-muted);
    --text-primary:var(--ink-950);
    --text-secondary:var(--ink-600);
    --text-muted:var(--ink-500);
    --border-color:var(--line);
    --accent-color:var(--brand-700);
}

[data-theme="dark"] {
    --surface:#102022;
    --surface-soft:#0b1719;
    --surface-muted:#172b2e;
    --line:#294044;
    --line-strong:#345155;
    --ink-950:#effcf9;
    --ink-900:#e4f4f1;
    --ink-850:#d6eae7;
    --ink-800:#c9deda;
    --ink-700:#bdd0cd;
    --ink-600:#a9bfbc;
    --ink-500:#8fa6a3;
    --ink-400:#758e8b;
    --ink-300:#607a77;
    --ink:var(--ink-950);
    --muted:var(--ink-500);
    --brand-50:#102b2a;
    --brand-100:#143b38;
    --sky-50:#102833;
    --sky-100:#133646;
    --shadow-sm:0 10px 28px rgba(0,0,0,.18);
    --shadow-md:0 18px 48px rgba(0,0,0,.28);
    --shadow-lg:0 28px 72px rgba(0,0,0,.38);
    --bg-primary:var(--surface);
    --bg-secondary:var(--surface-soft);
    --bg-tertiary:var(--surface-muted);
    --text-primary:var(--ink-950);
    --text-secondary:var(--ink-600);
    --text-muted:var(--ink-500);
    --border-color:var(--line);
}

html { scroll-behavior:smooth; }
body.site-body {
    margin:0;
    min-height:100vh;
    overflow-x:hidden;
    background:
        radial-gradient(circle at 6% 2%, rgba(20,184,166,.08), transparent 22rem),
        radial-gradient(circle at 92% 10%, rgba(14,165,233,.06), transparent 24rem),
        var(--surface-soft);
    color:var(--ink-950);
    font-family:'Inter','Vazir',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    font-size:15px;
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}
html[dir="rtl"] body.site-body { font-family:'Vazir','Inter',system-ui,sans-serif; }
body::selection { background:rgba(20,184,166,.22); color:var(--ink-950); }

/* Legacy color utility compatibility */
.bg-primary { background-color:var(--surface)!important; }
.bg-secondary { background-color:var(--surface-soft)!important; }
.bg-tertiary { background-color:var(--surface-muted)!important; }
.text-primary { color:var(--ink-950)!important; }
.text-secondary { color:var(--ink-600)!important; }
.text-muted { color:var(--ink-500)!important; }
.border-color { border-color:var(--line)!important; }
.divide-color > :not([hidden]) ~ :not([hidden]) { border-color:var(--line)!important; }

.site-main { min-height:60vh; position:relative; z-index:2; }
a { transition:color .2s ease, background-color .2s ease, border-color .2s ease, opacity .2s ease, transform .25s ease, box-shadow .25s ease; }
button, input, select, textarea { font:inherit; }
button, a { -webkit-tap-highlight-color:transparent; }
img { max-width:100%; }

/* Ambient background */
.ambient-orb { position:fixed; border-radius:999px; pointer-events:none; filter:blur(1px); z-index:0; opacity:.5; }
.ambient-orb-one { width:360px; height:360px; left:-180px; top:25vh; background:radial-gradient(circle, rgba(20,184,166,.09), transparent 68%); }
.ambient-orb-two { width:460px; height:460px; right:-240px; top:48vh; background:radial-gradient(circle, rgba(14,165,233,.08), transparent 68%); }

/* Header */
.site-header {
    position:sticky; top:0; z-index:100;
    height:var(--header-height);
    background:color-mix(in srgb, var(--surface) 88%, transparent);
    border-bottom:1px solid color-mix(in srgb, var(--line) 74%, transparent);
    backdrop-filter:blur(20px) saturate(135%);
    -webkit-backdrop-filter:blur(20px) saturate(135%);
    transition:box-shadow .25s ease, background .25s ease, transform .25s ease;
}
.site-header.is-scrolled { box-shadow:0 10px 34px rgba(17,75,72,.08); }
.site-header-inner { height:100%; max-width:var(--content-width); margin:auto; padding:0 24px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand-lockup { display:inline-flex; align-items:center; gap:12px; color:var(--ink-950)!important; min-width:max-content; }
.brand-lockup:hover { transform:translateY(-1px); }
.brand-mark { width:44px; height:44px; border-radius:15px; display:grid; place-items:center; position:relative; color:#fff; font-size:20px; background:linear-gradient(145deg,var(--brand-600),var(--brand-800)); box-shadow:0 10px 24px rgba(15,118,110,.22); }
.brand-mark::after { content:""; position:absolute; inset:5px; border:1px solid rgba(255,255,255,.2); border-radius:11px; }
.brand-plane { position:absolute; right:-5px; bottom:-3px; width:20px; height:20px; display:grid; place-items:center; background:var(--sun-500); color:#fff; border:3px solid var(--surface); border-radius:999px; font-size:8px; transform:rotate(-12deg); }
html[dir="rtl"] .brand-plane { right:auto; left:-5px; transform:rotate(12deg); }
.brand-copy { display:flex; flex-direction:column; line-height:1.15; }
.brand-copy strong { color:var(--ink-950); font-size:14px; font-weight:800; letter-spacing:-.01em; }
.brand-copy small { color:var(--ink-500); font-size:10px; margin-top:4px; letter-spacing:.04em; }
.desktop-nav { display:flex; align-items:center; gap:3px; padding:5px; background:color-mix(in srgb, var(--surface-muted) 58%, transparent); border:1px solid color-mix(in srgb, var(--line) 70%, transparent); border-radius:999px; }
.nav-link { position:relative; color:var(--ink-600)!important; padding:8px 13px; border-radius:999px; font-size:13px; font-weight:600; white-space:nowrap; }
.nav-link:hover { color:var(--brand-800)!important; background:var(--surface); }
.nav-link.is-active { color:var(--brand-800)!important; background:var(--surface); box-shadow:var(--shadow-xs); }
.header-actions { display:flex; align-items:center; justify-content:flex-end; gap:8px; }
.language-compact { height:40px; align-items:center; gap:7px; padding:0 10px; background:var(--surface-soft); border:1px solid var(--line); border-radius:12px; color:var(--ink-500); }
.language-compact select { max-width:80px; background:transparent; border:0; color:var(--ink-700); font-size:12px; font-weight:600; outline:0; cursor:pointer; }
.icon-button { width:40px; height:40px; border-radius:12px; border:1px solid var(--line); background:var(--surface); color:var(--ink-700); align-items:center; justify-content:center; box-shadow:var(--shadow-xs); cursor:pointer; transition:all .2s ease; }
.icon-button:hover { border-color:var(--line-strong); color:var(--brand-700); transform:translateY(-1px); box-shadow:var(--shadow-sm); }
.icon-button-sm { width:32px; height:32px; border-radius:10px; }
.notification-badge { position:absolute; min-width:18px; height:18px; border-radius:999px; background:var(--danger); color:#fff; border:2px solid var(--surface); font-size:9px; font-weight:800; align-items:center; justify-content:center; top:-4px; right:-4px; padding:0 4px; }
html[dir="rtl"] .notification-badge { right:auto; left:-4px; }
.user-chip { min-height:44px; border:1px solid var(--line); background:var(--surface); border-radius:14px; display:flex; align-items:center; gap:9px; padding:4px 9px 4px 5px; color:var(--ink-700); cursor:pointer; box-shadow:var(--shadow-xs); }
html[dir="rtl"] .user-chip { padding:4px 5px 4px 9px; }
.user-chip:hover { border-color:var(--line-strong); box-shadow:var(--shadow-sm); }
.user-avatar { width:34px; height:34px; border-radius:11px; display:grid; place-items:center; background:linear-gradient(145deg,var(--brand-100),var(--sky-100)); color:var(--brand-800); font-size:13px; font-weight:800; }
.user-chip-copy { text-align:left; line-height:1.12; }
html[dir="rtl"] .user-chip-copy { text-align:right; }
.user-chip-copy strong { display:block; max-width:110px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; color:var(--ink-900); }
.user-chip-copy small { display:block; margin-top:3px; font-size:9px; color:var(--ink-500); }
.user-dropdown { position:absolute; top:calc(100% + 12px); right:0; width:220px; padding:8px; border-radius:16px; background:var(--surface); border:1px solid var(--line); box-shadow:var(--shadow-md); z-index:150; transform-origin:top right; }
html[dir="rtl"] .user-dropdown { right:auto; left:0; transform-origin:top left; }
.user-dropdown a { display:flex; gap:10px; align-items:center; padding:10px 11px; color:var(--ink-700)!important; border-radius:10px; font-size:12px; font-weight:600; }
.user-dropdown a i { width:18px; color:var(--brand-700); }
.user-dropdown a:hover { background:var(--surface-soft); color:var(--ink-950)!important; }
.user-dropdown .danger-link, .user-dropdown .danger-link i { color:var(--danger)!important; }
.dropdown-separator { height:1px; background:var(--line); margin:6px 3px; }

/* Buttons */
.button, .btn { min-height:42px; display:inline-flex; align-items:center; justify-content:center; gap:8px; border-radius:13px; padding:0 17px; border:1px solid transparent; font-size:13px; font-weight:700; cursor:pointer; line-height:1; text-decoration:none!important; }
.button-primary, .btn-primary { color:#fff!important; background:linear-gradient(135deg,var(--brand-700),var(--brand-600))!important; border-color:transparent!important; box-shadow:0 10px 24px rgba(15,118,110,.18); }
.button-primary:hover, .btn-primary:hover { color:#fff!important; transform:translateY(-2px); box-shadow:0 16px 32px rgba(15,118,110,.25); }
.button-ghost, .btn-secondary, .btn-ghost { color:var(--ink-800)!important; background:var(--surface)!important; border-color:var(--line)!important; }
.button-ghost:hover, .btn-secondary:hover, .btn-ghost:hover { color:var(--brand-800)!important; border-color:var(--brand-500)!important; background:var(--brand-50)!important; }
.btn-success { background:var(--success)!important; color:#fff!important; }
.btn-warning { background:var(--warning)!important; color:#fff!important; }
.btn-error { background:var(--danger)!important; color:#fff!important; }


/* Stage 7.6 — contrast-safe actions and readability */
.button-light, .btn-light {
    color:var(--brand-950)!important;
    background:#ffffff!important;
    border-color:rgba(255,255,255,.92)!important;
    box-shadow:0 12px 30px rgba(0,0,0,.16);
}
.button-light:hover, .btn-light:hover {
    color:var(--brand-950)!important;
    background:#eafffb!important;
    border-color:#b8f3e9!important;
    transform:translateY(-2px);
    box-shadow:0 17px 36px rgba(0,0,0,.20);
}
.button-light:active, .btn-light:active { transform:translateY(0); }
.button:focus-visible, .btn:focus-visible, a:focus-visible, button:focus-visible {
    outline:3px solid #5eead4;
    outline-offset:3px;
}
.button[aria-disabled="true"], .button:disabled, .btn:disabled {
    opacity:.58;
    cursor:not-allowed;
    transform:none!important;
}

/* High-contrast copy on dark public surfaces */
.journey-feature .section-copy { color:#d7eeea!important; }
.journey-feature .section-eyebrow { color:#9df3e6!important; }
.journey-feature .button-light,
.popular-treatment-section .button-light,
.roadmap-finish-card .button-light { color:var(--brand-950)!important; }
.popular-section-head p { color:#c5dde0; font-size:14px; }
.popular-treatment-card p { color:#c0d7da; font-size:12px; }
.popular-treatment-link { color:#9bf3e6; font-size:11px; }
.popular-treatment-link:hover { color:#ffffff; }
.popular-eyebrow { color:#9bf3e6!important; }
.roadmap-finish-card p { color:#d8ece9; font-size:11px; }
.roadmap-finish-card .section-eyebrow { color:#a4f2e7; }

/* Public links should remain legible in every theme */
.service-link { font-size:11px; }
.service-link:hover { text-decoration:underline; text-underline-offset:4px; }
.page-lead, .section-copy { color:var(--ink-700); }

/* Footer and small public labels: avoid sub-10px text */
.footer-column > a { font-size:11px; }
.footer-column h4 { color:var(--ink-900); }
.footer-contact, .footer-bottom { color:var(--ink-600); }

/* Improve secondary text in cards without flattening hierarchy */
.directory-card p, .plan-preview-card p, .blog-card p, .service-card p { color:var(--ink-700); }
.form-help, .table-muted { color:var(--ink-600); }

/* Mobile drawer */
.mobile-menu-overlay { position:fixed; inset:0; z-index:180; background:rgba(7,34,36,.42); backdrop-filter:blur(4px); }
.mobile-drawer { position:fixed; z-index:190; top:0; bottom:0; right:0; width:min(88vw,360px); background:var(--surface); border-left:1px solid var(--line); box-shadow:var(--shadow-lg); transform:translateX(105%); transition:transform .36s cubic-bezier(.22,.8,.25,1); display:flex; flex-direction:column; }
html[dir="rtl"] .mobile-drawer { right:auto; left:0; border-left:0; border-right:1px solid var(--line); transform:translateX(-105%); }
.mobile-drawer.is-open { transform:translateX(0)!important; }
.mobile-drawer-head { height:78px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 18px; border-bottom:1px solid var(--line); }
.mobile-drawer-body { flex:1; overflow:auto; padding:18px; }
.mobile-drawer-body > a { display:flex; align-items:center; gap:12px; min-height:48px; padding:0 12px; border-radius:13px; color:var(--ink-700)!important; font-size:14px; font-weight:650; }
.mobile-drawer-body > a i { width:20px; color:var(--brand-700); text-align:center; }
.mobile-drawer-body > a:hover { background:var(--surface-soft); color:var(--ink-950)!important; }
.mobile-language { margin-top:16px; padding:14px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); display:flex; align-items:center; justify-content:space-between; gap:12px; color:var(--ink-700); }
.mobile-language span { display:flex; gap:8px; align-items:center; font-size:12px; font-weight:700; }
.mobile-language select { border:0; outline:0; background:transparent; color:var(--brand-800); font-weight:700; }
.mobile-auth-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:16px; }

/* Notifications */
.notification-panel { position:absolute; right:0; top:calc(100% + 12px); width:min(380px,calc(100vw - 24px)); max-height:520px; overflow:hidden; background:var(--surface); border:1px solid var(--line); border-radius:20px; box-shadow:var(--shadow-lg); z-index:160; }
html[dir="rtl"] .notification-panel { right:auto; left:0; }
.notification-panel-head { padding:15px 16px; display:flex; justify-content:space-between; gap:16px; align-items:center; border-bottom:1px solid var(--line); }
.notification-panel-head strong { display:block; color:var(--ink-950); font-size:13px; }
.notification-panel-head small { display:block; color:var(--ink-500); font-size:10px; margin-top:2px; }
.notification-list { max-height:360px; overflow-y:auto; }
.notification-read-all { width:100%; padding:12px; border:0; border-top:1px solid var(--line); background:var(--surface-soft); color:var(--brand-700); font-size:11px; font-weight:800; cursor:pointer; }

/* Flash messages */
.flash-stack { position:fixed; z-index:220; top:94px; right:20px; width:min(400px,calc(100vw - 32px)); display:flex; flex-direction:column; gap:9px; }
html[dir="rtl"] .flash-stack { right:auto; left:20px; }
.flash-message { display:grid; grid-template-columns:auto 1fr auto; gap:11px; align-items:center; padding:12px 14px; background:var(--surface); border:1px solid var(--line); border-radius:15px; box-shadow:var(--shadow-md); color:var(--ink-700); font-size:12px; animation:toastIn .35s cubic-bezier(.2,.8,.3,1) both; }
.flash-message button { border:0; background:transparent; color:var(--ink-500); cursor:pointer; }
.flash-success .flash-icon { color:var(--success); }.flash-error .flash-icon,.flash-danger .flash-icon { color:var(--danger); }.flash-warning .flash-icon { color:var(--warning); }.flash-info .flash-icon { color:var(--sky-600); }
@keyframes toastIn { from{opacity:0;transform:translateY(-8px) scale(.98)} to{opacity:1;transform:none} }

/* Generic containers / page headings */
.page-shell, .content-shell { max-width:var(--content-width); width:100%; margin:0 auto; padding:42px 24px 72px; }
.page-kicker { display:inline-flex; gap:8px; align-items:center; color:var(--brand-700); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.page-title { margin:10px 0 0; color:var(--ink-950); font-size:clamp(30px,5vw,54px); font-weight:800; line-height:1.08; letter-spacing:-.035em; }
.page-lead { max-width:720px; margin:16px 0 0; color:var(--ink-600); font-size:clamp(15px,1.7vw,18px); line-height:1.8; }
.section-eyebrow { color:var(--brand-700); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.13em; }
.section-title { color:var(--ink-950); font-size:clamp(26px,4vw,42px); font-weight:800; line-height:1.16; letter-spacing:-.025em; }
.section-copy { color:var(--ink-600); font-size:15px; line-height:1.85; }
.section-heading { max-width:760px; margin:0 auto 38px; text-align:center; }

/* Generic cards — improves legacy templates automatically */
.card, .panel-card, .bg-primary.rounded-lg, .bg-primary.rounded-xl, .bg-primary.rounded-2xl, .bg-primary.rounded-3xl {
    border-color:var(--line)!important;
    box-shadow:var(--shadow-sm)!important;
}
.card { border-radius:var(--radius-md); overflow:hidden; }
.card:hover { box-shadow:var(--shadow-md); }
.card-header { padding:18px 20px; border-color:var(--line); }
.card-body { padding:20px; }.card-footer { padding:16px 20px; border-color:var(--line); background:var(--surface-soft); }

/* Form redesign */
.form-input, .form-select, .form-textarea,
input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="number"], input[type="date"], input[type="time"], input[type="search"], input[type="url"], select, textarea {
    min-height:44px;
    border:1px solid var(--line)!important;
    border-radius:12px!important;
    background:var(--surface)!important;
    color:var(--ink-950)!important;
    padding:10px 13px;
    outline:none;
    box-shadow:0 1px 0 rgba(17,75,72,.02);
    transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
textarea, .form-textarea { min-height:112px; }
input::placeholder, textarea::placeholder { color:var(--ink-500)!important; opacity:.75; }
.form-input:focus, .form-select:focus, .form-textarea:focus,
input:focus, select:focus, textarea:focus { border-color:var(--brand-500)!important; box-shadow:0 0 0 4px rgba(20,184,166,.10)!important; }
input[type="checkbox"], input[type="radio"] { accent-color:var(--brand-700); }
label, .form-label { color:var(--ink-700); font-size:12px; font-weight:700; }
.form-help { color:var(--ink-500); }

/* Table redesign */
.table, table { width:100%; border-collapse:separate; border-spacing:0; color:var(--ink-700); }
.table th, table th { color:var(--ink-500); background:var(--surface-soft)!important; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; border-color:var(--line)!important; }
.table td, table td { border-color:var(--line)!important; color:var(--ink-700); font-size:12px; }
.table tbody tr, table tbody tr { transition:background .2s ease; }
.table tbody tr:hover, table tbody tr:hover { background:color-mix(in srgb,var(--brand-50) 55%,var(--surface))!important; }

/* Public hero */
.travel-hero { position:relative; min-height:min(770px,calc(100vh - var(--header-height))); display:flex; align-items:center; overflow:hidden; isolation:isolate; background:var(--brand-950); }
.travel-hero-media { position:absolute; inset:0; z-index:-3; }
.travel-hero-media img { width:100%; height:100%; object-fit:cover; filter:saturate(.86) contrast(.98); }
.travel-hero-overlay { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(5,48,46,.94) 0%,rgba(6,55,54,.80) 42%,rgba(6,55,54,.30) 73%,rgba(6,55,54,.18) 100%); }
html[dir="rtl"] .travel-hero-overlay { background:linear-gradient(-90deg,rgba(5,48,46,.94) 0%,rgba(6,55,54,.80) 42%,rgba(6,55,54,.30) 73%,rgba(6,55,54,.18) 100%); }
.travel-hero::after { content:""; position:absolute; inset:auto 0 0; height:100px; background:linear-gradient(to top,var(--surface-soft),transparent); z-index:-1; }
.hero-grid { max-width:var(--content-width); width:100%; margin:auto; padding:84px 24px 115px; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(300px,.64fr); gap:70px; align-items:center; }
.hero-copy { max-width:690px; }
.hero-badge { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid rgba(255,255,255,.18); border-radius:999px; background:rgba(255,255,255,.09); backdrop-filter:blur(12px); color:#d9fffa; font-size:11px; font-weight:750; }
.hero-title { color:#fff!important; margin:18px 0 20px; max-width:720px; font-size:clamp(42px,6vw,76px); font-weight:800; line-height:1.02; letter-spacing:-.05em; }
html[dir="rtl"] .hero-title { letter-spacing:-.02em; }
.hero-title em { color:#82e4d6; font-style:normal; }
.hero-subtitle { max-width:620px; color:#d1e7e4!important; font-size:clamp(16px,2vw,20px); line-height:1.8; }
.hero-actions { display:flex; flex-wrap:wrap; gap:11px; margin-top:30px; }
.hero-actions .button { min-height:50px; padding:0 22px; border-radius:15px; }
.hero-actions .button-light { background:#fff; color:var(--brand-900)!important; box-shadow:0 12px 32px rgba(0,0,0,.15); }
.hero-actions .button-glass { background:rgba(255,255,255,.08); color:#fff!important; border-color:rgba(255,255,255,.22); backdrop-filter:blur(10px); }
.hero-actions .button-glass:hover { background:rgba(255,255,255,.16); }
.hero-trust-row { display:flex; flex-wrap:wrap; gap:18px; margin-top:32px; color:#cae3df; font-size:11px; font-weight:600; }
.hero-trust-row span { display:flex; gap:7px; align-items:center; }.hero-trust-row i { color:#69d9c8; }
.hero-trip-card { justify-self:end; width:min(100%,390px); padding:17px; border:1px solid rgba(255,255,255,.18); border-radius:28px; background:rgba(255,255,255,.11); backdrop-filter:blur(20px); box-shadow:0 28px 80px rgba(0,0,0,.22); color:#fff; animation:heroFloat 6s ease-in-out infinite; }
.hero-trip-card-inner { padding:22px; border-radius:20px; background:rgba(255,255,255,.94); color:var(--ink-950); }
.hero-trip-head { display:flex; justify-content:space-between; align-items:start; gap:14px; }.hero-trip-head small { color:var(--ink-500); font-size:10px; font-weight:700; }.hero-trip-head strong { display:block; margin-top:3px; font-size:18px; }.hero-trip-status { padding:5px 8px; border-radius:999px; background:var(--brand-50); color:var(--brand-700); font-size:9px; font-weight:800; }
.hero-route-line { position:relative; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:11px; margin:25px 0 20px; }.hero-route-line::before { content:""; height:1px; background:linear-gradient(90deg,var(--brand-500),var(--sky-500)); }.hero-route-line span { width:36px; height:36px; display:grid; place-items:center; border-radius:11px; background:var(--surface-soft); color:var(--brand-700); }.hero-route-line i { color:var(--sun-500); transform:rotate(28deg); }
.hero-mini-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }.hero-mini-step { padding:10px 8px; border:1px solid var(--line); border-radius:12px; text-align:center; }.hero-mini-step i { color:var(--brand-700); font-size:13px; }.hero-mini-step span { display:block; color:var(--ink-600); font-size:9px; font-weight:700; margin-top:5px; }
@keyframes heroFloat { 0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)} }

/* Home sections */
.home-section { padding:88px 24px; position:relative; }
.home-section-inner { max-width:var(--content-width); margin:auto; }
.service-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.service-card { min-height:220px; position:relative; display:flex; flex-direction:column; overflow:hidden; padding:22px; border:1px solid var(--line); border-radius:22px; background:var(--surface); color:var(--ink-950)!important; box-shadow:var(--shadow-sm); }
.service-card::before { content:""; position:absolute; width:90px; height:90px; top:-38px; right:-34px; border-radius:999px; background:var(--service-tint,var(--brand-50)); transition:transform .35s ease; }
html[dir="rtl"] .service-card::before { right:auto; left:-34px; }
.service-card:hover { transform:translateY(-7px); border-color:var(--line-strong); box-shadow:var(--shadow-md); }.service-card:hover::before { transform:scale(1.45); }
.service-icon { width:50px; height:50px; border-radius:16px; display:grid; place-items:center; background:var(--service-tint,var(--brand-50)); color:var(--service-color,var(--brand-700)); font-size:20px; position:relative; z-index:1; }.service-card h3 { margin:18px 0 7px; color:var(--ink-950); font-size:15px; font-weight:800; }.service-card p { margin:0; color:var(--ink-600); font-size:11px; line-height:1.8; }.service-link { display:flex; gap:7px; align-items:center; margin-top:auto; padding-top:18px; color:var(--service-color,var(--brand-700)); font-size:10px; font-weight:800; }
.service-card:nth-child(2){--service-color:#0369a1;--service-tint:#f0f9ff}.service-card:nth-child(3){--service-color:#15803d;--service-tint:#f0fdf4}.service-card:nth-child(4){--service-color:#7c3aed;--service-tint:#f5f3ff}.service-card:nth-child(5){--service-color:#c66b12;--service-tint:#fff7ed}
[data-theme="dark"] .service-card:nth-child(2){--service-tint:#102833}[data-theme="dark"] .service-card:nth-child(3){--service-tint:#102b1c}[data-theme="dark"] .service-card:nth-child(4){--service-tint:#221934}[data-theme="dark"] .service-card:nth-child(5){--service-tint:#322318}
.stats-strip { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; overflow:hidden; margin-top:-42px; position:relative; z-index:5; max-width:1000px; margin-left:auto; margin-right:auto; background:var(--line); border:1px solid var(--line); border-radius:22px; box-shadow:var(--shadow-md); }.stats-item { padding:20px; background:var(--surface); text-align:center; }.stats-item strong { display:block; color:var(--brand-800); font-size:23px; font-weight:800; }.stats-item span { display:block; margin-top:2px; color:var(--ink-500); font-size:10px; font-weight:700; }
.journey-feature { display:grid; grid-template-columns:.9fr 1.1fr; gap:60px; align-items:center; padding:52px; border-radius:34px; overflow:hidden; background:linear-gradient(145deg,var(--brand-950),#0d5c61); color:#fff; box-shadow:var(--shadow-lg); }
.journey-feature h2 { color:#fff!important; }.journey-feature p { color:#cce3df!important; }.journey-visual { position:relative; min-height:370px; }.journey-map-shape { position:absolute; inset:15px; border:1px dashed rgba(255,255,255,.25); border-radius:47% 53% 55% 45% / 40% 42% 58% 60%; transform:rotate(-4deg); }.journey-node { position:absolute; width:62px; height:62px; display:grid; place-items:center; border-radius:20px; background:rgba(255,255,255,.96); color:var(--brand-700); box-shadow:0 16px 34px rgba(0,0,0,.18); }.journey-node::after { content:attr(data-label); position:absolute; top:calc(100% + 7px); white-space:nowrap; color:#fff; font-size:9px; font-weight:700; }.journey-node.n1{left:8%;top:16%}.journey-node.n2{left:45%;top:4%}.journey-node.n3{right:7%;top:31%}.journey-node.n4{right:27%;bottom:4%}.journey-node.n5{left:18%;bottom:14%}.journey-plane { position:absolute; left:45%; top:48%; color:#7ee5d7; font-size:36px; transform:rotate(28deg); filter:drop-shadow(0 8px 10px rgba(0,0,0,.2)); }
.plan-preview-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }.plan-preview-card { border:1px solid var(--line); border-radius:22px; overflow:hidden; background:var(--surface); box-shadow:var(--shadow-sm); color:var(--ink-950)!important; }.plan-preview-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-md); }.plan-preview-media { height:124px; position:relative; overflow:hidden; background:linear-gradient(145deg,var(--brand-50),var(--sky-50)); }.plan-preview-media::before { content:""; position:absolute; width:150px; height:150px; border-radius:999px; right:-55px; top:-70px; background:rgba(14,165,233,.11); }.plan-preview-media i { position:absolute; left:22px; bottom:20px; width:48px; height:48px; display:grid; place-items:center; border-radius:15px; background:#fff; color:var(--brand-700); box-shadow:var(--shadow-sm); font-size:18px; }.plan-preview-body { padding:20px; }.plan-preview-type { color:var(--brand-700); font-size:9px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }.plan-preview-body h3 { margin:7px 0 7px; color:var(--ink-950); font-size:15px; font-weight:800; }.plan-preview-body p { color:var(--ink-600); font-size:11px; line-height:1.7; }

/* Listing & detail public pages */
.public-hero { padding:70px 24px 58px; background:linear-gradient(145deg,var(--brand-950),#0d6666); position:relative; overflow:hidden; color:#fff; }.public-hero::before { content:""; position:absolute; width:460px; height:460px; border-radius:999px; right:-170px; top:-260px; border:90px solid rgba(255,255,255,.035); }.public-hero::after { content:""; position:absolute; inset:auto 0 0; height:45px; background:linear-gradient(to top,var(--surface-soft),transparent); }.public-hero-inner { max-width:var(--content-width); margin:auto; position:relative; z-index:1; }.public-hero .page-kicker { color:#8ee8dc; }.public-hero .page-title { color:#fff!important; max-width:830px; }.public-hero .page-lead { color:#cce4e1!important; }
.filter-bar { display:grid; grid-template-columns:minmax(0,1fr) minmax(190px,260px) auto; gap:10px; margin:-22px auto 34px; max-width:var(--content-width); padding:12px; position:relative; z-index:8; background:var(--surface); border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow-md); }.filter-bar input,.filter-bar select { min-height:46px; }.filter-button { min-width:110px; }
.directory-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }.directory-card { overflow:hidden; border:1px solid var(--line); border-radius:23px; background:var(--surface); box-shadow:var(--shadow-sm); color:var(--ink-950)!important; }.directory-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-md); border-color:var(--line-strong); }.directory-card-media { height:245px; position:relative; overflow:hidden; background:linear-gradient(145deg,var(--brand-50),var(--sky-50)); }.directory-card-media img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }.directory-card:hover .directory-card-media img { transform:scale(1.035); }.directory-card-media .fallback-icon { position:absolute; inset:0; display:grid; place-items:center; color:var(--brand-500); font-size:70px; opacity:.55; }.directory-card-badge { position:absolute; left:14px; bottom:14px; padding:7px 10px; border-radius:10px; background:rgba(255,255,255,.92); backdrop-filter:blur(8px); color:var(--brand-800); font-size:9px; font-weight:800; box-shadow:var(--shadow-sm); }.directory-card-body { padding:18px 19px 20px; }.directory-card-body h2,.directory-card-body h3 { margin:0 0 4px; color:var(--ink-950); font-size:16px; font-weight:800; }.directory-card-body .specialty { color:var(--brand-700); font-size:11px; font-weight:700; }.directory-meta { margin-top:13px; display:flex; flex-direction:column; gap:7px; color:var(--ink-500); font-size:10px; }.directory-meta span { display:flex; align-items:center; gap:7px; }.directory-meta i { color:var(--brand-600); width:14px; }
.detail-shell { max-width:1120px; margin:auto; padding:48px 24px 80px; }.detail-card { display:grid; grid-template-columns:320px minmax(0,1fr); gap:0; overflow:hidden; border:1px solid var(--line); border-radius:30px; background:var(--surface); box-shadow:var(--shadow-md); }.detail-aside { padding:28px; background:linear-gradient(160deg,var(--brand-50),var(--sky-50)); }.detail-main { padding:34px; }.detail-section { padding:22px 0; border-top:1px solid var(--line); }.detail-section:first-of-type { border-top:0; }.detail-section h2,.detail-section h3 { color:var(--ink-950); font-size:16px; font-weight:800; }.detail-section p,.detail-section li { color:var(--ink-600); }

/* Roadmap */
.roadmap-shell { max-width:1060px; margin:auto; padding:64px 24px 88px; }.roadmap-track { position:relative; }.roadmap-track::before { content:""; position:absolute; top:0; bottom:0; left:35px; width:2px; background:linear-gradient(var(--brand-500),var(--sky-500),rgba(14,165,233,.1)); }.roadmap-step { position:relative; display:grid; grid-template-columns:72px minmax(0,1fr); gap:20px; padding-bottom:22px; }.roadmap-step-number { position:relative; z-index:2; width:72px; height:72px; border-radius:23px; display:grid; place-items:center; color:#fff; background:linear-gradient(145deg,var(--brand-700),var(--sky-600)); border:7px solid var(--surface-soft); font-size:16px; font-weight:850; box-shadow:0 8px 22px rgba(15,118,110,.15); }.roadmap-step-card { padding:24px 26px; border:1px solid var(--line); border-radius:22px; background:var(--surface); box-shadow:var(--shadow-sm); }.roadmap-step-card:hover { transform:translateX(4px); box-shadow:var(--shadow-md); }.roadmap-step-icon { width:42px; height:42px; border-radius:13px; display:grid; place-items:center; float:right; background:var(--brand-50); color:var(--brand-700); }.roadmap-step-card h2 { margin:1px 0 8px; color:var(--ink-950); font-size:17px; font-weight:800; }.roadmap-step-card p { margin:0; color:var(--ink-600); font-size:12px; line-height:1.8; }
html[dir="rtl"] .roadmap-track::before { left:auto; right:35px; }.roadmap-step-card:hover { transform:translateX(-4px); }

/* About / content */
.about-video-frame { overflow:hidden; aspect-ratio:16/8; border-radius:30px; background:var(--brand-950); border:1px solid var(--line); box-shadow:var(--shadow-lg); }.about-video-frame video,.about-video-frame iframe { width:100%; height:100%; object-fit:cover; border:0; }.prose-medical { color:var(--ink-600); font-size:15px; line-height:2; }.prose-medical h1,.prose-medical h2,.prose-medical h3 { color:var(--ink-950); font-weight:800; }.prose-medical a { color:var(--brand-700); text-decoration:underline; text-decoration-color:rgba(15,118,110,.35); text-underline-offset:3px; }.prose-medical img { border-radius:18px; }.prose-medical blockquote { margin:24px 0; padding:16px 20px; background:var(--brand-50); border-left:4px solid var(--brand-600); border-radius:0 14px 14px 0; }.prose-medical ul { list-style:disc; padding-left:22px; }.prose-medical ol { list-style:decimal; padding-left:22px; }
html[dir="rtl"] .prose-medical blockquote { border-left:0; border-right:4px solid var(--brand-600); border-radius:14px 0 0 14px; }

/* Auth */
.auth-stage { min-height:calc(100vh - var(--header-height)); display:grid; place-items:center; padding:48px 20px; position:relative; overflow:hidden; }.auth-stage::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 20% 10%,rgba(20,184,166,.13),transparent 26rem),radial-gradient(circle at 90% 80%,rgba(14,165,233,.10),transparent 27rem); pointer-events:none; }.auth-card { width:min(100%,980px); display:grid; grid-template-columns:.78fr 1.22fr; overflow:hidden; position:relative; border:1px solid var(--line); border-radius:30px; background:var(--surface); box-shadow:var(--shadow-lg); }.auth-visual { min-height:570px; padding:38px; display:flex; flex-direction:column; justify-content:space-between; background:linear-gradient(160deg,var(--brand-950),#0c6763); color:#fff; position:relative; overflow:hidden; }.auth-visual::after { content:""; position:absolute; width:320px; height:320px; border-radius:999px; right:-150px; bottom:-120px; border:70px solid rgba(255,255,255,.05); }.auth-visual h2 { color:#fff!important; font-size:29px; font-weight:800; line-height:1.25; }.auth-visual p { color:#cae4df!important; font-size:12px; line-height:1.9; }.auth-feature-list { display:flex; flex-direction:column; gap:10px; }.auth-feature-list span { display:flex; align-items:center; gap:9px; font-size:11px; color:#dff5f1; }.auth-feature-list i { width:28px; height:28px; display:grid; place-items:center; border-radius:9px; background:rgba(255,255,255,.1); }.auth-form-area { padding:42px; }.auth-form-area h1 { color:var(--ink-950); font-size:28px; font-weight:800; }.auth-form-area > p { color:var(--ink-500); font-size:12px; }.auth-field { margin-top:17px; }.auth-field label { display:block; margin-bottom:7px; }.auth-submit { width:100%; min-height:48px; margin-top:22px; }.auth-footnote { margin-top:20px; padding-top:18px; border-top:1px solid var(--line); color:var(--ink-500); text-align:center; font-size:11px; }

/* Language gate */
.language-gate { min-height:100vh; display:grid; grid-template-columns:1.1fr .9fr; background:var(--surface-soft); overflow:hidden; }.language-gate-visual { min-height:100vh; position:relative; background:linear-gradient(150deg,var(--brand-950),#0f7370); overflow:hidden; color:#fff; }.language-gate-visual::before { content:""; position:absolute; inset:0; opacity:.38; background:radial-gradient(circle at 24% 25%,rgba(126,229,215,.32),transparent 20rem),radial-gradient(circle at 80% 72%,rgba(14,165,233,.24),transparent 25rem); }.language-gate-route { position:absolute; inset:0; }.language-gate-route svg { width:100%; height:100%; opacity:.22; }.language-gate-copy { position:absolute; left:9%; right:9%; bottom:10%; z-index:2; }.language-gate-copy h1 { color:#fff!important; max-width:600px; font-size:clamp(38px,6vw,68px); font-weight:800; line-height:1.05; }.language-gate-copy p { max-width:520px; color:#d4e9e5!important; }.language-gate-panel { display:flex; align-items:center; justify-content:center; padding:40px; }.language-card { width:min(100%,480px); }.language-card .brand-lockup { margin-bottom:40px; }.language-card h2 { color:var(--ink-950); font-size:30px; font-weight:800; }.language-card > p { color:var(--ink-600); font-size:13px; }.language-options { display:grid; gap:10px; margin-top:25px; }.language-option { width:100%; min-height:72px; display:grid; grid-template-columns:48px 1fr auto; align-items:center; gap:13px; padding:10px 14px; border:1px solid var(--line); border-radius:17px; background:var(--surface); text-align:left; color:var(--ink-950); cursor:pointer; box-shadow:var(--shadow-xs); }.language-option:hover { border-color:var(--brand-500); transform:translateY(-2px); box-shadow:var(--shadow-sm); }.language-flag { width:44px; height:44px; border-radius:13px; display:grid; place-items:center; background:var(--surface-soft); font-size:22px; }.language-option strong { display:block; font-size:13px; }.language-option small { display:block; color:var(--ink-500); font-size:10px; margin-top:2px; }.language-option i { color:var(--brand-600); }.language-privacy { margin-top:22px; color:var(--ink-500); font-size:10px; line-height:1.7; }

/* Contact floating widget */
.contact-fab-wrap { position:fixed; z-index:170; right:24px; bottom:24px; display:flex; flex-direction:column; align-items:flex-end; gap:12px; }.contact-fab { min-height:54px; display:flex; align-items:center; gap:9px; padding:6px 16px 6px 7px; border:0; border-radius:999px; color:#fff; background:linear-gradient(135deg,var(--brand-700),var(--brand-600)); box-shadow:0 16px 38px rgba(15,118,110,.28); cursor:pointer; }.contact-fab:hover { transform:translateY(-3px); box-shadow:0 20px 44px rgba(15,118,110,.34); }.contact-fab-icon { width:42px; height:42px; border-radius:999px; display:grid; place-items:center; background:rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.15); }.contact-fab-label { font-size:11px; font-weight:800; }.contact-panel { width:min(350px,calc(100vw - 30px)); overflow:hidden; border:1px solid var(--line); border-radius:22px; background:var(--surface); box-shadow:var(--shadow-lg); transform-origin:bottom right; }.contact-panel-visual { display:grid; grid-template-columns:46px 1fr 32px; gap:11px; align-items:center; padding:16px; background:linear-gradient(145deg,var(--brand-950),var(--brand-800)); color:#fff; }.contact-pulse { width:44px; height:44px; border-radius:14px; display:grid; place-items:center; background:rgba(255,255,255,.12); position:relative; }.contact-pulse::after { content:""; position:absolute; inset:-4px; border:1px solid rgba(255,255,255,.22); border-radius:17px; animation:pulseRing 2.2s ease-out infinite; }.contact-panel-visual strong { display:block; font-size:12px; }.contact-panel-visual small { display:block; margin-top:3px; color:#bfe2dd; font-size:9px; }.contact-panel-visual .icon-button { color:#fff; border-color:rgba(255,255,255,.15); background:rgba(255,255,255,.08); }.contact-panel-links { padding:8px; }.contact-panel-links > a { display:grid; grid-template-columns:40px minmax(0,1fr); gap:10px; align-items:center; padding:9px; border-radius:13px; color:var(--ink-900)!important; }.contact-panel-links > a:hover { background:var(--surface-soft); }.contact-panel-links > a > span { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; background:var(--brand-50); color:var(--brand-700); }.contact-panel-links > a > span.whatsapp { background:#effcf6; color:#18a85b; }.contact-panel-links small { display:block; color:var(--ink-500); font-size:9px; }.contact-panel-links strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10px; margin-top:2px; }.contact-socials { display:flex; gap:6px; padding:0 16px 14px; }.contact-socials a { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:var(--surface-soft); color:var(--ink-600)!important; }.contact-socials a:hover { color:var(--brand-700)!important; transform:translateY(-2px); }.contact-panel:not(.hidden) { animation:contactIn .3s cubic-bezier(.2,.8,.3,1) both; }
html[dir="rtl"] .contact-fab-wrap { right:auto; left:24px; align-items:flex-start; }.contact-panel { transform-origin:bottom left; }
@keyframes pulseRing { 0%{opacity:.8;transform:scale(.9)} 70%,100%{opacity:0;transform:scale(1.25)} }@keyframes contactIn{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}

/* Footer */
.site-footer { position:relative; margin-top:40px; padding:92px 24px 0; overflow:hidden; background:#082f2e; color:#d8ece8; z-index:2; }.footer-wave { position:absolute; top:-1px; left:-4%; width:108%; height:70px; background:var(--surface-soft); clip-path:ellipse(56% 60% at 50% 0%); }.footer-inner { max-width:var(--content-width); margin:auto; display:grid; grid-template-columns:1.7fr repeat(4,1fr); gap:42px; padding-bottom:52px; }.brand-lockup-footer .brand-copy strong { color:#fff; }.brand-lockup-footer .brand-copy small { color:#8eb9b3; }.brand-lockup-footer .brand-plane { border-color:#082f2e; }.footer-brand p { max-width:380px; margin-top:20px; color:#96bab5!important; font-size:11px; line-height:1.9; }.footer-trust { display:flex; flex-wrap:wrap; gap:10px; margin-top:17px; }.footer-trust span { display:flex; align-items:center; gap:6px; color:#b2d1cc; font-size:9px; }.footer-trust i { color:#53cabb; }.footer-column h4 { margin:8px 0 15px; color:#fff!important; font-size:11px; font-weight:800; }.footer-column > a { display:block; width:max-content; max-width:100%; margin:9px 0; color:#96bab5!important; font-size:10px; }.footer-column > a:hover { color:#fff!important; transform:translateX(3px); }.footer-contact > a { display:flex; align-items:center; gap:8px; }.social-row { display:flex; gap:6px; margin-top:15px; }.social-row a { width:33px; height:33px; display:grid; place-items:center; border-radius:10px; background:rgba(255,255,255,.07); color:#d8ece8!important; }.social-row a:hover { background:rgba(255,255,255,.13); transform:translateY(-2px); }.footer-bottom { max-width:var(--content-width); margin:auto; min-height:58px; border-top:1px solid rgba(255,255,255,.08); display:flex; align-items:center; justify-content:space-between; gap:15px; color:#729c96; font-size:9px; }

/* Dashboard shells */
.dashboard-shell { min-height:calc(100vh - var(--header-height)); display:grid; grid-template-columns:258px minmax(0,1fr); background:var(--surface-soft); }.dashboard-sidebar { position:sticky; top:var(--header-height); height:calc(100vh - var(--header-height)); overflow:auto; padding:18px 14px 22px; background:var(--surface); border-right:1px solid var(--line); }.dashboard-sidebar-head { padding:12px 12px 17px; border-bottom:1px solid var(--line); margin-bottom:10px; }.dashboard-sidebar-head .portal-badge { width:42px; height:42px; border-radius:14px; display:grid; place-items:center; background:linear-gradient(145deg,var(--brand-100),var(--sky-100)); color:var(--brand-800); margin-bottom:11px; }.dashboard-sidebar-head strong { display:block; color:var(--ink-950); font-size:12px; }.dashboard-sidebar-head small { display:block; color:var(--ink-500); font-size:9px; margin-top:2px; }.dashboard-nav-section { margin:16px 10px 6px; color:var(--ink-500); font-size:8px; font-weight:850; text-transform:uppercase; letter-spacing:.12em; }.dashboard-nav { display:flex; flex-direction:column; gap:3px; }.dashboard-nav a, .dashboard-nav button { min-height:42px; width:100%; display:flex; align-items:center; gap:10px; padding:0 11px; border:0; border-radius:11px; background:transparent; color:var(--ink-600)!important; text-align:left; font-size:10px; font-weight:700; cursor:pointer; }.dashboard-nav a i,.dashboard-nav button i { width:20px; color:var(--ink-500); text-align:center; transition:color .2s ease; }.dashboard-nav a:hover,.dashboard-nav button:hover,.dashboard-nav a.is-current { color:var(--brand-800)!important; background:var(--brand-50); }.dashboard-nav a:hover i,.dashboard-nav a.is-current i { color:var(--brand-700); }.dashboard-content { min-width:0; padding:26px 30px 60px; overflow:hidden; }.dashboard-mobile-bar { display:none; }.dashboard-page-head { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:24px; }.dashboard-page-head h1 { margin:0; color:var(--ink-950); font-size:25px; font-weight:800; }.dashboard-page-head p { margin:5px 0 0; color:var(--ink-500); font-size:10px; }
.dashboard-content .shadow,.dashboard-content .shadow-lg { box-shadow:var(--shadow-sm)!important; }
.dashboard-content .rounded-lg,.dashboard-content .rounded-xl { border-radius:17px!important; }.dashboard-content .rounded-2xl { border-radius:21px!important; }.dashboard-content .rounded-3xl { border-radius:26px!important; }

/* Patient navigation */
.patient-portal-shell { max-width:var(--content-width); margin:0 auto; padding:28px 24px 70px; }.patient-portal-head { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; align-items:center; margin-bottom:20px; padding:21px 23px; border:1px solid var(--line); border-radius:23px; background:linear-gradient(145deg,var(--surface),var(--brand-50)); box-shadow:var(--shadow-sm); }.patient-portal-head small { color:var(--brand-700); font-size:9px; font-weight:850; text-transform:uppercase; letter-spacing:.1em; }.patient-portal-head h1 { margin:3px 0; color:var(--ink-950); font-size:22px; font-weight:800; }.patient-portal-head p { margin:0; color:var(--ink-500); font-size:10px; }.patient-portal-nav { display:flex; gap:6px; overflow-x:auto; padding:6px; margin-bottom:22px; border:1px solid var(--line); border-radius:16px; background:var(--surface); scrollbar-width:none; }.patient-portal-nav::-webkit-scrollbar{display:none}.patient-portal-nav a { flex:0 0 auto; min-height:38px; display:flex; gap:7px; align-items:center; padding:0 12px; border-radius:11px; color:var(--ink-600)!important; font-size:10px; font-weight:700; }.patient-portal-nav a i { color:var(--ink-500); }.patient-portal-nav a:hover,.patient-portal-nav a.is-current { color:var(--brand-800)!important; background:var(--brand-50); }.patient-portal-nav a:hover i,.patient-portal-nav a.is-current i { color:var(--brand-700); }

/* Pagination */
.pagination, .page-pagination { display:flex; justify-content:center; flex-wrap:wrap; gap:6px; margin-top:30px; }.pagination a,.pagination span,.page-pagination a,.page-pagination span { min-width:36px; height:36px; display:grid; place-items:center; border:1px solid var(--line); border-radius:10px; background:var(--surface); color:var(--ink-700)!important; font-size:10px; font-weight:700; }.pagination .active,.page-pagination .active { border-color:var(--brand-700); background:var(--brand-700); color:#fff!important; }

/* Reveal & micro animation */
.reveal-item { opacity:0; transform:translateY(18px); transition:opacity .65s cubic-bezier(.2,.7,.2,1),transform .65s cubic-bezier(.2,.7,.2,1); transition-delay:var(--reveal-delay,0ms); }.reveal-item.is-visible { opacity:1; transform:none; }
.hover-lift { transition:transform .25s ease,box-shadow .25s ease; }.hover-lift:hover { transform:translateY(-5px); box-shadow:var(--shadow-md); }
@keyframes softPulse { 0%,100%{opacity:.65}50%{opacity:1} }

/* Dark mode fine tuning */
[data-theme="dark"] .travel-hero::after { background:linear-gradient(to top,var(--surface-soft),transparent); }
[data-theme="dark"] .hero-trip-card-inner { background:rgba(16,32,34,.95); }
[data-theme="dark"] .hero-route-line span,[data-theme="dark"] .plan-preview-media i { background:var(--surface); }
[data-theme="dark"] .directory-card-badge { background:rgba(16,32,34,.9); }
[data-theme="dark"] .site-footer { background:#061d1d; }

/* Responsive */
@media (max-width:1160px){
    .desktop-nav{display:none}.service-grid{grid-template-columns:repeat(3,1fr)}.footer-inner{grid-template-columns:1.5fr repeat(2,1fr)}.footer-column:nth-of-type(3),.footer-column:nth-of-type(4){margin-top:12px}.directory-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:1024px){
    .hero-grid{grid-template-columns:1fr;gap:30px}.hero-trip-card{justify-self:start;width:min(100%,520px)}.hero-mini-steps{grid-template-columns:repeat(3,1fr)}.journey-feature{grid-template-columns:1fr;padding:38px}.journey-visual{min-height:300px}.plan-preview-grid{grid-template-columns:repeat(2,1fr)}.dashboard-shell{grid-template-columns:1fr}.dashboard-sidebar{position:fixed;z-index:165;top:var(--header-height);bottom:0;left:0;width:278px;height:auto;transform:translateX(-105%);transition:transform .3s ease;box-shadow:var(--shadow-lg)}html[dir="rtl"] .dashboard-sidebar{left:auto;right:0;transform:translateX(105%)}.dashboard-sidebar.is-open{transform:translateX(0)}.dashboard-mobile-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.dashboard-content{padding:22px 22px 54px}.detail-card{grid-template-columns:260px minmax(0,1fr)}
}
@media (max-width:820px){
    :root{--header-height:70px}.site-header-inner{padding:0 16px}.brand-mark{width:40px;height:40px;border-radius:14px}.brand-copy strong{font-size:12px}.brand-copy small{font-size:8px}.service-grid{grid-template-columns:repeat(2,1fr)}.stats-strip{grid-template-columns:repeat(2,1fr);margin-top:-32px}.footer-inner{grid-template-columns:1.4fr 1fr;gap:30px}.footer-brand{grid-column:1/-1}.directory-grid{grid-template-columns:repeat(2,1fr)}.filter-bar{grid-template-columns:1fr 1fr}.filter-button{grid-column:1/-1}.detail-card{grid-template-columns:1fr}.detail-aside{display:grid;grid-template-columns:180px 1fr;gap:20px;align-items:start}.language-gate{grid-template-columns:1fr}.language-gate-visual{min-height:270px}.language-gate-copy{bottom:12%}.language-gate-copy h1{font-size:40px}.language-gate-panel{padding:30px 20px 45px}.auth-card{grid-template-columns:1fr;max-width:620px}.auth-visual{min-height:auto;padding:26px}.auth-visual .auth-feature-list{display:none}.auth-form-area{padding:32px}.patient-portal-head{grid-template-columns:1fr}.roadmap-step-card:hover{transform:none}
}
@media (max-width:640px){
    body.site-body{font-size:14px}.site-header-inner{gap:10px}.header-actions{gap:6px}.user-chip{padding:4px}.user-chip>i{display:none}.brand-copy small{display:none}.page-shell,.content-shell{padding:32px 16px 58px}.public-hero{padding:52px 16px 48px}.home-section{padding:64px 16px}.hero-grid{padding:64px 16px 92px}.hero-title{font-size:42px}.hero-subtitle{font-size:15px}.hero-actions{display:grid;grid-template-columns:1fr;width:100%}.hero-actions .button{width:100%}.hero-trust-row{gap:10px 14px}.hero-trip-card{display:none}.stats-strip{margin-left:16px;margin-right:16px}.stats-item{padding:16px 10px}.stats-item strong{font-size:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:174px}.journey-feature{padding:28px 20px;border-radius:26px}.journey-visual{min-height:265px}.journey-node{width:52px;height:52px;border-radius:16px}.plan-preview-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr 1fr;gap:28px 20px}.footer-brand{grid-column:1/-1}.footer-contact{grid-column:1/-1}.footer-bottom{flex-direction:column;align-items:flex-start;justify-content:center;padding:14px 0}.site-footer{padding-left:16px;padding-right:16px}.directory-grid{grid-template-columns:1fr}.directory-card-media{height:260px}.filter-bar{grid-template-columns:1fr;margin-left:16px;margin-right:16px}.filter-button{grid-column:auto}.detail-shell{padding:32px 16px 60px}.detail-aside{grid-template-columns:1fr}.detail-main{padding:24px 20px}.roadmap-shell{padding:44px 16px 64px}.roadmap-track::before{left:25px}.roadmap-step{grid-template-columns:52px minmax(0,1fr);gap:13px}.roadmap-step-number{width:52px;height:52px;border-width:5px;border-radius:17px;font-size:13px}.roadmap-step-card{padding:19px}.roadmap-step-icon{float:none;margin-bottom:12px}html[dir="rtl"] .roadmap-track::before{right:25px}.auth-stage{padding:24px 14px}.auth-card{border-radius:24px}.auth-visual{display:none}.auth-form-area{padding:28px 20px}.language-gate-visual{min-height:230px}.language-gate-copy{left:7%;right:7%;bottom:10%}.language-gate-copy h1{font-size:34px}.language-gate-copy p{font-size:11px}.language-card .brand-lockup{margin-bottom:26px}.language-card h2{font-size:25px}.contact-fab-wrap{right:14px;bottom:14px}html[dir="rtl"] .contact-fab-wrap{left:14px}.contact-fab{width:52px;height:52px;min-height:52px;padding:5px}.contact-fab-icon{width:42px;height:42px}.contact-fab-label{display:none}.dashboard-content{padding:18px 14px 45px}.dashboard-page-head{align-items:flex-start;flex-direction:column}.patient-portal-shell{padding:18px 14px 55px}.patient-portal-head{padding:18px;border-radius:19px}.flash-stack{top:82px;right:14px}html[dir="rtl"] .flash-stack{left:14px}.notification-panel{position:fixed;top:78px;right:12px!important;left:12px!important;width:auto}.footer-column> a{font-size:11px}
}

@media (prefers-reduced-motion:reduce){
    *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal-item{opacity:1;transform:none}.hero-trip-card{animation:none}
}

.table-scroll{width:100%;overflow-x:auto;border-radius:16px;-webkit-overflow-scrolling:touch}.table-scroll table{min-width:680px}

/* Legacy Tailwind utility harmonization */
.bg-blue-600{background-color:var(--brand-700)!important}.hover\:bg-blue-700:hover{background-color:var(--brand-800)!important}.text-blue-600,.text-blue-500,.text-blue-700{color:var(--brand-700)!important}.bg-blue-100,.bg-blue-50{background-color:var(--brand-50)!important}.border-blue-500,.border-blue-600{border-color:var(--brand-500)!important}.focus\:ring-blue-500:focus{--tw-ring-color:rgba(13,148,136,.28)!important}

/* Staff access management */
.access-role-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 20px}.access-role-mini{display:flex;gap:13px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.access-role-mini strong,.access-role-mini small{display:block}.access-role-mini strong{color:var(--ink);font-size:.94rem}.access-role-mini small{color:var(--muted);font-size:.76rem;margin-top:3px}.role-symbol{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;flex:none}.role-admin{background:rgba(15,118,110,.11);color:var(--brand-700)}.role-doctor{background:rgba(14,165,233,.11);color:#0284c7}.role-content{background:rgba(245,158,11,.12);color:#b45309}.staff-filter-card{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,240px) auto auto;gap:12px;align-items:center;padding:14px;margin-bottom:18px}.filter-search-field{position:relative}.filter-search-field i{position:absolute;inset-inline-start:15px;top:50%;transform:translateY(-50%);color:var(--muted)}.filter-search-field input{width:100%;height:44px;padding-inline-start:42px;padding-inline-end:14px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft);color:var(--ink);outline:none}.filter-search-field input:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px rgba(13,148,136,.11)}.staff-table-card{overflow:hidden}.card-section-heading{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--line)}.card-section-heading h2{font-size:1.04rem;color:var(--ink);margin:0}.card-section-heading p{margin:4px 0 0;color:var(--muted);font-size:.8rem}.staff-identity{display:flex;gap:12px;align-items:center;min-width:220px}.staff-avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--brand-600),#0ea5e9);color:white;font-weight:800;box-shadow:0 7px 18px rgba(13,148,136,.16);flex:none}.staff-identity strong,.staff-identity span,.staff-identity small{display:block}.staff-identity strong{color:var(--ink)}.staff-identity span{font-size:.8rem;color:var(--muted);margin-top:2px}.staff-identity small{font-size:.7rem;color:var(--muted);margin-top:1px}.access-badge,.status-pill{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;border-radius:999px;font-size:.75rem;font-weight:750;padding:7px 10px}.access-admin{background:rgba(15,118,110,.1);color:var(--brand-800)}.access-doctor{background:rgba(14,165,233,.11);color:#0369a1}.access-content{background:rgba(245,158,11,.12);color:#92400e}.access-patient{background:rgba(99,102,241,.1);color:#4f46e5}.access-none{background:var(--surface-soft);color:var(--muted)}.status-pill span{width:7px;height:7px;border-radius:50%;background:currentColor}.status-live{background:rgba(16,185,129,.1);color:#047857}.status-off{background:rgba(239,68,68,.1);color:#b91c1c}.table-action-head,.table-action-cell{text-align:end!important}.icon-action{width:36px;height:36px;border:1px solid var(--line);border-radius:11px;display:inline-grid;place-items:center;color:var(--brand-700);background:var(--surface);transition:.2s ease}.icon-action:hover{transform:translateY(-2px);border-color:var(--brand-300);box-shadow:var(--shadow-sm)}.table-muted{color:var(--muted);white-space:nowrap}.pagination-wrap{padding:16px 20px;border-top:1px solid var(--line);display:flex;gap:7px;justify-content:center;align-items:center}.page-link{width:36px;height:36px;border:1px solid var(--line);border-radius:11px;display:grid;place-items:center;color:var(--muted);background:var(--surface)}.page-link.active,.page-link:hover{background:var(--brand-700);border-color:var(--brand-700);color:white}.page-gap{color:var(--muted)}
@media(max-width:900px){.access-role-strip{grid-template-columns:1fr}.staff-filter-card{grid-template-columns:1fr 1fr}.staff-filter-card .filter-search-field{grid-column:1/-1}}
@media(max-width:600px){.staff-filter-card{grid-template-columns:1fr}.staff-filter-card .filter-search-field{grid-column:auto}.access-role-mini{padding:13px}.card-section-heading{padding:17px}.staff-table-card{margin-inline:-2px}.modern-table th,.modern-table td{padding:13px 14px}}

/* Stage 5 — restored proof + popular treatments, adapted to the Shafagate system */
.popular-treatment-section{
    position:relative;
    overflow:hidden;
    padding:82px 24px 88px;
    background:
        radial-gradient(circle at 12% 10%,rgba(45,212,191,.12),transparent 27%),
        radial-gradient(circle at 88% 90%,rgba(56,189,248,.12),transparent 28%),
        linear-gradient(145deg,#071d2a,#0a2633 48%,#082b2d);
    color:#fff;
}
.popular-treatment-section::before{
    content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;
    background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
    background-size:32px 32px;
}
.popular-treatment-section .home-section-inner{position:relative;z-index:1}
.popular-section-head{text-align:center;max-width:760px;margin:0 auto 34px}
.popular-eyebrow{color:#79e2d4!important}
.popular-section-head h2{margin:11px 0 10px;font-size:clamp(27px,3vw,42px);line-height:1.25;font-weight:850;color:#fff}
.popular-section-head p{margin:0;color:#a9c9ce;font-size:13px;line-height:1.9}
.popular-treatment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.popular-treatment-card{
    min-height:250px;display:flex;flex-direction:column;padding:27px;border:1px solid rgba(174,224,225,.18);border-radius:24px;
    background:linear-gradient(155deg,rgba(255,255,255,.075),rgba(255,255,255,.035));color:#fff!important;
    box-shadow:0 22px 50px rgba(0,0,0,.14);backdrop-filter:blur(12px);transition:transform .28s ease,border-color .28s ease,background .28s ease;
}
.popular-treatment-card:hover{transform:translateY(-7px);border-color:rgba(102,226,211,.5);background:linear-gradient(155deg,rgba(255,255,255,.11),rgba(255,255,255,.05))}
.popular-treatment-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:rgba(45,212,191,.13);color:#6ee7d6;font-size:20px;border:1px solid rgba(110,231,214,.16)}
.popular-treatment-card h3{margin:21px 0 8px;font-size:18px;font-weight:850;color:#fff}
.popular-treatment-card p{margin:0;color:#a8c5ca;font-size:11px;line-height:1.9}
.popular-treatment-link{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:22px;color:#72e1d2;font-size:10px;font-weight:850}
.popular-treatment-actions{display:flex;justify-content:center;margin-top:30px}
.popular-treatment-actions .button-light{box-shadow:0 16px 38px rgba(0,0,0,.15)}

.shafagate-proof-section{padding:0;background:#071527;border-top:1px solid rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.04)}
.shafagate-proof-grid{max-width:var(--content-width);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
.proof-metric{min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 18px;position:relative}
.proof-metric:not(:last-child)::after{content:"";position:absolute;top:27%;bottom:27%;right:0;width:1px;background:rgba(255,255,255,.08)}
html[dir="rtl"] .proof-metric:not(:last-child)::after{right:auto;left:0}
.proof-metric i{font-size:34px;margin-bottom:9px;color:#39d2b9}
.proof-metric:nth-child(2) i{color:#22c991}.proof-metric:nth-child(3) i{color:#8b5cf6}.proof-metric:nth-child(4) i{color:#3b82f6}
.proof-metric strong{font-size:39px;line-height:1;font-weight:900;letter-spacing:-.03em;color:#fff}
.proof-metric:nth-child(2) strong{color:#23d19b}.proof-metric:nth-child(3) strong{color:#8b5cf6}.proof-metric:nth-child(4) strong{color:#3b82f6}
.proof-metric span{margin-top:14px;color:#9fb5c7;font-size:12px}

/* The contact panel is absolutely anchored to the FAB. Opening it must never
   participate in flex layout or move the trigger across the viewport. */
.contact-fab-wrap{display:block!important;width:max-content;max-width:calc(100vw - 28px);right:24px!important;left:auto!important;bottom:24px!important;align-items:initial!important}
.contact-panel{position:absolute;right:0;left:auto;bottom:calc(100% + 12px);transform-origin:bottom right!important}
html[dir="rtl"] .contact-fab-wrap{left:24px!important;right:auto!important}
html[dir="rtl"] .contact-panel{left:0;right:auto;transform-origin:bottom left!important}

@media (max-width:900px){
    .popular-treatment-grid{grid-template-columns:1fr}
    .popular-treatment-card{min-height:210px}
    .shafagate-proof-grid{grid-template-columns:repeat(2,1fr)}
    .proof-metric:nth-child(2)::after{display:none}
    .proof-metric:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.07)}
}
@media (max-width:640px){
    .popular-treatment-section{padding:62px 16px 66px}
    .popular-section-head h2{font-size:27px}
    .popular-treatment-card{padding:22px;border-radius:20px}
    .shafagate-proof-grid{grid-template-columns:1fr 1fr}
    .proof-metric{min-height:155px;padding:20px 10px}
    .proof-metric i{font-size:27px}.proof-metric strong{font-size:31px}.proof-metric span{font-size:10px}
    .contact-fab-wrap{right:14px!important;bottom:14px!important}
    html[dir="rtl"] .contact-fab-wrap{left:14px!important;right:auto!important}
    .contact-panel{width:min(350px,calc(100vw - 28px))}
}

/* ========================================================================== 
   Stage 6 — UI consistency pass
   ========================================================================== */

/* Proof metrics: same soft card language as dashboard statistics */
.shafagate-proof-section{
    padding:54px 24px!important;
    background:linear-gradient(180deg,var(--surface-soft),color-mix(in srgb,var(--brand-50) 34%,var(--surface-soft)))!important;
    border:0!important;
}
.shafagate-proof-grid{
    max-width:var(--content-width)!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    overflow:hidden;
    border:1px solid var(--line)!important;
    border-radius:27px!important;
    background:var(--surface)!important;
    box-shadow:0 18px 55px rgba(17,75,72,.08)!important;
}
.proof-metric{
    min-height:130px!important;
    padding:25px 18px!important;
    background:var(--surface)!important;
}
.proof-metric:not(:last-child)::after{
    top:18%!important;
    bottom:18%!important;
    background:var(--line)!important;
}
.proof-metric i{display:none!important}
.proof-metric strong,
.proof-metric:nth-child(2) strong,
.proof-metric:nth-child(3) strong,
.proof-metric:nth-child(4) strong{
    color:var(--brand-800)!important;
    font-size:30px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:-.035em!important;
}
.proof-metric span{
    margin-top:13px!important;
    color:var(--ink-500)!important;
    font-size:11px!important;
    font-weight:650!important;
}

/* Custom language picker — no native browser dropdown */
.language-picker{position:relative;z-index:165}
.language-picker-trigger{
    height:42px;min-width:116px;padding:0 12px;display:flex;align-items:center;gap:9px;
    border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink-700);
    box-shadow:var(--shadow-xs);font-size:12px;font-weight:750;cursor:pointer;transition:.2s ease;
}
.language-picker-trigger:hover,.language-picker-trigger[aria-expanded="true"]{border-color:var(--brand-400);box-shadow:0 8px 22px rgba(17,75,72,.09);color:var(--brand-800)}
.language-picker-trigger > span{flex:1;text-align:start;white-space:nowrap}
.language-picker-trigger > i:first-child{color:var(--brand-600)}
.language-picker-chevron{font-size:9px;transition:transform .2s ease;color:var(--ink-400)}
.language-picker-trigger[aria-expanded="true"] .language-picker-chevron{transform:rotate(180deg)}
.language-picker-menu{
    position:absolute;top:calc(100% + 9px);inset-inline-end:0;width:190px;padding:7px;
    border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface) 96%,transparent);
    box-shadow:0 24px 60px rgba(10,46,45,.16);backdrop-filter:blur(18px);transform-origin:top right;
}
html[dir="rtl"] .language-picker-menu{transform-origin:top left}
.language-option-row{
    width:100%;min-height:45px;padding:6px 9px;display:grid;grid-template-columns:32px 1fr 18px;align-items:center;gap:9px;
    border:0;border-radius:11px;background:transparent;color:var(--ink-700);font-size:12px;font-weight:700;text-align:start;cursor:pointer;
}
.language-option-row:hover{background:var(--surface-soft);color:var(--brand-800)}
.language-option-row.is-current{background:var(--brand-50);color:var(--brand-800)}
.language-code{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:var(--surface-muted);font-size:9px;letter-spacing:.06em;color:var(--ink-500)}
.language-option-row.is-current .language-code{background:var(--brand-100);color:var(--brand-800)}
.language-option-row > i{font-size:10px;color:var(--brand-600)}
.mobile-language-block{margin-top:18px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft)}
.mobile-language-title{display:flex;align-items:center;gap:8px;color:var(--ink-700);font-size:12px;font-weight:800;margin-bottom:10px}
.mobile-language-title i{color:var(--brand-700)}
.mobile-language-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.mobile-language-options button{min-height:40px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink-600);font-size:11px;font-weight:750;cursor:pointer}
.mobile-language-options button.is-current{border-color:var(--brand-400);background:var(--brand-50);color:var(--brand-800);box-shadow:0 0 0 2px rgba(20,184,166,.06)}

/* Universal controls: remove leftover browser-default form appearance */
:where(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,textarea){
    width:100%;min-height:48px!important;border:1px solid var(--line)!important;border-radius:14px!important;
    background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface-soft) 35%,var(--surface)))!important;
    color:var(--ink-900)!important;padding:11px 14px!important;outline:0!important;
    box-shadow:0 2px 0 rgba(17,75,72,.015),inset 0 1px 0 rgba(255,255,255,.4)!important;
    transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,transform .2s ease!important;
}
:where(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,textarea):hover{border-color:var(--line-strong)!important}
:where(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,textarea):focus{
    border-color:var(--brand-500)!important;background:var(--surface)!important;box-shadow:0 0 0 4px rgba(20,184,166,.095),0 8px 22px rgba(17,75,72,.045)!important
}
textarea{min-height:118px!important;line-height:1.75!important;resize:vertical}
select{
    appearance:none;-webkit-appearance:none;cursor:pointer;padding-inline-end:42px!important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m5.5 7.5 4.5 4.5 4.5-4.5' stroke='%23556f72' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
    background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:14px!important
}
html[dir="rtl"] select{background-position:left 14px center!important;padding-inline-start:42px!important;padding-inline-end:14px!important}
input[type="date"],input[type="time"]{color-scheme:light}
[data-theme="dark"] input[type="date"],[data-theme="dark"] input[type="time"]{color-scheme:dark}
input[type="date"]::-webkit-calendar-picker-indicator,input[type="time"]::-webkit-calendar-picker-indicator{opacity:.62;cursor:pointer;padding:5px;border-radius:8px}
input[type="file"]{width:100%;min-height:48px;padding:7px;border:1px dashed var(--line-strong);border-radius:14px;background:var(--surface-soft);color:var(--ink-600);font-size:11px}
input[type="file"]::file-selector-button{min-height:34px;margin-inline-end:10px;padding:0 12px;border:0;border-radius:9px;background:var(--brand-50);color:var(--brand-800);font-weight:750;cursor:pointer}
input[type="checkbox"],input[type="radio"]{width:18px;height:18px;accent-color:var(--brand-700);cursor:pointer}
label,.form-label{display:inline-block;color:var(--ink-700)!important;font-size:11px!important;font-weight:760!important;line-height:1.5}
.field-invalid{border-color:#f87171!important;box-shadow:0 0 0 3px rgba(248,113,113,.10)!important;background:var(--surface)!important}
.field-error-message{display:flex;align-items:center;gap:6px;margin-top:7px;color:#dc2626;font-size:10px;font-weight:650;line-height:1.45}
.field-error-message::before{content:"!";width:16px;height:16px;display:grid;place-items:center;flex:none;border-radius:999px;background:#fee2e2;color:#dc2626;font-size:9px;font-weight:900}
.form-error-message{margin-top:7px;color:#dc2626!important;font-size:10px!important;font-weight:650}
/* Prevent legacy validation CSS from painting fields before the user interacts. */
.form-input:invalid{border-color:var(--line)!important}
.form-input.field-invalid{border-color:#f87171!important}
.bg-red-50{background:var(--surface)!important}

/* Auth forms: more deliberate spacing and responsive field rhythm */
.auth-form-area form label{margin-bottom:7px}
.auth-form-area form .grid>div{min-width:0}
.auth-form-area input,.auth-form-area select{min-height:50px!important}
.auth-form-area .section-eyebrow{display:block;margin-bottom:2px}

/* Chat workspace */
.chat-stage{min-height:calc(100vh - var(--header-height));padding:22px 24px 30px;background:linear-gradient(180deg,var(--surface-soft),color-mix(in srgb,var(--sky-50) 38%,var(--surface-soft)))}
.chat-shell{height:calc(100vh - var(--header-height) - 52px);max-width:1180px;min-height:620px;margin:0 auto;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:27px;background:var(--surface);box-shadow:0 24px 70px rgba(17,75,72,.11)}
.chat-header{min-height:86px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,var(--brand-50))}
.chat-person{display:flex;align-items:center;gap:12px;min-width:0}
.chat-back{width:38px;height:38px;display:none;place-items:center;border:1px solid var(--line);border-radius:11px;color:var(--ink-600);background:var(--surface)}
.chat-avatar{width:49px;height:49px;display:grid;place-items:center;flex:none;border-radius:16px;background:linear-gradient(145deg,var(--brand-700),var(--sky-500));color:#fff;font-size:14px;font-weight:850;box-shadow:0 9px 24px rgba(15,118,110,.18)}
.chat-person-copy{min-width:0}.chat-kicker{display:block;color:var(--brand-700);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.chat-person-copy h1{margin:3px 0 0;color:var(--ink-950);font-size:16px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-person-copy p{height:15px;margin:2px 0 0;color:var(--success);font-size:9px;font-weight:650}
.chat-header-actions{display:flex;align-items:center;gap:9px}.chat-secure{display:flex;align-items:center;gap:6px;color:var(--ink-500);font-size:10px;font-weight:650}.chat-secure i{color:var(--brand-600)}.chat-record-link{min-height:39px!important;font-size:10px!important}
.chat-messages{flex:1;min-height:0;padding:24px 26px;overflow-y:auto;background:radial-gradient(circle at 7% 8%,rgba(20,184,166,.055),transparent 16rem),radial-gradient(circle at 95% 80%,rgba(14,165,233,.05),transparent 18rem),var(--surface-soft);scroll-behavior:smooth}
.chat-messages::-webkit-scrollbar{width:7px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink-400) 30%,transparent);border-radius:999px}
.chat-loading{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--ink-500)}.chat-loading-icon{width:42px;height:42px;display:grid;place-items:center;margin-bottom:10px;border-radius:14px;background:var(--surface);color:var(--brand-700);box-shadow:var(--shadow-xs)}.chat-loading strong{color:var(--ink-700);font-size:12px}.chat-loading small{margin-top:4px;font-size:9px}
.chat-message-row{display:flex;margin:13px 0}.chat-message-row.is-own{justify-content:flex-end}.chat-message-row.is-other{justify-content:flex-start}.chat-message-stack{max-width:min(72%,560px);display:flex;flex-direction:column}.chat-message-row.is-own .chat-message-stack{align-items:flex-end}.chat-message-row.is-other .chat-message-stack{align-items:flex-start}.chat-message-sender{margin:0 8px 5px;color:var(--ink-500);font-size:9px;font-weight:700}.chat-bubble{position:relative;padding:11px 14px;border-radius:18px;font-size:12px;line-height:1.7;box-shadow:0 8px 22px rgba(17,75,72,.055)}.chat-bubble p{margin:0}.chat-bubble-own{border-end-end-radius:6px;background:linear-gradient(145deg,var(--brand-700),var(--brand-600));color:#fff}.chat-bubble-other{border-start-start-radius:6px;border:1px solid var(--line);background:var(--surface);color:var(--ink-800)}html[dir="rtl"] .chat-bubble-own{border-end-end-radius:18px;border-end-start-radius:6px}html[dir="rtl"] .chat-bubble-other{border-start-start-radius:18px;border-start-end-radius:6px}.chat-message-meta{display:flex;align-items:center;gap:3px;margin:5px 6px 0;color:var(--ink-400);font-size:8px}.chat-message-row.is-own .chat-message-meta{justify-content:flex-end}.chat-message-meta .message-status-icon.text-blue-400{color:#2dd4bf!important}.message-menu-btn{display:flex!important;opacity:0;transition:opacity .15s ease;color:var(--ink-400)}.message-content:hover .message-menu-btn{opacity:1}.chat-bubble-own .message-menu-btn{color:rgba(255,255,255,.72)}
.chat-composer-wrap{padding:12px 14px 10px;border-top:1px solid var(--line);background:var(--surface)}.chat-composer{display:flex;align-items:flex-end;gap:7px;padding:7px;border:1px solid var(--line);border-radius:19px;background:var(--surface-soft);transition:.2s ease}.chat-composer:focus-within{border-color:var(--brand-400);box-shadow:0 0 0 4px rgba(20,184,166,.07)}.chat-input-wrap{position:relative;flex:1;min-width:0}.chat-input-wrap textarea{width:100%;min-height:42px!important;max-height:150px!important;padding:10px 8px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;resize:none!important;color:var(--ink-900)!important}.chat-tool-button,.chat-send-button{width:39px;height:39px;display:grid;place-items:center;flex:none;border:0;border-radius:12px;cursor:pointer;transition:.18s ease}.chat-tool-button{background:transparent;color:var(--ink-500)}.chat-tool-button:hover{background:var(--surface);color:var(--brand-700);box-shadow:var(--shadow-xs)}.chat-send-button{background:linear-gradient(145deg,var(--brand-700),var(--brand-600));color:#fff;box-shadow:0 8px 18px rgba(15,118,110,.18)}.chat-send-button:hover{transform:translateY(-1px);box-shadow:0 11px 23px rgba(15,118,110,.24)}.chat-composer-note{display:flex;align-items:center;gap:6px;margin:7px 7px 0;color:var(--ink-400);font-size:8px}.chat-composer-note i{color:var(--brand-500)}
.chat-emoji-picker{position:absolute;bottom:calc(100% + 13px);inset-inline-start:0;width:248px;max-height:195px;padding:10px;display:grid;grid-template-columns:repeat(6,1fr);gap:5px;overflow:auto;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-md);z-index:40}.chat-emoji-button{width:32px;height:32px;border:0;border-radius:9px;background:transparent;font-size:18px;cursor:pointer}.chat-emoji-button:hover{background:var(--surface-soft)}
.chat-recording{min-height:70px;padding:10px 14px;display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);background:var(--surface)}.chat-recording-status{display:flex;align-items:center;gap:10px;flex:1}.recording-dot{width:12px;height:12px;border-radius:999px;background:#ef4444;box-shadow:0 0 0 6px rgba(239,68,68,.10);animation:recordPulse 1.2s infinite}.chat-recording-status strong,.chat-recording-status small{display:block}.chat-recording-status strong{color:var(--ink-800);font-size:11px}.chat-recording-status small{margin-top:2px;color:var(--ink-500);font-size:8px}.recording-timer{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ink-700);font-weight:800;font-size:12px}.chat-stop-recording{min-height:39px!important;background:#fee2e2!important;color:#b91c1c!important;border-color:#fecaca!important;font-size:10px!important}@keyframes recordPulse{50%{opacity:.45;transform:scale(.88)}}
.chat-context-menu{position:fixed;z-index:1000;width:170px;padding:7px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-md)}.chat-context-menu button{width:100%;min-height:38px;display:flex;align-items:center;gap:9px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:var(--ink-700);font-size:10px;font-weight:700;text-align:start;cursor:pointer}.chat-context-menu button:hover{background:var(--surface-soft)}.chat-context-menu button i{width:17px;color:var(--brand-700)}.chat-context-menu button.danger,.chat-context-menu button.danger i{color:#dc2626}.chat-context-separator{height:1px;margin:5px;background:var(--line)}
.chat-upload-bubble{opacity:.76;overflow:hidden}.chat-upload-label{display:flex;align-items:center;gap:8px}.upload-progress-bar{height:3px!important;background:#5eead4!important}.voice-player{width:min(250px,60vw)}.voice-player .progress-bar{background:rgba(255,255,255,.25)!important}.chat-bubble-other .voice-player .progress-bar{background:var(--surface-muted)!important}.voice-player .progress{background:currentColor!important}.voice-player button{border:0;background:transparent;color:inherit;cursor:pointer}

@media(max-width:900px){
    .shafagate-proof-section{padding:36px 18px!important}.shafagate-proof-grid{grid-template-columns:repeat(2,1fr)!important}.proof-metric{min-height:112px!important}.proof-metric:nth-child(2)::after{display:none}.proof-metric:nth-child(-n+2){border-bottom:1px solid var(--line)!important}
    .chat-stage{padding:12px}.chat-shell{height:calc(100vh - var(--header-height) - 24px);min-height:560px;border-radius:20px}.chat-header{padding:11px 12px}.chat-back{display:grid}.chat-secure{display:none}.chat-messages{padding:18px 14px}.chat-message-stack{max-width:84%}
}
@media(max-width:640px){
    .shafagate-proof-section{padding:26px 14px!important}.shafagate-proof-grid{border-radius:21px!important}.proof-metric{min-height:104px!important;padding:18px 8px!important}.proof-metric strong,.proof-metric:nth-child(2) strong,.proof-metric:nth-child(3) strong,.proof-metric:nth-child(4) strong{font-size:26px!important}.proof-metric span{font-size:9px!important;margin-top:9px!important}
    .auth-stage{padding:18px 12px!important}.auth-card{border-radius:22px!important}.auth-form-area{padding:24px 18px!important}.auth-form-area input,.auth-form-area select{min-height:48px!important}
    .chat-stage{padding:0;background:var(--surface)}.chat-shell{height:calc(100dvh - var(--header-height));min-height:0;border:0;border-radius:0;box-shadow:none}.chat-header{min-height:72px}.chat-avatar{width:42px;height:42px;border-radius:13px}.chat-person-copy h1{font-size:14px}.chat-record-link{width:38px!important;min-width:38px!important;padding:0!important}.chat-record-link{font-size:0!important}.chat-record-link i{font-size:12px}.chat-messages{padding:15px 10px}.chat-message-stack{max-width:89%}.chat-bubble{padding:10px 12px}.chat-composer-wrap{padding:9px 8px calc(8px + env(safe-area-inset-bottom))}.chat-composer{gap:3px;padding:5px;border-radius:16px}.chat-tool-button,.chat-send-button{width:35px;height:35px;border-radius:10px}.chat-composer-note{display:none}.chat-emoji-picker{width:min(270px,calc(100vw - 28px));grid-template-columns:repeat(6,1fr)}.chat-recording{padding:9px}.chat-recording-status small{display:none}
}


/* Stage 6.1 — chat state visibility + message contrast hardening */
#chat-layout .hidden,
.chat-context-menu.hidden {
    display: none !important;
}

.chat-bubble-own {
    background: linear-gradient(145deg, #087f78 0%, #0b7f96 100%) !important;
    border: 1px solid rgba(255,255,255,.12);
    color: #ffffff !important;
    box-shadow: 0 10px 24px rgba(8,127,120,.18);
}
.chat-bubble-own p,
.chat-bubble-own a,
.chat-bubble-own span:not(.upload-progress-bar),
.chat-bubble-own strong,
.chat-bubble-own i:not(.message-status-icon) {
    color: #ffffff !important;
}
.chat-bubble-own a:hover {
    color: #e6fffb !important;
}
.chat-bubble-own .message-menu-btn {
    color: rgba(255,255,255,.82) !important;
}
.chat-bubble-other {
    background: #ffffff !important;
    color: var(--ink-850, #233b3a) !important;
}
.chat-bubble-other p,
.chat-bubble-other span,
.chat-bubble-other strong {
    color: inherit !important;
}

/* Recording is a real state, never a permanently visible footer row. */
.chat-recording[aria-hidden="true"] {
    display: none !important;
}
.chat-recording[aria-hidden="false"] {
    display: flex !important;
}

/* Emoji popover should exist only while explicitly opened. */
.chat-emoji-picker[aria-hidden="true"] {
    display: none !important;
}
.chat-emoji-picker[aria-hidden="false"] {
    display: grid !important;
}

/* ================================================================
   Stage 7: treatment categories, trilingual blog and journey roadmap
   ================================================================ */
.treatment-plans-hero .public-hero-inner{max-width:1080px}.treatment-category-shell{max-width:1160px}.treatment-category-heading{max-width:760px;margin-bottom:34px}.treatment-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.treatment-category-card{--cat:#0f766e;--cat-soft:#eafaf7;position:relative;min-height:238px;padding:24px;border:1px solid var(--line);border-radius:26px;background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden;color:var(--ink-950)!important;display:flex;flex-direction:column;transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease}.treatment-category-card:hover{transform:translateY(-7px);box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--cat) 28%,var(--line))}.treatment-category-glow{position:absolute;width:150px;height:150px;border-radius:999px;inset:-82px -70px auto auto;background:var(--cat-soft);transition:transform .45s ease}.treatment-category-card:hover .treatment-category-glow{transform:scale(1.35)}html[dir="rtl"] .treatment-category-glow{right:auto;left:-70px}.treatment-category-icon{position:relative;z-index:1;width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:var(--cat-soft);color:var(--cat);font-size:22px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cat) 10%,transparent)}.treatment-category-copy{position:relative;z-index:1;margin-top:25px}.treatment-category-count{font-size:9px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;color:var(--cat)}.treatment-category-copy h2{margin:7px 0 8px;color:var(--ink-950);font-size:17px;font-weight:850}.treatment-category-copy p{margin:0;color:var(--ink-600);font-size:11px;line-height:1.85}.treatment-category-arrow{position:absolute;right:22px;bottom:20px;color:var(--cat);font-size:14px;transition:transform .25s ease}html[dir="rtl"] .treatment-category-arrow{right:auto;left:22px;transform:scaleX(-1)}.treatment-category-card:hover .treatment-category-arrow{transform:translateX(5px)}html[dir="rtl"] .treatment-category-card:hover .treatment-category-arrow{transform:scaleX(-1) translateX(5px)}.treatment-tone-cardio{--cat:#dc3658;--cat-soft:#fff0f3}.treatment-tone-ortho{--cat:#2563eb;--cat-soft:#eef5ff}.treatment-tone-neuro{--cat:#7c3aed;--cat-soft:#f5f0ff}.treatment-tone-women{--cat:#c026d3;--cat-soft:#fff0fe}.treatment-tone-uro{--cat:#0891b2;--cat-soft:#ecfeff}.treatment-tone-cosmetic{--cat:#d97706;--cat-soft:#fff8e8}.treatment-tone-general{--cat:#0f766e;--cat-soft:#ebfaf7}[data-theme="dark"] .treatment-category-card{background:var(--surface)}[data-theme="dark"] .treatment-category-icon,[data-theme="dark"] .treatment-category-glow{filter:saturate(.75) brightness(.55)}.treatment-search-callout{margin-top:34px;padding:24px 26px;border-radius:26px;border:1px solid var(--line);background:linear-gradient(120deg,var(--surface),var(--brand-50));display:grid;grid-template-columns:minmax(210px,.65fr) minmax(0,1fr);align-items:center;gap:28px}.treatment-search-callout h3{margin:4px 0 0;color:var(--ink-950);font-size:19px;font-weight:850}.treatment-inline-search{height:54px;padding:5px 5px 5px 17px;border:1px solid var(--line);border-radius:18px;background:var(--surface);display:flex;align-items:center;gap:10px}.treatment-inline-search>i{color:var(--brand-600)}.treatment-inline-search input{border:0!important;box-shadow:none!important;background:transparent!important;min-width:0;flex:1;height:42px!important;padding:0!important}.treatment-inline-search .button{height:43px;min-height:43px}.treatment-results-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}.treatment-back-link{margin:0 0 18px;padding:0}.treatment-result-count{padding:9px 13px;border-radius:999px;background:var(--brand-50);color:var(--brand-800);font-size:10px;font-weight:800}.treatment-plan-media{background:linear-gradient(145deg,var(--brand-50),var(--sky-50))}.empty-state-card{grid-column:1/-1;padding:46px 28px;border:1px solid var(--line);border-radius:26px;background:var(--surface);box-shadow:var(--shadow-sm);text-align:center;color:var(--ink-600)}.empty-state-card>span{width:62px;height:62px;margin:0 auto;display:grid;place-items:center;border-radius:20px;background:var(--brand-50);color:var(--brand-700);font-size:22px}.empty-state-card h3{margin:16px 0 7px;color:var(--ink-950);font-size:18px;font-weight:850}.empty-state-card p{margin:0;font-size:11px}

/* Blog */
.blog-index-shell{max-width:1160px}.blog-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.blog-service-card{--blog:#0f766e;--blog-soft:#eafaf7;position:relative;min-height:300px;padding:25px;border:1px solid var(--line);border-radius:28px;background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden;color:var(--ink-950)!important;display:flex;flex-direction:column;transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease}.blog-service-card::before{content:"";position:absolute;width:210px;height:210px;border-radius:999px;right:-105px;top:-120px;background:var(--blog-soft);transition:transform .45s ease}html[dir="rtl"] .blog-service-card::before{right:auto;left:-105px}.blog-service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--blog) 28%,var(--line))}.blog-service-card:hover::before{transform:scale(1.2)}.blog-service-number{position:absolute;top:22px;right:25px;color:color-mix(in srgb,var(--blog) 42%,var(--ink-300));font-size:28px;font-weight:900}html[dir="rtl"] .blog-service-number{right:auto;left:25px}.blog-service-icon{position:relative;z-index:1;width:58px;height:58px;border-radius:19px;display:grid;place-items:center;background:var(--blog-soft);color:var(--blog);font-size:22px;margin-bottom:28px}.blog-service-card h2{margin:7px 0 10px;color:var(--ink-950);font-size:20px;font-weight:850}.blog-service-card p{margin:0;color:var(--ink-600);font-size:11px;line-height:1.9}.blog-service-footer{margin-top:auto;padding-top:24px;display:flex;align-items:center;justify-content:space-between;color:var(--blog);font-size:10px;font-weight:800}.blog-tone-medical{--blog:#0e7490;--blog-soft:#ecfeff}.blog-tone-hotel{--blog:#0f766e;--blog-soft:#eafaf7}.blog-tone-transfer{--blog:#15803d;--blog-soft:#effcf3}.blog-category-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.blog-category-toolbar>span{padding:8px 12px;border-radius:999px;background:var(--surface-muted);color:var(--ink-500);font-size:10px;font-weight:700}.blog-latest-block{margin-top:62px;padding-top:48px;border-top:1px solid var(--line)}.compact-heading{margin-bottom:26px}.blog-post-card .directory-card-badge{max-width:calc(100% - 28px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Animated treatment journey roadmap */
.roadmap-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:55px;align-items:center}.roadmap-hero-meter{justify-self:end;text-align:center}.roadmap-meter-ring{width:190px;height:190px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;gap:12px;box-shadow:inset 0 0 0 14px rgba(255,255,255,.025)}.roadmap-meter-ring span{font-size:22px;font-weight:850;color:#8ee8dc}.roadmap-meter-ring i{font-size:17px;color:rgba(255,255,255,.55)}.roadmap-meter-ring strong{font-size:32px;font-weight:900;color:#fff}.roadmap-hero-meter small{display:block;margin-top:10px;color:#a9d7d1;font-size:10px}.journey-roadmap{max-width:1120px;margin:auto;padding:66px 24px 92px}.roadmap-intro-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:end}.roadmap-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:370px}.roadmap-legend span{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-600);font-size:9px;font-weight:700}.roadmap-legend i{color:var(--brand-600)}.roadmap-progress-wrap{position:sticky;top:calc(var(--header-height) + 12px);z-index:15;margin:34px 0 44px;padding:13px 16px;border:1px solid var(--line);border-radius:17px;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(14px);box-shadow:var(--shadow-sm)}.roadmap-progress-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;color:var(--ink-600);font-size:9px;font-weight:750}.roadmap-progress-head strong{color:var(--brand-700);font-size:12px}.roadmap-progress-rail{height:6px;border-radius:999px;background:var(--surface-muted);overflow:hidden}.roadmap-progress-rail span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-600),var(--sky-500));transition:width .35s cubic-bezier(.2,.75,.25,1)}.journey-roadmap-track{position:relative}.journey-roadmap-line{position:absolute;top:38px;bottom:38px;left:42px;width:3px;border-radius:999px;background:var(--surface-muted);overflow:hidden}.journey-roadmap-line span{position:absolute;left:0;right:0;top:0;height:0;background:linear-gradient(var(--brand-600),var(--sky-500));transition:height .45s cubic-bezier(.2,.75,.25,1)}html[dir="rtl"] .journey-roadmap-line{left:auto;right:42px}.journey-roadmap-step{--step:#0f766e;--step-soft:#eafaf7;position:relative;display:grid;grid-template-columns:86px minmax(0,1fr);gap:22px;padding-bottom:28px;opacity:.58;transform:translateY(18px);transition:opacity .45s ease,transform .45s ease}.journey-roadmap-step.is-active,.journey-roadmap-step.is-passed{opacity:1;transform:none}.journey-step-marker{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px}.journey-step-dot{width:72px;height:72px;border-radius:24px;border:7px solid var(--surface-soft);background:var(--surface);box-shadow:0 8px 24px rgba(15,118,110,.12);display:grid;place-items:center;color:var(--step);font-size:20px;transition:background .35s ease,color .35s ease,transform .35s ease}.journey-roadmap-step.is-active .journey-step-dot,.journey-roadmap-step.is-passed .journey-step-dot{background:linear-gradient(145deg,var(--step),color-mix(in srgb,var(--step) 78%,#0ea5e9));color:#fff}.journey-roadmap-step.is-active .journey-step-dot{transform:scale(1.08);box-shadow:0 12px 30px color-mix(in srgb,var(--step) 22%,transparent)}.journey-step-marker>strong{font-size:10px;color:var(--step);font-weight:850}.journey-step-card{position:relative;padding:25px 27px;border:1px solid var(--line);border-radius:25px;background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow .3s ease,border-color .3s ease,transform .3s ease}.journey-step-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--step);opacity:.75}html[dir="rtl"] .journey-step-card::before{left:auto;right:0}.journey-roadmap-step.is-active .journey-step-card{border-color:color-mix(in srgb,var(--step) 28%,var(--line));box-shadow:var(--shadow-md);transform:translateY(-2px)}.journey-step-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.journey-step-index{color:var(--step);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.journey-phase-badge{padding:6px 9px;border-radius:999px;background:var(--step-soft);color:var(--step);font-size:8px;font-weight:800}.journey-step-content{display:grid;grid-template-columns:52px minmax(0,1fr);gap:18px;align-items:start}.journey-step-icon{width:52px;height:52px;border-radius:17px;background:var(--step-soft);color:var(--step);display:grid;place-items:center;font-size:18px}.journey-step-card h2{margin:1px 0 8px;color:var(--ink-950);font-size:18px;font-weight:850}.journey-step-card p{margin:0;color:var(--ink-600);font-size:11px;line-height:1.9}.journey-step-actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px;margin-top:15px}.journey-step-actions .service-link{margin:0;padding:0;color:var(--step)}.journey-secondary-link{display:flex;align-items:center;gap:6px;color:var(--ink-500)!important;font-size:9px;font-weight:750}.journey-secondary-link i{color:var(--step)}.roadmap-tone-start{--step:#0f766e;--step-soft:#eafaf7}.roadmap-tone-prepare{--step:#0e7490;--step-soft:#ecfeff}.roadmap-tone-medical{--step:#2563eb;--step-soft:#eff5ff}.roadmap-tone-travel{--step:#15803d;--step-soft:#effcf3}.roadmap-tone-confirm{--step:#7c3aed;--step-soft:#f5f1ff}.roadmap-tone-arrival{--step:#0284c7;--step-soft:#eff9ff}.roadmap-tone-treatment{--step:#dc3658;--step-soft:#fff0f3}.roadmap-tone-finish{--step:#0f766e;--step-soft:#eafaf7}.roadmap-finish-card{margin-top:22px;padding:30px 32px;border-radius:28px;background:linear-gradient(135deg,var(--brand-950),#0d6966);color:#fff;display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:22px;box-shadow:0 24px 55px rgba(6,78,75,.2)}.roadmap-finish-icon{width:64px;height:64px;border-radius:20px;background:rgba(255,255,255,.1);display:grid;place-items:center;font-size:23px;color:#8ee8dc}.roadmap-finish-card h3{margin:4px 0 6px;color:#fff;font-size:21px;font-weight:850}.roadmap-finish-card p{margin:0;color:#c9e2df;font-size:10px;line-height:1.8}.roadmap-finish-card .section-eyebrow{color:#8ee8dc}.roadmap-finish-card .button-light{white-space:nowrap}

@media (max-width:1024px){.treatment-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.roadmap-hero-grid{grid-template-columns:minmax(0,1fr) 200px}.roadmap-meter-ring{width:160px;height:160px}.blog-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.roadmap-intro-row{grid-template-columns:1fr}.roadmap-legend{justify-content:flex-start;max-width:none}}
@media (max-width:768px){.treatment-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.treatment-search-callout{grid-template-columns:1fr;gap:17px}.treatment-results-head{align-items:flex-start;flex-direction:column}.blog-service-grid{grid-template-columns:1fr}.blog-service-card{min-height:250px}.roadmap-hero-grid{grid-template-columns:1fr}.roadmap-hero-meter{justify-self:start}.roadmap-meter-ring{width:auto;height:auto;min-width:190px;padding:18px 22px;border-radius:24px}.journey-roadmap{padding:46px 16px 66px}.journey-roadmap-line{left:29px}.journey-roadmap-step{grid-template-columns:60px minmax(0,1fr);gap:13px}.journey-step-dot{width:54px;height:54px;border-width:5px;border-radius:18px;font-size:16px}html[dir="rtl"] .journey-roadmap-line{right:29px}.journey-step-card{padding:20px}.journey-step-content{grid-template-columns:1fr}.journey-step-icon{width:45px;height:45px}.roadmap-finish-card{grid-template-columns:52px minmax(0,1fr);padding:24px}.roadmap-finish-icon{width:52px;height:52px}.roadmap-finish-card .button{grid-column:1/-1;width:100%}.roadmap-progress-wrap{top:calc(var(--header-height) + 7px)}}
@media (max-width:520px){.treatment-category-grid{grid-template-columns:1fr}.treatment-category-card{min-height:205px}.treatment-inline-search{height:auto;display:grid;grid-template-columns:22px minmax(0,1fr);padding:10px 12px}.treatment-inline-search .button{grid-column:1/-1;width:100%;margin-top:3px}.treatment-filter-bar{margin-top:-18px}.journey-step-topline{align-items:flex-start;flex-direction:column;gap:7px}.journey-phase-badge{white-space:normal}.roadmap-legend{display:grid;grid-template-columns:1fr 1fr}.roadmap-legend span:last-child{grid-column:1/-1}.roadmap-meter-ring strong{font-size:27px}}

@media (prefers-reduced-motion:reduce){.journey-roadmap-step{opacity:1;transform:none}.journey-roadmap-line span,.roadmap-progress-rail span{transition:none}.journey-step-dot{transition:none}}

/* Stage 7.1 — cinematic center-line roadmap */
.journey-roadmap-track{position:relative;max-width:1180px;margin:48px auto 0;padding:20px 0 28px}
.journey-roadmap-axis{position:absolute;top:0;bottom:0;left:50%;width:4px;transform:translateX(-50%);border-radius:999px;background:linear-gradient(180deg,rgba(15,118,110,.08),rgba(14,116,144,.12),rgba(37,99,235,.10),rgba(124,58,237,.08));z-index:0;overflow:visible}
.journey-roadmap-axis::before{content:"";position:absolute;inset:0;border-radius:999px;box-shadow:0 0 0 1px rgba(15,118,110,.06)}
.journey-roadmap-axis-fill{position:absolute;inset:0 0 auto 0;height:0;border-radius:999px;background:linear-gradient(180deg,#0f766e 0%,#0ea5a4 28%,#2563eb 57%,#7c3aed 78%,#0f766e 100%);box-shadow:0 0 20px rgba(13,148,136,.24);will-change:height}
.journey-roadmap-traveler{position:absolute;left:50%;top:0;width:36px;height:36px;transform:translate(-50%,-50%);border-radius:999px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,var(--brand-600),var(--sky-500));border:6px solid var(--surface-soft);box-shadow:0 9px 26px rgba(15,118,110,.28);z-index:5;transition:top .16s linear}
.journey-roadmap-traveler i{font-size:11px;animation:roadmapPulse 1.8s ease-in-out infinite}
@keyframes roadmapPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.18);opacity:.76}}

.journey-roadmap-step{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr);gap:28px;align-items:center;padding:18px 0 42px;opacity:1;transform:none;min-height:220px}
.journey-roadmap-step .journey-step-marker{grid-column:2;grid-row:1;position:relative;z-index:4;display:flex;flex-direction:column;align-items:center;gap:9px;align-self:center}
.journey-roadmap-step .journey-step-card{grid-row:1;width:100%;max-width:500px;opacity:0;transition:opacity .6s ease,transform .7s cubic-bezier(.2,.75,.25,1),box-shadow .35s ease,border-color .35s ease;box-shadow:0 18px 45px rgba(15,42,47,.07)}
.journey-side-start .journey-step-card{grid-column:1;justify-self:end;transform:translateX(-44px)}
.journey-side-end .journey-step-card{grid-column:3;justify-self:start;transform:translateX(44px)}
html[dir="rtl"] .journey-side-start .journey-step-card{transform:translateX(44px)}
html[dir="rtl"] .journey-side-end .journey-step-card{transform:translateX(-44px)}
.journey-roadmap-step.is-visible .journey-step-card{opacity:1;transform:translateX(0)}
.journey-step-dot{width:78px;height:78px;border-radius:25px;border:8px solid var(--surface-soft);background:var(--surface);box-shadow:0 10px 30px rgba(15,118,110,.12);display:grid;place-items:center;color:var(--step);font-size:21px;transition:background .35s ease,color .35s ease,transform .35s ease,box-shadow .35s ease}
.journey-roadmap-step.is-reached .journey-step-dot{background:linear-gradient(145deg,var(--step),color-mix(in srgb,var(--step) 72%,#0ea5e9));color:#fff;transform:scale(1.06);box-shadow:0 13px 34px color-mix(in srgb,var(--step) 24%,transparent)}
.journey-step-marker>strong{font-size:10px;color:var(--step);font-weight:900;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px 8px;box-shadow:0 5px 15px rgba(15,42,47,.05)}
.journey-step-card{border-radius:27px;padding:25px 26px;border:1px solid var(--line);background:linear-gradient(180deg,#fff,var(--surface));overflow:hidden}
.journey-step-card::before{width:5px;opacity:.82}
.journey-roadmap-step.is-reached .journey-step-card{border-color:color-mix(in srgb,var(--step) 24%,var(--line));box-shadow:0 22px 55px color-mix(in srgb,var(--step) 9%,transparent)}
.journey-step-topline{margin-bottom:14px}
.journey-step-content{grid-template-columns:52px minmax(0,1fr);gap:17px}
.journey-step-card h2{font-size:19px;line-height:1.4}
.journey-step-card p{font-size:11px;line-height:1.95}

@media (min-width:769px){
  .journey-side-start .journey-step-card{text-align:end}
  .journey-side-start .journey-step-topline{flex-direction:row-reverse}
  .journey-side-start .journey-step-content{grid-template-columns:minmax(0,1fr) 52px}
  .journey-side-start .journey-step-content>.journey-step-icon{grid-column:2}
  .journey-side-start .journey-step-content>div{grid-column:1;grid-row:1}
  .journey-side-start .journey-step-actions{justify-content:flex-end}
  html[dir="rtl"] .journey-side-start .journey-step-card{text-align:start}
  html[dir="rtl"] .journey-side-start .journey-step-actions{justify-content:flex-start}
  html[dir="rtl"] .journey-side-end .journey-step-card{text-align:end}
  html[dir="rtl"] .journey-side-end .journey-step-actions{justify-content:flex-end}
}

@media (max-width:768px){
  .journey-roadmap-track{margin-top:30px;padding-inline-start:64px}
  html[dir="rtl"] .journey-roadmap-track{padding-inline-start:0;padding-inline-end:64px}
  .journey-roadmap-axis{left:28px;transform:none}
  html[dir="rtl"] .journey-roadmap-axis{left:auto;right:28px}
  .journey-roadmap-traveler{left:50%}
  .journey-roadmap-step{display:block;min-height:0;padding:10px 0 28px}
  .journey-roadmap-step .journey-step-marker{position:absolute;left:-64px;top:28px;width:58px}
  html[dir="rtl"] .journey-roadmap-step .journey-step-marker{left:auto;right:-64px}
  .journey-step-dot{width:54px;height:54px;border-width:5px;border-radius:18px;font-size:16px}
  .journey-roadmap-step .journey-step-card{max-width:none;transform:translateY(22px)!important}
  .journey-roadmap-step.is-visible .journey-step-card{transform:none!important}
  .journey-step-content{grid-template-columns:44px minmax(0,1fr)}
  .journey-step-icon{width:44px;height:44px;border-radius:15px}
  .journey-step-card{padding:20px}
}

@media (prefers-reduced-motion:reduce){
  .journey-roadmap-step .journey-step-card{opacity:1;transform:none!important;transition:none}
  .journey-roadmap-traveler{transition:none}
  .journey-roadmap-traveler i{animation:none}
}

/* Stage 7.2 — smoother roadmap motion + physician portrait cards */
.journey-roadmap-axis-fill{
  transition:none!important;
  will-change:height;
}
.journey-roadmap-traveler{
  transition:none!important;
  will-change:top,transform;
}
.journey-roadmap-step .journey-step-card{
  transition:opacity .82s cubic-bezier(.16,1,.3,1),transform .92s cubic-bezier(.16,1,.3,1),box-shadow .45s ease,border-color .45s ease;
}
.journey-side-start .journey-step-card{transform:translate3d(-34px,10px,0)}
.journey-side-end .journey-step-card{transform:translate3d(34px,10px,0)}
html[dir="rtl"] .journey-side-start .journey-step-card{transform:translate3d(34px,10px,0)}
html[dir="rtl"] .journey-side-end .journey-step-card{transform:translate3d(-34px,10px,0)}
.journey-roadmap-step.is-visible .journey-step-card{transform:translate3d(0,0,0)}
.journey-step-dot{transition:background .5s ease,color .5s ease,transform .62s cubic-bezier(.16,1,.3,1),box-shadow .55s ease}

.physician-directory-grid{gap:24px}
.physician-card{
  border-radius:28px;
  overflow:hidden;
  transition:transform .42s cubic-bezier(.16,1,.3,1),box-shadow .42s ease,border-color .42s ease;
}
.physician-card:hover{transform:translateY(-8px);box-shadow:0 24px 58px rgba(13,70,68,.13)}
.physician-card-media{
  height:auto;
  aspect-ratio:1.18/1;
  padding:13px;
  background:linear-gradient(145deg,var(--brand-50),var(--sky-50));
}
.physician-photo-frame{
  position:absolute;
  inset:13px;
  overflow:hidden;
  border-radius:21px;
  background:linear-gradient(145deg,#eafaf7,#eef8ff);
}
.physician-photo-frame::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:38%;
  background:linear-gradient(to top,rgba(4,47,45,.24),transparent);
  pointer-events:none;
}
.physician-photo-frame img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center 18%;
  transform:scale(1.002);
  transition:transform .7s cubic-bezier(.16,1,.3,1),filter .4s ease;
}
.physician-card:hover .physician-photo-frame img{transform:scale(1.035)}
.physician-photo-frame .fallback-icon{inset:0}
.physician-verified-badge{left:27px;bottom:27px;display:flex;align-items:center;gap:6px;max-width:calc(100% - 86px);font-size:9px}
html[dir="rtl"] .physician-verified-badge{left:auto;right:27px}
.physician-card-open{
  position:absolute;right:27px;top:27px;width:36px;height:36px;border-radius:12px;
  display:grid;place-items:center;background:rgba(255,255,255,.92);color:var(--brand-700);
  box-shadow:0 8px 22px rgba(15,42,47,.10);backdrop-filter:blur(8px);font-size:11px;
  transition:transform .35s ease,background .35s ease,color .35s ease;
}
html[dir="rtl"] .physician-card-open{right:auto;left:27px}
.physician-card:hover .physician-card-open{transform:translateY(-2px) rotate(3deg);background:var(--brand-700);color:#fff}
.physician-card-body{padding:20px 21px 22px}
.physician-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.physician-card-heading h2{font-size:18px;line-height:1.5;margin:3px 0 0}
.physician-specialty{margin:0!important;font-size:10px!important;text-transform:none;letter-spacing:0}
.physician-sub-specialty{margin:5px 0 0;color:var(--ink-500);font-size:10px;line-height:1.6}
.physician-experience-pill{flex:0 0 auto;min-width:56px;padding:8px 9px;border-radius:15px;background:var(--brand-50);color:var(--brand-800);text-align:center;border:1px solid color-mix(in srgb,var(--brand-500) 12%,var(--line))}
.physician-experience-pill strong{display:block;font-size:16px;line-height:1}
.physician-experience-pill small{display:block;margin-top:4px;font-size:7px;font-weight:750;color:var(--ink-500)}
.physician-card-meta{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);gap:9px}
.physician-card-meta span{min-width:0}
.physician-card-meta b{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.physician-profile-link{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.physician-profile-link i{transition:transform .35s ease}
.physician-card:hover .physician-profile-link i{transform:translateX(4px)}
html[dir="rtl"] .physician-card:hover .physician-profile-link i{transform:translateX(-4px)}

.physician-detail-photo{aspect-ratio:4/5;object-fit:cover;object-position:center 16%;background:var(--surface-muted)}
.physician-detail-photo-fallback{aspect-ratio:4/5;background:var(--surface);color:var(--brand-500)}

@media (max-width:768px){
  .physician-card-media{aspect-ratio:1.12/1}
  .physician-photo-frame img{object-position:center 14%}
  .journey-roadmap-step .journey-step-card{transition-duration:.72s,.82s,.4s,.4s}
}

@media (prefers-reduced-motion:reduce){
  .journey-roadmap-step .journey-step-card,.physician-card,.physician-photo-frame img,.physician-card-open{transition:none!important}
}

/* Stage 7.7 — Yoduxx design credit */
.footer-credit{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.footer-credit i{color:#53cabb}.footer-credit a{color:#d8ece8!important;font-weight:800;text-decoration:none;border-bottom:1px solid rgba(216,236,232,.35);transition:color .2s ease,border-color .2s ease}.footer-credit a:hover{color:#fff!important;border-color:#fff}.site-credit-card{display:flex;align-items:center;gap:12px;padding:15px 16px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,var(--surface),var(--surface-soft));box-shadow:0 8px 28px rgba(15,57,55,.05)}.site-credit-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--brand-50);color:var(--brand-700);flex:0 0 auto}.site-credit-card small{display:block;color:var(--ink-500);font-size:10px;margin-bottom:2px}.site-credit-card a{font-size:13px;font-weight:900;color:var(--brand-700)!important;text-decoration:none}.site-credit-card a:hover{color:var(--brand-900)!important;text-decoration:underline}.dark .site-credit-card{background:linear-gradient(135deg,var(--surface),var(--surface-soft))}
@media(max-width:720px){.footer-credit{white-space:normal}.footer-bottom{gap:8px}}

/* Stage 7.8 — treatment plan ↔ physician assignment */
.admin-physician-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-physician-option{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--surface);cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease}.admin-physician-option:hover{border-color:color-mix(in srgb,var(--brand-500) 55%,var(--line));transform:translateY(-1px);box-shadow:0 8px 24px rgba(15,57,55,.06)}.admin-physician-option input{position:absolute;opacity:0;pointer-events:none}.admin-physician-option:has(input:checked){border-color:var(--brand-500);background:var(--brand-50);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-500) 10%,transparent)}.admin-physician-option-photo{width:54px;height:64px;border-radius:14px;overflow:hidden;background:var(--surface-muted);display:grid;place-items:center;color:var(--brand-700);font-size:20px}.admin-physician-option-photo img{width:100%;height:100%;object-fit:cover;object-position:center 16%}.admin-physician-option-copy{min-width:0;display:block}.admin-physician-option-copy strong{display:block;color:var(--ink-900);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-physician-option-copy small{display:block;color:var(--ink-500);font-size:10px;line-height:1.6;margin-top:3px}.admin-physician-option-copy em{display:inline-block;margin-top:5px;padding:2px 7px;border-radius:999px;background:#fff3e7;color:#9a5a10;font-size:8px;font-style:normal;font-weight:800}.admin-physician-option-check{position:absolute;top:9px;right:9px;width:24px;height:24px;border-radius:9px;display:grid;place-items:center;border:1px solid var(--line);background:var(--surface);color:transparent;font-size:10px;transition:.2s ease}html[dir="rtl"] .admin-physician-option-check{right:auto;left:9px}.admin-physician-option:has(input:checked) .admin-physician-option-check{background:var(--brand-700);border-color:var(--brand-700);color:#fff}.admin-physician-option.is-inactive{opacity:.62}.admin-physician-picker-empty{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding:20px;border:1px dashed var(--line);border-radius:18px;color:var(--ink-500)}.admin-physician-picker-empty>i{font-size:22px;color:var(--brand-600)}.admin-physician-picker-empty strong{display:block;color:var(--ink-800)}.admin-physician-picker-empty p{font-size:10px;margin-top:3px}.plan-physician-counter{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:999px;background:var(--brand-50);color:var(--brand-800);font-size:10px;font-weight:850;border:1px solid color-mix(in srgb,var(--brand-500) 15%,var(--line))}
.plan-physician-section{padding:28px;border:1px solid var(--line);border-radius:28px;background:var(--surface);box-shadow:0 16px 44px rgba(15,57,55,.06)}.plan-physician-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}.plan-physician-section-head h2{font-size:25px;line-height:1.45;font-weight:900;color:var(--ink-900);margin-top:7px}.plan-physician-section-head p{font-size:11px;line-height:1.8;color:var(--ink-500);max-width:620px;margin-top:5px}.plan-physician-count{flex:0 0 auto;display:flex;align-items:baseline;gap:5px;padding:9px 12px;border-radius:15px;background:var(--brand-50);color:var(--brand-800);font-size:9px;font-weight:800}.plan-physician-count strong{font-size:18px}.plan-physician-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.plan-physician-card{display:grid;grid-template-columns:112px minmax(0,1fr);min-height:160px;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--surface-soft);text-decoration:none;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease,border-color .35s ease}.plan-physician-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--brand-500) 35%,var(--line));box-shadow:0 18px 38px rgba(15,57,55,.09)}.plan-physician-photo{min-height:160px;background:linear-gradient(145deg,var(--brand-50),var(--sky-50));overflow:hidden;display:grid;place-items:center;color:var(--brand-700);font-size:34px}.plan-physician-photo img{width:100%;height:100%;object-fit:cover;object-position:center 16%;transition:transform .6s cubic-bezier(.16,1,.3,1)}.plan-physician-card:hover .plan-physician-photo img{transform:scale(1.035)}.plan-physician-copy{padding:16px 15px;min-width:0}.plan-physician-copy>small{display:block;color:var(--brand-700);font-size:9px;font-weight:900}.plan-physician-copy h3{font-size:15px;font-weight:900;color:var(--ink-900);line-height:1.45;margin-top:4px}.plan-physician-copy>p{font-size:9px;color:var(--ink-500);margin-top:3px}.plan-physician-meta{display:grid;gap:5px;margin-top:12px}.plan-physician-meta span{display:flex;align-items:center;gap:6px;min-width:0;color:var(--ink-500);font-size:9px}.plan-physician-meta i{color:var(--brand-600);width:12px}.plan-physician-card .service-link{margin-top:12px;font-size:9px}.admin-plan-physician-chip{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);text-decoration:none}.admin-plan-physician-chip img,.admin-plan-physician-chip>span{width:40px;height:46px;border-radius:10px;object-fit:cover;object-position:center 16%;display:grid;place-items:center;background:var(--brand-50);color:var(--brand-700)}.admin-plan-physician-chip b{display:block;color:var(--ink-900);font-size:10px}.admin-plan-physician-chip small{display:block;color:var(--ink-500);font-size:8px;margin-top:2px}
@media(max-width:900px){.admin-physician-picker,.plan-physician-grid{grid-template-columns:1fr}.plan-physician-section-head{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.plan-physician-section{padding:18px;border-radius:22px}.plan-physician-card{grid-template-columns:92px minmax(0,1fr)}.plan-physician-photo{min-height:150px}.admin-physician-picker{gap:9px}.admin-physician-option{grid-template-columns:48px minmax(0,1fr);padding:10px}.admin-physician-option-photo{width:48px;height:58px}}

/* Stage 7.9 — physician profile video + dual Yoduxx/Yoma credit */
.physician-photo-frame video.physician-card-video{
  width:100%;height:100%;display:block;object-fit:cover;object-position:center 18%;background:var(--surface-muted)
}
.physician-photo-frame.has-video::after{z-index:1}
.physician-video-badge{
  position:absolute;z-index:2;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;
  padding:7px 10px;border-radius:999px;background:rgba(6,62,59,.82);color:#fff;font-size:9px;font-weight:850;
  backdrop-filter:blur(8px);box-shadow:0 7px 18px rgba(4,47,45,.18)
}
html[dir="rtl"] .physician-video-badge{right:auto;left:12px}
.physician-video-badge i{font-size:8px}
.physician-card:hover .physician-card-video{filter:saturate(1.03) contrast(1.01)}

.physician-video-section{margin-top:26px}
.physician-video-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.physician-video-heading>span{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:var(--brand-50);color:var(--brand-700);font-size:17px}
.physician-video-heading small{display:block;color:var(--brand-700);font-size:9px;font-weight:850;margin-bottom:2px}
.physician-video-heading h3{margin:0!important}
.physician-detail-video-frame{overflow:hidden;border-radius:24px;background:#071e22;border:1px solid var(--line);box-shadow:0 18px 42px rgba(10,60,58,.10)}
.physician-detail-video-frame video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#071e22}

.physician-admin-video-field{padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft)}
.physician-admin-video-preview{display:grid;grid-template-columns:minmax(0,320px) 1fr;gap:14px;align-items:center;margin:0 0 14px}
.physician-admin-video-preview video{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;background:#071e22}
.physician-remove-video{display:flex;align-items:center;gap:8px;color:#b42318;font-size:11px;font-weight:800;cursor:pointer}
.physician-remove-video input{accent-color:#b42318}

.footer-credit-dual{flex-wrap:wrap}.footer-credit-dual>span{display:inline-flex;align-items:center;gap:4px}.footer-credit-separator{opacity:.45}.site-credit-development{margin-top:6px!important}.site-credit-card small a{font-size:10px!important;font-weight:850!important}

@media(max-width:640px){
  .physician-admin-video-preview{grid-template-columns:1fr}
  .footer-credit-dual{justify-content:center}
  .footer-credit-separator{display:none!important}
}
@media(prefers-reduced-motion:reduce){.physician-card-video{transition:none!important}}

/* Hotfix 006: trilingual treatment subcategories */
.treatment-subcategory-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-700);font-size:12px;font-weight:800;transition:.2s ease}.treatment-subcategory-chip small{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--brand-50);color:var(--brand-800);font-size:10px}.treatment-subcategory-chip:hover,.treatment-subcategory-chip.is-active{background:var(--brand-700);border-color:var(--brand-700);color:#fff;transform:translateY(-1px)}.treatment-subcategory-chip:hover small,.treatment-subcategory-chip.is-active small{background:rgba(255,255,255,.18);color:#fff}


/* SHAFAGATE HOTFIX 001 — MOBILE PATIENT REGISTRATION */
.patient-registration-card{grid-template-columns:.65fr 1.35fr}
@media (max-width:820px){.patient-registration-card{grid-template-columns:minmax(0,1fr)!important;width:min(100%,620px)!important}.patient-registration-card .auth-form-area{grid-column:1/-1!important;width:100%!important;min-width:0!important}}
@media (max-width:640px){.patient-registration-card{width:100%!important;max-width:100%!important}.patient-registration-card .auth-form-area{width:100%!important;min-width:0!important;padding:24px 18px!important}.patient-registration-card form,.patient-registration-card form>div,.patient-registration-card form .grid{width:100%!important;min-width:0!important;max-width:100%!important}.patient-registration-card input,.patient-registration-card select{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}.patient-registration-card .button-primary{width:100%!important;justify-content:center!important}}

/* SHAFAGATE HOTFIX 008 — VISUAL REGRESSION / PUBLIC UI QA */

/* Homepage About: restore compact two-column trust section. */
.home-about-section{padding-top:58px;padding-bottom:58px}
.home-about-card{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);overflow:hidden;border:1px solid var(--line);border-radius:30px;background:var(--surface);box-shadow:0 18px 48px rgba(15,57,55,.08)}
.home-about-media{grid-column:1;position:relative;min-height:320px;overflow:hidden;background:linear-gradient(145deg,var(--brand-50),var(--sky-50))}
.home-about-media>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.home-about-fallback{position:absolute;inset:0;display:grid;place-items:center;color:var(--brand-600);font-size:68px}
.home-about-trust-badge{position:absolute;left:18px;bottom:18px;display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:13px;background:rgba(255,255,255,.94);color:var(--brand-850);font-size:10px;font-weight:850;box-shadow:0 10px 28px rgba(15,57,55,.12);backdrop-filter:blur(10px)}
.home-about-copy{grid-column:2;padding:38px 42px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0}
.home-about-copy .section-title{margin-top:8px;max-width:680px}
.home-about-copy .section-copy{margin-top:14px;max-width:680px;line-height:2;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.home-about-consultation{display:flex;align-items:flex-start;gap:10px;margin:18px 0 0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--brand-500) 18%,var(--line));border-radius:16px;background:var(--brand-50);color:var(--brand-900);font-size:11px;font-weight:750;line-height:1.8}
.home-about-consultation i{margin-top:4px;color:var(--brand-700);flex:0 0 auto}
.home-about-copy .button{margin-top:20px}
html[dir="rtl"] .home-about-media{grid-column:2}
html[dir="rtl"] .home-about-copy{grid-column:1}
html[dir="rtl"] .home-about-trust-badge{left:auto;right:18px}

/* Homepage selected physicians: restore intentional compact 3-card layout. */
.home-physician-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-physician-card .physician-card-media{height:auto}
.home-physician-card .physician-photo-frame{aspect-ratio:1.08/1}
.home-physician-card .physician-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center 14%}

/* Treatment catalog: current multilingual template uses these names. */
.treatment-category-card::before{content:"";position:absolute;width:150px;height:150px;border-radius:999px;inset:-82px -70px auto auto;background:var(--cat-soft);transition:transform .45s ease;pointer-events:none}
html[dir="rtl"] .treatment-category-card::before{right:auto;left:-70px}
.treatment-category-card:hover::before{transform:scale(1.35)}
.treatment-category-card>.treatment-category-icon,.treatment-category-card>.treatment-category-count,.treatment-category-card>h2,.treatment-category-card>p,.treatment-category-card>.service-link{position:relative;z-index:1}
.treatment-category-card>h2{margin:18px 0 8px;color:var(--ink-950);font-size:17px;font-weight:850;line-height:1.45}
.treatment-category-card>p{margin:0;color:var(--ink-650,var(--ink-600));font-size:11px;line-height:1.85}
.treatment-category-card>.service-link{margin-top:auto;padding-top:13px;color:var(--cat)}

.treatment-search-panel{margin-top:34px;padding:24px 26px;border-radius:26px;border:1px solid var(--line);background:linear-gradient(120deg,var(--surface),var(--brand-50));display:grid;grid-template-columns:minmax(210px,.65fr) minmax(0,1fr);align-items:center;gap:28px}
.treatment-search-panel h2{margin:5px 0 0;color:var(--ink-950);font-size:20px;font-weight:850}
.treatment-search-form{min-width:0;display:flex;align-items:center;gap:10px;padding:5px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.treatment-search-input{min-width:0;flex:1;display:flex;align-items:center;gap:10px;padding-inline:12px}
.treatment-search-input>i{color:var(--brand-600);flex:0 0 auto}
.treatment-search-input input{width:100%!important;min-width:0!important;height:42px!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;color:var(--ink-900)!important}
.treatment-search-form>.button{height:43px;min-height:43px;min-width:108px;justify-content:center;white-space:nowrap}
.treatment-plan-results .filter-bar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}
.treatment-plan-results .filter-bar>.button{min-width:108px;justify-content:center;white-space:nowrap}
.treatment-plan-cover{background:linear-gradient(145deg,var(--brand-50),var(--sky-50))}
.treatment-plan-cover>img{width:100%;height:100%;object-fit:cover;display:block}

/* Hotfix 003 admin presentation that was lost by a later CSS overwrite. */
.physician-featured-toggle{padding:15px;border:1px solid color-mix(in srgb,var(--brand-500) 20%,var(--line));border-radius:17px;background:var(--brand-50)}
.physician-featured-toggle input{margin-top:3px;accent-color:var(--brand-700)}
.treatment-admin-cover-preview{display:grid;grid-template-columns:180px 1fr;gap:16px;align-items:center;margin-bottom:14px}
.treatment-admin-cover-preview img{width:180px;height:110px;object-fit:cover;border-radius:15px;border:1px solid var(--line)}
.treatment-admin-cover-preview label{font-size:11px;color:#b42318;font-weight:800}

/* Hotfix 006 About-team / certificates were shipped without their visual layer. */
.hf6-about-team-section,.hf6-about-certificates{margin-top:70px;padding-top:8px}
.hf6-about-team-section .section-heading,.hf6-about-certificates .section-heading{max-width:760px;margin-bottom:26px}
.hf6-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.hf6-team-card{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-sm)}
.hf6-team-card>img,.hf6-team-placeholder{display:block;width:100%;aspect-ratio:1.18/1;object-fit:cover;background:linear-gradient(145deg,var(--brand-50),var(--sky-50))}
.hf6-team-placeholder{display:grid;place-items:center;color:var(--brand-600);font-size:42px}
.hf6-team-card>div:last-child{padding:18px 19px 20px}
.hf6-team-card h3{margin:0;color:var(--ink-950);font-size:16px;font-weight:850}
.hf6-team-card strong{display:block;margin-top:4px;color:var(--brand-700);font-size:10px;font-weight:850}
.hf6-team-card p{margin:9px 0 0;color:var(--ink-600);font-size:10px;line-height:1.85}
.hf6-certificate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.hf6-certificate-card{margin:0;padding:12px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-sm)}
.hf6-certificate-card a{display:block;overflow:hidden;border-radius:15px;background:var(--surface-soft)}
.hf6-certificate-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff}
.hf6-certificate-card figcaption{padding:11px 5px 3px;color:var(--ink-800);font-size:10px;font-weight:800;line-height:1.6}

/* Neutral three-language gate: avoid falling back to obsolete two-column Arabic layout. */
.hf6-language-gate-neutral{min-height:100vh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:34px 18px!important;background:radial-gradient(circle at 15% 10%,rgba(94,234,212,.18),transparent 24rem),radial-gradient(circle at 85% 90%,rgba(14,165,233,.13),transparent 24rem),var(--surface-soft)!important;overflow:auto!important}
.hf6-language-gate-card{width:min(100%,680px);padding:34px;border:1px solid var(--line);border-radius:30px;background:var(--surface);box-shadow:0 24px 70px rgba(15,57,55,.12)}
.hf6-language-gate-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}
.hf6-language-gate-brand>div{display:grid;gap:2px}.hf6-language-gate-brand strong{font-size:15px;color:var(--ink-950)}.hf6-language-gate-brand small{font-size:9px;color:var(--ink-500)}
.hf6-language-gate-heading{padding:22px;border-radius:22px;background:linear-gradient(135deg,var(--brand-950),#0d716c);color:#fff;text-align:center}
.hf6-language-gate-heading>i{font-size:22px;color:#8ee8dc}.hf6-language-gate-heading h1{margin:9px 0 7px;color:#fff;font-size:27px;font-weight:900}.hf6-language-gate-heading p{margin:3px 0;color:#d8ece9;font-size:15px;font-weight:700}
.hf6-language-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:18px}
.hf6-language-option{min-height:76px;padding:14px 15px;border:1px solid var(--line);border-radius:18px;background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink-900);cursor:pointer;font:inherit;box-shadow:var(--shadow-xs);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.hf6-language-option:hover{transform:translateY(-2px);border-color:var(--brand-500);box-shadow:var(--shadow-sm)}
.hf6-language-option strong{font-size:14px;font-weight:850}.hf6-language-option i{color:var(--brand-600)}

/* Keep roadmap 0 -> 100 ordering physically stable in both RTL/LTR. */
.hf6-fixed-progress{direction:ltr!important;unicode-bidi:isolate!important}

@media(max-width:900px){
  .home-about-card{grid-template-columns:1fr}
  .home-about-media,.home-about-copy,html[dir="rtl"] .home-about-media,html[dir="rtl"] .home-about-copy{grid-column:1}
  .home-about-media{min-height:270px;aspect-ratio:16/8}
  .home-physician-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hf6-team-grid,.hf6-certificate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .treatment-search-panel{grid-template-columns:1fr;gap:17px}
}
@media(max-width:640px){
  .home-about-section{padding-top:42px;padding-bottom:42px}
  .home-about-card{border-radius:24px}
  .home-about-media{min-height:220px;aspect-ratio:16/10}
  .home-about-copy{padding:25px 20px}
  .home-about-copy .button{width:100%;justify-content:center}
  .home-physician-grid,.hf6-team-grid,.hf6-certificate-grid{grid-template-columns:1fr}
  .treatment-search-panel{padding:19px;border-radius:22px}
  .treatment-search-form{display:grid;grid-template-columns:minmax(0,1fr);padding:8px}
  .treatment-search-form>.button{width:100%;min-width:0}
  .treatment-plan-results .filter-bar{grid-template-columns:1fr}
  .treatment-plan-results .filter-bar>.button{width:100%;min-width:0}
  .treatment-admin-cover-preview{grid-template-columns:1fr}.treatment-admin-cover-preview img{width:100%;height:170px}
  .hf6-language-gate-neutral{padding:18px 12px!important}
  .hf6-language-gate-card{padding:20px;border-radius:24px}
  .hf6-language-gate-heading h1{font-size:23px}
  .hf6-language-options{grid-template-columns:1fr}
  .hf6-language-option{min-height:62px}
}


/* SHAFAGATE HOTFIX 009 — HOME ABOUT LAYOUT + SETTINGS IMAGE */

/* Desktop: lock media and copy to the SAME row. The earlier regression let
   RTL auto-placement create two rows (media top-left / copy bottom-right). */
.home-about-card{
  direction:ltr!important;
  display:grid!important;
  grid-template-columns:minmax(300px,.92fr) minmax(0,1.08fr)!important;
  grid-template-rows:minmax(350px,auto)!important;
  align-items:stretch!important;
  overflow:hidden!important;
}
.home-about-media{
  grid-column:1!important;
  grid-row:1!important;
  min-height:350px!important;
  height:100%!important;
  position:relative!important;
  overflow:hidden!important;
}
.home-about-media>img{
  width:100%!important;
  height:100%!important;
  min-height:350px!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
.home-about-copy{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  min-height:350px!important;
  justify-content:center!important;
  padding:42px 46px!important;
}
html[dir="rtl"] .home-about-card{direction:ltr!important}
html[dir="rtl"] .home-about-copy{direction:rtl!important;text-align:right!important;align-items:flex-start!important}
html[dir="ltr"] .home-about-copy{direction:ltr!important;text-align:left!important;align-items:flex-start!important}
html[dir="rtl"] .home-about-trust-badge{left:18px!important;right:auto!important;direction:rtl!important}
.home-about-copy .section-copy{max-width:680px!important;line-height:1.95!important}
.home-about-consultation{width:100%!important;max-width:680px!important}

/* Admin > Settings preview for the dedicated homepage About image. */
.hf9-home-about-admin-preview{
  display:grid;
  grid-template-columns:minmax(220px,360px) 1fr;
  gap:18px;
  align-items:center;
  margin:0 0 16px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--surface-soft);
}
.hf9-home-about-admin-preview img{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  border-radius:14px;
  border:1px solid var(--line);
  background:#fff;
}

@media(max-width:900px){
  .home-about-card{
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
  }
  .home-about-media{
    grid-column:1!important;
    grid-row:1!important;
    min-height:0!important;
    height:auto!important;
    aspect-ratio:16/9!important;
  }
  .home-about-media>img{min-height:0!important;height:100%!important}
  .home-about-copy{
    grid-column:1!important;
    grid-row:2!important;
    min-height:0!important;
    padding:30px 28px!important;
  }
}
@media(max-width:640px){
  .home-about-media{aspect-ratio:4/3!important}
  .home-about-copy{padding:24px 20px!important}
  .hf9-home-about-admin-preview{grid-template-columns:1fr}
}

/* === HOTFIX 010 START === */
/* HOTFIX 010 — treatment plan admin stability + complete editor */

/* Never let public reveal animation hide the admin workspace. */
.dashboard-content > .reveal-item,
.dashboard-content > .treatment-plan-editor,
.treatment-plan-editor.reveal-item {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

.treatment-plan-editor{position:relative;opacity:1!important;transform:none!important}
.tp-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:22px}
.tp-editor-head h1{margin:4px 0 0}.tp-editor-head p{max-width:760px}
.tp-editor-form{display:grid;gap:22px}
.tp-editor-section{padding:24px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-sm)}
.tp-editor-section-head{display:flex;align-items:center;gap:14px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.tp-editor-section-head h2{margin:0;color:var(--ink-950);font-size:18px;font-weight:900}
.tp-editor-section-head p{margin:4px 0 0;color:var(--ink-600);font-size:11px;line-height:1.7}
.tp-editor-step{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:14px;background:var(--brand-50);color:var(--brand-800);font-size:11px;font-weight:900}
.tp-editor-actions{position:sticky;bottom:12px;z-index:20;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(16px);box-shadow:var(--shadow-md)}

.tp-shared-stack{display:grid;gap:22px}.tp-shared-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tp-coordinate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.tp-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tp-media-card{padding:18px;border:1px solid var(--line);border-radius:19px;background:var(--surface-soft)}
.tp-media-card-head{display:flex;align-items:center;gap:11px;margin-bottom:14px}.tp-media-card-head>i{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:var(--brand-50);color:var(--brand-700)}.tp-media-card-head strong,.tp-media-card-head small{display:block}.tp-media-card-head strong{color:var(--ink-900);font-size:13px;font-weight:850}.tp-media-card-head small{margin-top:2px;color:var(--ink-500);font-size:9px}
.tp-media-preview{height:180px;margin-bottom:12px;overflow:hidden;border-radius:14px;background:var(--surface-muted)}.tp-media-preview img{width:100%;height:100%;object-fit:cover}.tp-logo-preview{width:108px;height:108px;margin-bottom:12px;padding:10px;display:grid;place-items:center;border:1px solid var(--line);border-radius:18px;background:#fff}.tp-logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.tp-remove-media{display:flex;align-items:center;gap:7px;margin:0 0 10px;color:var(--ink-600);font-size:10px;font-weight:700}
.tp-physician-block{padding-top:20px;border-top:1px solid var(--line)}.tp-block-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.tp-block-head h3{margin:0;color:var(--ink-950);font-size:16px;font-weight:900}.tp-block-head p{margin:4px 0 0;color:var(--ink-600);font-size:10px}.tp-selected-counter{padding:7px 10px;border-radius:999px;background:var(--brand-50);color:var(--brand-800);font-size:9px;font-weight:850}
.hf6-physician-select-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hf6-physician-option{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:11px;min-height:76px;padding:11px;border:1px solid var(--line);border-radius:16px;background:var(--surface);cursor:pointer;transition:.18s ease}.hf6-physician-option:hover{border-color:var(--brand-300);transform:translateY(-1px)}.hf6-physician-option.is-selected{border-color:var(--brand-500);background:var(--brand-50);box-shadow:0 0 0 3px rgba(20,184,166,.07)}.hf6-physician-option input{position:absolute;top:9px;inset-inline-end:9px}.hf6-physician-option-media{width:52px;height:52px;display:grid;place-items:center;overflow:hidden;border-radius:14px;background:var(--surface-muted);color:var(--brand-700)}.hf6-physician-option-media img{width:100%;height:100%;object-fit:cover}.hf6-physician-option-copy{min-width:0}.hf6-physician-option-copy strong,.hf6-physician-option-copy small{display:block}.hf6-physician-option-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-900);font-size:11px;font-weight:850}.hf6-physician-option-copy small{margin-top:4px;color:var(--ink-500);font-size:8px;line-height:1.5}
.tp-active-toggle{display:inline-flex;align-items:center;gap:9px;padding:10px 13px;border-radius:12px;background:var(--brand-50);color:var(--brand-900);font-size:11px;font-weight:800}

.hf6-language-tabs{display:grid;gap:18px}.hf6-language-tab-list{position:sticky;top:calc(var(--header-height) + 10px);z-index:15;display:flex;align-items:center;gap:7px;width:max-content;max-width:100%;padding:6px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--surface) 93%,transparent);backdrop-filter:blur(12px);box-shadow:var(--shadow-xs)}
.hf6-language-tab{min-height:38px;padding:0 15px;border:0;border-radius:11px;background:transparent;color:var(--ink-600);font:inherit;font-size:11px;font-weight:800;cursor:pointer}.hf6-language-tab.is-active{background:var(--brand-700);color:#fff;box-shadow:0 7px 16px rgba(15,118,110,.17)}
.hf6-language-panel{display:none!important}.hf6-language-panel.is-active{display:block!important}.hf6-lang-heading{display:flex;align-items:center;gap:8px;margin-bottom:16px}.hf6-lang-heading strong{color:var(--ink-950);font-size:14px}.hf6-lang-heading span{color:var(--ink-500);font-size:9px}

/* Public catalog: newly-created categories/subcategories with 0 plans are intentionally visible. */
.treatment-category-card .treatment-category-count{white-space:nowrap}
.treatment-plan-card-logo{position:absolute;top:14px;inset-inline-start:14px;width:46px;height:46px;padding:6px;display:grid;place-items:center;z-index:3;border:1px solid rgba(255,255,255,.8);border-radius:14px;background:rgba(255,255,255,.92);box-shadow:0 7px 18px rgba(15,57,55,.12);backdrop-filter:blur(8px)}.treatment-plan-card-logo img{max-width:100%;max-height:100%;object-fit:contain}.treatment-detail-brand{display:flex;align-items:center;gap:14px;margin-bottom:14px}.treatment-detail-logo{width:72px;height:72px;padding:9px;display:grid;place-items:center;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(0,0,0,.12)}.treatment-detail-logo img{max-width:100%;max-height:100%;object-fit:contain}

@media(max-width:980px){.hf6-physician-select-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.tp-editor-head{flex-direction:column}.tp-editor-head .button{width:100%}.tp-editor-section{padding:17px;border-radius:19px}.tp-shared-grid,.tp-media-grid{grid-template-columns:1fr}.tp-coordinate-grid{grid-template-columns:1fr}.hf6-physician-select-grid{grid-template-columns:1fr}.hf6-language-tab-list{position:static;width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.hf6-language-tab{padding:0 8px}.tp-editor-actions{bottom:6px}.tp-editor-actions .button{flex:1}.tp-block-head{align-items:flex-start;flex-direction:column}}
/* === HOTFIX 010 END === */
