
:root{--lav:#8d789d;--lav2:#6d5a77;--green:#72845f;--cream:#f7f3ec;--dark:#302b33;--text:#34323a;--white:#fff;--shadow:0 15px 40px rgba(42,34,48,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--text);background:#fff;line-height:1.65}a{color:inherit}.container{width:min(1180px,92%);margin:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);box-shadow:0 2px 16px rgba(0,0,0,.08)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-weight:900;letter-spacing:2px;text-decoration:none;color:var(--dark)}.brand small{display:block;font-size:11px;font-weight:500;letter-spacing:.8px;color:#777}.nav-links{display:flex;gap:25px;align-items:center}.nav-links a{text-decoration:none;font-weight:700}.nav-links a:hover{color:var(--lav2)}.menu-toggle{display:none;border:0;background:none;font-size:28px;color:var(--dark)}
.hero{min-height:78vh;display:grid;place-items:center;text-align:center;color:#fff;background:linear-gradient(rgba(44,35,50,.35),rgba(44,35,50,.5)),url("../images/hero.jpg") center/cover no-repeat}.hero h1{font-size:clamp(42px,7vw,82px);margin:0;text-shadow:0 4px 20px rgba(0,0,0,.4);letter-spacing:2px}.hero p{font-size:clamp(18px,2.2vw,28px);margin:10px 0 28px}.btn{display:inline-block;padding:13px 26px;border-radius:999px;background:var(--lav2);color:#fff!important;text-decoration:none!important;font-weight:800;box-shadow:0 8px 20px rgba(55,40,65,.2);transition:.2s}.btn:hover{transform:translateY(-2px);background:var(--lav)}
section{padding:78px 0}.section-title{text-align:center;margin:0 0 44px;font-size:clamp(30px,4vw,44px);color:var(--dark)}.section-title span{display:block;font-size:16px;color:#777;font-weight:500;margin-top:6px}.intro{max-width:850px;text-align:center;margin:auto;font-size:18px}
.stats{background:linear-gradient(135deg,#65556e,#8d789d);color:#fff;overflow:hidden}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat{text-align:center;position:relative;padding:20px}.stat:before{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.15);border-radius:22px}.stat-icon{font-size:52px;line-height:1.1;display:block;color:#fff;animation:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.12))}.stat strong{display:block;font-size:clamp(42px,5vw,64px);line-height:1.05;font-weight:900;letter-spacing:-2px}.stat span{font-size:12px;letter-spacing:1.3px;font-weight:800}.counter{opacity:0;transform:translateY(15px);transition:.7s}.counter.visible{opacity:1;transform:none}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.room-card,.attraction-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);transition:.25s}.room-card:hover,.attraction-card:hover{transform:translateY(-6px)}.room-card img,.attraction-card img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}.room-card .content,.attraction-card .content{padding:22px}.room-card h3,.attraction-card h3{margin:0 0 8px;font-size:23px;color:var(--dark)}.room-card p,.attraction-card p{color:#666}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.feature{padding:30px;background:var(--cream);border-radius:18px;text-align:center;transition:.2s}.feature:hover{transform:translateY(-5px)}.feature-icon{font-size:42px;display:inline-flex;width:74px;height:74px;align-items:center;justify-content:center;border-radius:50%;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.08);animation:float 3.2s ease-in-out infinite}.feature h3{color:var(--dark);margin:15px 0 5px}.feature p{margin:0;color:#666}
.cta{background:linear-gradient(135deg,#f4edf6,#f7f3ec);text-align:center}.cta .btn{margin:6px}.restaurant{background:linear-gradient(90deg,rgba(45,38,40,.78),rgba(45,38,40,.35)),url("/images/galeria/restauracja.jpg") center/cover;color:#fff}.restaurant h2{font-size:42px}
.page-hero{padding:95px 0;text-align:center;color:#fff;background:linear-gradient(rgba(60,48,67,.48),rgba(60,48,67,.55)),url("../images/hero.jpg") center/cover}.page-hero h1{font-size:clamp(38px,5vw,62px);margin:0}.page-hero p{margin:8px 0 0;font-size:18px}
.room-hero{padding:80px 0;text-align:center;background:linear-gradient(135deg,#eee6f2 0%,#d9c9df 55%,#c7b2cf 100%);color:#55415f}.room-hero h1{font-size:clamp(38px,5vw,62px);margin:0;color:#6d4b78}.room-hero p{color:#725b7d}.room-hero .back a{color:#6d4b78;font-weight:800}.room-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.room-gallery a{display:block;overflow:hidden;border-radius:12px}.room-gallery img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;transition:.25s}.room-gallery a:hover img{transform:scale(1.04)}.room-description{max-width:850px;margin:0 auto 45px;font-size:18px}.room-info{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:40px 0}.info-box{background:var(--cream);padding:25px;border-radius:15px}.back{margin-bottom:20px}.contact{background:var(--cream)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.contact-card{background:#fff;padding:32px;border-radius:18px;box-shadow:var(--shadow)}.contact-card a{color:var(--lav2);font-weight:800}.site-footer{background:#29262d;color:#ddd;padding:30px 0;text-align:center}.site-footer a{color:#fff!important;font-weight:800}
.about-features{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.about-feature{text-align:center;padding:35px;background:#fff;border-radius:18px;box-shadow:var(--shadow)}.about-icon{font-size:44px;color:var(--lav2);animation:float 3s ease-in-out infinite}.about-feature h3{color:var(--dark)}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes fadeUp{to{opacity:1;transform:none}}
@media(max-width:800px){.nav-links{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:20px;flex-direction:column}.nav-links.open{display:flex}.menu-toggle{display:block}.cards,.features,.about-features{grid-template-columns:1fr 1fr}.stats-grid{grid-template-columns:1fr 1fr}.contact-grid,.room-info{grid-template-columns:1fr}}
@media(max-width:520px){section{padding:55px 0}.cards,.features,.about-features,.room-gallery{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.hero{min-height:70vh}}

/* v8 refinements */
.stat-icon{font-size:0!important;width:82px;height:82px;margin:0 auto 8px;display:flex!important;align-items:center;justify-content:center;color:#fff!important;animation:none!important;filter:none!important}
.stat-icon svg{width:68px;height:68px;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.stat strong{color:#fff!important}
.about-intro{max-width:920px;margin:0 auto 48px;text-align:center;font-size:19px;color:#4b4650}
.about-panels{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:stretch}
.about-panel{background:#fff;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);border:1px solid #eee6f2}
.about-panel.visual{background:linear-gradient(145deg,#efe6f3,#f8f3fa);display:flex;align-items:center;justify-content:center;min-height:330px;position:relative}
.about-panel.visual:before{content:"";width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,#a98bb4 0,#80638d 55%,#6d4b78 100%);box-shadow:0 25px 50px rgba(109,75,120,.25)}
.about-panel.visual:after{content:"✦";position:absolute;font-size:150px;color:#fff;opacity:.22}
.about-panel .inner{padding:38px}
.about-panel h3{font-size:30px;color:var(--dark);margin:0 0 16px}
.about-panel p{color:#555;line-height:1.8}
.about-icons{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:32px}
.about-feature{border:1px solid #eee6f2!important;background:linear-gradient(180deg,#fff,#faf7fc)!important}
.about-icon{width:72px;height:72px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#efe6f3;color:#72557e!important;animation:none!important}
.about-icon svg{width:38px;height:38px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.attraction-card .content{min-height:205px}.attraction-card p{color:#555;line-height:1.65}
.map-wrap{margin-top:40px;border-radius:20px;overflow:hidden;box-shadow:var(--shadow);background:#fff}.map-wrap iframe{width:100%;height:430px;border:0;display:block}
.contact-address{font-size:18px;line-height:1.8}
@media(max-width:800px){.about-panels{grid-template-columns:1fr}.about-icons{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.about-icons{grid-template-columns:1fr}.stat-icon{width:68px;height:68px}.stat-icon svg{width:58px;height:58px}}

.distance{display:inline-block;margin:2px 0 10px;color:var(--lav2);font-weight:800;font-size:13px;letter-spacing:.4px}

/* v9 refinements */
.site-logo{
  display:block;
  height:58px;
  width:auto;
  object-fit:contain;
}
.brand-text{display:none}
.hero .btn-primary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:16px 34px;
  border-radius:999px;
  background:linear-gradient(135deg,#8e6aa4,#6b4d7d);
  color:#fff !important;
  font-size:18px;
  font-weight:800;
  letter-spacing:.2px;
  box-shadow:0 12px 28px rgba(75,48,92,.35);
  border:2px solid rgba(255,255,255,.8);
  transition:transform .2s, box-shadow .2s;
}
.hero .btn-primary:hover{
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 16px 34px rgba(75,48,92,.45);
}
.stat-icon{
  width:64px !important;
  height:64px !important;
  min-width:64px;
  min-height:64px;
  color:#fff !important;
  fill:none;
  stroke:#fff !important;
  stroke-width:1.8;
}
.stat-icon path,.stat-icon circle,.stat-icon rect,.stat-icon line,.stat-icon polyline{
  stroke:#fff !important;
}
.stat-icon.area{ /* replaces the old "building/area" icon */
  stroke-width:1.7;
}
.lavender-flower{
  width:150px;
  height:150px;
  display:block;
  margin:0 auto 18px;
  object-fit:contain;
}
.about-flower{
  background:radial-gradient(circle,rgba(255,255,255,.98) 0 28%,rgba(255,255,255,.0) 29%);
  border-radius:50%;
  padding:18px;
}
.attraction-card img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  display:block;
}

/* v10 logo and stat refinements */
.brand{display:flex;align-items:center}
.site-logo{display:block;width:auto;height:54px;max-width:min(430px,42vw);object-fit:contain}
@media(max-width:800px){.site-logo{height:48px;max-width:68vw}}
.stats .stat-icon{display:flex;align-items:center;justify-content:center;width:82px;height:72px;margin:0 auto 8px;color:#fff!important}
.stats .stat-icon svg{width:72px;height:72px;display:block}
.stats .stat-icon svg *{stroke:#fff!important}
