:root{color-scheme:light;--kas-blue: #0754a6;--kas-navy: #092c5e;--kas-red: #e92732;--kas-red-dark: #c81724;--kas-paper: #f6f5f0;--kas-white: #fff;--kas-muted: #536782;--kas-line: #dce3eb;--font-display: "Playfair Display", Georgia, serif;--font-body: "Plus Jakarta Sans", system-ui, sans-serif;--shell-pad: clamp(16px, 4vw, 36px)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px;overflow-x:clip}body{margin:0;font-family:var(--font-body);background:var(--kas-paper);color:var(--kas-navy);-webkit-font-smoothing:antialiased;overflow-x:clip}body,button,a,input,select{-webkit-tap-highlight-color:transparent;font-family:inherit}a{color:inherit;text-decoration:none}button{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--kas-red);outline-offset:2px}::selection{background:var(--kas-red);color:var(--kas-white)}.shell{width:min(1140px,calc(100% - (var(--shell-pad) * 2)));margin-inline:auto}.section-pad{padding-block:clamp(38px,4.5vw,62px)}.skip-link{position:fixed;top:10px;left:10px;z-index:1000;transform:translateY(-160%);padding:12px 18px;border:2px solid var(--kas-red);background:#fff;color:var(--kas-navy);font-weight:800;border-radius:4px}.skip-link:focus{transform:translateY(0)}html[data-lang=en] [data-i18n=sw],html[data-lang=sw] [data-i18n=en]{display:none!important}html:not([data-lang]) [data-i18n=sw]{display:none!important}.ui-icon{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-arrow{width:15px;height:15px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.topbar{position:relative;z-index:35;background:var(--kas-navy);color:#d9e8f7;font-size:10.5px;letter-spacing:.03em;border-bottom:1px solid rgba(255,255,255,.08)}.topbar-inner{min-height:32px;padding-block:4px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}.topbar-location{display:inline-flex;align-items:center;gap:7px;margin:0;font-weight:600}.topbar-location svg,.location-icon svg{width:14px;height:14px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8}.topbar-message{margin:0;color:#fff;font-size:10.5px;font-weight:600}.site-header{position:sticky;top:0;z-index:40;background:#fffffff5;border-bottom:1px solid rgba(9,44,94,.1);backdrop-filter:blur(16px)}.header-inner{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:clamp(12px,2vw,24px)}.brand{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto}.brand-logo{width:clamp(48px,4.5vw,60px);height:clamp(34px,3.2vw,42px);flex:0 0 auto;object-fit:contain}.brand-copy{display:flex;flex-direction:column;gap:2px}.brand-subtitle{color:#667790;font-size:clamp(7px,.7vw,8px);font-weight:800;letter-spacing:.18em;white-space:nowrap}.main-nav,.header-actions{display:flex;align-items:center}.main-nav{gap:clamp(16px,2.2vw,30px);margin-left:auto}.main-nav a:not(.button){position:relative;color:#314760;font-size:12.5px;font-weight:700;white-space:nowrap;transition:color .2s ease}.main-nav a:not(.button):hover,.main-nav a[aria-current=page]{color:var(--kas-red-dark)}.main-nav a:not(.button):after{position:absolute;content:"";height:2px;left:0;right:100%;bottom:-7px;background:var(--kas-red-dark);transition:right .2s ease}.main-nav a:not(.button):hover:after,.main-nav a[aria-current=page]:after{right:0}.main-nav .instagram-link{width:32px;height:32px;display:inline-grid;place-items:center;color:#536782}.main-nav .instagram-link:after{display:none!important}.instagram-icon,.main-nav .instagram-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}.main-nav .instagram-link:hover{color:var(--kas-red-dark)}.mobile-nav-cta,.main-nav .mobile-nav-cta,.site-header .main-nav .mobile-nav-cta{display:none!important}.header-actions{gap:12px}.language-switch{padding:3px;display:inline-flex;gap:2px;border-radius:99px;background:#edf2f7;border:1px solid #dde6f0}.language-switch button{min-width:34px;min-height:28px;padding:4px 9px;border:0;border-radius:99px;color:#51657f;background:transparent;cursor:pointer;font-size:10.5px;font-weight:800;transition:background .15s ease,color .15s ease}.language-switch button[aria-pressed=true]{background:var(--kas-blue);color:#fff}.menu-toggle{display:none}.button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 18px;border:1px solid transparent;border-radius:6px;font-size:12.5px;font-weight:800;letter-spacing:.015em;text-align:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #092c5e29}.button-small{min-height:34px;padding:5px 13px;font-size:11.5px}.button-red{background:var(--kas-red-dark);color:#fff}.button-red:hover{background:#a90f1a}.button-ghost{border-color:#ffffff73;color:#fff;background:#ffffff0f}.button-ghost:hover{background:#ffffff24}.button-blue{background:var(--kas-blue);color:#fff}.button-blue:hover{background:#063e80}.button-outline{border-color:#b7c8dc;color:var(--kas-navy);background:#fff}.button-outline:hover{background:#e9f0f8}.hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:radial-gradient(circle at 75% 35%,rgba(11,74,150,.35),transparent 52%),radial-gradient(circle at 20% 85%,rgba(233,39,50,.1),transparent 45%),linear-gradient(135deg,#071f40,#092c5e 55%,#0b3d7a)}.hero-grid{position:relative;z-index:1;min-height:auto;display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(24px,3.5vw,44px);padding-block:clamp(28px,3.5vw,44px)}.hero-copy{width:100%;max-width:520px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0;color:var(--kas-red-dark);font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.eyebrow-light{color:#dbeafe}.eyebrow-dot{width:7px;height:7px;display:inline-block;flex:0 0 auto;border-radius:50%;background:var(--kas-red);box-shadow:0 0 0 3px #e9273233}.hero h1{margin:12px 0 0;font-family:var(--font-display);font-size:clamp(26px,2.5vw,38px);font-weight:700;letter-spacing:-.025em;line-height:1.15}.hero h1 em{color:#93c5fd;font-weight:600}.section-heading h2,.visit-copy h2{margin:10px 0 0;font-family:var(--font-display);font-size:clamp(22px,2vw,30px);font-weight:700;letter-spacing:-.02em;line-height:1.2}.section-heading h2 em,.visit-copy h2 em{color:var(--kas-red-dark);font-weight:600}.hero-description{max-width:470px;margin:12px 0 0;color:#e2ecf7;font-size:13.5px;line-height:1.65}.hero-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.hero-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:5px;background:#08234aa6;border:1px solid rgba(147,197,253,.25);color:#eef4fb;font-size:10.5px;font-weight:700;letter-spacing:.01em;backdrop-filter:blur(8px)}.hero-badge svg{width:13px;height:13px;flex:0 0 auto;fill:none;stroke:#93c5fd;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.hero-actions,.visit-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.hero-note{display:block;margin:10px 0 0;color:#c8daee;font-size:11px;line-height:1.5}.hero-art{position:relative;min-width:0;height:clamp(280px,25vw,360px);margin:0;border-radius:10px;overflow:hidden;background:#072247;border:1px solid rgba(255,255,255,.16);box-shadow:0 16px 36px #04102461}.hero-art-img{display:block;width:100%;height:100%;object-fit:cover;object-position:45% 26%;filter:contrast(1.04) saturate(1.06);transition:transform .4s ease}.hero-art:hover .hero-art-img{transform:scale(1.02)}.booking-bar-wrap{position:relative;z-index:25;background:linear-gradient(180deg,#071f40 50%,#fff 50%);padding-block:4px 10px}.booking-bar{background:#fff;border:1px solid #d5e0ec;border-top:3px solid var(--kas-red);border-radius:8px;padding:clamp(14px,1.6vw,18px);box-shadow:0 12px 32px #092c5e1a}.booking-bar-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:10px}.booking-field{display:flex;flex-direction:column;gap:4px}.booking-field label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--kas-muted)}.booking-field input,.booking-field select{height:38px;width:100%;padding:0 10px;border:1px solid #cbd7e6;border-radius:5px;background:#f8fafd;color:var(--kas-navy);font-size:12px;font-weight:700}.booking-bar-submit{height:38px;white-space:nowrap;font-size:12px;padding-inline:16px}.stay-section{background:#fff}.stay-feature{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);align-items:center;gap:clamp(24px,3.5vw,48px)}.stay-feature-image{min-width:0;margin:0}.stay-carousel-stage{position:relative;aspect-ratio:16 / 10.5;max-height:350px;width:100%;overflow:hidden;border-radius:8px;background:var(--kas-navy)}.stay-carousel-track{height:100%;display:flex;transition:transform .55s ease}.stay-carousel-slide{position:relative;min-width:100%;height:100%;margin:0;overflow:hidden}.stay-carousel-slide img{display:block;width:100%;height:100%;object-fit:cover}.stay-carousel-slide figcaption{position:absolute;right:0;bottom:0;left:0;padding:38px 16px 14px;color:#fff;background:linear-gradient(transparent,#081b39e0);font-size:12px;line-height:1.5}.stay-carousel-arrow,.hotel-carousel-arrow{position:absolute;z-index:2;top:50%;width:36px;height:36px;display:grid;place-items:center;transform:translateY(-50%);border:0;border-radius:6px;color:var(--kas-navy);background:#fffffff0;box-shadow:0 4px 14px #092c5e33;cursor:pointer;transition:background .15s ease,color .15s ease}.stay-carousel-arrow:hover,.hotel-carousel-arrow:hover{color:var(--kas-red-dark);background:#fff}.stay-carousel-arrow svg,.hotel-carousel-arrow svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2}.stay-carousel-arrow.prev{left:10px}.stay-carousel-arrow.next{right:10px}.stay-carousel-footer,.hotel-carousel-footer{display:flex;align-items:center;justify-content:center;padding-top:8px}.stay-carousel-dots,.hotel-carousel-dots{display:flex;align-items:center;gap:2px}.stay-carousel-dot,.hotel-carousel-dot{width:24px;height:24px;padding:0;border:0;background:transparent;display:inline-grid;place-items:center;cursor:pointer}.stay-carousel-dot:before,.hotel-carousel-dot:before{content:"";width:7px;height:7px;border-radius:99px;background:#aab8ca;transition:width .2s ease,background .2s ease}.stay-carousel-dot[aria-current=true]:before,.hotel-carousel-dot[aria-current=true]:before{width:20px;background:var(--kas-red)}.stay-feature-copy{max-width:500px}.stay-feature-copy h2{margin:10px 0;font-family:var(--font-display);font-size:clamp(22px,2vw,30px);line-height:1.15;letter-spacing:-.025em}.stay-feature-copy h2 em{color:var(--kas-red-dark)}.stay-feature-copy>p:not(.eyebrow){max-width:460px;margin:0 0 14px;color:var(--kas-muted);font-size:clamp(13px,1.1vw,14px);line-height:1.65}.amenity-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 24px;padding:0;list-style:none}.amenity-pill{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:6px;background:#f4f7fb;border:1px solid #e2eaf3;font-size:12px;font-weight:700;color:var(--kas-navy)}.amenity-icon{width:28px;height:28px;flex:0 0 auto;display:grid;place-items:center;border-radius:5px;background:#e6eef8;color:var(--kas-blue)}.amenity-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.room-cards-header{margin-top:clamp(34px,4.5vw,52px);margin-bottom:18px;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}.room-cards-header h3{margin:6px 0 0;font-family:var(--font-display);font-size:clamp(19px,1.8vw,24px);color:var(--kas-navy)}.room-cards-header>p{margin:0;font-size:12.5px;color:var(--kas-muted)}.room-cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.room-card{display:flex;flex-direction:column;border:1px solid #dde6f0;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 8px 22px #092c5e0f;transition:transform .2s ease,box-shadow .2s ease}.room-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px #092c5e1c}.room-card-media{position:relative;aspect-ratio:16 / 10;overflow:hidden;background:var(--kas-navy)}.room-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.room-card:hover .room-card-media img{transform:scale(1.04)}.room-card-badge{position:absolute;top:10px;left:10px;padding:4px 9px;border-radius:4px;background:#092c5eeb;backdrop-filter:blur(6px);color:#fff;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.room-card-body{padding:16px 18px;display:flex;flex-direction:column;flex:1}.room-card-body h4{margin:0 0 6px;font-family:var(--font-display);font-size:17px;color:var(--kas-navy)}.room-card-body p{margin:0 0 10px;font-size:12px;line-height:1.55;color:var(--kas-muted)}.room-card-list{margin:0 0 14px;padding:10px 0 0;border-top:1px solid #edf2f7;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px;font-size:11px;font-weight:700;color:#2b4363}.room-card-list li{display:flex;align-items:center;gap:6px}.room-card-list li:before{content:"";width:5px;height:5px;flex:0 0 auto;border-radius:50%;background:var(--kas-red-dark)}.room-card-action{margin-top:auto;width:100%}.section-heading{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 32px;margin-bottom:clamp(20px,3vw,32px)}.section-heading h2{max-width:620px;margin-top:8px;font-family:var(--font-display);font-size:clamp(22px,2vw,30px);line-height:1.18}.section-heading-note{max-width:380px;margin:0;color:var(--kas-muted);font-size:13px;line-height:1.6}.discover-section{background:var(--kas-paper);color:var(--kas-navy)}.facility-cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:28px}.facility-card{display:grid;grid-template-columns:140px minmax(0,1fr);background:#fff;border:1px solid #dde5ef;border-radius:8px;overflow:hidden;box-shadow:0 6px 20px #092c5e0d}.facility-card-img{width:100%;height:100%;min-height:135px;object-fit:cover}.facility-card-body{padding:14px 16px;display:flex;flex-direction:column;justify-content:center}.facility-card-tag{display:inline-block;margin-bottom:4px;color:var(--kas-red-dark);font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.facility-card-body h3{margin:0 0 6px;font-family:var(--font-display);font-size:16px;line-height:1.25;color:var(--kas-navy)}.facility-card-body p{margin:0;font-size:12px;line-height:1.55;color:var(--kas-muted)}.hotel-carousel{width:100%;margin-inline:auto}.hotel-carousel-stage{position:relative;overflow:hidden;aspect-ratio:16 / 8.5;max-height:380px;width:100%;border-radius:8px;background:var(--kas-navy)}.hotel-carousel-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .55s ease,visibility .55s}.hotel-carousel-slide.is-active{opacity:1;visibility:visible}.hotel-carousel-slide img{display:block;width:100%;height:100%;object-fit:cover}.hotel-carousel-caption{position:absolute;right:0;bottom:0;left:0;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 16px;padding:38px 20px 16px;color:#fff;background:linear-gradient(transparent,#081b39e0);font-size:12px}.hotel-carousel-caption strong{font-family:var(--font-display);font-size:clamp(16px,1.8vw,20px);font-weight:600;line-height:1.2}.hotel-carousel-arrow.prev{left:14px}.hotel-carousel-arrow.next{right:14px}.menu-entry-section{background:#eaf0f6}.dish-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.dish-preview-card{background:#fff;border:1px solid #d7e2ee;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 6px 16px #092c5e0d;transition:transform .2s ease}.dish-preview-card:hover{transform:translateY(-3px)}.dish-preview-card img{width:100%;aspect-ratio:4 / 3;object-fit:cover;background:#dfe7f1}.dish-preview-body{padding:12px 14px 14px;display:flex;flex-direction:column;flex:1}.dish-preview-cat{font-size:10px;font-weight:700;color:var(--kas-muted);margin-bottom:3px}.dish-preview-body h3{margin:0 0 8px;font-size:14px;font-weight:800;color:var(--kas-navy);line-height:1.35}.dish-preview-footer{margin-top:auto;padding-top:8px;border-top:1px solid #edf2f7;display:flex;align-items:center;justify-content:space-between}.dish-preview-price{font-size:12.5px;font-weight:800;color:var(--kas-red-dark)}.dish-preview-link{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:800;color:var(--kas-blue)}.dish-preview-link:hover{color:var(--kas-red-dark)}.menu-entry-link{min-height:140px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 24px;padding:clamp(20px,3vw,32px);border-radius:8px;color:#fff;background:var(--kas-navy);transition:background .2s ease,transform .2s ease}.menu-entry-link:hover{transform:translateY(-2px);background:#073c7c}.menu-entry-copy{display:grid;gap:6px}.menu-entry-eyebrow{color:#d3e2f4;font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.menu-entry-title{font-family:var(--font-display);font-size:clamp(20px,2.2vw,28px);font-weight:600;line-height:1.15}.menu-entry-description{color:#e1eaf4;font-size:13px;line-height:1.6}.menu-entry-action{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:8px 18px;border-radius:6px;color:#fff;background:var(--kas-red-dark);font-size:12px;font-weight:800;white-space:nowrap}.menu-entry-action svg{transition:transform .2s ease}.menu-entry-link:hover .menu-entry-action svg{transform:translate(4px)}.events-section{background:#fff}.events-heading{margin-bottom:26px}.event-tabs{display:flex;flex-wrap:wrap;gap:4px 8px;border-bottom:1px solid var(--kas-line)}.event-tab{min-height:46px;padding:12px 16px;border:0;border-bottom:2px solid transparent;color:#59677b;background:transparent;font:inherit;font-size:12.5px;font-weight:800;cursor:pointer;transition:color .15s ease,border-color .15s ease}.event-tab[aria-selected=true]{border-color:var(--kas-red);color:var(--kas-blue)}.event-panel{display:flex;align-items:stretch;flex-direction:column;gap:24px;padding:26px 0 8px}.event-panel[hidden]{display:none}.event-content{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(24px,3.5vw,34px);align-items:stretch}.event-history-card{min-width:0;display:grid;grid-template-columns:minmax(130px,170px) minmax(0,1fr);align-items:center;gap:clamp(14px,2vw,20px);padding:14px;border:1px solid #e1e8f0;border-radius:8px;background:#fbfcfe}.event-history-poster{display:block;width:100%;height:auto;max-height:250px;border-radius:6px;object-fit:cover;box-shadow:0 4px 14px #092c5e1a}.event-history-copy h3,.event-host-card h3{margin:0 0 6px;color:var(--kas-navy);font-family:var(--font-display);font-size:17px;font-weight:600;line-height:1.25}.event-history-copy p,.event-host-card p{margin:0 0 10px;color:var(--kas-muted);font-size:12.5px;line-height:1.6}.event-perks{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 10px;padding:0;list-style:none}.event-perks li{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;padding:4px 8px;border-radius:4px;background:#edf3fa;color:var(--kas-navy)}.event-perks li svg{width:12px;height:12px;flex:0 0 auto;fill:none;stroke:var(--kas-blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.event-history-copy time{color:#475970;font-size:11.5px;font-weight:800}.event-host-card{padding:18px 20px;border-radius:8px;background:var(--kas-navy);color:#fff;display:flex;flex-direction:column;justify-content:space-between}.event-host-card h3{color:#fff}.event-host-card p{color:#d8e4f2}.event-host-list{margin:0 0 14px;padding:0;list-style:none;display:grid;gap:7px;font-size:12px;color:#eef4fb}.event-host-list li{display:flex;align-items:center;gap:8px}.event-host-list li:before{content:"";width:5px;height:5px;flex:0 0 auto;border-radius:50%;background:var(--kas-red)}.event-packages-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.event-package-card{padding:18px;border:1px solid #dde6f0;border-top:3px solid var(--kas-blue);border-radius:8px;background:#fbfcfe}.event-package-card h3{margin:4px 0 6px;font-family:var(--font-display);font-size:17px;color:var(--kas-navy)}.event-package-card p{margin:0;font-size:12px;line-height:1.6;color:var(--kas-muted)}.event-status{display:inline-flex;gap:4px;margin-bottom:6px;color:var(--kas-red-dark);font-size:9.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.event-status-light{color:#ff8a92}.visit-section{background:var(--kas-paper)}.visit-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(24px,3.5vw,44px)}.visit-copy h2{margin-top:10px;color:var(--kas-navy);font-family:var(--font-display);font-size:clamp(22px,2vw,30px);line-height:1.18}.visit-copy>p:not(.eyebrow){max-width:460px;margin-top:10px;color:var(--kas-muted);font-size:13.5px;line-height:1.65}.contact-direct-list{margin:16px 0 0;padding:12px 14px;border-radius:8px;background:#fff;border:1px solid #dce5ef;display:grid;gap:10px;font-size:12px}.contact-direct-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.contact-row-label{display:inline-flex;align-items:center;gap:8px;color:var(--kas-navy);font-weight:800}.contact-row-icon{width:24px;height:24px;border-radius:5px;background:#eaf1f9;color:var(--kas-blue);display:inline-grid;place-items:center}.contact-row-icon svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.contact-direct-row a{color:var(--kas-blue);font-weight:800}.contact-direct-row a:hover{color:var(--kas-red-dark)}.location-card{padding:clamp(14px,2vw,20px);overflow:hidden;border:1px solid #dfe6ee;border-radius:8px;background:#fff;box-shadow:0 12px 32px #092c5e12}.location-showcase{display:grid;grid-template-columns:1fr 1.15fr;gap:12px;margin-top:12px}.location-signpost{margin:0;border-radius:6px;overflow:hidden;position:relative;min-height:190px;background:var(--kas-navy)}.location-signpost img{width:100%;height:100%;object-fit:cover}.location-signpost figcaption{position:absolute;inset:auto 0 0;padding:20px 10px 8px;background:linear-gradient(transparent,#092c5ee6);color:#fff;font-size:10.5px;font-weight:700}.location-map-embed{border-radius:6px;overflow:hidden;min-height:190px;border:1px solid #d5e0ec;background:#e8eef5}.location-map-embed iframe{width:100%;height:100%;min-height:190px;border:0;display:block}.location-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.location-card-badge{display:inline-flex;align-items:center;gap:8px}.location-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--kas-red-dark)}.location-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}.location-label{color:var(--kas-blue);font-size:9.5px;font-weight:900;letter-spacing:.16em}.location-region-tag{font-size:10.5px;font-weight:800;color:var(--kas-muted);letter-spacing:.06em}.location-town{margin:8px 0 0;color:var(--kas-navy);font-family:var(--font-display);font-size:clamp(20px,2vw,24px);font-weight:700;letter-spacing:-.025em}.location-town span{color:var(--kas-red)}.map-note{margin:8px 0 0;color:var(--kas-muted);font-size:11.5px;line-height:1.55}.menu-section{background:#eaf0f6;padding-bottom:120px}.menu-section h1{margin:10px 0 0;color:var(--kas-navy);font-family:var(--font-display);font-size:clamp(24px,2.8vw,34px);line-height:1.15}.menu-section h1 em{color:var(--kas-red-dark)}.menu-intro{max-width:420px;margin:0;color:var(--kas-muted);font-size:13px;line-height:1.65}.menu-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.menu-category-nav-title{margin:0;color:var(--kas-muted);font-size:13px;font-weight:700}.menu-side-picker{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 14px;background:#fff;border:1px solid #d5deea;border-radius:6px;font-size:12px;font-weight:700;color:var(--kas-navy)}.menu-side-picker label{display:inline-flex;align-items:center;gap:7px}.menu-side-picker svg{width:15px;height:15px;color:var(--kas-blue);fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.menu-side-picker select{padding:5px 10px;border:1px solid #cbd7e6;border-radius:4px;background:#f8fafd;color:var(--kas-navy);font-weight:800;font-size:12px}.menu-category-nav{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin:0 0 32px}.menu-category-nav a{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border:1px solid #d5deea;border-radius:6px;color:var(--kas-navy);background:#fff;font-size:13px;font-weight:800;transition:border-color .2s,box-shadow .2s,transform .2s}.menu-category-nav a:hover{transform:translateY(-2px);border-color:var(--kas-blue);box-shadow:0 8px 20px #092c5e14}.menu-category-nav-count{color:#64748b;font-size:11px;font-weight:600;white-space:nowrap}.menu-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.menu-category{min-width:0;padding:clamp(18px,2.5vw,24px) clamp(16px,2.5vw,24px) 12px;border-top:3px solid var(--kas-red);border-radius:0 0 8px 8px;background:#fff;box-shadow:0 8px 25px #092c5e12;scroll-margin-top:104px}.menu-category-heading{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid #e8edf2}.menu-category-number{color:var(--kas-red);font-family:var(--font-display);font-size:14px;font-weight:700}.menu-category-heading h2{flex:1;margin:0;color:var(--kas-navy);font-family:var(--font-display);font-size:clamp(19px,2vw,22px)}.menu-category-count{color:var(--kas-muted);font-size:11px;font-weight:700;white-space:nowrap}.menu-category-note{margin:12px 0 0;padding:8px 12px;border-radius:4px;background:#f5f8fc;color:var(--kas-muted);font-size:12px;line-height:1.6}.menu-item-list{margin:0;padding:0;list-style:none}.menu-category-note+.menu-item-list{margin-top:6px}.menu-item{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #edf1f5}.menu-item:last-child{border-bottom:0}.menu-item-photo{width:64px;height:64px;border-radius:6px;object-fit:cover;background:#eaf0f6}.menu-item-details{min-width:0}.menu-item-details h3{margin:0;color:#1e3756;font-size:14px;font-weight:800;line-height:1.4}.menu-item-details p{margin:4px 0 0;color:var(--kas-muted);font-size:12px;line-height:1.55}.variant-group{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.menu-item-action{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.menu-item-price{color:var(--kas-navy);font-size:13px;font-weight:800;white-space:nowrap}.menu-item-buttons{display:flex;align-items:center;gap:6px}.menu-add-btn{min-height:30px;padding:4px 10px;border-radius:4px;background:#edf3fa;border:1px solid #cbd9ea;color:var(--kas-navy);font-size:11.5px;font-weight:800;cursor:pointer;transition:background .15s ease,color .15s ease}.menu-add-btn:hover{background:var(--kas-blue);border-color:var(--kas-blue);color:#fff}.menu-order-link{min-height:30px;padding:4px 10px;border-radius:4px;background:#fdf2f3;border:1px solid #f7d6d8;display:inline-flex;align-items:center;gap:5px;color:var(--kas-red-dark);font-size:11.5px;font-weight:800;white-space:nowrap;transition:background .15s ease,color .15s ease}.menu-order-link:hover{background:var(--kas-red-dark);border-color:var(--kas-red-dark);color:#fff}.menu-footnote{margin:22px 0 0;color:var(--kas-muted);font-size:12px;line-height:1.7}.order-cart-bar{position:fixed;bottom:16px;left:50%;transform:translate(-50%);z-index:50;width:min(860px,calc(100% - 28px));background:var(--kas-navy);color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:12px 18px;box-shadow:0 18px 40px #092c5e59;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.order-cart-bar[hidden]{display:none!important}.order-cart-summary{display:flex;flex-direction:column;gap:2px}.order-cart-title{font-size:13px;font-weight:800;color:#fff}.order-cart-items{font-size:11.5px;color:#cbd9ea;max-width:460px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-cart-actions{display:flex;align-items:center;gap:10px}.order-cart-clear{padding:7px 12px;border-radius:6px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#d8e4f2;font-size:11.5px;font-weight:700;cursor:pointer}.site-footer{color:#d4dfeb;background:#071f42}.footer-main{min-height:104px;padding-block:24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;border-bottom:1px solid rgba(255,255,255,.14)}.footer-brand .brand-logo{background:#fff;padding:5px 9px;border-radius:6px}.footer-brand .brand-subtitle{color:#9eb4cd}.footer-main>p,.footer-main>a:not(.brand){margin:0;color:#cfdbeb;font-size:12.5px}.footer-main>a:not(.brand):hover,.footer-bottom a:hover{color:#fff}.footer-main>a:not(.brand){display:inline-flex;align-items:center;gap:7px}.footer-bottom{min-height:50px;padding-block:12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;color:#b7c5d6;font-size:11.5px}.back-top-link{display:inline-flex;align-items:center;gap:5px;font-weight:700}@media (max-width: 960px){html{scroll-padding-top:76px}.header-actions{margin-left:auto}.header-actions>.button{display:none}.menu-toggle{width:42px;height:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid #d9e2ec;border-radius:6px;background:#fff;cursor:pointer;order:3}.menu-toggle span{width:18px;height:2px;background:var(--kas-navy);transition:transform .2s ease}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.main-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:8px var(--shell-pad) 18px;background:#fff;border-bottom:1px solid var(--kas-line);box-shadow:0 16px 28px #092c5e1f}.main-nav.is-open{display:flex}.main-nav a:not(.button){padding:13px 4px;border-bottom:1px solid #edf1f5;font-size:13.5px}.main-nav a:not(.button):after{display:none}.main-nav .instagram-link{width:auto;height:auto;display:inline-flex;justify-content:flex-start;gap:8px;padding:13px 4px}.mobile-nav-cta,.main-nav .mobile-nav-cta,.site-header .main-nav .mobile-nav-cta{display:inline-flex!important;margin-top:10px;width:100%}.hero-grid{grid-template-columns:1fr;min-height:0;gap:20px;padding-block:22px 28px}.hero-copy{max-width:none}.hero-description{max-width:600px}.hero-art{height:clamp(240px,46vw,320px)}.booking-bar-form{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-bar-submit{grid-column:span 2;width:100%}.stay-feature{grid-template-columns:1fr;gap:24px}.stay-feature-copy{max-width:680px}.stay-carousel-stage{max-height:320px}.room-cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.facility-cards-grid{grid-template-columns:1fr}.dish-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-content{grid-template-columns:1fr;gap:22px}.event-packages-grid,.menu-category-grid{grid-template-columns:1fr}.visit-grid{grid-template-columns:1fr;gap:32px}.visit-copy>p:not(.eyebrow){max-width:620px}}@media (max-width: 640px){.topbar-inner{justify-content:center;text-align:center;gap:4px 12px}.topbar-message{display:none}.booking-bar-form{grid-template-columns:1fr}.booking-bar-submit{grid-column:1}.amenity-pills,.room-cards-grid{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:flex-start;gap:12px}.facility-card{grid-template-columns:1fr}.facility-card-img{aspect-ratio:16 / 9;max-height:200px}.hotel-carousel{width:100%}.hotel-carousel-stage{aspect-ratio:4 / 3;border-radius:0}.hotel-carousel-caption{padding:36px 16px 14px}.dish-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.menu-entry-link{flex-direction:column;align-items:flex-start}.menu-entry-action{width:100%}.event-tabs{gap:0}.event-tab{flex:1;padding-inline:8px;font-size:11px;text-align:center}.event-history-card{grid-template-columns:110px minmax(0,1fr);align-items:start;padding:14px}.location-showcase{grid-template-columns:1fr}.menu-category-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.menu-item{grid-template-columns:56px minmax(0,1fr);gap:10px 12px}.menu-item-photo{width:56px;height:56px;grid-row:span 2;align-self:start}.menu-item-action{grid-column:2;flex-direction:row;align-items:center;justify-content:space-between;width:100%;padding-top:2px}.order-cart-bar{flex-direction:column;align-items:stretch}.order-cart-actions{justify-content:space-between}.footer-main{flex-direction:column;align-items:flex-start}}@media (max-width: 400px){.brand-subtitle{letter-spacing:.12em}.hero-actions,.visit-actions{flex-direction:column;align-items:stretch;width:100%}.hero-actions .button,.visit-actions .button{width:100%}.dish-preview-grid,.event-history-card{grid-template-columns:1fr}.event-history-poster{max-width:200px}.menu-category-nav{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
