
:root{--ink:#252323;--paper:#f6f3ed;--wine:#652737;--gold:#ae8954;--line:#d9d1c6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Arial,sans-serif}a{color:inherit}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.notice{background:var(--wine);color:white;padding:9px 5%;font-size:14px;text-align:center}header{padding:23px 6%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:25px}.brand{font:30px Georgia,serif;text-decoration:none}.brand small{display:block;font:11px Arial;letter-spacing:3px;text-transform:uppercase}nav{display:flex;gap:25px;font-size:15px}nav a{text-decoration:none}main section{padding:80px 7%;scroll-margin-top:20px}h1,h2,h3{font-family:Georgia,serif;font-weight:normal;line-height:1.12}h1{font-size:clamp(42px,5.8vw,80px);margin:22px 0}h2{font-size:clamp(34px,4vw,51px);margin:12px 0 25px}h3{font-size:30px}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:12px;color:var(--wine)}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center;min-height:700px}.hero p{max-width:560px}.hero-photo{background:#e3ddd3;border:1px dashed #ab9a84;min-height:410px;display:flex;align-items:center;justify-content:center;text-align:center;padding:35px;color:#675c4e}.hero-photo span{max-width:250px}.hero-photo small{display:block;margin-top:15px}.btn{display:inline-block;background:var(--wine);color:white;padding:13px 21px;border:0;text-decoration:none;cursor:pointer}.secondary{display:inline-block;margin:15px 20px 15px 0;text-underline-offset:5px}.two{display:grid;grid-template-columns:1fr 1fr;gap:55px}.two article{border-top:1px solid var(--gold);padding-top:15px}.soft{background:white}.method{background:#292627;color:var(--paper)}.method .eyebrow{color:#c9ac80}.method p{max-width:800px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}.steps b{color:#cead7c;font:32px Georgia;display:block}.steps h3{font-size:24px}.prices{display:flex;flex-wrap:wrap;gap:20px;margin:25px 0}.price{border:1px solid var(--line);padding:20px;flex:1;min-width:170px}.price strong{display:block;font:35px Georgia}.fine{font-size:14px;color:#625c54}.schedule{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:25px}.day{border:1px solid var(--line);padding:10px;text-align:center}.day h3{font:17px Arial}.slot{display:block;width:100%;margin:8px 0;padding:10px 4px;border:1px solid var(--wine);background:white;color:var(--wine);cursor:pointer}.slot:disabled{background:#e9e7e3;border-color:#ccc;color:#777;cursor:default}.slot small{display:block;font-size:12px}.demo{border-left:3px solid var(--gold);padding:8px 14px;background:#eee7dc;font-size:14px}.form{max-width:630px;margin:35px auto 0;background:white;border:1px solid var(--line);padding:25px}.form[hidden]{display:none}label{display:block;margin:14px 0 4px}input,textarea,select{width:100%;padding:11px;border:1px solid #bcb4aa;background:white}textarea{min-height:90px}#form-status{color:var(--wine)}.event{border-top:1px solid var(--line);padding:22px 0;display:flex;gap:35px;align-items:center}.event strong{font-family:Georgia;font-size:25px}.opinions{overflow:hidden}.review-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review{padding:25px;background:white;border:1px solid var(--line)}.stars{color:var(--gold);letter-spacing:3px}.end{text-align:center;background:var(--wine);color:white}.end .btn{background:var(--paper);color:var(--wine)}footer{padding:35px 7%;display:flex;justify-content:space-between;gap:20px;font-size:14px}.mobile-day{display:none}@media(max-width:760px){header{align-items:flex-start;flex-direction:column;padding:20px 6%}nav{flex-wrap:wrap;gap:12px 20px}.hero,.two{grid-template-columns:1fr;gap:28px}main section{padding:48px 6%}.hero{min-height:0}.hero-photo{min-height:280px}.steps,.review-strip{grid-template-columns:1fr}.mobile-day{display:block}.schedule{display:block}.day{display:none}.day.active{display:block}.event{align-items:flex-start;flex-direction:column;gap:8px}footer{flex-direction:column}.prices{gap:10px}h1{font-size:46px}.hero .btn{width:100%;text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.hero{background:linear-gradient(90deg,rgba(22,15,18,.91),rgba(30,16,20,.67) 55%,rgba(30,16,20,.42)),url('assets/sala.webp') center/cover;color:#fff8ef;min-height:700px;position:relative}.hero .eyebrow{color:#e2c49c}.hero .fine{color:#e0d6ce}.hero .btn{background:#f1e3cd;color:#482332}.hero .hero-photo{background:rgba(34,20,24,.2);border:1px dashed #c9af8a;color:#f3e9db;min-height:470px}.hero .hero-photo small{color:#e0d6ce}.price.premium{border:2px solid var(--wine);background:#eee5e4;position:relative}.premium-label{display:block;color:var(--wine);font-size:14px;font-weight:bold;margin-bottom:12px}.price .price-note{display:block;font-size:14px;margin-top:10px;line-height:1.5}@media(max-width:760px){.hero{background-position:60% center;min-height:0}.hero .hero-photo{min-height:280px}.hero h1{font-size:44px}}

/* Subtelne rozróżnienie długości spotkań: stal, srebro, stare złoto. */
.prices{align-items:stretch}
.prices .price{border:2px solid #697783;background:#edf0f2;box-shadow:0 3px 12px rgba(32,27,29,.04);transition:transform .22s ease,box-shadow .22s ease;transform-origin:center;position:relative}
.prices .price:nth-child(2){border-color:#a4a8af;background:#f2f2f4}
.prices .price:nth-child(3){border-color:#ad8950;background:#f4eee3}
.prices .price:nth-child(2) .premium-label{color:#505561}
.prices .price:nth-child(3) .premium-label{color:#705125}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.prices .price:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 24px rgba(32,27,29,.12);z-index:1}}
@media(prefers-reduced-motion:reduce){.prices .price{transition:none;transform:none}}

.interactive-map{position:relative;width:100%;aspect-ratio:1800/1295;margin:28px 0 18px;isolation:isolate;background:white}.map-base{display:block;width:100%;height:100%;object-fit:fill}.map-room{position:absolute;padding:0;border:0;background:transparent;cursor:pointer;overflow:visible;transition:transform .22s ease,filter .22s ease;transform-origin:center;z-index:1}.map-room .room-picture{position:absolute;inset:0;background-image:url('assets/dom-tanga-web.webp');background-repeat:no-repeat;clip-path:var(--shape)}.map-room .room-glow{position:absolute;inset:0;clip-path:var(--shape);background:rgba(203,160,77,0);transition:background .22s ease;pointer-events:none}.map-room:hover,.map-room:focus-visible,.map-room[aria-pressed="true"]{z-index:4;filter:drop-shadow(0 5px 6px rgba(77,38,24,.35))}.map-room:hover .room-glow,.map-room:focus-visible .room-glow,.map-room[aria-pressed="true"] .room-glow{background:rgba(218,169,71,.2)}.map-room:focus-visible{outline:3px solid #652737;outline-offset:3px}.room-description{border-left:3px solid #ae8954;padding:15px 22px;background:#f1e9dc;min-height:120px}.room-description strong{font:25px Georgia,serif}.room-description p{margin-bottom:0}@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.map-room:hover,.map-room:focus-visible{transform:scale(1.035)}}@media(prefers-reduced-motion:reduce){.map-room,.room-glow{transition:none!important;transform:none!important}}

/* Dopracowanie czytelności i obsługi na małych ekranach. */
.skip-link{position:absolute;left:12px;top:-100px;z-index:10;background:white;padding:12px}.skip-link:focus{top:12px}
header,main,footer{max-width:1680px;margin-inline:auto}nav a{display:inline-flex;align-items:center;min-height:44px}summary{cursor:pointer;padding:14px 0;min-height:48px}summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.two>*{min-width:0}.price{min-width:240px}.prices .price{display:flex;flex-direction:column}.price .premium-label{min-height:44px}.price strong{margin:8px 0}.week-nav{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:26px 0 16px}.week-nav button{background:white;border:1px solid var(--line);padding:10px 16px;min-height:44px;cursor:pointer}.week-nav button:disabled{opacity:.45;cursor:default}#week-label{text-align:center}.schedule{grid-template-columns:repeat(7,minmax(0,1fr))}.day h3{font-size:15px;margin-bottom:0}.slot[aria-pressed=true]{background:var(--wine);color:white}.day .fine{font-size:13px}.form{scroll-margin-top:20px}.form h3{margin-top:0}.room-select{max-width:460px}.map-room:focus-visible .room-glow{background:rgba(218,169,71,.4)}.review-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:16px}.review{flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start}.review-controls{display:flex;gap:10px}.review-controls button{padding:9px 16px;border:1px solid var(--line);background:white;cursor:pointer}.fine a{text-underline-offset:3px}
@media(max-width:1050px){.schedule{grid-template-columns:repeat(4,minmax(0,1fr))}nav{gap:8px 14px;flex-wrap:wrap}.hero{gap:30px}.review{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:760px){.schedule{display:block}.price{flex-basis:100%}.price .premium-label{min-height:0}.hero h1{font-size:clamp(34px,9.5vw,44px)}.brand small{letter-spacing:2px}.week-nav{flex-wrap:wrap}.week-nav strong{order:-1;flex-basis:100%}.review{flex-basis:90%}.room-description{padding:14px;min-height:150px}.room-description strong{font-size:23px}.form{padding:20px}footer a,.end a{overflow-wrap:anywhere}.hero .secondary{margin-right:0}}
.review-strip{margin-top:16px}.review{flex-basis:calc((100% - 20px)/2)}.review-controls{flex-wrap:wrap}.review-controls button{min-height:44px}.review-strip:focus-visible{outline:3px solid var(--gold);outline-offset:4px}@media(max-width:760px){.review{flex-basis:90%}}
/* Spacer po domu: plan i opis spięte ciepłą smugą światła. */
#plan-domu{background:linear-gradient(145deg,#fff 35%,#f5efe5);position:relative}.plan-intro{max-width:620px;color:#625c54}.house-tour{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(45px,7vw,115px);align-items:center;position:relative;margin-top:38px}.plan-side{min-width:0}.house-tour .interactive-map{margin:0;max-width:660px}.plan-side .fine{margin-bottom:0}.plan-side .secondary{margin-top:8px}.room-card{position:relative;z-index:4;background:linear-gradient(135deg,#fffdf9,#f6eddf);border:1px solid #c9a775;border-radius:4px;padding:clamp(24px,3vw,44px);box-shadow:0 18px 50px #67482a10,inset 0 0 0 5px #fff9;min-width:0}.room-card:before{content:'';position:absolute;left:-4px;top:calc(45% - 30px);width:5px;height:60px;border-radius:50%;background:#e2bf80;box-shadow:0 0 24px 8px #ddae5c55}.room-card .eyebrow{font-size:11px;letter-spacing:2px;color:#816036}.room-card .room-description{border:0;background:transparent;padding:24px 0 20px;min-height:210px}.room-card .room-description strong{display:block;font:clamp(25px,2.7vw,36px)/1.16 Georgia,serif;color:var(--wine)}.room-card .room-description p{margin:20px 0 0}.room-card-choice{border-top:1px solid #d9c7ad;padding-top:10px}.room-card-choice label{font-size:13px;color:#625c54}.room-card-choice select{font-size:15px;border-color:#cdb89a;background:#fffcf7}.room-beam{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:3}.room-card .room-select{max-width:none}
main>section:not(.hero){position:relative}main>section:not(.hero):before{content:'';position:absolute;top:0;left:7%;width:86%;height:1px;background:linear-gradient(90deg,transparent,#ae895455,transparent);pointer-events:none}.section-enter>h2,.section-enter>.eyebrow,.section-enter>.two,.section-enter>.house-tour,.section-enter>.steps,.section-enter>.prices{animation:section-arrive .8s cubic-bezier(.2,.65,.3,1) both}.section-enter>.two,.section-enter>.house-tour,.section-enter>.prices{animation-delay:.08s}@keyframes section-arrive{from{opacity:.25;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.house-tour{grid-template-columns:1fr;gap:26px}.house-tour .interactive-map{max-width:620px;margin-inline:auto}.room-beam{display:none}.room-card:before{left:calc(50% - 30px);top:-3px;width:60px;height:4px}.room-card .room-description{min-height:160px}.room-card{padding:26px}.plan-side .fine{text-align:center}.plan-side .secondary{display:block;text-align:center}.room-card .room-description strong{font-size:29px}}
@media(prefers-reduced-motion:reduce){.section-enter>*{animation:none!important}.room-beam{filter:none}}

/* Miękka smuga bez centralnej linii. */
#beam-line,#beam-halo{display:none}
/* Pastelowa pocztówka z Wojewódzkiej. */
#dom-tanga{background:linear-gradient(110deg,#fffdf8,#f3efe5)}.home-story{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(35px,6vw,90px);align-items:center}.home-copy{min-width:0}.home-copy h2{font-size:clamp(34px,3.6vw,51px)}.home-copy h3{margin:28px 0 18px}.home-copy p{margin:16px 0}.home-postcard{margin:0;padding:15px 15px 24px;background:#fffcf3;border:1px solid #d9c9ad;box-shadow:0 22px 50px #55452b18,0 3px 8px #55452b0a;transform:rotate(1.2deg);position:relative}.postcard-picture{overflow:hidden;border:1px solid #d9c9ad}.home-postcard img{display:block;width:100%;height:auto}.home-postcard figcaption{text-align:center;padding:21px 5px 0;color:#652737}.home-postcard figcaption span{display:block;font:italic 28px Georgia,serif}.home-postcard figcaption small{display:block;margin-top:8px;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#705b42}.section-enter>.home-story{animation:section-arrive .8s ease-out both}@media(max-width:900px){.home-story{grid-template-columns:1fr;gap:35px}.home-postcard{width:min(100%,510px);justify-self:center;transform:none}.home-copy{max-width:680px}.home-postcard figcaption{padding-top:16px}}@media(prefers-reduced-motion:reduce){.section-enter>.home-story{animation:none}}
.postcard-picture{position:relative}.postcard-pointer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.postcard-pointer text{font-family:'Segoe Print','Bradley Hand','Comic Sans MS',cursive;font-size:46px;font-weight:600;fill:#652737;stroke:#fff9ed;stroke-width:6px;paint-order:stroke fill;stroke-linejoin:round}.postcard-pointer path{fill:none;stroke:#652737;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 2px #fff9ed)}
/* Naklejka wychodząca poza krawędź pocztówki. */
.home-postcard .postcard-picture{overflow:visible}.postcard-sticker{z-index:2}.postcard-sticker .sticker-paper{fill:#fff7e5;stroke:#c6a16b;stroke-width:2;filter:drop-shadow(0 6px 7px #50352133)}.postcard-sticker text{font-size:57px;font-weight:700;stroke-width:2;fill:#652737}.postcard-sticker .sticker-flourish,.postcard-sticker .sticker-sparkles path{stroke:#ae8954;stroke-width:3;filter:none}.postcard-sticker .sticker-sparkles circle{fill:#ae8954}.postcard-sticker .pointer-curve,.postcard-sticker .pointer-tip{stroke-width:5;filter:drop-shadow(0 1px 3px #fff8eb)}.home-postcard{margin-right:clamp(20px,3.2vw,46px)}
@media(max-width:900px){.home-postcard{width:min(calc(100% - 50px),480px);margin-left:0;margin-right:50px}.postcard-sticker text{font-size:60px}}
/* Napis całkowicie nad pocztówką; wypełniona strzałka ze złotym rdzeniem. */
.home-postcard{margin-top:100px}.postcard-sticker text{font-size:69px}.postcard-sticker .filled-arrow{fill:#652737;stroke:#fff7e5;stroke-width:3;filter:drop-shadow(1px 3px 4px #50352130)}.postcard-sticker .arrow-gold{fill:none;stroke:#d6ad67;stroke-width:4;filter:none}.postcard-sticker .gold-tip{fill:#d6ad67;stroke:none;filter:none}@media(max-width:900px){.home-postcard{margin-top:75px}.postcard-sticker text{font-size:69px}}
/* Subtelne wskazanie balkonu, bez ciężkiego wypełnienia. */
.postcard-sticker .quiet-arrow,.postcard-sticker .quiet-arrow-tip{fill:none;stroke:#885c62;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;filter:none}

.postcard-sticker .quiet-arrow,.postcard-sticker .quiet-arrow-tip{stroke:#75424e;stroke-width:5}
/* Pełna, klikalna siatka godzin. */
.slot-inquiry{border-color:#d5ccc0;background:#f8f5ef;color:#625c54}.slot-available{border-color:#936470;background:#f3e8e9;color:#652737}.slot:hover{border-color:#652737;background:#eaddcb;color:#482332}.slot[aria-pressed=true]{background:var(--wine);color:white}.day>.slot{min-height:64px}.day>h3{margin-top:12px}.schedule{align-items:start}@media(min-width:761px) and (max-width:1050px){.schedule{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.day{padding:5px}.day h3{font-size:12px}.day>small{font-size:12px}.slot small{font-size:10px}}@media(max-width:760px){.day.active{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.day>h3,.day>small{grid-column:1/-1}.day>.slot{margin:0}}

@media(min-width:761px){.schedule{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* Czytelny grafik: szałwiowa zieleń i neutralna szarość. */
#terminy{background:#fcfbf8}.schedule-legend{display:flex;gap:14px 28px;flex-wrap:wrap;margin:22px 0;color:#474b45;font-size:14px}.schedule-legend span{display:flex;align-items:center;gap:9px}.schedule-legend i{width:17px;height:17px;border-radius:5px;display:inline-block}.legend-free{background:#dcebdd;border:1px solid #88a68c}.legend-busy{background:#e9e9e7;border:1px solid #b9bcb8}.schedule .day{background:white;border:1px solid #dedfd8;border-radius:12px;padding:12px;box-shadow:0 5px 18px #303d2d05}.schedule .day h3{font-weight:700;color:#3d433b;margin:4px 0 2px}.schedule .day>small{display:block;color:#6a7067;margin-bottom:18px}.schedule .slot{border-radius:8px;min-height:68px;font-size:20px;font-weight:600;line-height:1.3;transition:background .18s,border-color .18s,box-shadow .18s}.schedule .slot small{font-size:12px;font-weight:400;margin-top:5px}.schedule .slot-available{background:#e2efe0;border:1px solid #98b394;color:#2b5136;box-shadow:inset 0 1px 0 #ffffffa0}.schedule .slot-inquiry{background:#edeeec;border:1px solid #d6d8d3;color:#686d65}.schedule .slot-available:hover{background:#cfe4cc;border-color:#628666;box-shadow:0 3px 9px #36533b15}.schedule .slot-inquiry:hover{background:#e2e4e0;border-color:#a4aaa0;color:#4c5349}.schedule .slot[aria-pressed=true]{background:#31573d;border-color:#31573d;color:white;box-shadow:0 0 0 3px #cadfc7}.week-nav button{border-radius:7px}.week-nav strong{font:23px Georgia,serif;color:#3a4137}@media(min-width:761px) and (max-width:1050px){.schedule .day{padding:7px}.schedule .slot{font-size:18px}.schedule .slot small{font-size:11px}}@media(prefers-reduced-motion:reduce){.schedule .slot{transition:none}}
/* Poprawki dostępności i ergonomii po audycie. */
.brand small,.eyebrow,.premium-label{font-size:13px}.schedule .slot small{font-size:14px}.schedule .slot-inquiry{color:#555c52}.schedule .slot-inquiry[aria-pressed=true]{background:#e2e4e0;color:#41463e;border-color:#652737;box-shadow:0 0 0 3px #652737}.schedule .day>small{color:#555c52}.change-term{margin-top:12px;min-height:44px;padding:8px 16px;background:white;color:#652737;border:1px solid #652737;border-radius:6px;cursor:pointer}.map-room:focus-visible .room-glow{background:rgba(101,39,55,.24);box-shadow:inset 0 0 0 5px #652737}.interactive-map:focus-within{outline:2px solid #652737;outline-offset:5px}#phone-help{margin-top:6px}
@media(max-width:1050px){.mobile-day{display:block}.schedule{display:block}.schedule .day{display:none;padding:14px}.schedule .day.active{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.day>h3,.day>small{grid-column:1/-1}.schedule .day h3{font-size:18px}.schedule .day>small{font-size:14px;margin-bottom:10px}.day>.slot{margin:0}.schedule .slot{font-size:20px}.schedule .slot small{font-size:14px}}
