/*
Theme Name: Willa Szymbark – Kaszubski Dom (2026)
Theme URI: https://willaszymbark.pl/
Author: Willa Szymbark
Description: Responsywny motyw domu całorocznego w Szymbarku, z formularzem zapytań rezerwacyjnych. Aktualizacja listopad 2026.
Version: 2.0.1
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: willa-szymbark
*/
:root{--navy:#293E57;--navy-dark:#203148;--terracotta:#B96C53;--terra-dark:#a55b44;--cream:#F7F1E8;--linen:#FBF8F3;--sand:#F3E8DC;--muted:#6E7478;--line:#DED5CC;--white:#fff;--shadow:0 18px 60px rgba(40,43,50,.10);--max:1190px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--linen);color:var(--navy);font:16px/1.68 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}input,textarea{min-width:0}.container{width:min(calc(100% - 52px),var(--max));margin-inline:auto}.section{padding:94px 0}.section-sand{background:var(--cream)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:38px}.section-head>p{max-width:350px;margin:0;color:var(--muted);font-size:14px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:var(--terracotta);margin:0 0 17px}.section h2,.contact-copy h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-1.6px;font-size:clamp(35px,4.2vw,55px);line-height:1.13;margin:0 0 24px}.section h2 em,.hero h2 em{font-style:italic;color:var(--terracotta)}.section p{margin-top:0}.section-intro{max-width:620px;margin:0 0 40px}.section-intro>p:last-child{color:var(--muted)}.skip-link{position:absolute;z-index:99;left:8px;top:-80px;background:#fff;padding:10px}.skip-link:focus{top:6px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,248,243,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(41,62,87,.08)}.header-row{display:flex;align-items:center;justify-content:space-between;min-height:83px;gap:26px}.brand{display:flex;flex-direction:column;white-space:nowrap;line-height:1.05}.brand span{font:600 22px/1.05 Georgia,"Times New Roman",serif;letter-spacing:1px}.brand small{font-size:9px;letter-spacing:2.3px;margin-top:7px;color:var(--muted)}.main-menu{display:flex;gap:23px;align-items:center}.main-menu>a{font-size:12px;font-weight:650}.main-menu>a:not(.nav-cta):hover{color:var(--terracotta)}.main-menu .nav-cta{background:var(--navy);color:white;padding:12px 17px;border-radius:3px}.main-menu .nav-cta:hover{background:var(--navy-dark)}.menu-toggle{display:none;border:0;background:transparent;padding:10px}.menu-toggle span{width:23px;height:2px;background:var(--navy);display:block;margin:5px 0}
.hero{display:grid;grid-template-columns:49% 51%;background:#F8F3EA;min-height:570px;max-height:690px}.hero-copy{padding:64px clamp(35px,5.2vw,105px) 55px max(35px,calc((100vw - var(--max))/2));align-self:center}.hero h1{font-size:10px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;margin:0 0 12px;color:#787e81}.hero h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-2.7px;font-size:clamp(44px,5.5vw,73px);line-height:1.03;margin:0 0 23px}.hero-desc{font-size:15px;line-height:1.8;max-width:430px;color:#5E6970;margin:0 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{font-weight:750;font-size:12px;letter-spacing:.45px;display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:47px;padding:14px 22px;border-radius:3px;transition:background .2s,color .2s,transform .2s;border:1px solid transparent}.btn:hover{transform:translateY(-1px)}.btn-primary{color:white;background:var(--terracotta)}.btn-primary:hover{background:var(--terra-dark)}.btn-secondary{color:var(--navy);background:transparent;border-color:#C9BEB2}.btn-secondary:hover{background:#ECE4D9}.hero-facts{display:flex;gap:16px;flex-wrap:wrap;margin-top:37px;color:var(--muted);font-size:11px}.hero-facts span+span{padding-left:17px;border-left:1px solid #d8cec2}.hero-visual{min-height:570px;max-height:690px;position:relative;overflow:hidden}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:center 48%;image-rendering:auto}.hero-stamp{position:absolute;right:26px;bottom:70px;background:rgba(255,253,249,.95);padding:17px 20px;width:240px;box-shadow:0 9px 22px #182b2d25}.hero-stamp span{font-size:9px;letter-spacing:1.2px;color:var(--terracotta)}.hero-stamp strong{font:500 20px/1.15 Georgia,serif;display:block;margin:5px 0;color:var(--navy)}.hero-stamp small{font-size:10px;color:#6e7272;line-height:1.4;display:block}
.highlights{background:#fff;border-bottom:1px solid var(--line)}.highlights-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:27px 0;gap:15px}.highlights-grid>div{display:flex;align-items:center;justify-content:center;gap:10px;border-right:1px solid var(--line)}.highlights-grid>div:last-child{border:0}.highlights strong{font:500 24px Georgia,serif}.highlights span{color:var(--muted);font-size:11px}
.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.experience-card{background:#fff;box-shadow:0 3px 20px rgba(41,62,87,.035);overflow:hidden}.experience-card>img{width:100%;height:280px;object-fit:cover;object-position:center}.experience-txt{padding:22px 24px 24px}.experience-txt span{font-size:10px;letter-spacing:1.4px;color:var(--terracotta);font-weight:700}.experience-txt h3{font:400 27px Georgia,serif;margin:9px 0}.experience-txt p{font-size:13px;color:var(--muted);line-height:1.65;margin:0}
.gallery-subhead{font-family:Georgia,serif;font-size:25px;font-weight:400;margin:48px 0 18px}.gallery-subhead:first-of-type{margin-top:10px}.gallery-grid{display:grid;gap:15px;grid-template-columns:repeat(3,minmax(0,1fr))}.photo-card{position:relative;margin:0;overflow:hidden;min-height:290px;background:#ddd;isolation:isolate}.photo-card img{height:100%;width:100%;object-fit:cover;aspect-ratio:1.1}.photo-card figcaption{position:absolute;bottom:0;left:0;right:0;color:#fff;font-weight:600;font-size:12px;letter-spacing:.2px;padding:34px 17px 14px;background:linear-gradient(transparent,rgba(10,18,23,.78))}.gallery-common .photo-wide{grid-column:span 2;grid-row:span 2}.gallery-common .photo-wide img{height:100%;position:absolute;object-fit:cover}.gallery-common{grid-auto-rows:225px}.gallery-common .photo-card{min-height:0}.gallery-common .photo-card:not(.photo-wide) img{height:100%;position:absolute}.bedrooms-grid .photo-card img,.bath-grid .photo-card img{height:290px}.outdoor-grid .photo-card img{height:280px}.gallery-note{display:flex;flex-direction:column;justify-content:center;border:1px solid var(--line);padding:27px}.gallery-note span{color:var(--terracotta);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.gallery-note h3{font:400 29px/1.13 Georgia,serif;margin:14px 0}.gallery-note p{font-size:12px;color:var(--muted)}
.story{background:#eee1d6}.story-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:7%;align-items:center}.story-copy{max-width:480px}.story-copy p:not(.eyebrow){font-size:14px;line-height:1.85;color:#59646b}.story-copy .italic-lead{color:var(--terracotta)!important;font:italic 22px Georgia,serif!important;margin-top:-9px}.host-collage{position:relative;min-height:550px;display:flex;align-items:flex-start;justify-content:flex-end}.host-collage figure{margin:0}.host-main{width:72%;position:relative}.host-main img{width:100%;height:470px;object-fit:cover;object-position:center 43%;border-radius:120px 120px 0 0}.host-main figcaption{position:absolute;top:16px;right:12px;color:#fff;background:#293e57a8;padding:6px 10px;font-size:11px}.host-bread{width:48%;position:absolute;left:0;bottom:5px;background:#fff;padding:8px 8px 0;box-shadow:var(--shadow)}.host-bread img{width:100%;height:190px;object-fit:cover}.host-bread figcaption{background:var(--navy);color:#fff;font:italic 14px Georgia,serif;padding:11px;text-align:center}
.region{background:var(--navy);color:white}.region-grid{display:grid;grid-template-columns:45% 55%;gap:0;align-items:center;overflow:hidden}.region-photo{height:545px;overflow:hidden;border-radius:110px 0 0 110px}.region-photo img{width:100%;height:100%;object-fit:cover;object-position:center 32%}.region-copy{padding:36px 0 36px 8%}.region-copy .eyebrow{color:#D7A58D}.region-copy h2 em{color:#D7A58D}.region-copy>p:not(.eyebrow){font-size:14px;color:#e5e8ed;line-height:1.9;max-width:490px}.distance-list{margin-top:33px;border-top:1px solid #607188}.distance-list>div{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid #607188;font-size:13px}.distance-list strong{color:#fff;white-space:nowrap}.dist-note{font-size:11px!important;opacity:.72;margin-top:15px!important}
.rules-grid{display:grid;grid-template-columns:1fr .9fr;gap:11%;align-items:start}.rules-grid>div>p:not(.eyebrow){color:var(--muted);font-size:14px;max-width:440px}.checklist{padding:0;margin:25px 0 0;list-style:none}.checklist li{position:relative;padding:16px 8px 16px 26px;border-bottom:1px solid var(--line);font-size:13px}.checklist li::before{content:'✓';color:var(--terracotta);position:absolute;left:0;font-weight:800}.price-card{background:#fff;border:1px solid #eee3d9;padding:34px 36px;box-shadow:var(--shadow)}.price-eyebrow{font-weight:700;font-size:11px;letter-spacing:1.1px;color:var(--terracotta);margin-bottom:9px!important}.main-price{font-family:Georgia,serif;font-size:49px;line-height:1.12;white-space:nowrap}.main-price span{font:normal 15px "Segoe UI",sans-serif;color:var(--muted)}.price-lead{color:var(--muted);font-size:13px;margin:10px 0 0!important}.price-card hr{border:0;border-top:1px solid var(--line);margin:24px 0 19px}.extras-heading{font-weight:700;font-size:13px;margin-bottom:13px}.extras-heading span{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-top:4px}.extra{display:flex;justify-content:space-between;gap:12px;padding:9px 0;font-size:12px;border-bottom:1px solid #f0ebe5}.extra strong{font-size:12px;white-space:nowrap}.extra-package{color:var(--terracotta)}.extra.deposit{border:0;margin-bottom:15px}.small-note{color:var(--muted);font-size:11px;line-height:1.55;margin:10px 0 0!important}.btn-full{width:100%}
.contact-section{background:var(--cream)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.contact-copy{padding-top:34px}.contact-copy h2{max-width:500px}.contact-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;max-width:430px}.contact-cards{margin-top:25px;display:grid;gap:10px;max-width:430px}.contact-cards a{display:block;background:#fff;border:1px solid #e8ded4;padding:15px 19px}.contact-cards a:hover{border-color:var(--terracotta)}.contact-cards small{display:block;color:var(--terracotta);font-size:9px;letter-spacing:1px;font-weight:800}.contact-cards strong{font:400 20px Georgia,serif}.form-panel{background:#fff;padding:36px 36px 27px;box-shadow:var(--shadow)}.form-panel h3{font:400 31px Georgia,serif;margin:0 0 7px}.form-subtitle{color:var(--muted);font-size:12px;margin:0 0 20px!important}.contact-form{display:grid;gap:13px}.contact-form label{display:block;font-size:11px;font-weight:700;line-height:1.5;color:var(--navy)}.contact-form label>span:not(.consent span){color:var(--terracotta)}.contact-form input:not([type=checkbox]),.contact-form textarea{display:block;width:100%;margin-top:6px;border:1px solid #E5DDD5;background:#fff;border-radius:0;padding:11px 12px;font-size:12px;font-weight:400;color:var(--navy);outline:0;min-height:43px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--terracotta);box-shadow:0 0 0 2px #b96c5322}.contact-form textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-hint{font-size:11px;color:var(--muted);line-height:1.55;margin:0!important}.form-foot{font-size:10px;color:var(--muted);margin:0!important;line-height:1.5}.contact-form .consent{display:flex;align-items:flex-start;gap:9px;font-size:10px;font-weight:400;color:#58636a}.consent input{margin-top:3px;accent-color:var(--terracotta)}.consent a{text-decoration:underline}.hp-field{position:absolute;left:-10000px;opacity:0;pointer-events:none}.form-feedback{border:1px solid #bddfc7;background:#eff8f0;padding:12px;font-size:12px;color:#245d36;margin-bottom:15px}.form-feedback.error{background:#fff1ee;border-color:#f2c1b4;color:#8c2e18}
.site-footer{background:var(--navy-dark);color:#fff;padding:43px 0 20px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px}.footer-grid strong{font-size:14px;letter-spacing:.4px}.footer-grid p{font-size:12px;line-height:1.85;color:#c9d1d9}.footer-grid a:hover{color:#f2b9a3}.footer-bottom{border-top:1px solid #455970;margin-top:31px;padding-top:18px;display:flex;gap:30px;justify-content:space-between;color:#9daaBA;font-size:10px;line-height:1.5}.footer-bottom span:last-child{max-width:590px;text-align:right}
@media(max-width:1100px){.container{width:min(calc(100% - 42px),var(--max))}.main-menu{gap:14px}.header-row{min-height:75px}.hero-copy{padding-left:35px;padding-right:35px}.hero h2{font-size:clamp(44px,5.7vw,60px)}.hero{min-height:540px}.hero-visual{min-height:540px}}
@media(max-width:850px){.menu-toggle{display:block}.main-menu{position:absolute;top:75px;left:0;right:0;background:var(--linen);border-top:1px solid var(--line);padding:17px 24px;flex-direction:column;align-items:stretch;gap:0;display:none;box-shadow:var(--shadow)}.main-menu.is-open{display:flex}.main-menu>a{padding:11px 6px;border-bottom:1px solid #e5ded5}.main-menu .nav-cta{margin-top:8px;text-align:center;border:0}.brand span{font-size:20px}.hero{grid-template-columns:1fr;max-height:none}.hero-copy{padding:55px 35px 47px}.hero-visual{min-height:480px;max-height:480px}.hero-visual>img{object-position:center 42%}.hero-stamp{bottom:29px;right:25px}.highlights-grid{grid-template-columns:repeat(2,1fr);gap:10px}.highlights-grid>div:nth-child(2){border:0}.highlights-grid>div{padding:8px 0}.section{padding:75px 0}.story-grid,.region-grid,.rules-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.story-copy{max-width:none}.host-collage{max-width:620px;margin:auto;width:100%}.region-photo{height:480px;border-radius:80px 80px 0 0}.region-copy{padding:12px 0 0}.price-card{width:100%;max-width:610px}.contact-copy{padding-top:0}.contact-cards{max-width:100%}}
@media(max-width:650px){.container{width:calc(100% - 34px)}.section{padding:56px 0}.section h2{font-size:38px;letter-spacing:-1.3px}.section-head{display:block}.section-head>p{margin-top:14px}.hero-copy{padding:42px 22px 36px}.hero h2{font-size:48px}.hero-visual{min-height:450px;max-height:450px}.hero-stamp{width:214px;padding:14px 15px;bottom:19px;right:12px}.hero-stamp strong{font-size:19px}.hero-facts{gap:7px;margin-top:26px}.hero-facts span{font-size:10px}.hero-facts span+span{padding-left:9px}.highlights-grid{padding:18px 0}.highlights-grid>div{display:flex;flex-direction:column;gap:0}.highlights strong{font-size:22px}.highlights span{font-size:10px}.experience-grid{grid-template-columns:1fr;gap:18px}.experience-card>img{height:290px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-common{grid-auto-rows:190px}.gallery-common .photo-wide{grid-row:span 1;grid-column:span 2}.gallery-common .photo-wide img{height:100%}.photo-card{min-height:0}.bedrooms-grid .photo-card img,.bath-grid .photo-card img,.outdoor-grid .photo-card img{height:220px}.photo-card figcaption{font-size:11px;padding:35px 10px 10px}.gallery-subhead{font-size:23px;margin-top:34px}.gallery-note{padding:20px;min-height:220px}.gallery-note h3{font-size:23px}.host-collage{min-height:380px}.host-main img{height:340px;border-radius:90px 90px 0 0}.host-bread{width:48%;bottom:0}.host-bread img{height:125px}.host-bread figcaption{font-size:11px;padding:7px}.region-photo{height:410px}.region-copy{padding-top:10px}.distance-list>div{font-size:12px}.rules-grid{gap:30px}.price-card{padding:26px 23px}.main-price{font-size:42px}.form-panel{padding:26px 19px 21px}.contact-copy h2{font-size:39px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}.footer-bottom{display:block}.footer-bottom span{display:block;text-align:left!important;margin:9px 0;max-width:100%!important}}
@media(max-width:400px){.hero h2{font-size:43px}.hero-actions{gap:9px}.btn{padding:13px 15px;font-size:11px}.form-row{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.gallery-common .photo-wide{grid-column:auto}.gallery-common{grid-auto-rows:230px}.photo-card img,.bedrooms-grid .photo-card img,.bath-grid .photo-card img,.outdoor-grid .photo-card img{height:250px}.gallery-common .photo-card img{height:100%}.gallery-note{min-height:170px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
