:root{--paper:#f3f7fc;--ink:#0f1f3a;--green:#0b2447;--muted:#485b78;--line:#c9d6e8;--serif:"Segoe UI",system-ui,-apple-system,Helvetica,Arial,sans-serif}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 system-ui,sans-serif}a{color:inherit;text-underline-offset:.3em}img{display:block;max-width:100%}:focus-visible{outline:3px solid #2f80ed;outline-offset:4px}.skip{position:absolute;z-index:5;top:0;left:1rem;padding:.6rem 1rem;background:#fff;transform:translateY(-120%)}.skip:focus{transform:none}.header,.footer{display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem;padding:1.1rem clamp(1.25rem,5vw,5rem)}.header nav,.header-actions,.languages,.legal{display:flex;align-items:center;gap:clamp(.65rem,2vw,1.6rem);flex-wrap:wrap}.header nav a{font-size:.9rem;text-decoration:none}.header nav a:hover,.header nav a[aria-current]{text-decoration:underline}.brand{display:inline-flex;align-items:center;gap:.65rem;font:1.65rem/1.1 var(--serif);text-decoration:none;white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:.9rem;background:var(--green);color:#fff;text-decoration:none;padding:.85rem 1.3rem;border-radius:.15rem;font-weight:650;font-size:.88rem}.button:hover{background:#1f4a8a}.hero{position:relative;display:grid;align-items:end;isolation:isolate;min-height:clamp(32rem,76svh,53rem);color:#fff;background:#12294d}.hero-image,.hero:after{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.hero-image{object-fit:cover;object-position:center 58%}.hero:after{content:"";background:linear-gradient(82deg,#06142ed9,#0b24474d 60%,transparent 90%),linear-gradient(0deg,#06142e8c,transparent 65%)}.hero-copy{padding:clamp(2rem,7vw,7rem);max-width:62rem}.hero-copy>p:not(.eyebrow){max-width:34rem;font-size:clamp(1rem,2vw,1.2rem);margin:1.2rem 0 1.7rem}.hero .button,.booking .button{color:var(--green);background:var(--paper)}.hero .button:hover,.booking .button:hover{background:#cfe3fb}h1,h2{font-family:var(--serif);font-weight:700;line-height:1.08;letter-spacing:-.03em;margin:.25em 0}h1{font-size:clamp(3.1rem,7vw,7rem)}h2{font-size:clamp(2.2rem,4.5vw,4.2rem)}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:.72rem;font-weight:750;margin:0 0 1rem}.wrap{width:min(100% - 2.5rem,76rem);margin-inline:auto}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding:2rem 0;border-bottom:1px solid var(--line);text-align:center}.facts>div+div{border-left:1px solid var(--line)}.facts strong,.facts span{display:block}.fact-icon{display:block;width:2.4rem;height:2.4rem;margin:0 auto .6rem;padding:.55rem;box-sizing:content-box;border-radius:50%;background:#e1ecf9;fill:none;stroke:var(--green);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.facts strong{font:2rem var(--serif)}.facts span{font-size:.82rem;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(2rem,7vw,7rem);align-items:center;padding-block:clamp(3rem,8vw,7rem)}.split p:not(.eyebrow),.page-heading>p:not(.eyebrow){color:var(--muted);max-width:39rem}.split img{width:100%;aspect-ratio:4/3;object-fit:cover}.stay{display:grid;grid-template-columns:repeat(12,1fr);align-items:center;padding-block:clamp(3rem,8vw,7rem)}.stay-media{grid-column:1/8;grid-row:1;position:relative;margin:0 0 3rem}.stay-media>img:first-child{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:.4rem}.stay-media-small{position:absolute;right:-1.5rem;bottom:-3rem;width:42%;aspect-ratio:1;object-fit:cover;border:.5rem solid var(--paper);border-radius:.4rem}.stay-card{grid-column:7/13;grid-row:1;position:relative;z-index:1;background:linear-gradient(135deg,#0b2447,#1b4a8f);color:#fff;padding:clamp(1.75rem,4vw,3.25rem);border-radius:.4rem;box-shadow:0 1.5rem 3rem #0b244740}.stay-card h2{font-size:clamp(1.9rem,3.5vw,3rem)}.stay-card p:not(.eyebrow){color:#dbe8fa}.stay-points{list-style:none;padding:0;margin:1.5rem 0 2rem;display:grid;gap:.9rem}.stay-points li{border-left:3px solid #6fb1ff;padding-left:1rem}.stay-points strong,.stay-points span{display:block}.stay-points span{font-size:.9rem;color:#dbe8fa}.stay-card .button{color:var(--green);background:var(--paper)}.stay-card .button:hover{background:#cfe3fb}@media(max-width:880px){.stay{display:block}.stay-media{margin:0 0 -3rem}.stay-media-small{right:.75rem;bottom:-2rem;width:36%}.stay-card{margin:4rem .75rem 0}}.text-link{display:inline-block;font-weight:650;margin:.5rem 0}.amenities{padding:clamp(2rem,6vw,5rem) 0;border-top:1px solid var(--line)}.amenities ul{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;padding:0;list-style:none}.amenities li{padding:.85rem 1rem;background:#e1ecf9;border-left:3px solid #2f80ed;border-radius:.15rem}.booking{text-align:center;background:linear-gradient(135deg,#0b2447,#1b4a8f);color:#fff;padding:clamp(3rem,8vw,7rem) 1.25rem}.booking h2{max-width:16ch;margin:.3em auto .65em}.footer{padding-block:2rem;flex-wrap:wrap}.footer p{margin:.4rem 0 0;font-size:.72rem;letter-spacing:.1em}.page-heading{padding-top:clamp(3rem,8vw,7rem)}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem;padding-block:2rem clamp(3rem,8vw,6rem)}.gallery figure{margin:0}.photo{display:block;overflow:hidden;background:#dce8f7}.photo img{width:100%;aspect-ratio:3/2;object-fit:cover}figcaption{margin-top:.55rem;color:var(--muted);font-size:.9rem}.lightbox{padding:0;border:0;background:#06142e;color:#fff;max-width:94vw;max-height:94vh;overflow:visible}.lightbox::backdrop{background:#040d1fe6}.lightbox img{max-width:94vw;max-height:88vh;object-fit:contain}.lightbox form{position:absolute;top:.5rem;right:.5rem}.lightbox button{border:0;border-radius:50%;width:2.8rem;height:2.8rem;background:var(--paper);color:var(--ink);font-size:1.8rem;cursor:pointer}.cs{--gold:#8a5a2b;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);min-height:calc(100svh - 5rem);background:#fff;font-family:Georgia,Times New Roman,serif}.cs-photo{position:relative;min-height:20rem}.cs-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cs-content{padding:clamp(2rem,6vw,5.5rem) clamp(1.5rem,6vw,5.5rem);display:flex;flex-direction:column;gap:clamp(2.5rem,7vw,5.5rem)}.cs-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:2rem;align-items:start}.cs-intro h1{font-family:Georgia,Times New Roman,serif;font-weight:400;font-size:clamp(3rem,6vw,5.2rem);letter-spacing:-.02em;margin:0}.cs-intro p{font:.9rem/1.7 system-ui,sans-serif;color:var(--muted);margin:.8rem 0 0}.cs-columns{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(2rem,5vw,4rem)}.cs h2{font-family:Georgia,Times New Roman,serif;font-weight:400;font-size:1.35rem;letter-spacing:0;line-height:1.3;margin:0 0 .8rem}.cs-info h2:not(:first-child){margin-top:2rem}.cs-info p{font:.9rem/1.7 system-ui,sans-serif;color:var(--ink);margin:0 0 .4rem;overflow-wrap:anywhere}.cs-info a,.cs-link{text-decoration-color:var(--gold)}.cs-link{color:var(--gold);font-weight:600}.cs-form form{display:grid;gap:.3rem}.cs-form label{font:.78rem system-ui,sans-serif;color:var(--muted);margin-top:.9rem}.cs-form input,.cs-form textarea{font:1rem system-ui,sans-serif;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:.5rem 0;width:100%;resize:vertical}.cs-form input:focus,.cs-form textarea:focus{outline:0;border-bottom-color:var(--gold)}.cs-send{justify-self:start;display:inline-flex;align-items:center;gap:1rem;margin-top:1.6rem;padding:0;border:0;background:none;color:var(--gold);font:600 .78rem system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.cs-arrow{display:grid;place-items:center;width:2.8rem;height:2.8rem;border:1px solid var(--gold);border-radius:50%;font-size:1.2rem;letter-spacing:0;transition:background .2s,color .2s}.cs-send:hover .cs-arrow,.cs-send:focus-visible .cs-arrow{background:var(--gold);color:#fff}@media(max-width:980px){.cs{grid-template-columns:1fr}.cs-photo{min-height:16rem}}@media(max-width:620px){.cs-intro,.cs-columns{grid-template-columns:1fr}}.form-note{color:var(--muted);font-size:.85rem;margin:.5rem 0 0}@media(max-width:880px){.header{flex-wrap:wrap}.header nav{order:3;width:100%;border-top:1px solid var(--line);padding-top:.65rem}.split{grid-template-columns:1fr 1fr;gap:1.5rem}}@media(max-width:620px){.header{gap:.65rem}.brand{font-size:1.35rem}.header .button{display:none}.hero{min-height:33rem}.hero-copy{padding:2rem 1.25rem}.hero:after{background:linear-gradient(0deg,#06142ee6,transparent 95%)}.split,.gallery{grid-template-columns:1fr}.amenities ul{grid-template-columns:repeat(2,1fr)}.facts span{font-size:.72rem}.facts strong{font-size:1.55rem}}
