
:root{
  --forest:#203c2b;--forest-2:#2d5139;--moss:#6f8364;--sand:#d8c3a5;
  --cream:#f6f2ea;--paper:#fffdf9;--ink:#20241f;--muted:#687068;
  --line:rgba(32,60,43,.15);--shadow:0 18px 50px rgba(18,35,25,.13);
  --radius:22px;--max:1180px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;line-height:1.65}
img{max-width:100%;display:block}a{color:inherit}.container{width:min(var(--max),calc(100% - 36px));margin-inline:auto}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:9999;background:#fff;padding:.7rem 1rem;border-radius:8px}.skip-link:focus{top:1rem}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,253,249,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-inner{min-height:84px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;text-decoration:none;margin-right:auto}.brand img{width:68px;height:68px;object-fit:contain}.brand span{display:flex;flex-direction:column;line-height:1.1}.brand strong{font-family:Georgia,serif;font-size:1.22rem}.brand small{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.68rem;margin-top:.25rem}
.nav{display:flex;align-items:center;gap:1.1rem}.nav a{text-decoration:none;font-size:.92rem;font-weight:650}.nav a:hover{color:var(--forest-2)}.lang-switch{border:1px solid var(--line);border-radius:999px;padding:.45rem .7rem}.nav-cta,.btn{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:999px;padding:.82rem 1.18rem;text-decoration:none;font-weight:750;cursor:pointer}.nav-cta,.btn-primary{background:var(--forest);color:#fff!important}.btn-primary:hover,.nav-cta:hover{background:var(--forest-2)}.btn-secondary{border:1px solid rgba(255,255,255,.65);color:#fff;background:rgba(255,255,255,.08)}.btn-outline{border:1px solid var(--forest);color:var(--forest);background:transparent}
.nav-toggle{display:none;background:none;border:0;padding:.5rem}.nav-toggle span{display:block;width:25px;height:2px;background:var(--ink);margin:5px}.nav-toggle b{font-size:.65rem}
.hero{min-height:720px;position:relative;display:grid;align-items:end;color:#fff;overflow:hidden}.hero-media{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,25,16,.78),rgba(10,25,16,.2) 65%,rgba(10,25,16,.1)),linear-gradient(0deg,rgba(10,25,16,.48),transparent 55%)}
.hero-content{position:relative;z-index:2;padding:9rem 0 6rem}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:.72rem;font-weight:800;color:var(--moss);margin-bottom:.7rem}.hero .eyebrow{color:#dfd5c3}.hero h1,.page-hero h1,.section-title{font-family:Georgia,"Times New Roman",serif;line-height:1.05;margin:0}.hero h1{font-size:clamp(3.4rem,8vw,7.3rem);max-width:820px}.hero p{font-size:1.2rem;max-width:690px;margin:1.4rem 0 2rem;color:rgba(255,255,255,.92)}.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap}
.section{padding:6.5rem 0}.section-white{background:var(--paper)}.section-dark{background:var(--forest);color:#fff}.section-soft{background:#ece5d8}.section-title{font-size:clamp(2.5rem,5vw,4.4rem);margin-bottom:1.25rem}.section-lead{font-size:1.17rem;max-width:780px;color:var(--muted)}.section-dark .section-lead{color:rgba(255,255,255,.76)}
.intro-grid,.split{display:grid;grid-template-columns:1.03fr .97fr;gap:clamp(2rem,6vw,6rem);align-items:center}.media-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.media-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.3rem}.feature{background:var(--paper);border:1px solid var(--line);padding:1.4rem;border-radius:18px}.feature svg{width:30px;height:30px;stroke:var(--forest);margin-bottom:.7rem}.feature h3{margin:.1rem 0 .35rem;font-family:Georgia,serif;font-size:1.28rem}.feature p{margin:0;color:var(--muted);font-size:.94rem}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}.stat{padding:1.15rem;border-top:2px solid var(--sand)}.stat strong{display:block;font-family:Georgia,serif;font-size:2rem;color:var(--forest)}
.rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2.4rem}.room-card{background:var(--paper);border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 36px rgba(18,35,25,.09)}.room-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.room-card .content{padding:1.3rem}.room-card h3{font-family:Georgia,serif;font-size:1.55rem;margin:0 0 .5rem}.price{font-weight:800;color:var(--forest);margin-top:.8rem}
.breakfast-gallery,.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}.breakfast-gallery a:first-child{grid-row:span 2}.breakfast-gallery img,.gallery img{width:100%;height:100%;min-height:180px;object-fit:cover;border-radius:16px}.gallery{grid-template-columns:repeat(5,1fr)}.gallery a{aspect-ratio:1/1}
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.5rem}.timeline-item{border-top:2px solid var(--sand);padding-top:1rem}.timeline-item strong{font-family:Georgia,serif;font-size:1.5rem}.timeline-item p{color:rgba(255,255,255,.74)}
.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem;margin-top:2.3rem}.info-card{background:var(--paper);border-radius:var(--radius);padding:1.6rem;border:1px solid var(--line)}.info-card h3{font-family:Georgia,serif;font-size:1.55rem;margin:.1rem 0 .65rem}.info-card p:last-child{margin-bottom:0}
.review-box{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;background:var(--forest);color:#fff;padding:2.5rem;border-radius:var(--radius)}.stars{letter-spacing:.25em;color:#e9cf8e;font-size:1.5rem}.review-box h2{font-family:Georgia,serif;font-size:2.4rem;margin:.3rem 0}.review-box p{color:rgba(255,255,255,.78);margin-bottom:0}
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:3rem}.contact-box{background:var(--paper);border-radius:var(--radius);padding:1.6rem;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-grid .full{grid-column:1/-1}label{display:block;font-weight:700;font-size:.88rem;margin-bottom:.35rem}input,select,textarea{width:100%;border:1px solid #cfd3cc;border-radius:11px;padding:.85rem;background:#fff;font:inherit}textarea{min-height:130px;resize:vertical}.form-privacy-note,.notice{font-size:.85rem;color:var(--muted)}.hp-field{position:absolute!important;left:-10000px!important}.form-status{padding:1rem;border-radius:10px;margin-bottom:1rem}.form-status.success{background:#e1f1e5;color:#184b26}.form-status.error{background:#f9e3df;color:#7b2318}
.page-hero{padding:7rem 0 4rem;background:var(--forest);color:#fff}.page-hero h1{font-size:clamp(3rem,7vw,6rem)}.page-hero p{max-width:760px;color:rgba(255,255,255,.78);font-size:1.15rem}
.prose{max-width:900px}.prose h2{font-family:Georgia,serif;font-size:2rem;margin-top:2.4rem}.prose h3{font-family:Georgia,serif;font-size:1.35rem;margin-top:1.8rem}.prose li{margin:.45rem 0}.notice-box{background:#ece5d8;border-left:4px solid var(--forest);padding:1rem 1.2rem;border-radius:0 12px 12px 0}
.faq-list{display:grid;gap:.8rem}.faq-item{background:var(--paper);border:1px solid var(--line);border-radius:15px;overflow:hidden}.faq-item button{width:100%;display:flex;justify-content:space-between;gap:1rem;text-align:left;background:none;border:0;padding:1.1rem 1.25rem;font:inherit;font-weight:750;cursor:pointer}.faq-item .answer{display:none;padding:0 1.25rem 1.2rem;color:var(--muted)}.faq-item.open .answer{display:block}.faq-item.open button span:last-child{transform:rotate(45deg)}
.map-card{background:var(--paper);border-radius:var(--radius);padding:1.2rem;box-shadow:var(--shadow)}.map-card svg{width:100%;height:auto;border-radius:15px;background:#e9e4d8}.route-buttons{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1rem}
.footer{background:#14271c;color:#fff;padding:4rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}.footer a{color:rgba(255,255,255,.78);text-decoration:none}.footer strong{font-family:Georgia,serif;font-size:1.15rem}.footer-brand{display:flex;align-items:center;gap:1rem}.footer-brand img{width:75px;filter:brightness(0) invert(1)}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:2rem;padding-top:1rem;display:flex;justify-content:space-between;color:rgba(255,255,255,.55);font-size:.85rem}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);display:none;place-items:center;z-index:999}.lightbox.open{display:grid}.lightbox img{max-width:90vw;max-height:86vh}.lightbox button{position:absolute;right:2rem;top:1rem;background:none;color:#fff;border:0;font-size:3rem}
@media(max-width:980px){
 .nav-toggle{display:block}.nav{position:absolute;left:0;right:0;top:84px;background:var(--paper);padding:1rem 18px 1.4rem;display:none;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav a{padding:.45rem}
 .intro-grid,.split,.contact-grid{grid-template-columns:1fr}.feature-grid{grid-template-columns:repeat(2,1fr)}.rooms{grid-template-columns:1fr 1fr}.timeline{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:650px){
 .container{width:min(100% - 24px,var(--max))}.hero{min-height:640px}.hero-content{padding-bottom:4rem}.section{padding:4.5rem 0}
 .brand span{display:none}.feature-grid,.rooms,.stats,.card-grid,.timeline,.form-grid,.footer-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}
 .review-box{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:.4rem}.page-hero{padding-top:5rem}
}
