/*
Theme Name: ProLife Medical
Theme URI: https://prolifemedical.ro/
Description: Identitate proprie ProLife Medical. Child theme Astra, 3 centre medicale, design mobile-first.
Author: ProLife Medical
Version: 0.16.6
Template: astra
Text Domain: prolife-medical
Requires PHP: 8.2
*/
:root {
 --pl-ink:#142e40; --pl-text:#3e5260; --pl-muted:#657988; --pl-brand:#c12e49; --pl-brand-hover:#a3233b;
 --pl-teal:#1a6878; --pl-teal-soft:#e4f3f2; --pl-line:#dfe7ea; --pl-bg:#f6f9fa; --pl-white:#ffffff;
 --pl-radius:20px; --pl-shadow:0 16px 48px rgba(16,53,66,.065);
}
* {box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--pl-text);background:#fff;font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body .site-content{display:block}
img{max-width:100%;height:auto}
a{color:var(--pl-teal);text-decoration:none}
a:hover{color:var(--pl-brand)}
button,input,select{font:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid #53a4a5;outline-offset:3px}
.pl-container{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.pl-skip{position:absolute;left:12px;top:-80px;padding:12px 18px;background:#fff;z-index:300;color:var(--pl-ink)}
.pl-skip:focus{top:10px}
.pl-utility{background:#102c3f;color:#dfedf2;padding:7px 0;font-size:12px;letter-spacing:.015em}
.pl-utility .pl-container{display:flex;align-items:center;justify-content:space-between;gap:16px}
.pl-utility a{color:#fff}
.pl-utility a:hover{text-decoration:underline}
.pl-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid #eaf0f1;backdrop-filter:blur(14px);box-shadow:0 2px 16px rgba(25,44,58,.025)}
body.admin-bar .pl-header{top:32px}
.pl-header-inner{min-height:88px;display:flex;align-items:center;gap:22px;justify-content:space-between}
.pl-logo{display:inline-flex;align-items:center;min-width:185px}
.pl-logo img{width:191px;height:auto;display:block;max-height:63px;object-fit:contain;object-position:left center}
.pl-nav{display:flex;align-items:center;gap:23px;margin-left:auto}
.pl-nav a{font-size:14px;font-weight:650;color:var(--pl-ink);white-space:nowrap;padding:9px 0;position:relative}
.pl-nav a:hover,.pl-nav a[aria-current=page]{color:var(--pl-brand)}
.pl-nav .pl-button{padding:11px 17px;color:white}
.pl-nav .pl-button:hover{color:white}
.pl-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--pl-brand);border:1px solid var(--pl-brand);border-radius:100px;padding:13px 23px;color:#fff;font-weight:700;font-size:14px;line-height:1.4;box-shadow:0 9px 24px rgba(242,29,47,.13);transition:transform .2s,background .2s,border-color .2s}
.pl-button:hover{background:var(--pl-brand-hover);border-color:var(--pl-brand-hover);color:#fff;transform:translateY(-1px)}
.pl-button-outline{background:transparent;border-color:#b5ced3;box-shadow:none;color:var(--pl-ink)}
.pl-button-outline:hover{background:#e8f4f5;border-color:var(--pl-teal);color:var(--pl-ink)}
.pl-button-light{background:#fff;border-color:#fff;color:var(--pl-ink)}
.pl-button-light:hover{background:#f0fafb;border-color:#f0fafb;color:var(--pl-ink)}
.pl-mobile-toggle{display:none;border:1px solid var(--pl-line);background:#fff;border-radius:12px;padding:9px 12px;color:var(--pl-ink);font-weight:650}
.pl-main{min-height:50vh}
.pl-hero{background:linear-gradient(125deg,#eef7f7 0%,#f9fbfc 57%,#fef8f7 100%);overflow:hidden;position:relative}
.pl-hero:after{content:"";position:absolute;width:520px;height:520px;right:-260px;top:-300px;border-radius:50%;background:rgba(193,46,73,.045);pointer-events:none}
.pl-hero-grid{min-height:560px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:58px;padding:76px 0 82px;position:relative;z-index:1}
.pl-kicker{display:inline-flex;gap:9px;align-items:center;color:var(--pl-teal);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.13em;margin:0 0 18px}
.pl-kicker:before{content:"";width:22px;height:2px;background:var(--pl-brand);border-radius:2px}
h1,h2,h3,h4{color:var(--pl-ink);line-height:1.18;letter-spacing:-.035em;margin-top:0}
.pl-hero h1{font-size:clamp(40px,5vw,68px);line-height:1.09;margin:0 0 26px;font-weight:800;max-width:660px}
.pl-hero h1 span{color:var(--pl-brand)}
.pl-hero-lead{font-size:19px;line-height:1.8;max-width:580px;color:#516777;margin:0 0 30px}
.pl-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.pl-breadcrumbs{font-size:13px;color:var(--pl-muted);display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pl-breadcrumbs a{color:var(--pl-teal)}
.pl-hero-aside{background:#fff;border-radius:27px;padding:28px;box-shadow:0 28px 75px rgba(16,53,66,.10);border:1px solid #e3edee;transform:rotate(1deg)}
.pl-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:21px}
.pl-panel-mark{width:47px;height:47px;display:grid;place-items:center;border-radius:15px;background:var(--pl-teal-soft);color:var(--pl-teal);font-weight:800;font-size:25px}
.pl-panel-head strong{font-size:17px;color:var(--pl-ink);display:block}
.pl-panel-head span{font-size:13px;color:var(--pl-muted)}
.pl-choice{display:flex;align-items:center;gap:14px;border:1px solid #e4ecee;border-radius:17px;padding:17px;margin-top:11px;background:#fff;transition:background .2s,border-color .2s,transform .2s}
.pl-choice:hover{background:#f3faf9;border-color:#c9e0df;transform:translateX(3px)}
.pl-choice-icon{width:42px;height:42px;flex:0 0 42px;border-radius:13px;display:grid;place-items:center;background:#eff5f8;color:var(--pl-teal);font-size:20px}
.pl-choice strong{display:block;color:var(--pl-ink);font-size:14px;line-height:1.3}
.pl-choice small{display:block;color:#627784;font-size:12px;line-height:1.5}
.pl-choice-arrow{margin-left:auto;color:var(--pl-brand);font-size:22px}
.pl-section{padding:86px 0}
.pl-section.alt{background:var(--pl-bg)}
.pl-section.slim{padding:64px 0}
.pl-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:30px}
.pl-section-heading h2{font-size:clamp(29px,3vw,43px);margin:0 0 7px}
.pl-section-heading p{max-width:730px;margin:0;color:var(--pl-muted)}
.pl-text-link{display:inline-flex;align-items:center;gap:7px;font-weight:750;font-size:14px;white-space:nowrap}
.pl-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.pl-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}
.pl-card{border:1px solid #e5ebee;border-radius:var(--pl-radius);padding:28px;background:#fff;box-shadow:var(--pl-shadow);height:100%;display:flex;flex-direction:column;gap:0;transition:transform .2s,box-shadow .2s}
.pl-card:hover{transform:translateY(-3px);box-shadow:0 20px 48px rgba(16,53,66,.10)}
.pl-card-icon{width:54px;height:54px;display:grid;place-items:center;font-size:25px;font-weight:700;color:var(--pl-teal);border-radius:17px;background:var(--pl-teal-soft);margin-bottom:22px}
.pl-card h3{font-size:23px;margin:0 0 9px}
.pl-card p{font-size:14px;color:#5c6f7c;margin:0 0 18px;line-height:1.72}
.pl-card-info{display:flex;align-items:start;gap:9px;color:#526877;font-size:13px;margin:8px 0}
.pl-card-info svg,.pl-info-list svg{width:17px;height:17px;flex-shrink:0;margin-top:2px;color:var(--pl-teal)}
.pl-card .pl-text-link{margin-top:auto;padding-top:18px}
.pl-tag{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--pl-teal);margin:0 0 12px}
.pl-card-link{text-decoration:none}
.pl-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}
.pl-feature{background:#103c51;color:#fff;border-radius:25px;padding:44px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;min-height:300px}
.pl-feature:after{content:"+";position:absolute;font-size:230px;font-weight:300;right:22px;bottom:-80px;opacity:.07;line-height:1}
.pl-feature h2{color:#fff;font-size:clamp(29px,3vw,40px);position:relative;z-index:1}
.pl-feature p{color:#d2e4e9;max-width:430px;position:relative;z-index:1}
.pl-feature .pl-button{align-self:flex-start;z-index:2}
.pl-service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.pl-service-pill{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--pl-line);border-radius:14px;padding:18px 17px;font-size:14px;color:var(--pl-ink);font-weight:650;min-height:70px}
.pl-service-pill:hover{border-color:#9cc9ca;background:#f4fcfb;color:var(--pl-teal)}
.pl-service-pill:before{content:"+";width:24px;height:24px;line-height:24px;flex:0 0 24px;border-radius:50%;background:var(--pl-teal-soft);color:var(--pl-teal);font-size:17px;text-align:center}
.pl-service-pill .pl-pill-arrow{margin-left:auto;color:var(--pl-brand)}
.pl-notice{border-left:3px solid var(--pl-teal);padding:15px 20px;background:#edf6f6;border-radius:0 12px 12px 0;font-size:14px;color:#345565}
.pl-cta-band{padding:55px 0;background:#103b50;color:#fff}
.pl-cta-band .pl-container{display:flex;align-items:center;justify-content:space-between;gap:25px}
.pl-cta-band h2{color:#fff;font-size:33px;margin-bottom:10px}
.pl-cta-band p{color:#d3e5e9;margin:0}
.pl-page-hero{padding:67px 0 56px;background:linear-gradient(120deg,#eef7f7,#fbfcfd)}
.pl-page-hero h1{font-size:clamp(38px,5vw,58px);margin:14px 0}
.pl-page-hero p{max-width:800px;font-size:18px;color:#5a6e7b;margin:0}
.pl-content{padding:60px 0 86px;max-width:940px}
.pl-prose h2{font-size:31px;margin:32px 0 12px}
.pl-prose h3{font-size:22px;margin:25px 0 9px}
.pl-prose p{line-height:1.88}
.pl-prose li{line-height:1.8;margin-bottom:6px}
.pl-info-list{list-style:none;margin:0;padding:0;display:grid;gap:15px}
.pl-info-list li{display:flex;gap:11px;color:var(--pl-text)}
.pl-detail-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:40px;padding:60px 0 90px;align-items:start}
.pl-detail-side{background:#f3f8f9;border:1px solid #e0eced;border-radius:22px;padding:29px;position:sticky;top:118px}
.pl-detail-side h3{margin:0 0 16px;font-size:23px}
.pl-detail-side .pl-button{display:flex;margin-top:22px;width:100%}
.pl-detail-side .pl-button-outline{margin-top:10px}
.pl-detail-section{margin-top:35px;border-top:1px solid var(--pl-line);padding-top:33px}
.pl-detail-section h2{font-size:29px}
.pl-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.pl-pills a{padding:9px 15px;border-radius:100px;background:#eff7f7;font-weight:650;color:#216070;font-size:13px}
.pl-pills a:hover{background:#d8eeee}
.pl-location-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pl-summary-strip{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid var(--pl-line);padding-top:22px;margin-top:22px;color:var(--pl-muted);font-size:13px}
.pl-footer{background:#0d2b3c;color:#c7d7df;padding:65px 0 0}
.pl-footer-top{display:grid;grid-template-columns:1.45fr 1fr 1.2fr;gap:70px;padding-bottom:55px}
.pl-footer .pl-logo img{max-width:210px;filter:brightness(0) invert(1)}
.pl-footer h3{color:#fff;font-size:17px;margin:0 0 19px}
.pl-footer p{font-size:14px;color:#c6d7df}
.pl-footer ul{padding:0;margin:0;list-style:none}
.pl-footer li{margin:0 0 9px;font-size:14px}
.pl-footer a{color:#dae8ef}
.pl-footer a:hover{color:#fff;text-decoration:underline}
.pl-footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding:21px 0;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#b5c8d2}
.pl-footer-bottom a{font-size:12px}
.pl-error{padding:130px 0;text-align:center}
.pl-error h1{font-size:65px}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);white-space:nowrap;overflow:hidden;height:1px;width:1px}
@media(max-width:1080px){
 .pl-nav{gap:14px}.pl-logo img{width:170px}.pl-hero-grid{gap:30px}.pl-footer-top{gap:35px}
}
@media(max-width:920px){
 .pl-mobile-toggle{display:inline-flex;align-items:center;gap:9px}
 .pl-header-inner{min-height:75px;flex-wrap:wrap}
 .pl-nav{display:none;flex-basis:100%;width:100%;margin:0;padding:0 0 23px;gap:0;flex-direction:column;align-items:stretch}
 .pl-nav.is-open{display:flex}
 .pl-nav a{display:block;padding:12px 10px;border-bottom:1px solid var(--pl-line)}
 .pl-nav .pl-button{margin-top:12px;text-align:center}
 .pl-hero-grid{grid-template-columns:1fr;gap:32px;padding:64px 0}
 .pl-hero-aside{max-width:570px;transform:none}
 .pl-grid3,.pl-location-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pl-service-list{grid-template-columns:repeat(2,1fr)}
 .pl-detail-grid{grid-template-columns:1fr}
 .pl-detail-side{position:static}
 .pl-footer-top{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
 body.admin-bar .pl-header{top:46px}
 .pl-container{width:min(100% - 34px,1180px)}
 .pl-utility{font-size:11px}.pl-utility .pl-container{justify-content:center;flex-wrap:wrap;gap:6px}
 .pl-header-inner{min-height:68px}.pl-logo img{width:154px}
 .pl-hero-grid{padding:53px 0 59px}.pl-hero h1{font-size:40px}.pl-hero-lead{font-size:16px;line-height:1.72}
 .pl-hero-aside{padding:19px;border-radius:21px}
 .pl-section{padding:60px 0}.pl-section-heading{display:block}.pl-section-heading .pl-text-link{margin-top:12px}
 .pl-grid3,.pl-grid2,.pl-feature-grid,.pl-service-list,.pl-location-tiles{grid-template-columns:1fr}
 .pl-card{padding:23px}.pl-feature{min-height:270px;padding:29px}
 .pl-page-hero{padding:51px 0 47px}.pl-page-hero h1{font-size:37px}
 .pl-content{padding:46px 0 62px}.pl-detail-grid{padding:44px 0 60px}
 .pl-cta-band .pl-container{display:block}.pl-cta-band .pl-button{margin-top:24px}
 .pl-footer-top{grid-template-columns:1fr;gap:27px}.pl-footer-bottom{flex-direction:column;gap:8px}
 .pl-actions .pl-button{width:100%}
}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
