/* Dentalix official light brand. Shared shell and legacy component finishing layer. */
:root{--dx-location-height:44px;--dx-header-bottom:142px;color-scheme:light}
html{scroll-padding-top:calc(var(--dx-header-bottom) + 16px)}
body{background:#fff;color:#1d334a}
.dx-location-bar{position:fixed;z-index:9990;top:0;left:0;width:100%;height:var(--dx-location-height);background:#fff;border-bottom:1px solid #e8eef3;color:#1d334a;font-family:Inter,sans-serif}
.dx-location-bar__inner{display:flex;align-items:center;justify-content:center;gap:60px;max-width:1100px;height:100%;margin:auto;padding:0 24px}
.dx-location-bar__clinic{display:flex;align-items:center;gap:15px;min-width:0}
.dx-location-bar a{display:inline-flex;align-items:center;gap:7px;min-height:36px;font-size:12px;line-height:1.3;font-weight:600;color:#005794;text-decoration:none;white-space:nowrap}
.dx-location-bar a[href^="tel:"]{color:#1d334a;letter-spacing:.025em;font-variant-numeric:tabular-nums}
.dx-location-bar svg{width:13px;height:13px;flex:0 0 13px;color:#e50913}
.dx-location-bar a:hover{text-decoration:underline;text-underline-offset:4px}
.dx-location-bar a:focus-visible{outline:2px solid #005794;outline-offset:2px;border-radius:3px}
body .hns-bar{top:calc(var(--dx-location-height) + 12px);min-height:74px;padding:8px 18px 8px 16px;background:#fff;border:1px solid #dbe4ec;box-shadow:0 5px 24px rgba(29,51,74,.08);color:#1d334a;backdrop-filter:none;gap:32px}
body .hns-logo{display:flex;align-items:center;line-height:0;flex-shrink:0}
body .hns-bar .hns-logo img{display:block;width:62px;height:62px;object-fit:contain;border:0;filter:none}
body .hns-toggle{color:#1d334a;border-color:#dbe4ec;background:#f6f9fc}
body .hns-word{display:none}
body .hns-bar .hns-call{background:#e50913;color:#fff;border-color:#e50913}
body .hns-bar .hns-call-wa{background:#12833f;border-color:#12833f;color:#fff}
body .hns-bar button:focus-visible,body .hns-bar a:focus-visible{outline:2px solid #005794;outline-offset:4px}
#hns-menu-dialog{background:#fff;color:#1d334a;border-color:#dbe4ec;box-shadow:0 16px 60px rgba(29,51,74,.16)}
#hns-menu-dialog .mdd-dialog-head,#hns-menu-dialog .mdd-dialog-social{background:#fff;border-color:#dbe4ec}
#hns-menu-dialog .mdd-dialog-logo img{height:74px;width:74px;object-fit:contain}
#hns-menu-dialog .mdd-dialog-close{color:#1d334a;border-color:#dbe4ec;background:#f6f9fc}
#hns-menu-dialog .mdd-dialog-body{background:#fff}
#hns-menu-dialog .hns-location-body,#hns-menu-dialog .hns-category-overviews,#hns-menu-dialog .hns-treatment-acc>summary,#hns-menu-dialog .hns-acc-body{background:#f6f9fc}
#hns-menu-dialog .mdd-dialog-link,#hns-menu-dialog summary{color:#1d334a}
#hns-menu-dialog .mdd-dialog-link:hover,#hns-menu-dialog summary:hover{background:#eef4f8;color:#005794}
body .site-footer{background:#f6f9fc;border-top:1px solid #e8eef3;color:#1d334a}
body .site-footer .footer-logo{width:132px;height:132px;object-fit:contain;filter:none}
body .site-footer .footer-about,body .site-footer .footer-bottom{color:#526474}
body .page-hero,body.page-sub .page-hero,body.page-sub .pp-hero,body.page-sub .dr-hero,body.page-sub .blog-hero{padding-top:calc(var(--dx-header-bottom) + 48px);background:#fff}
body .spec-page-hero{padding-top:calc(var(--dx-header-bottom) + 36px);height:auto;min-height:520px;background:#fff}
body .spec-page-hero-overlay{background:rgba(255,255,255,.9)}
body .spec-page-hero-inner,body .spec-page-hero-inner h1{color:#1d334a;text-shadow:none}
body .spec-page-hero-inner .cin-tag{color:#005794;text-shadow:none}
body .spec-hero{padding-top:calc(var(--dx-header-bottom) + 42px)}
body .impl-intro h2{color:#1d334a}
body .impl-intro p,body .impl-intro li{color:#526474}
body .impl-intro li::marker{color:#005794}
.btn-primary,.btn-p,.pricing-card__cta,.cc-btn,.form-submit,.mdd-cb-btn-accept{background:#e50913;color:#fff}
.btn-primary:hover,.btn-p:hover,.pricing-card__cta:hover,.cc-btn:hover,.form-submit:hover,.mdd-cb-btn-accept:hover{background:#bf0610;color:#fff}
.btn-o,.btn-outline{color:#005794;border-color:#005794;background:transparent}
.btn-o:hover,.btn-outline:hover{background:#005794;color:#fff}
.pricing-section,.team-section,.steps-section,.diff-section,.fv-section,.test-section,.contact-section{background:#fff}
.pricing-card,.medic-team-card,.local-info-card{background:#f6f9fc;box-shadow:none;border-color:#e2eaf1}
.pricing-card--featured{border-color:#005794}
body .team-section .doc-card{display:flex;flex-direction:column;align-self:stretch}
body .team-section .doc-avatar{flex-shrink:0}
body .team-section .doc-spec{font-size:12px;line-height:1.5;letter-spacing:normal;text-transform:none}
body .team-section .doc-link{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:auto;padding-top:12px}
.medic-team-card{color:inherit;text-decoration:none}
.medic-team-card:focus-visible,.doc-card:focus-visible,.doctor-back:focus-visible{outline:3px solid #005794;outline-offset:4px}
.doctor-page{background:#fff;padding:calc(var(--dx-header-bottom) + 48px) 24px 88px}
.doctor-page-inner{max-width:1140px;margin:0 auto}
.doctor-back{display:inline-flex;margin-bottom:32px;color:#005794;font-weight:700;text-decoration:none}
.doctor-page-grid{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start}
.doctor-page-photo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:22px}
.doctor-page-copy h1{margin:0 0 12px;color:#1d334a;font-size:clamp(34px,4vw,58px);line-height:1.1}
.doctor-page-role{margin:0 0 28px;color:#005794;font-weight:700}
.doctor-page-copy p{max-width:68ch;margin:0 0 17px;line-height:1.75;color:#526474}
.doctor-page-copy .btn-p{display:inline-flex;margin-top:22px}
.doctor-page-copy h2{margin:30px 0 12px;color:#1d334a;font-size:clamp(21px,2vw,25px);line-height:1.3;text-wrap:balance}
.doctor-page-list{max-width:68ch;margin:0 0 24px;padding-left:1.25em;color:#526474;line-height:1.65}
.doctor-page-list li{margin:0 0 9px;padding-left:4px;text-wrap:pretty}
.doctor-page-list li::marker{color:#005794}
@media(max-width:720px){.doctor-page{padding:calc(var(--dx-header-bottom) + 24px) 20px 64px}.doctor-page-grid{grid-template-columns:1fr;gap:28px}.doctor-page-photo{max-width:440px}.doctor-page-copy h1{font-size:36px}}
/* Service tariffs are local, readable summaries, with semantic table headings retained. */
body .dx-service-price{position:relative;max-width:100%;margin:24px 0;padding:24px;background:#f6f9fc;border:1px solid #dbe4ec;border-radius:18px;overflow:visible}
body .dx-service-price .dx-service-price-label{margin:0 0 18px;color:#526474;font-size:13px;font-weight:600;line-height:1.5}
body .dx-service-price .trf-table{display:table;width:100%;table-layout:fixed;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;white-space:normal}
body .dx-service-price .trf-table thead{display:table-header-group;position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
body .dx-service-price .trf-table tbody{display:block;width:100%}
body .dx-service-price .trf-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,auto);align-items:center;gap:24px;margin:0;padding:20px 0;background:transparent;border:0;border-top:1px solid #dbe4ec;border-radius:0}
body .dx-service-price .trf-table td{display:block;min-width:0;padding:0!important;border:0;white-space:normal;overflow-wrap:anywhere}
body .dx-service-price .trf-table .dx-service-price-name{color:#1d334a;font-family:var(--font-body,'DM Sans',sans-serif);font-size:17px;font-weight:600;line-height:1.5;text-align:left}
body .dx-service-price .trf-table .dx-service-price-value{color:#005794;font-family:var(--font-body,'DM Sans',sans-serif);font-size:28px;font-weight:700;line-height:1.25;text-align:right}
body .dx-service-price .trf-table .trf-row td>a{min-height:44px;padding:0;color:inherit;line-height:inherit}
body .dx-service-price .trf-table .trf-row .trf-name>a{gap:12px;text-decoration:underline;text-decoration-color:#b3ccde;text-underline-offset:4px}
body .dx-service-price .trf-table .trf-row .trf-price-link{justify-content:flex-end}
body .dx-service-price .trf-table .trf-row a:hover{color:#004675;text-decoration-color:currentColor}
body .dx-service-price .trf-table .trf-row a:focus-visible{outline:2px solid #005794;outline-offset:4px}
.dx-clinic-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:32px 0}
body .dx-clinic-price-card{display:flex;flex-direction:column;gap:16px;min-height:180px;padding:28px;background:#f6f9fc;border:1px solid #dbe4ec;border-radius:18px;color:#1d334a;text-decoration:none}
body .dx-clinic-price-card strong{font-size:23px;line-height:1.3;font-weight:600;color:#1d334a}
body .dx-clinic-price-label{font-size:13px;font-weight:600;color:#526474}
body .dx-clinic-price-action{display:flex;justify-content:space-between;gap:16px;margin-top:auto;color:#005794;font-size:14px;line-height:1.5}
body .dx-clinic-price-card:hover{border-color:#005794;background:#eef4f8}
body .dx-clinic-price-card:focus-visible{outline:2px solid #005794;outline-offset:4px}
body .prices-section#tarife{scroll-margin-top:calc(var(--dx-header-bottom) + 24px)}
body .dx-procedure-illustration{margin:32px 0;text-align:center}
body .dx-procedure-illustration img{display:block;max-height:400px;max-width:100%;width:auto;height:auto;margin:0 auto}
body .dx-procedure-illustration figcaption{margin-top:10px;color:#526474;font-family:var(--font-body,'DM Sans',sans-serif);font-size:12px;line-height:1.5}
@media(min-width:769px){body .process-steps{grid-template-columns:repeat(var(--dx-process-count,4),minmax(0,1fr))}}
@media(max-width:640px){
 body .dx-service-price{padding:20px;margin:24px 0}
 body .dx-service-price .trf-table tbody tr{grid-template-columns:minmax(0,1fr);gap:10px;padding:18px 0}
 body .dx-service-price .trf-table .dx-service-price-name{font-size:16px}
 body .dx-service-price .trf-table .dx-service-price-value{text-align:left;font-size:28px}
 body .dx-service-price .trf-table .trf-row .trf-price-link{justify-content:flex-start}
 .dx-clinic-price-grid{grid-template-columns:minmax(0,1fr);gap:14px}
 body .dx-clinic-price-card{padding:24px;min-height:170px}
}
/* Full-photo cards: local translucent scrim follows the text, never a white band.
   The darkest overlay is confined to the card; surrounding site stays white. */
:root{--dx-photo-scrim:linear-gradient(180deg,rgba(5,20,34,.78),rgba(5,20,34,.9))}
body .other-card .overlay,body .cc-card-overlay,body .sp-slide-over{background:none}
body .other-card .content,body .cc-card .cc-card-content,body .sp-slide-body,body .blog-card-body,body .blog-featured-body{background:var(--dx-photo-scrim);color:#fff;isolation:isolate}
body .other-card .content::before,body .cc-card-content::before,body .sp-slide-body::before,body .blog-card-body::before,body .blog-featured-body::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:64px;background:linear-gradient(180deg,transparent,rgba(5,20,34,.78));pointer-events:none}
body .other-card .content{padding:20px 22px}
body .other-card .nm,body .other-card:hover .nm,body .other-card:focus-visible .nm{color:#fff;text-shadow:none}
body .other-card .ar{color:#fff;background:rgba(5,20,34,.35);border-color:rgba(255,255,255,.6)}
body .other-card:hover .ar,body .other-card:focus-visible .ar{background:#fff;color:#005794;border-color:#fff}
body .cc-card .cc-card-content{top:auto;padding:24px;max-height:100%}
body .cc-card .cc-card-label,body .cc-card .cc-card-content h3,body .cc-card .cc-card-content p,body .cc-card-content p a,body .cc-card-content p a:hover{color:#fff}
/* Legacy clinic renderer has an inline blue phone color. Only photo-card
   paragraph links override it; normal page links and buttons keep their colors. */
body .cc-card-content p a{color:#fff!important}
body .cc-card .cc-btn,body .cc-card .btn-p{background:#e50913;color:#fff;border-color:#e50913}
body .cc-card .cc-btn:hover,body .cc-card .btn-p:hover{background:#bf0610;color:#fff;border-color:#bf0610}
body .cc-card{min-height:380px}
body .sp-slide-name,body .sp-slide-desc,body .sp-slide-btn{color:#fff}
body .spec-section{overflow-x:clip}
body .sp-slide-btn{min-height:44px;text-decoration:underline;text-underline-offset:4px}
body .sp-slide.active .sp-slide-desc{max-height:120px}
body .blog-card,body .blog-featured{display:flex;flex-direction:column;justify-content:flex-end;position:relative;min-height:360px;background:#fff}
body .blog-featured{min-height:470px}
body .blog-card-media,body .blog-featured-media{position:absolute;inset:0;min-height:0;aspect-ratio:auto}
body .blog-card-media img,body .blog-featured-media img{width:100%;height:100%;object-fit:cover}
body .blog-card-body,body .blog-featured-body{position:relative;z-index:1;margin-top:140px;padding:24px}
body .blog-featured-body{padding:32px}
body .blog-card-body h3,body .blog-featured-body h2,body .blog-featured-body p,body .blog-card-cat,body .blog-badge,body .blog-meta,body .blog-readmore{color:#fff;opacity:1}
body .blog-featured-body p{max-width:68ch}
body .form-map-grid.dx-contact-form-only{grid-template-columns:minmax(0,1fr);max-width:760px}
.pricing-card__price strong,.trf-price,.cin-tag{color:#005794}
.popular-badge,.ba-tag{color:#fff;background:#e50913}
.mdd-cookie-banner{background:#fff;color:#1d334a;border-color:#dbe4ec}
.lh-treatment-link{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:16px;padding:10px 14px;background:#e50913;color:#fff;border-radius:5px;text-decoration:none;font-size:13px;font-weight:600}
.lh-slide.in-view .lh-panel>.lh-treatment-link{opacity:1;transform:none}
@media(min-width:769px){body .pricing-card{border-top:3px solid #e50913;border-left:4px solid #005794}}
/* Desktop: align price band + following rows across side-by-side pricing cards.
   Each group grid exposes 6 shared row tracks (count/tier/price/list/note/cta);
   each card is a subgrid spanning them, so a wrapped title/badge on one card
   raises the SHARED tier row for both -> the price band stays level. Robust to
   any title/badge length. Internal spacing preserved via row-gap:0 + existing
   element margins; 20px column gap between cards kept. Gated on @supports so
   engines without subgrid fall back to the current flex layout unchanged. */
@media(min-width:769px){
 @supports (grid-template-rows:subgrid){
  body .pricing-grid{grid-template-rows:repeat(6,auto);row-gap:0;align-items:start}
  body .pricing-grid>.pricing-card{display:grid;grid-template-rows:subgrid;grid-row:span 6;row-gap:0}
  body .pricing-grid>.pricing-card>*{align-self:start}
 }
}
@media(max-width:768px){
 body .team-section .team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:440px;margin-left:auto;margin-right:auto;padding:0 16px}
 body .team-section .doc-card{width:auto;min-width:0;padding:22px 12px}
 :root{--dx-location-height:66px;--dx-header-bottom:154px}
 .dx-location-bar__inner{gap:0;padding:0 10px}
 .dx-location-bar__clinic{width:50%;flex-direction:column;gap:0;justify-content:center}
 .dx-location-bar__clinic+.dx-location-bar__clinic{border-left:1px solid #e8eef3}
 .dx-location-bar a{font-size:11px;min-height:27px;line-height:1.3}
 .dx-location-bar a[href^="tel:"]{min-height:31px;font-size:12px}
 body .hns-bar{top:calc(var(--dx-location-height) + 8px);min-height:68px;padding:7px 14px;gap:24px;border:2px solid #005794}
 body .hns-bar .hns-logo img{height:56px;width:56px}
 body .hns-actions{gap:10px}
 body .lh{padding-top:var(--dx-header-bottom);background:#fff}
 body .lh-promo,body .lh-promo-panel{background:#fff;color:#1d334a}
 body .lh-promo{border-bottom:1px solid #dbe4ec}
 body .lh-promo-panel{padding:22px 24px 20px}
 body .lh-promo-big{color:#1d334a}
 body .lh-promo-free{color:#e50913}
 body .lh-promo-list li{color:#526474;border-color:#e8eef3}
 body .lh-promo-list strong{color:#1d334a}
 body .lh-slide{background:#fff}
 body .lh-photo{inset:0;height:100%}
 body .lh-slide[data-idx="4"] .lh-photo img{object-fit:cover;object-position:50% 50%}
 /* Incadrarea fotografiei de receptie pe acest card e calculata pe fasia dintre headerul fix si panoul de text. Zoom-ul de intrare si Ken Burns ar muta cadrul si ar ascunde sigla sub header, deci sunt oprite doar pe acest slide. */
 body .lh-slide[data-idx="0"] .lh-photo img{transform:none;animation:none}
 body .lh-slide[data-idx="4"] .lh-panel{padding-bottom:calc(130px + env(safe-area-inset-bottom,0px))}
 body .lh-panel{background:var(--dx-photo-scrim);border-color:rgba(255,255,255,.25);color:#fff}
 body .lh-panel::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:64px;background:linear-gradient(180deg,transparent,rgba(5,20,34,.78));pointer-events:none}
 body .lh-title,body .lh-title em,body .lh-ofer-name,body .lh-num-row strong,body .lh-from,body .lh-desc,body .lh-desc strong,body .lh-excludes,body .lh-excludes strong{color:#fff}
 body .lh-badge{color:#fff;background:#005794}
 body .lh-list li,body .lh-list li::before,body .lh-excludes li,body .lh-cur,body .lh-ofer-tier{color:#fff}
 body .lh-price{border-color:rgba(255,255,255,.35)}
 body .lh-link,body .lh-link:hover{background:#e50913;color:#fff}
 body .lh-release{background:#fff;color:#1d334a}
 body .page-hero,body.page-sub .page-hero,body.page-sub .pp-hero,body.page-sub .dr-hero,body.page-sub .blog-hero{padding-top:calc(var(--dx-header-bottom) + 32px)}
 body .spec-page-hero{min-height:470px}
}
@media(max-width:340px){body .lh-promo-free{font-size:34px;white-space:nowrap}}
