/* /assets/site/fonts.css */
/* Fonturile site-ului, găzduite local (fără servicii externe): Plus Jakarta Sans (titluri, butoane; tema „clinic” îl
   folosește și pentru text), Hanken Grotesk (textul, în tema „premium”) și Lora (titlurile din marcajul original).
   Fonturi variabile împărțite pe subseturi de caractere (latin, latin-ext, chirilic, vietnamez…): browserul descarcă
   doar subsetul de care are nevoie pagina. Fallback-urile au metricile ajustate (fără „săritura” textului la încărcare).
   Variabilele de pe :root sunt cele folosite de css/base.css și css/oxx.css. */

@font-face { font-family: Lora; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/site/fonts/lora-cyrillic-ext.woff2?v=d0d358cfcc) format("woff2"); unicode-range: U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; }
@font-face { font-family: Lora; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/site/fonts/lora-cyrillic.woff2?v=66e1b8c7c4) format("woff2"); unicode-range: U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116; }
@font-face { font-family: Lora; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/site/fonts/lora-math.woff2?v=8fd95cb66c) format("woff2"); unicode-range: U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-209F,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??; }
@font-face { font-family: Lora; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/site/fonts/lora-symbols.woff2?v=367df5ed02) format("woff2"); unicode-range: U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AE,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F8D0-1F8D8,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FAC6,U+1FAC8,U+1FACC-1FADD,U+1FADF-1FAEB,U+1FAEF-1FAFA,U+1FB??; }
@font-face { font-family: Lora; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/site/fonts/lora-vietnamese.woff2?v=a9149daf82) format("woff2"); unicode-range: U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB; }
@font-face { font-family: Lora; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/site/fonts/lora-latin-ext.woff2?v=55606fbc76) format("woff2"); unicode-range: U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: Lora; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/site/fonts/lora-latin.woff2?v=6b102ab35a) format("woff2"); unicode-range: U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 200 800; font-display: swap; src: url(/assets/site/fonts/plus-jakarta-sans-cyrillic-ext.woff2?v=a16f29d7d2) format("woff2"); unicode-range: U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 200 800; font-display: swap; src: url(/assets/site/fonts/plus-jakarta-sans-vietnamese.woff2?v=5c913fc1b1) format("woff2"); unicode-range: U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 200 800; font-display: swap; src: url(/assets/site/fonts/plus-jakarta-sans-latin-ext.woff2?v=0303e02b53) format("woff2"); unicode-range: U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 200 800; font-display: swap; src: url(/assets/site/fonts/plus-jakarta-sans-latin.woff2?v=cd8db90cd9) format("woff2"); unicode-range: U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Hanken Grotesk"; font-style: normal; font-weight: 100 900; font-display: swap; src: url(/assets/site/fonts/hanken-grotesk-cyrillic-ext.woff2?v=2f52020a90) format("woff2"); unicode-range: U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; }
@font-face { font-family: "Hanken Grotesk"; font-style: normal; font-weight: 100 900; font-display: swap; src: url(/assets/site/fonts/hanken-grotesk-vietnamese.woff2?v=2f467719b2) format("woff2"); unicode-range: U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB; }
@font-face { font-family: "Hanken Grotesk"; font-style: normal; font-weight: 100 900; font-display: swap; src: url(/assets/site/fonts/hanken-grotesk-latin-ext.woff2?v=a1376a5637) format("woff2"); unicode-range: U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Hanken Grotesk"; font-style: normal; font-weight: 100 900; font-display: swap; src: url(/assets/site/fonts/hanken-grotesk-latin.woff2?v=1f21c6eaa0) format("woff2"); unicode-range: U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }

@font-face { font-family: "Lora Fallback"; src:local(Times New Roman); ascent-override:87.33%; descent-override:23.78%; line-gap-override:0.0%; size-adjust:115.2%; }
@font-face { font-family: "Plus Jakarta Sans Fallback"; src:local(Arial); ascent-override:98.88%; descent-override:21.15%; line-gap-override:0.0%; size-adjust:104.98%; }
@font-face { font-family: "Hanken Grotesk Fallback"; src:local(Arial); ascent-override:99.07%; descent-override:30.02%; line-gap-override:0.0%; size-adjust:100.94%; }

:root {
  --font-lora: "Lora", "Lora Fallback";
  --font-jakarta: "Plus Jakarta Sans", "Plus Jakarta Sans Fallback";
  --font-hanken: "Hanken Grotesk", "Hanken Grotesk Fallback";
}

/* /assets/site/css/base.css */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Hanken Grotesk", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.text-wrap{text-wrap:wrap}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.\[seed\:arch\]{seed:arch}.\[seed\:footer\]{seed:footer}}:root{--bg:#071a30;--bg-deep:#050f1e;--bg-alt:#0a2440;--surface:#0a2846;--surface-strong:#0e3a63;--accent:#5cc0e8;--accent-strong:#2f74c4;--accent-light:#8fd5f2;--accent-grad:linear-gradient(135deg, #3aa0dd, #5cc0e8);--ink:#f4f9fd;--ink-soft:#aec6de;--ink-mute:#93aecb;--line:#ffffff1a;--line-soft:#ffffff0f;--glass:#ffffff0d;--glass-strong:#ffffff12;--glass-border:#ffffff1f;--shadow-sm:0 14px 34px -26px #000000b3;--shadow-md:0 18px 46px -28px #000000b3;--shadow-lg:0 40px 84px -34px #000c;--ring:0 0 0 3px #5cc0e859, 0 0 0 4px var(--accent);--r-sm:12px;--r-md:16px;--r-lg:22px;--r-xl:30px;--ease:cubic-bezier(.4, 0, .2, 1);--dur:.25s;--nav-h:82px;--font-body:var(--font-hanken,"Hanken Grotesk"), ui-sans-serif, system-ui, sans-serif;--font-head:var(--font-jakarta,"Plus Jakarta Sans"), ui-sans-serif, system-ui, sans-serif;--wrap:80rem}@keyframes oxfloat{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes oxblob{0%,to{transform:translate(0)scale(1)}50%{transform:translate(36px,-28px)scale(1.14)}}@keyframes oxblob2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-30px,26px)scale(1.1)}}*{box-sizing:border-box}body{font-family:var(--font-body);color:var(--ink);background-color:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}.clinic-body{background:var(--bg);min-height:100vh}h1,h2,h3,h4{font-family:var(--font-head);letter-spacing:-.025em;color:var(--ink);text-wrap:balance;margin:0;line-height:1.08}h1{font-size:clamp(2.5rem,5vw,3.9rem);font-weight:800}h2{font-size:clamp(1.9rem,3.6vw,2.9rem);font-weight:800}h3{font-size:clamp(1.1rem,2vw,1.35rem);font-weight:700}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{box-shadow:var(--ring);border-radius:6px;outline:none}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(1.5rem,5vw,5rem)}.wrap-narrow{max-width:60rem;margin:0 auto;padding:0 clamp(1.5rem,5vw,5rem)}.sec{padding:clamp(3.5rem,7vw,6.5rem) 0}.sec-sm{padding:clamp(2.5rem,4vw,4rem) 0}.eyebrow{background:var(--glass);-webkit-backdrop-filter:blur(14px);border:1px solid var(--glass-border);font-family:var(--font-head);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border-radius:999px;align-items:center;gap:10px;padding:7px 16px;font-size:.72rem;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px}.card,.glass{background:var(--glass);-webkit-backdrop-filter:blur(20px)saturate(140%);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);transition:box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease), border-color var(--dur) var(--ease), background var(--dur) var(--ease)}.card:hover,.glass:hover{background:var(--glass-strong);border-color:#5cc0e880;transform:translateY(-6px)}.chip{background:var(--glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);color:var(--ink-soft);border-radius:999px;align-items:center;gap:8px;padding:8px 15px;font-size:.82rem;font-weight:600;display:inline-flex}.chip svg{color:var(--accent)}.btn{font-family:var(--font-head);cursor:pointer;transition:all var(--dur) var(--ease);white-space:normal;text-wrap:balance;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;max-width:100%;padding:14px 28px;font-size:.9rem;font-weight:700;display:inline-flex}.btn-solid{background:var(--accent-grad);color:#07223b;box-shadow:0 18px 40px -14px #5cc0e8b3}.btn-solid:hover{filter:brightness(1.06);transform:translateY(-2px)}.btn-outline{border-color:var(--glass-border);color:var(--ink);background:var(--glass);-webkit-backdrop-filter:blur(12px)}.btn-outline:hover{background:var(--glass-strong);border-color:#5cc0e880}.btn-accent{background:var(--accent-grad);color:#07223b;box-shadow:0 16px 36px -14px #5cc0e8a6}.btn-accent:hover{filter:brightness(1.06)}.btn-sm{padding:10px 20px;font-size:.82rem}.btn-lg{padding:17px 40px;font-size:.98rem}.sec-head{max-width:46rem;margin:0 0 3rem}.sec-head.center{text-align:center;margin-left:auto;margin-right:auto}.sec-head.center .eyebrow{justify-content:center}.sec-head p{color:var(--ink-soft);margin-top:16px;font-size:1.05rem}.icon-tile{width:54px;height:54px;color:var(--accent-light);background:linear-gradient(135deg,#2f74c447,#5cc0e838);border:1px solid #ffffff1f;border-radius:16px;flex:none;justify-content:center;align-items:center;display:inline-flex}.pill-tag{background:var(--glass);-webkit-backdrop-filter:blur(14px);border:1px solid var(--glass-border);color:var(--ink-soft);border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:.82rem;font-weight:600;display:inline-flex}.avatar{background:var(--accent-grad);color:#07223b;font-family:var(--font-head);border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.stars{color:#e2b23e;gap:2px;display:inline-flex}.prose-clinic{color:var(--ink-soft);max-width:72ch;font-size:1.05rem;line-height:1.75}.prose-clinic p,.prose-clinic li,.prose-clinic td,.prose-clinic a{overflow-wrap:anywhere}.prose-clinic>:first-child{margin-top:0}.prose-clinic>p:first-of-type{color:var(--ink);font-size:1.2rem;line-height:1.6}.prose-clinic h1,.prose-clinic h2,.prose-clinic h3,.prose-clinic h4{color:var(--ink);margin:1.7em 0 .5em;scroll-margin-top:90px}.prose-clinic h2{border-left:4px solid var(--accent);padding-left:16px;font-size:1.6rem}.prose-clinic h3{font-size:1.28rem}.prose-clinic p{margin:0 0 1.15em}.prose-clinic a{color:var(--accent);text-underline-offset:3px;-webkit-text-decoration:underline #5cc0e880;text-decoration:underline #5cc0e880;transition:color .18s}.prose-clinic a:hover{color:var(--accent-light)}.prose-clinic ul,.prose-clinic ol{margin:0 0 1.2em;padding-left:0;list-style:none}.prose-clinic ol{counter-reset:li}.prose-clinic li{margin:.5em 0;padding-left:30px;position:relative}.prose-clinic ul>li:before{content:"";background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 4px var(--accent-light);border-radius:50%;position:absolute;top:.62em;left:2px}.prose-clinic ol>li:before{counter-increment:li;content:counter(li);background:var(--accent-light);width:22px;height:22px;color:var(--accent-strong);font-family:var(--font-head);border-radius:50%;justify-content:center;align-items:center;font-size:.72rem;font-weight:600;display:flex;position:absolute;top:.15em;left:0}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:hover{background:#5cc0e80f}.faq-item[open] .faq-chevron{transform:rotate(90deg)}.fact-row{text-decoration:none;transition:background .18s}.fact-row:hover{background:#5cc0e817}:is(.prose-clinic ul:has(>li:nth-child(6)),.prose-clinic ol:has(>li:nth-child(6))){columns:2;column-gap:40px}.prose-clinic li{break-inside:avoid;-webkit-column-break-inside:avoid}@media (max-width:680px){.prose-clinic ul,.prose-clinic ol{columns:1!important}}.prose-clinic img{border-radius:var(--r-lg);max-width:100%;height:auto;box-shadow:var(--shadow-md);margin:1.6em 0}.prose-clinic blockquote{border-left:4px solid var(--accent);background:var(--glass);-webkit-backdrop-filter:blur(12px);border-radius:0 var(--r-md) var(--r-md) 0;color:var(--ink);margin:1.6em 0;padding:16px 22px;font-style:italic}.prose-clinic table{border-collapse:collapse;width:100%;margin:1.4em 0;font-size:.95rem}.prose-clinic th,.prose-clinic td{border:1px solid var(--line);text-align:left;padding:10px 12px}.prose-clinic th{background:var(--glass);color:var(--ink)}.prose-clinic strong{color:var(--ink);font-weight:600}.prose-checklist ul{columns:2;column-gap:40px;margin:.4em 0 1.4em;padding:0;list-style:none}.prose-checklist ul>li{break-inside:avoid;-webkit-column-break-inside:avoid;color:var(--ink);margin:0 0 14px;padding-left:36px;font-size:.98rem;line-height:1.5;position:relative}.prose-checklist ul>li:before{content:"";width:24px;height:24px;box-shadow:none;background:#5cc0e829 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235cc0e8' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") 50%/13px no-repeat;border-radius:50%;position:absolute;top:0;left:0}.prose-checklist ol{padding:0;list-style:none}@media (max-width:720px){.prose-checklist ul{columns:1}}.field{width:100%;color:var(--ink);font-family:var(--font-body);background:#ffffff0a;border:1px solid #ffffff29;border-radius:13px;padding:15px 18px;font-size:.95rem}.field:focus{border-color:var(--accent);background:#ffffff14;outline:none}.field::placeholder{color:#7f9bba}select.field{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235cc0e8' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:40px}select.field option{background:var(--surface);color:var(--ink)}.reveal{opacity:1!important;transform:none!important}.reviews-track{scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#5cc0e880 transparent;-webkit-overflow-scrolling:touch;gap:18px;margin:0 -4px;padding:4px 4px 16px;display:flex;overflow-x:auto}.reviews-track::-webkit-scrollbar{height:8px}.reviews-track::-webkit-scrollbar-thumb{background:#5cc0e873;border-radius:999px}.reviews-track::-webkit-scrollbar-track{background:0 0}.review-card{scroll-snap-align:start;flex-direction:column;flex:0 0 min(86vw,350px);padding:22px 24px;display:flex}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.reviews-track{scroll-behavior:auto}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}




/* /assets/site/css/oxx.css */
.oxx{--navy:#0d2340;--navy-2:#13315b;--gold:#b8935a;--gold-2:#a67c43;--ink:#14243c;--body:#4d5a6b;--mute:#7c8798;--line:#e4e9f1;--soft:#f5f8fc;--cas:#eef3fa;--serif:var(--font-lora,Georgia, "Times New Roman", serif);--sans:var(--font-hanken,ui-sans-serif, system-ui, sans-serif);--bg:#fff;--bg-deep:#eef3fa;--bg-alt:#f5f8fc;--surface:#fff;--surface-strong:#f5f8fc;--accent:#a67c43;--accent-strong:#0d2340;--accent-light:#b8935a;--accent-grad:linear-gradient(135deg, #13315b, #0d2340);--ink-soft:#4d5a6b;--ink-mute:#7c8798;--line-soft:#eef2f7;--glass:#fff;--glass-strong:#f7fafd;--glass-border:#e4e9f1;--shadow-sm:0 14px 34px -28px #0d234080;--shadow-md:0 18px 46px -30px #0d234080;--shadow-lg:0 40px 84px -40px #0d23408c;--ring:0 0 0 3px #b8935a4d, 0 0 0 4px var(--gold);--nav-h:0px;font-family:var(--sans);color:var(--body);-webkit-font-smoothing:antialiased;background:#fff;font-size:16px;line-height:1.6}body:has(.oxx){background:#fff}.oxx :where(p,li,td,th,dd,dt,blockquote){color:var(--body)}.oxx :where(h1,h2,h3,h4,h5,h6){color:var(--ink)}.oxx *,.oxx :before,.oxx :after{box-sizing:border-box}.oxx a{color:inherit;text-decoration:none}.oxx h1,.oxx h2,.oxx h3,.oxx h4{font-family:var(--serif);color:var(--ink);letter-spacing:-.01em;margin:0;font-weight:600}.oxx-wrap{max-width:1220px;margin:0 auto;padding:0 28px}.oxx-btn{font-family:var(--sans);cursor:pointer;border:1.5px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:50px;padding:14px 24px;font-size:.98rem;font-weight:600;line-height:1;transition:background .15s,color .15s,border-color .15s,transform .15s;display:inline-flex}.oxx a.oxx-btn-solid,.oxx-btn-solid{background:var(--navy);color:#fff}.oxx-btn-solid:hover{background:#163461}.oxx a.oxx-btn-outline,.oxx-btn-outline{color:var(--navy);background:#fff;border-color:#c9d3e0}.oxx-btn-outline:hover{border-color:var(--navy)}.oxx a.oxx-btn-outline-light,.oxx-btn-outline-light{color:#fff;background:0 0;border-color:#fff6}.oxx-btn-outline-light:hover{border-color:#fff}.oxx-btn-sm{min-height:42px;padding:10px 16px;font-size:.9rem}.oxx-btn-lg{min-height:56px;padding:16px 28px;font-size:1.02rem}.oxx-btn-block{width:100%}.oxx a.oxx-link-btn,.oxx-link-btn{font-family:var(--sans);color:var(--navy);align-items:center;gap:7px;font-size:.92rem;font-weight:600;display:inline-flex}.oxx a.oxx-link-btn.light,.oxx-link-btn.light{color:#fff}.oxx-link-btn:hover{color:var(--gold-2)}.oxx-h2{margin:0 0 28px;font-size:clamp(1.7rem,3vw,2.35rem)}.oxx-topbar{background:var(--navy);color:#cfe0f2;font-size:.82rem}.oxx-topbar-in{justify-content:space-between;align-items:center;gap:16px;height:40px;display:flex}.oxx-topbar a{color:#cfe0f2}.oxx-topbar a:hover{color:#fff}.oxx-topbar-tel{color:#fff;flex:none;align-items:center;gap:7px;font-weight:600;display:inline-flex}.oxx-menu-toggle{opacity:0;pointer-events:none;position:absolute}.oxx-header{z-index:60;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#ffffffeb;position:sticky;top:0}.oxx-header-in{align-items:center;gap:24px;height:76px;display:flex}.oxx-logo{flex-direction:column;flex:none;line-height:1;display:inline-flex}.oxx-logo img{width:auto;height:38px}.oxx-logo b{font-family:var(--serif);letter-spacing:.04em;color:var(--navy);font-size:1.5rem;font-weight:700}.oxx-logo span{letter-spacing:.28em;color:var(--gold-2);margin-top:3px;font-size:.6rem;font-weight:600}.oxx-logo.light b{color:#fff}.oxx-logo.light span{color:var(--gold)}.oxx-nav{align-items:center;gap:22px;margin-left:8px;display:flex}.oxx-nav a{color:#33445a;font-size:.92rem;font-weight:600}.oxx-nav a:hover{color:var(--navy)}.oxx-nav-mega{align-items:center;display:flex}.oxx-nav-mega-trigger{align-items:center;gap:5px;display:inline-flex}.oxx-nav-mega-trigger svg{opacity:.55;transition:transform .15s}.oxx-nav-mega:hover .oxx-nav-mega-trigger{color:var(--navy)}.oxx-nav-mega:hover .oxx-nav-mega-trigger svg{transform:rotate(180deg)}.oxx-mega{z-index:70;border-top:1px solid var(--line);border-bottom:1px solid var(--line);opacity:0;visibility:hidden;background:#fff;transition:opacity .16s,transform .16s,visibility .16s;position:absolute;top:100%;left:0;right:0;transform:translateY(-6px);box-shadow:0 30px 60px -34px #0d234073}.oxx-mega.is-open{opacity:1;visibility:visible;transform:translateY(0)}.oxx-nav-mega:hover .oxx-nav-mega-trigger svg,.oxx-nav-mega-trigger[data-open] svg{transform:rotate(180deg)}.oxx-mega-cols{columns:3;column-gap:38px;max-height:74vh;padding:24px 28px 28px;overflow-y:auto}.oxx-mega-block{break-inside:avoid;-webkit-column-break-inside:avoid;margin-bottom:2px}.oxx-mega-row{border-radius:9px;align-items:center;gap:6px;transition:background .14s;display:flex}.oxx-mega-row:hover{background:var(--bg-alt)}.oxx-mega .oxx-mega-item{min-width:0;font-family:var(--serif);color:var(--navy);flex:1;padding:9px 4px 9px 14px;font-size:.97rem;font-weight:600}.oxx-mega .oxx-mega-item:hover{color:var(--gold-2)}.oxx-mega-toggle{cursor:pointer;color:var(--ink-mute);background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;margin-right:4px;padding:7px 12px 7px 8px;transition:color .14s,background .14s;display:inline-flex}.oxx-mega-toggle:hover{color:var(--navy);background:#fff}.oxx-mega-toggle svg{transition:transform .18s}.oxx-mega-toggle.is-open svg{transform:rotate(180deg)}.oxx-mega-toggle.is-open{color:var(--gold-2)}.oxx-mega-count{font-family:var(--sans);background:var(--bg-alt);color:inherit;border-radius:20px;padding:2px 8px;font-size:.68rem;font-weight:700}.oxx-mega-toggle:hover .oxx-mega-count,.oxx-mega-toggle.is-open .oxx-mega-count{background:var(--bg-deep)}.oxx-mega-sub{border-left:1px solid var(--line);margin:2px 0 12px 22px;padding-left:14px}.oxx-mega .oxx-mega-sub a{color:var(--body);padding:6px 0;font-size:.865rem;font-weight:500;line-height:1.35;display:block}.oxx-mega .oxx-mega-sub a:hover{color:var(--navy)}@media (max-width:1100px){.oxx-mega-cols{columns:2}}.oxx-header-cta{align-items:center;gap:12px;margin-left:auto;display:flex}.oxx-icon-btn{width:42px;height:42px;color:var(--navy);border:1px solid var(--line);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.oxx-icon-btn:hover{background:var(--soft)}.oxx-burger{cursor:pointer;color:var(--navy);align-items:center;display:none}.oxx-drawer{display:none}.oxx-hero{padding:46px 0 0}.oxx-hero-in{grid-template-columns:1.05fr .95fr;align-items:center;gap:40px;display:grid}.oxx-hero-copy h1{margin-bottom:18px;font-size:clamp(2.1rem,4.3vw,3.35rem);line-height:1.12}.oxx-hero-copy h1 em{color:var(--navy);font-style:italic}.oxx-hero-copy>p{color:var(--body);max-width:30em;margin:0 0 26px;font-size:1.12rem}.oxx-hero-cta{flex-direction:column;gap:12px;max-width:460px;display:flex}.oxx-hero-cta .oxx-btn{width:100%}.oxx-hero-media{aspect-ratio:4/3.2;border:1px solid var(--line);background:linear-gradient(140deg,#e8f0f8,#d6e6f2 60%,#cfe0ef);border-radius:18px;position:relative;overflow:hidden}.oxx-hero-orb{background:radial-gradient(60% 55% at 68% 32%,#b8935a47,#0000 70%),radial-gradient(70% 60% at 30% 75%,#13315b38,#0000 70%);position:absolute;inset:0}.oxx-hero-media:after{content:"Fotografie: medic & pacient";text-align:center;letter-spacing:.12em;text-transform:uppercase;color:#7c93ad;font-size:.74rem;position:absolute;bottom:14px;left:0;right:0}.oxx-hero-media.has-img{background:#eef3f8}.oxx-hero-media.has-img:after{display:none}.oxx-hero-img{object-fit:cover;object-position:right center;width:100%;height:100%;display:block}.oxx-trust{border:1px solid var(--line);border-radius:14px;align-items:center;gap:28px;margin-top:34px;padding:20px 30px;display:flex;box-shadow:0 10px 30px -22px #0d234066}.oxx-trust>div{text-align:center;flex-direction:column;flex:1;align-items:center;gap:2px;display:flex}.oxx-trust b{font-family:var(--serif);color:var(--navy);font-size:1.9rem;font-weight:700}.oxx-trust span{color:var(--mute);font-size:.86rem}.oxx-trust-sep{background:var(--line);align-self:stretch;width:1px;flex:0 0 1px!important}.oxx-trust-badge{color:var(--gold-2);flex-direction:row!important;gap:12px!important}.oxx-trust-badge span{text-align:left;color:var(--ink);font-size:.9rem;font-weight:600}.oxx-sec{padding:62px 0}.oxx-sec-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px;display:flex}.oxx-rail{scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none;gap:16px;padding-bottom:6px;display:flex;overflow-x:auto}.oxx-rail::-webkit-scrollbar{display:none}.oxx-rail>*{scroll-snap-align:start;flex:none}.oxx-cas{padding:8px 0}.oxx-cas-box{background:var(--cas);border:1px solid #dce6f2;border-radius:20px;padding:30px 30px 26px}.oxx-cas-head{align-items:center;gap:18px;margin-bottom:22px;display:flex}.oxx-cas-ic{width:62px;height:62px;color:var(--gold-2);border:1.5px solid var(--gold);background:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.oxx-cas-head h2{margin:0 0 4px;font-size:1.6rem}.oxx-cas-head p{color:var(--body);margin:0}.oxx-cas .oxx-rail{margin-bottom:20px}.oxx a.oxx-cas-card,.oxx-cas-card{text-align:center;width:150px;color:var(--gold-2);background:#fff;border:1px solid #dce6f2;border-radius:14px;flex-direction:column;align-items:center;gap:12px;padding:22px 14px;transition:transform .15s,box-shadow .15s;display:flex}.oxx-cas-card span{color:var(--ink);font-size:.94rem;font-weight:600;font-family:var(--sans);line-height:1.3}.oxx-cas-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px -18px #0d234059}.oxx-eco{flex-direction:column;gap:18px;display:flex}.oxx-eco-card{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:row;align-items:stretch;transition:box-shadow .15s;display:flex;overflow:hidden}.oxx-eco-card:hover{box-shadow:0 18px 42px -30px #0d234080}.oxx-eco-media{color:#fff;background:linear-gradient(150deg, hsl(var(--h) 45% 26%), hsl(var(--h) 55% 16%));flex:0 0 300px;position:relative;overflow:hidden}.oxx-eco-media:after{content:"";z-index:2;background:linear-gradient(160deg, hsl(var(--h) 45% 22% / .28), hsl(var(--h) 55% 14% / .5));position:absolute;inset:0}.oxx-eco-media img{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}.oxx-eco-badge{z-index:4;border:1.5px solid var(--gold);width:52px;height:52px;color:var(--gold-2);background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:16px;left:18px;box-shadow:0 10px 24px -12px #0d23408c}.oxx-eco-body{flex:1;justify-content:space-between;align-items:center;gap:28px;padding:24px 30px;display:flex}.oxx-eco-text{flex-direction:column;gap:8px;min-width:0;display:flex}.oxx-eco-text h3{font-size:1.35rem}.oxx-eco-text p{color:var(--body);max-width:34em;margin:0;font-size:.98rem}.oxx-eco-loc{color:var(--gold-2);align-items:center;gap:6px;margin-top:2px;font-size:.88rem;font-weight:600;display:inline-flex}.oxx a.oxx-eco-cta{white-space:nowrap;flex:none}.oxx-railnav{flex:none;gap:8px;margin-left:auto;display:flex}.oxx-railnav button{border:1px solid var(--gold);width:40px;height:40px;color:var(--gold-2);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.oxx-railnav button:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.oxx-journey{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.oxx-steps{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.oxx-step{--c:var(--navy);align-items:flex-start;gap:18px;padding:4px 26px;display:flex}.oxx-step+.oxx-step{border-left:1px dashed #cfd9e6}.oxx-step:first-child{padding-left:0}.oxx-step:last-child{padding-right:0}.oxx-step-ic{width:72px;height:72px;color:var(--c);border:2px solid color-mix(in srgb, var(--c) 45%, #fff);box-shadow:0 0 0 6px color-mix(in srgb, var(--c) 8%, transparent);background:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.oxx-step-body{min-width:0}.oxx-step-n{min-width:40px;height:40px;font-family:var(--serif);color:var(--c);border:1.5px solid color-mix(in srgb, var(--c) 35%, #fff);border-radius:50%;justify-content:center;align-items:center;margin-bottom:10px;padding:0 8px;font-size:1.3rem;font-weight:700;display:inline-flex}.oxx-step h3{margin-bottom:7px;font-size:1.16rem}.oxx-step p{margin:0;font-size:.94rem}.oxx-prog{color:#fff;background:linear-gradient(155deg, hsl(var(--h) 50% 22%), hsl(var(--h) 60% 12%));border-radius:16px;flex-direction:column;gap:10px;width:300px;min-height:220px;padding:24px;display:flex;position:relative;overflow:hidden}.oxx-prog:after{content:"";background:radial-gradient(55% 50% at 80% 15%,#b8935a4d,#0000 70%);position:absolute;inset:0}.oxx-prog>*{z-index:1;position:relative}.oxx-prog-art{width:44px;height:44px;color:var(--gold);background:#ffffff1f;border-radius:11px;justify-content:center;align-items:center;display:flex}.oxx-prog h3{color:#fff;font-size:1.25rem}.oxx-prog p{color:#ffffffd1;flex:1;margin:0;font-size:.92rem}.oxx-tech{background:var(--navy);color:#fff;margin:0;padding:52px 0}.oxx-tech-in{grid-template-columns:.8fr 1.2fr;align-items:center;gap:36px;display:grid}.oxx-tech h2{color:#fff;font-size:clamp(1.6rem,2.6vw,2.1rem)}.oxx-tech>.oxx-wrap>div:first-child p,.oxx-tech-in>div:first-child p{color:#ffffffbf;margin:10px 0 0}.oxx-tech-tags{flex-wrap:wrap;gap:12px;display:flex}.oxx a.oxx-tag,.oxx-tag{color:#eaf1fb;background:#ffffff12;border:1px solid #ffffff29;border-radius:9px;align-items:center;padding:11px 20px;font-size:.92rem;font-weight:600;display:inline-flex}.oxx-tag:hover{border-color:var(--gold);background:#ffffff24}.oxx-expert-head{text-align:center;margin-bottom:34px;display:block}.oxx-expert-head .oxx-h2{text-wrap:balance;max-width:20em;margin:0 auto}.oxx-expert-head .oxx-h2:after{content:"";background:var(--gold);border-radius:2px;width:68px;height:2px;margin:18px auto 0;display:block}.oxx-expert{grid-template-columns:1fr 1fr;gap:34px;display:grid}.oxx-expert-lead,.oxx-expert-team{border:1px solid var(--line);background:var(--surface);border-radius:18px;flex-direction:column;padding:26px;display:flex}.oxx-expert-lead{gap:22px}.oxx-expert-photo{object-fit:cover;border:1px solid var(--line);border-radius:14px;width:100%;height:320px}.oxx-expert-photo.oxx-ph{background:linear-gradient(150deg,#e8eef6,#d6e2ee)}.oxx-expert-copy{flex-direction:column;flex:1;display:flex}.oxx-expert-name{font-family:var(--serif,Georgia, serif);color:var(--ink);margin:0 0 6px;font-size:1.35rem}.oxx-expert-role{color:var(--gold-2);margin-bottom:10px;font-weight:600;line-height:1.45}.oxx-expert-copy p{max-width:40em;margin:0 0 18px}.oxx-expert-copy .oxx-btn{align-self:flex-start;margin-top:auto}.oxx-expert-team-h{font-family:var(--serif,Georgia, serif);color:var(--ink);margin:0 0 18px;font-size:1.18rem}.oxx-expert-cards{grid-template-columns:repeat(3,1fr);align-content:start;gap:14px;display:grid}.oxx a.oxx-expert-card,.oxx-expert-card{border:1px solid var(--line);color:inherit;background:#fff;border-radius:14px;flex-direction:column;text-decoration:none;transition:border-color .18s,transform .18s;display:flex;overflow:hidden}.oxx-expert-card:hover{border-color:var(--gold);transform:translateY(-2px)}.oxx-expert-card img,.oxx-expert-card-ph{aspect-ratio:4/5;object-fit:cover;width:100%;display:block}.oxx-expert-card-ph{background:linear-gradient(150deg,#e8eef6,#d6e2ee)}.oxx-expert-card-body{flex-direction:column;flex:1;gap:5px;padding:13px 13px 15px;display:flex}.oxx-expert-card-name{color:var(--ink);font-size:.96rem;font-weight:700;line-height:1.3}.oxx-expert-card-spec{color:var(--ink-mute,#7c8798);font-size:.82rem;line-height:1.4}.oxx-expert-card-tag{letter-spacing:.02em;color:var(--gold-2);margin-top:4px;font-size:.72rem;font-weight:700}.oxx-expert-all{align-self:flex-start;margin-top:auto;padding-top:18px}.oxx-loc-card{border:1px solid var(--line);background:#fff;border-radius:16px;width:380px;overflow:hidden}.oxx-loc-media{color:#8aa1bd;background:linear-gradient(150deg,#e8eef6,#d9e5f0);justify-content:center;align-items:center;height:150px;display:flex}.oxx-loc-body{padding:20px}.oxx-loc-body h3{margin-bottom:10px;font-size:1.2rem}.oxx-loc-row{color:var(--body);align-items:center;gap:8px;margin-bottom:6px;font-size:.92rem;display:flex}.oxx-loc-cta{margin-top:12px}.oxx-final{background:var(--soft);border-top:1px solid var(--line);padding:60px 0}.oxx-final-in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:30px;display:flex}.oxx-final h2{margin:0;font-size:clamp(1.6rem,2.8vw,2.2rem)}.oxx-final-cta{flex-wrap:wrap;gap:14px;display:flex}.oxx-footer{background:var(--navy);color:#b9cbe0;padding:50px 0 26px}.oxx-footer-in{grid-template-columns:1fr 2.2fr;gap:40px;display:grid}.oxx-footer-brand p{color:#9fb4cc;max-width:30em;margin:16px 0 0;font-size:.92rem}.oxx-footer-cols{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.oxx-footer-cols h4{color:#fff;font-size:.95rem;font-family:var(--sans);margin:0 0 12px;font-weight:700}.oxx-footer-cols a,.oxx-footer-cols span{color:#a9bdd4;margin-bottom:8px;font-size:.88rem;display:block}.oxx-footer-cols a:hover{color:#fff}.oxx-foot-loc{color:#8ba2bd!important}.oxx-footer-legal{color:#8ba2bd;border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:34px;padding-top:20px;font-size:.82rem;display:flex}.oxx-anmcs{color:var(--gold);align-items:center;gap:7px;display:inline-flex}.oxx-sticky{display:none}@media (max-width:980px){.oxx-nav{display:none}.oxx-burger{display:inline-flex}.oxx-hero-in{grid-template-columns:1fr}.oxx-hero-media{aspect-ratio:16/10;order:0}.oxx-eco-card{flex-direction:column}.oxx-eco-media{flex:none;height:180px}.oxx-eco-body{flex-direction:column;align-items:flex-start;gap:16px}.oxx a.oxx-eco-cta{width:100%}.oxx-steps{grid-template-columns:1fr;gap:22px}.oxx-step{padding:0}.oxx-step+.oxx-step{border-top:1px dashed #cfd9e6;border-left:none;padding-top:22px}.oxx-step-ic{width:62px;height:62px}.oxx-step-n{min-width:34px;height:34px;margin-bottom:8px;font-size:1.1rem}.oxx-tech-in{grid-template-columns:1fr;gap:20px}.oxx-expert{text-align:left;grid-template-columns:1fr}.oxx-expert-photo{width:100%;max-width:none;height:300px}.oxx-expert-cards{grid-template-columns:1fr;gap:12px}.oxx-expert-card{flex-direction:row;align-items:stretch}.oxx-expert-card img,.oxx-expert-card-ph{aspect-ratio:4/5;flex:none;width:116px}.oxx-expert-card-body{justify-content:center}.oxx-expert-copy .oxx-btn,.oxx-expert-all{justify-content:center;align-self:stretch;width:100%;min-height:44px}.oxx-footer-in{grid-template-columns:1fr;gap:28px}.oxx-footer-cols{grid-template-columns:repeat(2,1fr)}.oxx-cas-card{width:40vw;max-width:190px}.oxx-prog{width:78vw;max-width:340px}.oxx-loc-card{width:82vw;max-width:380px}}.oxx-cas-card{width:158px}@media (min-width:981px){.oxx-cas-card{width:168px}}@media (max-width:640px){.oxx-wrap{padding:0 20px}.oxx-topbar-in a:first-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.oxx-header-in{gap:10px;height:64px}.oxx-hide-mobile{display:none!important}.oxx-book-label{display:none}.oxx a.oxx-book{justify-content:center;gap:0;width:44px;height:44px;min-height:44px;padding:0}.oxx-logo img{height:30px}.oxx-hero-copy h1{font-size:2.05rem}.oxx-cas-head .oxx-railnav{display:none}.oxx-railnav button{width:44px;height:44px}.oxx-cas-box{padding:22px 16px 18px}.oxx-cas-head{align-items:center;gap:14px;margin-bottom:18px}.oxx-cas-ic{width:52px;height:52px}.oxx-cas-head>div{flex:1;min-width:0}.oxx-cas-head h2{font-size:1.3rem}.oxx-cas-head p{margin-top:4px;font-size:.9rem}.oxx-sec-head{gap:10px}.oxx-trust{flex-wrap:wrap;gap:14px;padding:16px}.oxx-trust-sep{display:none}.oxx-trust>div{flex:40%}.oxx-final-in{flex-direction:column;align-items:flex-start}.oxx-final-cta{flex-direction:column;width:100%}.oxx-final-cta .oxx-btn{width:100%}.oxx-main{padding-bottom:72px}.oxx-sticky{z-index:80;background:var(--navy);padding:8px 6px calc(8px + env(safe-area-inset-bottom));border-top:1px solid #ffffff1f;display:flex;position:fixed;bottom:0;left:0;right:0}.oxx-sticky>*{color:#dbe7f4;flex-direction:column;flex:1;align-items:center;gap:3px;padding:6px 0;font-size:.72rem;font-weight:600;display:flex}.oxx-sticky>:active{opacity:.7}}@media (max-width:980px){.oxx-drawer{z-index:90;background:#fff;width:min(86vw,360px);padding:84px 24px 30px;transition:transform .25s;display:block;position:fixed;inset:0 0 0 auto;overflow-y:auto;transform:translate(100%);box-shadow:-20px 0 60px -30px #00000080}.oxx-menu-toggle:checked~.oxx-drawer{transform:translate(0)}.oxx-menu-toggle:checked~.oxx-header:before{content:"";z-index:85;background:#08142673;position:fixed;inset:0}.oxx-drawer nav{flex-direction:column;gap:4px;display:flex}.oxx-drawer nav a{color:var(--ink);border-bottom:1px solid var(--line);padding:12px 4px;font-size:1.02rem;font-weight:600}.oxx-drawer nav a.oxx-btn{color:#fff;border:none;justify-content:center}.oxx-drawer-foot{flex-direction:column;gap:10px;margin-top:22px;display:flex}.oxx-drawer-foot a{color:var(--navy);align-items:center;gap:8px;font-size:1.05rem;font-weight:700;display:inline-flex}.oxx-drawer-foot div{color:var(--mute);flex-direction:column;gap:4px;font-size:.88rem;display:flex}}.oxx-phero{border-bottom:1px solid var(--line);background:linear-gradient(180deg, var(--soft), #fff);padding:54px 0 34px}.oxx-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2);margin-bottom:10px;font-size:.74rem;font-weight:700}.oxx-phero h1{max-width:18em;margin:0 0 14px;font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.14}.oxx-phero>.oxx-wrap>p{color:var(--body);max-width:46em;margin:0 0 22px;font-size:1.08rem}.oxx-phero-cta{flex-wrap:wrap;gap:12px;display:flex}.oxx-count{font-family:var(--sans);color:var(--gold-2);vertical-align:middle;background:#b8935a1f;border-radius:20px;margin-left:8px;padding:3px 11px;font-size:.82rem;font-weight:700}.oxx-note{color:var(--mute);border-left:3px solid var(--gold);margin-top:26px;padding-left:14px;font-size:.9rem}.oxx-grid3{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.oxx-tile{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;gap:9px;padding:26px;transition:box-shadow .15s,transform .15s;display:flex}.oxx-tile:hover{transform:translateY(-2px);box-shadow:0 20px 44px -32px #0d234080}.oxx-tile-ic{background:var(--cas);width:52px;height:52px;color:var(--gold-2);border:1px solid #dce6f2;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.oxx-tile h3{font-size:1.2rem}.oxx-tile p{color:var(--body);margin:0;font-size:.94rem}.oxx-tile .oxx-link-btn{margin-top:auto;padding-top:6px}.oxx-docs{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.oxx-doc{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;transition:box-shadow .15s,transform .15s;display:flex;overflow:hidden}.oxx-doc:hover{transform:translateY(-2px);box-shadow:0 20px 44px -32px #0d234080}.oxx-doc-photo{aspect-ratio:4/4.4;background:linear-gradient(150deg,#e8eef6,#d9e5f0);position:relative;overflow:hidden}.oxx-doc-photo img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block;position:absolute;inset:0}.oxx-doc-ph{color:#8aa1bd;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.oxx-doc-body{flex-direction:column;flex:1;gap:6px;padding:18px 20px 20px;display:flex}.oxx-doc-body h3{font-size:1.06rem}.oxx-doc-body p{color:var(--mute);margin:0;font-size:.86rem}.oxx-doc-body .oxx-link-btn{margin-top:auto;padding-top:8px;font-size:.86rem}@media (max-width:980px){.oxx-grid3{grid-template-columns:repeat(2,1fr)}.oxx-docs{grid-template-columns:repeat(3,1fr)}}@media (max-width:680px){.oxx-grid3{grid-template-columns:1fr}.oxx-docs{grid-template-columns:repeat(2,1fr);gap:14px}.oxx-phero{padding:34px 0 26px}.oxx-phero-cta{flex-direction:column}.oxx-phero-cta .oxx-btn{width:100%}}.oxx .btn-solid,.oxx a.btn-solid,.oxx .btn-accent,.oxx a.btn-accent{background:var(--navy);color:#fff;box-shadow:0 14px 32px -18px #0d234099}.oxx .btn-solid:hover,.oxx .btn-accent:hover{filter:none;background:#163461}.oxx .btn-outline,.oxx a.btn-outline{color:var(--navy);background:#fff;border-color:#d8e0ea}.oxx .btn-outline:hover{background:var(--bg-alt);border-color:var(--gold)}.oxx .icon-tile{background:var(--navy);color:#fff;border-color:#0000}.oxx .field{color:var(--navy);background:#fff;border-color:#d8e0ea}.oxx .field::placeholder{color:#8b97a8}.oxx .field:focus{border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px #b8935a26}.oxx select.field{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23b8935a' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:40px}.oxx select.field option{color:var(--navy);background:#fff}.oxx textarea.field{resize:vertical;min-height:96px}.oxx-post-hero{background:var(--navy);position:relative;overflow:hidden}.oxx-post-bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0% 52%,#00000073 78%,#0000 96%);mask-image:linear-gradient(#000 0% 52%,#00000073 78%,#0000 96%)}.oxx-post-hero:after{content:"";pointer-events:none;background:linear-gradient(#09182d1f 0%,#09182d00 34%,#09182d6b 76%,#09182d00 97%);position:absolute;inset:0}.oxx-post-hero-in{z-index:1;flex-direction:column;justify-content:flex-end;min-height:clamp(340px,52vh,540px);padding-top:clamp(60px,12vh,130px);padding-bottom:clamp(26px,3.4vw,44px);display:flex;position:relative}.oxx-post-hero.is-flat{background:var(--navy)}.oxx-post-hero.is-flat:after,.oxx-post-hero.is-flat .oxx-post-bg{display:none}.oxx-post-hero.is-flat .oxx-post-hero-in{min-height:0;padding-top:clamp(48px,7vw,86px)}.oxx-post-kicker{align-items:center;gap:16px;margin-bottom:14px;display:inline-flex}.oxx-post-kicker a{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);text-shadow:0 1px 12px #09182db3;font-size:.74rem;font-weight:700}.oxx-post-kicker a:hover{color:#dcbd88}.oxx-post-hero h1{color:#fff;font-family:var(--serif);letter-spacing:-.01em;text-wrap:balance;text-shadow:0 2px 24px #09182d8c;width:100%;max-width:none;margin:0 0 16px;font-size:clamp(2rem,4.6vw,3.5rem);font-weight:500;line-height:1.08}.oxx-post-meta{color:#ffffffd1;text-shadow:0 1px 10px #09182d99;flex-wrap:wrap;align-items:center;gap:20px;font-size:.87rem;display:flex}.oxx-post-meta a{color:#ffffffd9;align-items:center;gap:6px;display:inline-flex}.oxx-post-meta a:hover{color:#fff}.oxx-post-body{max-width:1000px;padding:clamp(34px,5vw,58px) 28px clamp(56px,7vw,88px)}.oxx-post-body .prose-clinic{max-width:none;font-size:1.09rem}.oxx-post-body .prose-clinic img{border-radius:var(--r-lg)}@media (max-width:640px){.oxx-post-hero-in{min-height:clamp(300px,62vh,440px)}}.oxx-select{padding:clamp(28px,5vw,56px) 0 clamp(48px,7vw,88px)}.oxx-select-head{text-align:center;max-width:760px}.oxx-crumbs{color:var(--mute);align-items:center;gap:6px;margin-bottom:18px;font-size:.82rem;display:inline-flex}.oxx-crumbs a:hover{color:var(--navy)}.oxx-select-head .oxx-eyebrow{justify-content:center}.oxx-select-head h1{margin:12px 0 0;font-size:clamp(1.9rem,4vw,3rem);line-height:1.1}.oxx-select-lead{color:var(--body);max-width:620px;margin:18px auto 0;font-size:1.08rem;line-height:1.6}.oxx-select-grid{grid-template-columns:1fr 1fr;align-items:stretch;gap:26px;margin-top:clamp(30px,4vw,48px);display:grid}.oxx-select-card{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:20px;flex-direction:column;align-items:flex-start;padding:clamp(26px,3vw,40px);display:flex}.oxx-select-card.is-cas{border-top:4px solid #2f74c4}.oxx-select-card.is-priv{border-top:4px solid var(--gold)}.oxx-select-card h2{margin:16px 0 10px;font-size:clamp(1.4rem,2.4vw,1.85rem)}.oxx-select-card>p{color:var(--body);margin:0 0 24px;line-height:1.6}.oxx-select-tag{letter-spacing:.14em;text-transform:uppercase;border-radius:20px;align-items:center;gap:7px;padding:6px 13px;font-size:.72rem;font-weight:700;display:inline-flex}.oxx-select-tag.is-cas{color:#1e5aa0;background:#e8f1fb}.oxx-select-tag.is-priv{color:var(--gold-2);background:#f6efe3}.oxx-select-cta{margin-top:auto}.oxx-select-links{flex-direction:column;gap:10px;width:100%;margin-top:auto;display:flex}.oxx-select .oxx-select-link{background:var(--soft);border:1px solid var(--line);min-height:52px;font-family:var(--serif);color:var(--navy);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:12px 18px;font-size:1rem;font-weight:600;transition:background .14s,border-color .14s,transform .14s;display:flex}.oxx-select .oxx-select-link svg{color:var(--gold-2);flex:none;transition:transform .14s}.oxx-select .oxx-select-link:hover{border-color:var(--gold);background:#f6efe3}.oxx-select .oxx-select-link:hover svg{transform:translate(3px)}.oxx-select-help{background:var(--navy);color:#fff;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:clamp(28px,4vw,44px);padding:clamp(22px,3vw,32px);display:flex}.oxx-select-help h3{color:#fff;margin:0 0 6px;font-size:1.25rem}.oxx-select-help p{color:#b9cbe0;margin:0}.oxx-select-help-cta{flex-wrap:wrap;gap:12px;display:flex}.oxx-select-help .oxx-btn-outline{color:#fff;background:0 0;border-color:#ffffff80}.oxx-select-help .oxx-btn-outline:hover{background:#ffffff14;border-color:#fff}@media (max-width:820px){.oxx-select-grid{grid-template-columns:1fr}.oxx-select-help{flex-direction:column;align-items:flex-start}.oxx-select-help-cta{width:100%}.oxx-select-help-cta .oxx-btn{flex:1}}.oxx-triad{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:24px;margin-top:clamp(30px,4vw,48px);display:grid}.oxx-pcard{--c:var(--navy);border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;flex-direction:column;transition:box-shadow .16s,transform .16s;display:flex;overflow:hidden}.oxx-pcard:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.oxx-pcard-media{aspect-ratio:16/10;background:linear-gradient(150deg, color-mix(in srgb, var(--c) 85%, #000), var(--c));overflow:hidden}.oxx-pcard-media img{object-fit:cover;transform-origin:50%;width:100%;height:100%;display:block;transform:scale(1.06)}.oxx-pcard-body{flex-direction:column;flex:1;padding:clamp(22px,2.4vw,32px);display:flex}.oxx-pcard h2{color:var(--c);margin:0 0 10px;font-size:clamp(1.35rem,2.2vw,1.75rem)}.oxx-pcard-desc{color:var(--body);margin:0 0 22px;line-height:1.6}.oxx-select-grid>.oxx-pcard .oxx-pcard-body{text-align:center;align-items:center}.oxx-pcard-markers{width:100%;margin:4px 0 26px;display:flex}.oxx-pcard-marker{color:var(--body);flex-direction:column;flex:1;align-items:center;gap:8px;padding:4px 8px;font-size:.82rem;font-weight:600;display:flex}.oxx-pcard-marker svg{color:var(--c)}.oxx-pcard-marker+.oxx-pcard-marker{border-left:1px solid var(--line)}.oxx a.oxx-pcard-cta,.oxx-pcard-cta{background:var(--c);color:#fff;width:100%;margin-top:auto}.oxx-pcard-cta:hover{filter:brightness(1.08)}.oxx a.oxx-pcard-sub,.oxx-pcard-sub{color:var(--c);text-underline-offset:3px;align-items:center;gap:6px;margin:14px auto 0;font-size:.92rem;font-weight:600;text-decoration:underline;display:inline-flex}.oxx-triad .oxx-pcard-body{text-align:left;align-items:flex-start}.oxx-pcard-ic{width:54px;height:54px;color:var(--c);background:color-mix(in srgb, var(--c) 8%, #fff);border:1.5px solid color-mix(in srgb, var(--c) 35%, #fff);border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;display:inline-flex}.oxx-pcard-mark{color:var(--c);align-items:center;gap:8px;margin:0 0 22px;font-size:.9rem;font-weight:600;display:inline-flex}.oxx-pcard-mark svg{flex:none}.oxx-orient{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;flex-wrap:wrap;align-items:center;gap:28px;margin-top:clamp(26px,3.5vw,40px);padding:clamp(20px,2.4vw,30px) clamp(22px,3vw,36px);display:flex}.oxx-orient-lead{flex:1;align-items:center;gap:16px;min-width:260px;display:flex}.oxx-orient-ic{background:var(--cas);width:52px;height:52px;color:var(--navy);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.oxx-orient-lead h3{margin:0 0 4px;font-size:1.2rem}.oxx-orient-lead p{color:var(--body);margin:0;font-size:.95rem}.oxx-orient-facts{align-items:center;gap:22px;display:flex}.oxx-orient-facts span{color:var(--navy);flex-direction:column;align-items:center;gap:5px;font-size:.88rem;font-weight:600;display:inline-flex}.oxx-orient-facts svg{color:var(--gold-2)}.oxx-orient-cta{flex-wrap:wrap;gap:12px;display:flex}@media (max-width:900px){.oxx-triad{grid-template-columns:1fr}}@media (max-width:820px){.oxx-orient{flex-direction:column;align-items:stretch}.oxx-orient-facts{justify-content:space-around}.oxx-orient-cta .oxx-btn{flex:1}}.oxx .access-badge,.access-badge{letter-spacing:.04em;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:.74rem;font-weight:700;display:inline-flex}.access-badge.is-cas{color:#1e5aa0;background:#e8f1fb}.access-badge.is-priv{color:var(--gold-2,#a67c43);background:#f6efe3}.oxx-tech-toggle{opacity:0;pointer-events:none;position:absolute}.oxx-tech-extra{display:none}.oxx-tech-toggle:checked~.oxx-tech-extra{display:inline-flex}.oxx-tech-toggle:checked~.oxx-tech-showall{display:none}.oxx-tech-showall{cursor:pointer}.oxx .on-dark{color:#fff;--ink:#fff;--ink-soft:#ffffffd1;--ink-mute:#ffffffbd}.oxx .on-dark .card,.oxx .on-dark .glass{color:#14243c;--ink:#14243c;--ink-soft:#4d5a6b;--ink-mute:#7c8798}.oxx-foot-col>summary{cursor:default;list-style:none}.oxx-foot-col>summary::-webkit-details-marker{display:none}.oxx-foot-col>summary{justify-content:space-between;align-items:center;display:flex}.oxx-foot-col>summary h4{margin:0 0 12px}.oxx-foot-col>summary svg{color:#9fb4cc;flex:none;transition:transform .18s;display:none}.oxx-foot-col>:not(summary){display:block}.oxx-foot-col::details-content{content-visibility:visible;block-size:auto}.oxx-foot-legal-links{flex-wrap:wrap;gap:18px;display:flex}.oxx-foot-legal-links a{color:#8ba2bd}.oxx-foot-legal-links a:hover{color:#fff}@media (max-width:680px){.oxx-footer-cols{grid-template-columns:1fr;gap:4px}.oxx-foot-col{border-bottom:1px solid #ffffff1a}.oxx-foot-col>summary{cursor:pointer;padding:14px 0}.oxx-foot-col>summary h4{margin:0}.oxx-foot-col>summary svg{display:block}.oxx-foot-col[open]>summary svg{transform:rotate(180deg)}.oxx-foot-col:not([open])>:not(summary){display:none}.oxx-foot-col:not([open])::details-content{content-visibility:hidden;block-size:0}.oxx-foot-col>:not(summary){padding-bottom:6px}.oxx-footer-legal{flex-direction:column;align-items:flex-start;gap:12px}}.oxx-socials{gap:10px;margin-top:18px;display:flex}.oxx-socials a{color:#cfe0f2;background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;transition:background .15s,color .15s;display:inline-flex}.oxx-socials a:hover{background:var(--gold);color:#fff}.oxx-foot-col .oxx-foot-loc{align-items:flex-start;gap:8px;display:flex}.oxx-foot-col .oxx-foot-loc svg{color:var(--gold);flex:none;margin-top:3px}.oxx-foot-col a[href^=tel],.oxx-foot-col a[href^=mailto],.oxx-foot-col a[href*=oxxygene\.ro]{align-items:center;gap:8px;display:inline-flex}.oxx-foot-col a svg{color:var(--gold);flex:none}.oxx-sticky-cta{display:none}@media (max-width:760px){.oxx-sticky-cta{z-index:60;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);background:#fffffff5;gap:10px;padding:10px 14px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px -18px #0d234080}.oxx-sticky-cta .btn{flex:1;justify-content:center;min-height:44px;font-size:.92rem}.oxx-main{padding-bottom:72px}}

/* /assets/site/site.css */
/* Completările site-ului peste stilurile originale (base.css, oxx.css, vendorizate neschimbate): doar ce aveau
   componentele client ale vechiului frontend (închiderea meniului de pe telefon, starea formularelor, bannerul de
   cookie-uri) și accesibilitate (linkul „Sari la conținut” vizibil la focus). */
.oxx-skip:focus { left: 16px !important; top: 16px !important; z-index: 200; padding: 10px 14px; border-radius: 10px; background: #fff; color: #0d2340; box-shadow: 0 10px 30px -10px rgba(0,0,0,.4); }
.oxx-drawer-close { position: absolute; top: 22px; right: 20px; width: 40px; height: 40px; border-radius: 12px; cursor: pointer; }
.oxx-drawer-close::before, .oxx-drawer-close::after { content: ""; position: absolute; left: 10px; right: 10px; top: 19px; height: 2px; border-radius: 2px; background: currentColor; transform: rotate(45deg); }
.oxx-drawer-close::after { transform: rotate(-45deg); }
.oxx-mega-sub[hidden] { display: none; }
.oxx-form-status { margin: 14px 0 0; font-size: .92rem; line-height: 1.5; color: var(--ink-mute, #5a6b80); }
.oxx-form-status:empty { display: none; }
.oxx-form-status[data-tone="ok"] { color: #1e7d55; }
.oxx-form-status[data-tone="error"] { color: #b34733; }


/* Clipurile din textele bogate (articole, pagini; <video data-media>, src/site/context.mjs): pe toată lățimea textului,
   cu colțurile și culoarea temei; un clip vertical nu depășește înălțimea ecranului. */
.oxx .oxx-rich-video { display: block; width: 100%; max-width: 100%; height: auto; max-height: min(80vh, 720px); margin: 1.4em 0; border-radius: var(--p-r-card, 16px); background: var(--p-navy, #0d2340); }

/* /assets/site/premium.css */
/* Oxxygene: stratul vizual „premium”. Antetul, mega-meniul, meniul de pe telefon, subsolul și bara de jos de pe
   telefon (pe toate paginile) și homepage-ul (secțiunile paginii cu șablonul „acasa”). Se încarcă după stilurile
   originale (base.css, oxx.css) și păstrează tokenii brandului: bleumarin, auriu, albastru-gri.

   Mobil întâi: regulile de bază sunt pentru telefon; ecranele mari se adaugă cu min-width (640, 768, 1024, 1180).
   Sistemul de forme: butoane 12px, carduri 20px, panouri 28px, etichete (chips) rotunjite complet.
   Tipografia: Plus Jakarta Sans pentru titluri și butoane, Hanken Grotesk pentru text (fonturile site-ului).
   O singură temă (deschisă), ca pe tot site-ul; zona închisă la culoare e doar subsolul și panoul final. */

:root {
  --p-navy: #0d2340; --p-navy-2: #15325a; --p-navy-3: #24477a;
  --p-ink: #0d2340; --p-body: #48566a; --p-mute: #5f6d82;
  --p-line: #e2e8f1; --p-line-2: #cfd8e5;
  --p-soft: #f5f8fc; --p-tint: #edf2f9;
  --p-gold: #b8935a; --p-gold-ink: #87622c; --p-gold-soft: #f7f0e5;
  --p-r-btn: 12px; --p-r-card: 20px; --p-r-panel: 28px;
  --p-shadow-sm: 0 1px 2px rgb(13 35 64 / .05), 0 6px 18px -10px rgb(13 35 64 / .16);
  --p-shadow-md: 0 2px 6px rgb(13 35 64 / .05), 0 22px 44px -22px rgb(13 35 64 / .28);
  --p-shadow-lg: 0 34px 80px -34px rgb(13 35 64 / .38);
  --p-display: "Plus Jakarta Sans", "Plus Jakarta Sans Fallback", ui-sans-serif, system-ui, sans-serif;
  --p-text: "Hanken Grotesk", "Hanken Grotesk Fallback", ui-sans-serif, system-ui, sans-serif;
  --p-ease: cubic-bezier(.16, 1, .3, 1);
  --p-header-h: 64px;
  --p-gutter: 20px;
}
@media (min-width: 768px) { :root { --p-gutter: 32px; } }
@media (min-width: 1024px) { :root { --p-header-h: 72px; } }

/* Titlurile din zonele noi: fontul de titlu al site-ului (nu serif-ul stilurilor originale). */
.oxx :is(.oxp-header, .oxp-drawer, .oxp-footer, .oxp-search, .oxs, .oxh) :is(h1, h2, h3, h4) { font-family: var(--p-display); letter-spacing: -.02em; }
html.oxp-lock, html.oxp-lock body { overflow: hidden; }

.oxx .oxp-wrap { width: 100%; max-width: 1240px; margin-inline: auto; padding-inline: var(--p-gutter); }
.oxp-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ——— Butoanele și linkurile cu săgeată. */
.oxx .oxp-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 20px; border-radius: var(--p-r-btn); border: 1.5px solid transparent; font: 600 15px/1.1 var(--p-display); letter-spacing: -.005em; white-space: nowrap; cursor: pointer; text-decoration: none; transition: background-color .2s, color .2s, border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
.oxx .oxp-btn:active { transform: translateY(1px) scale(.99); }
.oxx .oxp-btn svg { flex: none; }
.oxx .oxp-btn-primary { background: var(--p-navy); color: #fff; box-shadow: 0 10px 22px -12px rgb(13 35 64 / .6); }
.oxx .oxp-btn-primary:hover { background: var(--p-navy-2); }
.oxx .oxp-btn-ghost { background: #fff; color: var(--p-navy); border-color: var(--p-line-2); }
.oxx .oxp-btn-ghost:hover { border-color: var(--p-navy); }
.oxx .oxp-btn-light { background: #fff; color: var(--p-navy); }
.oxx .oxp-btn-light:hover { background: var(--p-tint); }
.oxx .oxp-btn-outline-light { color: #fff; border-color: rgb(255 255 255 / .38); }
.oxx .oxp-btn-outline-light:hover { border-color: #fff; background: rgb(255 255 255 / .06); }
.oxx .oxp-btn-sm { min-height: 42px; padding: 0 15px; font-size: 14px; }
.oxx .oxp-btn-block { width: 100%; }
.oxx .oxp-link { display: inline-flex; align-items: center; gap: 6px; font: 600 15px/1.2 var(--p-display); color: var(--p-navy); }
.oxx .oxp-link svg { transition: transform .2s var(--p-ease); }
.oxx .oxp-link:hover svg, a:hover > .oxp-link svg { transform: translateX(3px); }
.oxx .oxp-icon-btn { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: var(--p-r-btn); border: 1px solid var(--p-line); background: #fff; color: var(--p-ink); cursor: pointer; transition: border-color .2s, background-color .2s; }
.oxx .oxp-icon-btn:hover { border-color: var(--p-line-2); background: var(--p-soft); }

/* ——— Bara de sus (doar pe ecranele mari): CAS, locațiile, telefonul. */
.oxx .oxp-topbar { display: none; background: var(--p-navy); color: rgb(255 255 255 / .82); font: 500 13px/1 var(--p-text); }
.oxx .oxp-topbar-in { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 38px; }
.oxx .oxp-topbar a { display: inline-flex; align-items: center; gap: 8px; transition: color .2s; }
.oxx .oxp-topbar a:hover { color: #fff; }
.oxx .oxp-topbar svg { color: var(--p-gold); }
.oxx .oxp-topbar-right { display: flex; align-items: center; gap: 22px; }
@media (min-width: 1024px) { .oxx .oxp-topbar { display: block; } }

/* ——— Antetul: fix la derulare, cu fundal translucid; meniul principal pe un singur rând de la 1180px. */
.oxx .oxp-header { position: sticky; top: 0; z-index: 50; background: rgb(255 255 255 / .94); -webkit-backdrop-filter: saturate(160%) blur(14px); backdrop-filter: saturate(160%) blur(14px); border-bottom: 1px solid transparent; transition: border-color .2s, box-shadow .2s; }
.oxx .oxp-header[data-scrolled] { border-bottom-color: var(--p-line); box-shadow: 0 10px 30px -24px rgb(13 35 64 / .45); }
.oxx .oxp-header-in { display: flex; align-items: center; gap: 12px; height: var(--p-header-h); }
.oxx .oxp-logo { display: inline-flex; align-items: center; flex: none; }
.oxx .oxp-logo img { height: 32px; width: auto; }
.oxx .oxp-nav { display: none; }
.oxx .oxp-nav-link { display: inline-flex; align-items: center; gap: 4px; height: 40px; padding: 0 11px; border: 0; border-radius: 10px; background: none; font: 600 14.5px/1 var(--p-display); color: var(--p-ink); white-space: nowrap; cursor: pointer; transition: background-color .2s, color .2s; }
.oxx .oxp-nav-link:hover, .oxx .oxp-nav-link[aria-expanded="true"] { background: var(--p-soft); }
.oxx .oxp-nav-link[aria-current="page"] { color: var(--p-navy-3); box-shadow: inset 0 -2px 0 var(--p-gold); border-radius: 10px 10px 2px 2px; }
.oxx .oxp-nav-link svg { transition: transform .2s var(--p-ease); }
.oxx .oxp-nav-link[aria-expanded="true"] svg { transform: rotate(180deg); }
.oxx .oxp-header-actions { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.oxx .oxp-book { display: none; }
@media (min-width: 640px) { .oxx .oxp-book { display: inline-flex; } }
@media (min-width: 1024px) { .oxx .oxp-logo img { height: 36px; } }
@media (min-width: 1180px) {
  .oxx .oxp-nav { display: flex; align-items: center; gap: 2px; margin-left: 12px; }
  .oxx .oxp-burger { display: none; }
}


/* ——— Mega-meniul „Specialități”: toate specialitățile pe două coloane, câte un rând fiecare (fără derulare), previzualizarea serviciilor
   celei alese în dreapta, bara de programări dedesubt. */
.oxx .oxp-mega { position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-top: 1px solid var(--p-line); box-shadow: var(--p-shadow-lg); opacity: 0; visibility: hidden; transform: translateY(-6px); transition: opacity .18s, transform .24s var(--p-ease), visibility 0s linear .24s; }
.oxx .oxp-mega.is-open { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.oxx .oxp-mega-in { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 32px; padding-block: 20px 24px; }
.oxx .oxp-mega-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 24px; align-content: start; }
.oxx .oxp-mega-spec { display: flex; align-items: center; gap: 14px; min-height: 52px; padding: 7px 14px 7px 8px; border-radius: 12px; color: var(--p-ink); transition: background-color .15s; }
.oxx .oxp-mega-spec .oxp-ico { flex: none; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: var(--p-tint); color: var(--p-navy-3); transition: background-color .15s, color .15s; }
.oxx .oxp-mega-name { flex: 1; min-width: 0; font: 600 15px/1.3 var(--p-display); }
.oxx .oxp-mega-spec small { flex: none; font: 500 13px/1 var(--p-text); color: var(--p-mute); white-space: nowrap; }
.oxx .oxp-mega-spec:hover, .oxx .oxp-mega-spec.is-active { background: var(--p-soft); }
.oxx .oxp-mega-spec.is-active .oxp-ico { background: var(--p-navy); color: #fff; }
.oxx .oxp-mega-preview { border-radius: var(--p-r-card); background: var(--p-soft); padding: 20px 22px; align-self: start; }
.oxx .oxp-mega-pane { display: none; }
.oxx .oxp-mega-pane.is-active { display: grid; gap: 10px; }
.oxx .oxp-mega-pane h3 { margin: 0; font-size: 18px; font-weight: 700; color: var(--p-ink); }
.oxx .oxp-mega-pane > p { margin: 0; font: 400 14px/1.5 var(--p-text); color: var(--p-body); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxp-mega-services { display: grid; margin: 2px 0 4px; padding: 0; border-top: 1px solid var(--p-line); }
.oxx .oxp-mega-services li { border-bottom: 1px solid var(--p-line); }
.oxx .oxp-mega-services a { display: block; padding: 9px 0; font: 500 14px/1.35 var(--p-text); color: var(--p-body); transition: color .15s; }
.oxx .oxp-mega-services a:hover { color: var(--p-ink); }
.oxx .oxp-mega-pane .oxp-link { font-size: 14.5px; }
.oxx .oxp-mega-all { margin: 14px 0 0 8px; font-size: 15px; }

/* ——— Căutarea: panou sub antet (pe telefon, pe tot ecranul): caseta, rezultatele grupate pe tipuri, iar până
   scrii ceva, specialitățile ca sugestii. Fără JavaScript, formularul duce la pagina /cautare/. */
.oxx .oxp-search { position: fixed; inset: 0; z-index: 95; visibility: hidden; transition: visibility 0s linear .25s; }
.oxx .oxp-search.is-open { visibility: visible; transition-delay: 0s; }
.oxx .oxp-search-backdrop { position: absolute; inset: 0; background: rgb(9 24 45 / .4); opacity: 0; transition: opacity .25s; }
.oxx .oxp-search.is-open .oxp-search-backdrop { opacity: 1; }
.oxx .oxp-search-panel { position: relative; max-height: 100dvh; overflow-y: auto; background: #fff; padding: 12px 0 20px; box-shadow: var(--p-shadow-lg); transform: translateY(-12px); opacity: 0; transition: transform .28s var(--p-ease), opacity .2s; }
.oxx .oxp-search.is-open .oxp-search-panel { transform: none; opacity: 1; }
.oxx .oxp-search-form { display: flex; align-items: center; gap: 10px; min-height: 56px; padding: 4px 6px 4px 16px; border: 1.5px solid var(--p-line-2); border-radius: 16px; background: #fff; transition: border-color .2s, box-shadow .2s; }
.oxx .oxp-search-form:focus-within { border-color: var(--p-navy); box-shadow: 0 0 0 4px rgb(13 35 64 / .08); }
.oxx .oxp-search-form > svg { flex: none; color: var(--p-mute); }
.oxx .oxp-search-form input { flex: 1; min-width: 0; height: 46px; border: 0; outline: 0; background: none; font: 500 17px/1.2 var(--p-text); color: var(--p-ink); }
.oxx .oxp-search-form input::placeholder { color: var(--p-mute); }
.oxx .oxp-search-form input:focus-visible { box-shadow: none; border-radius: 0; }
.oxx .oxp-search-form input::-webkit-search-cancel-button { display: none; }
.oxx .oxp-search-form .oxp-icon-btn { border: 0; }
.oxx .oxp-search-results:empty { display: none; }
.oxx .oxp-search-results, .oxx .oxp-search-suggest { margin-top: 16px; }
.oxx .oxp-search-suggest[hidden] { display: none; }
.oxx .oxp-search-suggest h2, .oxx .oxp-sr-group h2 { margin: 0 0 8px; font-size: 13px; font-weight: 700; letter-spacing: .02em; color: var(--p-mute); }
.oxx .oxp-search-suggest ul { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px 12px; margin: 0; padding: 0; }
@media (min-width: 640px) { .oxx .oxp-search-suggest ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.oxx .oxp-search-suggest a { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 4px 8px 4px 4px; border-radius: 12px; font: 600 14.5px/1.25 var(--p-display); color: var(--p-ink); }
.oxx .oxp-search-suggest a:hover { background: var(--p-soft); }
.oxx .oxp-search-suggest .oxp-ico { flex: none; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px; background: var(--p-tint); color: var(--p-navy-3); }
.oxx .oxp-sr-group + .oxp-sr-group { margin-top: 18px; }
.oxx .oxp-sr-group ul { display: grid; gap: 2px; margin: 0; padding: 0; }
.oxx .oxp-sr-group a, .oxx .oxs-group a { display: grid; gap: 2px; padding: 10px 12px; margin-inline: -12px; border-radius: 12px; transition: background-color .15s; }
.oxx .oxp-sr-group a:hover, .oxx .oxp-sr-group a:focus-visible, .oxx .oxs-group a:hover { background: var(--p-soft); }
.oxx .oxp-sr-group b, .oxx .oxs-group b { font: 600 15.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxp-sr-group span, .oxx .oxs-group span { font: 400 14px/1.45 var(--p-text); color: var(--p-mute); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxp-sr-more { display: inline-flex; margin-top: 16px; }
.oxx .oxp-sr-empty { margin: 4px 0 0; font: 400 15px/1.5 var(--p-text); color: var(--p-body); }
@media (min-width: 768px) {
  .oxx .oxp-search-panel { padding: 22px 0 28px; max-height: 80vh; border-radius: 0 0 24px 24px; }
  .oxx .oxp-search-panel .oxp-wrap { max-width: 860px; }
  .oxx .oxp-search-suggest ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
/* Pagina /cautare/. */
.oxx .oxs { padding: 32px 0 64px; }
.oxx .oxs .oxp-wrap { max-width: 860px; }
.oxx .oxs h1 { margin: 0 0 16px; font-family: var(--p-display); font-size: clamp(1.7rem, 1.2rem + 2vw, 2.4rem); font-weight: 700; letter-spacing: -.02em; color: var(--p-ink); }
.oxx .oxs-count { margin: 14px 0 0; font: 400 15px/1.5 var(--p-text); color: var(--p-body); }
.oxx .oxs-group { margin-top: 26px; }
.oxx .oxs-group h2 { margin: 0 0 8px; font-family: var(--p-display); font-size: 14px; font-weight: 700; color: var(--p-mute); letter-spacing: .02em; }
.oxx .oxs-group ul { display: grid; gap: 2px; margin: 0; padding: 0; }

/* ——— Meniul de pe telefon: panou din dreapta, cu specialitățile într-o listă care se deschide. */
.oxx .oxp-drawer { position: fixed; inset: 0; z-index: 90; visibility: hidden; transition: visibility 0s linear .34s; }
.oxx .oxp-drawer.is-open { visibility: visible; transition-delay: 0s; }
.oxx .oxp-drawer-backdrop { position: absolute; inset: 0; background: rgb(9 24 45 / .45); opacity: 0; transition: opacity .3s; }
.oxx .oxp-drawer.is-open .oxp-drawer-backdrop { opacity: 1; }
.oxx .oxp-drawer-panel { position: absolute; top: 0; right: 0; bottom: 0; width: min(440px, 100%); display: flex; flex-direction: column; background: #fff; transform: translateX(100%); transition: transform .34s var(--p-ease); }
.oxx .oxp-drawer.is-open .oxp-drawer-panel { transform: none; }
.oxx .oxp-drawer-head { display: flex; align-items: center; justify-content: space-between; height: var(--p-header-h); padding-inline: var(--p-gutter); border-bottom: 1px solid var(--p-line); flex: none; }
.oxx .oxp-drawer-body { flex: 1; overflow-y: auto; overscroll-behavior: contain; padding: 8px var(--p-gutter) 20px; }
.oxx .oxp-drawer-nav > a, .oxx .oxp-drawer-nav > details > summary { display: flex; align-items: center; justify-content: space-between; min-height: 54px; font: 600 17px/1.2 var(--p-display); color: var(--p-ink); border-bottom: 1px solid var(--p-line); cursor: pointer; list-style: none; }
.oxx .oxp-drawer-nav > details > summary::-webkit-details-marker { display: none; }
.oxx .oxp-drawer-nav svg { color: var(--p-mute); transition: transform .2s var(--p-ease); }
.oxx .oxp-drawer-nav details[open] > summary svg { transform: rotate(180deg); }
.oxx .oxp-drawer-specs { display: grid; gap: 2px; padding: 8px 0 14px; border-bottom: 1px solid var(--p-line); }
.oxx .oxp-drawer-specs a { display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 6px 4px; font: 500 15.5px/1.3 var(--p-text); color: var(--p-body); border-radius: 10px; }
.oxx .oxp-drawer-specs a .oxp-ico { display: grid; place-items: center; width: 32px; height: 32px; flex: none; border-radius: 10px; background: var(--p-tint); color: var(--p-navy-3); }
.oxx .oxp-drawer-specs .oxp-all { font-weight: 600; color: var(--p-ink); }
.oxx .oxp-drawer-sub { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 16px; padding: 14px 0 4px; }
.oxx .oxp-drawer-sub a { padding: 8px 0; font: 500 15px/1.3 var(--p-text); color: var(--p-body); }
.oxx .oxp-drawer-foot { flex: none; display: grid; gap: 10px; padding: 14px var(--p-gutter) calc(14px + env(safe-area-inset-bottom)); border-top: 1px solid var(--p-line); background: var(--p-soft); }
.oxx .oxp-drawer-foot .oxp-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.oxx .oxp-drawer-locs { display: grid; gap: 6px; margin: 4px 0 0; padding: 0; }
.oxx .oxp-drawer-locs li { display: flex; gap: 8px; font: 500 13px/1.4 var(--p-text); color: var(--p-mute); }
.oxx .oxp-drawer-locs svg { flex: none; margin-top: 1px; color: var(--p-gold-ink); }

/* ——— Subsolul: banda de programări (telefonul, emailurile, butoanele), apoi brandul și locațiile ca text aliniat,
   apoi coloanele de linkuri (pliabile pe telefon), apoi mențiunile legale. */
.oxx .oxp-footer { background: var(--p-navy); color: rgb(255 255 255 / .76); font: 400 15px/1.6 var(--p-text); padding: 40px 0 calc(92px + env(safe-area-inset-bottom)); }
.oxx .oxp-footer :where(p, li, dt, span) { color: inherit; }
.oxx .oxp-footer a { transition: color .2s; }
.oxx .oxp-footer a:hover { color: #fff; }
.oxx .oxp-footer :is(h2, h3) { color: #fff; }
.oxx .oxp-foot-cta { display: grid; gap: 18px; padding-bottom: 28px; border-bottom: 1px solid rgb(255 255 255 / .12); }
.oxx .oxp-foot-h { margin: 0 0 6px; font-size: 14px; font-weight: 600; color: rgb(255 255 255 / .7); letter-spacing: 0; }
.oxx .oxp-footer .oxp-foot-h { color: rgb(255 255 255 / .7); }
.oxx .oxp-foot-cta .oxp-tel-big { display: inline-flex; align-items: center; gap: 12px; font: 700 30px/1.1 var(--p-display); letter-spacing: -.02em; color: #fff; }
.oxx .oxp-foot-cta .oxp-tel-big svg { color: var(--p-gold); }
.oxx .oxp-foot-mail { display: flex; flex-wrap: wrap; gap: 6px 22px; margin-top: 12px; }
.oxx .oxp-foot-mail a { display: inline-flex; align-items: center; gap: 8px; }
.oxx .oxp-foot-mail svg { color: var(--p-gold); flex: none; }
.oxx .oxp-foot-cta-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.oxx .oxp-foot-top { display: grid; gap: 28px; padding-block: 28px; border-bottom: 1px solid rgb(255 255 255 / .12); }
.oxx .oxp-foot-brand img { height: 34px; width: auto; filter: brightness(0) invert(1); }
.oxx .oxp-foot-brand p { margin: 14px 0 16px; max-width: 38ch; }
.oxx .oxp-badge { display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; border-radius: 999px; border: 1px solid rgb(255 255 255 / .16); font: 600 13px/1 var(--p-display); color: #fff; }
.oxx .oxp-badge svg { color: var(--p-gold); }
.oxx .oxp-socials { display: flex; gap: 8px; margin-top: 16px; }
.oxx .oxp-socials a { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; border: 1px solid rgb(255 255 255 / .16); color: #fff; }
.oxx .oxp-socials a:hover { background: rgb(255 255 255 / .08); }
.oxx .oxp-hours { display: grid; gap: 2px; margin: 0; flex: 1; max-width: 260px; }
.oxx .oxp-hours div { display: flex; justify-content: space-between; gap: 12px; }
.oxx .oxp-hours dd { margin: 0; color: #fff; font-variant-numeric: tabular-nums; }
/* Locațiile din subsol: câte un card cu starea programului (site.js), adresa, programul (azi evidențiat) și acțiunile. */
.oxx .oxp-foot-locs { display: grid; gap: 12px; }
.oxx .oxp-fl { display: flex; flex-direction: column; gap: 12px; padding: 20px; border-radius: var(--p-r-card); background: rgb(255 255 255 / .045); border: 1px solid rgb(255 255 255 / .09); }
.oxx .oxp-fl-status { align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; padding: 6px 11px; border-radius: 999px; background: rgb(255 255 255 / .07); font: 600 12.5px/1 var(--p-display); color: rgb(255 255 255 / .78); }
.oxx .oxp-fl-status[hidden] { display: none; }
.oxx .oxp-fl-status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: rgb(255 255 255 / .45); }
.oxx .oxp-fl-status.is-open { color: #fff; background: rgb(52 211 153 / .13); }
.oxx .oxp-fl-status.is-open::before { background: #34d399; box-shadow: 0 0 0 3px rgb(52 211 153 / .22); }
.oxx .oxp-fl h3 { margin: 0; font-size: 17px; line-height: 1.3; font-weight: 700; color: #fff; }
.oxx .oxp-fl-addr { display: flex; gap: 10px; margin: 0; font-size: 14.5px; line-height: 1.5; color: rgb(255 255 255 / .75); }
.oxx .oxp-fl-addr svg { flex: none; margin-top: 3px; color: var(--p-gold); }
.oxx .oxp-fl-hours { display: grid; margin: 0; border-top: 1px solid rgb(255 255 255 / .08); }
.oxx .oxp-fl-hours div { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 9px 0; border-bottom: 1px solid rgb(255 255 255 / .08); font-size: 14.5px; color: rgb(255 255 255 / .68); }
.oxx .oxp-fl-hours dd { margin: 0; font-variant-numeric: tabular-nums; color: rgb(255 255 255 / .9); }
.oxx .oxp-fl-hours .is-today { color: #fff; font-weight: 600; }
.oxx .oxp-fl-hours .is-today dd { color: #fff; }
.oxx .oxp-fl-hours .is-today dt::after { content: "azi"; margin-left: 8px; padding: 3px 7px; border-radius: 999px; background: rgb(184 147 90 / .22); color: #e8cc9c; font: 700 10.5px/1 var(--p-display); text-transform: uppercase; letter-spacing: .05em; vertical-align: 2px; }
.oxx .oxp-fl-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 4px; }
.oxx .oxp-fl .oxp-link { color: #fff; font-size: 14.5px; }
.oxx .oxp-fl-dir { display: inline-flex; align-items: center; gap: 7px; min-height: 40px; padding: 0 14px; border-radius: var(--p-r-btn); border: 1px solid rgb(255 255 255 / .2); font: 600 13.5px/1 var(--p-display); color: #fff; transition: background-color .2s, border-color .2s; }
.oxx .oxp-fl-dir svg { color: var(--p-gold); }
.oxx .oxp-fl-dir:hover { background: rgb(255 255 255 / .08); border-color: rgb(255 255 255 / .4); }
.oxx .oxp-foot-cols { display: grid; padding-block: 8px 20px; border-bottom: 1px solid rgb(255 255 255 / .12); }
.oxx .oxp-foot-col { border-bottom: 1px solid rgb(255 255 255 / .1); }
.oxx .oxp-foot-col:last-child { border-bottom: 0; }
.oxx .oxp-foot-col summary { display: flex; align-items: center; justify-content: space-between; min-height: 54px; cursor: pointer; list-style: none; }
.oxx .oxp-foot-col summary::-webkit-details-marker { display: none; }
.oxx .oxp-foot-col summary h3 { margin: 0; font-size: 15px; font-weight: 700; }
.oxx .oxp-foot-col summary svg { color: rgb(255 255 255 / .6); transition: transform .2s var(--p-ease); }
.oxx .oxp-foot-col[open] summary svg { transform: rotate(180deg); }
.oxx .oxp-foot-col ul { display: grid; gap: 2px; margin: 0; padding: 0 0 14px; }
.oxx .oxp-foot-col li a { display: block; padding: 6px 0; font-size: 14.5px; }
.oxx .oxp-foot-legal { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; padding-top: 22px; font-size: 13px; color: rgb(255 255 255 / .62); }
.oxx .oxp-foot-legal nav { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.oxx .oxp-foot-legal button { background: none; border: 0; padding: 0; cursor: pointer; color: inherit; font: inherit; }
.oxx .oxp-foot-legal button:hover { color: #fff; }
@media (min-width: 640px) {
  .oxx .oxp-foot-cta-actions { display: flex; flex-wrap: wrap; }
  .oxx .oxp-foot-locs { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
}
@media (min-width: 768px) {
  .oxx .oxp-foot-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; padding-block: 32px; }
  .oxx .oxp-foot-col { border: 0; }
  .oxx .oxp-foot-col summary { min-height: 0; margin-bottom: 12px; cursor: default; pointer-events: none; }
  .oxx .oxp-foot-col summary svg { display: none; }
}
@media (min-width: 1024px) {
  .oxx .oxp-footer { padding: 56px 0 28px; }
  .oxx .oxp-foot-cta { grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 24px; padding-bottom: 36px; }
  .oxx .oxp-foot-cta .oxp-tel-big { font-size: 38px; }
  .oxx .oxp-foot-top { grid-template-columns: minmax(0, .85fr) minmax(0, 2fr); align-items: start; gap: 56px; padding-block: 40px; }
  .oxx .oxp-foot-locs { gap: 16px; }
  .oxx .oxp-fl { padding: 24px; }
  .oxx .oxp-foot-cols { grid-template-columns: 1fr 1fr 2fr; }
  .oxx .oxp-foot-col.is-wide ul { display: block; columns: 2; column-gap: 32px; }
}

/* ——— Bara de jos de pe telefon: Sună, WhatsApp, Programare (evidențiată), CAS. */
.oxx .oxp-sticky { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 6px; padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); background: rgb(255 255 255 / .97); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-top: 1px solid var(--p-line); box-shadow: 0 -10px 30px -24px rgb(13 35 64 / .5); }
.oxx .oxp-sticky a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; min-height: 50px; border-radius: 14px; font: 600 12px/1 var(--p-display); color: var(--p-ink); }
.oxx .oxp-sticky a svg { color: var(--p-navy-3); }
.oxx .oxp-sticky a.is-primary { background: var(--p-navy); color: #fff; }
.oxx .oxp-sticky a.is-primary svg { color: #fff; }
.oxx .oxp-sticky a.is-wa svg { color: #1f9d55; }
.oxx .oxp-sticky a[aria-current="page"]:not(.is-primary) { background: var(--p-tint); }
.oxx .oxp-sticky a[aria-current="page"]:not(.is-primary) svg { color: var(--p-gold-ink); }
.oxp-wa { position: fixed; left: 20px; bottom: 20px; z-index: 55; display: none; width: 54px; height: 54px; border-radius: 50%; background: #25d366; color: #fff; align-items: center; justify-content: center; box-shadow: 0 12px 28px -10px rgb(10 32 58 / .5); }
@media (min-width: 1024px) {
  .oxx .oxp-sticky { display: none; }
  .oxp-wa { display: inline-flex; }
}

/* ——— Apariția la derulare (doar pe desktop, cu JavaScript și fără „reduce motion”): secțiunile intră discret. Pe
   telefon conținutul apare direct (derulare rapidă, fără risc de zone goale). */
@media (prefers-reduced-motion: no-preference) and (min-width: 1024px) {
  .oxp-js [data-reveal] { opacity: 0; transform: translateY(14px); transition: opacity .5s var(--p-ease), transform .6s var(--p-ease); }
  .oxp-js [data-reveal].is-in { opacity: 1; transform: none; }
}

/* ================================== Homepage ================================== */
.oxx .oxh { padding-block: 44px; }
.oxx .oxh-head { display: grid; gap: 8px; margin-bottom: 20px; }
.oxx .oxh-head h2, .oxx .oxh h2 { font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.15rem); line-height: 1.15; font-weight: 700; color: var(--p-ink); margin: 0; text-wrap: balance; }
.oxx .oxh-head p, .oxx .oxh-intro { margin: 0; font: 400 16px/1.55 var(--p-text); color: var(--p-body); max-width: 60ch; }
.oxx .oxh-head-row { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 8px 16px; }
.oxx .oxh-head-row .oxp-link { white-space: nowrap; }
.oxx .oxh-railnav { display: none; gap: 8px; }
.oxx .oxh-railnav button { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--p-line-2); background: #fff; color: var(--p-ink); cursor: pointer; transition: border-color .2s, background-color .2s; }
.oxx .oxh-railnav button:hover { border-color: var(--p-navy); }
@media (min-width: 768px) { .oxx .oxh { padding-block: 64px; } .oxx .oxh-head { margin-bottom: 28px; } }
@media (min-width: 1024px) { .oxx .oxh { padding-block: 80px; } .oxx .oxh-railnav { display: flex; } }

/* Lista derulantă (programe, echipă): pe telefon o „bandă” cu snap; pe ecranele mari, grilă. */
.oxx .oxh-rail { display: grid; grid-auto-flow: column; grid-auto-columns: 80%; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-inline: calc(-1 * var(--p-gutter)); padding: 4px var(--p-gutter) 8px; scroll-padding-inline: var(--p-gutter); }
.oxx .oxh-rail::-webkit-scrollbar { display: none; }
.oxx .oxh-rail > * { scroll-snap-align: start; }
@media (min-width: 640px) { .oxx .oxh-rail { grid-auto-columns: 46%; } }
@media (min-width: 1024px) { .oxx .oxh-rail { grid-auto-columns: calc((100% - 3 * 16px) / 4); gap: 16px; margin-inline: 0; padding-inline: 0; scroll-padding-inline: 0; } }

/* ——— Antetul paginii. Telefon: fotografia (medicul) sus, pe toată lățimea; textul pe un panou alb care o acoperă
   ușor; reperele dedesubt. Desktop: fotografia pe toată lățimea secțiunii, cu un văl deschis în stânga pentru text;
   reperele pe un card care se suprapune peste marginea de jos a fotografiei. */
.oxx .oxh-hero { position: relative; padding: 0 0 8px; background: #fff; }
.oxx .oxh-hero-bg { position: relative; height: clamp(230px, 62vw, 330px); overflow: hidden; background: #eef2f7; }
.oxx .oxh-hero-bg img { width: 100%; height: 100%; object-fit: cover; object-position: 80% 22%; }
.oxx .oxh-hero-bg::after { content: ""; position: absolute; inset: auto 0 0 0; height: 45%; background: linear-gradient(180deg, rgb(255 255 255 / 0), rgb(255 255 255 / .9)); }
.oxx .oxh-hero-in { position: relative; z-index: 1; }
.oxx .oxh-hero.has-img .oxh-hero-copy { margin-top: -36px; padding: 22px 20px 4px; border-radius: 24px 24px 0 0; background: #fff; margin-inline: calc(-1 * var(--p-gutter) + 4px); padding-inline: calc(var(--p-gutter) - 4px); }
.oxx .oxh-hero h1 { margin: 0; font-size: clamp(1.95rem, 1.2rem + 3.1vw, 3.05rem); line-height: 1.08; font-weight: 700; letter-spacing: -.03em; color: var(--p-ink); text-wrap: balance; }
.oxx .oxh-hero h1 span { display: block; color: #2c5a8f; font-weight: 600; }
.oxx .oxh-lead { margin: 14px 0 0; font: 400 17px/1.55 var(--p-text); color: var(--p-body); max-width: 46ch; }
.oxx .oxh-cta { display: grid; gap: 10px; margin-top: 22px; }
.oxx .oxh-cta .oxp-btn { min-height: 52px; }
.oxx .oxh-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 22px 0 0; padding: 0; border: 1px solid var(--p-line); border-radius: var(--p-r-card); background: #fff; box-shadow: var(--p-shadow-sm); }
.oxx .oxh-fact { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; padding: 14px 8px; text-align: center; }
.oxx .oxh-fact + .oxh-fact { border-left: 1px solid var(--p-line); }
.oxx .oxh-fact b { font: 700 22px/1 var(--p-display); color: var(--p-ink); letter-spacing: -.02em; }
.oxx .oxh-fact span { font: 500 12.5px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxh-fact svg { color: var(--p-gold-ink); }
@media (min-width: 480px) { .oxx .oxh-cta { display: flex; flex-wrap: wrap; } }
@media (min-width: 768px) { .oxx .oxh-hero-bg { height: 380px; } .oxx .oxh-hero-bg img { object-position: 78% 25%; } }
@media (min-width: 1024px) {
  .oxx .oxh-hero.has-img { padding: 0; background: none; }
  .oxx .oxh-hero.has-img .oxh-hero-bg { position: absolute; inset: 0 0 52px 0; height: auto; }
  .oxx .oxh-hero.has-img .oxh-hero-bg img { object-position: 72% 30%; }
  /* Vălul: textul stă pe partea deschisă a bannerului; medicul rămâne vizibil în dreapta. */
  .oxx .oxh-hero.has-img .oxh-hero-bg::after { inset: 0; height: auto; background: linear-gradient(90deg, #f5f8fc 0%, rgb(245 248 252 / .96) 34%, rgb(245 248 252 / .55) 52%, rgb(245 248 252 / 0) 66%); }
  .oxx .oxh-hero-in { min-height: clamp(470px, 58vh, 620px); display: flex; align-items: center; padding-block: 56px 104px; }
  .oxx .oxh-hero.has-img .oxh-hero-copy { margin: 0; padding: 0; background: none; border-radius: 0; max-width: 600px; }
  .oxx .oxh-hero h1 { font-size: clamp(2.6rem, 1.2rem + 2.5vw, 3.5rem); line-height: 1.04; }
  .oxx .oxh-lead { font-size: 18.5px; max-width: 44ch; margin-top: 18px; }
  .oxx .oxh-cta { margin-top: 28px; }
  .oxx .oxh-facts-wrap { position: relative; z-index: 2; margin-top: -52px; }
  .oxx .oxh-facts { margin: 0; box-shadow: var(--p-shadow-md); }
  .oxx .oxh-fact { flex-direction: row; gap: 14px; padding: 22px 28px; }
  .oxx .oxh-fact b { font-size: 30px; }
  .oxx .oxh-fact span { font-size: 14.5px; }
}

/* ——— Serviciile prin CAS: panou nuanțat, servicii ca plăci cu iconiță; pe telefon primele 6. */
.oxx .oxh-cas-box { border-radius: var(--p-r-panel); background: var(--p-tint); padding: 24px 18px 18px; }
.oxx .oxh-cas-badge { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: #fff; color: var(--p-gold-ink); margin-bottom: 14px; box-shadow: var(--p-shadow-sm); }
.oxx .oxh-cas-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 18px 0 14px; padding: 0; }
.oxx .oxh-cas-tile { display: flex; align-items: center; gap: 10px; height: 100%; min-height: 60px; padding: 10px 12px 10px 10px; border-radius: 14px; background: #fff; border: 1px solid transparent; font: 600 14px/1.25 var(--p-display); color: var(--p-ink); transition: border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
.oxx .oxh-cas-tile .oxp-ico { flex: none; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 11px; background: var(--p-gold-soft); color: var(--p-gold-ink); }
.oxx .oxh-cas-tile:hover { border-color: var(--p-line-2); box-shadow: var(--p-shadow-sm); transform: translateY(-2px); }
@media (max-width: 767px) { .oxx .oxh-cas-grid li:nth-child(n+7) { display: none; } }
@media (min-width: 768px) { .oxx .oxh-cas-box { padding: 32px; } .oxx .oxh-cas-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .oxx .oxh-cas-more .oxp-btn { width: auto; } }
@media (min-width: 1024px) {
  .oxx .oxh-cas-box { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: 16px 40px; align-items: start; padding: 40px; }
  .oxx .oxh-cas-copy { grid-column: 1; grid-row: 1; }
  .oxx .oxh-cas-more { grid-column: 1; grid-row: 2; align-self: start; }
  .oxx .oxh-cas-grid { grid-column: 2; grid-row: 1 / span 2; grid-template-columns: repeat(min(var(--cols, 3), 3), minmax(0, 1fr)); margin: 0; }
  .oxx .oxh-cas-tile { flex-direction: column; align-items: flex-start; justify-content: space-between; min-height: 112px; padding: 16px; font-size: 14.5px; }
}
@media (min-width: 1180px) { .oxx .oxh-cas-grid { grid-template-columns: repeat(var(--cols, 4), minmax(0, 1fr)); } }

/* ——— „Un singur ecosistem medical”. Telefon: carduri derulabile cu imaginea întreagă (3:2) deasupra textului.
   Desktop: lista direcțiilor în stânga (cea aleasă evidențiată), imaginea direcției alese în dreapta, mare și întreagă. */
.oxx .oxh-eco2 { position: relative; }
.oxx .oxh-eco-list { display: grid; grid-auto-flow: column; grid-auto-columns: 84%; gap: 12px; margin: 0 calc(-1 * var(--p-gutter)); padding: 4px var(--p-gutter) 8px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--p-gutter); scrollbar-width: none; }
.oxx .oxh-eco-list::-webkit-scrollbar { display: none; }
.oxx .oxh-eco-list li { scroll-snap-align: start; display: flex; }
.oxx .oxh-eco-item { display: flex; flex-direction: column; width: 100%; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); overflow: hidden; color: var(--p-ink); transition: border-color .2s, box-shadow .2s, background-color .2s; }
.oxx .oxh-eco-pic { margin: 0; aspect-ratio: 3 / 2; background: var(--p-tint); overflow: hidden; }
.oxx .oxh-eco-pic img { width: 100%; height: 100%; object-fit: cover; }
.oxx .oxh-eco-txt { position: relative; display: grid; gap: 6px; align-content: start; padding: 16px 18px 18px; }
.oxx .oxh-eco-ic { display: none; }
.oxx .oxh-eco-txt h3 { margin: 0; font-size: 18px; line-height: 1.25; font-weight: 700; color: var(--p-ink); }
.oxx .oxh-eco-txt p { margin: 0; font: 400 14.5px/1.5 var(--p-text); color: var(--p-body); }
.oxx .oxh-eco-loc { display: inline-flex; align-items: center; gap: 6px; font: 500 13px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxh-eco-loc svg { color: var(--p-gold-ink); flex: none; }
.oxx .oxh-eco-txt .oxp-link { margin-top: 6px; font-size: 14.5px; }
.oxx .oxh-eco-stage { display: none; }
@media (min-width: 640px) { .oxx .oxh-eco-list { grid-auto-columns: 46%; } }
@media (min-width: 1024px) {
  .oxx .oxh-eco2 { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: 40px; align-items: stretch; }
  .oxx .oxh-eco-list { grid-auto-flow: row; grid-auto-columns: auto; gap: 10px; margin: 0; padding: 0; overflow: visible; }
  .oxx .oxh-eco-item { flex-direction: row; border-color: transparent; background: transparent; border-radius: 18px; }
  .oxx .oxh-eco-pic { display: none; }
  .oxx .oxh-eco-txt { grid-template-columns: 48px minmax(0, 1fr); column-gap: 18px; row-gap: 6px; padding: 20px 22px; width: 100%; }
  .oxx .oxh-eco-txt > *:not(.oxh-eco-ic) { grid-column: 2; }
  .oxx .oxh-eco-ic { display: grid; grid-row: 1 / span 4; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: var(--p-tint); color: var(--p-navy-3); transition: background-color .2s, color .2s; }
  .oxx .oxh-eco-txt h3 { font-size: 21px; }
  .oxx .oxh-eco-txt p { font-size: 15px; max-width: 46ch; }
  .oxx .oxh-eco-item:hover { background: var(--p-soft); }
  .oxx .oxh-eco-item.is-active { background: #fff; border-color: var(--p-line); box-shadow: var(--p-shadow-md); }
  .oxx .oxh-eco-item.is-active .oxh-eco-ic { background: var(--p-navy); color: #fff; }
  .oxx .oxh-eco-stage { display: block; position: relative; min-height: 480px; border-radius: var(--p-r-panel); overflow: hidden; background: var(--p-tint); box-shadow: var(--p-shadow-md); }
  .oxx .oxh-eco-stage img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transform: scale(1.02); transition: opacity .45s var(--p-ease), transform .8s var(--p-ease); }
  .oxx .oxh-eco-stage img.is-active { opacity: 1; transform: none; }
}

/* ——— Parcursul medical: pașii legați printr-o linie (verticală pe telefon, orizontală pe desktop), apoi butoanele.
   Fiecare pas are segmentul lui până la pasul următor, deci linia se oprește la ultimul pas. Starea de mai jos e
   cea finală (fără JavaScript sau cu „mai puțină mișcare”); animația e la sfârșitul blocului. */
.oxx .oxh-journey-track { --step: .7s; }
.oxx .oxh-steps { display: grid; gap: 26px; margin: 0; padding: 0; list-style: none; }
.oxx .oxh-step { position: relative; display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 16px; align-content: start; align-items: start; }
.oxx .oxh-step:not(:last-child)::before, .oxx .oxh-step:not(:last-child)::after { content: ""; position: absolute; left: 21px; top: 50px; bottom: -20px; width: 2px; border-radius: 2px; background: var(--p-line); }
.oxx .oxh-step:not(:last-child)::after { background: var(--p-gold); transform-origin: 50% 0; }
.oxx .oxh-step-n { position: relative; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--p-navy); border: 1.5px solid var(--p-navy); box-shadow: 0 0 0 6px rgb(184 147 90 / .16); font: 700 14px/1 var(--p-display); color: #fff; }
.oxx .oxh-step-n::after { content: ""; position: absolute; inset: -2px; border-radius: 50%; border: 2px solid var(--p-gold); opacity: 0; pointer-events: none; }
.oxx .oxh-step h3 { margin: 10px 0 4px; font-size: 18px; font-weight: 700; color: var(--p-ink); }
.oxx .oxh-step p { margin: 0; font: 400 15px/1.55 var(--p-text); color: var(--p-body); max-width: 42ch; }
.oxx .oxh-journey-cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.oxx .oxh-journey-cta .oxp-btn { position: relative; overflow: hidden; flex: 1 1 100%; }
.oxx .oxh-journey-cta .oxp-btn svg { transition: transform .25s var(--p-ease); }
.oxx .oxh-journey-cta .oxp-btn:hover svg { transform: translateX(3px); }
@media (min-width: 640px) { .oxx .oxh-journey-cta .oxp-btn { flex: 0 0 auto; } .oxx .oxh-journey-cta { margin-left: 60px; } }
@media (min-width: 900px) {
  .oxx .oxh-steps { grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 32px; }
  .oxx .oxh-step { grid-template-columns: 1fr; gap: 18px; }
  .oxx .oxh-step:not(:last-child)::before, .oxx .oxh-step:not(:last-child)::after { top: 21px; bottom: auto; left: 56px; right: -20px; width: auto; height: 2px; }
  .oxx .oxh-step:not(:last-child)::after { transform-origin: 0 50%; }
  .oxx .oxh-step h3 { margin-top: 0; }
  .oxx .oxh-journey-cta { margin: 36px 0 0; }
}
/* Cel mult trei pași (homepage, /cas/, contact): pe desktop parcursul ocupă toată lățimea. Primul pas stă la marginea
   din stânga (aliniat cu titlul), ultimul la marginea din dreapta (cercul și textul aliniate la dreapta), pasul din
   mijloc e centrat, iar linia merge de la primul cerc până la ultimul, fără gol după ultimul pas. Lățimea coloanei = w,
   distanța dintre coloane = 32px, cercul = 44px (34px = raza + inelul + aerul de lângă linie): segmentul spre un pas
   din mijloc se oprește la -50% - 32px + 34px, cel spre ultimul pas la -100% - 32px + 56px. De la patru pași în sus
   (coloane înguste) și în varianta „column”, pașii rămân aliniați la stânga. */
@media (min-width: 900px) {
  .oxx .oxh-journey-track:not(:has(.oxh-step:nth-child(4))):not(.is-col .oxh-journey-track) .oxh-step:not(:first-child):not(:last-child) { justify-items: center; text-align: center; }
  .oxx .oxh-journey-track:not(:has(.oxh-step:nth-child(4))):not(.is-col .oxh-journey-track) .oxh-step:last-child:not(:first-child) { justify-items: end; text-align: right; }
  .oxx .oxh-journey-track:not(:has(.oxh-step:nth-child(4))):not(.is-col .oxh-journey-track) .oxh-step:not(:first-child):not(:last-child) p { margin-inline: auto; }
  .oxx .oxh-journey-track:not(:has(.oxh-step:nth-child(4))):not(.is-col .oxh-journey-track) .oxh-step:last-child:not(:first-child) p { margin-left: auto; }
  .oxx .oxh-journey-track:not(:has(.oxh-step:nth-child(4))):not(.is-col .oxh-journey-track) .oxh-step:not(:first-child):not(:last-child)::before,
  .oxx .oxh-journey-track:not(:has(.oxh-step:nth-child(4))):not(.is-col .oxh-journey-track) .oxh-step:not(:first-child):not(:last-child)::after { left: calc(50% + 34px); }
  .oxx .oxh-journey-track:not(:has(.oxh-step:nth-child(4))):not(.is-col .oxh-journey-track) .oxh-step:nth-last-child(3)::before,
  .oxx .oxh-journey-track:not(:has(.oxh-step:nth-child(4))):not(.is-col .oxh-journey-track) .oxh-step:nth-last-child(3)::after { right: calc(-50% - 32px + 34px); }
  .oxx .oxh-journey-track:not(:has(.oxh-step:nth-child(4))):not(.is-col .oxh-journey-track) .oxh-step:nth-last-child(2)::before,
  .oxx .oxh-journey-track:not(:has(.oxh-step:nth-child(4))):not(.is-col .oxh-journey-track) .oxh-step:nth-last-child(2)::after { right: calc(-100% - 32px + 56px); }
}
/* Animația (pornită de site.js când secțiunea intră în ecran): cercurile se aprind pe rând, linia curge spre pasul
   următor, textul apare odată cu cercul lui, iar la final butonul. */
.oxx .oxh-journey-track.is-armed:not(.is-play) .oxh-step-n { background: #fff; border-color: var(--p-line-2); box-shadow: 0 0 0 0 rgb(184 147 90 / 0); color: var(--p-mute); }
.oxx .oxh-journey-track.is-armed:not(.is-play) .oxh-step > div { opacity: 0; transform: translateY(10px); }
.oxx .oxh-journey-track.is-armed:not(.is-play) .oxh-step::after { transform: scaleY(0); }
.oxx .oxh-journey-track.is-armed:not(.is-play) .oxh-journey-cta { opacity: 0; transform: translateY(12px); }
.oxx .oxh-journey-track.is-play .oxh-step-n { transition: background-color .35s, border-color .35s, color .35s, box-shadow .5s; transition-delay: calc(var(--i) * var(--step)); }
.oxx .oxh-journey-track.is-play .oxh-step-n::after { animation: oxh-ping .9s var(--p-ease) calc(var(--i) * var(--step)) 1 forwards; }
.oxx .oxh-journey-track.is-play .oxh-step > div { transition: opacity .5s var(--p-ease), transform .6s var(--p-ease); transition-delay: calc(var(--i) * var(--step) + .1s); }
.oxx .oxh-journey-track.is-play .oxh-step::after { transition: transform calc(var(--step) - .15s) cubic-bezier(.45, 0, .55, 1) calc(var(--i) * var(--step) + .15s); }
.oxx .oxh-journey-track.is-play .oxh-journey-cta { transition: opacity .5s var(--p-ease), transform .6s var(--p-ease); transition-delay: calc((var(--n) - 1) * var(--step) + .45s); }
.oxx .oxh-journey-track.is-play .oxh-journey-cta .oxp-btn-primary::after { content: ""; position: absolute; inset: 0; background: linear-gradient(100deg, transparent 30%, rgb(255 255 255 / .28) 50%, transparent 70%); transform: translateX(-100%); animation: oxh-shine 1.1s var(--p-ease) calc((var(--n) - 1) * var(--step) + 1s) 1 both; pointer-events: none; }
@media (min-width: 900px) { .oxx .oxh-journey-track.is-armed:not(.is-play) .oxh-step::after { transform: scaleX(0); } }
@keyframes oxh-ping { 0% { opacity: .8; transform: scale(1); } 100% { opacity: 0; transform: scale(1.75); } }
@keyframes oxh-shine { to { transform: translateX(100%); } }

/* ——— Programele: carduri cu fotografie și văl în nuanța programului (câmpul „stil” din Brain). */
.oxx .oxh-prog { position: relative; display: flex; flex-direction: column; justify-content: flex-end; gap: 6px; min-height: 300px; padding: 20px; border-radius: var(--p-r-card); overflow: hidden; color: #fff; background: hsl(var(--h, 214) 52% 16%); isolation: isolate; }
.oxx .oxh-prog img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--p-ease); }
.oxx .oxh-prog::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, hsl(var(--h, 214) 50% 14% / .5) 0%, hsl(var(--h, 214) 55% 10% / .94) 70%); }
.oxx .oxh-prog:hover img { transform: scale(1.05); }
.oxx .oxh-prog h3 { margin: 0; font-size: 19px; line-height: 1.25; font-weight: 700; color: #fff; }
.oxx .oxh-prog p { margin: 0; font: 400 14px/1.5 var(--p-text); color: rgb(255 255 255 / .82); }
.oxx .oxh-prog .oxp-link { margin-top: 8px; color: #fff; font-size: 14px; }
@media (min-width: 1024px) { .oxx .oxh-prog { min-height: 340px; padding: 22px; } }

/* ——— Tehnologiile: panou bleumarin cu plăci (iconiță aurie, nume, descrierea scurtă a entității legate, săgeată).
   Pe telefon plăcile se derulează orizontal; pe desktop, titlul în stânga și plăcile pe trei coloane. */
.oxx .oxh-tech { padding-top: 0; }
.oxx .oxh-tech-box { display: grid; gap: 20px; padding: 26px 0 22px; border-radius: var(--p-r-panel); color: #fff; background: radial-gradient(120% 120% at 0% 0%, var(--p-navy-3) 0%, var(--p-navy) 58%); overflow: hidden; }
.oxx .oxh-tech-box .oxh-head { padding-inline: 20px; }
.oxx .oxh-tech-box h2 { color: #fff; font-size: clamp(1.45rem, 1.1rem + 1.4vw, 2.05rem); }
.oxx .oxh-tech-box .oxh-head p { color: rgb(255 255 255 / .72); }
.oxx .oxh-techs { display: grid; grid-auto-flow: column; grid-auto-columns: 76%; gap: 10px; margin: 0; padding: 2px 20px 6px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 20px; scrollbar-width: none; }
.oxx .oxh-techs::-webkit-scrollbar { display: none; }
.oxx .oxh-techs li { scroll-snap-align: start; display: flex; }
.oxx .oxh-tech-card { position: relative; display: flex; flex-direction: column; gap: 10px; width: 100%; min-height: 176px; padding: 20px; border-radius: var(--p-r-card); background: rgb(255 255 255 / .06); border: 1px solid rgb(255 255 255 / .12); color: #fff; transition: background-color .2s, border-color .2s, transform .2s var(--p-ease); }
.oxx .oxh-tech-card:hover { background: rgb(255 255 255 / .1); border-color: rgb(255 255 255 / .24); transform: translateY(-2px); }
.oxx .oxh-tech-ic { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; border: 1px solid rgb(184 147 90 / .55); background: rgb(184 147 90 / .12); color: var(--p-gold); }
.oxx .oxh-tech-card h3 { margin: 4px 0 0; font-size: 19px; line-height: 1.2; font-weight: 700; color: #fff; padding-right: 28px; }
.oxx .oxh-tech-card p { margin: 0; font: 400 14px/1.5 var(--p-text); color: rgb(255 255 255 / .72); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxh-tech-go { position: absolute; top: 22px; right: 20px; color: rgb(255 255 255 / .6); transition: color .2s, transform .2s var(--p-ease); }
.oxx .oxh-tech-card:hover .oxh-tech-go { color: var(--p-gold); transform: translateX(3px); }
@media (min-width: 640px) { .oxx .oxh-techs { grid-auto-columns: 44%; } }
@media (min-width: 1024px) {
  .oxx .oxh-tech-box { grid-template-columns: minmax(0, 260px) minmax(0, 1fr); gap: 36px; align-items: center; padding: 40px; }
  .oxx .oxh-tech-box .oxh-head { padding: 0; }
  .oxx .oxh-techs { grid-auto-flow: row; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 0; overflow: visible; }
}

/* ——— Expertiza. Medicul coordonator pe un card larg (fotografia întreagă, 4:3, și textul alături pe desktop);
   echipa ca rând de carduri (bandă derulantă pe telefon) încheiat de cardul „Vezi întreaga echipă”. */
.oxx .oxh-experts { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; }
.oxx .oxh-lead-doc { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; border-radius: var(--p-r-panel); background: var(--p-soft); overflow: hidden; }
.oxx .oxh-lead-doc figure { margin: 0; aspect-ratio: 4 / 3; background: var(--p-tint); }
.oxx .oxh-lead-doc figure img { width: 100%; height: 100%; object-fit: cover; }
.oxx .oxh-lead-copy { display: grid; gap: 10px; align-content: center; padding: 20px 20px 22px; min-width: 0; }
.oxx .oxh-lead-copy h3 { margin: 0; font-size: 22px; line-height: 1.2; font-weight: 700; color: var(--p-ink); }
.oxx .oxh-roles { display: grid; gap: 2px; margin: 0; padding: 0; }
.oxx .oxh-roles li { font: 600 14px/1.4 var(--p-text); color: var(--p-gold-ink); }
.oxx .oxh-lead-copy p { margin: 4px 0 0; font: 400 15.5px/1.6 var(--p-text); color: var(--p-body); max-width: 56ch; }
.oxx .oxh-lead-cta { justify-self: start; margin-top: 8px; white-space: normal; text-align: left; line-height: 1.3; max-width: 100%; }
.oxx .oxh-team-title { margin: 0 0 14px; font-size: 18px; font-weight: 700; color: var(--p-ink); }
.oxx .oxh-team-grid { grid-auto-columns: 70%; }
.oxx .oxh-doc { display: flex; flex-direction: column; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); overflow: hidden; transition: border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
.oxx .oxh-doc:hover { border-color: var(--p-line-2); box-shadow: var(--p-shadow-md); transform: translateY(-2px); }
.oxx .oxh-doc figure { margin: 0; aspect-ratio: 4 / 3; background: var(--p-tint); }
.oxx .oxh-doc figure img { width: 100%; height: 100%; object-fit: cover; }
.oxx .oxh-doc-body { display: grid; gap: 4px; padding: 14px 16px 16px; }
.oxx .oxh-doc b { font: 700 16px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxh-doc span { font: 400 14px/1.45 var(--p-text); color: var(--p-mute); }
.oxx .oxh-doc small { margin-top: 4px; font: 600 13px/1.35 var(--p-text); color: var(--p-gold-ink); }
.oxx .oxh-doc-all { justify-content: flex-end; gap: 6px; padding: 22px; background: var(--p-navy); border-color: var(--p-navy); color: #fff; min-height: 220px; }
.oxx .oxh-doc-all:hover { border-color: var(--p-navy-2); background: var(--p-navy-2); }
.oxx .oxh-doc-all .oxh-doc-all-n { font: 700 44px/1 var(--p-display); color: #fff; letter-spacing: -.03em; }
.oxx .oxh-doc-all span { color: rgb(255 255 255 / .75); font: 500 14px/1.3 var(--p-text); }
.oxx .oxh-doc-all b { margin-top: 14px; color: #fff; font: 700 17px/1.3 var(--p-display); }
.oxx .oxh-doc-all svg { color: var(--p-gold); }
@media (min-width: 640px) { .oxx .oxh-team-grid { grid-auto-columns: 44%; } }
@media (min-width: 900px) {
  .oxx .oxh-lead-doc { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
  .oxx .oxh-lead-doc figure { aspect-ratio: auto; min-height: 100%; }
  .oxx .oxh-lead-copy { padding: 36px 40px; gap: 12px; }
  .oxx .oxh-lead-copy h3 { font-size: 28px; }
  .oxx .oxh-lead-copy p { font-size: 16.5px; }
}
@media (min-width: 1024px) {
  .oxx .oxh-team-grid { grid-auto-flow: row; grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); overflow: visible; }
}
.oxx .oxh-locs { display: grid; gap: 12px; margin: 28px 0 0; padding: 0; }
.oxx .oxh-loc { display: grid; gap: 10px; padding: 18px; border-radius: var(--p-r-card); border: 1px solid var(--p-line); background: #fff; }
.oxx .oxh-loc h3 { margin: 0; font-size: 17px; font-weight: 700; color: var(--p-ink); }
.oxx .oxh-loc-row { display: flex; gap: 10px; font: 400 14.5px/1.5 var(--p-text); color: var(--p-body); }
.oxx .oxh-loc-row svg { flex: none; margin-top: 3px; color: var(--p-gold-ink); }
.oxx .oxh-loc .oxp-hours { color: var(--p-body); margin: 0; flex: 1; }
.oxx .oxh-loc .oxp-hours dd { color: var(--p-ink); font-weight: 600; }
.oxx .oxh-loc-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.oxx .oxh-locs-h { margin-top: 36px; }
@media (min-width: 768px) { .oxx .oxh-locs { grid-template-columns: 1fr 1fr; } .oxx .oxh-loc { padding: 22px; } }

/* ——— Îndemnul final: panou bleumarin, titlul pe două rânduri, programarea și telefonul. */
.oxx .oxh-final { padding-top: 8px; }
.oxx .oxh-final-box { display: grid; gap: 22px; padding: 30px 22px; border-radius: var(--p-r-panel); color: #fff; background: radial-gradient(120% 140% at 100% 0%, var(--p-navy-3) 0%, var(--p-navy) 55%); box-shadow: var(--p-shadow-lg); }
.oxx .oxh-final-box h2 { color: #fff; font-size: clamp(1.45rem, 1.1rem + 1.5vw, 2.1rem); }
.oxx .oxh-final-box h2 span { display: block; color: rgb(255 255 255 / .7); font-weight: 600; }
.oxx .oxh-final-cta { display: grid; gap: 10px; }
@media (min-width: 640px) { .oxx .oxh-final-cta { display: flex; flex-wrap: wrap; } }
@media (min-width: 1024px) { .oxx .oxh-final-box { grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 40px; padding: 48px 56px; } }

/* ============ Paginile cu șablonul „prezentare” (/spital-ambulatoriu/, src/site/hub-premium.mjs) ============
   Telefon: fotografia sus, textul pe un panou alb, variantele paginii ca rânduri mari (toate în primul ecran),
   reperele; apoi cardurile care compară variantele, argumentele pe un panou bleumarin, întrebările, panoul final.
   Desktop: textul și variantele în stânga, fotografia cu reperele în dreapta; cardurile pe un rând. */
.oxx .oxh-hub { padding: 0 0 8px; background: #fff; }
/* Între secțiunile de după carduri, un singur spațiu (fără spațiul de sus al secțiunii următoare). */
.oxx .oxh-hub ~ .oxh + .oxh { padding-top: 0; }
.oxx .oxh-hub:not(.has-img) { padding-top: 28px; background: linear-gradient(180deg, var(--p-soft) 0%, #fff 100%); }
.oxx .oxh-hub-in { display: grid; grid-template-columns: minmax(0, 1fr); }
.oxx .oxh-hub-visual { display: contents; }
.oxx .oxh-hub-pic { order: 0; position: relative; margin: 0 calc(-1 * var(--p-gutter)); height: clamp(220px, 58vw, 340px); overflow: hidden; background: var(--p-tint); }
.oxx .oxh-hub-pic img { width: 100%; height: 100%; object-fit: cover; }
.oxx .oxh-hub-pic::after { content: ""; position: absolute; inset: auto 0 0 0; height: 40%; background: linear-gradient(180deg, rgb(255 255 255 / 0), rgb(255 255 255 / .85)); }
.oxx .oxh-hub-copy { order: 1; position: relative; z-index: 1; }
.oxx .oxh-hub.has-img .oxh-hub-copy { margin: -34px calc(-1 * var(--p-gutter) + 4px) 0; padding: 22px calc(var(--p-gutter) - 4px) 0; border-radius: 24px 24px 0 0; background: #fff; }
.oxx .oxh-hub h1 { margin: 0; font-size: clamp(1.95rem, 1.2rem + 3.1vw, 3.05rem); line-height: 1.08; font-weight: 700; letter-spacing: -.03em; color: var(--p-ink); text-wrap: balance; }
.oxx .oxh-hub .oxh-lead { margin-top: 12px; }
.oxx .oxh-hub-facts { order: 2; margin-top: 20px; }
/* Variantele: tot rândul e link (ținta de atingere ≥ 64px), iconița în culoarea variantei, săgeata în dreapta. */
.oxx .oxh-picks { display: grid; gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.oxx .oxh-picks > li { display: flex; }
.oxx .oxh-pick { display: flex; align-items: center; gap: 14px; width: 100%; min-height: 72px; padding: 12px; border-radius: 18px; border: 1px solid var(--p-line); background: #fff; color: var(--p-ink); box-shadow: var(--p-shadow-sm); transition: border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
.oxx .oxh-pick:hover { border-color: var(--p-line-2); box-shadow: var(--p-shadow-md); transform: translateY(-1px); }
.oxx .oxh-pick:active { transform: scale(.99); }
.oxx .oxh-pick-ic, .oxx .oxh-path-ic { flex: none; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: var(--p-tint); color: var(--c, var(--p-navy-3)); }
@supports (background: color-mix(in srgb, red 10%, white)) {
  .oxx .oxh-pick-ic, .oxx .oxh-path-ic { background: color-mix(in srgb, var(--c, #24477a) 11%, #fff); color: color-mix(in srgb, var(--c, #24477a) 88%, #0d2340); }
}
.oxx .oxh-pick-txt { flex: 1; min-width: 0; display: grid; gap: 3px; }
.oxx .oxh-pick-txt b { font: 700 16.5px/1.25 var(--p-display); letter-spacing: -.01em; color: var(--p-ink); }
.oxx .oxh-pick-txt span { font: 500 13.5px/1.35 var(--p-text); color: var(--p-mute); }
.oxx .oxh-pick-go { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--p-soft); color: var(--p-navy); transition: background-color .2s, color .2s; }
.oxx .oxh-pick:hover .oxh-pick-go { background: var(--p-navy); color: #fff; }
@media (min-width: 768px) and (max-width: 1023px) {
  .oxx .oxh-picks { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .oxx .oxh-pick { flex-direction: column; align-items: flex-start; gap: 10px; padding: 16px; }
  .oxx .oxh-pick-go { display: none; }
}
@media (min-width: 1024px) {
  .oxx .oxh-hub, .oxx .oxh-hub:not(.has-img) { padding: 48px 0 16px; background: linear-gradient(180deg, var(--p-soft) 0%, rgb(245 248 252 / 0) 100%); }
  .oxx .oxh-hub-in { grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: 56px; align-items: center; }
  .oxx .oxh-hub-visual { display: block; grid-column: 2; grid-row: 1; }
  .oxx .oxh-hub-copy { grid-column: 1; grid-row: 1; max-width: 600px; }
  .oxx .oxh-hub.has-img .oxh-hub-copy { margin: 0; padding: 0; border-radius: 0; background: none; }
  .oxx .oxh-hub-pic { margin: 0; height: auto; aspect-ratio: 5 / 4; border-radius: var(--p-r-panel); box-shadow: var(--p-shadow-md); }
  .oxx .oxh-hub-pic::after { display: none; }
  .oxx .oxh-hub h1 { font-size: clamp(2.5rem, 1.2rem + 2.3vw, 3.3rem); line-height: 1.05; }
  .oxx .oxh-hub .oxh-lead { font-size: 18.5px; margin-top: 16px; }
  .oxx .oxh-picks { margin-top: 28px; }
  .oxx .oxh-pick { min-height: 78px; padding: 14px 16px 14px 14px; }
  .oxx .oxh-hub-pic + .oxh-hub-facts { position: relative; z-index: 2; margin: -46px 22px 0; box-shadow: var(--p-shadow-md); }
  .oxx .oxh-hub-facts .oxh-fact { flex-direction: column; gap: 4px; padding: 16px 10px; }
  .oxx .oxh-hub-facts .oxh-fact b { font-size: 26px; }
  .oxx .oxh-hub-facts .oxh-fact span { font-size: 13.5px; }
}

/* ——— Cardurile de traseu: fotografia (cu reperul de acces pe ea), iconița și titlul, textul, fișa variantei
   (durata, accesul, locul, despărțite de linii) și linkul aliniat jos. Tableta: fotografia în stânga. */
.oxx .oxh-paths { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.oxx .oxh-paths > li { display: flex; }
.oxx .oxh-path { display: flex; flex-direction: column; width: 100%; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); overflow: hidden; color: var(--p-ink); transition: border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
.oxx a.oxh-path:hover { border-color: var(--p-line-2); box-shadow: var(--p-shadow-md); transform: translateY(-2px); }
.oxx .oxh-path-pic { position: relative; margin: 0; aspect-ratio: 2 / 1; background: var(--p-tint); overflow: hidden; }
.oxx .oxh-path-pic img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; transition: transform .8s var(--p-ease); }
.oxx a.oxh-path:hover .oxh-path-pic img { transform: scale(1.04); }
.oxx .oxh-path-tag { position: absolute; left: 12px; bottom: 12px; display: inline-flex; align-items: center; gap: 6px; max-width: calc(100% - 24px); padding: 7px 11px; border-radius: 999px; background: rgb(255 255 255 / .95); box-shadow: var(--p-shadow-sm); font: 600 12.5px/1.25 var(--p-display); color: var(--p-ink); }
.oxx .oxh-path-tag svg { flex: none; color: var(--p-gold-ink); }
.oxx .oxh-path-body { flex: 1; display: flex; flex-direction: column; gap: 10px; padding: 16px 18px 18px; }
.oxx .oxh-path-top { display: flex; align-items: center; gap: 12px; }
.oxx .oxh-path-ic { width: 42px; height: 42px; border-radius: 13px; }
.oxx .oxh-path h3 { margin: 0; font-size: 19px; line-height: 1.2; font-weight: 700; color: var(--p-ink); }
.oxx .oxh-path-body > p { margin: 0; font: 400 15px/1.55 var(--p-text); color: var(--p-body); }
.oxx .oxh-path-facts { display: grid; margin: 2px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--p-line); }
.oxx .oxh-path-facts li { display: flex; align-items: flex-start; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--p-line); font: 500 14.5px/1.4 var(--p-text); color: var(--p-ink); }
.oxx .oxh-path-facts svg { flex: none; margin-top: 1px; color: var(--p-gold-ink); }
.oxx .oxh-path .oxp-link { margin-top: auto; padding-top: 6px; }
@media (min-width: 640px) and (max-width: 1023px) {
  .oxx .oxh-path { flex-direction: row; }
  /* Fotografia urmează înălțimea textului (o fotografie verticală nu lungește cardul). */
  .oxx .oxh-path-pic { flex: 0 0 40%; aspect-ratio: auto; min-height: 240px; }
  .oxx .oxh-path-pic img { position: absolute; inset: 0; }
}
@media (min-width: 1024px) {
  .oxx .oxh-paths { grid-template-columns: repeat(min(var(--n, 3), 3), minmax(0, 1fr)); gap: 20px; }
  .oxx .oxh-path-pic { aspect-ratio: 16 / 10; }
  .oxx .oxh-path-body { padding: 20px 22px 22px; }
  .oxx .oxh-path h3 { font-size: 21px; }
}
/* Desktop: rândurile cardurilor (fotografia, titlul, textul, fișa, linkul) aliniate de la un card la altul. */
@supports (grid-template-rows: subgrid) {
  @media (min-width: 1024px) {
    .oxx .oxh-paths { row-gap: 0; }
    .oxx .oxh-paths > li { display: grid; grid-row: span 5; grid-template-rows: subgrid; margin-bottom: 20px; }
    .oxx .oxh-path { display: grid; grid-row: span 5; grid-template-rows: subgrid; row-gap: 0; }
    .oxx .oxh-path-body { display: grid; grid-row: span 4; grid-template-rows: subgrid; row-gap: 10px; }
    .oxx .oxh-path-facts { align-self: start; }
    .oxx .oxh-path .oxp-link { align-self: end; }
  }
}

/* ——— Argumentele: panou bleumarin, titlul și textul, argumentele pe plăci cu iconiță aurie, butonul. Desktop: titlul
   și butonul în stânga, argumentele pe două coloane în dreapta. */
.oxx .oxh-why { display: grid; gap: 20px; padding: 28px 20px 22px; border-radius: var(--p-r-panel); color: #fff; background: radial-gradient(120% 120% at 0% 0%, var(--p-navy-3) 0%, var(--p-navy) 58%); }
.oxx .oxh-why .oxh-chip { background: rgb(184 147 90 / .16); color: #ead2a8; }
.oxx .oxh-why h2 { color: #fff; font-size: clamp(1.45rem, 1.1rem + 1.4vw, 2.05rem); }
.oxx .oxh-why-copy p { margin: 10px 0 0; font: 400 16px/1.6 var(--p-text); color: rgb(255 255 255 / .78); max-width: 54ch; }
.oxx .oxh-why-list { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.oxx .oxh-why-list li { display: flex; align-items: center; gap: 14px; padding: 14px; border-radius: 16px; background: rgb(255 255 255 / .06); border: 1px solid rgb(255 255 255 / .1); }
.oxx .oxh-why-ic { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; border: 1px solid rgb(184 147 90 / .55); background: rgb(184 147 90 / .12); color: var(--p-gold); }
.oxx .oxh-why-list li > div { align-self: center; font: 500 15px/1.5 var(--p-text); color: rgb(255 255 255 / .92); }
.oxx .oxh-why-list b { display: block; font: 700 16px/1.3 var(--p-display); color: #fff; }
.oxx .oxh-why-list p { margin: 4px 0 0; font-size: 14px; color: rgb(255 255 255 / .72); }
.oxx .oxh-why-list a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.oxx .oxh-why-cta { display: grid; gap: 10px; }
@media (min-width: 640px) { .oxx .oxh-why-cta { display: flex; flex-wrap: wrap; } .oxx .oxh-why-list { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) {
  .oxx .oxh-why { grid-template-columns: minmax(0, 360px) minmax(0, 1fr); grid-template-rows: auto 1fr; gap: 24px 48px; padding: 48px; }
  .oxx .oxh-why-copy { grid-column: 1; grid-row: 1; }
  .oxx .oxh-why-cta { grid-column: 1; grid-row: 2; align-self: start; }
  .oxx .oxh-why-list { grid-column: 2; grid-row: 1 / span 2; gap: 12px; }
  .oxx .oxh-why-list li { padding: 18px; }
}

/* ——— Întrebările: rânduri care se deschid (ținta ≥ 60px), săgeata se întoarce; desktop: titlul fix în stânga. */
.oxx .oxh-faq-list { display: grid; gap: 10px; }
.oxx .oxh-q { border-radius: 16px; background: #fff; border: 1px solid var(--p-line); transition: border-color .2s, box-shadow .2s; }
.oxx .oxh-q[open] { border-color: var(--p-line-2); box-shadow: var(--p-shadow-sm); }
.oxx .oxh-q summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 60px; padding: 12px 14px 12px 18px; border-radius: 16px; cursor: pointer; list-style: none; font: 600 16px/1.35 var(--p-display); color: var(--p-ink); }
.oxx .oxh-q summary::-webkit-details-marker { display: none; }
.oxx .oxh-q summary:focus-visible { outline: 2px solid var(--p-navy); outline-offset: 2px; }
.oxx .oxh-q-ic { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--p-soft); color: var(--p-navy); transition: transform .25s var(--p-ease), background-color .2s, color .2s; }
.oxx .oxh-q[open] .oxh-q-ic { transform: rotate(180deg); background: var(--p-navy); color: #fff; }
.oxx .oxh-a { padding: 0 18px 18px; font: 400 15.5px/1.6 var(--p-text); color: var(--p-body); }
.oxx .oxh-a :is(p, ul, ol) { margin: 0 0 10px; }
.oxx .oxh-a > div > :last-child, .oxx .oxh-a > :last-child { margin-bottom: 0; }
@media (min-width: 1024px) {
  .oxx .oxh-faq { display: grid; grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: 56px; align-items: start; }
  .oxx .oxh-faq .oxh-head { position: sticky; top: calc(var(--p-header-h) + 24px); }
  .oxx .oxh-q summary { padding: 14px 16px 14px 22px; font-size: 17px; }
  .oxx .oxh-a { padding: 0 22px 20px; }
}

/* ——— Caseta de orientare ca panou final: iconița aurie, titlul, textul, reperele ca etichete, butoanele. */
.oxx .oxh-orient-copy { display: grid; gap: 10px; justify-items: start; }
.oxx .oxh-orient-ic { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: 4px; border-radius: 14px; border: 1px solid rgb(184 147 90 / .55); background: rgb(184 147 90 / .12); color: var(--p-gold); }
.oxx .oxh-orient-copy p { margin: 0; font: 400 16px/1.6 var(--p-text); color: rgb(255 255 255 / .78); max-width: 54ch; }
.oxx .oxh-orient-facts { display: flex; flex-wrap: wrap; gap: 8px; margin: 6px 0 0; padding: 0; list-style: none; }
.oxx .oxh-orient-facts li { display: inline-flex; align-items: center; gap: 7px; padding: 7px 12px; border-radius: 999px; border: 1px solid rgb(255 255 255 / .16); font: 600 13px/1.2 var(--p-display); color: #fff; }
.oxx .oxh-orient-facts svg { color: var(--p-gold); }

/* ===== Echipa (/doctori/, doctorsGrid în home-premium.mjs) și profilul unui medic (src/site/doctor-premium.mjs) =====
   Lista: titlul cu numărul, filtrul pe domenii (bandă derulantă pe telefon, rânduri pe desktop), grupurile (medicii,
   apoi terapeuții și asistenții), cardurile pe 2 coloane pe telefon, 3 pe tabletă, 4 pe desktop. */
.oxx .oxh-phero + .oxd-team { padding-top: 24px; }
.oxx .oxd-count { display: inline-grid; place-items: center; min-width: 30px; height: 26px; margin-left: 6px; padding: 0 8px; border-radius: 999px; background: var(--p-gold-soft); color: var(--p-gold-ink); font: 700 13px/1 var(--p-display); letter-spacing: 0; vertical-align: middle; }
.oxx .oxd-filter { display: flex; gap: 8px; margin: 0 calc(-1 * var(--p-gutter)) 22px; padding: 2px var(--p-gutter) 6px; overflow-x: auto; scrollbar-width: none; scroll-padding-inline: var(--p-gutter); }
.oxx .oxd-filter::-webkit-scrollbar { display: none; }
.oxx .oxd-filter[hidden], .oxx .oxd-group[hidden], .oxx .oxd-grid > li[hidden] { display: none; }
.oxx .oxd-filter button { flex: none; display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--p-line-2); background: #fff; font: 600 14px/1 var(--p-display); color: var(--p-ink); white-space: nowrap; cursor: pointer; transition: background-color .2s, border-color .2s, color .2s; }
.oxx .oxd-filter button:hover { border-color: var(--p-navy); }
.oxx .oxd-filter button span { font-size: 12.5px; color: var(--p-mute); }
.oxx .oxd-filter button[aria-pressed="true"] { background: var(--p-navy); border-color: var(--p-navy); color: #fff; }
.oxx .oxd-filter button[aria-pressed="true"] span { color: rgb(255 255 255 / .7); }
.oxx .oxd-group + .oxd-group { margin-top: 36px; }
.oxx .oxd-group-h { display: flex; align-items: baseline; gap: 8px; margin: 0 0 14px; font-size: 18px; font-weight: 700; color: var(--p-ink); }
.oxx .oxd-group-h span { font: 600 14px/1 var(--p-text); color: var(--p-mute); }
.oxx .oxd-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.oxx .oxd-grid > li { display: flex; }
.oxx .oxd-card { display: flex; flex-direction: column; width: 100%; border-radius: 18px; background: #fff; border: 1px solid var(--p-line); overflow: hidden; color: var(--p-ink); transition: border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
.oxx .oxd-card:hover { border-color: var(--p-line-2); box-shadow: var(--p-shadow-md); transform: translateY(-2px); }
.oxx .oxd-card figure { margin: 0; aspect-ratio: 4 / 3; background: var(--p-tint); overflow: hidden; }
.oxx :is(.oxd-card, .oxd-team-sec .oxh-doc) figure img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.oxx .oxd-ph { display: grid; place-items: center; width: 100%; height: 100%; color: var(--p-navy-3); opacity: .5; }
.oxx .oxd-card-body { flex: 1; display: flex; flex-direction: column; gap: 4px; padding: 12px 12px 14px; }
.oxx .oxd-card-body b { font: 700 15px/1.25 var(--p-display); color: var(--p-ink); }
.oxx .oxd-card-body > span { font: 400 13px/1.4 var(--p-text); color: var(--p-mute); }
.oxx .oxd-card-body small { font: 600 12.5px/1.35 var(--p-text); color: var(--p-gold-ink); }
.oxx .oxd-card-body .oxp-link { margin-top: auto; padding-top: 8px; font-size: 13.5px; }
@media (min-width: 640px) {
  .oxx .oxd-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .oxx .oxd-card-body { padding: 14px 16px 16px; }
  .oxx .oxd-card-body b { font-size: 16px; }
  .oxx .oxd-card-body > span { font-size: 14px; }
}
@media (min-width: 1024px) {
  .oxx .oxh-phero + .oxd-team { padding-top: 40px; }
  .oxx .oxd-filter { flex-wrap: wrap; margin: 0 0 28px; padding: 0; overflow: visible; }
  .oxx .oxd-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
  .oxx .oxd-group + .oxd-group { margin-top: 48px; }
  .oxx .oxd-group-h { font-size: 20px; margin-bottom: 18px; }
}

/* ——— Profilul medicului. Telefon: fotografia (4:3) pe toată lățimea, textul pe un panou alb care o acoperă ușor,
   butoanele în primul ecran; conținutul pe secțiuni despărțite de linii; programarea ca panou final. Desktop: textul
   în stânga și fotografia în dreapta; conținutul în stânga, programarea în dreapta (rămâne vizibilă la derulare). */
.oxx .oxd :is(h1, h2, h3, h4) { font-family: var(--p-display); letter-spacing: -.02em; }
.oxx .oxd-team-sec .oxh-doc figure { overflow: hidden; }
.oxx .oxd-hero { position: relative; padding-bottom: 8px; background: #fff; }
.oxx .oxd-hero-in { display: grid; grid-template-columns: minmax(0, 1fr); }
.oxx .oxd-photo { position: relative; margin: 0 calc(-1 * var(--p-gutter)); aspect-ratio: 4 / 3; max-height: 440px; overflow: hidden; background: var(--p-tint); }
.oxx .oxd-hero:not(.has-img) .oxd-photo { aspect-ratio: auto; height: 150px; }
.oxx .oxd-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.oxx .oxd-hero-copy { position: relative; z-index: 1; margin: -30px calc(-1 * var(--p-gutter) + 4px) 0; padding: 18px calc(var(--p-gutter) - 4px) 0; border-radius: 24px 24px 0 0; background: #fff; }
.oxx .oxd-hero .oxh-crumbs ol { margin: -4px 0 4px; }
.oxx .oxd-hero h1 { margin: 0; font-size: clamp(1.9rem, 1.2rem + 3vw, 3rem); line-height: 1.08; font-weight: 700; letter-spacing: -.03em; color: var(--p-ink); text-wrap: balance; }
.oxx .oxd-role { margin: 10px 0 0; font: 600 15.5px/1.45 var(--p-text); color: var(--p-gold-ink); }
.oxx .oxd-hero .oxh-lead { margin-top: 10px; font-size: 16.5px; }
.oxx .oxd-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
.oxx .oxd-meta li { display: inline-flex; align-items: center; gap: 7px; min-height: 36px; padding: 0 12px; border-radius: 999px; background: var(--p-soft); border: 1px solid var(--p-line); font: 600 13.5px/1.2 var(--p-display); color: var(--p-ink); }
.oxx .oxd-meta a { display: inline-flex; align-items: center; gap: 7px; min-height: 36px; color: inherit; }
.oxx .oxd-meta svg { color: var(--p-gold-ink); }
.oxx .oxd-hero .oxh-cta { margin-top: 20px; }
@media (max-width: 767px) { .oxx .oxd-hero .oxh-crumbs [aria-current] { display: none; } }
@media (min-width: 1024px) {
  .oxx .oxd-hero { padding: 40px 0 16px; background: linear-gradient(180deg, var(--p-soft) 0%, rgb(245 248 252 / 0) 100%); }
  .oxx .oxd-hero-in { grid-template-columns: minmax(0, 1fr) minmax(0, 540px); gap: 56px; align-items: center; }
  .oxx .oxd-photo { grid-column: 2; grid-row: 1; margin: 0; max-height: none; border-radius: var(--p-r-panel); box-shadow: var(--p-shadow-md); }
  .oxx .oxd-hero:not(.has-img) .oxd-photo { height: auto; aspect-ratio: 4 / 3; }
  .oxx .oxd-hero-copy { grid-column: 1; grid-row: 1; margin: 0; padding: 0; border-radius: 0; background: none; }
  .oxx .oxd-hero h1 { font-size: clamp(2.6rem, 1.4rem + 2.2vw, 3.4rem); }
  .oxx .oxd-role { font-size: 17px; }
  .oxx .oxd-hero .oxh-lead { font-size: 18px; max-width: 52ch; }
}
.oxx .oxd-body { display: grid; grid-template-columns: minmax(0, 1fr); padding-top: 8px; }
.oxx .oxd-sec { padding: 28px 0; border-top: 1px solid var(--p-line); scroll-margin-top: calc(var(--p-header-h) + 12px); }
.oxx .oxd-sec:first-child { border-top: 0; }
.oxx .oxd-sec h2 { display: flex; align-items: center; margin: 0 0 16px; font-size: clamp(1.3rem, 1.05rem + 1vw, 1.7rem); line-height: 1.2; font-weight: 700; color: var(--p-ink); }
.oxx .oxd-collapse { --oxb-fold: 300px; }
.oxx .oxd-sec .oxb-prose { font-size: 16px; }
.oxx .oxd-empty { margin: 0; font: 400 16px/1.6 var(--p-text); color: var(--p-body); }
.oxx .oxd-empty a { color: var(--p-ink); font-weight: 600; white-space: nowrap; }
.oxx .oxd-tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.oxx .oxd-tags a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 14px 0 11px; border-radius: 999px; border: 1px solid var(--p-line-2); background: #fff; font: 600 14.5px/1.2 var(--p-display); color: var(--p-ink); transition: border-color .2s, background-color .2s; }
.oxx .oxd-tags a:hover { border-color: var(--p-navy); background: var(--p-soft); }
.oxx .oxd-tags svg { flex: none; color: var(--p-gold-ink); }
/* Serviciile: rânduri (tot rândul e link); multe servicii → grupuri pe specialități care se deschid. */
.oxx .oxd-svc { display: grid; margin: 0; padding: 0; list-style: none; }
.oxx .oxd-svc a { display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 10px 2px; border-bottom: 1px solid var(--p-line); font: 500 15.5px/1.35 var(--p-text); color: var(--p-ink); }
.oxx .oxd-svc a > span { flex: 1; min-width: 0; }
.oxx .oxd-svc small { flex: none; padding: 5px 9px; border-radius: 999px; background: var(--p-gold-soft); color: var(--p-gold-ink); font: 600 12px/1 var(--p-display); }
.oxx .oxd-svc svg { flex: none; color: var(--p-mute); transition: transform .2s var(--p-ease), color .2s; }
.oxx .oxd-svc a:hover svg { color: var(--p-navy); transform: translateX(3px); }
.oxx .oxd-svc-groups { display: grid; gap: 10px; }
.oxx .oxd-svc-group { border-radius: 16px; border: 1px solid var(--p-line); background: #fff; transition: border-color .2s, box-shadow .2s; }
.oxx .oxd-svc-group[open] { border-color: var(--p-line-2); box-shadow: var(--p-shadow-sm); }
.oxx .oxd-svc-group summary { display: flex; align-items: center; gap: 12px; min-height: 64px; padding: 10px 14px 10px 12px; border-radius: 16px; cursor: pointer; list-style: none; }
.oxx .oxd-svc-group summary::-webkit-details-marker { display: none; }
.oxx .oxd-svc-group summary:focus-visible { outline: 2px solid var(--p-navy); outline-offset: 2px; }
.oxx .oxd-svc-ic { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--p-tint); color: var(--p-navy-3); }
.oxx .oxd-svc-t { flex: 1; min-width: 0; display: grid; gap: 2px; }
.oxx .oxd-svc-t b { font: 700 15.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxd-svc-t small { font: 500 13px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxd-svc-go { flex: none; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--p-soft); color: var(--p-navy); transition: transform .25s var(--p-ease), background-color .2s, color .2s; }
.oxx .oxd-svc-group[open] .oxd-svc-go { transform: rotate(180deg); background: var(--p-navy); color: #fff; }
.oxx .oxd-svc-group .oxd-svc { padding: 0 14px 6px; }
.oxx .oxd-svc-group .oxd-svc li:last-child a { border-bottom: 0; }
.oxx .oxd-locs { margin: 0; }
/* Programarea: panou bleumarin cu telefonul mare și butonul spre contact. */
.oxx .oxd-aside { padding: 4px 0 44px; }
.oxx .oxd-book { display: grid; gap: 6px; justify-items: start; padding: 26px 22px; border-radius: var(--p-r-panel); color: #fff; background: radial-gradient(120% 140% at 100% 0%, var(--p-navy-3) 0%, var(--p-navy) 55%); box-shadow: var(--p-shadow-lg); }
.oxx .oxd-book-ic { display: grid; place-items: center; width: 46px; height: 46px; margin-bottom: 6px; border-radius: 14px; border: 1px solid rgb(184 147 90 / .55); background: rgb(184 147 90 / .12); color: var(--p-gold); }
.oxx .oxd-book h2 { margin: 0; font-size: 24px; color: #fff; }
.oxx .oxd-book p { margin: 0; font: 500 15px/1.4 var(--p-text); color: rgb(255 255 255 / .72); }
.oxx .oxd-book-tel { display: inline-flex; align-items: center; gap: 10px; margin: 10px 0 12px; font: 700 26px/1.1 var(--p-display); letter-spacing: -.02em; color: #fff; }
.oxx .oxd-book-tel svg { color: var(--p-gold); }
.oxx .oxd-team-sec { padding-top: 8px; }
@media (min-width: 1024px) {
  .oxx .oxd-body { grid-template-columns: minmax(0, 1fr) 340px; gap: 56px; align-items: start; padding-top: 24px; }
  .oxx .oxd-sec { padding: 36px 0; }
  .oxx .oxd-aside { position: sticky; top: calc(var(--p-header-h) + 24px); padding: 36px 0 0; }
  .oxx .oxd-book { padding: 30px 28px; }
  .oxx .oxd-team-sec { padding-top: 40px; }
}

/* =================== Paginile de prezentare în designul nou (/cas/): antet, carduri, locații =================== */
/* O secțiune la care trimite un link din pagină nu ajunge sub antetul fix. */
.oxx .oxh[id] { scroll-margin-top: calc(var(--p-header-h) + 12px); }

/* ——— Antetul simplu. Telefon: eticheta, titlul, textul, butoanele unul sub altul, apoi locația (numele și adresa)
   ca rând compact care duce la secțiunea locațiilor. Desktop: textul în stânga, locația pe un card în dreapta, cu
   programul. Fundalul deschis se stinge în alb, ca panoul nuanțat de dedesubt să se distingă. */
.oxx .oxh-phero { padding-block: 28px 4px; background: linear-gradient(180deg, var(--p-soft) 0%, var(--p-soft) 62%, #fff 100%); }
.oxx .oxh-phero-copy { max-width: 680px; }
.oxx .oxh-chip { display: inline-flex; align-items: center; gap: 7px; min-height: 30px; margin-bottom: 14px; padding: 0 13px; border-radius: 999px; background: var(--p-gold-soft); color: var(--p-gold-ink); font: 600 13.5px/1 var(--p-display); }
.oxx .oxh-phero h1 { margin: 0; font-size: clamp(2.05rem, 1.3rem + 3.2vw, 3.1rem); line-height: 1.06; font-weight: 700; letter-spacing: -.03em; color: var(--p-ink); text-wrap: balance; }
.oxx .oxh-phero h1 span { display: block; color: #2c5a8f; font-weight: 600; }
.oxx .oxh-phero .oxh-lead { margin-top: 12px; }
.oxx .oxh-phero .oxh-cta { margin-top: 22px; }
.oxx .oxh-where { display: grid; gap: 8px; margin: 14px 0 0; padding: 0; }
.oxx .oxh-where a { display: flex; align-items: center; gap: 12px; min-height: 64px; padding: 10px 14px 10px 10px; border-radius: 16px; border: 1px solid var(--p-line); background: #fff; color: var(--p-ink); transition: border-color .2s, box-shadow .2s; }
.oxx .oxh-where a:hover { border-color: var(--p-line-2); box-shadow: var(--p-shadow-sm); }
.oxx .oxh-where-ic { flex: none; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: var(--p-gold-soft); color: var(--p-gold-ink); }
.oxx .oxh-where-txt { flex: 1; min-width: 0; display: grid; gap: 2px; }
.oxx .oxh-where-txt > b { font: 600 14.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxh-where-txt > span { font: 400 13.5px/1.4 var(--p-text); color: var(--p-mute); }
.oxx .oxh-where-txt > .oxh-where-hours { display: none; }
.oxx .oxh-where-go { flex: none; color: var(--p-mute); }
.oxx .oxh-phero + .oxh-tiles { padding-top: 24px; }
@media (min-width: 480px) { .oxx .oxh-where a { max-width: 520px; } }
@media (min-width: 768px) { .oxx .oxh-phero { padding-block: 48px 8px; } .oxx .oxh-phero + .oxh-tiles { padding-top: 40px; } }
@media (min-width: 1024px) {
  .oxx .oxh-phero { padding-block: 72px 24px; }
  .oxx .oxh-phero:is(.has-where, .has-side) .oxh-phero-in { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: 64px; align-items: center; }
  .oxx .oxh-phero h1 { font-size: clamp(2.7rem, 1.2rem + 2.5vw, 3.5rem); line-height: 1.04; }
  .oxx .oxh-phero .oxh-lead { margin-top: 18px; font-size: 18.5px; }
  .oxx .oxh-phero .oxh-cta { margin-top: 30px; }
  .oxx .oxh-phero + .oxh-tiles { padding-top: 48px; }
  .oxx .oxh-where { margin: 0; gap: 12px; }
  .oxx .oxh-where a { max-width: none; align-items: flex-start; gap: 16px; padding: 24px; border-color: transparent; border-radius: var(--p-r-card); box-shadow: var(--p-shadow-md); }
  .oxx .oxh-where a:hover { border-color: transparent; box-shadow: var(--p-shadow-lg); }
  .oxx .oxh-where-ic { width: 46px; height: 46px; border-radius: 14px; }
  .oxx .oxh-where-txt { gap: 4px; }
  .oxx .oxh-where-txt > b { font-size: 17px; }
  .oxx .oxh-where-txt > span { font-size: 14.5px; }
  .oxx .oxh-where-txt > .oxh-where-hours { display: grid; gap: 4px; margin-top: 12px; padding-top: 14px; border-top: 1px solid var(--p-line); }
  .oxx .oxh-where-hours span { font: 400 14px/1.45 var(--p-text); color: var(--p-body); }
  .oxx .oxh-where-hours b { font-weight: 600; color: var(--p-ink); font-variant-numeric: tabular-nums; }
  .oxx .oxh-where-go { margin-top: 12px; }
}

/* ——— Cardurile simple (specializările de pe /cas/), pe panoul nuanțat al listei CAS de pe homepage. Telefon și
   tabletă: rânduri albe (iconița, numele, descrierea pe cel mult două rânduri, săgeata; tot rândul e link), pe două
   coloane de la 640px. Desktop larg: plăci pe rânduri pline, cu linkul „Vezi detalii” jos, aliniat la toate. */
.oxx .oxh-tiles-box { border-radius: var(--p-r-panel); background: var(--p-tint); padding: 24px 12px 12px; }
.oxx .oxh-tiles-box .oxh-head { margin-bottom: 16px; padding-inline: 6px; }
.oxx .oxh-tiles-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; margin: 0; padding: 0; }
.oxx .oxh-tiles-grid li { display: flex; }
.oxx .oxh-tile { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 76px; padding: 12px 12px 12px 12px; border-radius: 16px; border: 1px solid transparent; background: #fff; color: var(--p-ink); transition: border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
.oxx .oxh-tile .oxp-ico { flex: none; align-self: flex-start; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: var(--p-gold-soft); color: var(--p-gold-ink); }
.oxx .oxh-tile-txt { flex: 1; min-width: 0; display: grid; gap: 3px; }
.oxx .oxh-tile h3 { margin: 0; font-size: 16px; line-height: 1.25; font-weight: 700; letter-spacing: -.01em; color: var(--p-ink); }
.oxx .oxh-tile p { margin: 0; font: 400 13.5px/1.45 var(--p-text); color: var(--p-body); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxh-tile-cta { display: none; }
.oxx .oxh-tile-go { flex: none; color: var(--p-mute); transition: color .2s, transform .2s var(--p-ease); }
.oxx .oxh-tile:hover { border-color: var(--p-line-2); box-shadow: var(--p-shadow-sm); }
.oxx .oxh-tile:hover .oxh-tile-go { color: var(--p-navy); transform: translateX(2px); }
@media (min-width: 640px) { .oxx .oxh-tiles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 768px) { .oxx .oxh-tiles-box { padding: 32px; } .oxx .oxh-tiles-box .oxh-head { margin-bottom: 24px; padding: 0; } .oxx .oxh-tile { padding: 14px 16px 14px 14px; } }
@media (min-width: 1180px) {
  .oxx .oxh-tiles-box { padding: 40px; }
  .oxx .oxh-tiles-grid { grid-template-columns: repeat(min(var(--cols, 4), 4), minmax(0, 1fr)); gap: 12px; }
  .oxx .oxh-tile { flex-direction: column; align-items: flex-start; gap: 16px; padding: 22px; border-radius: var(--p-r-card); }
  .oxx .oxh-tile:hover { transform: translateY(-2px); }
  .oxx .oxh-tile .oxp-ico { width: 46px; height: 46px; border-radius: 14px; }
  .oxx .oxh-tile-txt { flex: 1; align-content: start; gap: 6px; }
  .oxx .oxh-tile h3 { font-size: 18px; }
  .oxx .oxh-tile p { font-size: 14.5px; -webkit-line-clamp: 3; }
  .oxx .oxh-tile-cta { display: inline-flex; font-size: 14.5px; }
  .oxx .oxh-tile-go { display: none; }
}

/* ——— Nota unei liste de pași (condițiile accesului prin CAS): casetă aurie sub pași. */
.oxx .oxh-note { display: flex; align-items: flex-start; gap: 12px; max-width: 780px; margin: 26px 0 0; padding: 14px 16px; border-radius: 16px; background: var(--p-gold-soft); font: 400 14.5px/1.55 var(--p-text); color: var(--p-ink); }
.oxx .oxh-note svg { flex: none; margin-top: 2px; color: var(--p-gold-ink); }
@media (min-width: 900px) { .oxx .oxh-note { margin-top: 36px; padding: 16px 20px; font-size: 15px; } }

/* ——— Locațiile (/cas/ „Unde te așteptăm”): datele și acțiunile (telefonul și indicațiile pe două coloane pe telefon),
   harta dedesubt; o singură locație, pe desktop: datele în stânga, harta în dreapta. */
.oxx .oxh-locs-sec .oxh-locs { margin-top: 0; }
.oxx .oxh-locs-sec .oxh-locs.is-single { grid-template-columns: minmax(0, 1fr); }
.oxx .oxh-loc.has-map { gap: 0; padding: 0; overflow: hidden; }
.oxx .oxh-loc-info { display: grid; gap: 10px; align-content: start; min-width: 0; }
.oxx .oxh-loc.has-map .oxh-loc-info { padding: 18px; }
.oxx .oxh-loc-info .oxh-loc-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.oxx .oxh-loc-info .oxh-loc-actions .oxp-btn { padding-inline: 10px; }
.oxx .oxh-loc-more { justify-self: start; min-height: 44px; margin: -6px 0 -10px; font-size: 14.5px; }
.oxx .oxh-loc-map { aspect-ratio: 16 / 10; background: var(--p-tint); border-top: 1px solid var(--p-line); }
.oxx .oxh-loc-map iframe { display: block; width: 100%; height: 100%; border: 0; }
@media (min-width: 768px) {
  .oxx .oxh-loc.has-map .oxh-loc-info { padding: 22px; }
  .oxx .oxh-loc-info .oxh-loc-actions { display: flex; flex-wrap: wrap; }
  .oxx .oxh-loc-info .oxh-loc-actions .oxp-btn { padding-inline: 15px; }
}
@media (min-width: 900px) {
  .oxx .oxh-locs.is-single .oxh-loc.has-map { grid-template-columns: minmax(0, 420px) minmax(0, 1fr); }
  .oxx .oxh-locs.is-single .oxh-loc.has-map .oxh-loc-info { align-content: center; gap: 12px; padding: 36px; }
  .oxx .oxh-locs.is-single .oxh-loc h3 { font-size: 21px; }
  .oxx .oxh-locs.is-single .oxh-loc-map { aspect-ratio: auto; min-height: 360px; border-top: 0; border-left: 1px solid var(--p-line); }
}

/* ——— Antetul paginilor-listă (/specialitati/): firul de navigare (același aspect ca pe paginile specialităților) și
   reperele listei. Telefon: reperele ca bandă pe trei coloane sub text; desktop: un card în dreapta, câte un reper
   pe rând (numărul mare, eticheta alături). */
.oxx .oxh-crumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; margin: -8px 0 10px; padding: 0; list-style: none; font: 500 13px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxh-crumbs li { display: inline-flex; align-items: center; gap: 8px; }
.oxx .oxh-crumbs li + li::before { content: ""; width: 6px; height: 6px; margin-right: 2px; border-top: 1.5px solid var(--p-line-2); border-right: 1.5px solid var(--p-line-2); transform: rotate(45deg); }
.oxx .oxh-crumbs a { display: inline-block; padding: 8px 0; color: var(--p-mute); transition: color .2s; }
.oxx .oxh-crumbs a:hover { color: var(--p-navy); text-decoration: underline; text-underline-offset: 3px; }
.oxx .oxh-crumbs [aria-current] { color: var(--p-ink); font-weight: 600; }
.oxx .oxh-pfacts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 20px 0 0; padding: 0; list-style: none; border: 1px solid var(--p-line); border-radius: var(--p-r-card); background: #fff; box-shadow: var(--p-shadow-sm); }
.oxx .oxh-pfacts li { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; padding: 14px 6px; text-align: center; }
.oxx .oxh-pfacts li + li { border-left: 1px solid var(--p-line); }
.oxx .oxh-pfacts b { font: 700 24px/1 var(--p-display); letter-spacing: -.02em; color: var(--p-ink); font-variant-numeric: tabular-nums; }
.oxx .oxh-pfacts span { font: 500 12.5px/1.3 var(--p-text); color: var(--p-mute); }
@media (min-width: 1024px) {
  .oxx .oxh-crumbs ol { margin-top: -12px; margin-bottom: 14px; }
  .oxx .oxh-pfacts { grid-template-columns: minmax(0, 1fr); margin: 0; padding: 6px 28px; border-color: transparent; box-shadow: var(--p-shadow-md); }
  .oxx .oxh-pfacts li { flex-direction: row; align-items: baseline; justify-content: flex-start; gap: 14px; padding: 18px 0; text-align: left; }
  .oxx .oxh-pfacts li + li { border-left: 0; border-top: 1px solid var(--p-line); }
  .oxx .oxh-pfacts b { min-width: 2ch; font-size: 40px; }
  .oxx .oxh-pfacts span { font-size: 16px; color: var(--p-body); }
}

/* ——— Lista specialităților. Telefon: rânduri (iconița, numele, descrierea pe două rânduri, orașele, numărul
   serviciilor, „Prin CAS”, săgeata); tot rândul e link. De la 640px, două coloane. Desktop: carduri pe rânduri pline,
   „Prin CAS” în colțul de sus și linkul jos, aliniat la toate. Auriul rămâne semnul CAS; iconițele specialităților
   au nuanța din meniul „Specialități”. */
.oxx .oxh-phero + .oxh-specs { padding-top: 24px; }
.oxx .oxh-spec-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; margin: 0; padding: 0; list-style: none; }
.oxx .oxh-spec-grid li { display: flex; }
.oxx .oxh-spec { position: relative; display: flex; align-items: flex-start; gap: 14px; width: 100%; padding: 16px 12px 16px 14px; border-radius: var(--p-r-card); border: 1px solid var(--p-line); background: #fff; color: var(--p-ink); transition: border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
.oxx .oxh-spec:hover { border-color: var(--p-line-2); box-shadow: var(--p-shadow-sm); }
.oxx .oxh-spec-ic { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 13px; background: var(--p-tint); color: var(--p-navy-3); transition: background-color .2s, color .2s; }
.oxx .oxh-spec-txt { flex: 1; min-width: 0; display: grid; gap: 4px; }
.oxx .oxh-spec :is(h2, h3) { margin: 0; font-size: 16.5px; line-height: 1.25; font-weight: 700; letter-spacing: -.01em; color: var(--p-ink); }
.oxx .oxh-spec p { margin: 0; font: 400 14px/1.45 var(--p-text); color: var(--p-body); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxh-spec-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin-top: 4px; font: 500 12.5px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxh-spec-meta > span { display: inline-flex; align-items: center; gap: 5px; }
.oxx .oxh-spec-cas { padding: 4px 9px 4px 7px; border-radius: 999px; background: var(--p-gold-soft); color: var(--p-gold-ink); font-weight: 600; }
.oxx .oxh-spec-cas svg { color: var(--p-gold-ink); }
.oxx .oxh-spec-cta { display: none; }
.oxx .oxh-spec-go { flex: none; align-self: center; color: var(--p-mute); transition: color .2s, transform .2s var(--p-ease); }
.oxx .oxh-spec:hover .oxh-spec-go { color: var(--p-navy); transform: translateX(2px); }
@media (min-width: 640px) { .oxx .oxh-spec-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 768px) { .oxx .oxh-phero + .oxh-specs { padding-top: 40px; } }
@media (min-width: 1024px) {
  .oxx .oxh-phero + .oxh-specs { padding-top: 56px; }
  .oxx .oxh-spec-grid { grid-template-columns: repeat(min(var(--cols, 3), 3), minmax(0, 1fr)); gap: 16px; }
  .oxx .oxh-spec { flex-direction: column; gap: 16px; padding: 24px; }
  .oxx .oxh-spec:hover { transform: translateY(-2px); box-shadow: var(--p-shadow-md); }
  .oxx .oxh-spec:hover .oxh-spec-ic { background: var(--p-navy); color: #fff; }
  .oxx .oxh-spec-ic { width: 48px; height: 48px; border-radius: 14px; }
  .oxx .oxh-spec-txt { flex: 1; align-content: start; gap: 8px; }
  .oxx .oxh-spec :is(h2, h3) { font-size: 19px; }
  .oxx .oxh-spec p { font-size: 15px; -webkit-line-clamp: 3; }
  .oxx .oxh-spec-meta { margin-top: 2px; font-size: 13.5px; }
  .oxx .oxh-spec-cas { position: absolute; top: 24px; right: 24px; }
  .oxx .oxh-spec-cta { display: inline-flex; width: 100%; padding-top: 16px; border-top: 1px solid var(--p-line); font-size: 15px; }
  .oxx .oxh-spec-go { display: none; }
}
@media (min-width: 1280px) { .oxx .oxh-spec-grid { grid-template-columns: repeat(min(var(--cols, 4), 4), minmax(0, 1fr)); } }

/* /assets/site/premium-pages.css */
/* Oxxygene: paginile din secțiuni în designul nou (specialitățile cu „Design nou” bifat în Brain). Marcajul:
   src/site/blocks-premium.mjs. Se încarcă după premium.css și folosește tokenii și piesele homepage-ului (.oxh-*,
   .oxp-*): aceleași titluri, butoane, carduri, panouri, benzi derulabile; aici doar ce e propriu blocurilor (.oxb-*).

   Mobil întâi (≈90% din vizite): regulile de bază sunt pentru telefon; ecranele mari se adaugă cu min-width (640,
   768, 1024). Pe telefon: butoanele pe toată lățimea, traseele ca benzi derulabile, câmpurile formularului de 16px
   (iPhone nu mai mărește pagina la tastare), harta înlocuită de „Indicații” pe fiecare locație. */

.oxx :is(.oxb, .oxb-hero, .oxb-cta)[id] { scroll-margin-top: calc(var(--p-header-h) + 8px); }
@media (prefers-reduced-motion: no-preference) { html:has(.oxb-hero) { scroll-behavior: smooth; } }
/* Etichetele lungi ale butoanelor („Explorează longevitatea organismului”) se rup pe două rânduri în loc să iasă din ecran. */
.oxx :is(.oxb, .oxb-hero, .oxb-cta) .oxp-btn { white-space: normal; text-align: center; line-height: 1.25; padding-block: 10px; }
.oxx .oxb { padding-block: 36px; }
.oxx .oxb-band { background: var(--p-soft); }
@media (min-width: 768px) { .oxx .oxb { padding-block: 64px; } }
@media (min-width: 1024px) { .oxx .oxb { padding-block: 80px; } }

/* ——— Iconița din plăci și carduri: pătrat auriu-deschis (ca plăcile CAS de pe homepage), pe același rând cu titlul. */
.oxx .oxb-top { display: flex; align-items: center; gap: 14px; }
.oxx .oxb-top h3 { margin: 0; }
.oxx .oxb-ic { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: var(--p-r-btn); background: var(--p-gold-soft); color: var(--p-gold-ink); }
.oxx .oxb-kicker { font: 700 12px/1.2 var(--p-display); letter-spacing: .12em; text-transform: uppercase; color: var(--p-gold-ink); }

/* ——— Firul de navigare: un rând (derulabil pe telefon), pe fundalul deschis al antetului paginii. */
.oxx .oxb-crumbs { background: var(--p-soft); padding-top: 10px; }
.oxx .oxb-crumbs ol { display: flex; align-items: center; gap: 4px; margin: 0; padding: 0; list-style: none; overflow-x: auto; scrollbar-width: none; white-space: nowrap; font: 500 13px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxb-crumbs ol::-webkit-scrollbar { display: none; }
.oxx .oxb-crumbs li { display: inline-flex; align-items: center; gap: 4px; flex: none; }
.oxx .oxb-crumbs a { display: inline-block; padding: 8px 0; color: var(--p-mute); transition: color .2s; }
.oxx .oxb-crumbs a:hover { color: var(--p-navy); text-decoration: underline; text-underline-offset: 3px; }
.oxx .oxb-crumbs svg { color: var(--p-line-2); }
.oxx .oxb-crumbs [aria-current] { color: var(--p-ink); font-weight: 600; }

/* ——— Antetul paginii. Telefon: eticheta, titlul, textul, butoanele unul sub altul, apoi reperele pe un card alb.
   Desktop: textul în stânga, reperele pe un panou bleumarin în dreapta (ca panoul tehnologiilor de pe homepage). */
.oxx .oxb-hero { position: relative; overflow: hidden; padding: 14px 0 32px; background:
  radial-gradient(80% 55% at 100% 0%, color-mix(in srgb, var(--p-navy-3) 10%, transparent), transparent 70%),
  radial-gradient(70% 45% at 0% 100%, color-mix(in srgb, var(--p-gold) 9%, transparent), transparent 70%),
  linear-gradient(180deg, var(--p-soft) 0%, #fff 100%); }
.oxx .oxb-hero-in { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: 26px; }
.oxx .oxb-eyebrow { display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px 7px 10px; border-radius: 999px; background: #fff; border: 1px solid var(--p-line); box-shadow: var(--p-shadow-sm); font: 700 11.5px/1 var(--p-display); letter-spacing: .12em; text-transform: uppercase; color: var(--p-gold-ink); }
.oxx .oxb-eyebrow svg { color: var(--p-gold); }
.oxx .oxb-hero h1 { margin: 16px 0 0; font-size: clamp(2rem, 1.25rem + 3.2vw, 3.05rem); line-height: 1.07; font-weight: 700; letter-spacing: -.03em; color: var(--p-ink); text-wrap: balance; }
.oxx .oxb-hero h1 span { display: block; color: var(--p-navy-3); font-weight: 600; }
.oxx .oxb-hero .oxh-cta .oxp-btn { min-height: 54px; }
.oxx .oxb-hero-side { border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); box-shadow: var(--p-shadow-sm); padding: 4px 16px; }
.oxx .oxb-points { display: grid; margin: 0; padding: 0; list-style: none; }
.oxx .oxb-points li { display: flex; align-items: center; gap: 12px; padding: 12px 0; font: 500 15px/1.4 var(--p-text); color: var(--p-ink); }
.oxx .oxb-points li + li { border-top: 1px solid var(--p-line); }
.oxx .oxb-points li > span:last-child::first-letter { text-transform: uppercase; }
.oxx .oxb-points-ic { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: var(--p-r-btn); background: var(--p-gold-soft); color: var(--p-gold-ink); }
/* Imaginea antetului se vede întreagă (fără decupaj), la proporțiile ei; pe telefon vine după rezumat. */
.oxx .oxb-hero-media { order: 3; margin: 0; border-radius: var(--p-r-card); overflow: hidden; background: var(--p-tint); box-shadow: var(--p-shadow-md); }
.oxx .oxb-hero-media img { display: block; width: 100%; height: auto; }
.oxx .oxb-hero-points { order: 2; }
@media (min-width: 1024px) {
  .oxx .oxb-crumbs { padding-top: 16px; }
  .oxx .oxb-hero { padding: 28px 0 80px; }
  .oxx .oxb-hero-in { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 32px 64px; align-items: center; min-height: 420px; }
  .oxx .oxb-hero h1 { font-size: clamp(2.7rem, 1.2rem + 2.5vw, 3.5rem); line-height: 1.04; margin-top: 20px; }
  .oxx .oxb-hero .oxh-lead { font-size: 18.5px; max-width: 46ch; margin-top: 18px; }
  .oxx .oxb-hero .oxh-cta { margin-top: 30px; }
  /* Rezumatul: card deschis cu chenar (ca reperele paginilor de specialitate), nu panou închis. */
  .oxx .oxb-hero-side { padding: 8px 24px; border-radius: var(--p-r-panel); }
  .oxx .oxb-hero-side .oxb-points li { gap: 16px; padding: 18px 0; font-size: 16.5px; }
  .oxx .oxb-hero-side .oxb-points-ic { width: 46px; height: 46px; }
  .oxx .oxb-hero.has-img .oxb-hero-media { grid-column: 2; grid-row: 1 / span 2; align-self: center; border-radius: var(--p-r-panel); }
  .oxx .oxb-hero.has-img .oxb-hero-points { grid-column: 1; }
}

/* ——— Text: fraza de deschidere (un paragraf scurt), titlul cu textul alături, textul de lectură. */
.oxx .oxb-text { padding-block: 24px; }
.oxx .oxb-statement { max-width: 50rem; padding-left: 18px; border-left: 3px solid var(--p-gold); }
.oxx .oxb-statement p { margin: 0; font: 500 17px/1.55 var(--p-display); letter-spacing: -.01em; color: var(--p-ink); text-wrap: pretty; }
.oxx .oxb-prose { max-width: 46rem; font: 400 16.5px/1.7 var(--p-text); color: var(--p-body); }
.oxx .oxb-prose.is-wide { max-width: none; }
.oxx .oxb-prose > :first-child { margin-top: 0; }
.oxx .oxb-prose > :last-child { margin-bottom: 0; }
.oxx .oxb-prose p { margin: 0 0 1em; }
.oxx .oxb-prose h2 { margin: 1.5em 0 .5em; font-size: clamp(1.35rem, 1.1rem + 1vw, 1.75rem); line-height: 1.2; font-weight: 700; color: var(--p-ink); }
.oxx .oxb-prose h3 { margin: 1.4em 0 .4em; font-size: 19px; line-height: 1.3; font-weight: 700; color: var(--p-ink); }
.oxx .oxb-prose strong { color: var(--p-ink); font-weight: 600; }
.oxx .oxb-prose a { color: var(--p-navy-3); font-weight: 600; text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--p-gold) 70%, transparent); text-decoration-thickness: 1.5px; text-underline-offset: 3px; transition: color .2s, text-decoration-color .2s; }
.oxx .oxb-prose a:hover { color: var(--p-navy); text-decoration-color: var(--p-gold); }
.oxx .oxb-prose :is(ul, ol) { display: grid; gap: .45em; margin: 0 0 1.1em; padding: 0; list-style: none; }
.oxx .oxb-prose ul > li { position: relative; padding-left: 22px; }
.oxx .oxb-prose ul > li::before { content: ""; position: absolute; left: 3px; top: .62em; width: 7px; height: 7px; border-radius: 50%; background: var(--p-gold); }
.oxx .oxb-prose ol { counter-reset: oxb; }
.oxx .oxb-prose ol > li { position: relative; padding-left: 34px; counter-increment: oxb; }
.oxx .oxb-prose ol > li::before { content: counter(oxb); position: absolute; left: 0; top: .1em; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--p-gold-soft); color: var(--p-gold-ink); font: 700 12px/1 var(--p-display); }
.oxx .oxb-prose img { max-width: 100%; height: auto; border-radius: var(--p-r-card); }
.oxx .oxb-split { display: grid; gap: 14px; }
.oxx .oxb-split > h2 { margin: 0; }
@media (min-width: 768px) { .oxx .oxb-text { padding-block: 48px; } .oxx .oxb-statement { padding-left: 26px; } .oxx .oxb-statement p { font-size: 22px; line-height: 1.5; } }
@media (min-width: 1024px) {
  .oxx .oxb-text { padding-block: 56px; }
  .oxx .oxb-split { grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: 72px; align-items: start; }
  .oxx .oxb-split .oxb-prose { font-size: 17.5px; max-width: 44rem; }
}

/* ——— Alegerea traseului (lista pe fundal nuanțat): panoul nuanțat al homepage-ului cu carduri mari, întregi și pe
   telefon (e decizia principală a paginii); iconița pe bleumarin, etichetele aurii, linkul spre secțiunea traseului. */
.oxx .oxb-panel { border-radius: var(--p-r-panel); background: var(--p-tint); padding: 24px 14px 14px; }
.oxx .oxb-panel > .oxh-head { padding-inline: 6px; }
.oxx .oxb-choices { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.oxx .oxb-choices > li { display: flex; }
.oxx .oxb-choice { display: flex; flex-direction: column; gap: 10px; width: 100%; padding: 20px 18px; border-radius: var(--p-r-card); background: #fff; border: 1px solid transparent; box-shadow: var(--p-shadow-sm); color: var(--p-ink); transition: border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
.oxx a.oxb-choice:hover { border-color: var(--p-line-2); box-shadow: var(--p-shadow-md); transform: translateY(-2px); }
.oxx .oxb-choice .oxb-ic { width: 48px; height: 48px; background: var(--p-navy); color: #fff; }
.oxx .oxb-choice h3 { font-size: 20px; line-height: 1.2; font-weight: 700; color: var(--p-ink); }
.oxx .oxb-choice p { margin: 0; font: 400 15px/1.55 var(--p-text); color: var(--p-body); }
.oxx .oxb-choice .oxp-link { margin-top: auto; padding-top: 8px; }
.oxx .oxb-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 2px 0 0; padding: 0; list-style: none; }
.oxx .oxb-tags li { padding: 7px 11px; border-radius: 999px; background: var(--p-gold-soft); color: var(--p-gold-ink); font: 600 12.5px/1 var(--p-display); }
.oxx .oxb-panel.is-dark { background: radial-gradient(120% 120% at 0% 0%, var(--p-navy-3) 0%, var(--p-navy) 58%); color: #fff; }
.oxx .oxb-panel.is-dark .oxh-head h2 { color: #fff; }
.oxx .oxb-panel.is-dark .oxh-head p { color: rgb(255 255 255 / .72); }
@media (min-width: 768px) {
  .oxx .oxb-panel { padding: 32px; }
  .oxx .oxb-panel > .oxh-head { padding-inline: 0; }
  .oxx .oxb-choices { grid-template-columns: repeat(min(var(--n, 2), 3), minmax(0, 1fr)); gap: 14px; }
  .oxx .oxb-choice { padding: 26px; }
  .oxx .oxb-choice h3 { font-size: 23px; }
  .oxx .oxb-choice p { font-size: 15.5px; }
}
@media (min-width: 1024px) { .oxx .oxb-panel { padding: 40px; } }

/* ——— Traseele (listele editoriale): carduri cu iconiță, titlu, text și link; pe telefon bandă derulabilă (cardul
   următor se vede pe margine), pe desktop grilă de până la patru coloane. */
.oxx .oxb-cards { grid-auto-columns: 84%; }
.oxx .oxb-card { display: flex; flex-direction: column; gap: 10px; height: 100%; padding: 20px 18px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); color: var(--p-ink); transition: border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
.oxx a.oxb-card:hover { border-color: var(--p-line-2); box-shadow: var(--p-shadow-md); transform: translateY(-2px); }
.oxx .oxb-card h3 { font-size: 18px; line-height: 1.25; font-weight: 700; color: var(--p-ink); }
.oxx .oxb-card p { margin: 0; font: 400 15px/1.55 var(--p-text); color: var(--p-body); }
.oxx .oxb-card .oxp-link { margin-top: auto; padding-top: 6px; font-size: 14.5px; }
@media (min-width: 640px) { .oxx .oxb-cards { grid-auto-columns: 46%; } }
@media (min-width: 1024px) {
  .oxx .oxb-cards { grid-auto-flow: row; grid-template-columns: repeat(min(var(--n, 3), 4), minmax(0, 1fr)); overflow: visible; }
  .oxx .oxb-card { padding: 22px; }
  /* Pe patru coloane, iconița stă deasupra titlului: titlul are toată lățimea cardului. */
  .oxx .oxb-card .oxb-top { flex-direction: column; align-items: flex-start; gap: 16px; }
}

/* ——— Liste pe coloane (punctele de plecare): carduri întregi, lista cu bife sub o linie, tariful evidențiat. */
.oxx .oxb-colgrid { display: grid; gap: 12px; }
.oxx .oxb-col { display: flex; flex-direction: column; gap: 12px; padding: 20px 18px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxb-col h3 { margin: 0; font-size: 18px; line-height: 1.3; font-weight: 700; color: var(--p-ink); }
.oxx .oxb-col > p { margin: 0; font: 400 15.5px/1.6 var(--p-text); color: var(--p-body); }
.oxx .oxb-checks { display: grid; gap: 10px; margin: 2px 0 0; padding: 14px 0 0; list-style: none; border-top: 1px solid var(--p-line); }
.oxx .oxb-checks li { display: flex; gap: 10px; align-items: flex-start; font: 400 15px/1.5 var(--p-text); color: var(--p-ink); }
.oxx .oxb-checks li svg { flex: none; margin-top: 2px; color: var(--p-gold-ink); }
.oxx .oxb-checks li.is-price { align-items: center; padding: 10px 12px; border-radius: var(--p-r-btn); background: var(--p-gold-soft); }
.oxx .oxb-checks li.is-price svg { margin-top: 0; }
.oxx .oxb-checks li.is-price b { font: 700 16px/1.2 var(--p-display); color: var(--p-ink); white-space: nowrap; }
.oxx .oxb-note { margin: 0; font: 400 14px/1.55 var(--p-text); color: var(--p-mute); }
.oxx .oxb-col > .oxp-link { margin-top: auto; padding-top: 4px; font-size: 14.5px; }
@media (min-width: 768px) {
  .oxx .oxb-colgrid { grid-template-columns: repeat(min(var(--n, 2), 3), minmax(0, 1fr)); gap: 16px; }
  .oxx .oxb-col { padding: 26px; }
}

/* ——— Medicii: cardul larg al homepage-ului (alb pe banda deschisă), acțiunile sub text. */
.oxx .oxb-band .oxh-lead-doc { background: #fff; border: 1px solid var(--p-line); }
.oxx .oxb-doc-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; margin-top: 8px; }
.oxx .oxb-more { margin-top: 18px; }

/* ——— Locațiile: cardurile homepage-ului; harta (la cerere) doar de la 768px: pe telefon, „Indicații” deschide
   aplicația de hărți. Pe desktop, locațiile în stânga și harta în dreapta. */
.oxx .oxb-places-grid { display: grid; gap: 12px; }
.oxx .oxb-locs { margin: 0; list-style: none; }
.oxx .oxb-loc-img { margin: -18px -18px 4px; aspect-ratio: 16 / 9; overflow: hidden; border-radius: var(--p-r-card) var(--p-r-card) 0 0; background: var(--p-tint); }
.oxx .oxb-loc-img img { width: 100%; height: 100%; object-fit: cover; }
.oxx .oxb-map { display: none; }
@media (min-width: 768px) {
  .oxx .oxb-loc-img { margin: -22px -22px 4px; }
  .oxx .oxb-map { display: block; position: relative; min-height: 320px; border-radius: var(--p-r-card); overflow: hidden; border: 1px solid var(--p-line); background: var(--p-soft); }
  .oxx .oxb-map-ph { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 8px; padding: 28px; text-align: center; background:
    radial-gradient(60% 60% at 50% 45%, rgb(255 255 255 / .95), rgb(255 255 255 / .6) 70%, transparent),
    repeating-linear-gradient(0deg, transparent 0 39px, color-mix(in srgb, var(--p-ink) 5%, transparent) 39px 40px),
    repeating-linear-gradient(90deg, transparent 0 39px, color-mix(in srgb, var(--p-ink) 5%, transparent) 39px 40px), var(--p-soft); }
  .oxx .oxb-map-ph .oxb-ic { width: 52px; height: 52px; margin-bottom: 4px; background: var(--p-navy); color: #fff; }
  .oxx .oxb-map-ph b { font: 700 17px/1.3 var(--p-display); color: var(--p-ink); }
  .oxx .oxb-map-ph span { font: 400 14.5px/1.5 var(--p-text); color: var(--p-body); }
  .oxx .oxb-map-ph .oxp-btn { margin-top: 8px; }
  .oxx .oxb-map-ph small { font: 400 12.5px/1.4 var(--p-text); color: var(--p-mute); }
  .oxx .oxb-map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
  .oxx .oxb-map.is-loaded .oxb-map-ph { display: none; }
}
@media (min-width: 1024px) {
  .oxx .oxb-places.has-map .oxb-places-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 16px; align-items: stretch; }
  .oxx .oxb-places.has-map .oxb-locs { grid-template-columns: minmax(0, 1fr); }
  .oxx .oxb-map { min-height: 100%; }
}

/* ——— Formularul: panoul nuanțat, textul (cu telefonul ca link) și formularul pe un card alb. Câmpuri de 16px și
   cel puțin 50px înălțime; opțiunile radio ca butoane rotunjite; trimiterea pe toată lățimea pe telefon. */
.oxx .oxb-form-box { display: grid; gap: 20px; padding: 24px 14px 14px; border-radius: var(--p-r-panel); background: var(--p-tint); }
.oxx .oxb-form-copy { display: grid; gap: 10px; justify-items: start; padding-inline: 6px; }
.oxx .oxb-form-copy .oxb-ic { background: #fff; box-shadow: var(--p-shadow-sm); }
.oxx .oxb-form-copy h2 { margin: 4px 0 0; }
.oxx .oxb-form-copy p { margin: 0; font: 400 16px/1.6 var(--p-text); color: var(--p-body); max-width: 52ch; }
.oxx .oxb-form-copy p a { color: var(--p-navy); font-weight: 700; white-space: nowrap; text-decoration: underline; text-decoration-color: var(--p-gold); text-decoration-thickness: 1.5px; text-underline-offset: 3px; }
.oxx .oxb-form { padding: 18px 16px 20px; border-radius: var(--p-r-card); background: #fff; box-shadow: var(--p-shadow-sm); }
.oxx .oxb-fields { display: grid; gap: 14px; }
.oxx .oxb-field { display: grid; gap: 6px; min-width: 0; margin: 0; padding: 0; border: 0; }
.oxx fieldset.oxb-field { display: block; }
.oxx .oxb-field > label, .oxx .oxb-field legend { padding: 0; font: 600 14px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxb-field legend { margin-bottom: 8px; }
.oxx .oxb-field :is(input, select, textarea) { width: 100%; min-height: 50px; padding: 12px 14px; border-radius: var(--p-r-btn); border: 1.5px solid var(--p-line-2); background: #fff; font: 400 16px/1.4 var(--p-text); color: var(--p-ink); -webkit-appearance: none; appearance: none; transition: border-color .2s, box-shadow .2s; }
.oxx .oxb-field textarea { min-height: 108px; resize: vertical; }
.oxx .oxb-field :is(input, select, textarea):hover { border-color: var(--p-mute); }
.oxx .oxb-field :is(input, select, textarea):focus { outline: none; border-color: var(--p-navy-3); box-shadow: 0 0 0 4px color-mix(in srgb, var(--p-navy-3) 16%, transparent); }
.oxx .oxb-select { position: relative; }
.oxx .oxb-select select { padding-right: 44px; cursor: pointer; }
.oxx .oxb-select svg { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: var(--p-mute); pointer-events: none; }
.oxx .oxb-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.oxx .oxb-pill { position: relative; }
.oxx .oxb-pill input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.oxx .oxb-pill span { display: inline-flex; align-items: center; min-height: 46px; padding: 0 20px; border-radius: 999px; border: 1.5px solid var(--p-line-2); background: #fff; font: 600 14.5px/1 var(--p-display); color: var(--p-ink); cursor: pointer; transition: background-color .2s, border-color .2s, color .2s; }
.oxx .oxb-pill:hover span { border-color: var(--p-navy); }
.oxx .oxb-pill input:checked + span { background: var(--p-navy); border-color: var(--p-navy); color: #fff; }
.oxx .oxb-pill input:focus-visible + span { box-shadow: 0 0 0 4px color-mix(in srgb, var(--p-navy-3) 22%, transparent); }
.oxx .oxb-consent { display: flex; gap: 12px; align-items: flex-start; margin-top: 18px; font: 400 14px/1.5 var(--p-text); color: var(--p-body); cursor: pointer; }
.oxx .oxb-consent input { flex: none; width: 22px; height: 22px; margin: 0; accent-color: var(--p-navy); cursor: pointer; }
.oxx .oxb-consent a { color: var(--p-navy-3); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.oxx .oxb-submit { width: 100%; min-height: 54px; margin-top: 18px; }
@media (min-width: 640px) {
  .oxx .oxb-fields { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; }
  .oxx .oxb-field-wide, .oxx .oxb-pills-set { grid-column: 1 / -1; }
  .oxx .oxb-form { padding: 24px; }
  .oxx .oxb-submit { width: auto; padding-inline: 28px; }
}
@media (min-width: 768px) { .oxx .oxb-form-box { padding: 32px; } .oxx .oxb-form-copy { padding-inline: 0; } }
@media (min-width: 1024px) {
  .oxx .oxb-form-box { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 48px; align-items: start; padding: 44px; }
  .oxx .oxb-form-copy { position: sticky; top: calc(var(--p-header-h) + 28px); }
  .oxx .oxb-form-copy p { font-size: 17px; }
  .oxx .oxb-form { padding: 30px; }
}

/* ——— Banda de îndemn: panoul final al homepage-ului; textul sub titlu; cu trei butoane, butoanele sub text. */
.oxx .oxb-cta-copy { display: grid; gap: 10px; }
.oxx .oxb-cta-copy p { margin: 0; font: 400 16px/1.55 var(--p-text); color: rgb(255 255 255 / .78); max-width: 56ch; }
.oxx .oxh-final-box.is-light { background: var(--p-tint); color: var(--p-ink); box-shadow: none; }
.oxx .oxh-final-box.is-light h2 { color: var(--p-ink); }
.oxx .oxh-final-box.is-light .oxb-cta-copy p { color: var(--p-body); }
@media (min-width: 1024px) { .oxx .oxh-final-box.is-stack { grid-template-columns: minmax(0, 1fr); gap: 26px; } }

/* ================= Specialitățile: blocurile adăugate și pagina din câmpuri (specialty-premium.mjs) ================= */

/* ——— Benzile deschise consecutive (de exemplu mai multe clipuri) curg ca o singură bandă. */
.oxx .oxb-band + .oxb-band { padding-top: 4px; }

/* ——— Rezumatul din antet (acces, locații, echipă, tarif): eticheta mică deasupra valorii; rândurile cu link duc la
   partea paginii. Cu imagine, rezumatul stă sub butoane, pe un card alb. */
.oxx .oxb-facts li { padding: 0; }
.oxx .oxb-facts li > a, .oxx .oxb-facts li:not(:has(> a)) { display: flex; align-items: center; gap: 12px; width: 100%; padding: 11px 0; color: inherit; }
.oxx .oxb-facts small { display: block; font: 600 11.5px/1.2 var(--p-display); letter-spacing: .08em; text-transform: uppercase; color: var(--p-mute); }
.oxx .oxb-facts b { display: block; margin-top: 3px; font: 600 15.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxb-facts li > a { position: relative; padding-right: 26px; }
.oxx .oxb-facts li > a::after { content: ""; position: absolute; right: 6px; top: 50%; width: 8px; height: 8px; border-right: 2px solid var(--p-line-2); border-bottom: 2px solid var(--p-line-2); transform: translateY(-60%) rotate(-45deg); transition: border-color .2s, right .2s var(--p-ease); }
.oxx .oxb-facts li > a:hover::after { border-color: var(--p-gold); right: 3px; }
.oxx .oxb-hero-points { border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); box-shadow: var(--p-shadow-sm); padding: 2px 16px; }
@media (min-width: 1024px) {
  .oxx .oxb-hero-side .oxb-facts li > a, .oxx .oxb-hero-side .oxb-facts li:not(:has(> a)) { gap: 16px; padding: 18px 0; }
  .oxx .oxb-hero-side .oxb-facts small { color: rgb(255 255 255 / .6); }
  .oxx .oxb-hero-side .oxb-facts b { color: #fff; font-size: 17px; }
  .oxx .oxb-hero-side .oxb-facts li > a::after { border-color: rgb(255 255 255 / .35); }
  .oxx .oxb-hero-points { padding: 4px 20px; }
}

/* ——— Cuprinsul paginii (sub antet): etichete rotunjite, un rând derulabil pe telefon. */
.oxx .oxb-jump { margin-top: 22px; }
.oxx .oxb-jump ul { display: flex; gap: 8px; margin: 0 calc(-1 * var(--p-gutter)); padding: 2px var(--p-gutter) 4px; list-style: none; overflow-x: auto; scrollbar-width: none; }
.oxx .oxb-jump ul::-webkit-scrollbar { display: none; }
.oxx .oxb-jump li { flex: none; }
.oxx .oxb-jump a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: 999px; background: #fff; border: 1px solid var(--p-line); font: 600 14px/1 var(--p-display); color: var(--p-ink); white-space: nowrap; transition: border-color .2s, background-color .2s; }
.oxx .oxb-jump a:hover { border-color: var(--p-navy); }
@media (min-width: 1024px) { .oxx .oxb-jump { margin-top: 36px; } .oxx .oxb-jump ul { flex-wrap: wrap; margin: 0; padding: 0; overflow: visible; } }

/* ——— Serviciile specialității: pe telefon o listă (titlu, două rânduri de descriere, săgeată), ușor de parcurs;
   de la 640px carduri pe două coloane, pe desktop pe trei. */
.oxx .oxb-svcs { display: grid; margin: 0; padding: 0; list-style: none; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); overflow: hidden; }
.oxx .oxb-svcs > li + li { border-top: 1px solid var(--p-line); }
.oxx .oxb-svc { position: relative; display: grid; gap: 4px; padding: 16px 48px 16px 18px; color: var(--p-ink); transition: background-color .2s; }
.oxx .oxb-svc:hover { background: var(--p-soft); }
.oxx .oxb-svc h3 { margin: 0; font-size: 17px; line-height: 1.3; font-weight: 700; color: var(--p-ink); }
.oxx .oxb-svc p { margin: 0; font: 400 14.5px/1.5 var(--p-text); color: var(--p-body); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxb-svc .oxp-link { display: none; }
.oxx .oxb-svc-go { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); color: var(--p-gold-ink); }
@media (min-width: 640px) {
  .oxx .oxb-svcs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; border: 0; background: none; border-radius: 0; overflow: visible; }
  .oxx .oxb-svcs > li { display: flex; }
  .oxx .oxb-svcs > li + li { border-top: 0; }
  .oxx .oxb-svc { width: 100%; align-content: start; gap: 8px; padding: 22px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); transition: border-color .2s, box-shadow .2s, transform .2s var(--p-ease); }
  .oxx .oxb-svc:hover { background: #fff; border-color: var(--p-line-2); box-shadow: var(--p-shadow-md); transform: translateY(-2px); }
  .oxx .oxb-svc h3 { font-size: 18px; }
  .oxx .oxb-svc p { -webkit-line-clamp: 4; font-size: 15px; }
  .oxx .oxb-svc .oxp-link { display: inline-flex; align-self: end; margin-top: 8px; font-size: 14.5px; }
  .oxx .oxb-svc-go { display: none; }
}
@media (min-width: 1024px) { .oxx .oxb-svcs { grid-template-columns: repeat(var(--n, 3), minmax(0, 1fr)); gap: 16px; } }

/* ——— Două coloane (tarife, întrebări): pe desktop titlul și nota în stânga (fixe la derulare), conținutul în dreapta. */
.oxx .oxb-twocol { display: grid; gap: 4px; }
.oxx .oxb-twocol-foot { display: grid; justify-items: start; gap: 14px; margin-top: 14px; }
.oxx .oxb-twocol-foot .oxb-note { max-width: 60ch; }
@media (min-width: 1024px) {
  .oxx .oxb-twocol { grid-template-columns: minmax(0, 340px) minmax(0, 1fr); grid-template-areas: "head main" "foot main"; column-gap: 64px; align-items: start; }
  .oxx .oxb-twocol-head { grid-area: head; }
  .oxx .oxb-twocol-main { grid-area: main; }
  .oxx .oxb-twocol-foot { grid-area: foot; margin-top: 0; }
}

/* ——— Tarifele: rândurile pe un card alb (denumirea în stânga, prețul aliniat în dreapta). */
.oxx .oxb-prices { display: grid; gap: 14px; }
.oxx .oxb-price-card { border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); overflow: hidden; }
.oxx .oxb-price-head { padding: 16px 18px; border-bottom: 1px solid var(--p-line); background: var(--p-soft); }
.oxx .oxb-price-head h3 { margin: 0; font-size: 17px; font-weight: 700; color: var(--p-ink); }
.oxx .oxb-price-head p { margin: 6px 0 0; font: 400 14px/1.5 var(--p-text); color: var(--p-body); }
.oxx .oxb-price-card ul { margin: 0; padding: 0; list-style: none; }
/* Denumirea are cel puțin ~12em; când nu mai e loc, prețul trece pe rândul următor, aliniat în dreapta (fără cuvinte rupte). */
.oxx .oxb-price-card li { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 18px; padding: 14px 18px; }
.oxx .oxb-price-card li + li { border-top: 1px solid var(--p-line); }
.oxx .oxb-price-card li span { flex: 1 1 11.5em; min-width: 0; font: 400 15px/1.45 var(--p-text); color: var(--p-ink); overflow-wrap: break-word; }
.oxx .oxb-price-card li b { flex: 0 1 auto; margin-left: auto; text-align: right; font: 700 15.5px/1.35 var(--p-display); color: var(--p-navy-3); }
@media (min-width: 768px) { .oxx .oxb-price-card li { padding: 15px 22px; } }

/* ——— Întrebările: carduri pliabile; săgeata se rotește la deschidere. */
.oxx .oxb-faq { display: grid; gap: 10px; }
.oxx .oxb-q { border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); transition: border-color .2s, box-shadow .2s; }
.oxx .oxb-q[open] { border-color: var(--p-line-2); box-shadow: var(--p-shadow-sm); }
.oxx .oxb-q summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 56px; padding: 14px 16px 14px 18px; list-style: none; cursor: pointer; font: 600 16px/1.4 var(--p-display); color: var(--p-ink); }
.oxx .oxb-q summary::-webkit-details-marker { display: none; }
.oxx .oxb-q-ic { flex: none; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--p-soft); color: var(--p-navy-3); transition: transform .25s var(--p-ease), background-color .2s; }
.oxx .oxb-q[open] .oxb-q-ic { transform: rotate(180deg); background: var(--p-gold-soft); color: var(--p-gold-ink); }
.oxx .oxb-a { padding: 0 18px 18px; font-size: 15.5px; }

/* ——— Atenționarea: „warn” roșu-cald (urgențe), altfel nuanțată. */
.oxx .oxb-callout-sec { padding-block: 20px; }
.oxx .oxb-callout { display: flex; gap: 14px; align-items: flex-start; max-width: 56rem; padding: 18px; border-radius: var(--p-r-card); background: var(--p-tint); border: 1px solid var(--p-line); }
.oxx .oxb-callout-ic { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: var(--p-r-btn); background: #fff; color: var(--p-navy-3); }
.oxx .oxb-callout b { display: block; margin-bottom: 4px; font: 700 16.5px/1.35 var(--p-display); color: var(--p-ink); }
.oxx .oxb-callout p { margin: 0; font: 400 15.5px/1.6 var(--p-text); color: var(--p-ink); }
.oxx .oxb-callout.is-warn { background: #fdf3f0; border-color: #efcfc6; }
.oxx .oxb-callout.is-warn .oxb-callout-ic { color: #b3432f; }
@media (min-width: 768px) { .oxx .oxb-callout-sec { padding-block: 28px; } .oxx .oxb-callout { padding: 22px 24px; gap: 18px; } }

/* ——— Clipurile: cadrul rotunjit, bleumarin; un clip vertical nu depășește înălțimea ecranului. */
.oxx .oxb-videos { display: grid; gap: 20px; }
.oxx .oxb-video { margin: 0; max-width: 960px; }
.oxx .oxb-video-frame { border-radius: var(--p-r-card); overflow: hidden; background: var(--p-navy); box-shadow: var(--p-shadow-md); }
.oxx .oxb-video video { display: block; width: 100%; height: auto; max-height: min(78vh, 680px); margin: 0 auto; background: var(--p-navy); }
.oxx .oxb-video figcaption { margin-top: 12px; }
.oxx .oxb-video figcaption b { display: block; font: 700 16px/1.35 var(--p-display); color: var(--p-ink); }
.oxx .oxb-video figcaption p { margin: 6px 0 0; font: 400 14.5px/1.55 var(--p-text); color: var(--p-body); max-width: 70ch; }
@media (min-width: 768px) { .oxx .oxb-videos { grid-template-columns: repeat(var(--n, 1), minmax(0, 1fr)); gap: 24px; } }

/* ——— Pașii (parcursul homepage-ului): unul sub altul și pe desktop, pentru varianta „column”. */
.oxx .oxb-steps .oxh-step .oxb-kicker { display: block; margin: 10px 0 -6px; }
@media (min-width: 900px) {
  .oxx .oxb-steps.is-col .oxh-steps { grid-auto-flow: row; gap: 26px; }
  .oxx .oxb-steps.is-col .oxh-step { grid-template-columns: 44px minmax(0, 1fr); }
  .oxx .oxb-steps.is-col .oxh-step h3 { margin-top: 10px; }
  /* Linia dintre pași rămâne verticală (de la cerc până la cercul următor), ca pe telefon, nu orizontală. */
  .oxx .oxb-steps.is-col .oxh-step:not(:last-child)::before, .oxx .oxb-steps.is-col .oxh-step:not(:last-child)::after { top: 50px; bottom: -20px; left: 21px; right: auto; width: 2px; height: auto; }
  .oxx .oxb-steps.is-col .oxh-step:not(:last-child)::after { transform-origin: 50% 0; }
  .oxx .oxb-steps.is-col .oxh-journey-track.is-armed:not(.is-play) .oxh-step::after { transform: scaleY(0); }
}

/* ——— Liste pe coloane cu un singur card: pe ecranele mari lista se așază pe două coloane. */
@media (min-width: 768px) { .oxx .oxb-colgrid.is-single .oxb-checks { display: block; columns: 2; column-gap: 36px; } .oxx .oxb-colgrid.is-single .oxb-checks li { break-inside: avoid; margin-bottom: 10px; } }

/* ——— Textul lung al specialității: pliat (site.js, [data-collapse]) cu o estompare și butonul „Citește tot textul”;
   pe desktop, caseta de programare stă alături și rămâne vizibilă la derulare. */
.oxx .oxb-about-grid { display: grid; gap: 24px; }
.oxx .oxb-collapse { position: relative; min-width: 0; }
.oxx .oxb-collapse.is-collapsed > :first-child { max-height: var(--oxb-fold, 560px); overflow: hidden; }
.oxx .oxb-collapse-fade { display: none; }
.oxx .oxb-collapse.is-collapsed .oxb-collapse-fade { display: block; position: absolute; left: 0; right: 0; bottom: 56px; height: 140px; background: linear-gradient(180deg, transparent, var(--oxb-fade-bg, #fff) 85%); pointer-events: none; }
.oxx .oxb-band { --oxb-fade-bg: var(--p-soft); }
.oxx .oxb-band .oxb-collapse-fade { background: linear-gradient(180deg, transparent, var(--p-soft) 85%); }
.oxx .oxb-collapse-btn { margin-top: 14px; }
.oxx .oxb-collapse-btn svg { transition: transform .25s var(--p-ease); }
.oxx .oxb-collapse-btn[aria-expanded="true"] svg { transform: rotate(180deg); }
.oxx .oxb-article h2 { margin-top: 1.4em; }
.oxx .oxb-article :is(h4, h5, h6) { margin: 1.2em 0 .4em; font: 700 17px/1.35 var(--p-display); color: var(--p-ink); }
.oxx .oxb-article table { width: 100%; margin: 1.2em 0; border-collapse: collapse; font-size: 15px; display: block; overflow-x: auto; }
.oxx .oxb-article :is(th, td) { padding: 10px 12px; border: 1px solid var(--p-line); text-align: left; }
.oxx .oxb-article th { background: var(--p-soft); color: var(--p-ink); }
.oxx .oxb-article img { display: block; margin: 1.2em 0; }
.oxx .oxb-book { display: none; }
@media (min-width: 1024px) {
  .oxx .oxb-about-grid { grid-template-columns: minmax(0, 1fr) 320px; gap: 56px; align-items: start; }
  .oxx .oxb-collapse { --oxb-fold: 640px; }
  .oxx .oxb-book { position: sticky; top: calc(var(--p-header-h) + 24px); display: grid; gap: 14px; padding: 26px; border-radius: var(--p-r-panel); color: #fff; background: radial-gradient(120% 120% at 0% 0%, var(--p-navy-3) 0%, var(--p-navy) 60%); box-shadow: var(--p-shadow-lg); }
  .oxx .oxb-book .oxb-kicker { color: var(--p-gold); }
  .oxx .oxb-book-tel { display: flex; align-items: center; gap: 10px; font: 700 24px/1.1 var(--p-display); letter-spacing: -.02em; color: #fff; }
  .oxx .oxb-book-tel svg { color: var(--p-gold); }
  .oxx .oxb-book-cta { display: grid; gap: 10px; margin-top: 4px; }
  .oxx .oxb-book .oxp-btn { width: 100%; }
}

/* ——— Recenziile: nota medie sub titlu; cardurile (citatul, autorul, stelele) pe o bandă derulabilă. */
.oxx .oxb-rating { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; font: 500 15px/1.4 var(--p-text); color: var(--p-body); }
.oxx .oxb-rating b { font: 700 16px/1 var(--p-display); color: var(--p-ink); }
.oxx .oxb-stars { display: inline-flex; gap: 2px; color: #e9b949; }
.oxx .oxb-review-rail { grid-auto-columns: 84%; }
.oxx .oxb-review { display: flex; flex-direction: column; gap: 12px; height: 100%; padding: 20px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxb-review-q { color: var(--p-gold); opacity: .8; }
.oxx .oxb-review p { margin: 0; font: 400 15px/1.6 var(--p-text); color: var(--p-ink); display: -webkit-box; -webkit-line-clamp: 8; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxb-review footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 12px; border-top: 1px solid var(--p-line); }
.oxx .oxb-review footer b { display: block; font: 700 15px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxb-review footer small { font: 400 12.5px/1.3 var(--p-text); color: var(--p-mute); }
@media (min-width: 640px) { .oxx .oxb-review-rail { grid-auto-columns: 46%; } }
@media (min-width: 1024px) { .oxx .oxb-review-rail { grid-auto-flow: column; grid-auto-columns: calc((100% - 2 * 16px) / 3); overflow-x: auto; margin-inline: 0; padding-inline: 0; } }
.oxx .oxb-reviews-head { display: grid; gap: 8px; }

/* ——— Disponibilitatea pe locații: cardurile locațiilor, cu CAS / privat (bifă verde = da, x gri = nu). */
.oxx .oxb-avail-rows { display: grid; gap: 8px; margin: 4px 0 0; padding: 12px 0 0; list-style: none; border-top: 1px solid var(--p-line); }
.oxx .oxb-avail-rows li { display: flex; gap: 10px; align-items: flex-start; font: 400 15px/1.5 var(--p-text); color: var(--p-ink); }
.oxx .oxb-avail-rows li svg { flex: none; margin-top: 2px; }
.oxx .oxb-avail-rows li.is-yes svg { color: #1e7d55; }
.oxx .oxb-avail-rows li.is-no { color: var(--p-mute); }
.oxx .oxb-avail-rows b { font-weight: 600; }

/* /assets/site/premium-site.css */
/* Oxxygene: designul nou pentru paginile care rămăseseră pe marcajul original (src/site/site-premium.mjs): paginile de
   text, Contact, blogul, categoriile, articolele, serviciile din câmpuri, locațiile și secțiunile fără variantă nouă
   până acum. Se încarcă după premium.css și premium-pages.css și folosește aceleași piese (.oxh-*, .oxb-*) și aceiași
   tokeni (--p-*), deci urmează tema aleasă în Setări („clinic” / „premium”); aici doar ce e propriu (.oxn-*).
   Mobil întâi: regulile de bază sunt pentru telefon; ecranele mari se adaugă cu min-width (640, 768, 1024). */

.oxx .oxn-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.oxx .oxn-actions .oxp-btn { flex: 1 1 100%; }
.oxx .oxn-note { margin-top: 16px; }
@media (min-width: 640px) { .oxx .oxn-actions .oxp-btn { flex: 0 0 auto; } }

/* ——— Antetul: fără imagine sau casetă, textul pe toată lățimea; cu caseta de contact (locațiile), sus aliniat. */
.oxx .oxn-hero.is-solo .oxb-hero-in { min-height: 0; }
.oxx .oxn-chips { margin-top: 22px; }
.oxx .oxn-chips small { margin-left: 8px; font: 600 12.5px/1 var(--p-text); color: var(--p-mute); }
@media (min-width: 1024px) {
  .oxx .oxn-hero.is-solo { padding-bottom: 44px; }
  .oxx .oxn-hero.is-solo .oxb-hero-in { grid-template-columns: minmax(0, 1fr); }
  .oxx .oxn-hero.is-solo .oxb-hero-copy { max-width: 860px; }
  .oxx .oxn-hero.has-side .oxb-hero-in { align-items: start; }
}

/* ——— Pagina de text: textul (lățimea de lectură), galeria, hărțile și documentele; coloana laterală pe desktop. */
.oxx .oxn-page { padding-top: 28px; }
.oxx .oxn-layout { display: grid; gap: 32px; }
.oxx .oxn-main { min-width: 0; display: grid; gap: 28px; align-content: start; }
/* Textele importate au uneori cuvinte foarte lungi, lipite (de exemplu titluri fără spațiu): se rup, nu lățesc pagina. */
.oxx :is(.oxn-main, .oxn-reading) { overflow-wrap: anywhere; }
.oxx .oxn-aside { display: grid; gap: 16px; align-content: start; }
.oxx .oxn-book { display: none; }
.oxx .oxn-links { padding: 18px 20px 8px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxn-links ul { margin: 8px 0 0; padding: 0; list-style: none; }
.oxx .oxn-links a { display: flex; align-items: center; gap: 12px; min-height: 50px; padding: 8px 0; border-top: 1px solid var(--p-line); font: 600 15px/1.3 var(--p-display); color: var(--p-ink); transition: color .2s; }
.oxx .oxn-links li:first-child a { border-top: 0; }
.oxx .oxn-links a > span { flex: 1; }
.oxx .oxn-links a > svg:first-child { flex: none; color: var(--p-navy-3); }
.oxx .oxn-links a > svg:last-child { flex: none; color: var(--p-mute); }
.oxx .oxn-links a:hover { color: var(--p-navy); }
.oxx .oxn-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.oxx .oxn-gallery figure { margin: 0; border-radius: var(--p-r-card); overflow: hidden; background: var(--p-tint); }
.oxx .oxn-gallery img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.oxx .oxn-docs { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.oxx .oxn-doc { display: flex; align-items: center; gap: 14px; padding: 16px 18px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); color: var(--p-ink); transition: border-color .2s; }
.oxx .oxn-doc > svg:first-child { flex: none; color: var(--p-navy-3); }
.oxx .oxn-doc > svg:last-child { flex: none; color: var(--p-mute); }
.oxx .oxn-doc span { flex: 1; min-width: 0; display: grid; gap: 2px; }
.oxx .oxn-doc b { font: 600 15.5px/1.35 var(--p-display); overflow-wrap: anywhere; }
.oxx .oxn-doc small { font: 400 13px/1.4 var(--p-text); color: var(--p-mute); }
.oxx .oxn-doc:hover { border-color: var(--p-line-2); }
/* Hărțile: vizibile și pe telefon (aici nu există altă trimitere spre locație), încărcate doar la cerere. */
.oxx .oxn-maps { display: grid; gap: 14px; }
.oxx .oxb-map.oxn-map { display: block; position: relative; min-height: 260px; border-radius: var(--p-r-card); overflow: hidden; border: 1px solid var(--p-line); background: var(--p-soft); }
.oxx .oxn-map .oxb-map-ph { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 8px; padding: 24px; text-align: center; }
.oxx .oxn-map .oxb-map-ph .oxb-ic { width: 52px; height: 52px; margin-bottom: 4px; background: var(--p-navy); color: #fff; }
.oxx .oxn-map .oxb-map-ph b { font: 700 17px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxn-map .oxb-map-ph .oxp-btn { margin-top: 8px; }
.oxx .oxn-map .oxb-map-ph small { font: 400 12.5px/1.4 var(--p-text); color: var(--p-mute); }
.oxx .oxn-map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.oxx .oxn-map.is-loaded .oxb-map-ph { display: none; }
/* Echipa (regula „Afișează echipa medicală”): grilă și pe telefon (două coloane), nu bandă. */
.oxx .oxn-team .oxh-team-grid { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; margin-inline: 0; padding-inline: 0; }
@media (min-width: 640px) { .oxx .oxn-gallery { gap: 14px; } }
@media (min-width: 768px) {
  .oxx .oxn-maps { grid-template-columns: repeat(min(var(--n, 1), 2), minmax(0, 1fr)); }
  .oxx .oxb-map.oxn-map { min-height: 320px; }
  .oxx .oxn-team .oxh-team-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  .oxx .oxn-page { padding-top: 48px; }
  .oxx .oxn-layout { grid-template-columns: minmax(0, 1fr) 340px; gap: 56px; align-items: start; }
  .oxx .oxn-aside { position: sticky; top: calc(var(--p-header-h) + 24px); }
  .oxx .oxn-book { display: grid; gap: 10px; padding: 26px; border-radius: var(--p-r-panel); color: #fff; background: radial-gradient(120% 120% at 0% 0%, var(--p-navy-3) 0%, var(--p-navy) 60%); box-shadow: var(--p-shadow-lg); }
  .oxx .oxn-book .oxb-kicker { color: color-mix(in srgb, var(--p-gold) 55%, #fff); }
  .oxx .oxn-book h3 { margin: 0; font-size: 22px; font-weight: 700; color: #fff; }
  .oxx .oxn-book p { margin: 0 0 4px; font: 400 15px/1.55 var(--p-text); color: rgb(255 255 255 / .76); }
  .oxx .oxn-book .oxp-btn { width: 100%; margin-top: 4px; }
  .oxx .oxn-book-mail { display: inline-flex; align-items: center; gap: 8px; margin-top: 4px; font: 500 14.5px/1.3 var(--p-text); color: rgb(255 255 255 / .82); }
  .oxx .oxn-book-mail:hover { color: #fff; }
  .oxx .oxn-team .oxh-team-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* ——— Locațiile: cardul complet (starea programului, descrierea, contactele, programul cu ziua de azi, acțiunile). */
.oxx .oxn-locs { display: grid; gap: 14px; }
.oxx .oxn-loc { align-content: start; }
.oxx .oxn-loc :is(h2, h3) { margin: 0; font-size: 19px; line-height: 1.3; font-weight: 700; color: var(--p-ink); }
.oxx .oxn-loc-lead { margin: 0; font: 400 15px/1.55 var(--p-text); color: var(--p-body); }
.oxx .oxn-loc a.oxh-loc-row { color: var(--p-ink); }
.oxx .oxn-loc a.oxh-loc-row:hover span { text-decoration: underline; text-underline-offset: 3px; }
.oxx .oxn-status { justify-self: start; display: inline-flex; align-items: center; gap: 8px; padding: 6px 11px; border-radius: 999px; background: var(--p-soft); border: 1px solid var(--p-line); font: 600 12.5px/1 var(--p-display); color: var(--p-body); }
.oxx .oxn-status[hidden] { display: none; }
.oxx .oxn-status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--p-mute); }
.oxx .oxn-status.is-open { background: #ecfdf3; border-color: #bbe9cd; color: #13633a; }
.oxx .oxn-status.is-open::before { background: #22a55b; box-shadow: 0 0 0 3px rgb(34 165 91 / .18); }
.oxx .oxn-hours { display: grid; margin: 4px 0 0; border-top: 1px solid var(--p-line); }
.oxx .oxn-hours div { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--p-line); font: 400 14.5px/1.4 var(--p-text); color: var(--p-body); }
.oxx .oxn-hours dd { margin: 0; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--p-ink); }
.oxx .oxn-hours .is-today { color: var(--p-ink); font-weight: 600; }
.oxx .oxn-hours .is-today dt::after { content: "azi"; margin-left: 8px; padding: 3px 7px; border-radius: 999px; background: var(--p-tint); color: var(--p-navy); font: 700 10.5px/1 var(--p-display); text-transform: uppercase; letter-spacing: .05em; vertical-align: 2px; }
@media (min-width: 768px) { .oxx .oxn-locs-sec .oxn-locs { grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 16px; } .oxx .oxn-loc { padding: 22px; } }

/* ——— Serviciile unei locații, grupate pe specialități: câte o listă care se deschide. */
.oxx .oxn-groups { display: grid; gap: 10px; }
.oxx .oxn-group { border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxn-group summary { display: flex; align-items: center; gap: 12px; min-height: 64px; padding: 10px 14px; cursor: pointer; list-style: none; }
.oxx .oxn-group summary::-webkit-details-marker { display: none; }
.oxx .oxn-group summary > span:nth-child(2) { flex: 1; min-width: 0; display: grid; gap: 2px; }
.oxx .oxn-group summary b { font: 700 16px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxn-group summary small { font: 500 13px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxn-group summary > svg { flex: none; color: var(--p-mute); transition: transform .2s var(--p-ease); }
.oxx .oxn-group[open] summary > svg { transform: rotate(180deg); }
.oxx .oxn-group ul { margin: 0; padding: 0 16px 10px; list-style: none; }
.oxx .oxn-group li a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 46px; padding: 8px 0; border-top: 1px solid var(--p-line); font: 500 15px/1.35 var(--p-text); color: var(--p-ink); }
.oxx .oxn-group li a svg { flex: none; color: var(--p-navy-3); }
.oxx .oxn-group li.is-all a { font: 700 14.5px/1.3 var(--p-display); color: var(--p-navy); }
@media (min-width: 768px) { .oxx .oxn-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 12px; } }
@media (min-width: 1024px) { .oxx .oxn-groups { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* ——— Contact: formularul (panoul nuanțat) și contactele directe; pe desktop alături. */
.oxx .oxn-contact-grid { display: grid; gap: 28px; }
.oxx .oxn-direct { display: grid; gap: 14px; align-content: start; }
.oxx .oxn-direct-tel { display: inline-flex; align-items: center; gap: 12px; font: 800 30px/1.1 var(--p-display); letter-spacing: -.02em; color: var(--p-ink); }
.oxx .oxn-direct-tel svg { color: var(--p-navy-3); }
.oxx .oxn-direct-mail { display: inline-flex; align-items: center; gap: 10px; font: 600 16px/1.3 var(--p-display); color: var(--p-navy); }
.oxx .oxn-direct .oxn-locs { margin-top: 6px; }
@media (min-width: 1024px) {
  .oxx .oxn-contact-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 48px; align-items: start; }
  .oxx .oxb-form-box.oxn-form-box { grid-template-columns: minmax(0, 1fr); gap: 22px; padding: 36px; }
  /* Pe o coloană textul stă deasupra câmpurilor: nu rămâne lipit sus (ar aluneca peste formular la derulare). */
  .oxx .oxb-form-box.oxn-form-box .oxb-form-copy { position: static; }
}

/* ——— Blogul și categoriile. Telefon: rânduri compacte (miniatura în stânga); ecranele mari: carduri. */
.oxx .oxn-posts { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.oxx .oxn-posts > li { display: flex; }
.oxx .oxn-post { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 14px; align-items: start; width: 100%; padding: 12px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); color: var(--p-ink); transition: border-color .2s; }
.oxx .oxn-post:not(:has(figure)) { grid-template-columns: minmax(0, 1fr); }
.oxx .oxn-post:hover { border-color: var(--p-line-2); }
.oxx .oxn-post figure { margin: 0; aspect-ratio: 1; border-radius: var(--p-r-btn); overflow: hidden; background: var(--p-tint); }
.oxx .oxn-post figure img, .oxx .oxn-post-art svg { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 0 !important; }
.oxx .oxn-post-art { height: 100%; }
.oxx .oxn-post-body { display: grid; gap: 4px; min-width: 0; }
.oxx .oxn-post-cat { font: 700 11px/1.2 var(--p-display); letter-spacing: .1em; text-transform: uppercase; color: var(--p-gold-ink); }
.oxx .oxn-post h3 { margin: 0; font-size: 15.5px; line-height: 1.35; font-weight: 700; color: var(--p-ink); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxn-post p { display: none; }
.oxx .oxn-post time { font: 500 12.5px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxn-blog-note { margin: 28px 0 0; text-align: center; font: 400 15px/1.5 var(--p-text); color: var(--p-mute); }
@media (min-width: 640px) {
  .oxx .oxn-posts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .oxx .oxn-post { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto 1fr; gap: 0; padding: 0; overflow: hidden; }
  .oxx .oxn-post figure { aspect-ratio: 16 / 10; border-radius: 0; }
  .oxx .oxn-post-body { gap: 8px; padding: 16px 18px 18px; }
  .oxx .oxn-post h3 { font-size: 17px; }
  .oxx .oxn-post p { display: -webkit-box; margin: 0; font: 400 14.5px/1.55 var(--p-text); color: var(--p-body); -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
}
@media (min-width: 1024px) { .oxx .oxn-posts { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } }

/* ——— Articolul: antetul (categoriile, titlul, data, timpul de citire, imaginea), textul pe lățimea de lectură,
   programarea, articolele înrudite. */
.oxx .oxn-post-head { padding: 18px 0 4px; background: linear-gradient(180deg, var(--p-soft) 0%, #fff 100%); }
.oxx .oxn-post-head .oxp-wrap, .oxx .oxn-article-body { max-width: 900px; }
.oxx .oxn-post-cats { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.oxx .oxn-post-cats a { display: inline-flex; align-items: center; min-height: 32px; padding: 0 12px; border-radius: 999px; background: #fff; border: 1px solid var(--p-line); font: 700 12px/1 var(--p-display); letter-spacing: .06em; text-transform: uppercase; color: var(--p-gold-ink); }
.oxx .oxn-post-head h1 { margin: 14px 0 0; font-size: clamp(1.85rem, 1.25rem + 2.6vw, 3rem); line-height: 1.12; letter-spacing: -.025em; color: var(--p-ink); text-wrap: balance; }
.oxx .oxn-post-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 14px; font: 500 14px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxn-post-meta > * { display: inline-flex; align-items: center; gap: 6px; }
.oxx .oxn-post-meta svg { color: var(--p-navy-3); }
.oxx .oxn-post-media { margin: 22px 0 0; border-radius: var(--p-r-panel); overflow: hidden; background: var(--p-tint); }
.oxx .oxn-post-media img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.oxx .oxn-article-body { padding-block: 28px 48px; }
.oxx .oxn-reading { max-width: none; font-size: 17px; line-height: 1.8; }
.oxx .oxn-post-book { display: grid; gap: 14px; margin-top: 36px; padding: 22px; border-radius: var(--p-r-panel); background: var(--p-tint); border: 1px solid var(--p-line); }
.oxx .oxn-post-book b { font: 700 18px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxn-post-book p { margin: 4px 0 0; font: 400 15px/1.55 var(--p-text); color: var(--p-body); }
.oxx .oxn-post-book-cta { display: grid; gap: 10px; }
.oxx .oxn-back { margin-top: 28px; }
@media (min-width: 640px) { .oxx .oxn-post-book-cta { display: flex; flex-wrap: wrap; } }
@media (min-width: 1024px) {
  .oxx .oxn-post-head { padding-top: 32px; }
  .oxx .oxn-reading { font-size: 18px; }
  .oxx .oxn-post-book { grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 24px; padding: 28px 32px; }
}

/* ——— Bara de repere: casete cu iconiță (două pe rând pe telefon). */
.oxx .oxb.oxn-facts-sec { padding-block: 20px; }
.oxx .oxn-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; }
.oxx .oxn-facts li { display: flex; align-items: center; gap: 12px; padding: 14px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxn-facts .oxb-ic { width: 40px; height: 40px; }
.oxx .oxn-facts b { display: block; font: 700 14.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxn-facts small { display: block; margin-top: 2px; font: 400 13px/1.35 var(--p-text); color: var(--p-mute); }
@media (min-width: 1024px) { .oxx .oxb.oxn-facts-sec { padding-block: 32px; } .oxx .oxn-facts { grid-template-columns: repeat(min(var(--n, 4), 4), minmax(0, 1fr)); gap: 14px; } .oxx .oxn-facts li { padding: 18px; } }

/* ——— Cardurile de servicii (aceeași listă ca serviciile specialității) cu iconiță și detalii. */
.oxx .oxn-svc .oxb-top { gap: 12px; }
.oxx .oxn-svc .oxb-ic { width: 40px; height: 40px; }
.oxx .oxn-svc small { display: block; font: 400 13.5px/1.5 var(--p-text); color: var(--p-mute); }

/* ——— Etichetele. */
.oxx .oxn-tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.oxx .oxn-tags :is(a, span) { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 16px; border-radius: 999px; background: #fff; border: 1px solid var(--p-line); font: 600 14px/1.2 var(--p-display); color: var(--p-ink); }
.oxx .oxn-tags a svg { color: var(--p-navy-3); }
.oxx .oxn-tags a:hover { border-color: var(--p-navy); }

/* ——— Cardurile de tarife. */
.oxx .oxn-prices { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.oxx .oxn-price { display: grid; gap: 6px; align-content: start; padding: 20px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxn-price.is-hi { border-color: var(--p-navy); box-shadow: inset 0 0 0 1px var(--p-navy); }
.oxx .oxn-price h3 { margin: 0; font-size: 17px; line-height: 1.3; font-weight: 700; color: var(--p-ink); }
.oxx .oxn-price p { margin: 0; font: 400 14.5px/1.5 var(--p-text); color: var(--p-body); }
.oxx .oxn-price b { margin-top: 6px; font: 800 26px/1.1 var(--p-display); letter-spacing: -.02em; color: var(--p-navy); }
.oxx .oxn-price small { font: 400 13.5px/1.5 var(--p-text); color: var(--p-mute); }
@media (min-width: 768px) { .oxx .oxn-prices { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } }
@media (min-width: 1024px) { .oxx .oxn-prices { grid-template-columns: repeat(var(--n, 3), minmax(0, 1fr)); } }

/* ——— Tabelele (secțiunile „Tabel”, lista analizelor): căutarea, tabelul pe un card, ultima coloană (prețul) în dreapta. */
.oxx .oxn-search { position: relative; display: flex; align-items: center; max-width: 440px; margin-bottom: 14px; }
.oxx .oxn-search svg { position: absolute; left: 14px; color: var(--p-mute); pointer-events: none; }
.oxx .oxn-search input { width: 100%; min-height: 48px; padding: 0 14px 0 44px; border-radius: var(--p-r-btn); border: 1px solid var(--p-line-2); background: #fff; font: 400 16px/1.2 var(--p-text); color: var(--p-ink); }
.oxx .oxn-search input:focus { outline: none; border-color: var(--p-navy-3); box-shadow: 0 0 0 3px color-mix(in srgb, var(--p-navy-3) 18%, transparent); }
.oxx .oxn-table { overflow-x: auto; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxn-table table { width: 100%; border-collapse: collapse; }
.oxx .oxn-table th { padding: 12px 14px; background: var(--p-soft); text-align: left; font: 700 12px/1.3 var(--p-display); letter-spacing: .06em; text-transform: uppercase; color: var(--p-mute); }
.oxx .oxn-table td { padding: 12px 14px; border-top: 1px solid var(--p-line); font: 400 15px/1.45 var(--p-text); color: var(--p-body); vertical-align: top; }
.oxx .oxn-table .is-end { text-align: right; white-space: nowrap; }
.oxx .oxn-table td.is-end { font-weight: 700; color: var(--p-navy); }
.oxx .oxn-table td b { display: block; font-weight: 600; color: var(--p-ink); }
/* Lista analizelor: grupele pe categorii (aceleași liste care se deschid ca serviciile unei locații), tabelul în grupă. */
.oxx .oxn-lab-groups { display: grid; gap: 10px; }
.oxx .oxn-lab-group[hidden] { display: none; }
.oxx .oxn-lab-group .oxn-table { border: 0; border-top: 1px solid var(--p-line); border-radius: 0 0 var(--p-r-card) var(--p-r-card); }
.oxx .oxn-count { min-height: 1.4em; margin: -4px 0 10px; font: 600 14px/1.4 var(--p-text); color: var(--p-mute); }
.oxx .oxn-count:empty { display: none; }
.oxx .oxn-fold { border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxn-fold summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 56px; padding: 12px 18px; cursor: pointer; list-style: none; font: 700 16px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxn-fold summary::-webkit-details-marker { display: none; }
.oxx .oxn-fold summary svg { flex: none; color: var(--p-mute); transition: transform .2s var(--p-ease); }
.oxx .oxn-fold[open] summary svg { transform: rotate(180deg); }
.oxx .oxn-fold > div { padding: 0 18px 18px; }

/* ——— Clipurile YouTube: carduri verticale (bandă pe telefon), fațada cu butonul de redare. */
.oxx .oxn-yt { margin: 0; }
.oxx .oxn-yt-frame { position: relative; aspect-ratio: 9 / 16; max-height: 520px; border-radius: var(--p-r-card); overflow: hidden; background: var(--p-navy); }
.oxx .oxn-yt-frame img, .oxx .oxn-yt-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border: 0; }
.oxx .oxn-yt-frame button { position: absolute; inset: 0; display: grid; place-items: center; width: 100%; height: 100%; padding: 0; border: 0; background: transparent; cursor: pointer; }
.oxx .oxn-yt-frame button span { display: grid; place-items: center; width: 62px; height: 62px; border-radius: 50%; background: rgb(255 255 255 / .92); color: var(--p-navy); }
.oxx .oxn-yt-frame button span svg { margin-left: 3px; }
.oxx .oxn-yt figcaption { margin-top: 10px; font: 600 15px/1.35 var(--p-display); color: var(--p-ink); }

/* ——— Grila de imagini. */
.oxx .oxn-images { display: grid; gap: 14px; }
.oxx .oxn-images figure { margin: 0; }
.oxx .oxn-images img { display: block; width: 100%; height: auto; border-radius: var(--p-r-card); border: 1px solid var(--p-line); }
.oxx .oxn-images figcaption { margin-top: 8px; font: 400 13.5px/1.5 var(--p-text); color: var(--p-mute); }
@media (min-width: 640px) { .oxx .oxn-images { grid-template-columns: repeat(min(var(--n, 2), 2), minmax(0, 1fr)); } }
@media (min-width: 1024px) { .oxx .oxn-images { grid-template-columns: repeat(var(--n, 2), minmax(0, 1fr)); gap: 18px; } }

/* ——— Alegerea CAS / privat (/servicii-medicale/): două carduri mari, cu eticheta, textul, butonul și linkurile. */
.oxx .oxn-selects { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.oxx .oxn-select { display: grid; gap: 12px; align-content: start; padding: 24px 20px; border-radius: var(--p-r-panel); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxn-select.is-cas { background: var(--p-tint); }
.oxx .oxn-select-tag { justify-self: start; display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 999px; background: #fff; border: 1px solid var(--p-line); font: 700 12px/1 var(--p-display); letter-spacing: .08em; text-transform: uppercase; color: var(--p-gold-ink); }
.oxx .oxn-select h2 { margin: 0; font-size: clamp(1.4rem, 1.1rem + 1.2vw, 1.85rem); line-height: 1.2; color: var(--p-ink); }
.oxx .oxn-select p { margin: 0; font: 400 16px/1.6 var(--p-text); color: var(--p-body); }
.oxx .oxn-select > .oxp-btn { margin-top: 4px; }
.oxx .oxn-select-links { margin: 6px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--p-line); }
.oxx .oxn-select-links a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; padding: 8px 0; border-bottom: 1px solid var(--p-line); font: 600 15.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxn-select-links a svg { flex: none; color: var(--p-navy-3); }
.oxx .oxn-select-links a:hover { color: var(--p-navy); }
@media (min-width: 640px) { .oxx .oxn-select > .oxp-btn { justify-self: start; } }
@media (min-width: 900px) { .oxx .oxn-selects { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } .oxx .oxn-select { padding: 32px; } }

/* ——— Tarifele unui serviciu fără listă: caseta cu trimiterea la pagina Tarife și telefonul. */
.oxx .oxn-callout { display: flex; align-items: flex-start; gap: 16px; padding: 22px; border-radius: var(--p-r-card); background: var(--p-soft); border: 1px solid var(--p-line); }
.oxx .oxn-callout h2 { margin: 0 0 6px; font-size: 22px; }
.oxx .oxn-callout p { margin: 0; font: 400 16px/1.6 var(--p-text); color: var(--p-body); }
.oxx .oxn-callout a { font-weight: 600; color: var(--p-navy); text-decoration: underline; text-underline-offset: 3px; }

/* ——— Cardurile de traseu cu două linkuri (/evaluare-longevitate/: traseul și „Programează consultația”). */
.oxx .oxh-path-sub { margin-top: 2px; color: var(--p-mute); }
.oxx .oxh-path-sub:hover { color: var(--p-navy); }

/* ============ Paginile specialităților ca pagini de documentare (src/site/specialty-premium.mjs) ============
   Antetul cu reperele ca patru casete; pe desktop cuprinsul „Pe această pagină” și caseta de programare într-o
   coloană fixă în stânga, părțile paginii pe lățimea de lectură în dreapta, despărțite de linii fine. Pe telefon,
   cuprinsul e un rând de etichete, iar părțile curg una după alta, compact. */
.oxx .oxsp-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 22px 0 0; padding: 0; list-style: none; }
.oxx .oxsp-stats li { display: flex; }
.oxx .oxsp-stats li > * { display: grid; gap: 4px; width: 100%; padding: 13px 15px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); color: var(--p-ink); transition: border-color .2s; }
.oxx .oxsp-stats a:hover { border-color: var(--p-line-2); }
.oxx .oxsp-stats small { font: 700 11px/1.2 var(--p-display); letter-spacing: .09em; text-transform: uppercase; color: var(--p-mute); }
.oxx .oxsp-stats b { font: 700 15.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxsp-body { display: grid; grid-template-columns: minmax(0, 1fr); padding-block: 4px 40px; }
.oxx .oxsp-chips { margin: 0 0 4px; }
.oxx .oxsp-side { display: none; }
.oxx .oxsp-content { min-width: 0; }
.oxx .oxsp-part { padding-block: 32px; border-top: 1px solid var(--p-line); scroll-margin-top: calc(var(--p-header-h) + 16px); }
.oxx .oxsp-part:first-child { border-top: 0; padding-top: 20px; }
.oxx .oxsp-head { display: grid; gap: 6px; margin-bottom: 18px; }
.oxx .oxsp-head h2, .oxx .oxsp-content .oxh-head h2 { margin: 0; font-size: clamp(1.4rem, 1.15rem + 1.1vw, 1.85rem); line-height: 1.2; }
.oxx .oxsp-head p { margin: 0; font: 400 15.5px/1.6 var(--p-text); color: var(--p-mute); }
.oxx .oxsp-more { margin-top: 16px; }

/* Serviciile ca listă: un card cu rânduri (titlul, două rânduri de descriere, săgeata). */
.oxx .oxsp-rows { margin: 0; padding: 0; list-style: none; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); overflow: hidden; }
.oxx .oxsp-rows li + li { border-top: 1px solid var(--p-line); }
.oxx .oxsp-rows a { display: flex; align-items: center; gap: 16px; padding: 15px 16px 15px 18px; color: var(--p-ink); transition: background-color .2s; }
.oxx .oxsp-rows a:hover { background: var(--p-soft); }
.oxx .oxsp-rows a > svg { flex: none; color: var(--p-mute); }
.oxx .oxsp-row-txt { flex: 1; min-width: 0; display: grid; gap: 3px; }
.oxx .oxsp-row-txt b { font: 700 16px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxsp-row-txt small { font: 400 14.5px/1.5 var(--p-text); color: var(--p-body); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

/* Medicii ca rânduri compacte: fotografia mică, numele, rolul, domeniul. */
.oxx .oxsp-docs { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.oxx .oxsp-docs a { display: flex; align-items: center; gap: 14px; height: 100%; padding: 10px 14px 10px 10px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); color: var(--p-ink); transition: border-color .2s; }
.oxx .oxsp-docs a:hover { border-color: var(--p-line-2); }
.oxx .oxsp-docs a > svg { flex: none; color: var(--p-mute); }
.oxx .oxsp-doc-pic { flex: none; display: grid; place-items: center; width: 64px; height: 64px; border-radius: var(--p-r-btn); overflow: hidden; background: var(--p-tint); color: var(--p-mute); }
.oxx .oxsp-doc-pic img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 22%; }
.oxx .oxsp-doc-txt { flex: 1; min-width: 0; display: grid; gap: 2px; }
.oxx .oxsp-doc-txt b { font: 700 15.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxsp-doc-txt small { font: 400 13.5px/1.4 var(--p-text); color: var(--p-body); }
.oxx .oxsp-doc-txt em { font: 600 12.5px/1.35 var(--p-text); font-style: normal; color: var(--p-gold-ink); }

/* Cuprinsul și caseta de programare (coloana laterală, doar pe desktop). */
.oxx .oxsp-toc { padding: 16px 8px 8px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxsp-toc .oxb-kicker { display: block; padding: 0 12px 8px; color: var(--p-mute); }
.oxx .oxsp-toc ol { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.oxx .oxsp-toc a { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; padding: 6px 12px; border-radius: 8px; font: 500 14px/1.35 var(--p-text); color: var(--p-body); transition: background-color .2s, color .2s; }
.oxx .oxsp-toc a:hover { background: var(--p-soft); color: var(--p-ink); }
.oxx .oxsp-toc a[aria-current="true"] { background: var(--p-tint); color: var(--p-navy); font-weight: 600; }
.oxx .oxsp-book { display: grid; gap: 10px; padding: 20px; border-radius: var(--p-r-card); background: var(--p-tint); border: 1px solid var(--p-line); }
.oxx .oxsp-book .oxb-kicker { color: var(--p-gold-ink); }
.oxx .oxsp-book-tel { display: inline-flex; align-items: center; gap: 10px; font: 800 22px/1.1 var(--p-display); letter-spacing: -.02em; color: var(--p-ink); }
.oxx .oxsp-book-tel svg { color: var(--p-navy-3); }
.oxx .oxsp-book-cta { display: grid; gap: 8px; margin-top: 4px; }
.oxx .oxsp-book-cta .oxp-btn { width: 100%; }

/* Secțiunile (specialitățile cu secțiuni) în coloana de conținut: fără spațiile și fundalurile de bandă ale paginilor
   late; blocurile pe două coloane trec pe una; listele și grilele au cel mult două sau trei coloane. */
.oxx .oxsp-content :is(.oxb, .oxh) { padding-block: 0; }
.oxx .oxsp-content .oxp-wrap { max-width: none; padding-inline: 0; }
.oxx .oxsp-content .oxb-band { background: none; }
.oxx .oxsp-content .oxh-head { margin-bottom: 18px; }
.oxx .oxsp-content .oxb-twocol { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: none; gap: 4px; }
.oxx .oxsp-content .oxb-twocol > * { grid-area: auto; }
.oxx .oxsp-content .oxb-split { grid-template-columns: minmax(0, 1fr); gap: 14px; }
.oxx .oxsp-content .oxb-prose { max-width: none; }
.oxx .oxsp-content .oxb-form-box { grid-template-columns: minmax(0, 1fr); }
.oxx .oxsp-content .oxb-form-copy { position: static; }
.oxx .oxsp-part.is-videos > * + * { margin-top: 28px; }
@media (min-width: 640px) { .oxx .oxsp-docs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 768px) {
  .oxx .oxsp-part.is-videos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; align-items: start; }
  .oxx .oxsp-part.is-videos > * + * { margin-top: 0; }
}
@media (min-width: 1024px) {
  .oxx .oxsp-stats { grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); gap: 10px; margin-top: 30px; }
  .oxx .oxsp-body { grid-template-columns: 272px minmax(0, 1fr); gap: 56px; align-items: start; padding-block: 24px 72px; }
  .oxx .oxsp-chips { display: none; }
  .oxx .oxsp-side { position: sticky; top: calc(var(--p-header-h) + 20px); display: grid; gap: 14px; max-height: calc(100vh - var(--p-header-h) - 40px); overflow-y: auto; scrollbar-width: thin; }
  .oxx .oxsp-content { max-width: 880px; }
  .oxx .oxsp-part { padding-block: 44px; }
  .oxx .oxsp-part:first-child { padding-top: 8px; }
  .oxx .oxsp-content .oxb-cards { grid-template-columns: repeat(min(var(--n, 2), 2), minmax(0, 1fr)); }
  .oxx .oxsp-content .oxb-choices { grid-template-columns: repeat(min(var(--n, 2), 2), minmax(0, 1fr)); }
  .oxx .oxsp-content .oxb-colgrid { grid-template-columns: repeat(min(var(--n, 2), 2), minmax(0, 1fr)); }
  .oxx .oxsp-content .oxh-team-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .oxx .oxsp-content .oxb-places.has-map .oxb-places-grid { grid-template-columns: minmax(0, 1fr); }
  .oxx .oxsp-content .oxb-svcs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ——— Paginile specialităților, structura comună (src/site/specialty-premium.mjs): punctele antetului, imaginea ca
   parte a paginii, cardurile serviciilor (accesul și tariful „de la”), filmările, banda „Alte specialități”. */
.oxx .oxsp-content .oxb-locs:has(> :only-child) { grid-template-columns: minmax(0, 1fr); }
.oxx .oxsp-part.is-figure { padding-bottom: 0; border-top: 0; }


.oxx .oxsp-vids { display: grid; grid-auto-flow: column; grid-auto-columns: 62%; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-inline: calc(-1 * var(--p-gutter)); padding: 4px var(--p-gutter) 8px; scroll-padding-inline: var(--p-gutter); }
.oxx .oxsp-vids::-webkit-scrollbar { display: none; }
.oxx .oxsp-vids > * { scroll-snap-align: start; }
.oxx .oxsp-vids .oxb-video-frame { position: relative; aspect-ratio: 9 / 16; }
.oxx .oxsp-vids video { position: absolute; inset: 0; width: 100%; height: 100%; max-height: none; object-fit: contain; }
.oxx .oxsp-vids figcaption b { font-size: 15px; }
.oxx .oxsp-vids figcaption p { font-size: 13.5px; color: var(--p-mute); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxsp-wide + .oxsp-vids, .oxx .oxsp-vids + .oxsp-wide { margin-top: 24px; }

.oxx .oxsp-others { background: var(--p-soft); border-top: 1px solid var(--p-line); }
.oxx .oxsp-others-grid { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.oxx .oxsp-others-grid a { display: flex; align-items: center; gap: 12px; height: 100%; padding: 12px 14px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); color: var(--p-ink); transition: border-color .2s, box-shadow .2s; }
.oxx .oxsp-others-grid a:hover { border-color: var(--p-line-2); box-shadow: var(--u-hover, none); }
.oxx .oxsp-others-grid .oxb-ic { width: 40px; height: 40px; }
.oxx .oxsp-others-grid a > span:nth-child(2) { flex: 1; min-width: 0; display: grid; gap: 2px; }
.oxx .oxsp-others-grid b { font: 700 15px/1.3 var(--p-display); }
.oxx .oxsp-others-grid small { font: 500 12.5px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxsp-others-grid a > svg { flex: none; color: var(--p-navy-3); }
@media (min-width: 640px) {
  .oxx .oxsp-vids { grid-auto-flow: row; grid-template-columns: repeat(var(--n, 3), minmax(0, 1fr)); gap: 18px; overflow: visible; margin-inline: 0; padding: 0; }
  .oxx .oxsp-vids:has(> :only-child) { grid-template-columns: minmax(0, 300px); }
  .oxx .oxsp-others-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  .oxx .oxsp-others-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
}

/* ============ Pagina unei locații (src/site/location-premium.mjs) ============
   Scheletul paginilor de specialitate (.oxsp), cu antetul propriu: textul, nota Google, programarea și reperele în
   stânga, caseta de contact (starea programului, adresa, telefonul, programul cu ziua de azi) în dreapta; pe telefon
   caseta vine imediat după text. Părțile: grupele de servicii pe două coloane, serviciile CAS, echipa, filmările,
   harta cu adresa, nota Google, întrebările, paginile utile și celelalte locații. */
.oxx .oxlc-hero { padding-bottom: 28px; }
.oxx .oxlc-hero .oxh-lead { max-width: 54ch; }
.oxx .oxlc-rating { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; margin-top: 18px; padding: 8px 14px 8px 12px; white-space: nowrap; border-radius: 999px; background: #fff; border: 1px solid var(--p-line); box-shadow: var(--p-shadow-sm); font: 500 14px/1.2 var(--p-text); color: var(--p-body); transition: border-color .2s; }
.oxx a.oxlc-rating:hover { border-color: var(--p-line-2); }
.oxx .oxlc-rating b { font: 800 16px/1 var(--p-display); color: var(--p-ink); font-variant-numeric: tabular-nums; }
.oxx .oxlc-rating > svg { flex: none; color: var(--p-navy-3); }
.oxx .oxlc-rating span:not(.oxb-stars) { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.oxx .oxlc-rating .oxb-stars svg { width: 13px; height: 13px; }
.oxx .oxlc-rating + .oxh-cta { margin-top: 22px; }
.oxx .oxlc-stats { margin-top: 24px; }
.oxx .oxlc-stats b { font-size: 20px; letter-spacing: -.01em; }
.oxx .oxlc-card { gap: 2px; padding: 20px; border-radius: var(--p-r-panel); background: #fff; border: 1px solid var(--p-line); box-shadow: var(--p-shadow-md); }
.oxx .oxlc-card .oxn-status { margin-bottom: 10px; }
.oxx .oxlc-card .oxb-kicker { margin-bottom: 4px; color: var(--p-mute); }
.oxx .oxlc-card .oxlc-card-k { margin-top: 16px; }
.oxx .oxlc-card .oxh-loc-row { padding: 7px 0; font-size: 15.5px; }
.oxx .oxlc-card .oxh-loc-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 8px; margin-top: 16px; }
.oxx .oxlc-card .oxh-loc-actions .oxp-btn { white-space: nowrap; }
.oxx .oxlc-book .oxn-status { margin-bottom: 2px; }

/* Specialitățile cu serviciile de aici: grupe pe două coloane; o specialitate fără servicii aici e un link simplu. */
.oxx a.oxlc-group-link { display: flex; align-items: center; gap: 12px; min-height: 64px; padding: 10px 14px; color: var(--p-ink); transition: border-color .2s; }
.oxx a.oxlc-group-link:hover { border-color: var(--p-line-2); }
.oxx a.oxlc-group-link > span:nth-child(2) { flex: 1; min-width: 0; display: grid; gap: 2px; }
.oxx a.oxlc-group-link b { font: 700 16px/1.3 var(--p-display); color: var(--p-ink); }
.oxx a.oxlc-group-link small { font: 500 13px/1.3 var(--p-text); color: var(--p-mute); }
.oxx a.oxlc-group-link > svg { flex: none; color: var(--p-navy-3); }

/* Serviciile prin CAS: grupate pe specialități (iconița și numele), serviciile ca etichete-link; pe desktop numele
   specialității în stânga, etichetele în dreapta. */
.oxx .oxlc-cas { display: grid; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
.oxx .oxlc-cas-g { display: grid; gap: 10px; padding: 16px; }
.oxx .oxlc-cas-g + .oxlc-cas-g { border-top: 1px solid var(--p-line); }
.oxx .oxlc-cas-h { display: flex; align-items: center; gap: 10px; }
.oxx .oxlc-cas-h .oxb-ic { width: 34px; height: 34px; }
.oxx .oxlc-cas-h b { font: 700 15.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxlc-pills { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.oxx .oxlc-pills a { display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 7px 12px; border-radius: 999px; background: var(--p-soft); border: 1px solid var(--p-line); font: 500 14px/1.25 var(--p-text); color: var(--p-ink); transition: border-color .2s, background-color .2s; }
.oxx .oxlc-pills a:hover { background: #fff; border-color: var(--p-line-2); }
.oxx .oxlc-pills a svg { flex: none; color: var(--p-navy-3); }

/* Filmările: casetele verticale egale (bandă derulabilă pe telefon, rând de până la trei de la tabletă), clipul
   orizontal pe toată lățimea, dedesubt. Clipul se vede întreg în casetă (fără decupaj). */
.oxx .oxlc-vids { display: grid; grid-auto-flow: column; grid-auto-columns: 64%; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-inline: calc(-1 * var(--p-gutter)); padding: 4px var(--p-gutter) 8px; scroll-padding-inline: var(--p-gutter); }
.oxx .oxlc-vids::-webkit-scrollbar { display: none; }
.oxx .oxlc-vids > * { scroll-snap-align: start; }
.oxx .oxlc-vids .oxb-video-frame { position: relative; aspect-ratio: 9 / 16; }
.oxx .oxlc-vids video { position: absolute; inset: 0; width: 100%; height: 100%; max-height: none; object-fit: contain; }
.oxx .oxlc-vids .oxn-yt-frame { max-height: none; }
.oxx .oxlc-yt { background: radial-gradient(120% 70% at 50% 0%, var(--p-navy-3), var(--p-navy) 70%); }
.oxx .oxlc-yt-badge { position: absolute; top: 12px; left: 12px; z-index: 1; display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: 999px; background: rgb(255 255 255 / .14); color: #fff; font: 700 11.5px/1 var(--p-display); letter-spacing: .04em; pointer-events: none; }
.oxx .oxlc-vids figcaption b { font-size: 15px; }
.oxx .oxlc-vids figcaption p { font-size: 13.5px; color: var(--p-mute); }
.oxx .oxlc-wide { margin-top: 24px; }
.oxx .oxlc-vids + .oxlc-wide { padding-top: 24px; border-top: 1px solid var(--p-line); }

/* Harta: adresa și butoanele, apoi harta (la cerere); alăturate de la tabletă. */
.oxx .oxlc-map { display: grid; gap: 12px; }
.oxx .oxlc-where { display: grid; align-content: start; gap: 8px; padding: 20px; border-radius: var(--p-r-card); background: var(--p-soft); border: 1px solid var(--p-line); }
.oxx .oxlc-where .oxb-kicker { color: var(--p-mute); }
.oxx .oxlc-address { margin: 0; font: 700 18px/1.4 var(--p-display); color: var(--p-ink); }
.oxx .oxlc-address a { display: flex; align-items: center; gap: 8px; margin-top: 10px; font: 600 15px/1.3 var(--p-text); color: var(--p-ink); }
.oxx .oxlc-address a svg { color: var(--p-gold-ink); }
.oxx .oxlc-where-cta { display: grid; gap: 8px; margin-top: 10px; }
.oxx .oxlc-map .oxb-map.oxn-map { min-height: 300px; }

/* Nota din profilul Google: nota mare, stelele, numărul de recenzii; textul și linkul spre profil. */
.oxx .oxlc-gbp { display: grid; gap: 18px; padding: 22px; border-radius: var(--p-r-panel); background: #fff; border: 1px solid var(--p-line); box-shadow: var(--p-shadow-sm); }
.oxx .oxlc-gbp-score { display: grid; justify-items: start; gap: 6px; }
.oxx .oxlc-gbp-score > b { font: 800 52px/1 var(--p-display); letter-spacing: -.03em; color: var(--p-ink); font-variant-numeric: tabular-nums; }
.oxx .oxlc-gbp-score .oxb-stars svg { width: 19px; height: 19px; }
.oxx .oxlc-gbp-score small { font: 500 14px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxlc-gbp-txt { display: grid; justify-items: start; gap: 8px; }
.oxx .oxlc-gbp-txt h3 { margin: 0; font: 700 19px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxlc-gbp-txt p { margin: 0 0 6px; font: 400 15px/1.6 var(--p-text); color: var(--p-body); }
.oxx .oxlc-reviews { margin-top: 18px; }
/* Celelalte locații: o singură locație = cardul pe toată lățimea (butoanele pe un rând). */
.oxx .oxsp-content .oxlc-others:has(> :only-child) { grid-template-columns: minmax(0, 1fr); }
.oxx .oxlc-reviews + .oxh-railnav { margin-top: 12px; }

@media (min-width: 640px) {
  .oxx .oxlc-rating { gap: 10px; }
  .oxx .oxlc-rating .oxb-stars svg { width: 15px; height: 15px; }
  .oxx .oxlc-cas-g { grid-template-columns: 230px minmax(0, 1fr); align-items: start; gap: 16px; padding: 18px 20px; }
  .oxx .oxlc-cas-h { min-height: 38px; }
  .oxx .oxlc-vids { grid-auto-flow: row; grid-template-columns: repeat(var(--n, 3), minmax(0, 1fr)); gap: 18px; overflow: visible; margin-inline: 0; padding: 0; }
  .oxx .oxlc-where-cta { display: flex; flex-wrap: wrap; }
}
@media (min-width: 768px) {
  .oxx .oxlc-map { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
  .oxx .oxlc-map .oxlc-where-cta { display: grid; }
  .oxx .oxlc-map .oxb-map.oxn-map { min-height: 340px; }
  .oxx .oxlc-gbp { grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 32px; padding: 28px 32px; }
  .oxx .oxlc-gbp-score { padding-right: 32px; border-right: 1px solid var(--p-line); }
}
@media (min-width: 1024px) {
  .oxx .oxlc-hero { padding-bottom: 48px; }
  .oxx .oxlc-hero .oxb-hero-in { grid-template-columns: minmax(0, 1fr) 400px; align-items: start; min-height: 0; }
  .oxx .oxlc-card { padding: 24px 26px; }
  .oxx .oxsp-content .oxlc-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ============ Specialitățile și serviciile: „fișa departamentului” (src/site/department-premium.mjs) ============
   O singură pagină compactă, fără taburi: antetul (titlul, o frază, butoanele) cu fișa răspunsurilor reale în dreapta
   (pe telefon dedesubt), bara secțiunilor (pe telefon un rând de pastile, pe desktop lipită sub antetul site-ului, cu
   butonul de programare), apoi secțiunile pe un singur fundal alb, despărțite de linii fine, fără card în card. Listele
   lungi se strâng la primele rânduri ([data-more]), textul lung se pliază ([data-collapse]). Mobil întâi. */
.oxx .oxf-hero { padding: 14px 0 26px; background: linear-gradient(180deg, var(--p-tint) 0%, #fff 78%); border-bottom: 1px solid var(--p-line); }
.oxx .oxf-hero-in { display: grid; gap: 22px; }
.oxx .oxf-kind { display: flex; align-items: center; gap: 10px; margin: 0; font: 700 12px/1.3 var(--p-display); letter-spacing: .08em; text-transform: uppercase; color: var(--p-gold-ink); }
.oxx .oxf-kind a { color: inherit; text-decoration: underline; text-decoration-color: color-mix(in srgb, currentColor 35%, transparent); text-underline-offset: 3px; }
.oxx .oxf-kind a:hover { text-decoration-color: currentColor; }
.oxx .oxf-ic { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: #fff; border: 1px solid var(--p-line); color: var(--p-navy-3); }
.oxx.oxx .oxf-hero h1 { margin: 14px 0 0; font: 800 clamp(1.9rem, 1.45rem + 2.1vw, 3rem)/1.04 var(--p-display); letter-spacing: -.034em; color: var(--p-ink); text-wrap: balance; }
.oxx.oxx .oxf-hero h1 .oxf-sub { display: block; margin-top: 8px; font-size: .56em; line-height: 1.2; font-weight: 600; letter-spacing: -.018em; color: var(--p-navy-3); }
.oxx .oxf-sep { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.oxx .oxf-lead { margin: 14px 0 0; max-width: 60ch; font: 400 var(--u-fs-lead, 17px)/1.6 var(--p-text); color: var(--p-body); }
.oxx .oxf-cta { display: grid; gap: 10px; margin-top: 20px; }
.oxx .oxf-cta .oxp-btn { width: 100%; }
.oxx .oxf-tel { display: none; }
/* Pe telefon „Programare prin CAS” e în bara de jos a site-ului (alături de Sună și Programare): în antet rămâne doar butonul principal. */
@media (max-width: 639px) { .oxx .oxf-cta .is-cas-book { display: none; } }

/* Fișa: o listă de rânduri (iconița sau fotografia, eticheta mică, valoarea, nota), despărțite de linii fine; rândurile cu
   o secțiune în pagină sunt linkuri (săgeata, fundal la trecerea cu mouse-ul). Aceeași formă oricâte date există. */
.oxx .oxf-card { display: grid; grid-template-columns: minmax(0, 1fr); min-width: 0; align-self: center; border-radius: 20px; background: #fff; border: 1px solid var(--p-line); overflow: hidden; box-shadow: 0 1px 2px rgb(15 23 42 / .04), 0 24px 48px -32px rgb(28 57 142 / .38); }
.oxx .oxf-row { display: flex; align-items: center; gap: 14px; min-height: 72px; padding: 14px 16px; color: var(--p-ink); transition: background-color .2s; }
.oxx .oxf-row + .oxf-row { border-top: 1px solid var(--p-line); }
.oxx a.oxf-row:hover { background: var(--p-soft); }
.oxx a.oxf-row:focus-visible { outline: 2px solid var(--p-navy-3); outline-offset: -3px; }
.oxx .oxf-row-ic { flex: none; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: var(--p-tint); color: var(--p-navy); }
.oxx .oxf-row-ic.is-wa { background: #e7f8ee; color: #1f9d55; }
.oxx .oxf-row-ic.is-wa svg { width: 20px; height: 20px; }
.oxx .oxf-row-t { flex: 1; min-width: 0; display: grid; gap: 1px; }
.oxx .oxf-row-t small { font: 700 10.5px/1.3 var(--p-display); letter-spacing: .1em; text-transform: uppercase; color: var(--p-mute); }
.oxx .oxf-row-t b { font: 800 16.5px/1.3 var(--p-display); letter-spacing: -.012em; color: var(--p-ink); }
.oxx .oxf-row-t em { font: 400 13px/1.4 var(--p-text); font-style: normal; color: var(--p-body); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxf-row-go { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; color: var(--p-navy-3); transition: background-color .2s, color .2s, transform .2s; }
.oxx a.oxf-row:hover .oxf-row-go { background: var(--p-navy); color: #fff; transform: translateX(2px); }
.oxx .oxf-pics { flex: none; display: flex; width: 42px; justify-content: flex-start; }
.oxx .oxf-pics:not(.is-one) { width: auto; padding-left: 10px; }
.oxx .oxf-pic { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; overflow: hidden; background: var(--p-tint); color: var(--p-mute); }
.oxx .oxf-pics:not(.is-one) .oxf-pic { width: 38px; height: 38px; margin-left: -10px; border-radius: 50%; border: 2px solid #fff; }
.oxx .oxf-pic img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 18%; }
.oxx .oxf-row.is-where { align-items: flex-start; }
/* Pe telefon rândul locațiilor nu are iconiță: numele și starea programului au loc pe un rând. */
@media (max-width: 639px) { .oxx .oxf-row.is-where .oxf-row-ic { display: none; } }
.oxx .oxf-where { display: grid; margin: 4px 0 0; padding: 0; list-style: none; }
.oxx .oxf-where li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 10px; min-height: 34px; padding-block: 3px; }
.oxx .oxf-where li + li { border-top: 1px dashed var(--p-line); }
.oxx .oxf-where a { font: 800 15.5px/1.3 var(--p-display); letter-spacing: -.01em; color: var(--p-ink); }
.oxx .oxf-where a:hover { color: var(--p-navy); text-decoration: underline; text-underline-offset: 3px; }
.oxx .oxf-where .oxn-status { padding: 4px 9px; font-size: 11.5px; white-space: nowrap; }

/* Bara secțiunilor: pe telefon un rând de pastile (nu încă o bară fixă: programarea e în bara de jos a site-ului). */
/* Bara rămâne lipită sub antetul site-ului și pe telefon: secțiunea curentă e evidențiată, iar întoarcerea la alta e
   la o atingere. */
.oxx .oxf-nav { position: sticky; top: var(--p-header-h); z-index: 30; border-bottom: 1px solid var(--p-line); background: rgb(255 255 255 / .96); -webkit-backdrop-filter: saturate(160%) blur(12px); backdrop-filter: saturate(160%) blur(12px); }
.oxx .oxf-nav-in { display: flex; align-items: center; gap: 12px; }
.oxx .oxf-nav ul { flex: 1; min-width: 0; display: flex; gap: 6px; margin: 0 calc(-1 * var(--p-gutter)); padding: 12px var(--p-gutter); list-style: none; overflow-x: auto; scrollbar-width: none; }
.oxx .oxf-nav ul::-webkit-scrollbar { display: none; }
.oxx .oxf-nav a:not(.oxp-btn) { flex: none; position: relative; display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--p-line); font: 600 14px/1 var(--p-display); color: var(--p-body); white-space: nowrap; transition: color .2s, border-color .2s, background-color .2s; }
.oxx .oxf-nav a:not(.oxp-btn):hover { color: var(--p-navy); border-color: var(--p-line-hover); }
.oxx .oxf-nav a:not(.oxp-btn):focus-visible { outline: 2px solid var(--p-navy-3); outline-offset: 2px; }
.oxx .oxf-nav-cta { display: none; }

/* Secțiunile: același fundal, despărțite de linii fine; ritmul secțiunilor din ui.css. */
.oxx .oxf-body { padding-bottom: 12px; }
.oxx .oxf-sec { padding-block: calc(var(--u-sec, 28px) * .9); scroll-margin-top: calc(var(--p-header-h) + 66px); }
.oxx .oxf-sec + .oxf-sec { border-top: 1px solid var(--p-line); }
.oxx .oxf-sec:focus { outline: none; }
.oxx .oxf-anchor { display: block; height: 0; scroll-margin-top: calc(var(--p-header-h) + 66px); }
.oxx .oxf-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 8px 20px; flex-wrap: wrap; margin-bottom: var(--u-head, 16px); }
.oxx .oxf-head-t { display: grid; gap: 4px; min-width: 0; }
.oxx.oxx .oxf-head h2 { margin: 0; font: 800 var(--u-fs-h2, 1.5rem)/1.15 var(--p-display); letter-spacing: -.024em; color: var(--p-ink); }
.oxx .oxf-head p { margin: 0; max-width: 62ch; font: 400 14.5px/1.5 var(--p-text); color: var(--p-mute); }
.oxx .oxf-head .oxp-link { font-size: 14.5px; }
.oxx .oxf-more { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 14px; padding: 0 18px; border-radius: 999px; border: 1px solid var(--p-line-2); background: #fff; font: 700 14.5px/1 var(--p-display); color: var(--p-navy); cursor: pointer; transition: border-color .2s, background-color .2s; }
.oxx .oxf-more:hover { border-color: var(--p-navy-3); background: var(--p-soft); }
.oxx .oxf-more:focus-visible { outline: 2px solid var(--p-navy-3); outline-offset: 2px; }
.oxx .oxf-more[hidden] { display: none; }

/* Serviciile: rânduri (numele, descrierea, CAS / prețul, săgeata), nu carduri; două coloane pe ecranele mari. */
.oxx .oxf-search { position: relative; display: flex; align-items: center; max-width: 440px; margin-bottom: 12px; }
.oxx .oxf-search svg { position: absolute; left: 14px; color: var(--p-mute); pointer-events: none; }
.oxx .oxf-search input { width: 100%; min-height: 48px; padding: 0 14px 0 44px; border-radius: var(--p-r-btn); border: 1px solid var(--p-line-2); background: #fff; font: 400 16px/1.2 var(--p-text); color: var(--p-ink); }
.oxx .oxf-search input:focus { outline: 2px solid var(--p-navy-3); outline-offset: 1px; }
.oxx .oxf-empty { margin: 0 0 12px; font: 500 15px/1.5 var(--p-text); color: var(--p-body); }
.oxx .oxf-empty[hidden] { display: none; }
.oxx .oxf-svcs, .oxx .oxf-arts { display: grid; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--p-line); }
.oxx :is(.oxf-svcs, .oxf-arts) > li { border-bottom: 1px solid var(--p-line); }
.oxx :is(.oxf-svcs, .oxf-arts, .oxf-prows) > li[hidden] { display: none; }
.oxx .oxf-svcs.is-folded > li:nth-child(n+7), .oxx .oxf-prows.is-folded > li:nth-child(n+7), .oxx .oxf-arts.is-folded > li:nth-child(n+4), .oxx .oxb-faq.is-folded > details:nth-of-type(n+7) { display: none; }
.oxx .oxf-svc { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 15px 6px; color: var(--p-ink); transition: background-color .2s; }
.oxx .oxf-svc:hover { background: var(--p-soft); }
.oxx .oxf-svc-txt { display: grid; gap: 3px; min-width: 0; }
.oxx .oxf-svc b { font: 700 16px/1.3 var(--p-display); letter-spacing: -.01em; transition: color .2s; }
.oxx .oxf-svc:hover b { color: var(--p-navy); }
.oxx .oxf-svc small { font: 400 14px/1.5 var(--p-text); color: var(--p-body); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxf-svc-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 5px; }
.oxx .oxf-svc-meta em { display: inline-flex; align-items: center; gap: 4px; padding: 4px 8px; border-radius: 6px; background: var(--p-soft); font: 700 12px/1 var(--p-text); font-style: normal; color: var(--p-body); white-space: nowrap; }
.oxx .oxf-svc-meta em.is-cas { background: var(--p-gold-soft); color: var(--p-gold-ink); }
.oxx .oxf-svc-meta em.is-price { background: var(--p-tint); color: var(--p-navy); }
.oxx .oxf-go { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--p-soft); color: var(--p-navy); transition: background-color .2s, color .2s; }
.oxx .oxf-svc:hover .oxf-go { background: var(--p-navy); color: #fff; }

/* Medicii: carduri cu fotografia (bandă derulabilă pe telefon, grilă pe ecranele mari); unul singur: cardul larg. */
.oxx .oxf-docs { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(150px, 44%); gap: 12px; margin: 0 calc(-1 * var(--p-gutter)); padding: 2px var(--p-gutter) 6px; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--p-gutter); scrollbar-width: none; }
.oxx .oxf-docs::-webkit-scrollbar { display: none; }
.oxx .oxf-docs li { scroll-snap-align: start; }
.oxx .oxf-docs a { display: grid; gap: 4px; color: var(--p-ink); }
.oxx .oxf-doc-pic { display: grid; place-items: center; aspect-ratio: 4 / 5; margin-bottom: 8px; border-radius: 14px; overflow: hidden; background: var(--p-tint); color: var(--p-faint); }
.oxx .oxf-doc-pic img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 18%; transition: transform .5s var(--p-ease); }
.oxx .oxf-docs a:hover .oxf-doc-pic img { transform: scale(1.03); }
.oxx .oxf-docs b { font: 700 15px/1.3 var(--p-display); letter-spacing: -.01em; }
.oxx .oxf-docs a:hover b { color: var(--p-navy); }
.oxx .oxf-docs small { font: 400 13px/1.45 var(--p-text); color: var(--p-body); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/* Medicul paginii (unul singur): panou nuanțat, fotografia mare în stânga (pe telefon sus, decupată la față), apoi numele,
   titlul, prezentarea și competențele din profil, locațiile în care consultă și butoanele. */
.oxx .oxf-doc1 { display: grid; overflow: hidden; border-radius: 20px; background: var(--p-soft); border: 1px solid var(--p-line); }
.oxx .oxf-doc1-pic { position: relative; display: grid; place-items: center; height: 300px; overflow: hidden; background: var(--p-tint); color: var(--p-faint); }
.oxx .oxf-doc1-pic img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 16%; }
.oxx .oxf-doc1-txt { display: grid; gap: 8px; align-content: center; padding: 20px; }
.oxx.oxx .oxf-doc1 h3 { margin: 0; font: 800 clamp(1.3rem, 1.15rem + .6vw, 1.65rem)/1.2 var(--p-display); letter-spacing: -.024em; }
.oxx .oxf-doc1 h3 a { color: var(--p-ink); }
.oxx .oxf-doc1 h3 a:hover { color: var(--p-navy); }
.oxx .oxf-role { margin: 0; font: 600 15px/1.45 var(--p-text); color: var(--p-gold-ink); }
.oxx .oxf-doc1-bio { margin: 6px 0 0; max-width: 62ch; font: 400 15.5px/1.6 var(--p-text); color: var(--p-body); }
.oxx .oxf-doc1-skills { display: grid; gap: 8px; margin: 10px 0 0; padding: 14px 0 0; list-style: none; border-top: 1px solid var(--p-line); }
.oxx .oxf-doc1-skills li { position: relative; padding-left: 28px; font: 500 14.5px/1.45 var(--p-text); color: var(--p-ink); }
.oxx .oxf-doc1-skills li::before { content: ""; position: absolute; left: 0; top: .1em; width: 19px; height: 19px; border-radius: 50%; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c398e' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / 11px no-repeat; border: 1px solid var(--p-line); }
.oxx .oxf-doc1-where { display: flex; align-items: center; gap: 8px; margin: 8px 0 0; font: 500 14.5px/1.4 var(--p-text); color: var(--p-body); }
.oxx .oxf-doc1-where svg { flex: none; color: var(--p-navy-3); }
.oxx .oxf-doc1-where a { font-weight: 700; color: var(--p-ink); text-decoration: underline; text-decoration-color: var(--p-line-2); text-underline-offset: 3px; }
.oxx .oxf-doc1-where a:hover { color: var(--p-navy); text-decoration-color: currentColor; }
.oxx .oxf-doc1-cta { display: grid; gap: 10px; margin-top: 14px; }
.oxx .oxf-doc1-cta .oxp-btn { width: 100%; }

/* Tarifele: rânduri cu linii fine (denumirea, prețul aliniat la dreapta); mai multe liste: două coloane pe desktop. */
.oxx .oxf-prices { display: grid; gap: 26px; }
.oxx.oxx .oxf-plist h3 { margin: 0 0 8px; font: 700 16px/1.3 var(--p-display); letter-spacing: -.01em; color: var(--p-ink); }
.oxx .oxf-prows { display: grid; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--p-line); }
.oxx .oxf-prows li { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; padding: 12px 2px; border-bottom: 1px solid var(--p-line); }
.oxx .oxf-prows span { flex: 1 1 auto; min-width: 0; font: 400 15px/1.45 var(--p-text); color: var(--p-ink); overflow-wrap: anywhere; }
/* Prețul: pe un rând când e scurt („250 lei”); unul lung („Altele decât cele din tariful de bază”) se rupe, aliniat la dreapta. */
.oxx .oxf-prows b { flex: none; font: 800 15.5px/1.3 var(--p-display); color: var(--p-ink); text-align: right; white-space: nowrap; }
.oxx .oxf-prows b.is-long { flex: 0 1 auto; max-width: 46%; white-space: normal; }
.oxx .oxf-pnote { margin: 12px 0 0; max-width: 70ch; font: 400 14px/1.55 var(--p-text); color: var(--p-mute); }
.oxx .oxf-pnote.is-callout { display: flex; gap: 12px; align-items: flex-start; margin: 0; padding: 16px 18px; border-radius: var(--p-r-card); background: var(--p-soft); border: 1px solid var(--p-line); font-size: 15px; color: var(--p-body); }
.oxx .oxf-pnote.is-callout svg { flex: none; margin-top: 2px; color: var(--p-navy-3); }
.oxx .oxf-pnote a { font-weight: 600; color: var(--p-navy); text-decoration: underline; text-underline-offset: 3px; }
.oxx .oxf-pfoot { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; margin-top: 14px; }
.oxx .oxf-pfoot .oxf-pnote { margin: 0; }

/* „Despre”: textul pe lățimea de lectură; pe desktop cuprinsul alături (fix la derulare). */
.oxx .oxf-about { display: grid; gap: 24px; }
.oxx .oxf-read { min-width: 0; max-width: 46rem; }
.oxx .oxf-read.is-sections { max-width: none; }
.oxx .oxf-fold { --oxb-fold: 620px; --oxf-target: 520px; }
.oxx .oxf-fold.is-sections { --oxb-fold: 1100px; --oxf-target: 640px; }
.oxx .oxf-prose { max-width: none; }
.oxx.oxx .oxf-prose h2 { clear: both; margin: 1.7em 0 .55em; font: 800 clamp(1.25rem, 1.12rem + .55vw, 1.5rem)/1.25 var(--p-display); letter-spacing: -.02em; color: var(--p-ink); scroll-margin-top: calc(var(--p-header-h) + 76px); }
.oxx.oxx .oxf-prose h3 { clear: both; margin: 1.5em 0 .45em; font: 700 18px/1.3 var(--p-display); color: var(--p-ink); scroll-margin-top: calc(var(--p-header-h) + 76px); }
.oxx.oxx .oxf-prose :is(h4, h5, h6) { margin: 1.3em 0 .4em; font: 700 16px/1.35 var(--p-display); color: var(--p-ink); }
.oxx .oxf-prose > :first-child { margin-top: 0; }
.oxx .oxb-prose .oxf-lead-p { margin: 0 0 18px; font: 400 17.5px/1.6 var(--p-text); color: var(--p-ink); }
@media (min-width: 1024px) { .oxx .oxb-prose .oxf-lead-p { font-size: 18.5px; } }
.oxx .oxb-prose .oxf-tagline { margin: 1.2em 0; }
.oxx .oxb-prose .oxf-tagline strong { font: 700 16.5px/1.45 var(--p-display); color: var(--p-navy); }
.oxx .oxb-prose ul.oxf-checks { display: grid; gap: 8px; margin: 16px 0 20px; padding: 0; list-style: none; }
.oxx .oxb-prose ul.oxf-checks > li { position: relative; margin: 0; padding: 0 0 0 30px; font: 500 15.5px/1.55 var(--p-text); color: var(--p-ink); }
.oxx .oxb-prose ul.oxf-checks > li::before { content: ""; position: absolute; left: 0; top: .2em; width: 20px; height: 20px; border-radius: 50%; background: var(--p-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c398e' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / 11px no-repeat; }
.oxx .oxb-prose ul.oxf-checks a { font-weight: 600; }
.oxx .oxb-prose .oxf-linkcard { margin: 16px 0 0; }
.oxx .oxb-prose .oxf-linkcard a { display: inline-flex; align-items: center; gap: 10px; min-height: 46px; padding: 10px 16px; border-radius: 12px; border: 1px solid var(--p-line-2); background: #fff; font: 700 15px/1.3 var(--p-display); color: var(--p-navy); text-decoration: none; transition: border-color .2s; }
.oxx .oxb-prose .oxf-linkcard a::after { content: ""; width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c398e' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; }
.oxx .oxb-prose .oxf-linkcard a:hover { border-color: var(--p-navy-3); }
/* Tabelele din text (de exemplu programul unui medic): rânduri cu linii fine, prima coloană îngroșată. */
.oxx .oxf-prose table { width: 100%; max-width: 520px; margin: 14px 0 22px; border-collapse: collapse; font: 400 15px/1.45 var(--p-text); }
.oxx .oxf-prose :is(th, td) { padding: 10px 12px 10px 0; border-bottom: 1px solid var(--p-line); text-align: left; vertical-align: top; }
.oxx .oxf-prose th { font: 700 11.5px/1.2 var(--p-display); letter-spacing: .08em; text-transform: uppercase; color: var(--p-mute); }
.oxx .oxf-prose td:first-child { font-weight: 600; color: var(--p-ink); }
.oxx .oxf-cards { display: grid; gap: 10px; margin-top: 18px; }
.oxx .oxf-card-p { padding: 16px 18px; border-radius: 12px; background: var(--p-soft); border: 1px solid var(--p-line); }
.oxx .oxb-prose .oxf-card-p p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--p-ink); }
/* Imaginile din text: cele late pe toată lățimea textului (cel mult cât un ecran de laptop); cele înalte și pătrate,
   pe telefon decupate la o înălțime rezonabilă (fața sus), pe desktop lângă text, întregi. */
.oxx .oxf-fig { margin: 20px 0; }
.oxx .oxf-fig img { display: block; width: 100%; height: auto; border-radius: var(--p-r-card); background: var(--p-tint); }
.oxx .oxf-fig.is-wide img { max-height: 460px; object-fit: cover; }
.oxx .oxf-fig:is(.is-tall, .is-square) img { max-height: 380px; object-fit: cover; object-position: 50% 18%; }
.oxx .oxf-toc { display: none; }
/* Secțiunile de text ale unei pagini cu secțiuni, în „Despre”: fără benzi și fără marginile lor, despărțite de spațiu. */
.oxx.oxx .oxf-sec section.oxh { padding-block: 0; }
.oxx .oxf-sec .oxp-wrap { max-width: none; padding-inline: 0; }
.oxx .oxf-sec .oxb-band { background: none; }
.oxx .oxf-read.is-sections > section + section { margin-top: 36px; }
.oxx .oxf-read.is-sections .oxb-prose { max-width: 46rem; }
.oxx .oxf-read.is-sections .oxh-head { margin-bottom: 16px; }
.oxx.oxx .oxf-read.is-sections .oxh-head > h2, .oxx.oxx .oxf-read.is-sections .oxb-split > h2 { font-size: clamp(1.25rem, 1.12rem + .55vw, 1.5rem); scroll-margin-top: calc(var(--p-header-h) + 76px); }
.oxx .oxf-read.is-sections .oxb-split { grid-template-columns: minmax(0, 1fr); gap: 10px; }

/* Locațiile: nota Google (din Brain) deasupra cardurilor. */
.oxx .oxf-rating { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: -4px 0 16px; padding: 0; list-style: none; }
.oxx .oxf-rating li { display: inline-flex; align-items: center; gap: 6px; }
.oxx .oxf-rating svg { color: #f2a900; fill: currentColor; }
.oxx .oxf-rating b { font: 800 15px/1 var(--p-display); color: var(--p-ink); }
.oxx .oxf-rating span { font: 500 13.5px/1.3 var(--p-text); color: var(--p-body); }
.oxx .oxf-locs { display: grid; gap: 12px; }
/* Întrebările pe toată lățimea: de la 4 întrebări, două coloane pe desktop, fiecare cu întrebările ei. */
.oxx .oxf-sec .oxb-faq { max-width: none; }
.oxx .oxf-faq-col { display: grid; gap: var(--u-gap, 10px); align-content: start; min-width: 0; }
.oxx .oxf-sec .oxb-places { margin-top: 20px; }

/* Clipurile: cele late câte două pe rând, cele verticale câte trei (pe telefon, câte unul). */
.oxx .oxf-vids { display: grid; gap: 22px; align-items: start; }
.oxx .oxf-vids + .oxf-vids { margin-top: 22px; }
.oxx .oxf-vid { min-width: 0; }
.oxx .oxf-vid-k { margin: 0 0 8px; font: 700 13px/1.35 var(--p-display); color: var(--p-gold-ink); }
.oxx .oxf-vids.is-tall .oxb-video video { max-height: 72vh; }

/* Articolele: rânduri cu data, titlul și începutul. */
.oxx .oxf-arts a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px 6px; color: var(--p-ink); transition: background-color .2s; }
.oxx .oxf-arts a:hover { background: var(--p-soft); }
.oxx .oxf-art-txt { display: grid; gap: 3px; min-width: 0; }
.oxx .oxf-art-txt small { font: 600 12.5px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxf-art-txt b { font: 700 16px/1.35 var(--p-display); }
.oxx .oxf-arts a:hover b { color: var(--p-navy); }
.oxx .oxf-art-txt span { font: 400 14px/1.5 var(--p-text); color: var(--p-body); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.oxx .oxf-arts a > svg { flex: none; color: var(--p-navy-3); }

/* Formularul de programare al paginii: pe lățimea paginii, fără banda lui. */
.oxx .oxf-sec.is-form { scroll-margin-top: calc(var(--p-header-h) + 66px); }
/* Panoul formularului: nuanțat în diagonală, cu chenar fin; formularul pe un card alb cu umbră ușoară; în stânga, pe
   desktop, textul și caseta cu rândurile fișei (cine consultă, WhatsApp, programul de azi). */
.oxx .oxf-sec.is-form .oxb-form-box { background: linear-gradient(140deg, var(--p-tint) 0%, var(--p-soft) 62%, #fff 100%); border: 1px solid var(--p-line); }
.oxx .oxf-sec.is-form .oxb-form { border: 1px solid var(--p-line); border-radius: 18px; box-shadow: 0 1px 2px rgb(15 23 42 / .04), 0 24px 48px -32px rgb(28 57 142 / .35); }
.oxx .oxf-sec.is-form .oxb-submit { min-height: 50px; padding-inline: 22px; }
/* Sub textul formularului, pe desktop: butonul WhatsApp (pe telefon e în bara de jos a site-ului). */
.oxx .oxf-form-alt { display: none; }
.oxx .oxf-wa-btn svg { color: #1f9d55; }

/* Banda „Alte specialități” / „Alte servicii”: pastile pe un fundal deschis. */
.oxx .oxf-others { padding-block: calc(var(--u-sec, 28px) * .9); background: var(--p-soft); border-top: 1px solid var(--p-line); }
.oxx .oxf-others-head { display: flex; align-items: baseline; justify-content: space-between; gap: 8px 20px; flex-wrap: wrap; margin-bottom: 16px; }
.oxx.oxx .oxf-others-head h2 { margin: 0; font: 800 clamp(1.15rem, 1.05rem + .5vw, 1.4rem)/1.2 var(--p-display); letter-spacing: -.02em; color: var(--p-ink); }
/* Pe telefon pastilele stau pe un singur rând glisant (nu un zid de linkuri); pe ecranele mari, pe mai multe rânduri. */
.oxx .oxf-others ul { display: flex; gap: 8px; margin: 0 calc(-1 * var(--p-gutter)); padding: 2px var(--p-gutter) 4px; list-style: none; overflow-x: auto; scrollbar-width: none; }
.oxx .oxf-others ul::-webkit-scrollbar { display: none; }
.oxx .oxf-others li { flex: none; }
.oxx .oxf-others li a { white-space: nowrap; display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border-radius: 999px; background: #fff; border: 1px solid var(--p-line); font: 600 14px/1.25 var(--p-display); color: var(--p-ink); transition: border-color .2s, color .2s; }
.oxx .oxf-others li a:hover { border-color: var(--p-navy-3); color: var(--p-navy); }
.oxx .oxf-others li a svg { flex: none; color: var(--p-navy-3); }
.oxx .oxf-others-head .oxp-link { font-size: 14.5px; }
/* Banda finală nu se lipește de banda cu pastile. */
.oxx.oxx .oxf-others + :is(.oxh-final, .oxb-reviews) { padding-top: calc(var(--u-sec, 28px) * .9); }

@media (min-width: 640px) {
  .oxx .oxf-cta { display: flex; flex-wrap: wrap; }
  .oxx .oxf-cta .oxp-btn { width: auto; }
  .oxx .oxf-docs { grid-auto-columns: minmax(170px, 30%); }
  .oxx .oxf-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .oxx .oxb-prose ul.oxf-checks.is-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
  .oxx .oxf-vids.is-wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .oxx .oxf-vids.is-tall { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .oxx .oxf-locs { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
  .oxx .oxf-doc1-skills { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
  .oxx .oxf-doc1-cta { display: flex; flex-wrap: wrap; }
  .oxx .oxf-faq-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; align-items: start; }
  .oxx .oxf-doc1-cta .oxp-btn { width: auto; }
}
@media (min-width: 768px) {
  .oxx .oxf-svcs { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; border-top: 0; }
  .oxx .oxf-svcs > li:nth-child(-n+2) { border-top: 1px solid var(--p-line); }
  .oxx .oxf-svcs:has(> li:only-child) { grid-template-columns: minmax(0, 1fr); }
  .oxx .oxf-others ul { flex-wrap: wrap; margin: 0; padding: 0; overflow: visible; }
  .oxx .oxf-svcs.is-folded > li:nth-child(n+7) { display: none; }
  .oxx .oxf-docs { grid-auto-flow: row; grid-template-columns: repeat(auto-fill, minmax(168px, 1fr)); margin: 0; padding: 0; overflow: visible; }
  .oxx .oxf-prices.is-multi { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 40px; align-items: start; }
  .oxx .oxf-vids.is-tall { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .oxx .oxf-doc1 { grid-template-columns: 260px minmax(0, 1fr); }
  .oxx .oxf-doc1-pic { height: auto; min-height: 360px; }
  .oxx .oxf-doc1-txt { padding: 28px 32px; }
  .oxx .oxf-fig:is(.is-tall, .is-square) { float: right; width: 260px; margin: 6px 0 18px 32px; }
  .oxx .oxf-fig:is(.is-tall, .is-square) img { max-height: none; }
}
@media (min-width: 1024px) {
  .oxx .oxf-hero { padding: 26px 0 52px; }
  .oxx .oxf-hero-in { grid-template-columns: minmax(0, 1fr) 460px; gap: 64px; align-items: center; }
  .oxx .oxf-tel { display: inline-flex; }
  .oxx .oxf-row { min-height: 78px; padding: 16px 20px; }
  /* Pe desktop bara secțiunilor rămâne sub antetul site-ului, cu butonul de programare; secțiunea curentă e subliniată. */
  .oxx .oxf-nav { position: sticky; top: var(--p-header-h); z-index: 30; background: rgb(255 255 255 / .94); -webkit-backdrop-filter: saturate(160%) blur(12px); backdrop-filter: saturate(160%) blur(12px); }
  .oxx .oxf-nav ul { gap: 4px; margin: 0; padding: 0; }
  .oxx .oxf-nav a:not(.oxp-btn) { min-height: 58px; padding: 0 14px; border: 0; border-radius: 0; font-size: 15px; }
  .oxx .oxf-nav a:not(.oxp-btn)[aria-current]::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: -1px; height: 3px; border-radius: 3px 3px 0 0; background: var(--p-navy); }
  .oxx .oxf-nav a:not(.oxp-btn)[aria-current] { color: var(--p-navy); }
  .oxx .oxf-nav-cta { display: inline-flex; flex: none; }
  .oxx .oxf-sec, .oxx .oxf-anchor, .oxx .oxf-sec.is-form { scroll-margin-top: calc(var(--p-header-h) + 70px); }
  .oxx .oxf-svc { padding: 16px 10px; }
  .oxx .oxf-svc small { -webkit-line-clamp: 1; }
  .oxx .oxf-about.has-toc { grid-template-columns: minmax(0, 1fr) 260px; gap: 64px; align-items: start; }
  .oxx .oxf-sec.is-form .oxb-form-box { grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: 56px; padding: 48px; }
  .oxx .oxf-form-alt { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; }
  .oxx .oxf-toc { display: grid; gap: 10px; position: sticky; top: calc(var(--p-header-h) + 84px); padding-left: 18px; border-left: 1px solid var(--p-line); }
  .oxx .oxf-toc p { margin: 0; font: 700 11px/1.2 var(--p-display); letter-spacing: .09em; text-transform: uppercase; color: var(--p-mute); }
  .oxx .oxf-toc ol { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
  .oxx .oxf-toc a { position: relative; display: block; padding: 6px 0; font: 500 14px/1.4 var(--p-text); color: var(--p-body); transition: color .2s; }
  .oxx .oxf-toc a:hover { color: var(--p-navy); }
  .oxx .oxf-toc a[aria-current] { color: var(--p-navy); font-weight: 700; }
  .oxx .oxf-toc a[aria-current]::before { content: ""; position: absolute; left: -19px; top: 6px; bottom: 6px; width: 2px; border-radius: 2px; background: var(--p-navy); }
  .oxx .oxf-fold { --oxb-fold: 560px; --oxf-target: 560px; }
  .oxx .oxf-fold.is-sections { --oxb-fold: 900px; --oxf-target: 900px; }
  .oxx .oxf-doc1 { grid-template-columns: 340px minmax(0, 1fr); }
  .oxx .oxf-doc1-pic { height: auto; min-height: 420px; }
  .oxx .oxf-doc1-txt { padding: 36px 44px; gap: 10px; }
  .oxx .oxf-docs { grid-template-columns: repeat(auto-fill, minmax(176px, 1fr)); gap: 18px; }
}

/* ============ Directorul specialităților (/specialitati/, home-premium.mjs specialtiesGrid) ============
   Căutarea și filtrele (lipite sub antetul site-ului pe ecranele mari), apoi câte un rând pe specialitate: numele și
   reperele în stânga, serviciile ca linkuri pe coloane în dreapta; pe telefon unul sub altul. */
.oxx .oxdir-sec { padding-top: 8px; }
.oxx .oxdir-tools { display: grid; gap: 12px; padding: 14px; margin-bottom: 18px; border-radius: var(--p-r-panel); background: var(--p-soft); border: 1px solid var(--p-line); }
.oxx .oxdir-q { position: relative; display: flex; align-items: center; }
.oxx .oxdir-q svg { position: absolute; left: 16px; color: var(--p-navy-3); pointer-events: none; }
.oxx .oxdir-q input { width: 100%; min-height: 54px; padding: 0 16px 0 50px; border-radius: 12px; border: 1px solid var(--p-line-2); background: #fff; font: 500 16.5px/1.2 var(--p-text); color: var(--p-ink); }
.oxx .oxdir-q input::placeholder { color: var(--p-mute); }
.oxx .oxdir-q input:focus { outline: 2px solid var(--p-navy-3); outline-offset: 1px; }
.oxx .oxdir-filters { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.oxx .oxdir-filters [role="group"] { display: flex; flex-wrap: wrap; gap: 6px; }
.oxx .oxdir-filters button { min-height: 36px; padding: 6px 13px; border-radius: 999px; border: 1px solid var(--p-line-2); background: #fff; font: 600 13.5px/1 var(--p-text); color: var(--p-body); cursor: pointer; }
.oxx .oxdir-filters button:hover { border-color: var(--p-navy-3); color: var(--p-navy); }
.oxx .oxdir-filters button[aria-pressed="true"] { background: var(--p-navy); border-color: var(--p-navy); color: #fff; }
.oxx .oxdir-filters button:focus-visible { outline: 2px solid var(--p-navy-3); outline-offset: 2px; }
.oxx .oxdir-count { margin: 0; min-height: 1em; font: 600 13.5px/1.3 var(--p-text); color: var(--p-mute); }
.oxx .oxdir-count:empty { display: none; }
.oxx .oxdir:not([data-dir-ready]) .oxdir-filters { display: none; }

.oxx .oxdir-list { display: grid; margin: 0; padding: 0; list-style: none; border-radius: var(--p-r-panel); background: #fff; border: 1px solid var(--p-line); overflow: hidden; }
.oxx .oxdir-item { display: grid; gap: 12px; padding: 18px 16px; }
.oxx .oxdir-item + .oxdir-item { border-top: 1px solid var(--p-line); }
.oxx .oxdir-item[hidden], .oxx .oxdir-svcs li[hidden] { display: none; }
.oxx .oxdir-spec { display: grid; gap: 10px; align-content: start; }
.oxx .oxdir-name { display: flex; align-items: flex-start; gap: 12px; color: var(--p-ink); }
.oxx .oxdir-name > span:last-child { display: grid; gap: 3px; min-width: 0; }
.oxx .oxdir-name h2 { margin: 0; font: 700 18px/1.25 var(--p-display); letter-spacing: -.015em; color: var(--p-ink); }
.oxx .oxdir-name:hover h2 { color: var(--p-navy); text-decoration: underline; text-underline-offset: 3px; }
.oxx .oxdir-name small { font: 400 14px/1.5 var(--p-text); color: var(--p-body); }
.oxx .oxdir-ic { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: var(--p-tint); color: var(--p-navy); }
.oxx .oxdir-meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 0 56px; padding: 0; list-style: none; }
.oxx .oxdir-meta li { display: inline-flex; align-items: center; gap: 5px; padding: 4px 9px; border-radius: 999px; background: var(--p-soft); font: 600 12.5px/1.2 var(--p-text); color: var(--p-body); }
.oxx .oxdir-meta li.is-cas { background: var(--p-gold-soft); color: var(--p-gold-ink); }
.oxx .oxdir-meta svg { color: currentColor; }
.oxx .oxdir-body { display: grid; gap: 10px; align-content: start; }
.oxx .oxdir-svcs { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.oxx .oxdir-svcs a { display: block; padding: 8px 10px; border-radius: 8px; font: 500 15px/1.35 var(--p-text); color: var(--p-ink); }
.oxx .oxdir-svcs a:hover { background: var(--p-soft); color: var(--p-navy); }
.oxx .oxdir-none { margin: 0; font: 400 14.5px/1.5 var(--p-text); color: var(--p-mute); }
.oxx .oxdir-all { justify-self: start; display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; font: 700 14px/1.3 var(--p-display); color: var(--p-navy); }
.oxx .oxdir-empty { display: grid; gap: 8px; justify-items: start; margin-top: 16px; padding: 22px; border-radius: var(--p-r-panel); background: #fff; border: 1px dashed var(--p-line-2); }
.oxx .oxdir-empty[hidden] { display: none; }
.oxx .oxdir-empty b { font: 700 17px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxdir-empty p { margin: 0; font: 400 15px/1.55 var(--p-text); color: var(--p-body); }
.oxx .oxdir-empty-cta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
.oxx .oxdir-help { display: grid; gap: 10px; margin: 18px 0 0; padding: 0; list-style: none; }
.oxx .oxdir-help a { display: flex; align-items: center; gap: 14px; height: 100%; padding: 16px; border-radius: var(--p-r-card); background: var(--p-soft); border: 1px solid var(--p-line); color: var(--p-ink); transition: border-color .2s; }
.oxx .oxdir-help a:hover { border-color: var(--p-line-2); }
.oxx .oxdir-help a > span:nth-child(2) { flex: 1; display: grid; gap: 3px; }
.oxx .oxdir-help b { font: 700 16px/1.3 var(--p-display); }
.oxx .oxdir-help small { font: 400 14px/1.5 var(--p-text); color: var(--p-body); }
.oxx .oxdir-help .oxdir-ic { background: #fff; }
.oxx .oxdir-help a > svg { flex: none; color: var(--p-navy-3); }
@media (min-width: 640px) {
  .oxx .oxdir-svcs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px 12px; }
  .oxx .oxdir-help { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  .oxx .oxdir-tools { position: sticky; top: calc(var(--p-header-h) + 10px); z-index: 20; grid-template-columns: minmax(0, 1fr) auto; align-items: center; padding: 12px 14px; box-shadow: var(--p-shadow-sm); }
  .oxx .oxdir-filters { justify-content: flex-end; }
  .oxx .oxdir-count { grid-column: 1 / -1; }
  .oxx .oxdir-item { grid-template-columns: minmax(0, 380px) minmax(0, 1fr); gap: 32px; padding: 22px 24px; }
  .oxx .oxdir-svcs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
/* Antetul paginii /specialitati/ deasupra directorului: compact, cu cifrele pe un rând (căutarea vine imediat). */
.oxx.oxx .oxdir .oxdir-name h2 { margin: 0; font: 700 18px/1.25 var(--p-display); letter-spacing: -.015em; color: var(--p-ink); }
.oxx.oxx .oxdir .oxdir-name:hover h2 { color: var(--p-navy); }
.oxx.oxx .oxh-phero:has(~ .oxdir-sec) { padding-block: 20px 8px; }
.oxx.oxx .oxh-phero:has(~ .oxdir-sec) .oxh-pfacts { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; padding: 0; border: 0; background: none; box-shadow: none; }
.oxx.oxx .oxh-phero:has(~ .oxdir-sec) .oxh-pfacts li { display: inline-flex; align-items: baseline; gap: 6px; padding: 8px 14px; border: 1px solid var(--p-line); border-radius: 999px; background: #fff; }
.oxx.oxx .oxh-phero:has(~ .oxdir-sec) .oxh-pfacts b { font: 800 17px/1 var(--p-display); color: var(--p-ink); }
.oxx.oxx .oxh-phero:has(~ .oxdir-sec) .oxh-pfacts span { font: 500 14px/1 var(--p-text); color: var(--p-body); }
@media (min-width: 1024px) {
  .oxx.oxx .oxh-phero:has(~ .oxdir-sec) { padding-block: 32px 8px; }
  .oxx.oxx .oxh-phero:has(~ .oxdir-sec) .oxh-phero-in { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; }
  .oxx.oxx .oxh-phero:has(~ .oxdir-sec) .oxh-pfacts { margin: 0; flex-wrap: nowrap; }
}

/* ============ Grilele de carduri: aranjarea echilibrată (fără un card singur pe ultimul rând, fără coloane înguste) ============
   În coloana de text a fișei („Despre”, ~850px), cardurile (traseele, alegerea traseului, listele pe coloane) stau pe
   cel mult două coloane (trei, când sunt exact trei); un card rămas singur ia tot rândul, cu iconița lângă titlu. Pe
   paginile late, traseele de 5, 6 sau 9 carduri stau pe trei coloane (la 5, ultimele două se lățesc și umplu rândul).
   Grilele de medici cu mai multe rânduri își centrează ultimul rând; grupurile de trei (clipuri, liste de tarife,
   galerii) stau pe trei coloane. */
@media (min-width: 768px) {
  .oxx .oxf-read :is(.oxb-cards, .oxb-choices, .oxb-colgrid) { grid-auto-flow: row; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; margin-inline: 0; padding-inline: 0; }
  .oxx .oxf-read :is(.oxb-cards, .oxb-choices, .oxb-colgrid):has(> :nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .oxx .oxf-read :is(.oxb-cards, .oxb-choices, .oxb-colgrid):has(> :only-child) { grid-template-columns: minmax(0, 1fr); }
  .oxx .oxf-read :is(.oxb-cards, .oxb-choices, .oxb-colgrid):not(:has(> :nth-child(3):last-child)) > :last-child:nth-child(odd) { grid-column: 1 / -1; }
  /* Cardul lat: iconița lângă titlu, textul pe lățimea de lectură. */
  .oxx .oxf-read .oxb-cards > :last-child:nth-child(odd) .oxb-top { flex-direction: row; align-items: center; gap: 14px; }
  .oxx .oxf-read :is(.oxb-cards, .oxb-choices, .oxb-colgrid) > :last-child:nth-child(odd) p { max-width: 68ch; }
  .oxx .oxn-gallery:has(> :nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  /* Traseele pe paginile late: 5, 6 sau 9 carduri pe trei coloane (bază de șase; la 5, ultimele două iau câte trei). */
  .oxx .oxb-cards:not(.oxf-read .oxb-cards):is(:has(> :nth-child(5):last-child), :has(> :nth-child(6):last-child), :has(> :nth-child(9):last-child)) { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .oxx .oxb-cards:not(.oxf-read .oxb-cards):is(:has(> :nth-child(5):last-child), :has(> :nth-child(6):last-child), :has(> :nth-child(9):last-child)) > * { grid-column: span 2; }
  .oxx .oxb-cards:not(.oxf-read .oxb-cards):has(> :nth-child(5):last-child) > :nth-last-child(-n+2) { grid-column: span 3; }
  /* Medicii: de la cinci, rânduri de câte patru, ultimul centrat (aceeași mărime pentru toate cardurile). */
  .oxx :is(.oxh-team-grid, .oxn-team .oxh-team-grid):has(> :nth-child(5)) { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; }
  .oxx :is(.oxh-team-grid, .oxn-team .oxh-team-grid):has(> :nth-child(5)) > * { flex: 0 0 calc((100% - 60px) / 4); min-width: 0; }
  /* Fotografia rămâne în proporția cardului (4:3), oricât de înaltă e poza originală. */
  .oxx .oxh-team-grid .oxh-doc figure { flex: none; min-height: 0; overflow: hidden; }
  .oxx .oxh-team-grid .oxh-doc figure img { display: block; }
  .oxx .oxd-grid { display: flex; flex-wrap: wrap; justify-content: center; }
  .oxx .oxd-grid > li { flex: 0 0 calc((100% - 60px) / 4); min-width: 0; }
  .oxx .oxd-grid > li > * { width: 100%; }
  /* Medicii din fișă: de la șapte, patru (sau cinci) pe rând, nu șase plus unul. */
  .oxx .oxf-docs:is(:has(> :nth-child(7):last-child), :has(> :nth-child(8):last-child)) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .oxx .oxf-docs:is(:has(> :nth-child(9):last-child), :has(> :nth-child(10):last-child)) { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  /* Grupurile de trei. */
  .oxx :is(.oxf-vids.is-wide, .oxf-prices.is-multi):has(> :nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* ============ Fișa pe telefon: antetul compact, bara secțiunilor cu semn că rândul continuă ============
   Titlul mai mic, fără butonul „Sună” (e în bara de jos a site-ului), fișa cu rânduri joase (nota pe un rând). Pastilele
   secțiunilor și ale celorlalte servicii se estompează la marginea din dreapta: se vede că rândul continuă. */
@media (max-width: 639px) {
  .oxx .oxf-hero { padding: 10px 0 20px; }
  .oxx .oxf-hero-in { gap: 18px; }
  .oxx .oxf-kind { gap: 8px; font-size: 11.5px; }
  .oxx .oxf-ic { width: 30px; height: 30px; border-radius: 9px; }
  .oxx.oxx .oxf-hero h1 { margin-top: 12px; font-size: 1.75rem; line-height: 1.1; letter-spacing: -.03em; }
  .oxx.oxx .oxf-hero h1 .oxf-sub { margin-top: 6px; font-size: .64em; }
  .oxx .oxf-lead { margin-top: 10px; font-size: 16px; line-height: 1.55; }
  .oxx .oxf-cta { margin-top: 16px; }
  .oxx .oxf-cta a[href^="tel:"] { display: none; }
  .oxx .oxf-row { min-height: 0; gap: 12px; padding: 11px 14px; }
  .oxx .oxf-row-ic, .oxx .oxf-pics.is-one .oxf-pic { width: 36px; height: 36px; border-radius: 10px; }
  .oxx .oxf-pics.is-one { width: 36px; }
  .oxx .oxf-pics:not(.is-one) .oxf-pic { width: 34px; height: 34px; }
  .oxx .oxf-row-t b { font-size: 15.5px; }
  .oxx .oxf-row-t em { font-size: 12.5px; -webkit-line-clamp: 1; }
  .oxx .oxf-row-go { width: 26px; height: 26px; }
  .oxx .oxf-where li { min-height: 30px; }
  .oxx .oxf-where a { font-size: 14.5px; }
}
@media (max-width: 1023px) {
  .oxx .oxf-nav ul, .oxx .oxf-others ul { padding-right: calc(var(--p-gutter) + 28px); -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 44px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 44px), transparent); }
  .oxx .oxf-nav ul { gap: 6px; padding-block: 10px; }
  .oxx .oxf-nav a:not(.oxp-btn) { min-height: 34px; padding: 0 13px; font-size: 13.5px; }
}

/* ============ Telefonul: liste fără glisare laterală, medicii ca rânduri ============
   Pe telefon nimeni nu ghicește că o bandă de carduri se glisează lateral: traseele (listele editoriale) stau unul sub
   altul (pe tabletă câte două), cu înălțimea după text. Medicii (pagina /doctori/, secțiunea Medici a fișei, echipele
   din pagini) sunt rânduri: fotografia, numele, rolul, săgeata — se citesc dintr-o privire. */
@media (max-width: 1023px) {
  .oxx .oxb-cards { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: minmax(0, 1fr); overflow: visible; margin-inline: 0; padding-inline: 0; }
  .oxx .oxb-card { height: auto; }
  .oxx .oxb-card .oxb-top { flex-direction: row; align-items: center; gap: 12px; }
  .oxx .oxf-nav a:not(.oxp-btn)[aria-current] { background: var(--p-navy); border-color: var(--p-navy); color: #fff; }
  .oxx .oxd-filter { padding-right: calc(var(--p-gutter) + 28px); -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 44px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 44px), transparent); }
}
@media (min-width: 640px) and (max-width: 1023px) {
  .oxx .oxb-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 639px) {
  .oxx .oxd-grid { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .oxx .oxd-card, .oxx :is(.oxb-docs, .oxn-team) .oxh-team-grid .oxh-doc { position: relative; flex-direction: row; align-items: center; gap: 14px; padding: 10px 40px 10px 10px; border-radius: 16px; }
  .oxx .oxd-card figure, .oxx :is(.oxb-docs, .oxn-team) .oxh-team-grid .oxh-doc figure { flex: none; width: 84px; height: 84px; aspect-ratio: auto; border-radius: 12px; overflow: hidden; }
  .oxx .oxd-card figure img, .oxx :is(.oxb-docs, .oxn-team) .oxh-team-grid .oxh-doc figure img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 25%; }
  .oxx .oxd-card-body, .oxx :is(.oxb-docs, .oxn-team) .oxh-team-grid .oxh-doc-body { padding: 0; gap: 3px; }
  .oxx .oxd-card-body b, .oxx :is(.oxb-docs, .oxn-team) .oxh-team-grid .oxh-doc b { font-size: 16px; }
  .oxx .oxd-card-body > span:not(.oxp-link), .oxx :is(.oxb-docs, .oxn-team) .oxh-team-grid .oxh-doc span { font-size: 13.5px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .oxx .oxd-card-body .oxp-link { display: none; }
  .oxx .oxd-card::after, .oxx :is(.oxb-docs, .oxn-team) .oxh-team-grid .oxh-doc::after, .oxx .oxf-docs a::after { content: ""; position: absolute; right: 14px; top: 50%; width: 18px; height: 18px; margin-top: -9px; background: var(--p-navy-3); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center / contain no-repeat; }
  .oxx :is(.oxb-docs, .oxn-team) .oxh-team-grid { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: minmax(0, 1fr); gap: 10px; overflow: visible; margin-inline: 0; padding-inline: 0; }
  /* Medicii din fișă: aceleași rânduri. */
  .oxx .oxf-docs { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: minmax(0, 1fr); gap: 10px; margin: 0; padding: 0; overflow: visible; }
  .oxx .oxf-docs a { position: relative; display: grid; grid-template-columns: 76px minmax(0, 1fr); grid-template-rows: auto auto; align-content: center; gap: 2px 14px; padding: 10px 40px 10px 10px; border-radius: 16px; border: 1px solid var(--p-line); background: #fff; }
  .oxx .oxf-docs .oxf-doc-pic { grid-row: 1 / 3; width: 76px; height: 76px; aspect-ratio: auto; margin: 0; border-radius: 12px; }
  .oxx .oxf-docs b { align-self: end; font-size: 16px; }
  .oxx .oxf-docs small { align-self: start; }
}

/* /assets/site/clinic.css */
/* Tema „clinic”: aspectul implicit al site-ului (Setări → „Aspectul site-ului”; layout.mjs pune clasa .is-clinic pe
   .oxx și încarcă foaia; „premium” o scoate și revine la designul bleumarin și auriu). Se aplică peste tot: antetul,
   subsolul, paginile în designul nou (premium.css, premium-pages.css) și paginile cu marcajul original (oxx.css, prin
   variabilele lui). Aceleași secțiuni și aceleași date din Brain; se schimbă doar aspectul: un singur font (Plus Jakarta Sans, 400–800, și pentru text), text gri-ardezie, titluri foarte groase, un
   singur albastru pentru acțiuni, carduri albe cu chenar fin și fără umbre, colțuri mici (butoane 8px, carduri 12px,
   panouri 16px), etichete mici cu majuscule, subsolul bleumarin foarte închis.

   Mobil întâi, ca premium.css; regulile au o clasă în plus (.oxx.is-clinic), deci câștigă fără !important. */

/* ——— Tokenii: premium.css e construit pe ei, deci cea mai mare parte a schimbării vine de aici. „Auriul” devine
   albastrul secundar (iconițe, linia parcursului), iar „auriul închis” un turcoaz pentru etichete. */
.oxx.is-clinic {
  --p-navy: #1c398e; --p-navy-2: #1e40af; --p-navy-3: #3566b0;
  --p-ink: #0f172a; --p-head: #1b2a41; --p-body: #414d5e; --p-mute: #64748b; --p-faint: #94a3b8;
  --p-line: #e4e9f0; --p-line-2: #d3dce8; --p-line-hover: #c3d2e8;
  --p-soft: #f7f9fc; --p-tint: #eff4fb;
  --p-gold: #3566b0; --p-gold-ink: #2a7288; --p-gold-soft: #eaf4f6;
  --p-dark: #071628;
  --p-r-btn: 8px; --p-r-card: 12px; --p-r-panel: 16px;
  --p-shadow-sm: none; --p-shadow-md: none; --p-shadow-lg: none;
  --p-display: "Plus Jakarta Sans", "Plus Jakarta Sans Fallback", ui-sans-serif, system-ui, sans-serif;
  --p-text: var(--p-display);
  font-family: var(--p-text);
  color: var(--p-body);
  /* Variabilele marcajului original (oxx.css, base.css): același font, aceleași culori și forme. */
  --navy: #1c398e; --navy-2: #1e40af; --gold: #3566b0; --gold-2: #2a7288;
  --ink: #0f172a; --body: #414d5e; --mute: #64748b; --ink-soft: #414d5e; --ink-mute: #64748b;
  --line: #e4e9f0; --line-soft: #eef2f7; --soft: #f7f9fc; --cas: #eff4fb;
  --bg-deep: #eff4fb; --bg-alt: #f7f9fc; --surface-strong: #f7f9fc; --glass-strong: #f7f9fc; --glass-border: #e4e9f0;
  --accent: #2a7288; --accent-strong: #1c398e; --accent-light: #3566b0; --accent-grad: linear-gradient(135deg, #2b4fae, #1c398e);
  --serif: var(--p-display); --sans: var(--p-display); --font-head: var(--p-display);
  --shadow-sm: 0 1px 2px rgb(15 23 42 / .05); --shadow-md: 0 1px 3px rgb(15 23 42 / .06); --shadow-lg: 0 2px 6px rgb(15 23 42 / .06);
  --ring: 0 0 0 3px rgb(53 102 176 / .3), 0 0 0 4px #3566b0;
  --r-sm: 8px; --r-md: 12px; --r-lg: 14px; --r-xl: 16px;
}
/* Titlurile paginilor: 800, ca pe homepage (culoarea rămâne a componentei: închisă pe alb, albă pe panourile închise). */
.oxx.is-clinic main :is(h1, h2) { font-family: var(--p-display); font-weight: 800; letter-spacing: -.02em; }
.oxx.is-clinic main h3 { font-family: var(--p-display); }

.oxx.is-clinic :is(.oxp-header, .oxp-drawer, .oxp-footer, .oxp-search, .oxh) :is(h1, h2, h3, h4) { letter-spacing: -.015em; }
/* Eticheta mică cu majuscule (titlurile coloanelor, etichetele cifrelor): 12px, 700, spațiere largă. */
.oxx.is-clinic .oxp-foot-col summary h3, .oxx.is-clinic .oxh-team-title { font: 700 12px/1.3 var(--p-display); letter-spacing: .1em; text-transform: uppercase; }

/* ——— Butoanele: compacte, plate, colțuri de 8px; principalul albastru închis, secundarul alb cu chenar. */
.oxx.is-clinic .oxp-btn { min-height: 46px; padding: 0 18px; font-weight: 600; letter-spacing: 0; }
.oxx.is-clinic .oxp-btn-primary { box-shadow: none; }
.oxx.is-clinic .oxp-btn-ghost { color: var(--p-ink); border-width: 1px; }
.oxx.is-clinic .oxp-btn-ghost:hover { border-color: var(--p-line-hover); background: var(--p-soft); }
.oxx.is-clinic .oxp-btn-sm { min-height: 40px; padding: 0 14px; }
.oxx.is-clinic .oxp-link { font-weight: 700; color: var(--p-navy); }
.oxx.is-clinic .oxp-icon-btn { border-color: var(--p-line); }
.oxx.is-clinic .oxh-railnav button { border-radius: var(--p-r-btn); border-color: var(--p-line); }
.oxx.is-clinic .oxh-railnav button:hover { border-color: var(--p-line-hover); background: var(--p-soft); }

/* ——— Bara de sus și antetul: albe, cu o linie fină; meniul în gri închis, pagina curentă pe fond albastru deschis. */
.oxx.is-clinic .oxp-topbar { background: #fff; color: var(--p-mute); border-bottom: 1px solid var(--p-line); font: 500 13px/1 var(--p-text); }
.oxx.is-clinic .oxp-topbar a:hover { color: var(--p-ink); }
.oxx.is-clinic .oxp-topbar svg { color: var(--p-navy-3); }
.oxx.is-clinic .oxp-header { background: rgb(255 255 255 / .95); border-bottom-color: var(--p-line); }
.oxx.is-clinic .oxp-header[data-scrolled] { box-shadow: 0 1px 2px rgb(15 23 42 / .05); }
.oxx.is-clinic .oxp-nav-link { font: 500 15px/1 var(--p-display); color: var(--p-ink); border-radius: 6px; padding: 0 10px; }
.oxx.is-clinic .oxp-nav-link:hover, .oxx.is-clinic .oxp-nav-link[aria-expanded="true"] { background: #f1f5f9; }
.oxx.is-clinic .oxp-nav-link[aria-current="page"] { background: var(--p-tint); color: var(--p-navy); box-shadow: none; border-radius: 6px; }
.oxx.is-clinic .oxp-book { border-radius: 6px; }

/* ——— Secțiunile: titluri 800 în bleumarin, text gri-ardezie mai mare și mai aerisit. */
.oxx.is-clinic .oxh-head h2, .oxx.is-clinic .oxh h2 { font-size: clamp(1.6rem, 1.15rem + 1.6vw, 2.1rem); line-height: 1.2; font-weight: 800; color: var(--p-head); }
.oxx.is-clinic .oxh h3 { color: var(--p-head); }
.oxx.is-clinic .oxh-head p, .oxx.is-clinic .oxh-intro { font: 400 16.5px/1.7 var(--p-text); color: var(--p-mute); }

/* ——— Antetul paginii: textul întâi (titlul, textul, butoanele), apoi fotografia într-un cadru cu chenar și
   reperele ca trei casete separate (cifra în albastru). Desktop: textul și reperele în stânga, fotografia în dreapta. */
.oxx.is-clinic .oxh-hero.has-img { display: flex; flex-direction: column; padding: 28px 0 8px; background: linear-gradient(180deg, var(--p-soft) 0%, #fff 70%); border-bottom: 1px solid var(--p-line); }
.oxx.is-clinic .oxh-hero-in { order: 1; }
.oxx.is-clinic .oxh-hero.has-img .oxh-hero-copy { margin: 0; padding: 0; border-radius: 0; background: none; }
.oxx.is-clinic .oxh-hero h1 { font-size: clamp(2rem, 1.25rem + 3.2vw, 3.25rem); line-height: 1.1; font-weight: 800; letter-spacing: -.025em; color: var(--p-ink); }
.oxx.is-clinic .oxh-hero h1 span { color: var(--p-navy-3); font-weight: 800; }
.oxx.is-clinic .oxh-lead { margin-top: 14px; font: 400 17px/1.7 var(--p-text); color: #475569; }
.oxx.is-clinic .oxh-cta { margin-top: 24px; }
.oxx.is-clinic .oxh-cta .oxp-btn { min-height: 50px; }
.oxx.is-clinic .oxh-hero-bg { order: 2; height: auto; aspect-ratio: 3 / 2; margin: 22px var(--p-gutter) 0; border-radius: var(--p-r-panel); border: 1px solid var(--p-line); background: var(--p-tint); }
.oxx.is-clinic .oxh-hero-bg::after { display: none; }
.oxx.is-clinic .oxh-facts-wrap { order: 3; }
.oxx.is-clinic .oxh-facts { gap: 8px; margin: 12px 0 20px; border: 0; border-radius: 0; background: none; box-shadow: none; }
.oxx.is-clinic .oxh-fact { justify-content: flex-start; align-items: flex-start; gap: 6px; padding: 14px 12px; border: 1px solid var(--p-line); border-radius: var(--p-r-card); background: #fff; text-align: left; }
.oxx.is-clinic .oxh-fact + .oxh-fact { border-left: 1px solid var(--p-line); }
.oxx.is-clinic .oxh-fact b { font: 800 22px/1 var(--p-display); color: var(--p-navy-3); }
.oxx.is-clinic .oxh-fact span { font: 600 12.5px/1.3 var(--p-text); color: var(--p-mute); }
.oxx.is-clinic .oxh-fact svg { color: var(--p-navy-3); }
@media (min-width: 768px) {
  .oxx.is-clinic .oxh-hero-bg { aspect-ratio: 16 / 9; }
}
@media (min-width: 1024px) {
  /* Grila antetului: marginile flexibile, textul (600px) și fotografia (o coloană de 560px). */
  .oxx.is-clinic .oxh-hero.has-img { display: grid; grid-template-columns: minmax(var(--p-gutter), 1fr) minmax(0, 620px) minmax(0, 556px) minmax(var(--p-gutter), 1fr); grid-template-rows: auto auto; padding: 0; }
  .oxx.is-clinic .oxh-hero-in, .oxx.is-clinic .oxh-facts-wrap { display: contents; }
  .oxx.is-clinic .oxh-hero.has-img .oxh-hero-copy { grid-column: 2; grid-row: 1; align-self: end; max-width: none; padding: 72px 56px 0 0; }
  .oxx.is-clinic .oxh-hero h1 { font-size: clamp(2.6rem, 1.3rem + 2.2vw, 3.4rem); }
  .oxx.is-clinic .oxh-lead { font-size: 18px; max-width: 48ch; margin-top: 18px; }
  .oxx.is-clinic .oxh-cta { margin-top: 30px; }
  .oxx.is-clinic .oxh-facts { grid-column: 2; grid-row: 2; align-self: start; gap: 10px; margin: 36px 56px 72px 0; }
  .oxx.is-clinic .oxh-fact { flex-direction: column; align-items: flex-start; gap: 6px; padding: 18px 18px; }
  .oxx.is-clinic .oxh-fact b { font-size: 28px; }
  .oxx.is-clinic .oxh-fact span { font-size: 13.5px; }
  .oxx.is-clinic .oxh-hero.has-img .oxh-hero-bg { grid-column: 3; grid-row: 1 / span 2; position: relative; inset: auto; height: auto; aspect-ratio: auto; min-height: 480px; margin: 48px 0; }
  .oxx.is-clinic .oxh-hero.has-img .oxh-hero-bg img { object-position: 78% 30%; }
}

/* ——— Serviciile prin CAS: panou gri foarte deschis cu chenar, plăci albe cu chenar, iconița pe fond albastru deschis. */
.oxx.is-clinic .oxh-cas-box { background: var(--p-soft); border: 1px solid var(--p-line); }
.oxx.is-clinic .oxh-cas-badge { border-radius: 10px; border: 1px solid var(--p-line); color: var(--p-navy); }
.oxx.is-clinic .oxh-cas-tile { border: 1px solid var(--p-line); border-radius: var(--p-r-card); font-weight: 600; }
.oxx.is-clinic .oxh-cas-tile .oxp-ico { border-radius: 8px; background: var(--p-tint); color: var(--p-navy); }
.oxx.is-clinic .oxh-cas-tile:hover { border-color: var(--p-line-hover); transform: none; }

/* ——— „Un singur ecosistem medical”: pe telefon carduri cu chenar; pe desktop lista ca un meniu lateral (elementul ales
   pe fond albastru deschis, cu iconița pe albastru închis) și fotografia într-un cadru cu chenar. */
.oxx.is-clinic .oxh-eco-item { border-radius: var(--p-r-card); }
.oxx.is-clinic .oxh-eco-txt h3 { font-weight: 700; }
.oxx.is-clinic .oxh-eco-txt p { font-size: 15px; line-height: 1.65; }
.oxx.is-clinic .oxh-eco-loc svg { color: var(--p-navy-3); }
@media (min-width: 1024px) {
  .oxx.is-clinic .oxh-eco-item { border: 1px solid transparent; }
  .oxx.is-clinic .oxh-eco-item:hover { background: var(--p-soft); }
  .oxx.is-clinic .oxh-eco-item.is-active { background: var(--p-tint); border-color: #dbe6f5; box-shadow: none; }
  .oxx.is-clinic .oxh-eco-ic { border-radius: 10px; background: #fff; border: 1px solid var(--p-line); color: var(--p-navy); }
  .oxx.is-clinic .oxh-eco-item.is-active .oxh-eco-ic { border-color: var(--p-navy); }
  .oxx.is-clinic .oxh-eco-item.is-active h3 { color: var(--p-navy); }
  .oxx.is-clinic .oxh-eco-stage { border: 1px solid var(--p-line); }
}

/* ——— Parcursul medical: cercurile pe albastru închis, linia în albastru (halo albastru, nu auriu). */
.oxx.is-clinic .oxh-step-n { box-shadow: 0 0 0 6px rgb(53 102 176 / .12); font-weight: 800; }
.oxx.is-clinic .oxh-step h3 { font-weight: 700; }
.oxx.is-clinic .oxh-step p { font-size: 15.5px; line-height: 1.65; }
.oxx.is-clinic .oxh-journey-track.is-armed:not(.is-play) .oxh-step-n { box-shadow: 0 0 0 0 rgb(53 102 176 / 0); }

/* ——— Programele: carduri albe cu chenar, fotografia sus (fără văl), textul dedesubt; nuanța programului (câmpul
   „stil” din Brain) rămâne ca bandă subțire deasupra fotografiei. */
.oxx.is-clinic .oxh-prog { justify-content: flex-start; gap: 8px; min-height: 0; padding: 0 0 18px; border: 1px solid var(--p-line); border-top: 3px solid hsl(var(--h, 214) 55% 42%); background: #fff; color: var(--p-ink); isolation: auto; transition: border-color .2s; }
.oxx.is-clinic .oxh-prog::before { display: none; }
.oxx.is-clinic .oxh-prog img { position: static; z-index: auto; height: auto; aspect-ratio: 16 / 10; margin-bottom: 8px; }
.oxx.is-clinic .oxh-prog:hover { border-color: var(--p-line-hover); border-top-color: hsl(var(--h, 214) 55% 42%); }
.oxx.is-clinic .oxh-prog:hover img { transform: scale(1.03); }
.oxx.is-clinic .oxh-prog h3 { margin: 0 18px; font-size: 18px; font-weight: 700; color: var(--p-head); }
.oxx.is-clinic .oxh-prog p { margin: 0 18px; font: 400 14.5px/1.6 var(--p-text); color: var(--p-body); }
.oxx.is-clinic .oxh-prog .oxp-link { margin: auto 18px 0; padding-top: 6px; color: var(--p-navy); }
@media (min-width: 1024px) { .oxx.is-clinic .oxh-prog { min-height: 0; padding: 0 0 20px; } }

/* ——— Tehnologiile: panou deschis cu chenar (nu bleumarin), plăci albe cu chenar, iconița pe albastru deschis. */
.oxx.is-clinic .oxh-tech-box { color: var(--p-ink); background: var(--p-soft); border: 1px solid var(--p-line); }
.oxx.is-clinic .oxh-tech-box h2 { color: var(--p-head); }
.oxx.is-clinic .oxh-tech-box .oxh-head p { color: var(--p-mute); }
.oxx.is-clinic .oxh-tech-card { background: #fff; border: 1px solid var(--p-line); color: var(--p-ink); }
.oxx.is-clinic .oxh-tech-card:hover { background: #fff; border-color: var(--p-line-hover); transform: none; }
.oxx.is-clinic .oxh-tech-ic { border: 0; border-radius: 10px; background: var(--p-tint); color: var(--p-navy); }
.oxx.is-clinic .oxh-tech-card h3 { color: var(--p-head); font-size: 18px; }
.oxx.is-clinic .oxh-tech-card p { color: var(--p-body); }
.oxx.is-clinic .oxh-tech-go { color: var(--p-faint); }
.oxx.is-clinic .oxh-tech-card:hover .oxh-tech-go { color: var(--p-navy); }

/* ——— Expertiza: cardul medicului coordonator alb, cu chenar; rolurile în turcoaz; cardurile echipei plate. */
.oxx.is-clinic .oxh-lead-doc { background: #fff; border: 1px solid var(--p-line); }
.oxx.is-clinic .oxh-lead-copy h3 { font-weight: 800; color: var(--p-head); }
.oxx.is-clinic .oxh-roles li { font: 700 13px/1.45 var(--p-text); letter-spacing: .02em; color: var(--p-gold-ink); }
.oxx.is-clinic .oxh-lead-copy p { font-size: 16px; line-height: 1.7; }
.oxx.is-clinic .oxh-team-title { color: var(--p-faint); margin-bottom: 16px; }
.oxx.is-clinic .oxh-doc:hover { border-color: var(--p-line-hover); transform: none; }
.oxx.is-clinic .oxh-doc b { font-weight: 700; color: var(--p-head); }
.oxx.is-clinic .oxh-doc small { font-weight: 700; color: var(--p-gold-ink); }
.oxx.is-clinic .oxh-doc-all .oxh-doc-all-n { font-weight: 800; }
.oxx.is-clinic .oxh-doc-all svg { color: #9cc0f0; }
.oxx.is-clinic .oxh-doc-all b { color: #fff; }
.oxx.is-clinic .oxh-doc-all span { color: rgb(255 255 255 / .78); }
.oxx.is-clinic .oxh .oxh-locs-h { font-size: clamp(1.25rem, 1.05rem + .8vw, 1.5rem); font-weight: 800; color: var(--p-head); }
.oxx.is-clinic .oxh-loc h3 { font-weight: 700; color: var(--p-head); }
.oxx.is-clinic .oxh-loc-row svg { color: var(--p-navy-3); }

/* ——— Panourile închise (argumentele, panoul final, alegerea pe fond închis, casetele de programare, „toată echipa”):
   titlurile și textele rămân albe. Regulile generale ale temei (titlurile secțiunilor în bleumarin, textul de sub
   titlu în gri) sunt mai puternice decât cele ale componentelor, deci aici se repune explicit albul. */
.oxx.is-clinic :is(.oxh-why, .oxh-final-box:not(.is-light), .oxb-panel.is-dark, .oxd-book, .oxb-book, .oxn-book, .oxh-doc-all) :is(h1, h2, h3, h4) { color: #fff; }
.oxx.is-clinic :is(.oxh-why, .oxh-final-box:not(.is-light), .oxb-panel.is-dark, .oxd-book, .oxb-book, .oxn-book) :is(.oxh-head p, .oxh-intro) { color: rgb(255 255 255 / .76); }

/* ——— Îndemnul final: panou albastru închis, plat (fără umbră). */
.oxx.is-clinic .oxh-final-box { background: radial-gradient(120% 140% at 100% 0%, #2b4fae 0%, var(--p-navy) 55%); }
.oxx.is-clinic .oxh-final-box h2 { font-weight: 800; color: #fff; }

/* ——— Subsolul: bleumarin foarte închis, text gri-ardezie, iconițele în albastru deschis, titlurile coloanelor ca
   etichete mici cu majuscule. */
.oxx.is-clinic .oxp-footer { background: var(--p-dark); color: #94a3b8; }
.oxx.is-clinic .oxp-footer .oxp-foot-h { color: #94a3b8; }
.oxx.is-clinic .oxp-footer :is(.oxp-tel-big, .oxp-foot-mail, .oxp-badge, .oxp-fl-addr, .oxp-fl-dir) svg { color: #8fb4ea; }
.oxx.is-clinic .oxp-foot-cta .oxp-tel-big { font-weight: 800; }
.oxx.is-clinic .oxp-footer .oxp-link { color: #fff; }
.oxx.is-clinic .oxp-foot-col summary h3 { color: #64748b; }
.oxx.is-clinic .oxp-fl { border-radius: var(--p-r-card); background: rgb(255 255 255 / .03); border-color: rgb(255 255 255 / .08); }
.oxx.is-clinic .oxp-fl-hours .is-today dt::after { background: rgb(53 102 176 / .3); color: #bcd3f5; }
.oxx.is-clinic .oxp-socials a, .oxx.is-clinic .oxp-fl-dir { border-radius: var(--p-r-btn); }

/* ——— Bara de jos de pe telefon: aceleași culori, colțuri mai mici. */
.oxx.is-clinic .oxp-sticky { box-shadow: none; }
.oxx.is-clinic .oxp-sticky a { border-radius: 10px; }

/* ============ Paginile în designul nou ale celorlalte secțiuni (prezentare, CAS, specialități, medici) ============
   Aproape totul vine din tokeni; aici sunt doar valorile scrise direct: chenarele aurii ale iconițelor de pe
   panourile închise, nuanța aurie din fundalul antetelor, a doua linie a titlurilor, linkurile din text. */
.oxx.is-clinic :is(.oxh-why-ic, .oxh-orient-ic, .oxd-book-ic) { border-color: rgb(255 255 255 / .22); background: rgb(255 255 255 / .08); color: #9cc0f0; }
.oxx.is-clinic .oxh-why .oxh-chip { background: rgb(255 255 255 / .1); color: #dbe7fb; }
.oxx.is-clinic :is(.oxh-phero, .oxb-hero) h1 span { color: var(--p-navy-3); }
.oxx.is-clinic .oxb-hero { background: linear-gradient(180deg, var(--p-soft) 0%, #fff 100%); }
.oxx.is-clinic .oxb-prose a { text-decoration-color: rgb(53 102 176 / .5); }
.oxx.is-clinic .oxb-field :is(input, select, textarea) { border-radius: var(--p-r-btn); }
.oxx.is-clinic .oxb-field :is(input, select, textarea):focus { box-shadow: 0 0 0 3px rgb(53 102 176 / .18); }
/* Panourile închise (argumentele, programarea, antetul specialității): albastrul temei, plat. */
.oxx.is-clinic :is(.oxh-why, .oxd-book, .oxb-book, .oxb-panel.is-dark) { background: radial-gradient(120% 140% at 100% 0%, #2b4fae 0%, var(--p-navy) 55%); box-shadow: none; }
/* Cardurile și rândurile care se ridicau la trecerea mouse-ului: doar chenarul se schimbă. */
.oxx.is-clinic :is(.oxh-pick, .oxh-path, .oxh-tile, .oxh-spec, .oxd-card, .oxb-card, .oxb-choice, .oxb-svc, .oxh-loc):hover { transform: none; box-shadow: none; border-color: var(--p-line-hover); }
.oxx.is-clinic :is(.oxh-pick, .oxh-path, .oxh-tile, .oxh-spec, .oxd-card, .oxb-card, .oxb-choice, .oxb-col, .oxb-svcs, .oxb-price-card, .oxb-q, .oxh-q, .oxb-review, .oxb-form) { box-shadow: none; }

/* ============ Paginile cu marcajul original (oxx.css): ce nu vine din variabile ============ */
/* Antetul blocului „hero” vechi (blocks.mjs, 35 de pagini: tarife, politici, servicii de recuperare…) are fundalul
   bleumarin scris în atributul style, sub text închis (greu de citit și pe designul anterior). Tema îi pune fundalul
   deschis al antetelor noi și spațiul de sus potrivit (cel vechi era pentru un meniu transparent deasupra); !important doar
   aici, pentru că altfel stilul din atribut nu se poate suprascrie. */
.oxx.is-clinic main section[style*="radial-gradient(1100px 700px at 12% -8%"] { background: linear-gradient(180deg, var(--p-soft) 0%, #fff 100%) !important; padding-top: clamp(36px, 5vw, 72px) !important; border-bottom: 1px solid var(--p-line); }
.oxx.is-clinic main section[style*="radial-gradient(1100px 700px at 12% -8%"] > [aria-hidden="true"] { display: none; }
/* Butoanele vechi (.btn, .oxx-btn): colțurile de 8px și grosimea 600 ale butoanelor noi; culorile vin din variabile. */
.oxx.is-clinic main :is(.btn, .oxx-btn, .oxx-btn-solid, .oxx-btn-outline) { border-radius: var(--p-r-btn); font-family: var(--p-display); font-weight: 600; box-shadow: none; }
.oxx.is-clinic main :is(p, li, td, th, dd, dt, label, input, select, textarea, button) { font-family: var(--p-text); }

/* /assets/site/ui.css */
/* Oxxygene — sistemul de design comun (ultimul strat, încărcat după toate celelalte foi).

   De ce există: paginile au fost construite pe rând (homepage, CAS, prezentări, specialități, servicii, medici,
   locații, blog, contact), fiecare cu componentele ei. Stratul acesta le aduce la același limbaj: aceeași scară de
   text, același ritm al secțiunilor, același antet de pagină, aceleași butoane, carduri, benzi de cifre și pastile.
   Culorile vin din temă (clinic / premium, prin tokenii --p-*); aici sunt doar structura, proporțiile și ritmul.

   Principii: compact (mai puțin spațiu mort, antete scurte pe telefon), ușor (suprafețe albe, linii fine, accente
   puține), premium (titluri strânse, ierarhie clară, detalii consecvente). Mobil întâi; ecranele mari se adaugă cu
   min-width (768, 1024).

   Selectorii încep cu `.oxx.oxx` (aceeași forță ca tema `.oxx.is-clinic`, iar fiind ultima foaie, câștigă). */

/* ═══════════════════════════════ Tokenii ═══════════════════════════════ */
.oxx.oxx {
  --u-fs-display: clamp(2rem, 1.45rem + 2.6vw, 3.25rem);   /* titlul homepage-ului: 32 → 52 */
  --u-fs-h1: clamp(1.75rem, 1.4rem + 1.7vw, 2.75rem);      /* titlul paginilor: 28 → 44 */
  --u-fs-h2: clamp(1.375rem, 1.18rem + .95vw, 1.875rem);   /* titlul secțiunilor: 22 → 30 */
  --u-fs-h3: 17px;
  --u-fs-lead: clamp(1rem, .96rem + .25vw, 1.125rem);      /* 16 → 18 */
  --u-fs-body: 15.5px;
  --u-fs-meta: 13px;
  --u-sec: 28px;            /* spațiul vertical al unei secțiuni (sus și jos) */
  --u-head: 16px;           /* spațiul de sub titlul unei secțiuni */
  --u-gap: 10px;            /* spațiul dintre carduri */
  --u-pad: 16px;            /* interiorul unui card */
  --p-r-btn: 10px; --p-r-card: 14px; --p-r-panel: 20px;
  --u-hover: 0 12px 28px -16px rgb(15 23 42 / .22);
}
@media (min-width: 768px) { .oxx.oxx { --u-sec: 44px; --u-head: 22px; --u-gap: 14px; --u-pad: 20px; } }
@media (min-width: 1024px) { .oxx.oxx { --u-sec: 56px; --u-head: 26px; --u-gap: 16px; --u-fs-body: 16px; } }

/* ═══════════════════════════════ Ritmul secțiunilor ═══════════════════════════════ */
/* Toate secțiunile de conținut au același spațiu vertical; antetele, panoul final și secțiunile din scheletul
   paginilor de specialitate / serviciu / locație (care au ritmul lor, pe părți) sunt excluse. */
.oxx.oxx main section.oxh:not(.oxb-hero):not(.oxh-hero):not(.oxh-phero):not(.oxh-hub):not(.oxh-final):not(.oxb-callout-sec):not(.is-statement):not(.oxf-sec section) { padding-block: var(--u-sec); }
/* Secțiunile din fișa unei specialități sau a unui serviciu au ritmul fișei (premium-site.css, .oxf-sec). */
.oxx.oxx main .oxf-sec section.oxh { padding-block: 0; }
.oxx.oxx main section.oxb-band + section.oxb-band { padding-top: 0; }
.oxx.oxx .oxsp-content :is(.oxb, .oxh) { padding-block: 0; }
.oxx.oxx .oxsp-part { padding-block: calc(var(--u-sec) * .85); }
.oxx.oxx .oxsp-part:first-child { padding-top: 20px; }
.oxx.oxx main section.is-statement { padding-block: 20px; }
.oxx.oxx .oxd-sec { padding-block: calc(var(--u-sec) * .75); }

/* ═══════════════════════════════ Titlurile ═══════════════════════════════ */
.oxx.oxx :is(h1, h2, h3) { text-wrap: balance; }
/* Titlul paginii: aceeași mărime și greutate pe toate paginile interioare; homepage-ul are varianta mare. */
.oxx.oxx :is(.oxb-hero, .oxd-hero, .oxh-phero, .oxh-hub, .oxn-post-head) h1 { margin: 10px 0 0; font-size: var(--u-fs-h1); line-height: 1.08; font-weight: 700; letter-spacing: -.028em; color: var(--p-ink); }
.oxx.oxx .oxh-hero h1 { font-size: var(--u-fs-display); line-height: 1.04; font-weight: 700; letter-spacing: -.032em; }
.oxx.oxx :is(.oxb-hero, .oxd-hero, .oxh-phero, .oxh-hub, .oxh-hero) h1 span { font-weight: 600; }
/* Titlul secțiunii: oriunde ar sta (antetul secțiunii, textul cu titlu, formularul, banda finală, recenziile). */
.oxx.oxx :is(.oxh-head, .oxsp-head, .oxb-reviews-head, .oxh-orient-copy, .oxh-why-copy, .oxb-form-copy, .oxb-split, .oxn-select, .oxd-sec, .oxd-book, .oxb-cta-copy, .oxh-final-box) > h2 { margin: 0; font-size: var(--u-fs-h2); line-height: 1.15; font-weight: 700; letter-spacing: -.022em; color: var(--p-ink); }
.oxx.oxx .oxh-final-box:not(.is-light) h2 { color: #fff; }
.oxx.oxx .oxd-sec > h2 { margin-bottom: 14px; }
.oxx.oxx .oxb-form-copy > h2 { margin-top: 4px; }
.oxx.oxx :is(.oxh-head, .oxsp-head) { display: grid; gap: 6px; margin-bottom: var(--u-head); }
.oxx.oxx :is(.oxh-head, .oxsp-head) > p { margin: 0; max-width: 62ch; font: 400 15px/1.55 var(--p-text); color: var(--p-mute); }
/* Titlurile din carduri (numele unei specialități, al unei locații) rămân titluri de card, nu de secțiune. */
.oxx.oxx :is(.oxh-spec-txt, .oxh-loc, .oxn-loc) > h2 { font-size: 18px; line-height: 1.25; letter-spacing: -.015em; }
.oxx.oxx :is(.oxb-card, .oxb-col, .oxb-choice, .oxh-loc, .oxh-tech-card, .oxh-tile, .oxh-pick) h3 { font-size: var(--u-fs-h3); line-height: 1.3; letter-spacing: -.012em; }

/* ═══════════════════════════════ Antetul paginii ═══════════════════════════════ */
/* Firul de navigare: un rând discret, deasupra etichetei. */
.oxx.oxx .oxb-crumbs { padding-top: 10px; }
.oxx.oxx .oxb-crumbs ol { font-size: 12.5px; }
@media (min-width: 1024px) { .oxx.oxx .oxb-crumbs { padding-top: 18px; } }
/* Eticheta de deasupra titlului: text mic cu majuscule și iconiță, fără chenar (mai discretă decât o pastilă). */
.oxx.oxx :is(.oxb-hero, .oxh-phero, .oxd-hero, .oxh-hub) :is(.oxb-eyebrow, .oxh-chip) { display: inline-flex; align-items: center; gap: 7px; padding: 0; margin: 0; border: 0; border-radius: 0; background: none; box-shadow: none; font: 700 11.5px/1.3 var(--p-display); letter-spacing: .1em; text-transform: uppercase; color: var(--p-gold-ink); }
.oxx.oxx :is(.oxb-hero, .oxh-phero, .oxd-hero, .oxh-hub) :is(.oxb-eyebrow, .oxh-chip) svg { width: 15px; height: 15px; color: inherit; }
.oxx.oxx :is(.oxb-hero, .oxh-phero, .oxd-hero, .oxh-hub, .oxh-hero) .oxh-lead { margin: 12px 0 0; max-width: 58ch; font: 400 var(--u-fs-lead)/1.55 var(--p-text); color: var(--p-body); }
.oxx.oxx .oxb-hero { padding: 14px 0 24px; }
@media (min-width: 1024px) { .oxx.oxx .oxb-hero { padding: 26px 0 44px; } }
/* Butoanele antetului: pe telefon unul sub altul, fără butonul de telefon (bara de jos a site-ului are deja „Sună”);
   de la 768px pe un rând. */
.oxx.oxx .oxh-cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.oxx.oxx .oxh-cta .oxp-btn { min-height: 48px; }
@media (max-width: 767px) {
  .oxx.oxx .oxh-cta .oxp-btn { flex: 1 1 100%; }
  .oxx.oxx :is(.oxb-hero, .oxh-phero, .oxd-hero, .oxh-hub) .oxh-cta > a[href^="tel:"] { display: none; }
}

/* Cifrele din antet (specialitate, serviciu, locație, lista specialităților): aceeași bandă — celule cu eticheta mică
   deasupra valorii; pe telefon două pe rând, compacte; pe desktop pe un rând (sau rânduri, în caseta din dreapta). */
.oxx.oxx :is(.oxsp-stats, .oxh-pfacts) { gap: 8px; margin-top: 20px; }
.oxx.oxx .oxsp-stats li > * { padding: 11px 13px; gap: 3px; }
.oxx.oxx .oxsp-stats small { font-size: 10.5px; }
.oxx.oxx .oxsp-stats b { font-size: 14.5px; }
.oxx.oxx .oxb-hero-side { padding: 4px 14px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); box-shadow: none; color: var(--p-ink); }
.oxx.oxx .oxb-hero-side :is(b, small) { color: inherit; }
.oxx.oxx .oxb-hero-side .oxb-facts small { color: var(--p-mute); }
.oxx.oxx .oxb-hero-side .oxb-facts b { color: var(--p-ink); }
.oxx.oxx .oxb-hero-side .oxb-points-ic { width: 36px; height: 36px; border: 0; border-radius: 10px; background: var(--p-tint); color: var(--p-navy); }
.oxx.oxx .oxb-hero-side .oxb-facts li > a::after { border-color: var(--p-line-2); }
@media (max-width: 767px) {
  /* Pe telefon caseta (și reperele de sub antetul unui serviciu) devine aceeași bandă de celule ca .oxsp-stats,
     fără iconițe, două pe rând. */
  .oxx.oxx :is(.oxb-hero-side, .oxb-hero-points:has(.oxb-facts)) { padding: 0; border: 0; background: none; box-shadow: none; }
  .oxx.oxx :is(.oxb-hero-side, .oxb-hero-points) .oxb-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .oxx.oxx :is(.oxb-hero-side, .oxb-hero-points) .oxb-facts li:has(> a) { border: 0 !important; }
  .oxx.oxx :is(.oxb-hero-side, .oxb-hero-points) .oxb-facts li:not(:has(> a)) { border: 1px solid var(--p-line) !important; }
  .oxx.oxx :is(.oxb-hero-side, .oxb-hero-points) .oxb-facts li > a, .oxx.oxx :is(.oxb-hero-side, .oxb-hero-points) .oxb-facts li:not(:has(> a)) { display: grid; align-content: start; gap: 3px; height: 100%; padding: 11px 13px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); }
  .oxx.oxx :is(.oxb-hero-side, .oxb-hero-points) .oxb-facts li > a::after { display: none; }
  .oxx.oxx :is(.oxb-hero-side, .oxb-hero-points) .oxb-facts .oxb-points-ic { display: none; }
  .oxx.oxx :is(.oxb-hero-side, .oxb-hero-points) .oxb-facts small { font-size: 10.5px; }
  .oxx.oxx :is(.oxb-hero-side, .oxb-hero-points) .oxb-facts b { margin: 0; font-size: 14.5px; }
}
@media (min-width: 1024px) {
  .oxx.oxx .oxb-hero-side { padding: 6px 22px; }
  .oxx.oxx .oxb-hero-side .oxb-facts li > a, .oxx.oxx .oxb-hero-side .oxb-facts li:not(:has(> a)) { padding: 14px 0; }
  .oxx.oxx .oxb-hero-side .oxb-facts b { font-size: 15.5px; color: var(--p-ink); }
}

/* Cuprinsul paginii (pastile): mai mici și mai dese. */
.oxx.oxx .oxb-jump { margin-top: 18px; }
.oxx.oxx .oxb-jump a { min-height: 36px; padding: 0 14px; font-size: 13.5px; }

/* ═══════════════════════════════ Butoanele ═══════════════════════════════ */
.oxx.oxx .oxp-btn { min-height: 46px; padding: 0 18px; border-radius: var(--p-r-btn); font: 600 14.5px/1.15 var(--p-display); letter-spacing: -.005em; }
.oxx.oxx .oxp-btn-sm { min-height: 40px; padding: 0 14px; font-size: 13.5px; }
.oxx.oxx .oxp-link { font-size: 14.5px; }

/* ═══════════════════════════════ Cardurile ═══════════════════════════════ */
/* Aceeași reacție la trecerea cu mouse-ul pe toate cardurile-link: chenarul se întărește, o umbră fină, fără salt. */
@media (hover: hover) {
  .oxx.oxx :is(a.oxb-card, a.oxb-svc, a.oxh-doc, a.oxh-spec, .oxh-spec:has(a), a.oxh-pick, a.oxh-tile, a.oxn-post, .oxn-post:has(a), a.oxh-cas-tile, a.oxb-choice, a.oxh-tech-card, a.oxd-card, .oxd-card:has(a), a.oxh-path, .oxh-path:has(a), a.oxh-prog):hover { transform: none; border-color: var(--p-line-hover, var(--p-line-2)); box-shadow: var(--u-hover); }
}
.oxx.oxx :is(.oxb-card, .oxb-col, .oxb-choice, .oxh-loc, .oxb-review) { padding: var(--u-pad); }
.oxx.oxx :is(.oxb-cards, .oxb-colgrid, .oxb-choices, .oxh-locs, .oxb-svcs, .oxb-faq) { gap: var(--u-gap); }

/* Întrebările: rânduri mai compacte. */
.oxx.oxx .oxb-q summary { min-height: 52px; padding: 12px 14px 12px 16px; font-size: 15.5px; }
.oxx.oxx .oxb-a { padding: 0 16px 16px; }

/* ═══════════════════════════════ Textul de lectură ═══════════════════════════════ */
.oxx.oxx .oxb-prose { font-size: var(--u-fs-body); line-height: 1.7; }
.oxx.oxx .oxb-prose h2 { margin: 1.6em 0 .5em; font-size: clamp(1.2rem, 1.08rem + .55vw, 1.5rem); line-height: 1.22; font-weight: 700; letter-spacing: -.018em; }
.oxx.oxx .oxb-prose h3 { margin: 1.4em 0 .4em; font-size: var(--u-fs-h3); }
.oxx.oxx .oxb-prose > h2:first-child, .oxx.oxx .oxb-prose > h3:first-child { margin-top: 0; }

/* ═══════════════════════════════ Banda finală ═══════════════════════════════ */
.oxx.oxx .oxh-final { padding-block: 4px var(--u-sec); }
.oxx.oxx .oxh-final-box { gap: 18px; padding: 24px 20px; border-radius: var(--p-r-panel); }
.oxx.oxx .oxh-final-box h2 span { display: block; opacity: .72; }
@media (min-width: 1024px) { .oxx.oxx .oxh-final-box { padding: 40px 48px; } }

/* ═══════════════════════════════ Sfârșitul paginii ═══════════════════════════════ */
/* Ultima secțiune își are propriul spațiu de jos; fără încă 72px (vechiul .oxx-main) până la subsol. */
.oxx.oxx .oxx-main { padding-bottom: 0; }

/* ═══════════════════════════════ Panourile de conținut ═══════════════════════════════ */
/* Pe tot site-ul o singură suprafață închisă la culoare: banda finală de programare (și caseta de programare din
   coloana laterală). Panourile de conținut („De ce noi”, alegerea traseului pe fond închis) devin luminoase: fond
   nuanțat, text închis, carduri albe — aceeași familie ca panoul CAS de pe homepage. */
.oxx.oxx :is(.oxh-why, .oxb-panel.is-dark) { background: var(--p-tint); color: var(--p-ink); box-shadow: none; }
.oxx.oxx :is(.oxh-why, .oxb-panel.is-dark) :is(h2, h3, b) { color: var(--p-ink); }
.oxx.oxx :is(.oxh-why, .oxb-panel.is-dark) :is(.oxh-head p, .oxh-intro, .oxh-why-copy p) { color: var(--p-body); }
.oxx.oxx .oxh-why { gap: 16px; padding: 22px 16px 16px; border-radius: var(--p-r-panel); }
.oxx.oxx .oxh-why .oxh-chip { padding: 0; background: none; font: 700 11.5px/1.3 var(--p-display); letter-spacing: .1em; text-transform: uppercase; color: var(--p-gold-ink); }
.oxx.oxx .oxh-why-copy p { margin-top: 8px; font-size: 15px; }
.oxx.oxx .oxh-why-list { gap: 8px; }
.oxx.oxx .oxh-why-list li { padding: 14px; border-radius: var(--p-r-card); background: #fff; border: 1px solid var(--p-line); color: var(--p-body); }
.oxx.oxx .oxh-why-list li > div { color: var(--p-body); font-size: 14.5px; }
.oxx.oxx .oxh-why-list b { font-size: 15.5px; color: var(--p-ink); }
.oxx.oxx .oxh-why-list p { color: var(--p-mute); }
.oxx.oxx .oxh-why-ic { width: 38px; height: 38px; border: 0; border-radius: 10px; background: var(--p-tint); color: var(--p-navy); }
/* Butoanele gândite pentru fond închis devin butoanele obișnuite. */
.oxx.oxx :is(.oxh-why, .oxb-panel.is-dark) .oxp-btn-light { background: var(--p-navy); border-color: var(--p-navy); color: #fff; }
.oxx.oxx :is(.oxh-why, .oxb-panel.is-dark) .oxp-btn-outline-light { background: #fff; border: 1px solid var(--p-line-2); color: var(--p-ink); }
@media (min-width: 1024px) {
  .oxx.oxx .oxh-why { gap: 20px 48px; padding: 40px; }
  .oxx.oxx .oxh-why-list li { padding: 16px 18px; }
}
/* Panoul nuanțat (alegerea traseului, CAS): același interior pe toate paginile. */
.oxx.oxx :is(.oxb-panel, .oxh-cas-box, .oxh-tiles-box, .oxh-tech-box) { border-radius: var(--p-r-panel); }
@media (max-width: 767px) { .oxx.oxx :is(.oxb-panel, .oxh-cas-box, .oxh-tiles-box, .oxh-tech-box) { padding: 20px 14px 14px; } }

/* ═══════════════════════════════ Cifrele din antetul unei locații ═══════════════════════════════ */
/* (Specialitățile și serviciile au antetul fișei departamentului, premium-site.css, .oxf-*.) */
@media (min-width: 1024px) { .oxx.oxx .oxsp-stats { margin-top: 24px; } }
}

/* ═══════════════════════════════ Subsolul ═══════════════════════════════ */
/* Mai compact pe telefon (telefonul, emailurile, butoanele, marca, locațiile și meniurile rămân toate). */
.oxx.oxx .oxp-footer { padding-top: 30px; font-size: 14.5px; }
.oxx.oxx .oxp-foot-cta { gap: 14px; padding-bottom: 22px; }
.oxx.oxx .oxp-foot-cta .oxp-tel-big { font-size: 26px; gap: 10px; }
.oxx.oxx .oxp-foot-mail { margin-top: 8px; gap: 4px 18px; }
.oxx.oxx .oxp-foot-cta-actions .oxp-btn { min-height: 44px; }
.oxx.oxx .oxp-foot-top { gap: 20px; padding-block: 22px; }
.oxx.oxx .oxp-foot-brand img { height: 30px; }
.oxx.oxx .oxp-foot-brand p { margin: 10px 0 12px; }
.oxx.oxx .oxp-socials { margin-top: 12px; }
.oxx.oxx .oxp-socials a { width: 38px; height: 38px; }
.oxx.oxx .oxp-foot-locs { gap: 10px; }
.oxx.oxx .oxp-fl { gap: 9px; padding: 16px; }
.oxx.oxx .oxp-fl h3 { font-size: 16px; }
.oxx.oxx .oxp-fl-addr { font-size: 14px; }
.oxx.oxx .oxp-fl-hours div { padding: 7px 0; font-size: 14px; }
.oxx.oxx .oxp-fl-dir { min-height: 36px; }
.oxx.oxx .oxp-foot-cols { padding-block: 4px 14px; }
.oxx.oxx .oxp-foot-col summary { min-height: 48px; }
.oxx.oxx .oxp-foot-legal { padding-top: 18px; font-size: 12.5px; }
@media (min-width: 1024px) {
  .oxx.oxx .oxp-footer { padding-top: 44px; }
  .oxx.oxx .oxp-foot-cta { padding-bottom: 28px; }
  .oxx.oxx .oxp-foot-cta .oxp-tel-big { font-size: 32px; }
  .oxx.oxx .oxp-foot-top { gap: 48px; padding-block: 32px; }
  .oxx.oxx .oxp-foot-cols { padding-block: 28px; }
}

/* ═══════════════════════════════ Benzile de fapte ═══════════════════════════════ */
/* Faptele din paginile de prezentare (durată, program, acces, locație) arată ca cifrele din antet: eticheta mică
   deasupra, valoarea îngroșată; pe telefon fără iconițe, două pe rând. */
.oxx.oxx .oxn-facts { gap: 8px; }
.oxx.oxx .oxn-facts li { gap: 12px; padding: 11px 13px; }
.oxx.oxx .oxn-facts li > span:last-child { display: grid; gap: 3px; }
.oxx.oxx .oxn-facts b { font: 700 10.5px/1.2 var(--p-display); letter-spacing: .09em; text-transform: uppercase; color: var(--p-mute); }
.oxx.oxx .oxn-facts small { margin: 0; font: 700 14.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx.oxx .oxn-facts .oxb-ic { width: 36px; height: 36px; border-radius: 10px; }
@media (max-width: 767px) { .oxx.oxx .oxn-facts .oxb-ic { display: none; } }
@media (min-width: 1024px) { .oxx.oxx .oxn-facts { gap: 12px; } .oxx.oxx .oxn-facts li { padding: 14px 16px; } .oxx.oxx .oxn-facts small { font-size: 15.5px; } }

/* ═══════════════════════════════ Golurile de pe desktop ═══════════════════════════════ */
/* Antetul paginii nu mai are o înălțime minimă (420px): fără imagine, textul nu mai plutește în spațiu gol. */
@media (min-width: 1024px) {
  .oxx.oxx .oxb-hero-in { min-height: 0; }
  .oxx.oxx .oxb-hero:not(:has(.oxb-hero-side, .oxb-hero-media)) .oxb-hero-in { grid-template-columns: minmax(0, 1fr); }
  .oxx.oxx .oxb-hero:not(:has(.oxb-hero-side, .oxb-hero-media)) :is(.oxb-hero-copy h1, .oxb-hero-copy .oxh-lead) { max-width: 760px; }
  /* Blocul pe două coloane fără titlu (ex. lista de tarife): o singură coloană, pe toată lățimea. */
  .oxx.oxx .oxb-twocol:has(> .oxb-twocol-head:empty) { grid-template-columns: minmax(0, 1fr); grid-template-areas: "main" "foot"; }
}
.oxx.oxx .oxb-twocol-head:empty { display: none; }

/* ═══════════════════════════════ Pastilele ═══════════════════════════════ */
/* Categoria articolului: aceeași etichetă ca deasupra titlurilor celorlalte pagini (text mic cu majuscule). */
.oxx.oxx .oxn-post-cats a { min-height: 0; padding: 0; border: 0; border-radius: 0; background: none; font: 700 11.5px/1.3 var(--p-display); letter-spacing: .1em; text-transform: uppercase; color: var(--p-gold-ink); }
.oxx.oxx .oxn-post-cats { gap: 4px 14px; }
/* Linkurile spre părțile paginii: aceeași pastilă ca cuprinsul specialităților; pe telefon un singur rând glisant. */
.oxx.oxx .oxn-tags :is(a, span) { min-height: 36px; padding: 0 14px; font-size: 13.5px; }
@media (max-width: 1023px) {
  .oxx.oxx .oxn-tags { flex-wrap: nowrap; margin: 0 calc(-1 * var(--p-gutter)); padding: 2px var(--p-gutter) 4px; overflow-x: auto; scrollbar-width: none; }
  .oxx.oxx .oxn-tags::-webkit-scrollbar { display: none; }
  .oxx.oxx .oxn-tags li { flex: none; }
}
@media (max-width: 767px) {
  /* Pe telefon bara de jos are deja „Programare” și „WhatsApp”: subsolul păstrează telefonul și emailurile. */
  .oxx.oxx .oxp-foot-cta-actions { display: none; }
  /* Din program rămâne ziua de azi (starea „Deschis acum · până la …” e deasupra); programul complet e pe pagina locației. */
  .oxx.oxx .oxp-fl-hours > div:not(.is-today) { display: none; }
  .oxx.oxx .oxp-fl-hours:not(:has(.is-today)) { display: none; }
}

/* ═══════════════════════════════ Bannerul de cookie-uri ═══════════════════════════════ */
/* Un card alb, compact, jos pe ecran (pe telefon deasupra barei de acțiuni); „Accept” și „Refuz” la fel de vizibile. */
.oxx .oxx-consent { position: fixed; left: 12px; right: 12px; bottom: calc(80px + env(safe-area-inset-bottom)); z-index: 60; max-width: 560px; margin: 0 auto; padding: 16px 16px 14px; border-radius: var(--p-r-panel, 20px); background: #fff; border: 1px solid var(--p-line); box-shadow: 0 24px 60px -24px rgb(15 23 42 / .35); color: var(--p-ink); font: 400 14px/1.5 var(--p-text); }
.oxx .oxx-consent-title { margin: 0 0 4px; font: 700 15.5px/1.3 var(--p-display); color: var(--p-ink); }
.oxx .oxx-consent-text { margin: 0 0 12px; font-size: 13.5px; color: var(--p-body); }
.oxx .oxx-consent-text a { color: var(--p-navy-3, var(--p-navy)); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.oxx .oxx-consent-more { display: grid; gap: 10px; margin: 0 0 14px; font-size: 14px; }
.oxx .oxx-consent-more[hidden] { display: none; }
.oxx .oxx-consent-more label { display: block; cursor: pointer; }
.oxx .oxx-consent-more input { margin: 0 6px 0 0; accent-color: var(--p-navy); }
.oxx .oxx-consent-more label span { display: block; margin-left: 22px; font-size: 13px; color: var(--p-mute); }
.oxx .oxx-consent-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; align-items: center; }
.oxx .oxx-consent-actions .oxp-btn { width: 100%; justify-content: center; }
.oxx .oxx-consent-link { grid-column: 1 / -1; justify-self: center; padding: 6px; background: none; border: 0; cursor: pointer; font: 600 13.5px/1.2 var(--p-display); color: var(--p-navy-3, var(--p-navy)); text-decoration: underline; text-underline-offset: 3px; }
@media (min-width: 768px) {
  .oxx .oxx-consent { bottom: 20px; left: 20px; right: auto; margin: 0; padding: 20px 22px 18px; }
  .oxx .oxx-consent-actions { display: flex; flex-wrap: wrap; }
  .oxx .oxx-consent-actions .oxp-btn { width: auto; }
  .oxx .oxx-consent-link { grid-column: auto; margin-left: 4px; }
}

/* ═══════════════════════════════ Telefonul: firul de navigare, formularele, subsolul ═══════════════════════════════ */
@media (max-width: 767px) {
  /* Firul de navigare: doar pagina-părinte, ca link „înapoi” (pagina curentă e titlul de dedesubt; un rând tăiat nu
     mai rămâne). BreadcrumbList rămâne întreg. */
  .oxx.oxx :is(.oxb-crumbs, .oxh-crumbs) li:not(:nth-last-child(2)) { display: none; }
  .oxx.oxx .oxb-crumbs li:nth-last-child(2) > svg, .oxx.oxx .oxh-crumbs li:nth-last-child(2)::before { display: none; }
  .oxx.oxx :is(.oxb-crumbs, .oxh-crumbs) li:nth-last-child(2) > :is(a, span) { display: inline-flex; align-items: center; gap: 6px; padding: 8px 0; font-weight: 600; color: var(--p-navy); }
  .oxx.oxx :is(.oxb-crumbs, .oxh-crumbs) li:nth-last-child(2) > a::before { content: ""; width: 15px; height: 15px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'/%3E%3C/svg%3E") center / contain no-repeat; }
  /* Formularul unei secțiuni: fără panoul din jurul cardului (card în card), textul puțin mai mic, cardul pe toată lățimea. */
  .oxx.oxx .oxb-form-sec .oxb-form-box { gap: 16px; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; }
  .oxx.oxx .oxb-form-sec .oxb-form-copy { padding-inline: 0; }
  .oxx.oxx .oxb-form-sec .oxb-form-copy > :is(p, .oxb-ic) { display: none; }
  .oxx.oxx .oxb-form-sec .oxb-form { padding: 18px 16px 20px; border: 1px solid var(--p-line); border-radius: 16px; }
  /* Subsolul: sigla și rețelele pe un rând, descrierea mai mică; cardurile locațiilor mai dense. */
  .oxx.oxx .oxp-foot-brand { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; column-gap: 12px; }
  .oxx.oxx .oxp-foot-brand > img { grid-row: 1; grid-column: 1; height: 28px; }
  .oxx.oxx .oxp-foot-brand .oxp-socials { grid-row: 1; grid-column: 2; justify-self: end; margin-top: 0; gap: 6px; }
  .oxx.oxx .oxp-foot-brand .oxp-socials a { width: 34px; height: 34px; border-radius: 10px; }
  .oxx.oxx .oxp-foot-brand p { grid-column: 1 / -1; margin: 12px 0 10px; font-size: 13.5px; line-height: 1.55; }
  .oxx.oxx .oxp-foot-brand .oxp-badge { grid-column: 1 / -1; justify-self: start; padding: 6px 11px; font-size: 12.5px; }
  .oxx.oxx .oxp-foot-top { gap: 16px; padding-block: 18px; }
  .oxx.oxx .oxp-fl { gap: 7px; padding: 14px; }
  .oxx.oxx .oxp-fl-status { padding: 5px 10px; font-size: 11.5px; }
  .oxx.oxx .oxp-fl h3 { font-size: 15px; }
  .oxx.oxx .oxp-fl-addr { font-size: 13.5px; }
  .oxx.oxx .oxp-fl-hours div { padding: 6px 0; font-size: 13.5px; }
  .oxx.oxx .oxp-fl-dir { min-height: 34px; padding: 0 12px; font-size: 13px; }
}

/* /assets/site/chrome.css */
/* Antetul, meniurile, căutarea, subsolul și bara de jos (src/site/layout.mjs), după brandbook-ul de la /branding/:
   o singură bară compactă, meniul „Îngrijire” după nevoie, căutarea ca paletă de comenzi (Ctrl/⌘ K), starea
   „Deschis acum” lângă telefon și linia spectrului din logo ca semn al secțiunii curente și al progresului lecturii.
   Se încarcă ultima, peste designul paginilor; clasele vechi ale antetului (.oxp-header…) nu mai apar în marcaj. */
:root {
  --oxc-brand: #3b86d1;
  --oxc-navy: #1c398e;
  --oxc-blue: #3566b0;
  --oxc-teal: #2a7288;
  --oxc-deep: #071628;
  --oxc-deep-2: #0c2244;
  --oxc-ink: #0f172a;
  --oxc-body: #414d5e;
  --oxc-mute: #64748b;
  --oxc-line: #e4e9f0;
  --oxc-line-2: #d3dce8;
  --oxc-soft: #f7f9fc;
  --oxc-tint: #eff4fb;
  --oxc-ok: #15803d;
  --oxc-spectrum: linear-gradient(90deg, #edcc63, #e57c5c 22%, #d44b5a 40%, #c55290 58%, #7a6eb6 78%, #3b86d1);
  --oxc-font: "Plus Jakarta Sans", "Plus Jakarta Sans Fallback", ui-sans-serif, system-ui, sans-serif;
  --oxc-ease: cubic-bezier(.2, .8, .2, 1);
  --oxc-gutter: 16px;
  --oxc-head-h: 60px;
  --oxc-dock-h: 64px;
}
@media (min-width: 768px) { :root { --oxc-gutter: 28px; } }
@media (min-width: 1024px) { :root { --oxc-head-h: 68px; --oxc-dock-h: 0px; } }
html.oxc-lock, html.oxc-lock body { overflow: hidden; }
/* Butoanele unui carusel ascunse când toată lista încape pe ecran (site.js, [data-rail]). */
.oxx [data-rail][hidden] { display: none; }
.oxx .oxc-wrap { max-width: 1320px; margin: 0 auto; padding: 0 var(--oxc-gutter); }
.oxx :is(.oxc-head, .oxc-sheet, .oxc-palette, .oxc-foot, .oxc-dock) { font-family: var(--oxc-font); -webkit-font-smoothing: antialiased; }
.oxx :is(.oxc-head, .oxc-sheet, .oxc-palette, .oxc-foot, .oxc-dock) :is(h2, h3, p, ul) { margin: 0; }
.oxx :is(.oxc-head, .oxc-sheet, .oxc-palette, .oxc-foot, .oxc-dock) ul { list-style: none; padding: 0; }
.oxx :is(.oxc-head, .oxc-sheet, .oxc-palette, .oxc-foot, .oxc-dock) a { text-decoration: none; }
.oxx :is(.oxc-head, .oxc-sheet, .oxc-palette, .oxc-foot, .oxc-dock) :focus-visible { outline: 3px solid var(--oxc-blue); outline-offset: 2px; border-radius: 10px; }
.oxx .oxc-foot :focus-visible { outline-color: #8ec5ff; }
.oxc-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.oxx .oxc-eyebrow { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--oxc-teal); }
.oxx kbd { font: 600 11.5px/1 var(--oxc-font); padding: 4px 6px; border-radius: 6px; border: 1px solid var(--oxc-line-2); background: #fff; color: var(--oxc-mute); }

/* ——— Antetul */
.oxx .oxc-head { position: sticky; top: 0; z-index: 60; background: rgb(255 255 255 / .9); backdrop-filter: saturate(1.6) blur(16px); -webkit-backdrop-filter: saturate(1.6) blur(16px); border-bottom: 1px solid transparent; transition: transform .32s var(--oxc-ease), border-color .2s; }
.oxx .oxc-head[data-scrolled] { border-bottom-color: var(--oxc-line); }
/* Retras, antetul lasă vizibilă doar linia de progres. */
.oxx .oxc-head.is-away { transform: translateY(calc(-100% + 2px)); }
.oxx .oxc-head-in { position: relative; height: var(--oxc-head-h); display: flex; align-items: center; gap: 6px; }
.oxx .oxc-logo { display: inline-flex; align-items: center; flex: none; margin-right: 8px; }
.oxx .oxc-logo img { height: 30px; width: auto; }
@media (min-width: 1024px) { .oxx .oxc-logo img { height: 34px; } .oxx .oxc-logo { margin-right: 18px; } }
.oxx .oxc-progress { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; pointer-events: none; }
.oxx .oxc-progress span { display: block; height: 100%; background: var(--oxc-spectrum); transform-origin: 0 50%; transform: scaleX(var(--p, 0)); }

.oxx .oxc-nav { display: none; }
.oxx .oxc-nav > ul { display: flex; align-items: center; gap: 2px; }
.oxx .oxc-top { position: relative; display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 0 10px; border: 0; border-radius: 10px; background: none; color: var(--oxc-ink); font: 600 14.5px/1 var(--oxc-font); letter-spacing: -.01em; white-space: nowrap; cursor: pointer; transition: background .15s, color .15s; }
.oxx .oxc-top svg { transition: transform .2s var(--oxc-ease); color: var(--oxc-mute); }
.oxx .oxc-top:hover, .oxx .oxc-top[aria-expanded="true"] { background: var(--oxc-tint); color: var(--oxc-navy); }
.oxx .oxc-top[aria-expanded="true"] svg { transform: rotate(180deg); color: var(--oxc-navy); }
.oxx .oxc-top[aria-current]::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: 3px; height: 2px; border-radius: 2px; background: var(--oxc-spectrum); }
@media (min-width: 1024px) and (max-width: 1279px) { .oxx .oxc-top { padding: 0 7px; font-size: 14px; } .oxx .oxc-top[aria-current]::after { left: 7px; right: 7px; } }
@media (min-width: 1280px) { .oxx .oxc-top { padding: 0 12px; } }
@media (min-width: 1600px) { .oxx .oxc-search { width: 236px; } }

.oxx .oxc-actions { margin-left: auto; display: flex; align-items: center; gap: 8px; }
.oxx .oxc-icon { display: inline-grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--oxc-line-2); border-radius: 12px; background: #fff; color: var(--oxc-ink); cursor: pointer; }
.oxx .oxc-icon:hover { border-color: var(--oxc-navy); color: var(--oxc-navy); }
.oxx .oxc-search { display: inline-flex; align-items: center; gap: 10px; height: 44px; padding: 0 12px; border: 1px solid var(--oxc-line-2); border-radius: 12px; background: #fff; color: var(--oxc-mute); font: 500 14px var(--oxc-font); cursor: pointer; transition: border-color .15s, background .15s; }
.oxx .oxc-search:hover { border-color: var(--oxc-navy); color: var(--oxc-ink); }
/* Textul pentru cititoarele de ecran (.oxc-sr) rămâne: fără el, pe ecranele mici butonul n-ar avea nume (agenții AI, Lighthouse) */
.oxx .oxc-search > span:not(.oxc-sr), .oxx .oxc-search kbd { display: none; }
@media (min-width: 1280px) {
  .oxx .oxc-search { width: 200px; padding: 0 8px 0 14px; background: var(--oxc-soft); border-color: var(--oxc-line); }
  .oxx .oxc-search > span:not(.oxc-sr) { display: inline; flex: 1; text-align: left; }
  .oxx .oxc-search kbd { display: inline-block; }
}
.oxx .oxc-call { display: none; align-items: center; gap: 10px; height: 44px; padding: 0 6px 0 4px; border-radius: 12px; color: var(--oxc-ink); }
.oxx .oxc-call:hover { background: var(--oxc-soft); }
.oxx .oxc-call-ico { position: relative; display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--oxc-tint); color: var(--oxc-navy); }
.oxx .oxc-dot { position: absolute; right: 1px; top: 1px; width: 11px; height: 11px; border-radius: 50%; border: 2px solid #fff; background: var(--oxc-mute); }
.oxx .oxc-dot.is-open { background: #22c55e; box-shadow: 0 0 0 0 rgb(34 197 94 / .55); animation: oxc-pulse 2.4s infinite; }
@keyframes oxc-pulse { 70% { box-shadow: 0 0 0 7px rgb(34 197 94 / 0); } 100% { box-shadow: 0 0 0 0 rgb(34 197 94 / 0); } }
.oxx .oxc-call-txt { display: none; flex-direction: column; line-height: 1.15; }
.oxx .oxc-call-txt small { font-size: 12px; font-weight: 600; color: var(--oxc-mute); white-space: nowrap; }
.oxx .oxc-call-txt b { font-size: 15px; font-weight: 700; letter-spacing: -.01em; white-space: nowrap; }
@media (min-width: 1440px) { .oxx .oxc-call-txt { display: flex; } }
.oxx .oxc-head .oxc-wrap { max-width: 1440px; }
.oxx .oxc-actions { flex: none; }
.oxx .oxc-cta { display: none; align-items: center; gap: 8px; height: 44px; padding: 0 18px; border-radius: 12px; background: var(--oxc-navy); color: #fff; font: 650 14.5px var(--oxc-font); letter-spacing: -.005em; white-space: nowrap; transition: background .15s, transform .15s; }
.oxx .oxc-cta:hover { background: #142c73; color: #fff; }
.oxx .oxc-cta svg { transition: transform .2s var(--oxc-ease); }
.oxx .oxc-cta:hover svg { transform: translateX(3px); }
.oxx .oxc-burger { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 14px 0 12px; border: 1px solid var(--oxc-line-2); border-radius: 12px; background: #fff; color: var(--oxc-ink); font: 650 14.5px var(--oxc-font); cursor: pointer; }
@media (min-width: 1024px) {
  .oxx .oxc-nav { display: block; }
  .oxx .oxc-call, .oxx .oxc-cta { display: inline-flex; }
  .oxx .oxc-burger { display: none; }
}

/* Panourile: mega-meniul pe toată lățimea, meniurile derulante sub elementul lor. */
.oxx .oxc-item.has-drop { position: relative; }
.oxx .oxc-panel { position: absolute; z-index: 61; top: 100%; opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity .18s var(--oxc-ease), transform .22s var(--oxc-ease), visibility 0s .22s; }
.oxx .oxc-panel.is-open { opacity: 1; visibility: visible; transform: none; transition: opacity .18s var(--oxc-ease), transform .22s var(--oxc-ease), visibility 0s; }
.oxx .oxc-scrim { position: fixed; inset: 0; z-index: 55; background: rgb(7 22 40 / .32); backdrop-filter: blur(2px); opacity: 0; visibility: hidden; transition: opacity .2s, visibility 0s .2s; }
.oxx .oxc-scrim.is-on { opacity: 1; visibility: visible; transition: opacity .2s; }

.oxx .oxc-mega { left: var(--oxc-gutter); right: var(--oxc-gutter); top: calc(100% + 8px); background: #fff; border: 1px solid var(--oxc-line); border-radius: 22px; box-shadow: 0 50px 90px -40px rgb(7 22 40 / .45); overflow: hidden; }
.oxx .oxc-mega::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--oxc-spectrum); }
.oxx .oxc-mega-in { display: grid; grid-template-columns: 300px minmax(0, 1fr) 280px; max-width: none; padding: 24px; }
.oxx .oxc-needs { display: flex; flex-direction: column; gap: 2px; padding-right: 20px; }
.oxx .oxc-needs .oxc-eyebrow { padding: 4px 12px 10px; }
.oxx .oxc-need { display: grid; grid-template-columns: 38px 1fr 16px; align-items: center; gap: 12px; padding: 9px 10px; border-radius: 12px; color: var(--oxc-ink); transition: background .15s; }
.oxx .oxc-need b { display: block; font-size: 14.5px; font-weight: 650; letter-spacing: -.01em; }
.oxx .oxc-need small { display: block; margin-top: 2px; font-size: 12.5px; line-height: 1.35; color: var(--oxc-mute); }
.oxx .oxc-need > svg { color: var(--oxc-line-2); transition: color .15s, transform .15s; }
.oxx .oxc-need.is-active { background: var(--oxc-tint); }
/* Pe fundalul albastru deschis, textul secundar trece la culoarea textului (contrast AA). */
.oxx :is(.oxc-need.is-active, .oxc-opt[aria-selected="true"], .oxc-opt:hover) small { color: var(--oxc-body); }
.oxx .oxc-need.is-active > svg { color: var(--oxc-navy); transform: translateX(2px); }
.oxx .oxc-tile-ico { display: inline-grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: var(--oxc-tint); color: var(--oxc-navy); transition: background .15s, color .15s; }
.oxx .oxc-need.is-active .oxc-tile-ico { background: var(--oxc-navy); color: #fff; }
.oxx .oxc-panes { padding: 0 32px; border-left: 1px solid var(--oxc-line); border-right: 1px solid var(--oxc-line); }
.oxx .oxc-pane { display: none; }
.oxx .oxc-pane.is-active { display: block; animation: oxc-in .24s var(--oxc-ease); }
@keyframes oxc-in { from { opacity: 0; transform: translateX(6px); } }
.oxx .oxc-pane-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin: 4px 0 14px; }
.oxx .oxc-pane-head h2 { font-size: 20px; font-weight: 700; letter-spacing: -.02em; color: var(--oxc-ink); }
.oxx .oxc-more { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 650; color: var(--oxc-navy); white-space: nowrap; }
.oxx .oxc-more:hover { color: var(--oxc-blue); }
.oxx .oxc-first { position: relative; display: block; padding: 18px 52px 18px 20px; border-radius: 16px; background: linear-gradient(135deg, var(--oxc-tint), #fff 70%); border: 1px solid var(--oxc-line); color: var(--oxc-ink); transition: border-color .15s, box-shadow .2s; }
.oxx .oxc-first:hover { border-color: var(--oxc-navy); box-shadow: 0 16px 30px -22px rgb(28 57 142 / .55); }
.oxx .oxc-first-tag { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 8px; font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--oxc-teal); }
.oxx .oxc-first-tag::before { content: ""; width: 18px; height: 2px; border-radius: 2px; background: var(--oxc-spectrum); }
.oxx .oxc-first b { display: block; font-size: 17px; font-weight: 700; letter-spacing: -.015em; }
.oxx .oxc-first > span:not(.oxc-first-tag) { display: block; margin-top: 4px; font-size: 14px; line-height: 1.5; color: var(--oxc-body); }
.oxx .oxc-first > svg { position: absolute; right: 18px; top: 50%; translate: 0 -50%; color: var(--oxc-navy); transition: transform .2s var(--oxc-ease); }
.oxx .oxc-first:hover > svg { transform: translateX(3px); }
.oxx .oxc-links { display: grid; grid-template-columns: 1fr 1fr; gap: 2px 20px; margin-top: 14px; }
.oxx .oxc-links a { display: flex; align-items: center; gap: 8px; min-height: 40px; padding: 6px 8px; margin: 0 -8px; border-radius: 8px; color: var(--oxc-body); font-size: 14.5px; line-height: 1.35; transition: background .15s, color .15s; }
.oxx .oxc-links a::before { content: ""; flex: none; width: 5px; height: 5px; border-radius: 50%; background: var(--oxc-line-2); transition: background .15s; }
.oxx .oxc-links a:hover { background: var(--oxc-soft); color: var(--oxc-navy); }
.oxx .oxc-links a:hover::before { background: var(--oxc-brand); }
.oxx .oxc-side { display: flex; flex-direction: column; gap: 16px; padding-left: 24px; }
.oxx .oxc-az ul { columns: 2; column-gap: 12px; margin-top: 10px; }
.oxx .oxc-az li { break-inside: avoid; }
.oxx .oxc-az a { display: block; padding: 5px 0; font-size: 13.5px; line-height: 1.3; color: var(--oxc-body); }
.oxx .oxc-az a:hover { color: var(--oxc-navy); }
.oxx .oxc-az .oxc-more { display: flex; margin-top: 8px; }
.oxx .oxc-feature { position: relative; display: block; margin-top: auto; padding: 18px; border-radius: 16px; background: var(--oxc-deep); color: #cbd5e1; overflow: hidden; }
.oxx .oxc-feature::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--oxc-spectrum); }
.oxx .oxc-feature b { display: block; color: #fff; font-size: 15.5px; letter-spacing: -.01em; }
.oxx .oxc-feature > span { display: block; margin-top: 6px; font-size: 13.5px; line-height: 1.5; }
.oxx .oxc-feature em { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; padding: 7px 12px; border-radius: 999px; background: #fff; color: var(--oxc-navy); font-style: normal; font-size: 13.5px; font-weight: 700; }
.oxx .oxc-feature:hover em svg { transform: translateX(3px); }
.oxx .oxc-feature em svg { transition: transform .2s var(--oxc-ease); }

/* Panoul mare fără nevoi („Spital și CAS”, „Longevitate”): introducerea, cardurile, locațiile. */
.oxx .oxc-mega-in.is-cards { grid-template-columns: 300px minmax(0, 1fr) 280px; }
.oxx .oxc-intro { display: flex; flex-direction: column; gap: 14px; padding-right: 24px; }
.oxx .oxc-intro h2 { font-size: 21px; line-height: 1.25; font-weight: 700; letter-spacing: -.02em; color: var(--oxc-ink); text-wrap: balance; }
.oxx .oxc-intro .oxc-note { padding: 10px 12px; border-radius: 12px; background: var(--oxc-soft); color: var(--oxc-body); }
.oxx .oxc-intro .oxc-first { padding: 16px 46px 16px 16px; }
.oxx .oxc-intro .oxc-first b { font-size: 16px; }
.oxx .oxc-intro .oxc-more { margin-top: auto; }
.oxx .oxc-cardgrid { display: flex; padding: 0 24px; border-left: 1px solid var(--oxc-line); border-right: 1px solid var(--oxc-line); }
/* Cardurile umplu înălțimea panoului (rânduri egale), oricâte ar fi. */
.oxx .oxc-cards { flex: 1; display: grid; grid-template-columns: 1fr 1fr; grid-auto-rows: 1fr; gap: 10px; }
.oxx .oxc-card { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 18px; height: 100%; min-height: 112px; padding: 16px 18px 16px 16px; border: 1px solid var(--oxc-line); border-radius: 16px; background: linear-gradient(165deg, #fff 45%, var(--oxc-soft)); color: var(--oxc-ink); transition: border-color .15s, background .15s, box-shadow .2s; }
.oxx .oxc-card .oxc-tile-ico { width: 40px; height: 40px; border-radius: 11px; }
.oxx .oxc-card b { display: block; font-size: 15.5px; font-weight: 650; letter-spacing: -.01em; }
.oxx .oxc-card small { display: block; margin-top: 4px; max-width: 34ch; font-size: 13px; line-height: 1.45; color: var(--oxc-mute); }
.oxx .oxc-card > svg { position: absolute; right: 14px; top: 18px; color: var(--oxc-line-2); transition: color .15s, transform .2s var(--oxc-ease); }
.oxx .oxc-card:hover { border-color: var(--oxc-navy); background: var(--oxc-soft); box-shadow: 0 16px 30px -24px rgb(28 57 142 / .55); }
.oxx .oxc-card:hover .oxc-tile-ico { background: var(--oxc-navy); color: #fff; }
.oxx .oxc-card:hover > svg { color: var(--oxc-navy); transform: translateX(3px); }
.oxx .oxc-card:hover small { color: var(--oxc-body); }
.oxx .oxc-mini { display: flex; flex-direction: column; gap: 10px; }
.oxx .oxc-mini-loc { padding: 14px; border-radius: 14px; background: var(--oxc-soft); border: 1px solid var(--oxc-line); }
.oxx .oxc-mini-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 8px; }
.oxx .oxc-mini-top a { color: var(--oxc-ink); font-size: 15px; }
.oxx .oxc-mini-top a:hover { color: var(--oxc-navy); }
.oxx .oxc-mini-loc small { display: block; margin-top: 4px; font-size: 13px; line-height: 1.45; color: var(--oxc-body); }
.oxx .oxc-mini-dir { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; font-size: 13.5px; font-weight: 650; color: var(--oxc-navy); }
.oxx .oxc-mega .oxc-status { height: 24px; max-width: 100%; padding: 0 9px; border: 1px solid var(--oxc-line); background: #fff; color: var(--oxc-mute); font-size: 12px; white-space: nowrap; }
.oxx .oxc-mega .oxc-status.is-open { border-color: #bbf7d0; background: #f0fdf4; color: var(--oxc-ok); }
.oxx .oxc-view .oxc-feature { margin-top: 18px; }
.oxx .oxc-view .oxc-note { padding: 10px 12px; border-radius: 12px; background: var(--oxc-soft); }

.oxx .oxc-drop { left: 50%; width: 580px; margin-left: -290px; top: calc(100% + 14px); padding: 10px; border-radius: 18px; background: #fff; border: 1px solid var(--oxc-line); box-shadow: 0 30px 60px -30px rgb(15 23 42 / .35); transform: translateY(-6px); }
.oxx .oxc-drop.is-open { transform: none; }
.oxx .oxc-drop::before { content: ""; position: absolute; left: 0; right: 0; top: -16px; height: 16px; }
.oxx .oxc-drop-list { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; }
.oxx .oxc-drop-link { display: grid; grid-template-columns: 38px 1fr; gap: 12px; padding: 10px; border-radius: 12px; color: var(--oxc-ink); transition: background .15s; }
.oxx .oxc-drop-link:hover { background: var(--oxc-soft); }
.oxx .oxc-drop-link:hover .oxc-tile-ico, .oxx .oxc-drop-link.is-hl .oxc-tile-ico { background: var(--oxc-navy); color: #fff; }
.oxx .oxc-drop-link b { display: block; font-size: 14.5px; font-weight: 650; letter-spacing: -.01em; }
.oxx .oxc-drop-link small { display: block; margin-top: 2px; font-size: 12.5px; line-height: 1.4; color: var(--oxc-mute); }
.oxx .oxc-drop-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-top: 8px; padding: 12px 12px 4px; border-top: 1px solid var(--oxc-line); }
.oxx .oxc-note { display: flex; align-items: center; gap: 8px; font-size: 12.5px; line-height: 1.4; color: var(--oxc-mute); }
.oxx .oxc-note svg { flex: none; color: var(--oxc-teal); }

/* ——— Căutarea: paleta de comenzi */
.oxx .oxc-palette { position: fixed; inset: 0; z-index: 90; display: flex; justify-content: center; align-items: flex-start; padding: max(10vh, 16px) 12px 16px; }
.oxx .oxc-palette[hidden] { display: none; }
.oxx .oxc-palette-scrim { position: absolute; inset: 0; background: rgb(7 22 40 / .5); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); animation: oxc-fade .2s; }
.oxx .oxc-palette-box { position: relative; display: flex; flex-direction: column; width: min(680px, 100%); max-height: min(640px, 100%); border-radius: 20px; background: #fff; box-shadow: 0 40px 100px -30px rgb(7 22 40 / .6); overflow: hidden; animation: oxc-pop .24s var(--oxc-ease); }
@keyframes oxc-fade { from { opacity: 0; } }
@keyframes oxc-pop { from { opacity: 0; transform: translateY(-10px) scale(.985); } }
.oxx .oxc-palette-form { display: flex; align-items: center; gap: 12px; padding: 0 14px 0 20px; border-bottom: 1px solid var(--oxc-line); color: var(--oxc-mute); }
.oxx .oxc-palette-form input { flex: 1; min-width: 0; height: 64px; border: 0; outline: 0; background: none; color: var(--oxc-ink); font: 500 18px var(--oxc-font); }
.oxx .oxc-palette-form input::placeholder { color: #8a96a8; }
.oxx .oxc-palette-form input::-webkit-search-cancel-button { display: none; }
.oxx .oxc-esc { height: 30px; padding: 0 10px; border: 1px solid var(--oxc-line-2); border-radius: 8px; background: #fff; color: var(--oxc-mute); font: 600 12.5px var(--oxc-font); cursor: pointer; }
.oxx .oxc-palette-list { flex: 1; overflow-y: auto; overscroll-behavior: contain; padding: 8px 10px 12px; }
.oxx .oxc-pal-h { padding: 14px 10px 6px; font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--oxc-mute); }
.oxx .oxc-opt { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 12px; min-height: 48px; padding: 7px 10px; border-radius: 12px; color: var(--oxc-ink); }
.oxx .oxc-opt .oxc-tile-ico { width: 34px; height: 34px; border-radius: 9px; }
.oxx .oxc-opt b { display: block; font-size: 15px; font-weight: 600; letter-spacing: -.01em; }
.oxx .oxc-opt small { display: block; margin-top: 1px; font-size: 12.5px; color: var(--oxc-mute); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.oxx .oxc-opt > span:not(.oxc-tile-ico) { min-width: 0; }
.oxx .oxc-palette-list { overflow-x: hidden; }
.oxx .oxc-palette .oxc-palette-form input:focus-visible { outline: none; }
.oxx .oxc-palette-form:focus-within { box-shadow: inset 0 -2px 0 var(--oxc-navy); }
.oxx .oxc-opt > svg { color: var(--oxc-line-2); }
.oxx .oxc-opt[aria-selected="true"], .oxx .oxc-opt:hover { background: var(--oxc-tint); }
.oxx .oxc-opt[aria-selected="true"] > svg { color: var(--oxc-navy); }
.oxx .oxc-opt.is-wa .oxc-tile-ico { background: #dcfce7; color: #15803d; }
.oxx .oxc-chips { display: flex; flex-wrap: wrap; gap: 8px; padding: 4px 10px 6px; }
.oxx .oxc-chips .oxc-opt { display: inline-flex; min-height: 40px; padding: 0 14px 0 8px; gap: 8px; border: 1px solid var(--oxc-line); border-radius: 999px; }
.oxx .oxc-chips .oxc-opt .oxc-tile-ico { width: 28px; height: 28px; border-radius: 50%; }
.oxx .oxc-chips .oxc-opt b { font-size: 14px; }
.oxx .oxc-opt.is-plain { grid-template-columns: 1fr auto; }
.oxx .oxc-pal-all[aria-selected="true"] { text-decoration: underline; text-underline-offset: 3px; }
.oxx .oxc-pal-empty { padding: 28px 12px; color: var(--oxc-body); font-size: 15px; }
.oxx .oxc-pal-all { display: flex; align-items: center; gap: 8px; margin: 8px 10px 0; padding: 12px 0 0; border-top: 1px solid var(--oxc-line); font-size: 14px; font-weight: 650; color: var(--oxc-navy); }
.oxx .oxc-palette-foot { display: none; gap: 18px; padding: 10px 18px; border-top: 1px solid var(--oxc-line); background: var(--oxc-soft); font-size: 12.5px; color: var(--oxc-mute); }
.oxx .oxc-palette-foot kbd { margin-right: 4px; }
@media (hover: hover) and (min-width: 768px) { .oxx .oxc-palette-foot { display: flex; } }

/* ——— Meniul de pe telefon: ecran întreg, cu nivelurile glisate lateral */
.oxx .oxc-sheet { position: fixed; inset: 0; z-index: 80; display: flex; justify-content: flex-end; }
.oxx .oxc-sheet[hidden] { display: none; }
.oxx .oxc-sheet-scrim { position: absolute; inset: 0; background: rgb(7 22 40 / .45); animation: oxc-fade .2s; }
.oxx .oxc-sheet-panel { position: relative; display: flex; flex-direction: column; width: min(480px, 100%); height: 100%; background: #fff; animation: oxc-slide .3s var(--oxc-ease); }
@keyframes oxc-slide { from { transform: translateX(40px); opacity: 0; } }
.oxx .oxc-sheet-head { display: flex; align-items: center; justify-content: space-between; height: var(--oxc-head-h); padding: 0 var(--oxc-gutter); border-bottom: 1px solid var(--oxc-line); flex: none; }
.oxx .oxc-sheet-head img { height: 30px; width: auto; }
.oxx .oxc-close { display: inline-flex; align-items: center; gap: 6px; height: 44px; padding: 0 12px; border: 1px solid var(--oxc-line-2); border-radius: 12px; background: #fff; color: var(--oxc-ink); font: 650 14.5px var(--oxc-font); cursor: pointer; }
.oxx .oxc-views { position: relative; flex: 1; overflow: hidden; }
.oxx .oxc-view { position: absolute; inset: 0; overflow-y: auto; overscroll-behavior: contain; padding: 18px var(--oxc-gutter) 28px; background: #fff; transition: transform .3s var(--oxc-ease), visibility 0s .3s; visibility: hidden; transform: translateX(100%); }
.oxx .oxc-view.is-active { visibility: visible; transform: none; transition: transform .3s var(--oxc-ease); }
.oxx .oxc-view.is-behind { transform: translateX(-28%); }
.oxx .oxc-sheet-search { display: flex; align-items: center; gap: 10px; width: 100%; height: 52px; padding: 0 16px; border: 1px solid var(--oxc-line-2); border-radius: 14px; background: var(--oxc-soft); color: var(--oxc-mute); font: 500 16px var(--oxc-font); text-align: left; cursor: pointer; }
.oxx .oxc-view > .oxc-eyebrow { display: block; margin: 24px 2px 10px; }
.oxx .oxc-tiles { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.oxx .oxc-tile { display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 14px; min-height: 104px; padding: 14px; border: 1px solid var(--oxc-line); border-radius: 16px; background: #fff; color: var(--oxc-ink); font: 650 15px/1.25 var(--oxc-font); letter-spacing: -.01em; text-align: left; cursor: pointer; }
.oxx .oxc-tile:active { background: var(--oxc-tint); }
.oxx .oxc-rows { margin-top: 22px; border-top: 1px solid var(--oxc-line); }
.oxx .oxc-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 58px; padding: 0 2px; border: 0; border-bottom: 1px solid var(--oxc-line); background: none; color: var(--oxc-ink); font: 650 17px var(--oxc-font); letter-spacing: -.01em; text-align: left; cursor: pointer; }
.oxx .oxc-row svg { color: var(--oxc-mute); }
.oxx .oxc-row[aria-current] { color: var(--oxc-navy); }
.oxx .oxc-row.is-minor { min-height: 50px; font-size: 15.5px; font-weight: 550; color: var(--oxc-body); }
.oxx .oxc-sheet .oxc-feature { margin-top: 22px; }
.oxx .oxc-back { display: inline-flex; align-items: center; gap: 6px; height: 40px; margin: -6px 0 10px -8px; padding: 0 10px; border: 0; border-radius: 10px; background: none; color: var(--oxc-navy); font: 650 15px var(--oxc-font); cursor: pointer; }
.oxx .oxc-view h2 { font-size: 26px; font-weight: 700; letter-spacing: -.025em; color: var(--oxc-ink); }
.oxx .oxc-view h2 + p { margin-top: 6px; font-size: 15.5px; line-height: 1.5; color: var(--oxc-body); }
.oxx .oxc-view .oxc-first { margin-top: 18px; }
.oxx .oxc-view .oxc-links { grid-template-columns: 1fr; margin-top: 12px; }
.oxx .oxc-view .oxc-links a { min-height: 50px; font-size: 16px; border-bottom: 1px solid var(--oxc-line); border-radius: 0; }
.oxx .oxc-view .oxc-more { margin-top: 16px; font-size: 15px; }
.oxx .oxc-view .oxc-drop-list { grid-template-columns: 1fr; margin-top: 14px; }
.oxx .oxc-view .oxc-drop-link { padding: 12px 6px; border-bottom: 1px solid var(--oxc-line); border-radius: 0; }
.oxx .oxc-view .oxc-note { margin-top: 14px; font-size: 14px; }
.oxx .oxc-sheet-foot { flex: none; padding: 12px var(--oxc-gutter) calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid var(--oxc-line); background: #fff; }
.oxx .oxc-sheet-foot .oxc-cta { display: flex; justify-content: center; width: 100%; height: 52px; font-size: 16px; }
.oxx .oxc-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 8px; }
.oxx .oxc-pair a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 48px; border: 1px solid var(--oxc-line-2); border-radius: 12px; color: var(--oxc-ink); font: 650 15px var(--oxc-font); }
.oxx .oxc-pair a.is-wa svg { color: #16a34a; }

/* ——— Starea unei locații („Deschis acum”). Subsolul are foaia lui, foot-brand.css. */
.oxx .oxc-status { display: inline-flex; align-items: center; gap: 7px; height: 28px; padding: 0 11px; border-radius: 999px; background: rgb(255 255 255 / .08); color: #cbd5e1; font-size: 12.5px; font-weight: 650; }
.oxx .oxc-status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #94a3b8; }
.oxx .oxc-status.is-open { background: rgb(34 197 94 / .14); color: #86efac; }
.oxx .oxc-status.is-open::before { background: #22c55e; }

/* ——— Bara de jos de pe telefon */
.oxx .oxc-dock { position: fixed; left: 0; right: 0; bottom: 0; z-index: 56; display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 4px; padding: 6px 8px calc(6px + env(safe-area-inset-bottom)); background: rgb(255 255 255 / .92); backdrop-filter: saturate(1.6) blur(16px); -webkit-backdrop-filter: saturate(1.6) blur(16px); border-top: 1px solid var(--oxc-line); }
.oxx .oxc-dock a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; min-height: 52px; border-radius: 14px; color: var(--oxc-ink); font-size: 12px; font-weight: 650; }
.oxx .oxc-dock a.is-primary { background: var(--oxc-navy); color: #fff; }
.oxx .oxc-dock a.is-wa svg { color: #16a34a; }
/* Pagina curentă: textul bleumarin, dar nu pe butonul plin (pe /contact/, „Programare” ar fi bleumarin pe bleumarin) */
.oxx .oxc-dock a[aria-current]:not(.is-primary) { color: var(--oxc-navy); }
@media (min-width: 1024px) { .oxx .oxc-dock { display: none; } }
@media (max-width: 1023px) { .oxx .oxp-wa { display: none; } }

@media (prefers-reduced-motion: reduce) {
  .oxx :is(.oxc-head, .oxc-panel, .oxc-view, .oxc-scrim, .oxc-pane, .oxc-palette-box, .oxc-sheet-panel) { transition: none !important; animation: none !important; }
  .oxx .oxc-dot.is-open { animation: none; }
}
@media print { .oxx :is(.oxc-head, .oxc-dock, .oxc-sign) { display: none !important; } }

/* /assets/site/nav-brand.css */
/* Navigația după Brand book, Ediția 3 (/branding/), pe toate paginile: antetul, panourile mari, meniul de pe telefon, căutarea
   și bara de jos. Variabilele se schimbă doar pe aceste componente, deci paginile care nu au trecut încă la noul stil rămân
   cum sunt. Se încarcă după chrome.css. Panoul: o coloană bleumarin, una albă, una deschisă; în locul cardurilor, rânduri
   despărțite de linii fine, ca pe homepage. */
.oxx :is(.oxc-head, .oxc-sheet, .oxc-palette, .oxc-dock, .oxc-scrim) {
  --oxc-brand: #3b86d1;
  --oxc-navy: #0d2340;
  --oxc-blue: #13315b;
  --oxc-teal: #a67c43;
  --oxc-deep: #0d2340;
  --oxc-deep-2: #13315b;
  --oxc-ink: #14243c;
  --oxc-body: #4d5a6b;
  --oxc-mute: #5f6b7c;
  --oxc-line: #e4e9f1;
  --oxc-line-2: #d5dce6;
  --oxc-soft: #f5f8fc;
  --oxc-tint: #eef3fa;
  --oxc-spectrum: linear-gradient(90deg, #b8935a, #b8935a);
  --oxc-font: "Hanken Grotesk", "Hanken Grotesk Fallback", ui-sans-serif, system-ui, sans-serif;
  --on-serif: Lora, "Lora Fallback", Georgia, serif;
  --on-gold: #b8935a;
  --on-gold-d: #a67c43;
  --on-gold-l: #d9bd8f;
  --on-gold-text: #8a6530; /* etichetele mici pe alb: auriul închis din manual are doar 3,8:1, sub pragul AA */
}
.oxx .oxc-scrim { background: rgb(13 35 64 / .42); }
.oxx :is(.oxc-head, .oxc-sheet, .oxc-palette) .oxc-eyebrow { font-size: 13px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--on-gold-text); }

/* Pe bleumarin, conturul de focus trebuie să rămână vizibil */
.oxx :is(.oxc-needs, .oxc-intro) :focus-visible { outline-color: var(--on-gold-l); }

/* ——— Antetul */
.oxx .oxc-logo img { width: 160px; height: auto; }
.oxx .oxc-top { border-radius: 8px; font: 600 14.5px/1 var(--oxc-font); letter-spacing: 0; }
.oxx .oxc-top[aria-current]::after { height: 2px; border-radius: 0; }
.oxx :is(.oxc-icon, .oxc-search, .oxc-burger, .oxc-cta) { border-radius: 10px; }
.oxx .oxc-call { border-radius: 10px; }
.oxx .oxc-call-txt small { font-weight: 500; }
.oxx .oxc-call-txt b { font-weight: 600; letter-spacing: 0; }
.oxx .oxc-cta { font-weight: 600; letter-spacing: 0; }
.oxx .oxc-cta:hover { background: var(--oxc-blue); }
.oxx .oxc-burger { font-weight: 600; }
@media (max-width: 359px) { .oxx .oxc-burger { gap: 0; padding: 0 11px; font-size: 0; } }

/* ——— Panoul mare */
.oxx .oxc-mega { border: 0; border-radius: 14px; box-shadow: 0 50px 90px -40px rgb(13 35 64 / .5), 0 0 0 1px rgb(13 35 64 / .06); }
.oxx .oxc-mega::after { height: 2px; }
.oxx :is(.oxc-mega-in, .oxc-mega-in.is-cards) { grid-template-columns: 350px minmax(0, 1fr) 310px; padding: 0; }
.oxx .oxc-more { font-weight: 600; }

/* Coloana bleumarin: nevoile; cea aleasă se leagă de panoul alb */
.oxx .oxc-needs { padding: 22px 0 22px 14px; background: var(--oxc-navy); }
.oxx .oxc-needs .oxc-eyebrow { padding: 0 14px 12px 10px; line-height: 1.35; color: var(--on-gold-l); }
.oxx .oxc-need { grid-template-columns: 36px minmax(0, 1fr) 14px; gap: 10px; margin-right: 14px; padding: 7px 12px 7px 10px; border-radius: 10px; color: #fff; }
.oxx .oxc-need:hover { background: rgb(255 255 255 / .07); }
.oxx .oxc-need b { font-weight: 600; letter-spacing: 0; }
.oxx .oxc-need small { font-size: 12.5px; line-height: 1.32; color: #b9c6d8; }
.oxx .oxc-need .oxc-tile-ico { width: 36px; height: 36px; border-radius: 9px; background: rgb(255 255 255 / .09); color: #fff; }
.oxx .oxc-need > svg { color: rgb(255 255 255 / .35); }
.oxx .oxc-need.is-active { margin-right: 0; padding-right: 26px; border-radius: 10px 0 0 10px; background: #fff; color: var(--oxc-navy); }
.oxx .oxc-need.is-active small { color: var(--oxc-body); }
.oxx .oxc-need.is-active .oxc-tile-ico { background: var(--oxc-navy); color: #fff; }
.oxx .oxc-need.is-active > svg { color: var(--on-gold-d); }

/* Coloana albă: nevoia aleasă, primul pas și linkurile ca un mic index */
.oxx .oxc-panes { padding: 24px 32px; border: 0; }
.oxx .oxc-pane-head { align-items: center; margin: 0 0 14px; }
.oxx .oxc-pane-head h2 { font: 400 1.75rem/1.2 var(--on-serif); letter-spacing: -.005em; color: var(--oxc-navy); }
.oxx .oxc-first { padding: 16px 64px 16px 18px; border: 0; border-radius: 12px; background: var(--oxc-soft); transition: background .15s; }
.oxx .oxc-first:hover { border: 0; background: var(--oxc-tint); box-shadow: none; }
.oxx .oxc-first-tag { margin-bottom: 3px; font-size: 13px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--on-gold-text); }
.oxx .oxc-first-tag::before { display: none; }
.oxx .oxc-first b { font: 400 1.25rem/1.25 var(--on-serif); letter-spacing: 0; color: var(--oxc-navy); }
.oxx .oxc-first > svg { right: 14px; box-sizing: border-box; width: 36px; height: 36px; padding: 9px; border-radius: 8px; background: var(--oxc-navy); color: #fff; }
.oxx .oxc-links { gap: 0 24px; margin-top: 12px; }
.oxx .oxc-links li { border-bottom: 1px solid var(--oxc-line); }
.oxx .oxc-links a { justify-content: space-between; min-height: 42px; margin: 0; padding: 8px 0; border-radius: 0; color: var(--oxc-ink); font-weight: 500; }
.oxx .oxc-links a::before { display: none; }
.oxx .oxc-links a::after { content: ""; flex: none; width: 6px; height: 6px; margin-right: 3px; border-top: 1.5px solid currentColor; border-right: 1.5px solid currentColor; opacity: .4; transform: rotate(45deg); transition: opacity .15s, transform .15s; }
.oxx .oxc-links a:hover { background: none; color: var(--oxc-blue); }
.oxx .oxc-links a:hover::after { opacity: 1; transform: translateX(2px) rotate(45deg); }

/* Coloana deschisă: lista A–Z, locațiile și îndrumarea */
.oxx .oxc-side { gap: 14px; padding: 22px 20px; border-left: 1px solid var(--oxc-line); background: var(--oxc-soft); }
.oxx .oxc-az ul { column-gap: 14px; margin-top: 8px; }
.oxx .oxc-az a:not(.oxc-more) { padding: 3px 0; color: var(--oxc-ink); }
.oxx .oxc-az a:not(.oxc-more):hover { color: var(--oxc-blue); text-decoration: underline; text-decoration-color: var(--on-gold); text-underline-offset: 3px; }
.oxx .oxc-feature { padding: 14px; border: 1px solid var(--oxc-line); border-radius: 12px; background: #fff; color: var(--oxc-body); }
.oxx .oxc-feature::before { display: none; }
.oxx .oxc-feature b { font: 400 1.1rem/1.25 var(--on-serif); letter-spacing: 0; color: var(--oxc-navy); }
.oxx .oxc-feature > span { margin-top: 4px; font-size: 13px; line-height: 1.45; }
.oxx .oxc-feature em { margin-top: 10px; padding: 7px 11px; border-radius: 8px; background: var(--oxc-navy); color: #fff; font-size: 13px; font-weight: 600; }
.oxx .oxc-feature:hover { border-color: var(--oxc-navy); }
.oxx .oxc-mini { gap: 0; }
.oxx .oxc-mini > .oxc-eyebrow { margin-bottom: 8px; }
.oxx .oxc-mini-loc { padding: 11px 0; border: 0; border-top: 1px solid var(--oxc-line-2); border-radius: 0; background: none; }
.oxx .oxc-mini-top a b { font: 500 1.05rem/1.3 var(--on-serif); color: var(--oxc-navy); }
.oxx .oxc-mini-top { margin-bottom: 5px; }
.oxx .oxc-mini-loc small { display: inline; margin: 0 8px 0 0; }
.oxx .oxc-mini-dir { margin-top: 0; font-size: 13px; font-weight: 600; white-space: nowrap; }
.oxx .oxc-mini-dir svg { color: var(--on-gold-d); }

/* Panoul fără nevoi: în stânga introducerea pe bleumarin, în mijloc linkurile ca rânduri */
.oxx .oxc-intro { gap: 12px; padding: 22px; background: var(--oxc-navy); color: #d9e2ee; }
.oxx .oxc-intro .oxc-eyebrow { color: var(--on-gold-l); }
.oxx .oxc-intro h2 { font: 400 1.5rem/1.26 var(--on-serif); letter-spacing: -.005em; color: #fff; }
.oxx .oxc-intro .oxc-note { align-items: flex-start; padding: 0; border-radius: 0; background: none; color: #d9e2ee; font-size: 13px; }
.oxx .oxc-intro .oxc-note svg { margin-top: 1px; color: var(--on-gold); }
.oxx .oxc-intro .oxc-first { padding: 14px 60px 14px 16px; background: #fff; }
.oxx .oxc-intro .oxc-first:hover { background: var(--oxc-tint); }
.oxx .oxc-intro .oxc-first b { font-size: 1.15rem; }
.oxx .oxc-intro .oxc-first > span:not(.oxc-first-tag) { font-size: 13.5px; line-height: 1.45; }
.oxx .oxc-intro .oxc-more { color: #fff; }
.oxx .oxc-intro .oxc-more:hover { color: var(--on-gold-l); }
.oxx .oxc-cardgrid { padding: 8px 28px; border: 0; }
.oxx .oxc-cards { grid-template-columns: minmax(0, 1fr); gap: 0; }
.oxx .oxc-cards li + li { border-top: 1px solid var(--oxc-line); }
.oxx .oxc-card { display: grid; grid-template-columns: 38px minmax(0, 1fr) 18px; align-items: center; gap: 14px; min-height: 62px; padding: 8px 6px; border: 0; border-radius: 0; background: none; transition: background .15s; }
.oxx .oxc-card .oxc-tile-ico { width: 38px; height: 38px; border-radius: 9px; }
.oxx .oxc-card b { font: 400 1.12rem/1.25 var(--on-serif); letter-spacing: 0; color: var(--oxc-navy); }
.oxx .oxc-card small { max-width: none; margin-top: 2px; font-size: 13.5px; color: var(--oxc-body); }
.oxx .oxc-card > svg { position: static; color: var(--oxc-line-2); }
.oxx .oxc-card:hover { border: 0; background: var(--oxc-soft); box-shadow: none; }
.oxx .oxc-card:hover > svg { color: var(--on-gold-d); }
/* Cu puține linkuri, rândurile sunt mai înalte: titlurile cresc odată cu ele */
.oxx .oxc-cards:not(:has(> li:nth-child(5))) .oxc-card { grid-template-columns: 44px minmax(0, 1fr) 18px; }
.oxx .oxc-cards:not(:has(> li:nth-child(5))) .oxc-tile-ico { width: 44px; height: 44px; border-radius: 10px; }
.oxx .oxc-cards:not(:has(> li:nth-child(5))) .oxc-card b { font-size: 1.3rem; }
@media (min-width: 1280px) {
  .oxx .oxc-card > span:not(.oxc-tile-ico) { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: center; column-gap: 18px; }
  .oxx .oxc-card small { margin-top: 0; }
}
@media (max-width: 1279px) {
  .oxx :is(.oxc-mega-in, .oxc-mega-in.is-cards) { grid-template-columns: 250px minmax(0, 1fr) 272px; }
  .oxx .oxc-panes { padding: 20px 22px; }
  .oxx .oxc-cardgrid { padding: 8px 18px; }
  .oxx .oxc-side { padding: 20px 16px; }
  .oxx .oxc-az ul { column-gap: 12px; }
  .oxx .oxc-az a:not(.oxc-more) { font-size: 12.5px; }
  .oxx .oxc-pane-head h2 { font-size: 1.5rem; }
  .oxx .oxc-need small { display: none; }
}

/* Meniul derulant simplu */
.oxx .oxc-drop { border-radius: 14px; }
.oxx .oxc-drop-link { border-radius: 10px; }
.oxx .oxc-drop-link b { font-weight: 600; letter-spacing: 0; }

/* ——— Meniul de pe telefon */
.oxx .oxc-sheet-scrim { background: rgb(13 35 64 / .5); }
.oxx .oxc-sheet-head img { width: 160px; height: auto; }
.oxx :is(.oxc-close, .oxc-sheet-search, .oxc-pair a) { border-radius: 10px; }
.oxx .oxc-close { font-weight: 600; }
.oxx .oxc-sheet-search { height: 50px; font-size: 15.5px; }
.oxx .oxc-view > .oxc-eyebrow { margin: 20px 2px 8px; }
.oxx .oxc-tiles { gap: 8px; }
.oxx .oxc-tile { gap: 10px; min-height: 92px; padding: 12px; border-radius: 12px; font: 600 14.5px/1.25 var(--oxc-font); letter-spacing: 0; }
.oxx .oxc-tile .oxc-tile-ico { width: 36px; height: 36px; border-radius: 9px; }
.oxx .oxc-rows { margin-top: 18px; }
.oxx .oxc-row { min-height: 54px; font: 400 1.2rem/1.25 var(--on-serif); letter-spacing: 0; color: var(--oxc-navy); }
.oxx .oxc-row.is-minor { min-height: 46px; font: 500 15px/1.3 var(--oxc-font); }
.oxx .oxc-row svg { color: var(--on-gold-d); }
.oxx .oxc-back { font-weight: 600; }
.oxx .oxc-view h2 { font: 400 1.75rem/1.2 var(--on-serif); letter-spacing: -.005em; color: var(--oxc-navy); }
.oxx .oxc-view h2 + p { font-size: 15px; }
.oxx .oxc-view .oxc-links { gap: 0; }
.oxx .oxc-view .oxc-links a { min-height: 48px; border-bottom: 0; font-size: 15.5px; }
.oxx .oxc-view .oxc-drop-link { grid-template-columns: 38px minmax(0, 1fr); padding: 10px 0; }
.oxx .oxc-view .oxc-drop-link b { font: 400 1.12rem/1.25 var(--on-serif); color: var(--oxc-navy); }
.oxx .oxc-view .oxc-drop-link small { font-size: 13.5px; color: var(--oxc-body); }
.oxx .oxc-sheet .oxc-feature { margin-top: 18px; background: var(--oxc-soft); }
.oxx .oxc-sheet-foot .oxc-cta { height: 50px; font-size: 15.5px; }
.oxx .oxc-pair a { height: 46px; font-weight: 600; font-size: 14.5px; }

/* ——— Căutarea: pe ecrane mici, o pagină întreagă; de la 1024 px, un panou sub antet, ca meniurile mari */
@keyframes oxc-pal-drop { from { opacity: 0; transform: translateY(-8px); } }
.oxx .oxc-palette { align-items: stretch; padding: 0; }
.oxx .oxc-palette-box { width: 100%; height: 100%; max-height: none; border-radius: 0; box-shadow: none; animation: oxc-fade .18s; }
.oxx .oxc-palette-form { flex: none; gap: 10px; padding: 0 10px 0 16px; }
.oxx .oxc-palette-form input { height: 60px; font: 500 16px var(--oxc-font); }
.oxx.oxx .oxc-palette-form input:focus-visible { outline: 0; box-shadow: none; border-radius: 0; }
.oxx .oxc-esc { height: 36px; border-radius: 8px; font-weight: 600; }
.oxx .oxc-esc span:first-child { display: none; }
.oxx .oxc-palette-list { padding: 0; }
.oxx .oxc-pal-grid { display: grid; grid-template-columns: minmax(0, 1fr); }
.oxx .oxc-pal-grid[hidden] { display: none; }
.oxx .oxc-pal-col, .oxx .oxc-pal-needs, .oxx .oxc-pal-side { padding: 16px; }
.oxx .oxc-pal-col + .oxc-pal-col { padding-top: 6px; }
.oxx .oxc-pal-side { background: var(--oxc-soft); }
.oxx .oxc-pal-h { padding: 0 0 8px; font-size: 13px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--on-gold-text); }
.oxx .oxc-opt { border-radius: 0; padding: 8px 4px; }
.oxx .oxc-opt b { letter-spacing: 0; }
.oxx .oxc-opt .oxc-tile-ico { width: 36px; height: 36px; border-radius: 9px; }
.oxx .oxc-opt[aria-selected="true"], .oxx .oxc-opt:hover { background: var(--oxc-soft); }
.oxx .oxc-opt[aria-selected="true"] > svg, .oxx .oxc-opt:hover > svg { color: var(--on-gold-d); }
.oxx :is(.oxc-pal-col, .oxc-pal-side, .oxc-pal-group) .oxc-opt { grid-template-columns: 36px minmax(0, 1fr) 16px; border-top: 1px solid var(--oxc-line); }
.oxx :is(.oxc-pal-col, .oxc-pal-group) .oxc-opt b { font: 400 1.06rem/1.28 var(--on-serif); color: var(--oxc-navy); white-space: normal; }
.oxx .oxc-pal-col .oxc-opt.is-thumb { grid-template-columns: 48px minmax(0, 1fr) 16px; }
.oxx .oxc-pal-col .oxc-opt.is-thumb b { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.oxx .oxc-thumb { display: block; width: 48px; height: 48px; border-radius: 8px; background: var(--oxc-tint); object-fit: cover; }
.oxx .oxc-pal-side .oxc-opt { min-height: 50px; border-color: var(--oxc-line-2); }
.oxx .oxc-pal-side .oxc-opt b { font-size: 14.5px; font-weight: 600; }
.oxx .oxc-pal-side .oxc-opt:hover, .oxx .oxc-pal-side .oxc-opt[aria-selected="true"] { background: var(--oxc-tint); }
.oxx .oxc-chips { padding: 0; gap: 6px; }
.oxx .oxc-chips .oxc-opt { min-height: 38px; padding: 0 12px 0 6px; border-color: var(--oxc-line-2); border-radius: 10px; }
.oxx .oxc-chips .oxc-opt .oxc-tile-ico { width: 26px; height: 26px; border-radius: 7px; }
.oxx .oxc-chips .oxc-opt b { font-size: 13.5px; font-weight: 600; }
.oxx .oxc-chips .oxc-opt > svg { display: none; }
@media (max-width: 1023px) { .oxx .oxc-chips { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); } .oxx .oxc-chips .oxc-opt { padding-right: 8px; } .oxx .oxc-chips .oxc-opt b { line-height: 1.25; white-space: normal; } }
.oxx .oxc-pal-results { padding: 16px; }
.oxx .oxc-pal-results[hidden] { display: none; }
.oxx .oxc-pal-group + .oxc-pal-group { margin-top: 14px; }
.oxx .oxc-pal-group .oxc-opt.is-plain { grid-template-columns: minmax(0, 1fr) 16px; }
.oxx .oxc-pal-all { margin: 14px 0 0; padding: 12px 0 0; font-weight: 600; }
.oxx .oxc-pal-empty { padding: 12px 0; }
@media (min-width: 1024px) {
  .oxx .oxc-palette { z-index: 58; align-items: flex-start; padding: calc(var(--oxc-head-h) + 8px) var(--oxc-gutter) 16px; }
  .oxx .oxc-palette-scrim { background: rgb(13 35 64 / .42); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); }
  .oxx .oxc-palette-box { width: min(calc(1440px - 2 * var(--oxc-gutter)), 100%); height: auto; max-height: calc(100dvh - var(--oxc-head-h) - 24px); border-radius: 14px; box-shadow: 0 50px 90px -40px rgb(13 35 64 / .5), 0 0 0 1px rgb(13 35 64 / .06); animation: oxc-pal-drop .2s var(--oxc-ease); }
  .oxx .oxc-palette-form { padding: 0 14px 0 24px; }
  .oxx .oxc-palette-form input { height: 64px; font-size: 18px; }
  .oxx .oxc-esc span:first-child { display: inline; }
  .oxx .oxc-esc span:last-child { display: none; }
  .oxx .oxc-pal-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 300px; }
  .oxx .oxc-pal-col, .oxx .oxc-pal-col + .oxc-pal-col { padding: 18px 24px 16px; }
  .oxx .oxc-pal-col + .oxc-pal-col { border-left: 1px solid var(--oxc-line); }
  .oxx .oxc-pal-side { grid-column: 3; grid-row: 1; padding: 18px 20px 16px; border-left: 1px solid var(--oxc-line); }
  .oxx .oxc-pal-needs { grid-column: 1 / -1; grid-row: 2; display: flex; align-items: center; gap: 16px; padding: 12px 24px; border-top: 1px solid var(--oxc-line); }
  .oxx .oxc-pal-needs .oxc-pal-h { flex: none; padding: 0; }
  .oxx .oxc-pal-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 18px 48px; padding: 18px 24px 20px; }
  .oxx .oxc-pal-group + .oxc-pal-group { margin-top: 0; }
  .oxx :is(.oxc-pal-all, .oxc-pal-empty) { grid-column: 1 / -1; }
  .oxx .oxc-pal-all { margin: 0; }
}
.oxx .oxc-search[aria-expanded="true"] { border-color: var(--oxc-navy); background: #fff; color: var(--oxc-ink); }

/* ——— Bara de jos */
.oxx .oxc-dock a { border-radius: 10px; font-weight: 600; }

/* /assets/site/foot-brand.css */
/* Subsolul după Brand book, Ediția 3 (/branding/), același pe toate paginile, inclusiv pe cele care nu au trecut încă la noul
   stil. Se încarcă după nav-brand.css. Un singur mesaj (semnătura), un pas următor, apoi informația ca text, fără cutii:
   bleumarin, alb și un accent auriu; Lora pentru titluri, Hanken Grotesk pentru text. Mobil întâi: sub 1024 px, telefonul,
   WhatsApp-ul și programarea sunt în bara de jos, deci subsolul nu le repetă. Marcajul: chromeBottom din layout.mjs. */
.oxx .oxc-foot {
  --of-serif: Lora, "Lora Fallback", Georgia, serif;
  --of-sans: "Hanken Grotesk", "Hanken Grotesk Fallback", ui-sans-serif, system-ui, sans-serif;
  --of-gold: #d9bd8f; /* auriul deschis: pe bleumarin e lizibil și la mărimi mici */
  --of-text: rgb(255 255 255 / .76);
  --of-soft: rgb(255 255 255 / .64);
  --of-line: rgb(255 255 255 / .13);
  padding: 36px 0 calc(var(--oxc-dock-h) + env(safe-area-inset-bottom));
  background: #0d2340;
  color: var(--of-text);
  font-family: var(--of-sans);
}
/* Regulile vechi `.oxx li`, `.oxx dd` dau text închis: aici totul moștenește culorile subsolului */
.oxx.oxx .oxc-foot :where(li, dd, span) { color: inherit; }
.oxx.oxx .oxc-foot a { color: inherit; transition: color .15s; }
.oxx.oxx .oxc-foot a:hover { color: #fff; }

/* Mesajul și pasul următor */
.oxx .oxc-foot-top { padding-bottom: 28px; border-bottom: 1px solid var(--of-line); }
.oxx.oxx .oxc-sign p { font: 400 clamp(1.375rem, .95rem + 1.9vw, 2.25rem)/1.22 var(--of-serif); letter-spacing: -.01em; color: #fff; text-wrap: balance; }
.oxx .oxc-sign span { display: block; }
.oxx .oxc-foot-act { display: none; }
.oxx.oxx .oxc-foot-tel { display: grid; gap: 1px; }
.oxx .oxc-foot-tel small { font-size: 13px; line-height: 1.3; color: var(--of-soft); }
.oxx .oxc-foot-tel b { font-size: 19px; font-weight: 600; line-height: 1.25; color: #fff; font-variant-numeric: tabular-nums; }
.oxx.oxx .oxc-foot .oxc-foot-book { display: inline-flex; align-items: center; gap: 12px; min-height: 52px; padding: 0 20px; border-radius: 10px; background: #fff; color: #0d2340; font: 600 16px/1.25 var(--of-sans); white-space: nowrap; transition: background .15s; }
.oxx.oxx .oxc-foot .oxc-foot-book:hover { background: #eef3fa; color: #0d2340; }
.oxx .oxc-foot-book svg { transition: transform .2s; }
.oxx .oxc-foot-book:hover svg { transform: translateX(3px); }

/* Locațiile și linkurile: text pe bleumarin, despărțit de linii fine */
.oxx .oxc-foot-main { display: grid; gap: 28px; padding: 28px 0; }
.oxx .oxc-locs { display: grid; gap: 24px; }
.oxx.oxx .oxc-foot h2 { margin: 0; font: 400 17px/1.3 var(--of-serif); letter-spacing: 0; color: #fff; }
/* O locație se citește ca o coloană de linkuri: rânduri cu același număr de linii la amândouă, deci rămân aliniate; programul,
   care poate avea oricâte rânduri, e ultimul. */
.oxx .oxc-loc { display: block; }
.oxx.oxx .oxc-loc p { margin: 0; font: 400 14.5px/1.45 var(--of-sans); color: var(--of-text); }
.oxx.oxx .oxc-loc .oxc-loc-name { margin-top: 6px; color: #fff; }
.oxx .oxc-loc-links { display: flex; flex-wrap: wrap; gap: 0 18px; margin-top: 2px; }
.oxx.oxx .oxc-loc-links a { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; color: #fff; font-size: 14px; font-weight: 600; }
.oxx.oxx .oxc-loc-links a:hover { color: var(--of-gold); }
.oxx .oxc-loc-links svg { color: var(--of-gold); }
.oxx .oxc-hours { display: grid; grid-template-columns: 6.8em auto; gap: 1px 0; justify-content: start; margin: 6px 0 0; font-size: 13.5px; line-height: 1.45; }
.oxx .oxc-hours div { display: contents; }
.oxx .oxc-hours dt { color: var(--of-soft); }
.oxx .oxc-hours dd { margin: 0; color: var(--of-text); font-variant-numeric: tabular-nums; }

.oxx .oxc-col { border-top: 1px solid var(--of-line); }
.oxx .oxc-col:last-child { border-bottom: 1px solid var(--of-line); }
.oxx .oxc-col summary { display: flex; align-items: center; justify-content: space-between; min-height: 50px; list-style: none; cursor: pointer; }
.oxx .oxc-col summary::-webkit-details-marker { display: none; }
.oxx .oxc-col summary svg { color: var(--of-soft); transition: transform .2s; }
.oxx .oxc-col[open] summary svg { transform: rotate(180deg); }
.oxx .oxc-col ul { padding-bottom: 12px; }
.oxx.oxx .oxc-col li a { display: block; padding: 8px 0; font-size: 15px; line-height: 1.35; }

/* Identitatea: sigla pe alb, la cel puțin 160 px (manualul, capitolul despre siglă), dovezile și rețelele sociale */
.oxx .oxc-foot-id { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 12px; padding: 4px 0 20px; }
.oxx .oxc-foot-logo { flex: none; line-height: 0; border-radius: 10px; }
.oxx .oxc-foot-logo img { box-sizing: content-box; width: 160px; height: auto; padding: 6px 8px; border-radius: 10px; background: #fff; }
.oxx .oxc-socials { display: flex; }
.oxx .oxc-socials a { display: inline-grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; transition: background .15s, color .15s; }
.oxx .oxc-socials a:hover { background: rgb(255 255 255 / .09); }
.oxx .oxc-proof { order: 3; flex-basis: 100%; display: flex; flex-wrap: wrap; gap: 6px 20px; font-size: 13.5px; line-height: 1.4; color: var(--of-text); }
.oxx .oxc-proof li { display: flex; align-items: center; gap: 7px; }
.oxx .oxc-proof svg { flex: none; color: var(--of-gold); }
.oxx .oxc-proof b { font-weight: 600; color: #fff; }

.oxx .oxc-legal { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 24px; padding: 12px 0 20px; border-top: 1px solid var(--of-line); font-size: 13px; line-height: 1.4; color: var(--of-soft); }
.oxx .oxc-legal nav { display: flex; flex-wrap: wrap; align-items: center; gap: 0 16px; }
.oxx.oxx .oxc-legal a, .oxx .oxc-legal button { display: inline-block; padding: 6px 0; border: 0; background: none; color: var(--of-soft); font: inherit; cursor: pointer; }
.oxx.oxx .oxc-legal :is(a, button):hover { color: #fff; }

@media (min-width: 640px) { .oxx .oxc-locs { grid-template-columns: 1fr 1fr; gap: 28px; } .oxx .oxc-loc-addr span { display: block; } }
@media (min-width: 768px) {
  .oxx .oxc-foot-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
  .oxx .oxc-col, .oxx .oxc-col:last-child { border: 0; }
  .oxx .oxc-col summary { min-height: 0; margin-bottom: 8px; cursor: default; pointer-events: none; }
  .oxx .oxc-col summary svg { display: none; }
  .oxx .oxc-col ul { padding: 0; }
  .oxx.oxx .oxc-col li a { display: inline-block; padding: 4px 0; font-size: 14.5px; }
  .oxx.oxx .oxc-loc-links a { min-height: 34px; }
  /* Numele începe pe aceeași linie cu primul link din coloanele vecine */
  .oxx.oxx .oxc-loc .oxc-loc-name { margin-top: 11px; }
}
@media (min-width: 1024px) {
  .oxx .oxc-foot { padding-top: 48px; }
  .oxx .oxc-foot-top { display: flex; align-items: center; justify-content: space-between; gap: 48px; padding-bottom: 36px; }
  .oxx .oxc-foot-act { display: flex; flex: none; align-items: center; gap: 28px; }
  .oxx .oxc-foot-main { padding: 36px 0 32px; }
  .oxx .oxc-foot-id { flex-wrap: nowrap; gap: 24px; padding: 0 0 24px; }
  .oxx .oxc-foot-logo img { padding: 7px 11px; }
  .oxx .oxc-socials { margin-left: auto; }
  .oxx .oxc-proof { order: 0; flex-basis: auto; }
  /* Butonul WhatsApp fix nu acoperă rândul legal când marginile sunt înguste */
  .oxx .oxc-legal { padding-bottom: 72px; }
}
/* Cele cinci coloane pe un rând, cu titlurile pe aceeași linie */
@media (min-width: 1200px) { .oxx .oxc-foot-main { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 56px; } }
@media (min-width: 1400px) { .oxx .oxc-legal { padding-bottom: 22px; } }
@media print { .oxx .oxc-foot-act { display: none; } }

/* /assets/site/reviewed-by.css */
/* „Conținut verificat de”: între ultima secțiune și subsol (src/site/reviewed-by.mjs). Pe toate paginile, inclusiv cele care nu sunt încă
   pe direcția nouă, deci culorile și fonturile sunt scrise aici, nu luate din brand.css. Mobil întâi. */
.oxx .ob-check { border-top: 1px solid #e4e9f1; background: #f5f8fc; }
.oxx .ob-check-in { display: flex; align-items: center; gap: 12px; padding: 14px 0; color: #14243c; text-decoration: none; }
.oxx .ob-check figure { flex: none; width: 56px; height: 56px; margin: 0; border-radius: 50%; overflow: hidden; background: #13315b; }
.oxx .ob-check img { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; object-position: 50% 10%; }
.oxx .ob-check .is-scene img { transform: scale(2.2); transform-origin: 55% 12%; }
.oxx .ob-check-txt { flex: 1; min-width: 0; display: grid; gap: 1px; }
.oxx .ob-check small { display: flex; align-items: center; gap: 5px; font: 600 13px/1.3 "Hanken Grotesk", "Hanken Grotesk Fallback", ui-sans-serif, system-ui, sans-serif; color: #8a6530; }
.oxx .ob-check small svg { flex: none; }
.oxx.oxx .ob-check b { font: 400 1.2rem/1.25 Lora, "Lora Fallback", Georgia, serif; letter-spacing: 0; color: #0d2340; }
.oxx .ob-check-txt > span { font: 400 14px/1.35 "Hanken Grotesk", "Hanken Grotesk Fallback", ui-sans-serif, system-ui, sans-serif; color: #4d5a6b; }
.oxx .ob-check-txt > span::first-letter { text-transform: uppercase; }
.oxx .ob-check .oh-go { display: inline-grid; place-items: center; flex: none; width: 36px; height: 36px; border: 1px solid #d5dce6; border-radius: 8px; background: #fff; color: #0d2340; transition: background .15s, border-color .15s, color .15s; }
.oxx .ob-check-in:hover .oh-go { background: #0d2340; border-color: #0d2340; color: #fff; }
.oxx .ob-check-in:hover b { text-decoration: underline; text-decoration-color: #b8935a; text-underline-offset: 3px; }
.oxx .ob-check-in:focus-visible { outline: 2px solid #3b86d1; outline-offset: -2px; border-radius: 8px; }
@media (min-width: 768px) { .oxx .ob-check-in { gap: 16px; padding: 16px 0; } .oxx .ob-check figure { width: 64px; height: 64px; } .oxx.oxx .ob-check b { font-size: 1.3rem; } }
