:root{--ink:#143a38;--deep:#103b38;--green:#4a8a76;--mint:#dcefe8;--paper:#f8faf8;--line:#dce6e1;--white:#fff;--muted:#526864;--content:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;font-family:"Segoe UI",Arial,sans-serif;font-size:1rem;line-height:1.6}
img{max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:.22em}
a:focus-visible{outline:3px solid #bcce70;outline-offset:4px;border-radius:4px}
.container{width:min(var(--content),calc(100% - 48px));margin:auto}
.skip{position:absolute;top:-70px;left:20px;z-index:100;background:#fff;padding:12px}
.skip:focus{top:12px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:"Segoe UI",Arial,sans-serif}
h2{font-size:clamp(2.3rem,4.1vw,3.65rem);letter-spacing:-.055em;line-height:1.14;margin-bottom:25px;font-weight:700}
h3{font-size:1.34rem;line-height:1.25;letter-spacing:-.025em}
.eyebrow{font-size:.79rem;letter-spacing:.15em;text-transform:uppercase;color:#377b66;font-weight:800;margin-bottom:20px}
.site-header{height:92px;background:#fff;position:relative;z-index:5;box-shadow:0 1px 0 var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;height:100%}
.brand{display:flex;align-items:center;gap:12px;min-width:290px;line-height:1.15}
.brand img{object-fit:contain}
.brand strong{display:block;font-family:"Segoe UI",Arial,sans-serif;font-size:.99rem;font-weight:800;letter-spacing:-.035em}
.brand small{display:block;color:var(--muted);font-size:.72rem;margin-top:5px;letter-spacing:.03em}
.nav{display:flex;align-items:center;gap:31px;white-space:nowrap}
.nav a{font-size:.9rem;font-weight:700}
.header-call{background:var(--deep);color:#fff;border-radius:999px;white-space:nowrap;padding:13px 20px;font-weight:700;font-size:.92rem}
.header-call:hover,.button:hover{text-decoration:none;filter:brightness(1.08)}
.call-icon{font-size:1.1rem;margin-right:6px}
.hero{position:relative;height:min(650px,57vw);min-height:570px;overflow:hidden;background:#dfebe5}
.hero-media{position:absolute;inset:0;background:none}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(245,249,245,.95) 0%,rgba(245,249,245,.94) 28%,rgba(245,249,245,.5) 52%,rgba(245,249,245,0) 72%)}
.hero-inner{height:100%;position:relative;display:flex;align-items:center}
.hero-copy{max-width:605px;padding-bottom:16px}
.hero .eyebrow{margin-bottom:26px}
h1{font-size:clamp(2.8rem,5.05vw,5rem);line-height:1.13;letter-spacing:-.062em;margin-bottom:28px;font-weight:700}
h1 em{font-style:normal;color:#3b856e}
.hero-copy>p:not(.eyebrow){font-size:1.12rem;max-width:490px;color:#3c5b54;line-height:1.7}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:999px;font-weight:700;font-size:.9rem;min-height:54px;padding:15px 23px;transition:background .2s,transform .2s}
.button:hover{transform:translateY(-1px)}
.button-primary{color:#fff;background:var(--deep)}
.button-text{color:var(--deep);padding-inline:9px}
.photo-note{position:absolute;right:22px;bottom:13px;color:#fff;background:rgba(10,36,32,.62);border-radius:30px;font-size:.72rem;padding:4px 9px}
.quickbar{background:var(--deep);color:#fff}
.quickbar-inner{display:flex;align-items:center;gap:65px;min-height:100px}
.quickbar-inner>div{display:flex;flex-direction:column;line-height:1.35}
.quick-label{font-size:.74rem;color:#a8d2c5;letter-spacing:.04em;margin-bottom:5px}
.quickbar strong{font-size:.95rem}
.quick-link{margin-left:auto;font-weight:700;font-size:.86rem;white-space:nowrap}
.section{padding:110px 0;scroll-margin-top:24px}
.hours-section{background:var(--paper)}
.hours-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:90px;align-items:center}
.section-intro>p:not(.eyebrow){color:var(--muted);max-width:390px;font-size:1.05rem}
.section-intro .muted{font-size:.92rem!important;margin-top:26px}
.inline-link{font-weight:800;color:#246d59;display:inline-block;margin-top:18px;font-size:.95rem}
.hours-card{background:#fff;box-shadow:0 22px 65px rgba(22,62,54,.075);border:1px solid #e9efec;border-radius:12px;padding:13px 28px 27px}
.hours-head,.hours-row{display:grid;grid-template-columns:1fr 1.2fr 1.18fr 1fr;gap:12px;align-items:center}
.hours-head{font-size:.76rem;font-weight:700;color:#618078;padding:20px 0 10px}
.hours-row{min-height:59px;border-bottom:1px solid var(--line);font-size:.89rem}
.hours-row strong{font-weight:800}
.hours-row span:not(.empty){white-space:nowrap}
.hours-row .empty{color:#a0b4ab}
.blood{display:flex;align-items:center;gap:16px;background:#edf7f1;border-radius:8px;margin-top:26px;padding:18px 20px}
.blood-icon{background:#d1e8da;border-radius:50%;display:grid;place-items:center;flex:0 0 38px;height:38px;color:#2e775d}
.blood strong,.blood span{display:block}
.blood strong{font-size:.9rem}
.blood span{font-size:.84rem;color:#4e6a5f}
.care-section{background:#fff}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:46px}
.section-heading h2{margin:0}
.section-heading>p{max-width:420px;color:var(--muted);margin:0}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.service{border:1px solid var(--line);border-radius:12px;min-height:270px;padding:28px 29px;transition:box-shadow .2s,transform .2s}
.service:hover{box-shadow:0 18px 42px rgba(13,57,46,.08);transform:translateY(-3px)}
.service-no{font-size:.85rem;color:#4e927e;font-weight:800;display:block;margin-bottom:58px}
.service h3{margin-bottom:10px}
.service p{color:var(--muted);margin:0;font-size:.94rem}
.service-note{color:#677e74;margin:25px 0 0;font-size:.9rem}
.team-section{background:#e9f3ed}
.team-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}
.team-intro{font-size:1.04rem;color:#49685b;max-width:390px}
.team-list{border-top:1px solid #b8d5c5}
.team-person{display:flex;align-items:center;gap:19px;padding:22px 2px;border-bottom:1px solid #b8d5c5}
.person-monogram{display:grid;place-items:center;flex:0 0 54px;height:54px;border:1px solid #9ecbb4;border-radius:50%;color:#277559;font-family:"Segoe UI",Arial,sans-serif;font-size:.84rem;font-weight:800}
.team-person strong,.team-person div span{display:block}
.team-person strong{font-size:1.03rem}
.team-person div span{font-size:.88rem;color:#607c6d;margin-top:2px}
.team-layout{display:block}
.team-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:38px}
.team-heading h2{margin-bottom:0}
.team-intro{margin:0}
.team-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;border:0}
.team-person{display:block;padding:0;background:#fff;border:1px solid #c6dfd0;border-radius:13px;overflow:hidden}
.team-person img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center}
.team-person .person-detail{padding:21px 23px 24px}
.team-person strong{font-size:1.08rem}
.contact-section{background:var(--deep);color:#fff}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}
.contact-section .eyebrow{color:#9cceba}
.contact-intro>p:not(.eyebrow){font-size:1.2rem;color:#d6eae0;line-height:1.7}
.button-light{background:#dbefdf;color:#174f3d;margin-top:19px}
.contact-card{background:#fff;color:var(--ink);border-radius:12px;padding:34px 43px}
.contact-card>div{border-bottom:1px solid var(--line);padding:13px 0 21px}
.contact-card>div:first-child{padding-top:0}
.contact-card>div:last-of-type{border-bottom:0}
.contact-label{display:block;color:#648075;font-size:.82rem;margin-bottom:4px}
.contact-card a:not(.contact-large){font-weight:700;font-size:1.04rem}
.contact-card .contact-large{font-family:"Segoe UI",Arial,sans-serif;font-size:2.15rem;font-weight:800;letter-spacing:-.04em}
.contact-card p{border-top:1px solid var(--line);padding-top:18px;color:#567166;font-size:.85rem;margin:10px 0 0}
.contact-card p a{font-size:inherit!important}
.footer{background:#0b2b2a;color:#d9e9e0;padding:31px 0}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer-brand{display:flex;align-items:center;gap:10px;font-size:.78rem;font-weight:800}
.footer-brand img{background:#fff;border-radius:50%;object-fit:contain}
.footer-brand small{display:block;font-size:.72rem;color:#b1c6bb;font-weight:400}
.footer-links{display:flex;gap:25px;font-size:.8rem}
.copyright{color:#a7c1b4;font-size:.76rem}
.legal{max-width:850px;padding:70px 0 100px}
.legal p,.legal li{color:#49665b}
.legal h1{font-size:clamp(2.3rem,4vw,3.6rem)}
.legal h2{font-size:1.45rem;letter-spacing:-.03em;margin:36px 0 12px}
.legal a:not(.button){color:#176b54;text-decoration:underline}
@media(max-width:1100px){.nav{gap:18px}.header-call{padding:12px 14px}.hours-layout,.team-layout,.contact-layout{gap:50px}.quickbar-inner{gap:35px}}
@media(max-width:850px){.site-header{height:auto}.header-inner{flex-wrap:wrap;padding:13px 0 12px;gap:10px}.brand{min-width:0;margin-right:auto}.nav{order:3;width:100%;justify-content:space-between;overflow-x:auto;gap:18px;padding:8px 0 2px}.nav a{font-size:.86rem}.hero{min-height:570px;height:auto}.hero-shade{background:linear-gradient(90deg,rgba(245,249,245,.96),rgba(245,249,245,.86) 48%,rgba(245,249,245,.18))}.hero-inner{min-height:570px}.hero-copy{max-width:560px}.quickbar-inner{gap:20px}.quick-link{display:none}.section{padding:80px 0}.hours-layout,.team-layout,.contact-layout{grid-template-columns:1fr;gap:36px}.section-intro>p:not(.eyebrow),.team-intro{max-width:650px}}
@media(max-width:850px){.team-heading{display:block}.team-intro{margin-top:16px}.team-list{gap:10px}.team-person .person-detail{padding:16px}.team-person strong{font-size:.94rem}.team-person div span{font-size:.81rem}}
@media(max-width:650px){.container{width:calc(100% - 36px)}.site-header{height:auto}.header-inner{padding:9px 0}.brand img{height:43px;width:43px}.brand strong{font-size:.84rem}.brand small{font-size:.67rem}.header-call{font-size:.79rem;padding:9px 11px}.nav{gap:23px;justify-content:flex-start}.nav a{flex:0 0 auto}.hero{min-height:600px}.hero-media{background-position:66% center}.hero-shade{background:linear-gradient(90deg,rgba(245,249,245,.98),rgba(245,249,245,.91) 64%,rgba(245,249,245,.55))}.hero-inner{min-height:600px;align-items:center}.hero-copy{padding:16px 0 48px}.hero .eyebrow{font-size:.73rem}.hero h1{font-size:clamp(2.55rem,10vw,3.5rem);margin-bottom:20px}.hero-copy>p:not(.eyebrow){font-size:1.02rem}.hero-actions{margin-top:25px}.button{min-height:50px}.photo-note{font-size:.64rem}.quickbar-inner{min-height:0;padding:17px 0;gap:15px;flex-wrap:wrap}.quickbar-inner>div{min-width:calc(50% - 15px)}.quick-label{font-size:.68rem}.quickbar strong{font-size:.77rem}.section{padding:65px 0}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:15px}.service-grid{grid-template-columns:1fr}.service{min-height:0;padding:25px}.service-no{margin-bottom:25px}.hours-card{padding:9px 13px 18px;overflow:auto}.hours-head,.hours-row{grid-template-columns:1fr 1.25fr 1.24fr 1fr;gap:5px;min-width:480px}.hours-row{font-size:.79rem}.hours-head{font-size:.68rem}.blood{margin-top:20px}.contact-card{padding:24px}.contact-card .contact-large{font-size:1.75rem}.contact-card a.email{font-size:.91rem;overflow-wrap:anywhere}.footer-inner{align-items:flex-start;flex-direction:column}.footer-links{gap:16px;flex-wrap:wrap}}
@media(max-width:650px){.hours-card{overflow:visible}.hours-head{display:none}.hours-row{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;padding:12px 0;font-size:.85rem}.hours-row strong{grid-column:1/-1;font-size:.96rem}.hours-row span{white-space:normal!important}.hours-row span::before{display:block;color:#6a8178;font-size:.7rem;font-weight:600}.hours-row span:nth-child(2)::before{content:'Akutní'}.hours-row span:nth-child(3)::before{content:'Objednaní'}.hours-row span:nth-child(4)::before{content:'Odpoledne'}}
@media(max-width:650px){.team-list{grid-template-columns:1fr;gap:18px}.team-person .person-detail{padding:19px 22px}.team-person strong{font-size:1.05rem}.team-person div span{font-size:.9rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service,.button{transition:none}}
.hero{background:#eaf3ed;height:600px;min-height:600px}
.hero-media{margin:0;position:absolute;inset:0 0 0 auto;width:60%;height:100%;background:none}
.hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-shade{display:none}
.hero-copy{max-width:min(430px,32vw)}
.hero h1{font-size:clamp(2.65rem,3.5vw,3.9rem)}
.photo-note{right:15px;bottom:12px}
@media(max-width:1150px){
  .hero{height:auto;min-height:0}
  .hero-media{position:relative;inset:auto;width:100%;height:clamp(270px,47vw,520px)}
  .hero-media img{object-position:center 44%}
  .hero-inner{height:auto;min-height:0;padding-top:48px;padding-bottom:54px}
  .hero-copy{max-width:750px;padding:0}
  .hero h1{font-size:clamp(2.7rem,5.2vw,4.1rem)}
}
@media(max-width:650px){
  .hero-media{height:clamp(230px,56vw,360px)}
  .hero-media img{object-position:center 44%}
  .hero-inner{min-height:0;padding-top:35px;padding-bottom:44px}
  .hero-copy{padding:0}
  .hero h1{font-size:clamp(2.5rem,9vw,3.45rem)}
  .photo-note{font-size:.63rem}
}
.notice-strip{background:#edf5ef;border-bottom:1px solid #d6e6dc;padding:25px 0;scroll-margin-top:20px}
.notice-inner{display:flex;align-items:center;justify-content:space-between;gap:55px}
.notice-label{display:block;color:#367a61;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:800;margin-bottom:5px}
.notice-strip h2{font-size:1.12rem;line-height:1.3;letter-spacing:-.025em;margin:0}

/* Compact, balanced introduction with the full team visible. */
.hero{height:auto;min-height:0;background:linear-gradient(115deg,#f1f9f5 0%,#e8f3ed 100%)}
.hero-inner{display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);align-items:center;gap:clamp(30px,4vw,64px);height:auto;min-height:0;padding-top:66px;padding-bottom:66px}
.hero-copy{max-width:540px;padding:0}
.hero .eyebrow{margin-bottom:18px}
.hero h1{font-size:clamp(2.75rem,3.45vw,3.55rem);line-height:1.12;margin-bottom:20px}
.hero-copy>p:not(.eyebrow){max-width:470px}
.hero-actions{margin-top:27px}
.hero-media{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:1672/941;overflow:hidden;border-radius:18px;box-shadow:0 22px 55px rgba(25,72,59,.14)}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.photo-note{right:12px;bottom:11px}
@media(max-width:900px){
  .hero-inner{grid-template-columns:1fr;gap:32px;padding-top:34px;padding-bottom:46px}
  .hero-media{order:-1;max-width:680px;justify-self:center}
  .hero-copy{max-width:680px}
  .hero h1{font-size:clamp(2.7rem,6vw,3.7rem)}
}
@media(max-width:650px){
  .hero-inner{gap:29px;padding-top:22px;padding-bottom:40px;min-height:0}
  .hero-media{height:auto;aspect-ratio:1672/941;border-radius:12px}
  .hero-media img{object-position:center}
  .hero-copy{padding:0}
  .hero h1{font-size:clamp(2.45rem,9vw,3.2rem)}
  .hero-actions{gap:8px;margin-top:23px}
  .photo-note{font-size:.63rem}
}
.notice-strip p{max-width:610px;color:#45695a;font-size:.91rem;margin:0}
.notice-strip a{color:#195b43;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.patient-section{background:#f7faf8}
.patient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.patient-card{background:#fff;border:1px solid #dce9df;border-radius:12px;padding:32px 34px 35px}
.patient-icon{display:inline-grid;place-items:center;background:#e7f3eb;color:#287556;border-radius:50%;height:39px;width:39px;font-size:.72rem;font-weight:800;margin-bottom:25px}
.patient-card h3{margin-bottom:10px}
.patient-card p{color:var(--muted);max-width:460px;margin-bottom:0}
.patient-card .inline-link{margin-top:22px}
.insurer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;list-style:none;padding:0;margin:18px 0}
.insurer-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #d9e7de;border-radius:8px;background:#f7fbf8;padding:8px 12px;font-size:.85rem;color:var(--ink)}
.insurer-list li span{color:#537368;font-weight:700;font-variant-numeric:tabular-nums}
.patient-card .insurer-note{font-size:.84rem;line-height:1.5;color:#526864}
@media(max-width:850px){.notice-inner{gap:22px}.notice-strip p{max-width:460px}.patient-card{padding:26px}}
@media(max-width:650px){.notice-inner{display:block}.notice-strip p{margin-top:9px}.patient-grid{grid-template-columns:1fr}.patient-card{padding:25px}.insurer-list{gap:6px}.insurer-list li{padding:7px 9px}}

/* Team portraits: a lighter, more compact gallery. */
.team-section{padding-top:82px;padding-bottom:86px}
.team-heading{max-width:970px;margin:0 auto 32px;gap:36px;align-items:end}
.team-heading h2{font-size:clamp(2.5rem,3.5vw,3.2rem)}
.team-intro{max-width:410px;line-height:1.6}
.team-list{max-width:970px;margin:0 auto;gap:18px}
.team-person{box-shadow:0 10px 28px rgba(25,72,59,.055)}
.team-person img{width:100%;height:235px;aspect-ratio:auto;object-fit:cover;object-position:center 14%}
.team-person .person-detail{padding:17px 19px 20px}
.team-person strong{font-size:1rem;line-height:1.35}
.team-person div span{font-size:.86rem;line-height:1.45}
@media(max-width:850px){
  .team-section{padding-top:68px;padding-bottom:72px}
  .team-heading{gap:22px}
  .team-person img{height:205px}
}
@media(max-width:760px){
  .team-heading{display:block;max-width:580px;margin-bottom:27px}
  .team-intro{margin-top:12px;max-width:540px}
  .team-list{grid-template-columns:1fr;max-width:580px;gap:12px}
  .team-person{display:flex;align-items:stretch;min-height:132px}
  .team-person img{flex:0 0 120px;width:120px;height:132px;object-position:center 12%}
  .team-person .person-detail{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:16px 19px}
  .team-person strong{font-size:1rem}
.team-person div span{font-size:.86rem}
}
@media(max-width:380px){
  .team-person img{flex-basis:104px;width:104px}
  .team-person .person-detail{padding:13px 15px}
}

/* Provider information and legal pages. */
.legal{width:min(850px,calc(100% - 48px));line-height:1.7}
.legal-facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#dce9df;border:1px solid #dce9df;border-radius:12px;overflow:hidden;margin:30px 0 42px}
.legal-facts>div{background:#f7faf8;padding:18px 22px;min-width:0}
.legal-facts span{display:block;color:#5e786b;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px}
.legal-facts strong{display:block;color:#163e37;font-size:.98rem;line-height:1.45}
.footer-inner{flex-wrap:wrap}
@media(max-width:650px){.legal{width:calc(100% - 36px);padding:48px 0 70px}.legal-facts{grid-template-columns:1fr;margin:26px 0 35px}.legal-facts>div{padding:15px 18px}}

/* Výrazné upozornění na uzavření ordinace. */
.notice-strip{background:#fff5f3;border-top:1px solid #f1c8c1;border-bottom:1px solid #f1c8c1;padding:27px 0}
.notice-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:22px 42px;background:#fff;border:2px solid #a91f2d;border-left:10px solid #a91f2d;border-radius:15px;padding:24px 30px;box-shadow:0 14px 30px rgba(115,26,34,.12)}
.notice-label{color:#a01b29;font-size:.78rem;letter-spacing:.12em;margin-bottom:9px}
.notice-label::before{content:"!";display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#a91f2d;color:#fff;font-size:.87rem;font-weight:900;letter-spacing:0;margin-right:9px}
.notice-strip h2{color:#791724;font-size:clamp(1.5rem,2.2vw,2.05rem);line-height:1.2;letter-spacing:-.035em;font-weight:800}
.notice-strip p{color:#651722;font-size:1.08rem;line-height:1.7;max-width:none;margin:0}
.notice-strip p strong{font-weight:800}
@media(max-width:800px){.notice-inner{grid-template-columns:1fr;gap:14px;padding:21px 22px}.notice-strip p{margin:0}}
