@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.nav-toggle.svelte-8sty6q{display:none;width:44px;height:44px;background:transparent;border:1px solid var(--border);border-radius:10px;cursor:pointer;flex-direction:column;gap:4px;align-items:center;justify-content:center;padding:0}.nav-toggle.svelte-8sty6q span:where(.svelte-8sty6q){display:block;width:22px;height:2px;background:var(--navy);transition:transform .2s ease,opacity .2s ease}.nav-toggle[aria-expanded=true].svelte-8sty6q span:where(.svelte-8sty6q):nth-child(1){transform:translateY(6px) rotate(45deg)}.nav-toggle[aria-expanded=true].svelte-8sty6q span:where(.svelte-8sty6q):nth-child(2){opacity:0}.nav-toggle[aria-expanded=true].svelte-8sty6q span:where(.svelte-8sty6q):nth-child(3){transform:translateY(-6px) rotate(-45deg)}.nav-cta.svelte-8sty6q{display:none}@media(max-width:900px){.nav-toggle.svelte-8sty6q{display:inline-flex}.hotel-page .primary-nav{position:fixed;top:var(--header-h);left:0;right:0;flex-direction:column;align-items:stretch;background:#fff;border-bottom:1px solid var(--border);padding:1rem clamp(16px,4vw,32px) 1.5rem;gap:1rem;transform:translateY(-12px);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;box-shadow:var(--shadow-md);max-height:calc(100vh - var(--header-h));overflow-y:auto;z-index:60}.hotel-page .primary-nav.open{transform:translateY(0);opacity:1;pointer-events:auto}.hotel-page .primary-nav ul{display:flex!important;flex-direction:column;gap:0;width:100%}.hotel-page .primary-nav ul li{border-bottom:1px solid var(--border)}.hotel-page .primary-nav ul a{display:block;padding:.85rem 0;font-size:1.05rem}.nav-cta.svelte-8sty6q{display:inline-flex;width:100%;justify-content:center;padding:.95rem 1.25rem;font-size:1.05rem}.hotel-page .primary-nav.open .lang-toggle{justify-content:center;margin-top:.25rem}}.cc-overlay.svelte-1n0vvxd{position:fixed;inset:0;background:#0f2a4473;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:950}.cc-panel.svelte-1n0vvxd{position:fixed;left:50%;bottom:0;transform:translate(-50%);z-index:960;width:min(720px,calc(100% - 1.5rem));max-height:calc(100vh - 2rem);overflow-y:auto;background:#fff;border-radius:16px 16px 0 0;box-shadow:0 -20px 60px #0f2a4459;animation:svelte-1n0vvxd-cc-in .2s ease-out}@keyframes svelte-1n0vvxd-cc-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@media(min-width:720px){.cc-panel.svelte-1n0vvxd{bottom:1.25rem;border-radius:16px}}.cc-inner.svelte-1n0vvxd{padding:1.25rem 1.5rem 1.4rem;font-family:var(--font, system-ui, sans-serif);color:var(--text, #2c4565)}.cc-inner.svelte-1n0vvxd h2:where(.svelte-1n0vvxd){margin:0 0 .65rem;color:var(--navy, #4d6c93);font-size:1.15rem;font-weight:700}.cc-inner.svelte-1n0vvxd p:where(.svelte-1n0vvxd){margin:0 0 1rem;font-size:.92rem;line-height:1.5;color:var(--text, #2c4565)}.cc-inner.svelte-1n0vvxd a:where(.svelte-1n0vvxd){color:var(--orange, #e8761b);font-weight:600;text-decoration:underline}.cc-actions.svelte-1n0vvxd{display:flex;flex-wrap:wrap;gap:.55rem;margin:.75rem 0 .5rem}.cc-actions.svelte-1n0vvxd .btn{flex:1 1 auto;min-width:140px;font-size:.95rem;padding:.7rem 1.1rem}.cc-actions.svelte-1n0vvxd .btn-ghost{background:var(--blue-tint, #eef4fb);color:var(--navy, #4d6c93);border-color:transparent}.cc-categories.svelte-1n0vvxd{list-style:none;margin:.5rem 0 .75rem;padding:0;display:flex;flex-direction:column;gap:.55rem}.cc-categories.svelte-1n0vvxd label:where(.svelte-1n0vvxd){display:flex;gap:.75rem;padding:.7rem .85rem;border:1px solid var(--border, #e2e8f0);border-radius:10px;align-items:flex-start;cursor:pointer;background:#fff}.cc-categories.svelte-1n0vvxd label:where(.svelte-1n0vvxd):hover{border-color:var(--orange, #e8761b)}.cc-categories.svelte-1n0vvxd input[type=checkbox]:where(.svelte-1n0vvxd){margin-top:.2rem;width:18px;height:18px;accent-color:var(--orange, #e8761b);flex-shrink:0}.cc-categories.svelte-1n0vvxd strong:where(.svelte-1n0vvxd){display:block;color:var(--navy, #4d6c93);font-size:.95rem;margin-bottom:.15rem}.cc-categories.svelte-1n0vvxd small:where(.svelte-1n0vvxd){display:block;color:var(--muted, #4d6c93);font-size:.82rem;line-height:1.4}.cc-foot.svelte-1n0vvxd{margin:1rem 0 0!important;padding-top:.85rem;border-top:1px solid var(--border, #e2e8f0);font-size:.82rem;color:var(--muted, #4d6c93);text-align:center}.cc-foot.svelte-1n0vvxd a:where(.svelte-1n0vvxd){color:var(--muted, #4d6c93);font-weight:500}.cc-reopen.svelte-1n0vvxd{position:fixed;left:14px;bottom:14px;z-index:900;background:#fff;border:1px solid var(--border, #e2e8f0);color:var(--navy, #4d6c93);font:inherit;font-size:.82rem;font-weight:600;padding:.5rem .85rem;border-radius:999px;box-shadow:0 6px 18px #0f2a442e;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.cc-reopen.svelte-1n0vvxd:hover{transform:translateY(-1px);box-shadow:0 10px 22px #0f2a4440}@media print{.cc-overlay.svelte-1n0vvxd,.cc-panel.svelte-1n0vvxd,.cc-reopen.svelte-1n0vvxd{display:none!important}}.hotel-page{--navy: #4d6c93;--navy-700: #3a557a;--navy-500: #2c4565;--navy-soft: #5d7ca3;--blue: #4d6c93;--blue-soft: #e8761b;--blue-soft-hover: #d1671a;--blue-tint: #eef4fb;--sand: #d3b884;--sand-soft: #faf3e3;--tan: #a08a5e;--tan-light: #d3b884;--orange: #e8761b;--orange-hover: #d1671a;--cream: #faf7f2;--bg: #ffffff;--bg-alt: #f5f7fa;--text: #2c4565;--muted: #4d6c93;--border: #e2e8f0;--warn: #b04a3a;--shadow-sm: 0 1px 2px rgba(77, 108, 147, .06);--shadow-md: 0 6px 24px rgba(77, 108, 147, .1);--shadow-lg: 0 18px 50px rgba(77, 108, 147, .14);--radius: 14px;--radius-lg: 22px;--container: 1280px;--header-h: clamp(96px, 11vw, 132px);--font: "Inter", Verdana, Geneva, Tahoma, "DejaVu Sans", sans-serif;font-family:var(--font);font-size:17px;line-height:1.65;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.hotel-page *{box-sizing:border-box}.hotel-page img,.hotel-page svg,.hotel-page iframe{max-width:100%;display:block}.hotel-page a{color:var(--blue);text-decoration:none}.hotel-page a:hover{text-decoration:underline}.hotel-page h1,.hotel-page h2,.hotel-page h3,.hotel-page h4{color:var(--navy);line-height:1.2;margin:0 0 .5em;font-weight:700;letter-spacing:-.01em;font-family:var(--font)}.hotel-page h1{font-size:clamp(2rem,5.2vw,3.4rem);font-weight:800}.hotel-page h2{font-size:clamp(1.6rem,3.4vw,2.2rem)}.hotel-page h3{font-size:1.15rem}.hotel-page p{margin:0 0 1em}.hotel-page ul{margin:0;padding:0;list-style:none}.hotel-page small{font-size:.85em;color:var(--muted)}.hotel-page .top-strip{height:7px;background:linear-gradient(to right,var(--tan) 0%,var(--tan-light) 50%,var(--tan) 100%)}.hotel-page .container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:clamp(16px,4vw,32px)}.hotel-page .eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:600;color:var(--blue);margin:0 0 .5em}.hotel-page .section-lead{color:var(--muted);max-width:70ch;font-size:1.05rem}.hotel-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.4rem;border-radius:999px;font-weight:600;font-size:.95rem;border:1.5px solid transparent;cursor:pointer;transition:transform .12s ease,background .18s ease,color .18s ease,border-color .18s ease;text-decoration:none;white-space:nowrap;font-family:var(--font)}.hotel-page .btn:hover{text-decoration:none;transform:translateY(-1px)}.hotel-page .btn-primary{background:var(--orange);color:#fff;border-color:var(--orange);box-shadow:0 6px 16px #e8761b47}.hotel-page .btn-primary:hover{background:var(--orange-hover);border-color:var(--orange-hover);box-shadow:0 8px 20px #e8761b6b;color:#fff}.hotel-page .btn-outline{background:transparent;color:var(--navy);border-color:var(--navy)}.hotel-page .btn-outline:hover{background:var(--navy);color:#fff}.hotel-page .btn-accent{background:var(--orange);color:#fff;border-color:var(--orange)}.hotel-page .btn-accent:hover{background:var(--orange-hover);border-color:var(--orange-hover);color:#fff}.hotel-page .btn-accent:after{content:"↗";font-size:.82em;margin-left:.45rem;display:inline-block}.hotel-page .hero-stage{position:relative;isolation:isolate;overflow:hidden;width:100%;aspect-ratio:16 / 10;min-height:460px;max-height:78vh;display:flex;align-items:center;justify-content:center;color:#fff;background:var(--navy)}.hotel-page .hero-stage>.hero-bg{position:absolute;inset:0;z-index:-2}.hotel-page .hero-stage>.hero-bg img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center}.hotel-page .hero-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0f2a4440,#0f2a4473);z-index:-1}.hotel-page .hero-stage-content{position:relative;z-index:2;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.hotel-page .hero-booking{background:#0f2a449e;backdrop-filter:blur(12px) saturate(130%);-webkit-backdrop-filter:blur(12px) saturate(130%);color:#fff;border-radius:14px;padding:clamp(1.5rem,2.5vw,2.1rem) clamp(1.4rem,2.5vw,2rem) clamp(1.3rem,2vw,1.75rem);width:min(600px,95%);margin-inline:auto;box-shadow:0 28px 60px #00000059,0 4px 14px #00000040;border:1px solid rgba(255,255,255,.12);text-align:left}.hotel-page .hero-booking-eyebrow{margin:0 0 .35rem;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--orange)}.hotel-page .hero-booking h2{margin:0 0 .35rem;color:#fff;font-size:clamp(1.55rem,2.6vw,2rem);font-weight:800;line-height:1.1;letter-spacing:-.01em}.hotel-page .hero-booking-sub{margin:0 0 1.1rem;color:#ffffffd9;font-size:.95rem;line-height:1.4}.hotel-page .hero-booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:.7rem}.hotel-page .hero-booking-fields.three{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hotel-page .hero-booking-fields>label{min-width:0}.hotel-page .hero-booking-fields label{display:flex;flex-direction:column;gap:.35rem;font-size:.78rem;font-weight:700;color:#ffffffeb;letter-spacing:.04em;text-transform:uppercase}.hotel-page .hero-booking-fields input,.hotel-page .hero-booking-fields select{font:inherit;font-size:1rem;font-weight:600;padding:.85rem;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:#fff;color:var(--navy);width:100%;min-height:52px;font-family:var(--font);-webkit-appearance:none;-moz-appearance:none;appearance:none}.hotel-page .hero-booking-fields input:focus,.hotel-page .hero-booking-fields select:focus{outline:2px solid var(--orange);outline-offset:1px;border-color:var(--orange)}.hotel-page .hero-booking-go{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1.1rem 1.25rem;font-family:var(--font);font-weight:800;font-size:1.15rem;background:var(--orange);color:#fff;border:0;border-radius:999px;cursor:pointer;transition:background .15s ease,transform .1s ease,box-shadow .15s ease;letter-spacing:.01em;text-align:center;min-height:56px;box-shadow:0 8px 20px #e8761b59;margin-top:.4rem}.hotel-page .hero-booking-go:hover{background:var(--orange-hover);box-shadow:0 10px 26px #e8761b80}.hotel-page .hero-booking-go:active{transform:translateY(1px)}.hotel-page .hero-booking-go:disabled{background:#e8761b99;cursor:not-allowed;box-shadow:none}.hotel-page .hero-booking-hint{margin:.7rem 0 0;font-size:.82rem;color:#ffffffe0;min-height:1.1em;text-align:center}.hotel-page .hero-booking-hint.ok{color:#b9f0c8}.hotel-page .hero-booking-hint.warn{color:#ffd9a8}.hotel-page .hero-booking-hint.error{color:#ffb4a8}.hotel-page .hero-booking-foot{margin:1rem 0 0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.15);font-size:.82rem;color:#ffffffd9;line-height:1.5;text-align:center}@media(max-width:1080px){.hotel-page .hero-booking{width:min(680px,95%)}}@media(max-width:720px){.hotel-page .hero-stage{aspect-ratio:auto;height:clamp(540px,95vw,640px)}.hotel-page .hero-stage-content{align-items:flex-end;padding-bottom:clamp(1rem,4vw,1.5rem)}.hotel-page .hero-booking{width:calc(100% - 2rem);padding:1.4rem 1.25rem 1.2rem;border-radius:12px}.hotel-page .hero-booking h2{font-size:1.4rem}.hotel-page .hero-booking-go{font-size:1.05rem;min-height:52px;padding:.95rem 1.25rem}.hotel-page .hero-booking-fields.three{grid-template-columns:1fr 1fr}}@media(max-width:460px){.hotel-page .hero-booking-fields,.hotel-page .hero-booking-fields.three{grid-template-columns:1fr}.hotel-page .hero-booking h2{font-size:1.25rem;line-height:1.15}.hotel-page .hero-booking-sub{font-size:.88rem;margin-bottom:.75rem}}.hotel-page .section{padding:clamp(3rem,6vw,5.5rem) 0}.hotel-page .section-alt{background:var(--bg-alt)}.hotel-page .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:start}@media(max-width:960px){.hotel-page .grid-2{grid-template-columns:1fr}}.hotel-page .intro-section{background:var(--cream);padding:clamp(3.5rem,8vw,6rem) 0}.hotel-page .intro-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(2rem,5vw,5rem);align-items:start}.hotel-page .intro-section h2{color:var(--blue);font-size:clamp(1.9rem,3.6vw,2.8rem);font-weight:700;line-height:1.1;margin-bottom:0}.hotel-page .intro-section p{font-size:1.05rem;line-height:1.7}.hotel-page .intro-heading{display:flex;flex-direction:column;gap:clamp(1.5rem,3vw,2.5rem)}.hotel-page .intro-logo{display:block;width:100%;max-width:clamp(220px,28vw,380px);height:auto}@media(max-width:900px){.hotel-page .intro-grid{grid-template-columns:1fr}}.hotel-page .photo-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1.5rem}.hotel-page .photo-gallery img{width:100%;aspect-ratio:4 / 3;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius);transition:transform .2s ease}.hotel-page .photo-gallery a:hover img{transform:scale(1.02)}@media(max-width:720px){.hotel-page .photo-gallery{grid-template-columns:repeat(2,1fr)}}.hotel-page .room-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-top:2rem}.hotel-page .room-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .15s ease;display:flex;flex-direction:column;text-decoration:none;color:inherit}.hotel-page .room-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);text-decoration:none}.hotel-page .room-card-image{width:100%;aspect-ratio:4 / 3;-o-object-fit:cover;object-fit:cover;display:block;border-bottom:1px solid var(--border)}.hotel-page .room-card-body{padding:1.1rem 1.25rem 1.35rem;display:flex;flex-direction:column;gap:.35rem}.hotel-page .room-card-body h3{margin:0;color:var(--navy);font-size:1.1rem}.hotel-page .room-card-price{font-size:1rem;color:var(--navy-700);font-weight:600}.hotel-page .room-card-price strong{font-size:1.35rem;font-weight:800;color:var(--navy)}.hotel-page .room-card-meta{font-size:.88rem;color:var(--muted)}.hotel-page .room-card-badge{align-self:flex-start;margin-top:.3rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.25rem .55rem;border-radius:999px}.hotel-page .room-card-badge.ok{background:#e6f7ec;color:#1f7a3a}.hotel-page .room-card-badge.warn{background:#fff1de;color:#a85a0a}.hotel-page .room-card-badge.full{background:#fde7e3;color:#a13b2c}.hotel-page .amenities{margin-top:2rem;padding:1.5rem 1.75rem;background:var(--blue-tint);border-radius:var(--radius-lg);border:1px solid rgba(77,108,147,.18)}.hotel-page .amenity-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.55rem 1.5rem}.hotel-page .amenity-list li{position:relative;padding-left:1.4rem;color:var(--text);font-size:.95rem}.hotel-page .amenity-list li:before{content:"✓";position:absolute;left:0;top:0;color:var(--blue);font-weight:700}.hotel-page .fact-list{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;box-shadow:var(--shadow-sm)}.hotel-page .fact-list li{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--border)}.hotel-page .fact-list li:last-child{border-bottom:none}.hotel-page .fact-list span{color:var(--muted)}.hotel-page .fact-list strong{color:var(--navy);text-align:right}.hotel-page .quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.5rem);margin-top:1.5rem}@media(max-width:900px){.hotel-page .quick-links{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.hotel-page .quick-links{grid-template-columns:1fr}}.hotel-page .quick-link{display:flex;flex-direction:column;justify-content:space-between;padding:1.4rem 1.5rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;text-decoration:none}.hotel-page .quick-link:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--blue-soft);text-decoration:none}.hotel-page .quick-link strong{display:block;color:var(--navy);font-size:1.1rem;margin-bottom:.2rem}.hotel-page .quick-link span{color:var(--muted);font-size:.92rem}.hotel-page .quick-link em{display:inline-block;margin-top:.9rem;color:var(--blue);font-style:normal;font-weight:600;font-size:.9rem}.hotel-page .quick-link-icon{display:block;width:56px;height:56px;margin:-.25rem 0 .75rem;-o-object-fit:contain;object-fit:contain}.hotel-page .quick-link:hover .quick-link-icon,.hotel-page .quick-link:focus-visible .quick-link-icon{transform:scale(1.05);transition:transform .15s ease}.hotel-page .distance-icon{display:block;width:44px;height:44px;margin:-.15rem 0 .55rem;-o-object-fit:contain;object-fit:contain}.hotel-page .distance-grid>a:hover .distance-icon,.hotel-page .distance-grid>a:focus-visible .distance-icon{transform:scale(1.05);transition:transform .15s ease}.hotel-page .page-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(1rem,2.5vw,2.5rem);align-items:center;max-width:var(--container);margin:0 auto;padding:clamp(2rem,5vw,3.5rem) clamp(16px,4vw,32px);background:transparent;border-bottom:none}.hotel-page .page-hero .container{max-width:none;padding:0;margin:0;position:relative;order:1}.hotel-page .page-hero-media{order:2;width:100%;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-alt);aspect-ratio:4 / 3;box-shadow:var(--shadow-md)}.hotel-page .page-hero-media img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.hotel-page .page-hero h1{color:var(--navy);font-size:clamp(1.8rem,4.2vw,2.8rem);margin-bottom:.35em}.hotel-page .page-hero p.lead{color:var(--text);font-size:1.05rem;max-width:56ch;margin:0}.hotel-page .page-hero .eyebrow{color:var(--orange)}@media(max-width:900px){.hotel-page .page-hero{grid-template-columns:1fr;gap:clamp(1.25rem,3vw,2rem);padding:0 0 clamp(1.5rem,4vw,2.5rem)}.hotel-page .page-hero-media{order:-1;border-radius:0;aspect-ratio:16 / 9;box-shadow:none}.hotel-page .page-hero .container{padding:0 clamp(16px,4vw,32px)}}.hotel-page .info-list{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;margin:1rem 0 1.5rem}.hotel-page .info-list li{padding:.5rem 0;border-bottom:1px solid var(--border)}.hotel-page .info-list li:last-child{border-bottom:none}.hotel-page .note{margin-top:1.5rem;padding:1rem 1.25rem;background:var(--sand-soft);border-left:4px solid var(--sand);border-radius:8px;color:var(--text)}.hotel-page .media-img{display:block;width:100%;height:auto;-o-object-fit:cover;object-fit:cover;background:var(--blue-tint);border-radius:var(--radius)}.hotel-page .checkin-times{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:0 0 2rem}.hotel-page .checkin-times>div{background:var(--blue-tint);border:1px solid rgba(77,108,147,.18);border-radius:var(--radius);padding:1.1rem 1.25rem;display:flex;flex-direction:column}.hotel-page .checkin-times span{color:var(--muted);font-size:.85rem}.hotel-page .checkin-times strong{color:var(--navy);font-size:1.2rem;margin-top:.15rem}.hotel-page .steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:2rem 0 0;padding:0;list-style:none}.hotel-page .steps li{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem 1.5rem 1.4rem;position:relative;box-shadow:var(--shadow-sm)}.hotel-page .step-num{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;font-size:.95rem;margin-bottom:.85rem}.hotel-page .steps h3,.hotel-page .steps strong{display:block;font-size:1rem;margin-bottom:.35rem;color:var(--navy)}.hotel-page .steps p{font-size:.92rem;color:var(--muted);margin:0}.hotel-page .distance-grid{margin-top:1.25rem;display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem}@media(max-width:900px){.hotel-page .distance-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.hotel-page .distance-grid{grid-template-columns:1fr}}.hotel-page .distance-grid>a,.hotel-page .distance-grid>div{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.hotel-page .distance-grid>a:hover,.hotel-page .distance-grid>a:focus-visible{border-color:var(--orange);transform:translateY(-2px);box-shadow:0 8px 20px #0f2a441f;outline:none}.hotel-page .distance-grid>a:after{content:"↗";position:absolute;top:.55rem;right:.7rem;font-size:.85rem;color:var(--orange);opacity:.55;transition:opacity .15s ease}.hotel-page .distance-grid>a:hover:after{opacity:1}.hotel-page .distance-grid strong{color:var(--navy);font-size:1.15rem;font-weight:700}.hotel-page .distance-grid span{color:var(--muted);font-size:.9rem;margin-top:.1rem}.hotel-page .history-figure{margin:0}.hotel-page .history-figure figcaption{color:var(--muted);font-size:.88rem;margin-top:.6rem;text-align:center}.hotel-page .history-gallery{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.hotel-page .history-gallery img{width:100%;aspect-ratio:4 / 3;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius);background:var(--blue-tint)}@media(max-width:640px){.hotel-page .history-gallery{grid-template-columns:1fr}}.hotel-page .contact-form{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem 1.75rem;box-shadow:var(--shadow-sm);display:grid;gap:1rem}.hotel-page .contact-form .form-row{display:flex;flex-direction:column;gap:.35rem}.hotel-page .contact-form .form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:640px){.hotel-page .contact-form .form-row-2{grid-template-columns:1fr}}.hotel-page .contact-form label{font-size:.85rem;font-weight:600;color:var(--navy)}.hotel-page .contact-form input,.hotel-page .contact-form select,.hotel-page .contact-form textarea{font:inherit;font-family:var(--font);padding:.7rem .9rem;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);width:100%}.hotel-page .contact-form input:focus,.hotel-page .contact-form select:focus,.hotel-page .contact-form textarea:focus{outline:2px solid var(--orange);outline-offset:1px;border-color:var(--orange)}.hotel-page .legal{max-width:880px}.hotel-page .legal h1{font-size:clamp(1.8rem,4vw,2.4rem);margin-bottom:1.5rem}.hotel-page .legal h2{font-size:1.2rem;margin-top:2rem}.hotel-page .legal h3{font-size:1rem;margin-top:1.5rem;color:var(--navy)}.hotel-page .legal p,.hotel-page .legal li{font-size:.95rem;line-height:1.7;color:var(--text)}.hotel-page .legal ul{margin:0 0 1em 1.25em;padding:0;list-style:disc}.hotel-page .legal ul li{margin:.25em 0}.hotel-page .legal .muted-note{color:var(--muted);font-style:italic;margin-top:2rem}.hotel-page .legal a{color:var(--blue)}.hotel-page .page-hero.book{background:var(--cream);padding:clamp(2.5rem,5vw,4rem) 0 clamp(2rem,4vw,3rem);border-bottom:1px solid var(--border)}.hotel-page .breadcrumb{font-size:.82rem;color:var(--muted);margin-bottom:.9rem;letter-spacing:.04em}.hotel-page .breadcrumb a{color:var(--blue)}.hotel-page .booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:clamp(1.5rem,3vw,2.5rem);align-items:start}@media(max-width:960px){.hotel-page .booking-layout{grid-template-columns:1fr}}.hotel-page .booking-form-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:clamp(1.5rem,3vw,2.25rem);box-shadow:var(--shadow-sm)}.hotel-page .booking-section{padding:1.25rem 0;border-bottom:1px solid var(--border)}.hotel-page .booking-section:first-child{padding-top:0}.hotel-page .booking-section:last-child{padding-bottom:0;border-bottom:none}.hotel-page .booking-section h2{font-size:1.15rem;color:var(--navy);margin:0 0 1rem}.hotel-page .booking-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}@media(max-width:640px){.hotel-page .booking-grid-2{grid-template-columns:1fr}}.hotel-page .booking-note{margin:0 0 1rem;font-size:.9rem;color:var(--muted, #5b6b7c)}.hotel-page .booking-field small{margin-top:.3rem;color:var(--muted, #5b6b7c)}.hotel-page .booking-field{display:flex;flex-direction:column;gap:.35rem}.hotel-page .booking-field label{font-size:.85rem;font-weight:600;color:var(--navy)}.hotel-page .booking-field input,.hotel-page .booking-field select,.hotel-page .booking-field textarea{font:inherit;font-family:var(--font);padding:.7rem .9rem;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);width:100%}.hotel-page .booking-field input:focus,.hotel-page .booking-field select:focus,.hotel-page .booking-field textarea:focus{outline:2px solid var(--orange);outline-offset:1px;border-color:var(--orange)}.hotel-page .room-options{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:640px){.hotel-page .room-options{grid-template-columns:1fr}}.hotel-page .room-option{display:block;cursor:pointer;border:2px solid var(--border);border-radius:var(--radius);padding:.95rem 1.05rem;background:#fff;transition:border-color .15s ease,box-shadow .15s ease;position:relative}.hotel-page .room-option:hover{border-color:var(--blue-soft)}.hotel-page .room-option input[type=radio]{position:absolute;opacity:0}.hotel-page .room-option:has(input:checked){border-color:var(--navy);box-shadow:0 0 0 4px #e8761b40}.hotel-page .room-option-body strong{display:block;color:var(--navy);font-size:1.05rem}.hotel-page .room-option-body .room-price{display:block;margin-top:.2rem;color:var(--navy-700);font-size:.9rem}.hotel-page .room-option-body .room-meta{margin-top:.4rem;color:var(--muted);font-size:.85rem}.hotel-page .consent{display:flex;align-items:flex-start;gap:.6rem;margin-top:.75rem;font-size:.9rem;color:var(--text);line-height:1.45}.hotel-page .consent input[type=checkbox]{margin-top:.25rem;width:18px;height:18px;accent-color:var(--orange)}.hotel-page .booking-summary{background:var(--navy);color:#fff;border-radius:var(--radius-lg);padding:1.5rem 1.6rem;position:sticky;top:24px;box-shadow:var(--shadow-md)}.hotel-page .booking-summary h3{color:#fff;margin:0 0 1rem;font-size:1.1rem}.hotel-page .booking-summary dl{margin:0;display:grid;grid-template-columns:1fr auto;gap:.55rem 1rem}.hotel-page .booking-summary dt{color:#ffffffc7;font-size:.88rem}.hotel-page .booking-summary dd{margin:0;color:#fff;font-weight:600;text-align:right}.hotel-page .summary-lines{margin-top:1rem;padding-top:.85rem;border-top:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;gap:.4rem}.hotel-page .summary-line{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;color:#fff}.hotel-page .summary-line.muted{color:#ffffffc7;font-size:.85rem}.hotel-page .summary-line small{display:block;color:#ffffffa6;font-size:.78rem;font-weight:400;margin-top:.1rem}.hotel-page .summary-line span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.hotel-page .summary-total{margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.18);display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.hotel-page .summary-total dt{color:var(--sand);font-size:.95rem;font-weight:600}.hotel-page .summary-total dd{color:#fff;font-size:1.55rem;font-weight:800;margin:0}.hotel-page .submit-row{margin-top:1.25rem}.hotel-page .submit-row .btn-accent{width:100%;padding:1rem 1.4rem;font-size:1.05rem;font-weight:700}.hotel-page .fine{margin-top:.85rem;font-size:.78rem;color:#ffffffc7;line-height:1.4}.hotel-page .booking-error{margin-top:1.25rem;padding:.85rem 1rem;background:#fde7e3;color:var(--warn);border-radius:10px;font-size:.9rem;font-weight:600}.hotel-page .status-page{max-width:640px;margin:0 auto;padding:clamp(3rem,8vw,6rem) clamp(16px,4vw,32px);text-align:center}.hotel-page .status-icon{width:88px;height:88px;border-radius:50%;display:inline-grid;place-items:center;margin:0 auto 1.5rem;font-size:2.5rem;font-weight:700}.hotel-page .status-icon.ok{background:#e6f7ec;color:#1f7a3a}.hotel-page .status-icon.warn{background:#fff1de;color:#a85a0a}.hotel-page .status-ref{margin:.75rem 0 1.5rem;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:1.15rem;color:var(--navy);background:var(--bg-alt);padding:.55rem 1rem;border-radius:10px;display:inline-block}.hotel-page .status-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}.hotel-page .site-footer{background:var(--navy);color:#ffffffd9;padding:3rem 0 1.5rem;margin-top:3rem}.hotel-page .site-footer a{color:#fff}.hotel-page .site-footer a:hover{color:var(--sand)}.hotel-page .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}@media(max-width:720px){.hotel-page .footer-grid{grid-template-columns:1fr}}.hotel-page .footer-bottom{margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.12);font-size:.85rem;color:#fff9}.hotel-page .footer-grid strong{color:#fff;display:block;margin-bottom:.5rem}.hotel-page .footer-grid ul li{padding:.2rem 0}.hotel-page .site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--border);box-shadow:0 1px #4d6c930a}.hotel-page .header-inner{display:flex;align-items:center;justify-content:space-between;height:var(--header-h);gap:1rem}.hotel-page .brand{display:inline-flex;align-items:center;gap:.65rem;color:var(--navy);text-decoration:none}.hotel-page .brand-logo{height:clamp(64px,8vw,96px);width:auto;-o-object-fit:contain;object-fit:contain}.hotel-page .primary-nav{display:flex;align-items:center;gap:1.5rem}.hotel-page .primary-nav ul{display:flex;gap:1.25rem}.hotel-page .primary-nav ul a{color:var(--navy);font-weight:600;font-size:1rem;padding:.35rem 0}.hotel-page .primary-nav ul a:hover{color:var(--orange);text-decoration:none}.hotel-page .lang-toggle{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--muted)}.hotel-page .lang-toggle a{color:var(--muted);padding:.25rem .35rem;border-radius:6px}.hotel-page .lang-toggle a.is-active{color:var(--orange);font-weight:700}@media(max-width:900px){.hotel-page .primary-nav ul{display:none}.hotel-page .primary-nav{gap:.75rem}}@media(max-width:540px){.hotel-page .brand-logo{height:56px}.hotel-page .header-inner{height:clamp(78px,18vw,96px)}}@media(max-width:720px){.hotel-page .page-hero{padding:clamp(1.5rem,5vw,2.5rem) 0 clamp(1.25rem,4vw,2rem)}}@media(max-width:960px){.hotel-page .booking-summary{position:static}}@media(max-width:720px){.hotel-page .intro-section{padding:clamp(2rem,6vw,3.5rem) 0}.hotel-page .photo-gallery img{aspect-ratio:16 / 10}}@media(max-width:420px){.hotel-page .room-grid,.hotel-page .room-options{grid-template-columns:1fr}}@media(max-width:540px){.hotel-page .top-strip{height:5px}}.hp-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.hotel-page .contact-form .form-error{background:#fdecea;color:#8a1c13;border-radius:8px;padding:.7rem .9rem;margin:0 0 1rem}.hotel-page .form-note{background:#e8f4ec;color:#1d5a33;border-radius:8px;padding:.9rem 1rem}.hotel-page .contact-form .form-hint{font-size:.9rem;color:#5b6b7c;margin:0 0 1rem}
