/*
Theme Name: GZ10 – Ordination
Author: OpenAI
Description: Schlanke, responsive GZ10-Startseite nach dem Figma-Entwurf.
Version: 1.1.0
Text Domain: gz10
*/

:root{--teal:#00464a;--sand:#f2cba2;--ink:#171717;--max:1480px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);font-family:"Inria Sans",Arial,sans-serif;font-size:16px;line-height:1.5}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
.header{height:124px;background:#fff;position:relative;z-index:1}
.header-inner{height:100%;display:flex;align-items:center}
.brand{display:block;width:190px;padding-block:14px}
.brand img{width:100%;max-height:86px;object-fit:contain}
.hero{height:clamp(490px,43.65vw,700px);min-height:490px;position:relative;overflow:hidden;background:#e8e5e1 url('assets/images/hero-scene.jpg') center 48%/cover no-repeat}
.hero:before{content:"";position:absolute;inset:0;background:#ffffffb8}
.hero-inner{position:relative;height:100%;display:flex;align-items:center}
.hero-copy{width:min(650px,100%);margin-left:clamp(0px,4.8vw,92px);padding-block:36px}
.hero h1{margin:0 0 12px;color:var(--teal);font-weight:700;font-size:clamp(58px,5vw,88px);line-height:.98;text-transform:uppercase}
.hero-subtitle{font-size:clamp(23px,1.7vw,30px);margin:0}
.accent-line{display:block;width:92px;height:3px;background:var(--teal);margin:17px 0 24px}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:22px}
.fact{display:flex;align-items:center;gap:10px;min-width:0}
.facts p{font-size:15px;line-height:1.35;margin:0}
.fact-icon{width:32px;height:32px;flex:none;object-fit:contain}
.contact-details{display:flex;flex-wrap:wrap;gap:12px 16px;font-size:clamp(18px,1.45vw,22px)}
.contact-details a{display:flex;align-items:center;gap:12px;min-height:54px;padding:10px 16px;border:1px solid #ffffffc9;border-radius:6px;background:#ffffffa8;color:var(--teal);font-weight:700}
.contact-icon{width:25px;height:25px;flex:none;object-fit:contain;filter:brightness(0)}
.contact-details a{text-decoration:none}
.contact-details a:hover{background:#fff;border-color:var(--sand)}
.doctors{padding:72px 0 82px;background:#fff}
.section-title{display:inline-block;margin:0 0 28px;text-transform:uppercase;color:var(--teal);font-size:22px;line-height:1.2;border-bottom:2px solid var(--sand);padding-bottom:8px}
.doctor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.doctor-card{position:relative;overflow:hidden;min-height:390px;margin:0;border-radius:14px;background:#fbf0e4;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-top:20px}
.doctor-card img{width:100%;height:315px;flex:none;object-fit:contain;object-position:center bottom}
.doctor-card figcaption{width:100%;padding:13px 22px 18px;background:#fbf0e4;display:flex;flex-direction:column;gap:2px;line-height:1.35}
.doctor-card figcaption strong{font-size:19px;color:var(--teal)}
.doctor-card figcaption span{font-size:16px}
.footer{background:#f8f7f4;border-top:1px solid #e5e1dc;padding:42px 0}
.footer-inner{display:grid;grid-template-columns:1fr 1.5fr auto;align-items:center;gap:48px}
.footer-brand{display:block;width:200px}
.footer-brand img{width:100%;max-height:90px;object-fit:contain}
.opening-hours h2{color:var(--teal);font-size:19px;text-transform:uppercase;margin:0 0 14px}
.hours-grid{display:flex;flex-direction:column;gap:8px}
.hours-grid p{display:flex;gap:18px;margin:0;font-size:16px}
.hours-grid strong{min-width:58px}
.legal-links{display:flex;flex-direction:column;gap:9px;white-space:nowrap}
.legal-links a{color:var(--teal);text-decoration:none}
.legal-links a:hover{text-decoration:underline;text-decoration-color:var(--sand);text-underline-offset:3px}
.legal-page{min-height:55vh;background:#f7f8f7;padding:72px 0 90px}
.legal-content{max-width:var(--max)}
.legal-content h1{margin:0;color:var(--teal);font-size:clamp(36px,5vw,58px);text-transform:uppercase}
.legal-copy{max-width:850px;font-size:18px;line-height:1.7}
.opening-note{display:inline-block;margin:18px 0 0;padding:10px 18px;font-size:clamp(18px,1.45vw,22px);font-weight:700;line-height:1.2;color:var(--teal);background:#fff;border-radius:6px}
.popup{display:none;position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.5);align-items:center;justify-content:center;padding:16px}
.popup.is-open{display:flex}
.popup-box{position:relative;background:var(--teal);color:#fff;border-radius:10px;padding:52px 40px 44px;width:min(480px,100%);text-align:center;font-size:22px;line-height:1.5}
.popup-box p{margin:0}
.popup-close{position:absolute;top:10px;right:14px;background:none;border:0;color:#fff;font-size:36px;line-height:1;cursor:pointer;transition:opacity .3s ease}
.popup-close:hover{opacity:.7}
@media(max-width:760px){
  .wrap{width:calc(100% - 32px)}
  .header{height:98px}
  .brand{width:160px;padding-block:10px}
  .brand img{max-height:74px}
  .hero{height:560px;min-height:0;background-position:58% center}
  .hero:before{background:#ffffffc9}
  .hero-inner{align-items:flex-start;padding-top:58px}
  .hero-copy{margin:0;padding:0}
  .hero h1{font-size:clamp(50px,13vw,72px)}
  .hero-subtitle{font-size:22px}
  .contact-details{flex-direction:column;align-items:flex-start;gap:8px;font-size:18px}
  .contact-details a{min-width:min(100%,300px);min-height:50px}
  .facts{gap:9px;margin-bottom:20px}
  .facts p{font-size:12px;line-height:1.3}
  .fact{gap:6px}
  .fact-icon{width:25px;height:25px}
  .doctors{padding:54px 0 60px}
  .section-title{font-size:19px;margin-bottom:22px}
  .doctor-grid{grid-template-columns:1fr;gap:18px}
  .doctor-card{min-height:360px}
  .doctor-card img{height:285px}
  .doctor-card figcaption{padding:11px 16px 15px}
  .doctor-card figcaption strong{font-size:17px}
  .doctor-card figcaption span{font-size:14px}
  .footer{padding:32px 0}
  .footer-inner{grid-template-columns:1fr;gap:25px}
  .footer-brand{width:170px}
  .hours-grid{gap:8px}
  .hours-grid p{font-size:14px;gap:10px}
  .legal-links{flex-direction:row;gap:24px}
  .legal-page{min-height:55vh;padding:50px 0 65px}
  .legal-copy{font-size:16px}
}
