/* ============================================================
   Sub-pages styles v4.1
   ============================================================ */

/* === Page hero (consistent across sub-pages) === */
.page-hero{position:relative;padding:160px 28px 80px;background:linear-gradient(180deg,var(--md-bg-paper) 0%,var(--md-bg) 100%);text-align:center;overflow:hidden}
.page-hero::after{content:"";position:absolute;left:50%;bottom:-2px;transform:translateX(-50%);width:140px;height:3px;background:linear-gradient(90deg,transparent,var(--md-teal),var(--md-gold),transparent);border-radius:2px}
.page-hero-inner{max-width:840px;margin:0 auto}
.page-hero .cin-tag{font-size:11px;font-weight:700;letter-spacing:5px;color:var(--md-teal-text);margin-bottom:18px;display:inline-block}
.page-hero h1{font-family:'Playfair Display',serif;font-size:clamp(40px,7vw,76px);font-weight:600;line-height:1.05;letter-spacing:-0.025em;color:var(--md-text);margin-bottom:24px}
.page-hero h1 em{font-style:italic;color:var(--md-teal-text);font-weight:600}
.page-hero p{font-size:clamp(15px,1.5vw,18px);line-height:1.7;color:var(--md-muted);max-width:680px;margin:0 auto}

/* === Home specialty section === */
.home-spec-section{padding:100px 0;background:var(--md-bg)}
.home-spec-header{text-align:center;margin-bottom:48px;max-width:760px;margin-left:auto;margin-right:auto;padding:0 28px}
.home-spec-header .cin-tag{font-size:11px;font-weight:700;letter-spacing:5px;color:var(--md-teal-text);margin-bottom:14px;display:inline-block}
.home-spec-header h2{font-family:'Playfair Display',serif;font-size:clamp(30px,4.5vw,48px);font-weight:600;letter-spacing:-0.02em;line-height:1.12;color:var(--md-text);margin-bottom:14px}
.home-spec-header h2 em{font-style:italic;color:var(--md-teal-text);font-weight:600}
.home-spec-header p{font-size:15px;line-height:1.6;color:var(--md-muted)}

/* === Specialitati grid (links to individual pages) === */
.spec-grid-section{padding:60px 0 100px;background:var(--md-bg)}
.spec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.spec-card{display:block;background:var(--md-bg-soft);border:1px solid var(--md-line);border-radius:18px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .35s cubic-bezier(.4,0,.2,1),box-shadow .35s,border-color .35s;opacity:0;transform:translateY(20px)}
.spec-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(10,10,10,.10);border-color:rgba(4,106,56,.3)}
.spec-card-img{width:100%;aspect-ratio:16/10;overflow:hidden;background:var(--md-bg-paper)}
.spec-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.spec-card:hover .spec-card-img img{transform:scale(1.06)}
.spec-card-text{padding:20px 22px 22px;position:relative}
.spec-card-text h3{font-family:'Playfair Display',serif;font-size:20px;font-weight:600;color:var(--md-text);margin-bottom:6px;letter-spacing:-0.01em;line-height:1.2}
.spec-card-text p{font-size:13px;color:var(--md-muted);line-height:1.5;margin-bottom:0;padding-right:24px}
.spec-card-arrow{position:absolute;right:20px;bottom:24px;font-size:20px;color:var(--md-teal-text);font-weight:300;transition:transform .3s}
.spec-card:hover .spec-card-arrow{transform:translateX(4px)}
@media(max-width:1080px){.spec-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.spec-grid{grid-template-columns:1fr;gap:14px}}

/* === Individual specialty page hero (image bg + dark overlay) === */
.spec-page-hero{position:relative;height:60vh;min-height:380px;overflow:hidden;background:var(--md-bg);display:flex;align-items:center;justify-content:center;padding:140px 28px 60px}
.spec-page-hero-bg{position:absolute;inset:0}
.spec-page-hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.55}
.spec-page-hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(4,20,12,.55) 0%,rgba(4,20,12,.25) 50%,rgba(4,20,12,.65) 100%)}
.spec-page-hero-inner{position:relative;z-index:5;max-width:880px;margin:0 auto;text-align:center;color:#fff}
.bcrumb{font-size:12px;color:rgba(255,255,255,.78);margin-bottom:24px;display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap}
.bcrumb a{color:rgba(255,255,255,.68);text-decoration:none;transition:color .2s}
.bcrumb a:hover{color:var(--md-gold)}
.bcrumb strong{color:#fff;font-weight:600}
.bcrumb span{color:rgba(255,255,255,.4)}
.spec-page-hero-inner .cin-tag{font-size:11px;font-weight:700;letter-spacing:5px;color:var(--md-gold);margin-bottom:18px;display:inline-block;text-shadow:0 2px 8px rgba(0,0,0,.4)}
.spec-page-hero-inner h1{font-family:'Playfair Display',serif;font-size:clamp(34px,5.5vw,58px);font-weight:600;line-height:1.1;letter-spacing:-0.02em;color:#fff;text-shadow:0 4px 24px rgba(0,0,0,.5)}

/* === Specialty page body — content + sidebar services === */
.spec-page-body{padding:80px 0;background:var(--md-bg)}
.spec-page-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:48px;max-width:1180px;margin:0 auto;padding:0 28px}
.spec-page-content h2{font-family:'Playfair Display',serif;font-size:clamp(26px,3.4vw,36px);font-weight:600;color:var(--md-text);margin-bottom:18px;letter-spacing:-0.02em;line-height:1.2}
.spec-page-content .spec-page-intro{font-size:17px;line-height:1.75;color:var(--md-text);margin-bottom:24px;font-weight:500}
.spec-page-content p{font-size:15px;line-height:1.75;color:var(--md-muted);margin-bottom:14px}
.spec-page-content p strong{color:var(--md-text)}

.spec-page-services{background:var(--md-bg-soft);border:1px solid var(--md-line);border-radius:22px;padding:30px 26px;height:fit-content;position:sticky;top:120px}
.spec-page-services h3{font-family:'Playfair Display',serif;font-size:20px;font-weight:600;color:var(--md-text);margin-bottom:16px;text-align:center;padding-bottom:14px;border-bottom:1px solid var(--md-line);letter-spacing:-0.01em}
.spec-page-services .srv-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px dashed var(--md-line);gap:14px}
.spec-page-services .srv-row:last-child{border-bottom:0}
.srv-name{display:flex;flex-direction:column;gap:3px;flex:1}
.srv-name strong{font-family:'Inter',sans-serif;font-size:14px;font-weight:600;color:var(--md-text);letter-spacing:-0.01em}
.srv-name span{font-size:12px;color:var(--md-muted);line-height:1.45}
.srv-price{font-family:'Playfair Display',serif;font-size:17px;font-weight:600;color:var(--md-teal-text);white-space:nowrap;letter-spacing:-0.01em}
.srv-note{font-size:12px;color:var(--md-soft);margin-top:14px;text-align:center;line-height:1.55;font-style:italic;padding-top:12px;border-top:1px solid var(--md-line)}

.spec-page-cta{display:flex;gap:14px;justify-content:center;margin-top:48px;flex-wrap:wrap}
.btn-o{display:inline-flex;align-items:center;font-size:12px;font-weight:700;letter-spacing:1px;color:var(--md-text);background:transparent;padding:14px 30px;border-radius:26px;border:1.5px solid var(--md-line);transition:.3s}
.btn-o:hover{background:var(--md-bg-soft);transform:translateY(-2px);border-color:var(--md-teal-text)}

@media(max-width:880px){
  .spec-page-grid{grid-template-columns:1fr;gap:32px}
  .spec-page-services{position:static;order:2}
  .spec-page-content{order:1}
}

/* === Other specialties (links at bottom of each spec page) === */
.other-specs-section{padding:60px 0 100px;background:var(--md-bg-mint);border-top:1px solid var(--md-line)}
.other-specs-section h3{font-family:'Playfair Display',serif;font-size:24px;font-weight:600;color:var(--md-text);text-align:center;margin-bottom:32px;letter-spacing:-0.01em}
.other-specs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1080px;margin:0 auto;padding:0 28px}
.other-spec{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--md-bg);border:1px solid var(--md-line);border-radius:14px;text-decoration:none;color:var(--md-text);transition:transform .3s,border-color .3s,box-shadow .3s}
.other-spec:hover{transform:translateY(-2px);border-color:rgba(4,106,56,.32);box-shadow:0 10px 28px rgba(10,10,10,.06)}
.other-spec img{width:48px;height:48px;border-radius:10px;object-fit:cover;flex-shrink:0}
.other-spec span{font-family:'Playfair Display',serif;font-size:15px;font-weight:600;letter-spacing:-0.01em}
@media(max-width:880px){.other-specs-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.other-specs-grid{grid-template-columns:1fr}}

/* === Tarife page === */
.trf-section{padding:60px 0 100px;background:var(--md-bg)}
.trf-table-wrap{max-width:1080px;margin:0 auto;padding:0 28px;overflow-x:auto}
.trf-table{width:100%;border-collapse:collapse;background:var(--md-bg);border-radius:18px;overflow:hidden;border:1px solid var(--md-line);box-shadow:0 14px 40px rgba(10,10,10,.05)}
.trf-table thead{background:linear-gradient(to bottom,var(--md-bg-mint),var(--md-bg))}
.trf-table th{font-family:'DM Sans',sans-serif;font-weight:700;color:var(--md-teal-text);font-size:12px;letter-spacing:.18em;text-transform:uppercase;padding:18px 22px;text-align:left;border-bottom:2px solid var(--md-line)}
.trf-table td{padding:14px 22px;font-size:14.5px;border-bottom:1px solid var(--md-line);vertical-align:middle}
.trf-table tbody tr.trf-spec-row{background:linear-gradient(to right,var(--md-teal-soft) 0%,transparent 70%)}
.trf-table tbody tr.trf-spec-row td{padding:18px 22px;font-family:'Playfair Display',serif;color:var(--md-text);font-size:18px;font-weight:600;letter-spacing:-0.01em}
.trf-table .trf-name{font-weight:600;color:var(--md-text)}
.trf-table .trf-desc{color:var(--md-muted);font-size:13.5px}
.trf-table .trf-price{font-family:'Playfair Display',serif;color:var(--md-teal-text);font-weight:600;font-size:17px;text-align:right;white-space:nowrap}
.trf-table tbody tr:hover:not(.trf-spec-row){background:rgba(34,195,120,.10)}
.trf-table tbody tr:last-child td{border-bottom:0}
.trf-note{max-width:880px;margin:24px auto 0;padding:0 28px;font-size:13px;color:var(--md-muted);text-align:center;line-height:1.6;font-style:italic}
.trf-cta{text-align:center;margin-top:32px}

@media(max-width:680px){
  .trf-table thead{display:none}
  .trf-table tbody tr{display:block;margin-bottom:14px;background:var(--md-bg);border:1px solid var(--md-line);border-radius:14px;padding:8px 14px}
  .trf-table tbody tr.trf-spec-row{padding:14px 18px}
  .trf-table tbody tr.trf-spec-row td{padding:0;display:block;text-align:left}
  .trf-table tbody tr td{display:flex;justify-content:space-between;border-bottom:0;padding:8px 0;font-size:13.5px}
  .trf-table .trf-price{text-align:right}
  .trf-table .trf-desc::before{content:"Detalii: ";font-size:11px;color:var(--md-soft);text-transform:uppercase;letter-spacing:.1em;margin-right:6px}
}

/* === Medici page — REDESIGNED editorial alternating === */
.medici-editorial{padding:80px 0;background:var(--md-bg)}
.medic-block{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;max-width:1180px;margin:0 auto 100px;padding:0 28px;align-items:center;opacity:0;transform:translateY(28px)}
.medic-block:last-child{margin-bottom:0}
.medic-block--reverse{direction:rtl}
.medic-block--reverse > *{direction:ltr}

.medic-photo{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:5/6;background:var(--md-bg-soft);box-shadow:0 30px 70px rgba(10,10,10,.10)}
.medic-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.4,0,.2,1)}
.medic-block:hover .medic-photo img{transform:scale(1.04)}
.medic-photo-credit{position:absolute;bottom:16px;left:16px;right:16px;padding:10px 16px;background:rgba(4,20,12,.85);backdrop-filter:blur(12px);border-radius:10px;font-size:11px;font-weight:700;color:var(--md-text);letter-spacing:.16em;text-transform:uppercase;text-align:center}

.medic-text{padding:20px 0}
.medic-num{display:inline-block;font-family:'Playfair Display',serif;font-size:64px;font-weight:600;color:var(--md-gold);line-height:1;margin-bottom:12px;letter-spacing:-0.04em;-webkit-text-stroke:1px var(--md-gold);color:transparent}
.medic-text h2{font-family:'Playfair Display',serif;font-size:clamp(32px,4.5vw,48px);font-weight:600;color:var(--md-text);margin-bottom:8px;letter-spacing:-0.025em;line-height:1.05}
.medic-spec{font-size:13px;font-weight:700;color:var(--md-teal-text);letter-spacing:.18em;text-transform:uppercase;margin-bottom:24px;display:block}
.medic-bio{font-size:16px;line-height:1.75;color:var(--md-muted);margin-bottom:24px}

.medic-expertise{padding-top:20px;border-top:1px solid var(--md-line)}
.medic-expertise strong{font-family:'Inter',sans-serif;font-size:11px;font-weight:700;color:var(--md-soft);letter-spacing:.18em;text-transform:uppercase;display:block;margin-bottom:12px}
.medic-expertise ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.medic-expertise li{font-size:13px;color:var(--md-text);padding:6px 14px;background:var(--md-bg-soft);border:1px solid var(--md-line);border-radius:999px;font-weight:500}

@media(max-width:880px){
  .medic-block,.medic-block--reverse{grid-template-columns:1fr;gap:32px;direction:ltr;margin-bottom:64px}
  .medic-block--reverse > *{direction:ltr}
}

/* === Contact page === */
.contact-section{padding:60px 0 100px;background:var(--md-bg)}
.contact-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:48px;max-width:1180px;margin:0 auto;padding:0 28px;align-items:start}
.contact-info{display:flex;flex-direction:column;gap:18px}
.contact-info-block{background:var(--md-bg-soft);border:1px solid var(--md-line);border-radius:18px;padding:22px 24px;opacity:0;transform:translateY(15px)}
.contact-info-label{font-size:10px;font-weight:700;color:var(--md-teal-text);letter-spacing:.32em;text-transform:uppercase;display:block;margin-bottom:10px}
.contact-info-block h3{font-family:'Playfair Display',serif;font-size:20px;font-weight:600;color:var(--md-text);line-height:1.3;margin-bottom:6px;letter-spacing:-0.01em}
.contact-info-block h3 a{color:var(--md-text);transition:color .2s}
.contact-info-block h3 a:hover{color:var(--md-teal-text)}
.contact-info-block p{font-size:13px;color:var(--md-muted);line-height:1.5}
.contact-map{position:sticky;top:120px}
@media(max-width:880px){
  .contact-layout{grid-template-columns:1fr;gap:32px}
  .contact-map{position:static;min-height:360px}
}

/* === Despre page — editorial alternating photo+text === */
.about-stats-section{padding:80px 0 60px;background:var(--md-bg)}
.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:880px;margin:0 auto;padding:0 28px;text-align:center}
.about-stats .stat{opacity:1;transform:none}
.about-stats .sn{font-family:'Playfair Display',serif;font-size:clamp(40px,5.5vw,64px);font-weight:600;color:var(--md-teal-text);line-height:1;letter-spacing:-0.02em}
.about-stats .sp{font-family:'Playfair Display',serif;font-size:clamp(20px,3vw,32px);font-weight:600;color:var(--md-gold);margin-left:4px}
.about-stats .sl{display:block;font-size:11px;font-weight:600;letter-spacing:1.5px;color:var(--md-soft);text-transform:uppercase;margin-top:8px}
@media(max-width:680px){.about-stats{grid-template-columns:repeat(2,1fr);gap:32px}}

.about-editorial{padding:60px 0 100px;background:var(--md-bg)}
.about-row{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;max-width:1180px;margin:0 auto 100px;padding:0 28px;align-items:center;opacity:0;transform:translateY(28px)}
.about-row:last-child{margin-bottom:0}
.about-row--reverse{direction:rtl}
.about-row--reverse > *{direction:ltr}

.about-row-photo{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/3;background:var(--md-bg-soft);box-shadow:0 28px 60px rgba(10,10,10,.08)}
.about-row-photo img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.4,0,.2,1)}
.about-row:hover .about-row-photo img{transform:scale(1.03)}

.about-row-text{padding:24px 0}
.about-row-num{display:inline-block;font-family:'Playfair Display',serif;font-size:54px;font-weight:600;color:var(--md-gold);line-height:1;margin-bottom:14px;letter-spacing:-0.04em;-webkit-text-stroke:1px var(--md-gold);color:transparent}
.about-row-text h2{font-family:'Playfair Display',serif;font-size:clamp(28px,3.8vw,42px);font-weight:600;color:var(--md-text);margin-bottom:18px;letter-spacing:-0.02em;line-height:1.15}
.about-row-text p{font-size:16px;line-height:1.75;color:var(--md-muted);margin-bottom:14px}
.about-row-text p:last-child{margin-bottom:0}

@media(max-width:880px){
  .about-row,.about-row--reverse{grid-template-columns:1fr;gap:24px;direction:ltr;margin-bottom:56px}
  .about-row--reverse > *{direction:ltr}
}

/* === Contact page — cards with photo backgrounds (like home) === */
.contact-cards-page{padding:60px 0 40px;background:var(--md-bg);overflow:hidden}
.contact-cards-page .cc-track{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:0 28px;max-width:1280px;margin:0 auto}
.contact-cards-page .cc-card{flex:none;width:auto;height:380px;border-radius:22px;overflow:hidden;position:relative;cursor:default;transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s;background:var(--md-bg-soft);opacity:0;transform:translateY(28px)}
.contact-cards-page .cc-card:hover{transform:translateY(-6px);box-shadow:0 28px 70px rgba(10,10,10,.14)}
.contact-cards-page .cc-card-bg{position:absolute;inset:0;overflow:hidden}
.contact-cards-page .cc-card-bg img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.4,0,.2,1)}
.contact-cards-page .cc-card:hover .cc-card-bg img{transform:scale(1.06)}
.contact-cards-page .cc-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(4,20,12,.86) 0%,rgba(4,20,12,.45) 45%,rgba(4,20,12,.10) 80%,transparent 100%)}
.contact-cards-page .cc-card-content{position:absolute;inset:0;padding:30px 26px;display:flex;flex-direction:column;justify-content:flex-end;z-index:2;color:#fff}
.contact-cards-page .cc-card-label{font-size:10px;font-weight:700;letter-spacing:3px;color:var(--md-gold);margin-bottom:10px;display:block;text-transform:uppercase}
.contact-cards-page .cc-card h3{font-family:'Playfair Display',serif;font-size:22px;font-weight:600;color:#fff;line-height:1.2;margin-bottom:6px;letter-spacing:-0.01em}
.contact-cards-page .cc-card p{font-size:12.5px;color:rgba(255,255,255,.78);margin-bottom:16px}
.contact-cards-page .cc-btn{font-size:11px;padding:10px 20px;background:rgba(255,255,255,.16);color:#fff;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.18);display:inline-flex;align-items:center;border-radius:24px;font-weight:700;letter-spacing:1px;transition:.25s}
.contact-cards-page .cc-btn:hover{background:rgba(255,255,255,.28);transform:translateY(-2px)}

@media(max-width:1080px){.contact-cards-page .cc-track{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.contact-cards-page .cc-track{grid-template-columns:1fr;gap:14px}}

.contact-map-section{padding:40px 0 100px;background:var(--md-bg)}
.contact-map-section .container{max-width:1180px}

/* ============================================================
   FILTER BAR (used on /tarife and /servicii — desktop + mobile)
   ============================================================ */
.filter-section{padding:18px 0 12px;position:sticky;top:150px;z-index:90;backdrop-filter:blur(16px);background:rgba(4,20,12,.90);border-top:1px solid var(--md-line-2);border-bottom:1px solid var(--md-line-2);box-shadow:0 6px 18px rgba(10,10,10,.04)}
@media(max-width:880px){.filter-section{top:80px}}
.filter-bar{display:flex;flex-direction:column;gap:10px;padding:8px 0}
.filter-label{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--md-muted);text-transform:uppercase}
.filter-chips{display:flex;flex-wrap:wrap;gap:8px}
.filter-chip{font-family:inherit;font-size:13px;font-weight:600;color:var(--md-text);background:rgba(242,236,224,.06);border:1.5px solid var(--md-line);padding:9px 18px;border-radius:22px;cursor:pointer;transition:.2s;white-space:nowrap}
.filter-chip:hover{background:var(--md-teal-soft);border-color:var(--md-teal);color:var(--md-teal-text)}
.filter-chip.active{background:var(--md-teal);border-color:var(--md-teal-text);color:#fff;box-shadow:0 4px 14px rgba(4,106,56,.22)}
@media(max-width:560px){
  .filter-section{padding:16px 0 8px}
  .filter-bar{padding:6px 0}
  .filter-chips{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:6px;margin:0 -16px;padding-left:16px;padding-right:16px;scrollbar-width:thin}
  .filter-chip{font-size:12px;padding:8px 14px;flex-shrink:0}
}

/* ============================================================
   TARIFE — price list with rows
   ============================================================ */
.tarife-intro{max-width:840px;margin:48px auto 32px;padding:0 24px;font-size:15.5px;line-height:1.75;color:var(--md-text);opacity:.9}
.tarife-intro p{margin-bottom:14px}
.tarife-intro a{color:var(--md-teal-text);text-decoration:underline;text-underline-offset:3px}
.tarife-list{max-width:880px;padding:32px 24px 60px}
.price-block{margin-bottom:48px}
.price-block__head{margin-bottom:18px;padding-bottom:12px;border-bottom:2px solid var(--md-teal)}
.price-block__head h3{font-family:'Playfair Display',serif;font-size:26px;font-weight:600;color:var(--md-text);margin-bottom:6px;letter-spacing:-0.01em}
.price-block__head p{font-size:14.5px;line-height:1.65;color:var(--md-muted)}
.price-row{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:18px 0;border-bottom:1px solid var(--md-line-2)}
.price-row:last-child{border-bottom:none}
.price-row__main{flex:1;min-width:0}
.price-row__name{font-size:16px;font-weight:700;color:var(--md-text);margin-bottom:6px;word-wrap:break-word;overflow-wrap:break-word}
.price-row__desc{font-size:14px;line-height:1.65;color:var(--md-muted);word-wrap:break-word;overflow-wrap:break-word}
.price-row__cost{flex-shrink:0;font-size:17px;font-weight:700;color:var(--md-teal-text);min-width:120px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
@media(max-width:768px){
  .tarife-list{padding:24px 16px 40px}
  .price-block{margin-bottom:36px}
  .price-block__head h3{font-size:22px}
  .price-row{flex-direction:column;align-items:stretch;gap:6px;padding:14px 0}
  .price-row__main{flex:none;width:100%}
  .price-row__name{font-size:15.5px}
  .price-row__desc{font-size:13.5px;line-height:1.55}
  .price-row__cost{flex:none;width:100%;text-align:left;font-size:17px;min-width:0;margin-top:2px;white-space:normal}
}

.tarife-closing{max-width:840px;padding:40px 24px 80px;font-size:15.5px;line-height:1.75;color:var(--md-text);opacity:.92}
.tarife-closing h2{font-family:'Playfair Display',serif;font-size:26px;font-weight:600;color:var(--md-text);margin:30px 0 12px;letter-spacing:-0.01em}
.tarife-closing h2:first-child{margin-top:0}
.tarife-closing p{margin-bottom:14px}
.tarife-closing a{color:var(--md-teal-text);text-decoration:underline;text-underline-offset:3px}

/* ============================================================
   SERVICII — card grid per specialty
   ============================================================ */
.srv-intro{max-width:840px;margin:48px auto 32px;padding:0 24px;font-size:15.5px;line-height:1.75;color:var(--md-text);opacity:.9}
.srv-intro p{margin-bottom:14px}
.srv-list{max-width:1120px;padding:32px 24px 60px}
.srv-block{margin-bottom:56px}
.srv-block__head{display:flex;align-items:center;gap:16px;margin-bottom:22px;padding-bottom:14px;border-bottom:2px solid var(--md-teal)}
.srv-block__icon{font-size:32px;flex-shrink:0;width:54px;height:54px;display:flex;align-items:center;justify-content:center;background:var(--md-teal-soft);border-radius:14px}
.srv-block__head h3{font-family:'Playfair Display',serif;font-size:26px;font-weight:600;color:var(--md-text);margin-bottom:4px;letter-spacing:-0.01em}
.srv-block__head p{font-size:14px;line-height:1.6;color:var(--md-muted)}
.srv-block__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.srv-card{padding:22px;background:var(--md-bg-soft);border:1px solid var(--md-line);border-radius:14px;transition:.25s;display:flex;flex-direction:column}
.srv-card:hover{border-color:var(--md-teal);box-shadow:0 12px 28px rgba(10,10,10,.06);transform:translateY(-2px)}
.srv-card__name{font-size:15.5px;font-weight:700;color:var(--md-text);margin-bottom:8px;letter-spacing:-0.005em}
.srv-card__desc{font-size:13.5px;line-height:1.65;color:var(--md-muted);flex:1;margin-bottom:16px}
.srv-card__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--md-line-2);padding-top:14px}
.srv-card__price{font-size:15px;font-weight:700;color:var(--md-teal-text);font-variant-numeric:tabular-nums}
.srv-card__cta{font-size:11.5px;font-weight:700;color:var(--md-teal-text);letter-spacing:0.5px;border:1px solid var(--md-teal-text);padding:7px 14px;border-radius:18px;transition:.2s;white-space:nowrap}
.srv-card__cta:hover{background:var(--md-teal);color:#fff}
@media(max-width:600px){
  .srv-list{padding:24px 16px 40px}
  .srv-block{margin-bottom:42px}
  .srv-block__head{gap:12px}
  .srv-block__icon{width:44px;height:44px;font-size:24px;border-radius:10px}
  .srv-block__head h3{font-size:22px}
  .srv-block__grid{grid-template-columns:1fr;gap:14px}
}

.srv-closing{max-width:840px;padding:40px 24px 80px;font-size:15.5px;line-height:1.75;color:var(--md-text);opacity:.92}
.srv-closing h2{font-family:'Playfair Display',serif;font-size:26px;font-weight:600;color:var(--md-text);margin:30px 0 12px;letter-spacing:-0.01em}
.srv-closing h2:first-child{margin-top:0}
.srv-closing p{margin-bottom:14px}
.srv-closing a{color:var(--md-teal-text);text-decoration:underline;text-underline-offset:3px}
.srv-closing strong{color:var(--md-teal-text)}

/* === Redesigned service block headers with REAL PHOTO background === */
.srv-block__head{
  position:relative;
  min-height:200px;
  padding:38px 32px;
  margin-bottom:0;
  border-radius:20px 20px 0 0;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  display:flex;
  align-items:flex-end;
  border-bottom:none;
  overflow:hidden;
  isolation:isolate;
}
.srv-block__head-inner{position:relative;z-index:2;color:#fff;max-width:760px}
.srv-block__count{display:inline-block;font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.85);background:rgba(255,255,255,.16);backdrop-filter:blur(8px);padding:6px 14px;border-radius:16px;margin-bottom:14px;border:1px solid rgba(255,255,255,.22)}
.srv-block__head h3{font-family:'Playfair Display',serif;font-size:34px;font-weight:600;color:#fff;margin-bottom:10px;letter-spacing:-0.015em;text-shadow:0 2px 18px rgba(0,0,0,.18)}
.srv-block__head p{font-size:15.5px;line-height:1.65;color:rgba(255,255,255,.94);text-shadow:0 1px 8px rgba(0,0,0,.16)}

@media(max-width:600px){
  .srv-block__head{min-height:160px;padding:28px 22px;border-radius:14px 14px 0 0}
  .srv-block__head h3{font-size:26px}
  .srv-block__head p{font-size:14px}
}

/* === Redesigned service CARDS === */
.srv-block__grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
  gap:0;
  background:var(--md-bg-soft);
  border:1px solid var(--md-line);
  border-top:none;
  border-radius:0 0 20px 20px;
  overflow:hidden;
}
.srv-card{
  padding:26px 24px;
  border-right:1px solid var(--md-line-2);
  border-bottom:1px solid var(--md-line-2);
  display:flex;
  flex-direction:column;
  background:var(--md-bg-soft);
  transition:.25s;
}
.srv-card:hover{background:var(--md-bg-soft)}
.srv-card__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.srv-card__price{font-size:20px;font-weight:700;color:var(--md-teal-text);font-variant-numeric:tabular-nums;letter-spacing:-0.01em}
.srv-card__body{flex:1}
.srv-card__name{font-size:16px;font-weight:700;color:var(--md-text);margin-bottom:8px;letter-spacing:-0.005em;line-height:1.3}
.srv-card__desc{font-size:14px;line-height:1.7;color:var(--md-muted);margin-bottom:16px}
.srv-card__foot{display:flex;align-items:center;gap:8px;padding-top:14px;border-top:1px solid var(--md-line-2)}
.srv-card__cta{flex:1;font-size:12px;font-weight:700;color:#fff;background:var(--md-teal);padding:10px 14px;border-radius:18px;text-align:center;transition:.2s;letter-spacing:0.3px;white-space:nowrap;border:1px solid var(--md-teal-text)}
.srv-card__cta:hover{background:var(--md-teal-hover)}
.srv-card__wa{flex-shrink:0;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:#25D366;border-radius:50%;transition:.2s}
.srv-card__wa:hover{background:#1da851;transform:scale(1.06)}

@media(max-width:600px){
  .srv-block__grid{grid-template-columns:1fr;border-radius:0 0 14px 14px}
  .srv-card{padding:22px 20px}
  .srv-card__name{font-size:15px}
  .srv-card__price{font-size:18px}
}

/* ============================================================
   Tarife & Servicii filter chips + clickable rows + service detail
   ============================================================ */
.trf-filter-section{padding:32px 0 18px;background:var(--md-bg)}
.trf-filter-label{font-size:11px;font-weight:700;letter-spacing:3px;color:var(--md-muted);text-transform:uppercase;margin-bottom:14px;text-align:center}
.trf-filter-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:980px;margin:0 auto}
.filter-chip{font-family:inherit;font-size:13px;font-weight:600;color:var(--md-text);background:rgba(242,236,224,.06);border:1.5px solid var(--md-line);padding:9px 18px;border-radius:22px;cursor:pointer;transition:.2s;white-space:nowrap}
.filter-chip:hover{background:var(--md-teal-soft);border-color:var(--md-teal);color:var(--md-teal-text);transform:translateY(-1px)}
.filter-chip.active{background:var(--md-teal);border-color:var(--md-teal-text);color:#fff;box-shadow:0 6px 18px rgba(4,106,56,.22)}
@media(max-width:600px){
  .trf-filter-chips{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;justify-content:flex-start;padding:0 16px;margin:0 -16px;scrollbar-width:none}
  .trf-filter-chips::-webkit-scrollbar{display:none}
  .filter-chip{flex-shrink:0;font-size:12px;padding:8px 14px}
}

/* Clickable rows + arrow */
.trf-row.trf-clickable{cursor:pointer;transition:background .2s}
.trf-row.trf-clickable:hover{background:var(--md-teal-soft)}
.trf-row.trf-clickable .trf-arrow{display:inline-block;margin-left:6px;color:var(--md-teal-text);opacity:0;transform:translateX(-4px);transition:.25s;font-weight:600}
.trf-row.trf-clickable:hover .trf-arrow{opacity:1;transform:translateX(0)}
.trf-name{font-weight:600;color:var(--md-text)}
.trf-row.trf-clickable:hover .trf-name{color:var(--md-teal-text)}

.trf-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:24px}

/* ============================================================
   Service detail page (/serviciu-X)
   ============================================================ */
.srv-bcrumb{font-size:12px;color:var(--md-muted);margin-bottom:14px;letter-spacing:.5px}
.srv-bcrumb a{color:var(--md-teal-text);transition:.2s}
.srv-bcrumb a:hover{color:var(--md-teal-text)}
.srv-bcrumb strong{color:var(--md-text)}
.srv-price-big{font-family:'Playfair Display',serif;font-size:clamp(36px,5vw,52px);font-weight:700;color:var(--md-teal-text);margin:14px 0 8px;letter-spacing:-.01em}
.srv-hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:24px}
.srv-cta-block .srv-hero-cta{justify-content:flex-start}

.srv-detail-section{padding:60px 0 100px;background:var(--md-bg)}
.srv-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:48px;align-items:start;max-width:1180px;margin:0 auto;padding:0 28px}
.srv-content{}
.srv-block{background:var(--md-bg-soft);border:1px solid var(--md-line);border-radius:20px;padding:36px;margin-bottom:24px}
.srv-block h2{font-family:'Playfair Display',serif;font-size:clamp(22px,3vw,30px);font-weight:600;color:var(--md-text);margin-bottom:16px;letter-spacing:-.01em;line-height:1.2}
.srv-block p{font-size:15px;line-height:1.75;color:var(--md-muted);margin-bottom:12px}
.srv-intro-text{font-size:16px !important;color:var(--md-text) !important;line-height:1.85 !important}
.srv-note-text{font-size:13.5px !important;color:var(--md-muted) !important;font-style:italic}
.srv-list{list-style:none;padding:0;margin-top:8px}
.srv-list li{padding:12px 0;font-size:14.5px;line-height:1.65;color:var(--md-text);display:flex;align-items:flex-start;gap:12px;border-bottom:1px solid var(--md-line-2)}
.srv-list li:last-child{border-bottom:none}
.srv-list li::before{content:'✓';width:24px;height:24px;border-radius:50%;background:var(--md-teal-soft);color:var(--md-teal-text);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;margin-top:2px}

.srv-steps{display:grid;gap:14px;margin-top:8px}
.srv-step{display:flex;gap:18px;padding:18px 22px;background:var(--md-bg-soft);border-radius:14px;border:1px solid var(--md-line)}
.srv-step-num{width:36px;height:36px;border-radius:50%;background:var(--md-teal);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}
.srv-step h4{font-size:15px;font-weight:700;color:var(--md-text);margin-bottom:4px}
.srv-step p{font-size:13.5px;color:var(--md-muted);line-height:1.65;margin:0}

.srv-cta-block{background:linear-gradient(135deg,var(--md-teal-soft),var(--md-bg-paper));border-color:var(--md-teal-soft)}

.srv-sidebar{position:sticky;top:120px}
.srv-sidebar-card{background:var(--md-bg-soft);border:1px solid var(--md-line);border-radius:22px;padding:32px 28px;box-shadow:0 18px 48px rgba(10,10,10,.06)}
.srv-sidebar-price{font-family:'Playfair Display',serif;font-size:38px;font-weight:700;color:var(--md-teal-text);line-height:1;margin-bottom:6px}
.srv-sidebar-name{font-size:18px;font-weight:700;color:var(--md-text);margin-bottom:8px}
.srv-sidebar-desc{font-size:13.5px;color:var(--md-muted);line-height:1.6;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--md-line)}
.srv-sidebar-cta{width:100%;justify-content:center;margin-bottom:10px}
.srv-sidebar-info{margin-top:20px;padding-top:16px;border-top:1px solid var(--md-line)}
.srv-sidebar-info > div{font-size:13px;padding:8px 0;color:var(--md-muted);display:flex;justify-content:space-between;align-items:center;gap:8px}
.srv-sidebar-info > div strong{color:var(--md-text);font-weight:600}

@media(max-width:880px){
  .srv-grid{grid-template-columns:1fr;gap:24px}
  .srv-sidebar{position:static;order:-1}
  .srv-block{padding:28px 24px}
}

/* ============================================================
   Nav: DESKTOP subpages get opaque cream nav (readability on solid backgrounds).
   MOBILE: rules removed 2026-05-12 so subpage nav matches homepage minimal pattern.
   ============================================================ */
@media(min-width:769px){
  body.page-sub .nav .nav-top{background:var(--md-bg);backdrop-filter:none;border-bottom:1px solid var(--md-line)}
  body.page-sub .nav .nav-menu{background:var(--md-bg);backdrop-filter:none;border-bottom:1px solid var(--md-line-2)}
  body.page-sub .nav.scrolled .nav-top,body.page-sub .nav.scrolled .nav-menu{background:var(--md-bg)}
  body.page-sub .nav{border-bottom:3px solid var(--md-teal)}
}
body.page-sub .page-hero,body.page-sub .pp-hero,body.page-sub .dr-hero,body.page-sub .blog-hero{padding-top:160px}

/* ============================================================
   MOBILE: identical compact nav on ALL pages (matches homepage exactly).
   Full rules ported from test-oferte.css (homepage-only) 2026-05-12 per user:
   "headerul care il avem pe prima pagina sa se aplice pe toate paginile, identic".
   ============================================================ */
@media(max-width:768px){
  .nav .nav-top{
    background:var(--md-bg)!important;
    backdrop-filter:none;
    border-bottom:3px solid var(--md-teal)!important;
    padding:12px 14px!important;
    gap:8px;
  }
  /* When mobile drawer is open, nav-top must be FULLY opaque (no body bg showing through). */
  .nav.menu-open .nav-top{
    background:var(--md-bg)!important;
    backdrop-filter:none!important;
    border-bottom:3px solid var(--md-teal)!important;
  }
  .nav-actions{gap:8px!important}
  .nav-logo img{height:46px!important}
  .nav-cta{
    background:linear-gradient(135deg,#046A38,#04140C)!important;
    border:none!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:700!important;
    padding:12px 16px!important;
    border-radius:26px!important;
    letter-spacing:.04em!important;
    box-shadow:0 3px 10px rgba(4,106,56,.22);
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
  }
  .nav-wa{
    background:linear-gradient(135deg,#25D366,#128C7E)!important;
    border:none!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:700!important;
    padding:12px 14px!important;
    border-radius:26px!important;
    letter-spacing:.04em!important;
    box-shadow:0 3px 10px rgba(37,211,102,.30);
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
  }
  .nav-wa svg{width:18px!important;height:18px!important}
  .nav-cta:hover{
    background:linear-gradient(135deg,#04140C,#046A38)!important;
    transform:translateY(-1px);
  }
  .nav-wa:hover{
    background:linear-gradient(135deg,#128C7E,#25D366)!important;
    transform:translateY(-1px);
  }
  .nav-cta::before{
    content:"";
    display:inline-block;
    width:14px;
    height:14px;
    background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="white"><path d="M20.487 17.14l-4.065-3.696a1 1 0 0 0-1.391.043l-2.393 2.461c-.576-.11-1.734-.471-2.926-1.66-1.192-1.193-1.553-2.354-1.66-2.926l2.459-2.394a1 1 0 0 0 .043-1.391L6.86 3.513a1 1 0 0 0-1.391-.087l-2.17 1.861a1 1 0 0 0-.29.649c-.015.25-.301 6.172 4.291 10.766C11.305 20.707 16.323 21 17.705 21c.202 0 .326-.006.359-.008a.992.992 0 0 0 .648-.291l1.86-2.171a.997.997 0 0 0-.085-1.39z"/></svg>') no-repeat center/contain;
    flex-shrink:0;
  }
}
