/* Approved Mineral Clinic reference structure — native PHP, no frontend framework. */
:root{--stone:#f7f5f1;--paper:#fffdfa;--ink:#213132;--teal:#0e6b6e;--teal-deep:#0a4f52;--aqua:#dcecea;--border:#dcd9d2;--ease-out:cubic-bezier(.23,1,.32,1)}
:where(.rv-review) :where(h1,h2,h3,p,figure,blockquote,dl){margin:0}
.rv-review h3{font-family:inherit;letter-spacing:0;line-height:1.4}
.rv-review h1,.rv-review h2{font-family:"DM Serif Display",Georgia,serif;font-weight:400;letter-spacing:-.05em;color:var(--ink)}
.rv-review h1 em,.rv-review h2 em{color:var(--teal);font-style:italic}
.rv-review .section-label{display:flex;align-items:center;gap:.55rem;color:var(--teal);font-size:.65rem;font-weight:700;letter-spacing:.14em;line-height:1;text-transform:uppercase}
.rv-review .label-dot{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 5px #0e6b6e1c;flex-shrink:0}
.rv-review .primary-link{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:1.02rem 1.28rem;background:var(--teal);color:white;font-size:.72rem;font-weight:700;letter-spacing:.04em;transition:transform .16s var(--ease-out),background .18s var(--ease-out)}
.rv-review .primary-link:hover{background:var(--teal-deep);transform:translateY(-2px)}
.rv-review .text-link,.rv-review .route-lined-link{display:inline-flex;align-items:center;gap:.45rem;color:var(--teal);font-size:.72rem;font-weight:700;transition:color .18s var(--ease-out),transform .18s var(--ease-out)}
.rv-review .route-lined-link{margin-top:1.8rem;padding-bottom:.5rem;border-bottom:1px solid #8eaaa3}
.rv-review .caption-line{display:inline-block;width:68px;height:1px;background:var(--teal)}
.rv-review .diagnostic-mark{position:absolute;display:grid;gap:.35rem;z-index:1}
.rv-review .diagnostic-mark span{width:27px;height:27px;border:1px solid var(--teal);border-radius:50%;background:#e2edea}
.rv-review .diagnostic-mark span:nth-child(2){transform:translateX(11px)}
.rv-review .reel-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.72rem}
.rv-review .reel-card{position:relative;min-height:240px;padding:1.1rem;display:flex;flex-direction:column;overflow:hidden;color:var(--ink);transition:transform .2s var(--ease-out)}
.rv-review .reel-card:hover{transform:translateY(-5px)}
.rv-review .reel-card.aqua{background:#d9ebe7}.rv-review .reel-card.stone{background:#e8e0d4}.rv-review .reel-card.ink{background:#758d89;color:white}.rv-review .reel-card.moss{background:#b6c6b2}.rv-review .reel-card.peach{background:#e2b49e}
.rv-review .reel-card-top{position:relative;z-index:2;display:flex;justify-content:space-between;font-size:.62rem;font-weight:700}
.rv-review .reel-contour{position:absolute;top:4rem;right:-2.3rem;width:190px;height:190px}
.rv-review .reel-contour i{position:absolute;inset:0;border:1px solid currentColor;border-radius:47% 53% 34% 66% / 46% 37% 63% 54%;opacity:.33}
.rv-review .reel-contour i:nth-child(2){inset:16px;transform:rotate(33deg)}.rv-review .reel-contour i:nth-child(3){inset:36px;transform:rotate(-20deg)}
.rv-review .reel-card-copy{position:relative;z-index:2;margin-top:auto}
.rv-review .reel-card-copy>p{font-size:.59rem;font-weight:700;opacity:.72}
.rv-review .reel-card-copy>span{display:inline-flex;gap:.3rem;margin-top:1.25rem;font-size:.61rem;font-weight:700}
/* Reference structure only. Mineral Clinic variables, typography, motifs and UI are retained. */
.rv-review { background:var(--paper); color:var(--ink); }
.rv-review :is(a,button,summary):focus-visible { outline:2px solid var(--teal); outline-offset:5px; }
.rv-review :is(button,a):active { transform:scale(.98); }
.rv-review :is(article,section,div)[id] { scroll-margin-top:145px; }
.rv-shell { width:min(100% - 9vw,1200px); margin-inline:auto; }
.rv-section { padding-block:clamp(4.5rem,7.5vw,7rem); }
.rv-review-bar { position:sticky; top:0; z-index:100; min-height:50px; padding:9px 3.5vw; background:var(--ink); color:#dcecea; display:flex; align-items:center; justify-content:space-between; gap:1rem; font-size:13px; letter-spacing:.1em; }
.rv-review-bar > span { display:flex; gap:9px; align-items:center; font-weight:700; }
.rv-review-bar small { font-size:13px; font-weight:400; letter-spacing:0; color:#b3c5c0; border-inline-start:1px solid #546967; padding-inline-start:10px; }
.rv-status-dot { width:5px; height:5px; background:#a4d7ce; border-radius:50%; }
.rv-review-bar > div { display:flex; gap:5px; align-items:center; }
.rv-review-bar a { padding:7px 13px; font-size:14px; letter-spacing:0; border:1px solid transparent; }
.rv-review-bar a.active { color:#fff; border-color:#6d938d; background:#345354; }
.rv-review-bar .rv-notes-link { color:#c0d2cc; margin-inline-start:12px; }
.rv-utility { background:#e7eeea; color:#45615b; font-size:13px; }
.rv-utility .rv-shell { display:flex; gap:1.5rem; justify-content:space-between; align-items:center; min-height:36px; }
.rv-utility :is(a,span) { display:flex; gap:6px; align-items:center; }
.rv-header { top:50px; }
.rv-header .route-header-inner { max-width:1440px; }
.rv-header .route-nav { margin-inline-start:auto; margin-inline-end:0; }
.rv-header .route-book { font-size:13px; }
.rv-header .route-language { display:block; }
.rv-mobile-menu { position:absolute; inset-inline:0; background:var(--stone); border-bottom:1px solid var(--border); padding:14px 5vw; box-shadow:0 15px 24px #21313215; }
.rv-mobile-menu a { display:flex; align-items:center; justify-content:space-between; padding:14px 0; font-size:16px; border-bottom:1px solid var(--border); }
.rv-hero { position:relative; isolation:isolate; background:var(--stone); padding-block:5rem 5.5rem; overflow:hidden; }
.rv-hero::before { position:absolute; content:""; z-index:-1; inset-inline-end:-180px; bottom:-300px; width:780px; height:780px; border-radius:50%; border:1px solid #0e6b6e17; box-shadow:inset 0 0 0 60px #0e6b6e03,inset 0 0 0 135px #0e6b6e03,inset 0 0 0 230px #0e6b6e02; }
.rv-hero-grid { display:grid; grid-template-columns:1.3fr .8fr; align-items:center; gap:6%; }
.rv-hero-copy :is(h1,h2) { margin-block:24px; font-size:clamp(3.5rem,5.8vw,5.8rem); line-height:1; letter-spacing:-.052em; max-width:780px; }
.rv-hero-copy > p { max-width:525px; font-size:16px; line-height:1.9; color:#596a67; }
.rv-actions { display:flex; flex-wrap:wrap; align-items:center; gap:1.4rem; margin-block-start:28px; }
.rv-hero-credentials { list-style:none; margin:28px 0 0; padding:0; display:grid; gap:9px; color:#526b65; font-size:13px; }
.rv-hero-credentials li { display:flex; gap:8px; align-items:flex-start; }
.rv-hero-credentials svg { flex-shrink:0; color:var(--teal); }
.rv-portrait { position:relative; width:100%; max-width:400px; justify-self:end; margin:0; padding-block-end:42px; }
.rv-portrait-frame { aspect-ratio:.72; max-height:510px; overflow:hidden; border-radius:200px 200px 8px 8px; box-shadow:16px 18px 0 var(--teal); background:var(--aqua); }
.rv-portrait-frame img { width:100%; height:100%; object-fit:cover; object-position:center 26%; }
.rv-portrait-marker { position:absolute; inset-inline-start:-22px; top:45px; padding:15px; display:flex; align-items:center; gap:9px; background:var(--paper); color:var(--teal); font-size:13px; }
.rv-portrait figcaption { display:flex; align-items:center; gap:12px; margin-block-start:27px; font-size:13px; }
.rv-portrait figcaption div { display:grid; gap:4px; }
.rv-portrait figcaption strong { font-size:15px; }
.rv-portrait figcaption span:not(.caption-line) { color:#667671; }
.rv-compact-title { font-family:"DM Serif Display",serif; font-weight:400; font-size:36px; letter-spacing:-.04em; margin-bottom:27px; }
.rv-care { background:var(--paper); padding-block:3rem 5rem; }
.rv-care-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.rv-care-card { border:1px solid var(--border); background:var(--stone); transition:transform .2s var(--ease-out); }
.rv-care-card:hover { transform:translateY(-5px); }
.rv-care-media { position:relative; height:175px; overflow:hidden; }
.rv-care-media img { height:100%; width:100%; object-fit:cover; object-position:center 36%; }
.rv-care-media > span { position:absolute; top:12px; inset-inline-start:12px; width:28px; height:28px; display:grid; place-items:center; font-size:13px; color:var(--teal); background:var(--paper); }
.rv-care-copy { padding:20px; display:grid; grid-template-columns:1fr 18px; gap:8px; }
.rv-care-copy h3 { font-size:19px; font-family:"DM Serif Display",serif; font-weight:400; letter-spacing:-.02em; }
.rv-care-copy svg { color:var(--teal); align-self:center; }
.rv-care-copy p { grid-column:1/-1; color:#63726d; font-size:13px; line-height:1.7; }
.rv-doctor { background:#e2edea; }
.rv-doctor-grid { display:grid; grid-template-columns:.75fr 1fr; gap:8%; align-items:center; }
.rv-doctor-visual { position:relative; margin:0; }
.rv-doctor-visual > img { width:100%; height:565px; object-fit:cover; object-position:center; border-radius:180px 180px 6px 6px; }
.rv-doctor-visual figcaption { position:absolute; bottom:30px; inset-inline-end:-15px; background:var(--teal); color:var(--paper); padding:13px 17px; font-size:13px; }
.rv-doctor-visual .diagnostic-mark { top:65px; left:auto; inset-inline-start:-14px; }
.rv-heading { display:grid; grid-template-columns:1fr .55fr; align-items:end; gap:8%; margin-block-end:40px; }
.rv-heading :is(h1,h2),.rv-treatment-notes h2 { font-family:"DM Serif Display",Georgia,serif; font-weight:400; font-size:clamp(2.9rem,4.5vw,4.7rem); line-height:1; letter-spacing:-.047em; margin-block-start:20px; }
.rv-heading :is(h1,h2) em,.rv-treatment-notes h2 em { color:var(--teal); font-style:italic; }
.rv-heading > p { color:#65726e; font-size:16px; line-height:1.9; max-width:375px; }
.rv-doctor-copy .rv-heading { display:block; margin-bottom:22px; }
.rv-doctor-copy > p { font-size:15px; line-height:1.9; color:#536c65; }
.rv-doctor-copy .rv-doctor-role { font-weight:700; color:var(--teal); margin-bottom:15px; }
.rv-check-list { margin:25px 0; padding:0; list-style:none; display:grid; gap:13px; font-size:14px; line-height:1.8; }
.rv-check-list li { display:flex; gap:10px; }
.rv-check-list svg { flex-shrink:0; color:var(--teal); margin-top:3px; }
.rv-research { margin-top:26px; border-top:1px solid #a8c5bd; }
.rv-research summary,.rv-stat-details summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; font-size:14px; font-weight:700; list-style:none; padding-block:17px; }
.rv-research summary::-webkit-details-marker,.rv-stat-details summary::-webkit-details-marker { display:none; }
.rv-research[open] summary svg,.rv-stat-details[open] summary svg { transform:rotate(180deg); }
.rv-research > div > div { padding:12px 0; }
.rv-research span { color:var(--teal); font-size:13px; font-weight:700; }
.rv-research p { margin-top:8px; font-size:14px; line-height:1.9; color:#566962; }
.rv-numbers { background:var(--ink); color:var(--paper); padding-block:4rem; }
.rv-numbers .section-label { color:#a4d7ce; }
.rv-numbers .rv-heading :is(h1,h2) { color:var(--paper); }
.rv-numbers .rv-heading :is(h1,h2) em { color:#a4d7ce; }
.rv-stat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:28px; }
.rv-stat-grid > div { border-inline-start:1px solid #728f8770; padding-inline-start:22px; }
.rv-stat-grid strong { font-family:"DM Serif Display",serif; font-size:clamp(38px,4.5vw,64px); font-weight:400; color:#a4d7ce; line-height:1.1; display:block; }
.rv-stat-grid p { color:#d3ded9; font-size:14px; margin-top:12px; line-height:1.7; max-width:210px; }
.rv-stat-details { border-top:1px solid #5a756c; margin-top:26px; }
.rv-stat-details summary { color:#c9dbd5; justify-content:flex-start; gap:15px; }
.rv-caption { font-size:13px; line-height:1.8; color:#6b7870; margin-top:22px; }
.rv-numbers .rv-caption { color:#a6bdb4; }
.rv-why { background:var(--paper); }
.rv-why-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--border); }
.rv-why-grid article { padding:27px 26px 27px 0; border-bottom:1px solid var(--border); }
.rv-why-grid article:not(:nth-child(3n+1)) { padding-inline-start:26px; border-inline-start:1px solid var(--border); }
.rv-why-grid article > div { display:flex; justify-content:space-between; color:var(--teal); }
.rv-why-grid article span { font-size:13px; }
.rv-why-grid h3 { font-size:17px; margin-top:24px; font-weight:600; }
.rv-why-grid p { margin-top:12px; font-size:15px; line-height:1.8; color:#63736d; max-width:305px; }
.rv-services { background:var(--stone); }
.rv-services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.rv-service-card { background:var(--paper); border:1px solid var(--border); display:flex; flex-direction:column; }
.rv-service-card figure { margin:0; position:relative; }
.rv-service-card figure img { width:100%; height:220px; object-fit:cover; }
.rv-service-card figcaption { background:var(--paper); padding:8px 15px; font-size:11px; color:#707b74; border-bottom:1px solid var(--border); }
.rv-service-copy { padding:25px; display:flex; flex:1; flex-direction:column; }
.rv-service-label { display:flex; gap:10px; font-size:11px; font-weight:600; color:var(--teal); text-transform:uppercase; letter-spacing:.04em; }
.rv-service-label > span { opacity:.6; }
.rv-service-copy h3 { font-family:"DM Serif Display",serif; font-size:30px; font-weight:400; letter-spacing:-.025em; margin-top:15px; }
.rv-service-copy > p { margin-top:13px; font-size:15px; color:#64736d; line-height:1.85; }
.rv-chips { display:flex; flex-wrap:wrap; list-style:none; padding:0; gap:6px; margin:20px 0 5px; }
.rv-chips li { padding:5px 8px; background:#eaf0ec; color:#476b62; font-size:12px; }
.rv-service-copy .route-lined-link { align-self:flex-start; margin-top:auto; padding-top:23px; font-size:13px; }
.rv-treatment-notes { display:grid; grid-template-columns:.7fr 1fr; gap:12%; margin-top:5rem; }
.rv-treatment-notes h2 { font-size:42px; }
.rv-accordion { border-top:1px solid var(--border); }
.rv-accordion [data-slot=accordion-trigger] { padding-block:20px; color:var(--ink); font-size:16px; font-weight:600; text-align:start; border-radius:0; line-height:1.7; }
.rv-accordion [data-slot=accordion-trigger]:hover { text-decoration:none; color:var(--teal); }
.rv-accordion [data-slot=accordion-content] { color:#64736d; font-size:15px; line-height:1.9; }
.rv-bullet-list { margin:14px 0 0; padding-inline-start:18px; list-style:disc; }
.rv-bullet-list li { padding-inline-start:3px; margin-block:6px; }
.rv-tech { background:var(--aqua); }
.rv-tech-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:20px; }
.rv-tech-main { background:var(--paper); padding:36px; border:1px solid #aecbc3; }
.rv-tech-main > svg { color:var(--teal); }
.rv-tech-main h3 { font-family:"DM Serif Display",serif; font-size:39px; font-weight:400; margin-top:17px; }
.rv-tech-main > span { color:var(--teal); display:block; font-size:13px; margin-top:9px; }
.rv-wavelengths { margin-top:28px; border-top:1px solid var(--border); }
.rv-wavelengths > div { display:grid; grid-template-columns:.65fr 1fr; gap:20px; padding-block:19px; border-bottom:1px solid var(--border); }
.rv-wavelengths strong { font-size:15px; line-height:1.7; font-weight:600; }
.rv-wavelengths p { color:#64736d; font-size:14px; line-height:1.8; }
.rv-tech-why { display:flex; gap:10px; margin-top:22px; font-size:14px; line-height:1.9; color:#537267; }
.rv-tech-why svg { flex-shrink:0; margin-top:3px; }
.rv-tech-secondary { display:grid; gap:20px; }
.rv-tech-secondary article { border:1px solid #a7c5bb; padding:28px; }
.rv-tech-secondary svg { color:var(--teal); }
.rv-tech-secondary h3 { margin-top:19px; font-size:19px; font-family:"DM Serif Display",serif; font-weight:400; }
.rv-tech-secondary p { color:#537267; font-size:15px; line-height:1.9; margin-top:12px; }
.rv-approach { background:var(--paper); }
.rv-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:30px; list-style:none; padding:0; margin:0; }
.rv-steps li { border-top:1px solid #b3c9c1; padding-top:22px; }
.rv-steps li > span { width:42px; height:42px; border:1px solid #9bbfb3; display:grid; place-items:center; font-size:15px; color:var(--teal); margin-bottom:27px; border-radius:50%; }
.rv-steps h3 { font-size:16px; font-weight:600; }
.rv-steps p { margin-top:12px; font-size:15px; line-height:1.85; color:#64736d; }
.rv-steps small { display:block; font-size:13px; line-height:1.7; color:var(--teal); margin-top:13px; }
.rv-philosophy { background:#eae9e2; }
.rv-philosophy-grid { display:grid; grid-template-columns:.55fr 1fr; gap:8%; align-items:center; }
.rv-philosophy-grid figure { margin:0; position:relative; padding:0 17px 17px 0; }
.rv-philosophy-grid figure::before { content:""; position:absolute; inset:17px 0 0 17px; background:var(--teal); }
.rv-philosophy-grid img { position:relative; height:410px; width:100%; object-fit:cover; }
.rv-quote-mark { color:var(--teal); margin:28px 0 20px; }
.rv-philosophy blockquote { font-family:"DM Serif Display",serif; font-size:clamp(26px,2.6vw,36px); line-height:1.4; letter-spacing:-.025em; }
.rv-quote-by { color:var(--teal); font-size:14px; margin-top:23px; }
.rv-philosophy-notes { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; margin-top:50px; }
.rv-philosophy-notes article { border-top:1px solid #b8c0b5; padding-top:22px; }
.rv-philosophy-notes h3 { font-size:16px; font-weight:600; }
.rv-philosophy-notes p,.rv-philosophy-notes li { color:#61716a; font-size:14px; line-height:1.9; }
.rv-philosophy-notes p { margin-top:13px; }
.rv-cases { background:var(--paper); }
.rv-case-list { border-top:1px solid var(--border); }
.rv-case-list [data-slot=accordion-trigger] { border-radius:0; padding-block:22px; text-align:start; font-size:17px; line-height:1.6; }
.rv-case-list [data-slot=accordion-trigger]:hover { text-decoration:none; color:var(--teal); }
.rv-case-trigger { display:flex; align-items:center; gap:25px; width:100%; }
.rv-case-trigger > span:first-child { font-size:14px; color:var(--teal); }
.rv-case-trigger small { display:block; font-size:13px; color:#6e7b72; font-weight:400; margin-top:5px; }
.rv-case-consent { display:flex; align-items:center; gap:6px; color:#6b7d74; font-size:12px; font-weight:400; margin-inline-start:auto; }
.rv-case-list dl { display:grid; grid-template-columns:1fr 1.3fr .6fr; gap:30px; padding:10px 0 5px 40px; }
.rv-case-list dt { color:var(--teal); font-size:13px; font-weight:700; margin-bottom:10px; }
.rv-case-list dd { font-size:15px; color:#64736d; line-height:1.85; margin:0; }
.rv-journal { background:#253c3d; color:var(--paper); }
.rv-journal .section-label { color:#a4d7ce; }
.rv-journal .rv-heading :is(h1,h2) { color:var(--paper); }
.rv-journal .rv-heading > p { color:#b8cdc4; }
.rv-posts { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.rv-post { border-bottom:1px solid #6f8e845c; }
.rv-post figure { margin:0; }
.rv-post img { height:215px; width:100%; object-fit:cover; }
.rv-post > div { padding:24px 0; }
.rv-post span { color:#aec9bf; font-size:12px; }
.rv-post h3 { font-family:"DM Serif Display",serif; font-size:27px; line-height:1.15; font-weight:400; letter-spacing:-.025em; margin-top:14px; }
.rv-post p { font-size:14px; line-height:1.9; color:#b7cbc2; margin-top:14px; }
.rv-post svg { margin-top:17px; color:#a4d7ce; }
.rv-journal > .rv-shell > .route-lined-link { color:#dcecea; border-color:#819f94; }
.rv-reels-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:65px; }
.rv-reels-heading h2 { font-family:"DM Serif Display",serif; font-size:32px; font-weight:400; letter-spacing:-.04em; }
.rv-reels-heading a { display:flex; gap:8px; align-items:center; font-size:14px; color:#c3d9d0; }
.rv-reels { margin-top:25px; }
.rv-reels .reel-card { min-height:240px; }
.rv-reels h3 { font-family:"DM Serif Display",serif; font-size:24px; font-weight:400; line-height:1.1; margin-top:8px; letter-spacing:-.03em; }
.rv-visit { background:var(--stone); }
.rv-visit-grid { display:grid; grid-template-columns:1.35fr .65fr; gap:24px; }
.rv-clinic { background:var(--paper); border:1px solid var(--border); padding:36px; }
.rv-branch-top { display:flex; align-items:center; gap:10px; color:var(--teal); font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.rv-visit h3 { font-size:32px; font-weight:400; font-family:"DM Serif Display",serif; margin-top:21px; letter-spacing:-.03em; }
.rv-clinic dl { margin-top:25px; }
.rv-clinic dl > div { display:grid; grid-template-columns:90px 1fr; gap:20px; border-top:1px solid var(--border); padding-block:15px; }
.rv-clinic dt { color:var(--teal); font-size:13px; font-weight:700; }
.rv-clinic dd { margin:0; color:#62746a; font-size:15px; line-height:1.8; }
.rv-hour { display:flex; justify-content:space-between; gap:15px; font-size:13px; margin-bottom:7px; }
.rv-hour strong { font-weight:500; white-space:nowrap; }
.rv-uae { background:var(--aqua); padding:36px; position:relative; overflow:hidden; }
.rv-uae > p { margin-top:18px; font-size:15px; line-height:1.9; color:#57766a; }
.rv-uae-number { display:flex; gap:9px; align-items:center; font-size:17px; margin-top:25px; color:var(--teal); }
.rv-orbit { position:relative; height:95px; overflow:hidden; margin-top:20px; }
.rv-orbit i { position:absolute; inset:0 auto auto 50%; width:140px; height:140px; border-radius:50%; border:1px solid #0e6b6e30; }
.rv-orbit i:nth-child(2) { transform:translateX(-50px); }
.rv-orbit i:nth-child(3) { transform:translateX(50px); }
.rv-uae .route-lined-link { margin-top:15px; }
.rv-faq { background:var(--paper); }
.rv-faq-grid { display:grid; grid-template-columns:.7fr 1fr; gap:12%; }
.rv-faq .rv-heading { display:block; }
.rv-cta { background:var(--teal); color:var(--paper); }
.rv-cta-grid { display:grid; grid-template-columns:1fr .6fr; gap:8%; align-items:center; }
.rv-cta .section-label { color:#a4d7ce; }
.rv-cta h2 { font-family:"DM Serif Display",serif; font-size:clamp(44px,5vw,65px); font-weight:400; letter-spacing:-.05em; margin-top:20px; }
.rv-cta blockquote { color:#d1e7dc; font-size:16px; line-height:1.9; margin-top:23px; max-width:520px; }
.rv-cta p { font-size:14px; color:#b0d4c9; margin-top:15px; }
.rv-cta-actions { display:grid; gap:14px; }
.rv-cta-actions a { display:flex; align-items:center; justify-content:center; gap:12px; padding:19px; font-size:15px; font-weight:600; border:1px solid #82b9ab; transition:background .2s var(--ease-out); }
.rv-cta-actions a:first-child { color:var(--teal); background:var(--paper); border-color:var(--paper); }
.rv-cta-actions a:hover { background:var(--teal-deep); color:white; }
.rv-footer { background:#1e3132; color:#c6d8cf; padding-block:50px 24px; }
.rv-footer-grid { display:grid; grid-template-columns:1.2fr .6fr .8fr 1fr; gap:5%; }
.rv-footer-logo { background:var(--stone); padding:15px; width:220px; max-width:100%; }
.rv-footer-logo img { width:190px; height:auto; }
.rv-footer h2 { font-size:14px; font-family:"Manrope",sans-serif; font-weight:700; color:var(--paper); margin-bottom:17px; letter-spacing:0; }
.rv-footer p { color:#a4beb3; font-size:13px; line-height:1.9; margin-top:18px; }
.rv-footer a { display:flex; align-items:center; gap:7px; font-size:13px; padding-block:6px; line-height:1.7; }
.rv-footer-bottom { display:flex; justify-content:space-between; gap:20px; color:#99b5a9; font-size:12px; line-height:1.8; border-top:1px solid #56716555; margin-top:35px; padding-top:20px; }
.rv-language-divider { position:relative; background:#cdded7; padding:70px max(4.5vw,calc((100vw - 1200px)/2)); overflow:hidden; }
.rv-language-divider > div { position:relative; z-index:1; }
.rv-language-divider span:not(.rv-divider-art) { font-size:13px; letter-spacing:.12em; color:var(--teal); font-weight:700; }
.rv-language-divider h2 { font-family:"Amiri",serif; font-size:60px; text-align:start; max-width:max-content; letter-spacing:0; margin-top:20px; line-height:1.5; }
.rv-language-divider p { font-size:16px; color:#5d776a; margin-top:10px; }
.rv-language-divider a { display:flex; align-items:center; gap:12px; font-size:15px; color:var(--teal); margin-top:25px; }
.rv-divider-art { position:absolute; inset-inline-end:9vw; top:10px; font-family:"Amiri",serif; color:#0e6b6e14; font-size:300px; line-height:1; }
.rv-review-notes { padding:70px 0 90px; background:var(--stone); }
.rv-review-notes h2 { font-size:48px; margin-top:20px; }
.rv-review-notes > .rv-shell > p { font-size:16px; line-height:1.9; color:#64736d; max-width:760px; margin-top:22px; }
.rv-review-note-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin-top:35px; }
.rv-review-note-grid article { border:1px solid var(--border); padding:24px; background:var(--paper); }
.rv-review-note-grid article > span { color:var(--teal); font-size:14px; }
.rv-review-note-grid p { font-size:15px; line-height:1.9; color:#63766b; margin-top:12px; }
.rv-review-note-grid p[lang=ar] { font-family:"Noto Kufi Arabic",sans-serif; font-size:13px; line-height:2.1; }
.rv-review-sources { display:flex; flex-wrap:wrap; gap:26px; margin-top:35px; }
.rv-review-sources a { display:flex; align-items:center; gap:7px; font-size:14px; color:var(--teal); }
.rv-mobile-bar { display:none; }
/* Arabic uses the already established Amiri display + Noto Kufi body pairing. */
.rv-ar { font-family:"Noto Kufi Arabic",sans-serif; }
.rv-ar :is(.section-label,.rv-service-label) { letter-spacing:0; text-transform:none; line-height:1.9; }
.rv-ar .route-nav a,.rv-ar .route-language,.rv-ar .route-book { font-family:inherit; font-size:14px; }
.rv-ar :is(.primary-link,.text-link,.route-lined-link) { font-family:inherit; letter-spacing:0; }
.rv-ar :is(.rv-hero-copy :is(h1,h2),.rv-heading :is(h1,h2),.rv-treatment-notes h2,.rv-compact-title,.rv-service-copy h3,.rv-care-copy h3,.rv-tech-main h3,.rv-tech-secondary h3,.rv-philosophy blockquote,.rv-post h3,.rv-reels h3,.rv-reels-heading h2,.rv-visit h3,.rv-cta h2) { font-family:"Amiri",serif; letter-spacing:0; line-height:1.35; }
.rv-ar .rv-hero-copy :is(h1,h2) { font-size:clamp(3rem,5.4vw,5.5rem); }
.rv-ar .rv-hero-copy :is(h1,h2) em,.rv-ar .rv-heading :is(h1,h2) em,.rv-ar .rv-treatment-notes h2 em { font-style:normal; }
.rv-ar .rv-hero-copy > p { font-size:16px; line-height:2.1; }
.rv-ar .rv-heading :is(h1,h2) { font-size:clamp(2.7rem,4.5vw,4.5rem); }
.rv-ar .rv-heading > p { font-size:15px; line-height:2.1; }
.rv-ar .rv-stat-grid strong { font-family:"Amiri",serif; font-size:48px; }
.rv-ar .rv-stat-grid p { font-size:14px; line-height:2; }
.rv-ar :is(.rv-doctor-copy > p,.rv-service-copy > p,.rv-tech-secondary p,.rv-steps p,.rv-philosophy-notes p,.rv-philosophy-notes li,.rv-case-list dd,.rv-post p,.rv-uae > p,.rv-accordion [data-slot=accordion-content]) { font-size:15px; line-height:2.1; }
.rv-ar .rv-why-grid h3 { font-size:17px; }
.rv-ar .rv-why-grid p { font-size:14px; line-height:2.1; }
.rv-ar .rv-portrait-frame { box-shadow:-16px 18px 0 var(--teal); }
.rv-ar .rv-portrait figcaption { line-height:1.8; }
.rv-ar .rv-care-copy h3 { font-size:25px; }
.rv-ar .rv-service-copy h3 { font-size:35px; }
.rv-ar .rv-philosophy blockquote { line-height:1.65; font-size:32px; }
.rv-ar .rv-case-list dl { padding:10px 40px 5px 0; }
.rv-ar .rv-case-trigger { font-size:18px; }
.rv-ar .rv-chips li { font-size:12px; line-height:1.8; }
.rv-ar .rv-post h3 { font-size:29px; }
.rv-ar .rv-reels .reel-card-copy > p { font-family:"Manrope",sans-serif; }
.rv-ar .rv-footer h2 { font-family:inherit; }
.rv-ar .rv-footer p,.rv-ar .rv-footer a { font-size:13px; line-height:2; }
.rv-ar .rv-footer-bottom { font-size:12px; }
.rv-ar .rv-hour { font-size:13px; }
.rv-ar svg.lucide-arrow-right { transform:scaleX(-1); }
@media (max-width:1100px) {
 .rv-header .route-nav { display:none; }
 .rv-header .route-menu-button { display:grid; }
 .rv-hero-grid { gap:5%; }
 .rv-hero-copy :is(h1,h2) { font-size:4rem; }
 .rv-header .route-actions { margin-inline-start:auto; }
 .rv-service-copy { padding:20px; }
 .rv-portrait { max-width:330px; }
 .rv-reels .reel-card { min-height:220px; }
}
@media (max-width:800px) {
 .rv-shell { width:calc(100% - 40px); }
 .rv-section { padding-block:65px; }
 .rv-review-bar { padding:8px 15px; }
 .rv-review-bar small { display:none; }
 .rv-review-bar .rv-notes-link { margin-inline-start:0; }
 .rv-utility-hours { display:none!important; }
 .rv-utility { font-size:11px; }
 .rv-header .route-book { display:none; }
 .rv-hero { padding-block:55px; }
 .rv-hero-grid { grid-template-columns:1fr; gap:45px; }
 .rv-hero-copy :is(h1,h2) { font-size:clamp(46px,9vw,65px); }
 .rv-hero-copy > p { font-size:16px; }
 .rv-portrait { justify-self:center; width:min(80%,380px); max-width:none; }
 .rv-portrait-frame { max-height:490px; }
 .rv-portrait-marker { inset-inline-start:-18px; }
 .rv-care { padding-top:36px; }
 .rv-care-grid { grid-template-columns:repeat(2,1fr); }
 .rv-care-media { height:180px; }
 .rv-doctor-grid { grid-template-columns:1fr; gap:45px; }
 .rv-doctor-visual { max-width:420px; width:90%; margin:auto; }
 .rv-doctor-visual > img { height:480px; }
 .rv-heading { grid-template-columns:1fr; gap:20px; }
 .rv-heading :is(h1,h2) { font-size:44px; }
 .rv-heading > p { max-width:550px; }
 .rv-stat-grid { grid-template-columns:repeat(2,1fr); gap:27px; }
 .rv-stat-grid strong { font-size:50px; }
 .rv-why-grid { grid-template-columns:repeat(2,1fr); }
 .rv-why-grid article { padding:25px 20px!important; border-inline-start:0!important; }
 .rv-why-grid article:nth-child(odd) { padding-inline-start:0!important; }
 .rv-why-grid article:nth-child(even) { border-inline-start:1px solid var(--border)!important; }
 .rv-services-grid { grid-template-columns:repeat(2,1fr); gap:15px; }
 .rv-service-card figure img { height:190px; }
 .rv-service-copy h3 { font-size:28px; }
 .rv-treatment-notes,.rv-faq-grid { grid-template-columns:1fr; gap:30px; }
 .rv-tech-grid { grid-template-columns:1fr; }
 .rv-tech-secondary { grid-template-columns:repeat(2,1fr); }
 .rv-steps { grid-template-columns:repeat(2,1fr); }
 .rv-philosophy-grid { grid-template-columns:1fr; gap:40px; }
 .rv-philosophy-grid figure { max-width:350px; width:85%; margin:auto; }
 .rv-philosophy-notes { grid-template-columns:1fr; gap:25px; }
 .rv-case-consent { display:none; }
 .rv-case-list dl { grid-template-columns:1fr; gap:22px; }
 .rv-posts { grid-template-columns:1fr; gap:25px; }
 .rv-post { display:grid; grid-template-columns:.6fr 1fr; gap:24px; }
 .rv-post img { height:100%; min-height:200px; }
 .rv-post > div { padding-top:0; }
 .rv-visit-grid { grid-template-columns:1fr; }
 .rv-uae .rv-orbit { display:none; }
 .rv-cta-grid { grid-template-columns:1fr; gap:35px; }
 .rv-footer-grid { grid-template-columns:1fr 1fr; gap:35px; }
 .rv-footer-bottom { display:grid; gap:7px; }
 .rv-language-divider { padding:60px 25px; }
 .rv-language-divider h2 { font-size:45px; }
 .rv-review-note-grid { grid-template-columns:1fr; }
 .rv-ar .rv-hero-copy :is(h1,h2) { font-size:clamp(45px,8vw,60px); }
 .rv-ar .rv-heading :is(h1,h2) { font-size:43px; }
 .rv-mobile-bar { position:fixed; inset: auto 0 0; z-index:110; background:var(--paper); border-top:1px solid #b5c9c0; display:grid; grid-template-columns:.6fr .85fr 1.35fr; padding-bottom:env(safe-area-inset-bottom); box-shadow:0 -6px 20px #2131320a; }
 .rv-mobile-bar a { display:flex; align-items:center; justify-content:center; gap:8px; font-size:14px; min-height:55px; padding:10px 6px; }
 .rv-mobile-bar a:last-child { background:var(--teal); color:var(--paper); }
 .rv-review { padding-bottom:55px; }
}
@media (max-width:500px) {
 .rv-review-bar > span { font-size:11px; letter-spacing:.08em; gap:6px; }
 .rv-review-bar a { font-size:13px; padding:7px 9px; }
 .rv-review-bar .rv-notes-link { font-size:12px; }
 .rv-utility .rv-shell > a:first-child { max-width:200px; }
 .rv-utility .rv-shell { gap:10px; }
 .rv-header .route-header-inner { min-height:70px; }
 .rv-header .route-actions { gap:14px; }
 .rv-header .route-brand img { width:145px; }
 .rv-header .route-language { font-size:13px; }
 .rv-hero-copy :is(h1,h2) { font-size:47px; }
 .rv-hero-copy .section-label { font-size:12px; letter-spacing:.08em; line-height:1.7; }
 .rv-actions { gap:17px; }
 .rv-hero-credentials { font-size:12px; line-height:1.8; }
 .rv-portrait { width:85%; }
 .rv-portrait-frame { aspect-ratio:.7; }
 .rv-portrait-marker { font-size:12px; padding:12px; }
 .rv-portrait figcaption { font-size:11px; }
 .rv-portrait figcaption .caption-line { width:30px; }
 .rv-compact-title { font-size:30px; }
 .rv-care-grid { gap:10px; }
 .rv-care-media { height:145px; }
 .rv-care-copy { padding:14px 11px; }
 .rv-care-copy h3 { font-size:19px; }
 .rv-care-copy p { font-size:12px; }
 .rv-care-copy svg { width:14px; }
 .rv-doctor-visual > img { height:420px; }
 .rv-heading :is(h1,h2) { font-size:40px; }
 .rv-why-grid h3 { font-size:16px; }
 .rv-why-grid p { font-size:14px; }
 .rv-services-grid { grid-template-columns:1fr; gap:25px; }
 .rv-service-card figure img { height:235px; }
 .rv-service-copy { padding:25px; }
 .rv-tech-main { padding:25px; }
 .rv-tech-secondary { grid-template-columns:1fr; }
 .rv-wavelengths > div { grid-template-columns:1fr; gap:8px; }
 .rv-steps { gap:25px; }
 .rv-steps h3 { font-size:15px; }
 .rv-steps p { font-size:14px; }
 .rv-case-trigger { gap:15px; font-size:16px; }
 .rv-case-list dl { padding-inline-start:27px; }
 .rv-post { grid-template-columns:1fr; gap:20px; }
 .rv-post img { height:220px; min-height:0; }
 .rv-post h3 { font-size:29px; }
 .rv-reels-heading { display:block; }
 .rv-reels-heading a { margin-top:15px; }
 .rv-reels { grid-template-columns:repeat(2,1fr); }
 .rv-reels .reel-card:nth-child(5) { grid-column:span 2; min-height:170px; }
 .rv-reels .reel-card { min-height:215px; }
 .rv-reels h3 { font-size:23px; }
 .rv-clinic,.rv-uae { padding:25px; }
 .rv-visit h3 { font-size:30px; }
 .rv-clinic dl > div { grid-template-columns:1fr; gap:8px; }
 .rv-hour { font-size:12px; }
 .rv-footer-grid { grid-template-columns:repeat(2,1fr); gap:32px 20px; }
 .rv-footer-grid > div:first-child,.rv-footer-grid > div:last-child { grid-column:1/-1; }
 .rv-cta h2 { font-size:43px; }
 .rv-review-notes h2 { font-size:42px; }
 .rv-ar .rv-hero-copy :is(h1,h2) { font-size:46px; }
 .rv-ar .rv-stat-grid strong { font-size:39px; }
 .rv-ar .rv-why-grid h3 { font-size:15px; line-height:1.9; }
 .rv-ar .rv-why-grid p { font-size:13px; }
 .rv-ar .rv-case-list dl { padding:10px 27px 5px 0; }
 .rv-ar .rv-philosophy blockquote { font-size:29px; }
 .rv-ar .rv-care-copy h3 { font-size:24px; }
 .rv-ar .rv-steps h3 { font-size:15px; line-height:1.9; }
 .rv-ar .rv-steps p { font-size:14px; }
 .rv-ar .rv-accordion [data-slot=accordion-trigger] { font-size:15px; line-height:1.9; }
}

/* Keep metric columns inside even the smallest supported phone width. */
.rv-stat-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.rv-stat-grid > div { min-width:0; }
@media (max-width:800px) { .rv-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:390px) { .rv-stat-grid { gap:24px 16px; } .rv-stat-grid > div { padding-inline-start:12px; } .rv-stat-grid strong { font-size:38px; } .rv-ar .rv-stat-grid strong { font-size:34px; } }

.rv-review .rv-version[id] { scroll-margin-top:50px; }

/* Native disclosures remain keyboard accessible and functional without JavaScript. */
.rv-review .rv-disclosure{border-bottom:1px solid var(--border)}
.rv-review .rv-disclosure summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;list-style:none}
.rv-review .rv-disclosure summary::-webkit-details-marker{display:none}
.rv-review .rv-disclosure [data-slot=accordion-content]{padding:0 0 24px}
.rv-review .rv-plus{font-size:21px;line-height:1;flex-shrink:0;font-weight:400;transition:transform .18s var(--ease-out)}
.rv-review .rv-disclosure[open] .rv-plus{transform:rotate(45deg)}
.rv-review .rv-case-list [data-slot=accordion-content]{padding-bottom:24px}
.rv-review .rv-symbol{color:var(--teal);font-size:28px;line-height:1}
.rv-review .rv-check{flex-shrink:0;color:var(--teal)}
.rv-review .rv-quote-mark{display:block;font-family:Georgia,serif;font-size:70px;line-height:.7}
.rv-review .rv-service-links{margin-top:auto;display:flex;flex-wrap:wrap;gap:0 15px}
.rv-review .rv-service-copy .route-lined-link{margin-top:0}
.rv-review .rv-notes-section{padding-top:0}.rv-review .rv-notes-section .rv-treatment-notes{margin-top:0}
.rv-review .rv-journal-empty{font-size:16px;color:#c6dbd3;padding-block:10px 20px;line-height:1.8}
.rv-review .rv-compact-title{margin-bottom:27px}
.rv-review .rv-footer-logo{display:block}.rv-review .rv-footer-logo .ds-logo-image{width:190px;max-height:none;filter:none}
.rv-review .rv-footer h2{font-family:"Manrope",sans-serif;font-size:14px;font-weight:700;letter-spacing:0;line-height:1.5;color:var(--paper);margin-bottom:17px}
.rv-ar .rv-footer h2{font-family:"Noto Kufi Arabic",sans-serif}
.rv-review{padding-bottom:0!important}
.ds-rtl .ds-header-inner,.ds-rtl .ds-header-actions,.ds-rtl .ds-nav-list{flex-direction:row}
.ds-rtl .ds-primary-nav{margin-inline-start:auto;margin-inline-end:0}
.ds-rtl .ds-header-actions{margin-inline-start:0;margin-inline-end:0}
.ds-mobile-language{display:block;padding-top:15px;color:var(--ds-teal);font-size:15px}
.ds-client-review .ds-header{top:50px}.ds-client-review .rv-version[id]{scroll-margin-top:135px}
.rv-review-bar a{border:1px solid #6d938d}
body.admin-bar .ds-header{top:32px}body.admin-bar.ds-client-review .rv-review-bar{top:32px}body.admin-bar.ds-client-review .ds-header{top:82px}
@media(max-width:1080px){.ds-header-actions{margin-inline-start:auto}.ds-rtl .ds-header-actions{margin-inline-start:auto;margin-inline-end:0}}
@media(max-width:800px){body{padding-bottom:55px}.rv-review .reel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rv-review .rv-hero-copy :is(h1,h2){font-size:clamp(46px,9vw,65px)}.rv-review .rv-ar .rv-hero-copy :is(h1,h2){font-size:clamp(45px,8vw,60px)}}
@media(max-width:782px){body.admin-bar .ds-header{top:46px}body.admin-bar.ds-client-review .rv-review-bar{top:0}body.admin-bar.ds-client-review .ds-header{top:50px}}
@media(max-width:500px){.rv-review .reel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rv-review .rv-hero-copy :is(h1,h2){font-size:47px}.rv-review .rv-ar .rv-hero-copy :is(h1,h2){font-size:46px}}
@media(prefers-reduced-motion:reduce){.rv-review *,.rv-review *::before,.rv-review *::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* Progressive enhancement: content is never invisible without JavaScript. */
.ds-reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:no-preference){.ds-has-js .ds-reveal{opacity:0;transform:translateY(16px)}.ds-has-js .ds-reveal.is-visible{opacity:1;transform:none}}
.rv-review .rv-quote-mark{display:block;font-family:Georgia,serif;font-size:70px;line-height:.7}
.rv-review .rv-uae .rv-caption{color:#244e50;line-height:1.7}
.rv-review .rv-tech .rv-symbol{color:var(--teal)}
.rv-review .rv-cta h2,.rv-review .rv-reels-heading h2{color:var(--paper)}

/* v1.3.0 — multi-page navigation: care-area dropdown and current-page state */
.ds-nav-list .ds-has-sub{position:relative}
.ds-nav-list .ds-has-sub>a{padding-inline-end:15px}
.ds-nav-list .ds-has-sub>a::before{content:"";position:absolute;inset-inline-end:1px;top:50%;width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-75%) rotate(45deg);opacity:.7}
.ds-subnav{position:absolute;z-index:60;top:calc(100% + 20px);inset-inline-start:-20px;min-width:240px;margin:0;padding:10px 0;list-style:none;background:#fbfaf6;border:1px solid var(--ds-rule);box-shadow:0 22px 44px rgba(22,44,41,.10);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s}
.ds-subnav::before{content:"";position:absolute;inset-inline:0;top:-21px;height:21px}
.ds-nav-list .ds-has-sub:hover>.ds-subnav,.ds-nav-list .ds-has-sub:focus-within>.ds-subnav{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.ds-nav-list .ds-subnav a{display:block;padding:9px 20px;font-size:14px;font-weight:600;color:#344442}
.ds-nav-list .ds-subnav a::after{display:none}
.ds-nav-list .ds-subnav a:hover,.ds-nav-list .ds-subnav .current-menu-item>a{color:var(--ds-teal);background:rgba(15,106,103,.06)}
.ds-nav-list .ds-subnav li:first-child a{font-weight:700}
.ds-nav-list .current-menu-item>a{color:var(--ds-teal)}
.ds-nav-list .current-menu-item>a::after{transform:scaleX(1)}
.ds-mobile-list .ds-subnav{position:static;display:grid;min-width:0;margin:0 0 6px;padding:0;list-style:none;background:none;border:0;box-shadow:none;opacity:1;visibility:visible;transform:none}
.ds-mobile-list .ds-subnav::before{display:none}
.ds-mobile-list .ds-subnav a{padding:9px 16px;border-bottom:0;font-size:15px;font-weight:600;color:#4b5a57}
.ds-mobile-list .current-menu-item>a{color:var(--ds-teal)}
.ds-mobile-list li.ds-has-sub>a{border-bottom:0}
