:root{--green:#0f4a3b;--green2:#0a382f;--accent:#b59a7a;--cream:#fbf7f0;--ivory:#fffdf9;--sand:#eee4d8;--ink:#0c2f28;--muted:#51655f;--line:#e8ded2;--white:#fff;--shadow:0 18px 50px rgba(20,55,46,.09);--serif:Georgia,'Times New Roman',serif;--sans:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.wrap{width:min(1440px,calc(100% - 64px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:14px;top:10px;z-index:100;background:#fff;padding:8px}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(15,74,59,.08)}.nav-row{min-height:108px;display:flex;align-items:center;gap:28px}.brand{width:370px;flex:0 0 370px;align-self:stretch;display:flex;align-items:center}.brand img{width:100%;height:auto}.main-nav{display:flex;gap:34px;align-items:center;margin-left:auto}.main-nav a{font-size:14px;color:#1d3d35}.main-nav a:hover{color:var(--green)}.nav-actions{display:flex;align-items:center;gap:24px}.admin-link{font-size:13px;white-space:nowrap}.menu-toggle{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:10px;border:1px solid transparent;font-weight:800;transition:.2s;cursor:pointer}.btn.primary{background:var(--green);color:white;box-shadow:0 10px 28px rgba(15,74,59,.18)}.btn.primary:hover{background:var(--green2);transform:translateY(-1px)}.btn.outline{background:rgba(255,255,255,.8);border-color:var(--green);color:var(--ink)}.btn.light{background:#f7efe6;color:var(--ink)}.btn.small{min-height:46px;padding:0 20px}.hero{position:relative;overflow:hidden;background:linear-gradient(90deg,#fbf7f0 0 53%,#f3ebe1 53% 100%)}.hero-grid{min-height:420px;display:grid;grid-template-columns:1.08fr .92fr;align-items:stretch;position:relative}.hero-copy{padding:58px 0 42px;position:relative;z-index:3}.kicker{font-size:13px;font-weight:800;letter-spacing:.27em;color:#123c34;margin-bottom:16px}.hero h1{font-family:var(--serif);font-size:clamp(54px,5.2vw,82px);line-height:.95;margin:0 0 24px;color:var(--green2);letter-spacing:-.045em;max-width:720px}.hero h1 span{display:block;font-family:'Brush Script MT','Segoe Script',cursive;font-size:.58em;font-weight:400;line-height:1.05;margin-top:8px;letter-spacing:.01em}.lead{font-size:20px;line-height:1.52;max-width:640px;color:#28463f;margin:0 0 24px}.hero-actions{display:flex;gap:18px;flex-wrap:wrap}.hero-actions .btn{min-width:250px;justify-content:flex-start}.hero-actions .btn span:last-child{display:grid}.hero-actions small{font-size:12px;font-weight:500;margin-top:2px}.ico{font-size:28px}.hero-photo{min-height:420px;position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:visible;background:transparent}.hero-photo img{position:relative;z-index:2;display:block;width:auto;max-width:100%;height:100%;max-height:560px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 20px 32px rgba(18,60,50,.10))}.hero-shape-left{position:absolute;left:-95px;bottom:-165px;width:270px;height:420px;border-radius:55% 45% 0 0;background:#1e5648;z-index:1}.hero-shape-right{position:absolute;right:-90px;bottom:-130px;width:250px;height:300px;border-radius:55% 0 0 0;background:#143f35;z-index:1}.support-strip{background:#fff;border-top:1px solid #eee6db;border-bottom:1px solid #eee6db}.support-grid{display:grid;grid-template-columns:repeat(6,1fr)}.support-item{min-height:112px;cursor:pointer;transition:.18s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:12px 16px;border-right:1px solid #ece4da;font-size:14px}.support-item:hover{background:#f8f4ee;color:var(--green)}.support-item:last-child{border-right:0}.support-icon svg,.round-ico svg{width:34px;height:34px;fill:none;stroke:var(--ink);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.intro-cards{padding:28px 0 14px;background:#fff}.intro-grid{display:grid;grid-template-columns:1.08fr .98fr .96fr;gap:24px}.info-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;padding:30px 32px;box-shadow:0 8px 22px rgba(20,55,46,.05);min-height:270px}.soft-card{background:linear-gradient(120deg,#f4f4ec,#faf8f2)}.info-card h2{font-family:var(--serif);font-size:44px;line-height:1;margin:0 0 20px;color:var(--green2);letter-spacing:-.03em}.info-card p{font-size:16px;color:#2b403a}.leaf-watermark{position:absolute;right:-5px;bottom:-10px;width:140px;height:160px;opacity:.14;background:radial-gradient(ellipse at center,transparent 45%,var(--green) 46%,transparent 48%);transform:rotate(-12deg)}.leaf-watermark.dark{opacity:.16}.work-list{list-style:none;padding:0;margin:0;display:grid;gap:13px}.work-list li{display:flex;align-items:center;gap:13px}.round-ico{width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:#f2e9df;display:grid;place-items:center}.round-ico svg{width:23px;height:23px}.calendar-card-top{background:linear-gradient(135deg,#0e4b3b,#07382d);color:#fff;border-color:transparent}.calendar-card-top h2,.calendar-card-top p{color:#fff}.calendar-card-top h2{font-size:42px}.calendar-card-top p{font-size:17px;max-width:310px;margin-bottom:22px}.calendar-cta{display:block;background:#f5ede4;color:var(--ink);border-radius:14px;padding:18px;text-align:center}.calendar-cta b{display:block;font-family:var(--serif);font-size:22px;margin-bottom:2px}.calendar-cta span{font-size:13px}.quick-info{background:#fff;padding:18px 0 26px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #eee6dc;padding-top:18px}.quick-item{display:flex;cursor:pointer;transition:.18s ease;gap:18px;align-items:center;padding:4px 28px;border-right:1px solid #e8dfd4;min-height:82px}.quick-item:hover{background:#faf7f1}.quick-item:last-child{border-right:0}.quick-symbol{font-size:34px}.quick-item div{display:grid}.quick-item b{font-size:15px}.quick-item span,.quick-item a,.quick-item small{font-size:12px;color:#4c625c}.apw-mini small{max-width:250px}.section{padding:78px 0}.section-heading{text-align:center;max-width:760px;margin:0 auto 30px}.section-heading.left{text-align:left;margin:0}.section-heading>span,.eyebrow{font-size:12px;letter-spacing:.22em;font-weight:900;color:var(--green)}.section-heading h2,.apw h2{font-family:var(--serif);font-size:48px;line-height:1.05;margin:10px 0 14px;color:var(--green2)}.section-heading p{color:var(--muted)}.booking-section{background:linear-gradient(135deg,#0d493a,#082f28);color:#fff}.booking-section .section-heading>span,.booking-section .section-heading h2{color:#fff}.booking-section .section-heading p{color:#d5e0dc}.booking-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:22px}.calendar-panel{background:#faf7f1;color:var(--ink);padding:26px;border-radius:18px}.booking-form{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:26px;border-radius:18px}.booking-form h3{font-family:var(--serif);font-size:30px;margin:0 0 20px}.cal-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cal-top button{border:0;background:#e9efe9;width:38px;height:38px;border-radius:50%;font-size:22px;color:var(--green)}.week,.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.week span{text-align:center;font-size:11px;color:#81908a}.calendar button{height:42px;border:0;background:transparent;border-radius:10px}.calendar button.available{background:#e1ece6;color:var(--green);font-weight:900}.calendar button.selected{background:var(--green);color:#fff}.calendar button.out{opacity:.35}.slots{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;min-height:48px}.slots button{border:1px solid #d6ded9;background:#fff;color:var(--green);border-radius:999px;padding:9px 13px}.slots button.selected{background:var(--accent);border-color:var(--accent);color:#fff}label{display:grid;gap:6px;font-size:13px;font-weight:700;margin-bottom:12px}input,textarea{width:100%;padding:12px 13px;border-radius:10px;border:1px solid #d6d0c8;font:inherit}.booking-form input,.booking-form textarea{background:#fff;color:var(--ink)}.check{grid-template-columns:18px 1fr;align-items:start}.check input{width:16px;margin-top:4px}.doctor-link{display:inline-block;margin-top:12px;color:#d7e2de}.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.price-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 30px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow)}.price-card div{display:grid}.price-card span{color:var(--muted);font-size:13px}.price-card strong{font-family:var(--serif);font-size:38px;color:var(--green)}.articles{background:#f7f2eb}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.article-grid a{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 8px 22px rgba(20,55,46,.05)}.article-grid span{font-size:10px;letter-spacing:.14em;color:var(--accent);font-weight:900}.article-grid h3{font-family:var(--serif);font-size:24px;color:var(--green2)}.apw{background:linear-gradient(135deg,#123f34,#0a3028);color:white;position:relative;overflow:hidden}.apw:before{content:"";position:absolute;right:-90px;top:-100px;width:360px;height:360px;border:1px solid rgba(255,255,255,.09);border-radius:50%}.apw-grid{display:grid;grid-template-columns:1fr 300px;gap:70px;align-items:center}.apw .eyebrow,.apw h2{color:#fff}.apw p{color:#d4e0dc;max-width:760px}.apw-mark{height:200px;border:1px solid rgba(255,255,255,.25);border-radius:20px;display:grid;place-items:center}.apw-mark b{font-family:var(--serif);font-size:70px}.apw-mark span{margin-top:-70px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.email-big{font-size:24px;font-weight:800;color:var(--green)}.contact-form{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow)}footer{background:#092821;color:#dfe9e5;padding:40px 0 18px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:40px}.footer-grid img{max-width:310px;background:#fff;border-radius:8px}.footer-grid a{display:block;margin:6px 0;color:#cfdad6;font-size:13px}.footer-copy{margin-top:24px;padding-top:15px;border-top:1px solid rgba(255,255,255,.12);font-size:12px;color:#a9bbb4}@media(max-width:1100px){.wrap{width:min(100% - 36px,1440px)}.brand{width:290px;flex-basis:290px}.main-nav{display:none}.menu-toggle{display:block;margin-left:auto}.main-nav.open{display:flex;position:absolute;top:96px;left:18px;right:18px;background:#fff;padding:18px;border-radius:14px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start;z-index:99}.hero-grid,.booking-grid,.split,.contact-grid,.apw-grid{grid-template-columns:1fr}.hero-photo{min-height:430px}.intro-grid{grid-template-columns:1fr 1fr}.calendar-card-top{grid-column:1/-1}.support-grid{grid-template-columns:repeat(3,1fr)}.quick-grid{grid-template-columns:1fr 1fr}.quick-item:nth-child(2){border-right:0}.article-grid{grid-template-columns:1fr}.apw-mark{display:none}}@media(max-width:700px){.wrap{width:min(100% - 24px,1440px)}.nav-row{min-height:82px}.brand{width:220px;flex-basis:220px}.nav-actions .btn,.admin-link{display:none}.hero{background:#fbf7f0}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:42px 0 18px}.hero h1{font-size:46px}.lead{font-size:17px}.hero-photo{min-height:330px;background-position:center}.support-grid{grid-template-columns:repeat(2,1fr)}.intro-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr}.quick-item{border-right:0;border-bottom:1px solid #eee6dc}.section{padding:58px 0}.section-heading h2,.apw h2{font-size:38px}.info-card h2{font-size:38px}.calendar-card-top h2{font-size:36px}.footer-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%;min-width:0}}

/* v11: anchor offset + accessible interaction */
section[id],article[id]{scroll-margin-top:118px}.support-item:focus-visible,.quick-item:focus-visible,.calendar-cta:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.calendar button:disabled{color:#aeb8b3;cursor:not-allowed}.calendar button.available{cursor:pointer}.slots .empty-state{width:100%;padding:16px;border-radius:12px;background:#f1ebe2;color:#52645e}.apw .btn{position:relative;z-index:2}

/* v12 – czytelniejszy hero i płynniejsze tło */
.hero{background:#fbf7f0!important;}
.hero-grid{position:relative;z-index:2;}
.hero-copy{position:relative;z-index:4;padding-left:36px;max-width:760px;}
.hero-copy .kicker,.hero-copy h1,.hero-copy .lead{position:relative;z-index:5;}
.hero-shape-left{left:-150px!important;bottom:-245px!important;width:330px!important;height:330px!important;opacity:.96;z-index:1!important;}
.hero-shape-right{right:-130px!important;bottom:-190px!important;width:290px!important;height:290px!important;opacity:.94;z-index:1!important;}
.hero-photo{background:transparent!important;position:relative;z-index:3;}
.hero-photo:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 55% 52%,rgba(255,255,255,.26),rgba(251,247,240,0) 68%);z-index:1;pointer-events:none;}
.hero-photo img{position:relative;z-index:2;background:transparent!important;}
.hero-actions{position:relative;z-index:6;}
@media(max-width:1100px){.hero-copy{padding-left:12px}.hero-shape-left{left:-205px!important;bottom:-260px!important}}
@media(max-width:700px){.hero-copy{padding-left:0}.hero-shape-left,.hero-shape-right{display:none!important}}

/* kalendarz – wyraźne stany */
.calendar button{cursor:default;transition:.18s ease}.calendar button.available{cursor:pointer;box-shadow:inset 0 0 0 1px rgba(15,74,59,.10)}
.calendar button.available:hover{background:#cfe0d7}.calendar button.selected{background:var(--green)!important;color:#fff!important}
#bookingMsg,#contactMsg{margin-top:12px;font-weight:700;font-size:13px}.msg-ok{color:#b8efda}.msg-error{color:#ffd0c7}
