:root{--color-bg: #faf7f0;--color-bg-alt: #f2ece0;--color-surface: #ffffff;--color-ink: #1a1f1c;--color-ink-soft: #3b443e;--color-muted: #6b7570;--color-line: #e4ddce;--color-forest: #0f2a20;--color-forest-soft: #1a3a2d;--color-moss: #3d5a48;--color-brass: #b48a4a;--color-brass-soft: #d9b679;--color-cream: #f3ecdb;--color-primary: var(--color-forest);--color-primary-ink: #ffffff;--color-accent: var(--color-brass);--font-serif: "Cormorant Garamond", "Playfair Display", Georgia, "Times New Roman", serif;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--container: 1200px;--radius: 10px;--radius-lg: 18px;--shadow-sm: 0 2px 6px rgba(15, 42, 32, .06);--shadow: 0 10px 30px rgba(15, 42, 32, .08);--shadow-lg: 0 20px 60px rgba(15, 42, 32, .14);--transition: .24s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:1.6;color:var(--color-ink);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.nav-locked{overflow:hidden}img,svg,video{display:block;max-width:100%;height:auto}img{font-style:italic;background-color:var(--color-bg-alt)}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}a{color:var(--color-forest);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}ul,ol{padding:0;margin:0;list-style:none}:focus-visible{outline:2px solid var(--color-brass);outline-offset:3px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-40px;left:8px;background:var(--color-forest);color:#fff;padding:8px 14px;border-radius:4px;z-index:1000;transition:top var(--transition)}.skip-link:focus{top:8px}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:500;line-height:1.15;color:var(--color-forest);margin:0 0 .5em;letter-spacing:-.01em}h1{font-size:clamp(2.2rem,5vw + .5rem,4.4rem)}h2{font-size:clamp(1.7rem,3vw + .5rem,2.8rem)}h3{font-size:clamp(1.15rem,1.2vw + .5rem,1.5rem)}p{margin:0 0 1em}.eyebrow{font-family:var(--font-sans);font-size:.78rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--color-brass);margin:0 0 .75em}.lead{font-size:1.08rem;color:var(--color-ink-soft);max-width:60ch}.small{font-size:.85rem}.muted{color:var(--color-muted)}.container{width:100%;max-width:var(--container);margin:0 auto;padding-inline:clamp(16px,4vw,40px)}.section{padding-block:clamp(56px,8vw,112px)}.section+.section{padding-top:0}.section-header{max-width:58ch;margin:0 auto 2.5rem}.section-header-center{text-align:center}.section-header-left{text-align:left;margin-inline:0}.section-header .lead{margin:0 auto}.section-header-center .lead{margin-inline:auto}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.4rem;border-radius:999px;font-weight:600;font-size:.95rem;letter-spacing:.02em;transition:transform var(--transition),background var(--transition),color var(--transition),box-shadow var(--transition);line-height:1;text-decoration:none;white-space:nowrap}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--color-forest);color:var(--color-primary-ink);box-shadow:0 10px 24px #0f2a2038}.btn-primary:hover{background:var(--color-forest-soft)}.btn-ghost{background:transparent;color:var(--color-forest);border:1.5px solid currentColor}.btn-ghost:hover{background:var(--color-forest);color:#fff}.btn-sm{padding:.55rem 1rem;font-size:.85rem}.btn-lg{padding:1.05rem 1.75rem;font-size:1rem}.icon{flex-shrink:0}.navbar{position:fixed;inset:0 0 auto;z-index:100;transition:background var(--transition),box-shadow var(--transition),backdrop-filter var(--transition);background:transparent}.navbar.is-scrolled,.navbar.is-open{background:#faf7f0eb;backdrop-filter:saturate(1.1) blur(10px);-webkit-backdrop-filter:saturate(1.1) blur(10px);box-shadow:0 1px 0 var(--color-line)}.navbar-inner{display:flex;align-items:center;gap:1rem;min-height:72px}.brand{display:inline-flex;align-items:center;flex:0 0 auto;text-decoration:none}.brand:hover{text-decoration:none}.brand-logo{height:42px;width:auto;border-radius:16px;box-shadow:0 14px 34px #0000003d}.nav-desktop{display:none;flex:1 1 auto;justify-content:center}.nav-desktop ul{display:flex;gap:1.6rem}.nav-desktop a{font-size:.92rem;font-weight:500;color:var(--color-ink);position:relative;padding:.5rem 0}.nav-desktop a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--color-brass);transform:scaleX(0);transform-origin:left;transition:transform var(--transition)}.nav-desktop a:hover{text-decoration:none;color:var(--color-forest)}.nav-desktop a:hover:after{transform:scaleX(1)}.navbar:not(.is-scrolled):not(.is-open) .nav-desktop a{color:#ffffffeb;text-shadow:0 1px 10px rgba(0,0,0,.28)}.navbar:not(.is-scrolled):not(.is-open) .nav-desktop a:after{background:var(--color-brass-soft)}.navbar:not(.is-scrolled):not(.is-open) .nav-desktop a:hover{color:var(--color-brass-soft)}.nav-actions{display:flex;align-items:center;gap:.75rem;margin-left:auto}.nav-actions .btn-primary{display:none}.nav-toggle{display:inline-flex;padding:8px;border-radius:50%;color:var(--color-forest)}.nav-toggle:hover{background:#0f2a200f}.navbar:not(.is-scrolled):not(.is-open) .nav-toggle{color:#fff}.navbar:not(.is-scrolled):not(.is-open) .nav-toggle:hover{background:#ffffff1f}.nav-mobile{background:#fff;border-top:1px solid var(--color-line);padding:1.25rem clamp(16px,4vw,40px) 1.75rem}.nav-mobile ul{display:flex;flex-direction:column;gap:.25rem}.nav-mobile a{display:block;padding:.9rem .25rem;font-size:1.05rem;font-weight:500;color:var(--color-ink);border-bottom:1px solid var(--color-line)}.nav-mobile a:hover{color:var(--color-forest);text-decoration:none}.nav-mobile .btn{margin-top:1rem;justify-content:center}.lang-switcher{position:relative}.lang-toggle{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .75rem;border-radius:999px;font-size:.85rem;font-weight:600;color:var(--color-forest)}.lang-toggle:hover{background:#0f2a200f}.navbar:not(.is-scrolled):not(.is-open) .lang-toggle{color:#fff;background:#ffffff14;box-shadow:0 8px 20px #00000029}.navbar:not(.is-scrolled):not(.is-open) .lang-toggle:hover{background:#ffffff29}.lang-code{font-variant-numeric:tabular-nums}.lang-menu{position:absolute;top:calc(100% + 4px);right:0;background:#fff;min-width:160px;padding:.35rem;border-radius:12px;box-shadow:var(--shadow-lg);border:1px solid var(--color-line);z-index:120}.lang-menu button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.6rem .75rem;border-radius:8px;font-size:.92rem;text-align:left}.lang-menu button:hover{background:var(--color-bg-alt)}.lang-menu button.is-active{color:var(--color-forest);font-weight:700;background:var(--color-bg-alt)}.lang-menu .lang-code{font-size:.78rem;color:var(--color-muted);min-width:26px}@media (min-width: 900px){.nav-desktop{display:flex}.nav-toggle{display:none}.nav-actions .btn-primary{display:inline-flex}.nav-mobile{display:none}}.hero{position:relative;min-height:min(100vh,760px);padding-top:120px;padding-bottom:80px;display:flex;align-items:center;color:#fff;overflow:hidden;isolation:isolate}.hero-backdrop{position:absolute;inset:0;z-index:-2;background:radial-gradient(120% 80% at 30% 20%,#1d3a2c,#0a1d16 55%,#06110d)}.hero-backdrop:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(180,138,74,.18),transparent 40%),radial-gradient(circle at 80% 70%,rgba(60,120,80,.22),transparent 45%)}.hero-backdrop img{width:100%;height:100%;object-fit:cover;opacity:.95}.hero-scrim{position:absolute;inset:0;background:linear-gradient(180deg,#00000040,#0000008c 60%,#000000b3)}.hero-inner{position:relative;z-index:1;max-width:880px}.hero-logo{display:block;width:clamp(300px,44vw,520px);border-radius:22px;margin-inline:auto;margin-bottom:1.4rem;box-shadow:0 18px 48px #00000047}.hero-eyebrow{color:var(--color-brass-soft)}#hero-title{color:#fff;font-size:clamp(2.6rem,6vw + .5rem,5.5rem);margin-bottom:.3em}.hero-subtitle{font-size:clamp(1.05rem,1vw + .8rem,1.3rem);max-width:58ch;color:#ffffffeb;margin-bottom:2rem}.hero-ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:3rem}.hero-ctas .btn-ghost{color:#fff;border-color:#fff9}.hero-ctas .btn-ghost:hover{background:#fff;color:var(--color-forest)}.hero-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1.5rem;max-width:640px}.hero-highlights li{display:inline-flex;align-items:center;gap:.6rem;font-size:.95rem;color:#ffffffeb}.hero-highlights .icon{color:var(--color-brass-soft)}.hero-scroll{position:absolute;left:50%;bottom:28px;transform:translate(-50%);width:2px;height:56px;overflow:hidden;z-index:2}.hero-scroll-line{display:block;width:2px;height:100%;background:linear-gradient(180deg,transparent,rgba(255,255,255,.8) 70%,transparent);animation:scrollHint 2.4s ease-in-out infinite}@keyframes scrollHint{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@media (min-width: 640px){.hero-highlights{grid-template-columns:repeat(4,minmax(0,1fr))}}.media{display:block;position:relative;width:100%;margin:0;overflow:hidden;border-radius:var(--radius);background:var(--color-bg-alt);box-shadow:var(--shadow-sm)}.media img{width:100%;height:100%;object-fit:cover;display:block}.media-pattern{position:absolute;inset:0;background:linear-gradient(135deg,rgba(15,42,32,.04) 25%,transparent 25%,transparent 50%,rgba(15,42,32,.04) 50%,rgba(15,42,32,.04) 75%,transparent 75%) 0 0 / 16px 16px,linear-gradient(180deg,var(--color-bg-alt),var(--color-cream))}.media-forest .media-pattern{background:radial-gradient(80% 80% at 20% 20%,rgba(180,138,74,.22),transparent 60%),linear-gradient(180deg,#1d3a2c,#0a1d16)}.media-warm .media-pattern{background:radial-gradient(80% 80% at 80% 20%,rgba(255,255,255,.18),transparent 60%),linear-gradient(180deg,#d9b679,#a87c3e)}.media-stone .media-pattern{background:radial-gradient(60% 60% at 30% 70%,rgba(180,138,74,.2),transparent 60%),linear-gradient(180deg,#e0dccf,#b8b2a3)}.media-rose .media-pattern{background:radial-gradient(60% 60% at 70% 30%,rgba(255,255,255,.2),transparent 60%),linear-gradient(180deg,#c6927a,#8a5b46)}.intro-grid{display:grid;gap:2rem;align-items:center}.intro-text h2{max-width:18ch}.intro-text p{color:var(--color-ink-soft);font-size:1.05rem}.intro-media{order:-1}@media (min-width: 900px){.intro-grid{grid-template-columns:1fr 1fr;gap:5rem}.intro-media{order:0}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}}.section-hotel{background:var(--color-bg)}.hotel-split{display:grid;gap:2rem;margin-bottom:3.5rem;align-items:start}.hotel-text p{color:var(--color-ink-soft)}.hotel-gallery{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:12px}.hotel-gallery .gal-a{grid-column:1 / -1}.hotel-gallery .gal-b{grid-column:1 / 2}.hotel-gallery .gal-c{grid-column:2 / 3}@media (min-width: 900px){.hotel-split{grid-template-columns:5fr 6fr;gap:4rem}.hotel-gallery{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;aspect-ratio:4 / 5}.hotel-gallery .gal-a{grid-column:1 / 2;grid-row:1 / 3}.hotel-gallery .gal-b{grid-column:2 / 3;grid-row:1 / 2}.hotel-gallery .gal-c{grid-column:2 / 3;grid-row:2 / 3}}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}.feature-card{background:var(--color-surface);padding:1.5rem;border-radius:var(--radius-lg);border:1px solid var(--color-line);transition:transform var(--transition),box-shadow var(--transition)}.feature-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:var(--color-cream);color:var(--color-forest);margin-bottom:1rem}.feature-card h3{margin-bottom:.4em;font-size:1.1rem}.feature-card p{color:var(--color-ink-soft);font-size:.95rem;margin:0}.section-rooms{background:var(--color-bg-alt)}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.room-card{display:flex;flex-direction:column;background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-line);transition:transform var(--transition),box-shadow var(--transition)}.room-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.room-card .media{border-radius:0;box-shadow:none}.room-body{padding:1.5rem;flex:1;display:flex;flex-direction:column;gap:.6rem}.room-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.room-head h3{margin:0;font-size:1.25rem}.price-pill{background:var(--color-forest);color:#fff;font-family:var(--font-sans);font-size:.78rem;font-weight:600;letter-spacing:.02em;padding:.35rem .75rem;border-radius:999px;white-space:nowrap}.room-meta{display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--color-muted);margin:0}.room-desc{color:var(--color-ink-soft);margin:0;font-size:.95rem}.amenity-list{display:flex;flex-wrap:wrap;gap:.35rem .9rem;margin:.25rem 0 .75rem}.amenity-list li{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;color:var(--color-ink-soft)}.amenity-list .icon{color:var(--color-forest)}.room-body .btn{margin-top:auto;align-self:flex-start}.price-note{margin-top:1.5rem;text-align:center;color:var(--color-muted);font-size:.9rem}.section-pricing{background:var(--color-bg)}.pricing-card{background:var(--color-surface);padding:clamp(1.25rem,3vw,2.5rem);border-radius:var(--radius-lg);border:1px solid var(--color-line);box-shadow:var(--shadow-sm);max-width:860px;margin:0 auto}.pricing-table{width:100%;border-collapse:collapse;font-size:.95rem}.pricing-table th,.pricing-table td{padding:.95rem .5rem;text-align:left;border-bottom:1px solid var(--color-line);vertical-align:middle}.pricing-table thead th{font-family:var(--font-sans);font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--color-muted);border-bottom-width:2px}.pricing-table tbody th{font-weight:600;color:var(--color-ink)}.pricing-table .price-cell{font-family:var(--font-serif);font-size:1.2rem;color:var(--color-forest);white-space:nowrap}.disclaimer{font-size:.85rem;color:var(--color-muted);margin:1.2rem 0 1.5rem}.pricing-card .btn{width:100%;justify-content:center}@media (min-width: 640px){.pricing-card .btn{width:auto}}@media (max-width: 639px){.pricing-table{font-size:.9rem}.pricing-table th,.pricing-table td{padding:.75rem .3rem}.pricing-table .price-cell{font-size:1.05rem}}.section-restaurant{background:var(--color-forest);color:#ffffffeb;position:relative}.section-restaurant h1,.section-restaurant h2,.section-restaurant h3{color:#fff}.section-restaurant .eyebrow{color:var(--color-brass-soft)}.section-restaurant .lead{color:#ffffffd9}.section-restaurant a{color:var(--color-brass-soft)}.section-restaurant a:hover{color:#fff}.restaurant-grid{display:grid;gap:2rem;align-items:start}.restaurant-text p{color:#ffffffe0}.restaurant-gallery{display:grid;gap:12px;grid-template-columns:2fr 1fr;grid-template-rows:1.2fr 1fr}.restaurant-gallery .gal-a{grid-column:1 / 2;grid-row:1 / 3}.restaurant-gallery .gal-b{grid-column:2 / 3;grid-row:1 / 2}.restaurant-gallery .gal-c{grid-column:2 / 3;grid-row:2 / 3}.callout{background:#ffffff14;border-left:3px solid var(--color-brass);padding:1.25rem 1.5rem;border-radius:0 var(--radius) var(--radius) 0;margin:1.5rem 0 2rem}.callout h3{margin-bottom:.4em}.restaurant-meta{display:grid;gap:1rem}.meta-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);padding:1.5rem;border-radius:var(--radius-lg)}.meta-card h3{font-size:1.1rem;margin-bottom:.7em}.hours-list li{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px dashed rgba(255,255,255,.12);font-size:.95rem}.hours-list li:last-child{border-bottom:0}.hours-time{color:var(--color-brass-soft);font-variant-numeric:tabular-nums}.meta-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.section-restaurant .btn-ghost{color:#fff;border-color:#ffffff80}.section-restaurant .btn-ghost:hover{background:#fff;color:var(--color-forest)}@media (min-width: 900px){.restaurant-grid{grid-template-columns:5fr 6fr;gap:4rem}.restaurant-meta{grid-template-columns:1fr 1fr}}.section-menu{background:var(--color-bg)}.menu-tabs{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2rem}.menu-tab{padding:.6rem 1.2rem;border-radius:999px;font-size:.9rem;font-weight:500;color:var(--color-ink-soft);background:var(--color-surface);border:1px solid var(--color-line);transition:background var(--transition),color var(--transition),border-color var(--transition)}.menu-tab:hover{color:var(--color-forest);border-color:var(--color-forest)}.menu-tab.is-active{background:var(--color-forest);color:#fff;border-color:var(--color-forest)}.menu-panel{max-width:820px;margin:0 auto;background:var(--color-surface);padding:clamp(1.5rem,3vw,2.5rem);border-radius:var(--radius-lg);border:1px solid var(--color-line);box-shadow:var(--shadow-sm)}.menu-list{display:flex;flex-direction:column;gap:1.25rem}.menu-item{border-bottom:1px dashed var(--color-line);padding-bottom:1.1rem}.menu-item:last-child{border-bottom:0;padding-bottom:0}.menu-item-head{display:flex;align-items:baseline;gap:.75rem}.menu-item h3{font-family:var(--font-serif);font-weight:500;font-size:1.2rem;margin:0;flex:0 0 auto}.veg-tag{font-family:var(--font-sans);font-size:.75rem;color:var(--color-moss);font-weight:500;letter-spacing:.05em;text-transform:uppercase}.menu-dots{flex:1 1 auto;border-bottom:1px dotted var(--color-line);transform:translateY(-4px);min-width:20px}.menu-price{font-family:var(--font-serif);font-size:1.2rem;color:var(--color-forest);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}.menu-desc{color:var(--color-ink-soft);margin:.4rem 0 0;font-size:.92rem}.allergen{margin-top:1.5rem}.section-services{background:var(--color-bg-alt)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.service-card{display:flex;gap:1rem;padding:1.25rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);transition:transform var(--transition),box-shadow var(--transition)}.service-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.service-icon{flex-shrink:0;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--color-cream);color:var(--color-forest)}.service-card h3{font-size:1.02rem;margin:0 0 .2em}.service-card p{margin:0;font-size:.9rem;color:var(--color-ink-soft)}.section-excursions{background:var(--color-bg)}.excursion-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem}.excursion-card{background:var(--color-surface);padding:1.5rem;border-radius:var(--radius-lg);border:1px solid var(--color-line);position:relative;overflow:hidden;transition:transform var(--transition),box-shadow var(--transition)}.excursion-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-brass-soft),var(--color-brass));opacity:0;transition:opacity var(--transition)}.excursion-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.excursion-card:hover:before{opacity:1}.excursion-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem;font-size:.78rem}.excursion-tag{background:var(--color-cream);color:var(--color-forest);padding:.25rem .7rem;border-radius:999px;font-weight:600;letter-spacing:.04em}.excursion-distance{display:inline-flex;align-items:center;gap:.25rem;color:var(--color-muted)}.excursion-card h3{font-size:1.2rem;margin:0 0 .5rem}.excursion-card p{color:var(--color-ink-soft);margin:0;font-size:.92rem}.section-booking{background:var(--color-bg-alt)}.booking-card{display:grid;gap:1.5rem;align-items:center;background:var(--color-forest);color:#fff;padding:clamp(1.75rem,4vw,3rem);border-radius:var(--radius-lg);box-shadow:var(--shadow);position:relative;overflow:hidden}.booking-card:before{content:"";position:absolute;right:-40px;top:-40px;width:220px;height:220px;background:radial-gradient(circle,rgba(180,138,74,.35) 0%,transparent 70%);border-radius:50%;pointer-events:none}.booking-card h2{color:#fff}.booking-card .eyebrow{color:var(--color-brass-soft)}.booking-card .lead{color:#ffffffe0;margin-bottom:1rem}.booking-card .muted{color:#fff9}.booking-text{position:relative;z-index:1}.booking-actions{display:flex;flex-direction:column;gap:.75rem;position:relative;z-index:1;align-items:flex-start}.booking-card .btn-primary{background:var(--color-brass-soft);color:var(--color-forest)}.booking-card .btn-primary:hover{background:#fff}.booking-card .btn-ghost{color:#fff;border-color:#ffffff80}.booking-card .btn-ghost:hover{background:#fff;color:var(--color-forest)}.booking-alt{display:flex;flex-direction:column;gap:.5rem;align-items:stretch}@media (min-width: 900px){.booking-card{grid-template-columns:1.3fr 1fr;gap:3rem;padding:3.5rem}.booking-actions{align-items:flex-end}.booking-alt{flex-direction:row}}.section-info{background:var(--color-bg)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}.info-card{background:var(--color-surface);padding:1.5rem;border-radius:var(--radius-lg);border:1px solid var(--color-line)}.info-card h3{font-size:1.05rem;margin-bottom:.4em}.info-card p{color:var(--color-ink-soft);margin:0;font-size:.95rem}.section-contact{background:var(--color-bg-alt)}.contact-grid{display:grid;gap:1.5rem;align-items:stretch}.contact-card,.contact-map{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);overflow:hidden}.contact-card{padding:clamp(1.5rem,3vw,2.25rem);display:flex;flex-direction:column;gap:1.2rem}.contact-card h3{font-family:var(--font-sans);font-size:.78rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--color-brass);margin-bottom:.4em}.contact-card address{font-style:normal;display:flex;gap:.75rem;align-items:flex-start;font-size:1rem;color:var(--color-ink-soft)}.contact-card address .icon{color:var(--color-forest);margin-top:2px}.contact-rows{display:grid;gap:1rem}.contact-rows>div h3{margin-bottom:.2em}.contact-rows p{margin:0}.contact-map{min-height:320px;padding:0}.contact-map iframe{width:100%;height:100%;min-height:320px;border:0;display:block}@media (min-width: 900px){.contact-grid{grid-template-columns:4fr 5fr}.contact-rows{grid-template-columns:repeat(3,1fr)}}.site-footer{background:#0a1d16;color:#ffffffc7;padding-top:clamp(3rem,6vw,5rem);padding-bottom:2rem}.site-footer h3{color:#fff;font-family:var(--font-sans);font-size:.8rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;margin-bottom:1.2em}.footer-grid{display:grid;gap:2.5rem;margin-bottom:2.5rem}.footer-logo-link{display:inline-flex;text-decoration:none}.footer-logo-link:hover{text-decoration:none}.footer-brand p{max-width:40ch;font-size:.95rem}.footer-logo{width:min(100%,280px);height:auto;margin-bottom:1rem;border-radius:18px;box-shadow:0 14px 32px #0003}.footer-links li{padding:.3rem 0;font-size:.95rem}.footer-links a{color:#ffffffc7}.footer-links a:hover{color:#fff;text-decoration:underline}.site-footer address{font-style:normal;display:flex;flex-direction:column;gap:.75rem;font-size:.95rem;color:#ffffffc7}.contact-line{display:flex;gap:.6rem;align-items:flex-start}.contact-line .icon{color:var(--color-brass-soft);flex-shrink:0;margin-top:2px}.contact-line a{color:#ffffffe6}.contact-line a:hover{color:#fff}.social{display:flex;gap:.75rem;margin-top:1.2rem}.social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#ffffff0f;color:#ffffffd9;transition:background var(--transition),color var(--transition)}.social a:hover{background:var(--color-brass);color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:1.5rem;color:#ffffff8c;font-size:.85rem;text-align:center}@media (min-width: 760px){.footer-grid{grid-template-columns:1.3fr 1fr 1.2fr}}.section-notfound{min-height:60vh;display:flex;align-items:center;padding-top:120px}.notfound{text-align:center;max-width:520px;margin:0 auto}.notfound h1{font-size:clamp(2rem,4vw + 1rem,3.5rem)}.page-loading{min-height:50vh}
