

@font-face{font-family:"Jost";src:url("../fonts/jost-book.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Jost";src:url("../fonts/jost-medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Jost";src:url("../fonts/jost-bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Playfair Display";src:url("../fonts/playfair-display.woff2") format("woff2");font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:"Playfair Display";src:url("../fonts/playfair-display-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Cormorant Accent";src:url("../fonts/cormorant-garamond-italic.woff2") format("woff2");font-weight:500;font-style:italic;font-display:swap}

:root{--ink:#00324a;--ink-2:#00566e;--sea:#00798c;--sea-light:#58ced5;--foam:#e7f8fa;--sand:#f6efde;--ivory:#f8fcfc;--gold:#f0bd4f;--white:#fff;--line:rgba(0,50,74,.16);--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:Inter,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select{font:inherit}a,button,summary,input,select{outline-offset:4px}:focus-visible{outline:3px solid #e5b64d}.shell{width:min(1240px,calc(100% - 56px));margin-inline:auto}.section{padding-block:130px}.skip-link{position:fixed;left:16px;top:-100px;z-index:999;background:#fff;color:#000;padding:12px 18px}.skip-link:focus{top:16px}.eyebrow{margin:0 0 24px;color:var(--sea);font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.eyebrow.light{color:#f2e9d8}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:.98}h2{font-size:clamp(2.8rem,5.6vw,5.3rem);letter-spacing:-.035em}.lead{font-size:1.14rem;line-height:1.9;color:#2d6170}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border:1px solid transparent;font-size:.77rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:background .25s,color .25s,border-color .25s}.button-gold{background:var(--gold);color:#10292b}.button-gold:hover{background:#e0c78f}.button-outline{border-color:rgba(255,255,255,.7);color:#fff}.button-outline:hover{background:#fff;color:var(--ink)}.text-link,.arrow-link{display:inline-flex;align-items:center;gap:16px;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.arrow-link{margin-top:25px;padding-bottom:6px;border-bottom:1px solid var(--ink)}.arrow-link span{font-size:1rem}.light-link{color:#fff;border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:5px}
.site-header{position:fixed;z-index:250;top:0;right:0;left:0;width:100%;color:#fff;background:rgba(0,50,74,.88);box-shadow:0 8px 30px rgba(0,34,52,.14);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.utility{border-bottom:1px solid rgba(255,255,255,.24)}.utility-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;font-size:.69rem;letter-spacing:.08em;text-transform:uppercase}.utility p{margin:0}.utility-inner div{display:flex;gap:12px}.nav-wrap{transition:background .25s}.nav-inner{height:96px;display:flex;align-items:center}.brand{display:block;width:176px;filter:brightness(0) invert(1)}.brand img{width:100%;height:auto}.desktop-nav{display:flex;align-items:center;gap:31px;margin-left:auto;margin-right:40px}.desktop-nav a{position:relative;font-size:.71rem;font-weight:600;letter-spacing:.085em;text-transform:uppercase}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--gold);transition:right .2s}.desktop-nav a:hover:after{right:0}.nav-book{border-left:1px solid rgba(255,255,255,.35);padding-left:30px;font-size:.73rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.nav-book span{color:var(--gold);margin-left:8px}.mobile-nav{display:none}
.hero{position:relative;min-height:850px;height:100svh;display:flex;align-items:center;color:#fff;overflow:hidden;background:#152e30}.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:heroZoom 16s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,27,30,.78) 0%,rgba(9,27,30,.45) 47%,rgba(9,27,30,.15) 80%),linear-gradient(0deg,rgba(6,20,22,.28),transparent 50%)}.hero-content{position:relative;padding-top:95px}.hero h1{font-size:clamp(4rem,8.4vw,8rem);letter-spacing:-.045em;margin:0 0 32px;max-width:900px}.hero-copy{max-width:570px;font-size:1.1rem;line-height:1.85;color:rgba(255,255,255,.9)}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:42px}.hero-scroll{position:absolute;right:42px;bottom:90px;margin:0;writing-mode:vertical-rl;font-size:.64rem;letter-spacing:.2em;text-transform:uppercase}.hero-scroll span{display:inline-block;height:55px;border-left:1px solid rgba(255,255,255,.6);margin-bottom:14px}@keyframes heroZoom{from{transform:scale(1.02)}to{transform:scale(1.09)}}
.booking-bar{position:relative;z-index:6;margin-top:-49px;min-height:98px;background:#fff;box-shadow:0 20px 55px rgba(14,36,38,.14);display:grid;grid-template-columns:1.35fr 1fr 1fr .8fr 1.35fr}.booking-bar>*{border-right:1px solid #dfe3df}.booking-title{display:flex;align-items:center;gap:16px;padding:15px 28px;background:var(--ink);color:#fff}.booking-title>span{color:var(--gold);font-size:1.8rem}.booking-title div{display:flex;flex-direction:column}.booking-title small{font-size:.61rem;letter-spacing:.15em;color:#c7d2cf}.booking-title strong{font-family:var(--serif);font-weight:400;font-size:1.25rem}.booking-bar label{display:flex;justify-content:center;flex-direction:column;padding:15px 22px}.booking-bar label span{font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#6a7774}.booking-bar input,.booking-bar select{width:100%;border:0;background:transparent;color:var(--ink);padding:5px 0}.booking-bar button{border:0;background:var(--gold);color:#10292b;font-size:.7rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}.booking-bar button span{font-size:1rem;margin-left:10px}
.intro-section{display:grid;grid-template-columns:.86fr 1.14fr;gap:9vw;align-items:center}.intro-copy h2{margin-bottom:34px}.intro-copy .lead{max-width:520px}.intro-visual{position:relative;padding-left:70px;padding-bottom:55px}.image-main{width:100%;aspect-ratio:4/5;object-fit:cover}.distance-card{position:absolute;left:0;bottom:0;width:210px;height:158px;background:var(--gold);display:flex;align-items:center;gap:12px;padding:28px;color:#10292b}.distance-card strong{font-family:var(--serif);font-weight:400;font-size:4rem;line-height:1}.distance-card span{font-size:.68rem;font-weight:700;line-height:1.4;letter-spacing:.1em;text-transform:uppercase}
.signature-strip{background:var(--ink);color:#fff;padding:68px 0}.signature-grid{display:grid;grid-template-columns:repeat(3,1fr)}.signature-grid>div{position:relative;padding:0 6vw;border-right:1px solid rgba(255,255,255,.17)}.signature-grid>div:first-child{padding-left:0}.signature-grid>div:last-child{border:0}.signature-grid span{display:block;color:var(--gold);font-size:.63rem;letter-spacing:.15em;margin-bottom:12px}.signature-grid strong{font-family:var(--serif);font-size:1.8rem;font-weight:400}.signature-grid p{margin:8px 0 0;color:#aebfbc;font-size:.86rem;line-height:1.7}
.rooms-section{background:var(--sand)}.split-heading{display:grid;grid-template-columns:1.35fr .65fr;gap:9vw;align-items:end;margin-bottom:65px}.split-heading h2{margin:0}.split-heading>div:last-child p{color:#526a6b}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.room-card a{display:block}.room-image-wrap{position:relative;overflow:hidden;background:#d8d7d1}.room-card img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .7s ease}.room-card:hover img{transform:scale(1.045)}.room-index{position:absolute;top:22px;left:22px;color:#fff;font-size:.64rem;letter-spacing:.16em;text-shadow:0 1px 10px #000}.room-card-copy{display:flex;align-items:center;justify-content:space-between;padding:28px 4px 0}.room-card h3{margin:0 0 7px;font-size:2.15rem}.room-card p{margin:0;color:#5b6d6c;font-size:.8rem}.round-arrow{width:46px;height:46px;border:1px solid #9da9a5;border-radius:50%;display:grid;place-items:center;transition:background .25s,color .25s}.room-card:hover .round-arrow{background:var(--ink);color:#fff}
.experience-grid{display:grid;grid-template-columns:1.04fr .96fr;grid-template-rows:auto auto;gap:65px 8vw;align-items:center}.experience-image{overflow:hidden}.experience-image img{width:100%;height:100%;object-fit:cover}.experience-image.tall{grid-row:1/3;height:780px}.experience-image.wide{height:340px}.experience-copy{align-self:end}.experience-copy h2{font-size:clamp(3rem,5vw,5rem);margin-bottom:30px}.experience-copy>p:not(.eyebrow){color:#536b6c;max-width:520px}.experience-links{display:flex;gap:30px;flex-wrap:wrap}
.fairs-teaser{position:relative;min-height:680px;display:flex;align-items:center;color:#fff;overflow:hidden;background:var(--ink)}.fairs-teaser>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.fairs-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,34,36,.89),rgba(11,34,36,.53) 55%,rgba(11,34,36,.18))}.fairs-copy{position:relative}.fairs-copy h2{font-size:clamp(3.4rem,6.2vw,6rem);margin-bottom:28px}.fairs-copy>p:not(.eyebrow){max-width:540px;font-size:1.05rem;color:#dbe4df}.fairs-copy .button{margin-top:25px}
.reviews{display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw;align-items:center}.reviews-intro h2{font-size:clamp(3rem,5vw,4.8rem)}.rating{display:flex;align-items:center;gap:18px;margin-top:40px}.rating strong{font-family:var(--serif);font-size:3.5rem;font-weight:400;line-height:1}.rating span{display:flex;flex-direction:column;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.rating b{color:var(--gold);font-size:.9rem;letter-spacing:.16em}.rating i{color:#d8d7d0;font-style:normal}.quote-card{position:relative;border-left:1px solid var(--gold);padding:20px 0 20px 65px}.quote-mark{position:absolute;left:55px;top:-50px;color:#dccda9;font-family:var(--serif);font-size:8rem;line-height:1}.quote-card blockquote{position:relative;margin:0 0 30px;font-family:var(--serif);font-size:clamp(1.8rem,3.3vw,3.1rem);line-height:1.25}.quote-card p{font-size:.67rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#607272}
.closing-cta{background:var(--sea);color:#fff;padding:110px 0;text-align:center}.closing-inner h2{font-size:clamp(3.5rem,7vw,6.5rem);margin-bottom:42px}.site-footer{background:#0d2325;color:#c9d3d0;padding:80px 0 24px}.footer-main{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:7vw;padding-bottom:70px}.footer-brand img{width:190px;filter:brightness(0) invert(1);margin-bottom:25px}.footer-brand p{max-width:300px;color:#93aaa6}.footer-main h2{font-family:var(--sans);font-size:.64rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:24px}.footer-main>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:.84rem}.footer-main address{font-style:normal;margin-bottom:8px}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding-top:24px;display:flex;justify-content:space-between;font-size:.63rem;letter-spacing:.06em;text-transform:uppercase;color:#809894}.footer-bottom p{margin:0}.footer-bottom div{display:flex;gap:20px}
.page-hero{position:relative;min-height:620px;display:flex;align-items:flex-end;padding-bottom:90px;color:#fff;background:var(--ink)}.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.page-hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,27,29,.75),rgba(8,27,29,.15) 70%),linear-gradient(90deg,rgba(8,27,29,.52),transparent)}.page-hero .shell{position:relative}.page-hero h1{font-size:clamp(4rem,8vw,7.6rem);margin:0;max-width:1040px;white-space:pre-line}
.editorial-two{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:start}.editorial-two h2{font-size:clamp(3rem,5vw,5rem);margin:0}.rich-copy{padding-top:47px}.rich-copy p:not(.lead){color:#536a6b}.story-grid{display:grid;grid-template-columns:1fr 1fr 1fr;min-height:570px}.story-grid>img{width:100%;height:100%;object-fit:cover}.story-panel{display:flex;flex-direction:column;justify-content:center;padding:60px;background:var(--sea);color:#fff}.story-panel h2{font-size:3.5rem}.story-panel>p:last-child{color:#d5e0dd}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.stats-row>div{display:flex;flex-direction:column;padding:20px 35px;border-right:1px solid var(--line)}.stats-row>div:last-child{border:0}.stats-row strong{font-family:var(--serif);font-weight:400;font-size:3.5rem;line-height:1}.stats-row span{margin-top:12px;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:#627373}.inner-cta{padding:120px 0;background:var(--sea);color:#fff;text-align:center}.inner-cta h2{font-size:clamp(3.4rem,6vw,5.8rem);margin-bottom:25px}.inner-cta>div>p:not(.eyebrow){max-width:620px;margin:0 auto 35px;color:#d8e1de}
.room-list{padding-bottom:130px}.room-row{border-top:1px solid var(--line);padding:65px 0}.room-row:last-child{border-bottom:1px solid var(--line)}.room-row>a{display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:center}.room-row:nth-child(even)>a{grid-template-columns:.85fr 1.15fr}.room-row:nth-child(even) .room-row-image{order:2}.room-row-image{position:relative;overflow:hidden}.room-row-image img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .7s}.room-row:hover img{transform:scale(1.035)}.room-row-image>span{position:absolute;top:22px;left:22px;color:#fff;font-size:.65rem;letter-spacing:.15em}.room-row-copy{position:relative;padding-right:70px}.room-row-copy h2{font-size:clamp(3.5rem,6vw,5.6rem);margin:0 0 25px}.room-row-copy>p:not(.eyebrow){color:#536b6c}.room-row-copy .round-arrow{position:absolute;right:0;bottom:0}.room-detail-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:10vw}.room-detail-intro h2{font-size:clamp(3.5rem,6vw,5.4rem)}.amenity-panel{background:var(--sand);padding:50px}.amenity-panel h3{font-size:2.2rem}.amenity-panel ul{list-style:none;margin:30px 0 40px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:18px}.amenity-panel li{display:flex;gap:10px;font-size:.84rem;border-bottom:1px solid var(--line);padding-bottom:12px}.amenity-panel li span{color:var(--sea)}.room-gallery{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-bottom:130px}.room-gallery img{width:100%;height:430px;object-fit:cover}.room-gallery img:first-child{grid-column:1/-1;height:660px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-bottom:30px}.service-grid article{min-height:330px;padding:45px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article>span{color:var(--gold);font-size:.64rem;letter-spacing:.15em}.service-grid h2{font-size:2.45rem;margin:45px 0 20px}.service-grid p{color:#566c6c;font-size:.9rem}.service-feature{display:grid;grid-template-columns:1.1fr .9fr;gap:9vw;align-items:center}.service-feature img{width:100%;height:650px;object-fit:cover}.service-feature h2{font-size:clamp(3.5rem,6vw,5.6rem)}.service-feature>div:last-child>p:not(.eyebrow){color:#536b6c}.pool-mosaic{display:grid;grid-template-columns:1fr 1.4fr;grid-template-rows:1fr auto;gap:20px;padding-bottom:130px}.pool-mosaic img{width:100%;height:100%;object-fit:cover}.pool-mosaic img:first-child{grid-row:1/3;min-height:700px}.pool-mosaic img:nth-child(2){height:500px}.pool-mosaic>div{background:var(--gold);padding:30px 50px;display:flex;align-items:center;gap:20px}.pool-mosaic strong{font-family:var(--serif);font-size:5rem;font-weight:400;line-height:1}.pool-mosaic span{font-size:.7rem;font-weight:700;line-height:1.4;letter-spacing:.12em;text-transform:uppercase}
.gallery-intro{text-align:center}.gallery-intro h2{font-size:clamp(3.5rem,6vw,5.6rem)}.gallery-intro>p:last-child{max-width:650px;margin:auto;color:#566c6c}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.gallery-grid figure{margin:0;grid-column:span 4;overflow:hidden}.gallery-grid figure:nth-child(1),.gallery-grid figure:nth-child(7){grid-column:span 8}.gallery-grid figure:nth-child(2),.gallery-grid figure:nth-child(8){grid-column:span 4}.gallery-grid img{width:100%;height:410px;object-fit:cover;transition:transform .6s}.gallery-grid figure:nth-child(1) img,.gallery-grid figure:nth-child(7) img{height:520px}.gallery-grid figure:hover img{transform:scale(1.035)}.gallery-space{height:130px}
.event-filter{display:flex;gap:12px;flex-wrap:wrap;padding-bottom:40px}.event-filter span{border:1px solid #aeb9b4;border-radius:999px;padding:9px 19px;font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.event-filter span:first-child{background:var(--ink);color:#fff;border-color:var(--ink)}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px 22px;padding-bottom:130px}.event-image{position:relative;overflow:hidden}.event-image img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .6s}.event-image>span{position:absolute;left:16px;top:16px;background:var(--ivory);padding:7px 12px;font-size:.59rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.event-card:hover img{transform:scale(1.04)}.event-copy{position:relative;padding:25px 60px 0 2px}.event-copy>p{font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.event-copy h2{font-size:2rem;margin:0 0 12px}.event-copy small{color:#607272}.event-copy .round-arrow{position:absolute;right:0;bottom:0}.event-detail{display:grid;grid-template-columns:.32fr .68fr;gap:9vw;align-items:start}.event-detail aside{position:sticky;top:30px;border-top:1px solid var(--line);display:flex;flex-direction:column}.event-detail aside>span{font-size:.61rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#697b78;margin-top:24px}.event-detail aside>strong{font-family:var(--serif);font-size:1.7rem;font-weight:400;padding-bottom:24px;border-bottom:1px solid var(--line)}.event-detail aside .button{margin-top:32px}.event-detail article h2{font-size:clamp(3.2rem,5.2vw,5rem)}.event-detail article>p:not(.eyebrow){color:#526969}.event-benefits{background:var(--ink);color:#fff}.event-benefits>.shell{display:grid;grid-template-columns:repeat(4,1fr);padding-block:55px}.event-benefits>div>div{padding:5px 35px;border-right:1px solid rgba(255,255,255,.14)}.event-benefits>div>div:last-child{border:0}.event-benefits span{color:var(--gold)}.event-benefits h3{font-family:var(--sans);font-size:.85rem;font-weight:700;margin:15px 0 5px}.event-benefits p{font-size:.74rem;color:#a8bbb7;margin:0}.related-events h2{font-size:clamp(3.2rem,5vw,4.7rem)}.related-events>div{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.related-events a{background:var(--sand)}.related-events img{width:100%;height:220px;object-fit:cover}.related-events a>span{display:flex;flex-direction:column;padding:20px}.related-events small{color:#687b78}.related-events strong{font-family:var(--serif);font-size:1.65rem;font-weight:400}.event-contact{display:grid;grid-template-columns:1fr 1fr;background:var(--sea);color:#fff}.event-contact>img{width:100%;height:630px;object-fit:cover}.event-contact>div{display:flex;justify-content:center;align-items:flex-start;flex-direction:column;padding:8vw}.event-contact h2{font-size:clamp(3.5rem,6vw,5.6rem)}.event-contact>div>p:not(.eyebrow){color:#d3dfdc}.event-contact .button{margin-top:20px}
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw}.contact-intro h2{font-size:clamp(3.5rem,6vw,5.6rem)}.contact-block{display:flex;flex-direction:column;border-top:1px solid var(--line);padding-top:20px;margin-top:30px}.contact-block>span{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#748481;margin-bottom:8px}.contact-block address{font-style:normal}.contact-form{background:var(--sand);padding:55px}.contact-form h2{font-size:2.7rem}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-form label{display:flex;flex-direction:column;font-size:.67rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.contact-form input,.contact-form select,.contact-form textarea{border:0;border-bottom:1px solid #9da9a4;background:transparent;padding:12px 2px;margin-bottom:22px;color:var(--ink)}.contact-form textarea{resize:vertical}.contact-form .checkbox{flex-direction:row;align-items:center;gap:10px;font-size:.59rem;margin-bottom:25px}.contact-form .checkbox input{margin:0}.map-placeholder{min-height:560px;background:linear-gradient(rgba(13,35,37,.78),rgba(13,35,37,.78)),url("../media/2023/05/Hotel-Gallia-Palace-Rimini-9.jpg") center/cover;color:#fff;display:grid;place-items:center;text-align:center}.map-placeholder h2{font-size:clamp(3.8rem,7vw,6rem)}.map-placeholder span{font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:70px 24px;padding-bottom:20px}.news-grid img{width:100%;height:280px;object-fit:cover}.news-grid>article>p{font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:#7b8986;margin:20px 0 10px}.news-grid h2{font-size:2rem;line-height:1.15}.legal-copy{max-width:820px}.legal-copy h2{font-size:4rem}.legal-copy h3{font-size:2.2rem;margin-top:55px}.legal-copy a{text-decoration:underline;text-underline-offset:4px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media (max-width:1050px){.desktop-nav{gap:18px;margin-right:24px}.desktop-nav a{font-size:.64rem}.section{padding-block:100px}.intro-section{gap:6vw}.experience-grid{gap:45px 6vw}.footer-main{gap:4vw}}
@media (max-width:850px){.shell{width:min(100% - 36px,700px)}.utility{display:none}.nav-inner{height:78px}.brand{width:145px}.desktop-nav,.nav-book{display:none}.mobile-nav{display:block;margin-left:auto}.mobile-nav summary{list-style:none;width:48px;height:48px;display:grid;place-content:center;gap:8px;cursor:pointer}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{display:block;width:26px;border-top:2px solid #fff}.mobile-nav nav{position:absolute;left:0;right:0;top:78px;min-height:calc(100svh - 78px);background:var(--ink);display:flex;flex-direction:column;padding:38px 28px;gap:13px}.mobile-nav nav>a:not(.button){font-family:var(--serif);font-size:2rem;line-height:1.3;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:11px}.mobile-nav .button{margin-top:20px}.hero{min-height:720px}.hero-content{padding-top:55px}.hero h1{font-size:clamp(3.8rem,13vw,6rem)}.hero-scroll{display:none}.booking-bar{margin-top:0;width:100%;grid-template-columns:1fr 1fr}.booking-title,.booking-bar button{grid-column:1/-1}.booking-bar>*{min-height:82px}.intro-section{grid-template-columns:1fr;gap:60px}.intro-copy{max-width:620px}.intro-visual{padding-left:45px}.signature-grid{grid-template-columns:1fr;gap:35px}.signature-grid>div{padding:0 0 30px;border-right:0;border-bottom:1px solid rgba(255,255,255,.17)}.signature-grid>div:last-child{padding-bottom:0}.split-heading{grid-template-columns:1fr;gap:25px}.room-grid{grid-template-columns:1fr 1fr}.room-card:last-child{grid-column:1/-1;width:50%;margin-inline:auto}.experience-grid{grid-template-columns:1fr;grid-template-rows:auto}.experience-image.tall{grid-row:auto;height:620px}.experience-image.wide{height:390px}.experience-copy{padding:20px 0}.reviews{grid-template-columns:1fr;gap:70px}.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.page-hero{min-height:560px}}
@media (max-width:580px){.shell{width:calc(100% - 30px)}.section{padding-block:78px}h2{font-size:2.9rem}.hero{height:92svh;min-height:670px}.hero-content{padding-top:55px}.hero h1{font-size:3.8rem}.hero-copy{font-size:.98rem;line-height:1.65}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px;margin-top:30px}.booking-bar{grid-template-columns:1fr}.booking-title,.booking-bar button{grid-column:auto}.booking-bar label{min-height:78px}.intro-visual{padding-left:24px;padding-bottom:42px}.image-main{aspect-ratio:4/5}.distance-card{width:165px;height:120px;padding:20px}.distance-card strong{font-size:3.1rem}.room-grid{grid-template-columns:1fr}.room-card:last-child{grid-column:auto;width:auto}.room-card img{aspect-ratio:4/4.7}.experience-image.tall{height:500px}.experience-image.wide{height:270px}.fairs-teaser{min-height:620px}.reviews{gap:50px}.quote-card{padding-left:30px}.quote-mark{left:25px}.closing-cta{padding:85px 0}.closing-inner h2{font-size:3.45rem}.footer-main{grid-template-columns:1fr;gap:42px}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column;gap:14px}.footer-bottom div{flex-wrap:wrap}.page-hero{min-height:500px;padding-bottom:60px}.page-hero h1{font-size:3.7rem}}
@media (max-width:850px){.editorial-two,.room-detail-intro,.contact-layout{grid-template-columns:1fr;gap:40px}.rich-copy{padding-top:0}.story-grid{grid-template-columns:1fr 1fr}.story-grid .story-panel{grid-column:1/-1;grid-row:2}.stats-row{grid-template-columns:1fr 1fr}.stats-row>div:nth-child(2){border:0}.room-row>a,.room-row:nth-child(even)>a{grid-template-columns:1fr;gap:30px}.room-row:nth-child(even) .room-row-image{order:0}.service-grid{grid-template-columns:1fr 1fr}.service-feature{grid-template-columns:1fr}.service-feature img{height:550px}.event-grid{grid-template-columns:1fr 1fr}.event-detail{grid-template-columns:1fr}.event-detail aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.event-detail aside .button{grid-column:1/-1}.event-benefits>.shell{grid-template-columns:1fr 1fr;gap:35px 0}.event-benefits>div>div:nth-child(2){border:0}.related-events>div{grid-template-columns:1fr 1fr}.event-contact{grid-template-columns:1fr}.event-contact>img{height:520px}.field-grid{grid-template-columns:1fr}.news-grid{grid-template-columns:1fr 1fr}.gallery-grid figure,.gallery-grid figure:nth-child(1),.gallery-grid figure:nth-child(2),.gallery-grid figure:nth-child(7),.gallery-grid figure:nth-child(8){grid-column:span 6}.gallery-grid img,.gallery-grid figure:nth-child(1) img,.gallery-grid figure:nth-child(7) img{height:380px}}
@media (max-width:580px){.story-grid{grid-template-columns:1fr}.story-grid .story-panel{grid-column:auto;grid-row:auto;padding:45px 30px}.story-grid>img{height:380px}.stats-row{grid-template-columns:1fr}.stats-row>div{border-right:0;border-bottom:1px solid var(--line);padding:25px 10px}.room-list{padding-bottom:80px}.room-row{padding:45px 0}.room-row-copy{padding-right:55px}.room-row-copy h2{font-size:3.6rem}.amenity-panel{padding:35px 25px}.amenity-panel ul{grid-template-columns:1fr}.room-gallery{grid-template-columns:1fr;gap:12px;padding-bottom:80px}.room-gallery img,.room-gallery img:first-child{grid-column:auto;height:340px}.service-grid{grid-template-columns:1fr}.service-grid article{min-height:260px}.service-feature img{height:420px}.pool-mosaic{grid-template-columns:1fr;grid-template-rows:auto}.pool-mosaic img:first-child{grid-row:auto;min-height:0;height:430px}.pool-mosaic img:nth-child(2){height:330px}.gallery-grid{gap:10px}.gallery-grid figure,.gallery-grid figure:nth-child(1),.gallery-grid figure:nth-child(2),.gallery-grid figure:nth-child(7),.gallery-grid figure:nth-child(8){grid-column:span 12}.gallery-grid img,.gallery-grid figure:nth-child(1) img,.gallery-grid figure:nth-child(7) img{height:380px}.gallery-space{height:80px}.event-grid{grid-template-columns:1fr}.event-detail aside{display:flex}.event-benefits>.shell{grid-template-columns:1fr}.event-benefits>div>div,.event-benefits>div>div:nth-child(2){border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding:0 0 25px}.related-events>div{grid-template-columns:1fr}.event-contact>img{height:380px}.contact-form{padding:35px 22px}.news-grid{grid-template-columns:1fr}.legal-copy h2{font-size:3.2rem}}

/* Marine editorial redesign */
:root{--ink:#032f38;--ink-2:#064651;--sea:#008da0;--sea-bright:#18a6ad;--lagoon:#9adbd7;--foam:#eaf7f4;--sand:#edf6f2;--ivory:#fbfdf9;--gold:#f0c482;--coral:#ef9a78;--white:#fff;--line:rgba(3,47,56,.15);--serif:"Cormorant Garamond","Iowan Old Style",Georgia,serif;--sans:"Jost","Helvetica Neue",Arial,sans-serif}
body{background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.75}.marine-icon{width:56px;height:56px;display:block}.eyebrow{color:var(--sea);font-size:.67rem;letter-spacing:.28em}.eyebrow.light{color:#d8f5f1}h1,h2,h3{font-family:var(--serif)}h2{letter-spacing:-.025em}.lead{color:#356a70}.button{border-radius:999px;min-height:58px;padding-inline:32px;letter-spacing:.14em}.button-gold{background:var(--coral);color:var(--ink)}.button-gold:hover{background:#ffd2a7}.button-outline{border-color:rgba(220,249,244,.68);background:rgba(0,62,70,.16);backdrop-filter:blur(7px)}.arrow-link{border-color:var(--sea);color:var(--ink)}
.site-header{color:#f7fffd}.utility{background:rgba(1,38,46,.22);border-color:rgba(205,244,239,.2);backdrop-filter:blur(6px)}.nav-wrap{border-bottom:1px solid rgba(216,247,243,.18);background:linear-gradient(180deg,rgba(2,42,50,.33),transparent)}.brand{width:190px}.desktop-nav a{font-size:.68rem;letter-spacing:.13em}.desktop-nav a:after{height:2px;background:var(--lagoon)}.nav-book span{color:var(--coral)}
.hero{min-height:820px;background:#033a45;isolation:isolate}.hero-media{animation:none}.hero-media-video{z-index:-2;filter:saturate(.9) contrast(1.03);transform:scale(1.015)}.hero-poster{z-index:-3}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(1,37,45,.87) 0%,rgba(1,48,57,.58) 43%,rgba(0,66,75,.18) 74%),linear-gradient(0deg,rgba(0,39,47,.6) 0%,transparent 40%),linear-gradient(180deg,rgba(0,31,38,.42),transparent 33%)}.hero-frame{position:absolute;z-index:1;inset:154px 42px 55px;border:1px solid rgba(211,246,240,.22);pointer-events:none}.hero-frame:before,.hero-frame:after{content:"";position:absolute;width:42px;height:42px;border-color:var(--lagoon)}.hero-frame:before{left:-1px;top:-1px;border-left:2px solid;border-top:2px solid}.hero-frame:after{right:-1px;bottom:-1px;border-right:2px solid;border-bottom:2px solid}.hero-frame span{position:absolute;right:20px;font-size:.56rem;letter-spacing:.2em}.hero-frame span:first-child{top:18px}.hero-frame span:last-child{top:40px;color:var(--lagoon)}.hero-content{z-index:2;padding-top:112px}.hero-kicker{display:flex;align-items:center;gap:18px;margin-bottom:18px}.hero-kicker .marine-icon{width:42px;height:42px;color:var(--lagoon)}.hero-kicker .eyebrow{margin:0}.hero h1{font-size:clamp(4.8rem,9vw,9.4rem);font-weight:400;line-height:.79;letter-spacing:-.035em;margin-bottom:45px;max-width:1050px}.hero h1 span{font-style:italic;color:#d9f5f0;font-size:.83em}.hero-copy{max-width:580px;font-size:1.08rem;color:#e3f4f1}.hero-actions{margin-top:38px}.hero-scroll{right:72px;bottom:88px;writing-mode:initial;display:flex;align-items:center;gap:12px}.hero-scroll .marine-icon{width:40px;height:40px;color:var(--lagoon)}.hero-scroll p{margin:0;font-size:.57rem;letter-spacing:.2em;text-transform:uppercase}.hero-waves{position:absolute;z-index:1;left:0;right:0;bottom:22px;height:72px;overflow:hidden;opacity:.6}.hero-waves i{position:absolute;left:-5%;width:110%;height:52px;border-top:1px solid #b3e7e2;border-radius:50%}.hero-waves i:nth-child(1){top:7px}.hero-waves i:nth-child(2){top:22px;left:-8%;width:116%;opacity:.65}.hero-waves i:nth-child(3){top:38px;left:-2%;width:104%;opacity:.35}
.booking-bar{margin-top:-58px;min-height:116px;border-radius:22px;overflow:hidden;background:rgba(251,253,249,.96);border:1px solid rgba(85,157,158,.28);box-shadow:0 28px 80px rgba(0,57,67,.18)}.booking-title{background:linear-gradient(135deg,var(--ink),var(--sea));padding-inline:32px}.booking-title>.marine-icon{width:45px;height:45px;color:var(--lagoon);flex:0 0 auto}.booking-title strong{font-size:1.4rem}.booking-bar>*{border-color:#cfe4df}.booking-bar button{background:var(--coral);color:var(--ink)}
.intro-section{position:relative}.intro-section:before{content:"";position:absolute;left:-13vw;top:80px;width:360px;height:360px;border:1px solid rgba(17,133,144,.15);border-radius:50%}.intro-section:after{content:"";position:absolute;left:-7vw;top:135px;width:250px;height:250px;border:1px solid rgba(17,133,144,.12);border-radius:50%}.intro-copy,.intro-visual{position:relative;z-index:1}.intro-copy h2{font-size:clamp(3.5rem,5.8vw,6rem)}.image-main{border-radius:180px 180px 18px 18px}.intro-visual{padding-left:50px;padding-bottom:70px}.distance-card{width:182px;height:182px;border-radius:50%;background:var(--coral);box-shadow:0 12px 0 var(--foam);justify-content:center}.distance-card strong{font-size:3.8rem}.distance-card span{font-size:.58rem}
.signature-strip{position:relative;overflow:hidden;background:linear-gradient(128deg,#003a45,#076b77 57%,#138994);padding:82px 0}.signature-strip:before{content:"";position:absolute;left:-10%;right:-10%;bottom:-70px;height:150px;border-top:1px solid rgba(197,240,235,.22);border-radius:50%}.signature-grid{grid-template-columns:repeat(4,1fr)}.signature-grid>div{padding:0 3vw;text-align:center}.signature-grid>div:first-child{padding-left:0}.signature-grid>div:last-child{padding-right:0}.signature-grid .marine-icon{margin:0 auto 20px;color:var(--lagoon)}.signature-grid span{color:var(--coral)}.signature-grid strong{font-size:1.65rem;line-height:1.1}.signature-grid p{color:#c6e4e0}
.marine-manifesto{position:relative;min-height:690px;display:flex;align-items:center;overflow:hidden;color:#fff;background:radial-gradient(circle at 18% 20%,rgba(94,205,204,.34),transparent 31%),linear-gradient(135deg,#075f6d,#003945)}.marine-manifesto:after{content:"";position:absolute;right:-9vw;top:-18vw;width:50vw;height:50vw;border:1px solid rgba(178,231,226,.2);border-radius:50%;box-shadow:0 0 0 55px rgba(178,231,226,.03),0 0 0 110px rgba(178,231,226,.025)}.marine-manifesto-inner{position:relative;z-index:2;text-align:center}.marine-manifesto h2{font-size:clamp(4rem,8vw,8rem);line-height:.82;margin-bottom:35px}.marine-manifesto h2 em{color:var(--coral);font-weight:400}.marine-manifesto-inner>p:last-child{max-width:650px;margin:auto;color:#d4ece8}.marine-orbit{position:absolute;left:7vw;top:50%;transform:translateY(-50%);width:260px;height:260px;border:1px solid rgba(191,235,230,.25);border-radius:50%;display:grid;place-items:center;color:var(--lagoon)}.marine-orbit .marine-icon{width:86px;height:86px}.marine-orbit span{position:absolute;inset:28px;border:1px dashed rgba(191,235,230,.22);border-radius:50%}.marine-orbit span:last-child{inset:-40px}
.rooms-section{background:linear-gradient(180deg,var(--foam),#f8fcfa)}.room-card img{border-radius:190px 190px 16px 16px;filter:saturate(.88)}.room-image-wrap{background:transparent;border-radius:190px 190px 16px 16px}.room-index{background:var(--sea);padding:7px 11px;border-radius:99px;text-shadow:none}.round-arrow{border-color:#6db4b3;color:var(--sea)}.room-card:hover .round-arrow{background:var(--sea)}
.experience-image.tall img{border-radius:220px 220px 20px 20px}.experience-image.wide img{border-radius:20px 160px 20px 20px}.experience-copy h2{font-size:clamp(3.5rem,5.5vw,5.8rem)}.fairs-overlay{background:linear-gradient(90deg,rgba(0,45,53,.94),rgba(0,72,80,.66) 55%,rgba(5,97,106,.18))}.reviews{position:relative}.reviews:after{content:"";position:absolute;right:-14vw;top:-40px;width:330px;height:330px;border:1px solid rgba(23,146,153,.12);border-radius:50%}.rating b,.quote-mark{color:var(--coral)}.quote-card{border-color:var(--sea)}.closing-cta{position:relative;overflow:hidden;background:linear-gradient(135deg,#087b87,#03444f)}.closing-cta:before{content:"";position:absolute;left:-10%;right:-10%;top:-105px;height:210px;border-bottom:1px solid rgba(204,242,238,.25);border-radius:50%}.site-footer{background:#012c34}.footer-main h2{color:var(--coral)}
.page-hero{background:#034853}.page-hero-shade{background:linear-gradient(0deg,rgba(0,43,51,.86),rgba(0,65,73,.12) 72%),linear-gradient(90deg,rgba(0,43,51,.67),transparent)}.page-hero-mark{position:absolute;right:7vw;bottom:115px;color:var(--lagoon);opacity:.75}.page-hero-mark .marine-icon{width:110px;height:110px}.page-hero-waves{position:absolute;left:0;right:0;bottom:16px;height:55px;overflow:hidden}.page-hero-waves i{position:absolute;left:-4%;width:108%;height:50px;border-top:1px solid rgba(194,239,234,.46);border-radius:50%}.page-hero-waves i:last-child{top:16px;opacity:.55}.story-panel,.inner-cta,.event-contact{background:linear-gradient(135deg,var(--sea),var(--ink-2))}.amenity-panel,.contact-form,.related-events a{background:var(--foam)}.service-grid article{background:rgba(234,247,244,.42)}.event-benefits{background:var(--ink)}.event-image img,.gallery-grid img,.news-grid img{filter:saturate(.9)}
@media (prefers-reduced-motion:reduce){.hero-media-video{display:none}.hero-poster{display:block}}
@media (max-width:1050px){.hero-frame{inset:140px 24px 48px}.marine-orbit{opacity:.18;left:-70px}.signature-grid>div{padding-inline:2vw}.signature-grid strong{font-size:1.4rem}}
@media (max-width:850px){.hero-frame{inset:92px 18px 46px}.hero-content{padding-top:70px}.hero h1{font-size:clamp(4.3rem,15vw,7.2rem)}.hero-scroll{right:34px;bottom:70px}.booking-bar{border-radius:0}.signature-grid{grid-template-columns:1fr 1fr;gap:45px 0}.signature-grid>div:nth-child(2){border-right:0}.marine-manifesto{min-height:610px}.marine-orbit{display:none}.page-hero-mark{right:25px;bottom:80px}.page-hero-mark .marine-icon{width:74px;height:74px}}
@media (max-width:580px){body{font-size:16px}.hero{height:96svh}.hero-frame{inset:88px 14px 42px}.hero-frame span{display:none}.hero-kicker .marine-icon{width:34px;height:34px}.hero h1{font-size:4.25rem;line-height:.8;margin-bottom:30px}.hero-copy{font-size:.94rem;max-width:92%}.hero-scroll{display:none}.hero-waves{bottom:12px}.booking-bar{margin-top:0}.intro-visual{padding-left:18px}.image-main{border-radius:120px 120px 15px 15px}.distance-card{width:145px;height:145px}.signature-grid{grid-template-columns:1fr}.signature-grid>div,.signature-grid>div:nth-child(2){border-right:0;border-bottom:1px solid rgba(255,255,255,.16);padding:0 0 32px}.signature-grid>div:last-child{border-bottom:0}.marine-manifesto h2{font-size:4.2rem}.room-card img,.room-image-wrap{border-radius:120px 120px 14px 14px}.experience-image.tall img{border-radius:150px 150px 15px 15px}.experience-image.wide img{border-radius:15px 90px 15px 15px}.page-hero-mark{opacity:.35}}

/* Typography and image-shape refinement */
:root{--serif:"Italiana","Bodoni 72","Didot",Georgia,serif;--sans:"Nunito Sans","Avenir Next",Avenir,Arial,sans-serif}
body{font-family:var(--sans);font-weight:400}.eyebrow,.button,.desktop-nav a,.nav-book{font-family:var(--sans);font-weight:600}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.015em}.hero h1{line-height:.9;letter-spacing:-.02em}.hero h1 span,.marine-manifesto h2 em{font-style:normal}.lead{font-weight:300}.image-main,.room-card img,.room-image-wrap,.experience-image.tall img,.experience-image.wide img{border-radius:12px}.distance-card{border-radius:12px;box-shadow:10px 10px 0 var(--foam)}
@media (max-width:580px){.image-main,.room-card img,.room-image-wrap,.experience-image.tall img,.experience-image.wide img{border-radius:9px}.hero h1{font-size:3.8rem;line-height:.92}.distance-card{border-radius:9px}}

/* Image-led layout, softer editorial type and subtle textures */
:root{--serif:"Lora",Georgia,serif}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}.hero h1{line-height:.92}.hero h1 span{font-style:normal;font-weight:400}.marine-manifesto h2{line-height:.96}.marine-manifesto h2 em{font-family:var(--sans);font-size:.58em;letter-spacing:.03em;text-transform:uppercase}
.page-hero{min-height:min(86svh,900px);padding-bottom:100px;isolation:isolate}.page-hero>img{z-index:-3;filter:saturate(.92) contrast(1.03);transform:scale(1.01)}.page-hero-shade{z-index:-2;background:linear-gradient(0deg,rgba(0,38,46,.88),rgba(0,52,60,.25) 64%,rgba(0,38,46,.2)),linear-gradient(90deg,rgba(0,43,51,.52),transparent 72%)}.page-hero:after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background-image:radial-gradient(rgba(221,248,244,.5) .7px,transparent .7px);background-size:8px 8px;opacity:.16;mask-image:linear-gradient(90deg,#000,transparent 76%)}.page-hero .shell{width:min(1440px,calc(100% - 76px))}.page-hero h1{font-size:clamp(4.2rem,7.6vw,8.2rem);max-width:1200px;line-height:.98}.page-hero-mark{bottom:130px}.page-hero-mark .marine-icon{width:95px;height:95px}
.intro-section.shell{width:min(1460px,calc(100% - 64px));grid-template-columns:.58fr 1.42fr;gap:6vw}.intro-visual{padding-left:0}.image-main{width:100%;height:min(76vh,820px);aspect-ratio:auto;object-fit:cover}.distance-card{left:-75px;bottom:20px}.intro-section:before,.intro-section:after{opacity:.55}
.rooms-section{background-image:linear-gradient(180deg,rgba(234,247,244,.94),rgba(248,252,250,.98)),repeating-linear-gradient(135deg,rgba(3,79,87,.08) 0 1px,transparent 1px 13px)}.room-grid.shell{width:min(1480px,calc(100% - 64px))}.room-card img{aspect-ratio:4/5.25}.room-image-wrap:after,.event-image:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 64%,rgba(1,40,47,.3)),radial-gradient(rgba(236,253,249,.35) .6px,transparent .6px);background-size:auto,7px 7px;opacity:.3}.room-image-wrap>*{position:relative}.room-image-wrap img{position:relative}.room-index{z-index:2}
.experience.shell{width:min(1500px,calc(100% - 64px))}.experience-grid{grid-template-columns:1.35fr .65fr;gap:50px 6vw}.experience-image.tall{height:min(86vh,920px)}.experience-image.wide{height:430px}.fairs-teaser{min-height:min(82svh,880px)}.fairs-teaser:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(105deg,rgba(210,245,240,.07) 0 1px,transparent 1px 18px);mix-blend-mode:screen}.fairs-copy{z-index:2}.reviews.shell{width:min(1380px,calc(100% - 64px))}
.editorial-two.shell{width:min(1340px,calc(100% - 64px));padding-block:110px}.story-grid.shell{width:100%;max-width:none;grid-template-columns:1.45fr .52fr 1.45fr;min-height:min(78vh,820px)}.story-panel{position:relative;z-index:2;padding:52px 34px}.story-panel:before{content:"";position:absolute;inset:14px;border:1px solid rgba(213,245,241,.25);pointer-events:none}.story-grid>img{min-width:0;filter:saturate(.9);object-position:center}
.room-list.shell{width:min(1540px,calc(100% - 64px));padding-bottom:120px}.room-row{padding:38px 0}.room-row>a,.room-row:nth-child(even)>a{position:relative;display:block;min-height:min(74vh,760px)}.room-row-image{height:min(74vh,760px)}.room-row-image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.room-row-copy{position:absolute;z-index:3;right:34px;bottom:34px;width:min(430px,calc(100% - 68px));padding:38px 40px;background:rgba(2,48,57,.9);color:#fff;backdrop-filter:blur(12px);border:1px solid rgba(210,244,239,.25)}.room-row:nth-child(even) .room-row-copy{right:auto;left:34px}.room-row-copy .eyebrow{color:var(--lagoon)}.room-row-copy>p:not(.eyebrow){color:#d8ece9}.room-row-copy .round-arrow{right:30px;bottom:30px;border-color:rgba(255,255,255,.52);color:#fff}.room-row-copy h2{font-size:clamp(3rem,4.8vw,5rem)}
.room-gallery.shell{width:min(1580px,calc(100% - 48px));grid-template-columns:1.45fr .55fr;gap:16px}.room-gallery img{height:min(64vh,660px)}.room-gallery img:first-child{height:min(88vh,940px)}
.service-grid.shell{width:min(1380px,calc(100% - 64px));grid-template-columns:repeat(3,1fr)}.service-feature.shell{width:min(1500px,calc(100% - 64px));grid-template-columns:1.45fr .55fr}.service-feature img{height:min(82vh,860px)}.service-photo-band{display:grid;grid-template-columns:1.4fr .8fr .8fr;width:100%;min-height:min(74vh,760px);background:var(--ink)}.service-photo-band figure{position:relative;margin:0;overflow:hidden}.service-photo-band img{width:100%;height:100%;object-fit:cover;filter:saturate(.88)}.service-photo-band figure:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,45,53,.38),transparent 60%),radial-gradient(rgba(229,249,246,.45) .6px,transparent .6px);background-size:auto,8px 8px;opacity:.25;pointer-events:none}
.pool-mosaic.shell{width:min(1580px,calc(100% - 48px));grid-template-columns:1.4fr .8fr}.pool-mosaic img:first-child{min-height:min(90vh,960px)}.pool-mosaic img:nth-child(2){height:min(65vh,660px)}
.event-grid.shell{width:min(1480px,calc(100% - 64px));grid-template-columns:1fr 1fr;gap:76px 26px}.event-image img{aspect-ratio:16/10}.event-copy h2{font-size:2.45rem}.event-filter.shell{width:min(1480px,calc(100% - 64px))}.event-contact>img{height:min(82vh,850px)}
.gallery-grid.shell{width:min(1580px,calc(100% - 48px))}.gallery-grid img{height:520px}.gallery-grid figure:nth-child(1) img,.gallery-grid figure:nth-child(7) img{height:680px}.news-grid.shell{width:min(1480px,calc(100% - 64px));grid-template-columns:1fr 1fr}.news-grid img{height:470px}.map-placeholder{min-height:min(82vh,840px)}
@media (max-width:850px){.page-hero{min-height:72svh}.page-hero .shell{width:min(100% - 36px,700px)}.intro-section.shell{width:min(100% - 36px,700px);grid-template-columns:1fr}.distance-card{left:18px}.story-grid.shell{grid-template-columns:1fr 1fr}.story-grid .story-panel{grid-column:1/-1}.room-row>a,.room-row:nth-child(even)>a{min-height:auto}.room-row-image{height:560px}.room-row-copy,.room-row:nth-child(even) .room-row-copy{position:relative;left:auto;right:auto;bottom:auto;width:calc(100% - 36px);margin:-70px auto 0}.service-feature.shell{grid-template-columns:1fr}.service-photo-band{grid-template-columns:1fr 1fr;min-height:auto}.service-photo-band figure{height:420px}.service-photo-band figure:first-child{grid-column:1/-1;height:560px}.event-grid.shell{grid-template-columns:1fr 1fr}.news-grid.shell{grid-template-columns:1fr 1fr}}
@media (max-width:580px){.page-hero{min-height:68svh;padding-bottom:72px}.page-hero .shell{width:calc(100% - 30px)}.page-hero h1{font-size:3.45rem}.intro-section.shell,.room-grid.shell,.experience.shell,.editorial-two.shell,.room-list.shell,.service-grid.shell,.service-feature.shell,.event-grid.shell,.event-filter.shell,.news-grid.shell{width:calc(100% - 30px)}.image-main{height:520px}.distance-card{left:8px}.story-grid.shell{grid-template-columns:1fr}.story-grid>img{height:520px}.room-row{padding:22px 0}.room-row-image{height:500px}.room-row-copy,.room-row:nth-child(even) .room-row-copy{width:calc(100% - 22px);margin-top:-50px;padding:30px 25px}.room-row-copy .round-arrow{position:static;margin-top:24px}.room-gallery.shell,.pool-mosaic.shell,.gallery-grid.shell{width:calc(100% - 20px)}.room-gallery{grid-template-columns:1fr}.room-gallery img,.room-gallery img:first-child{height:470px}.service-photo-band{grid-template-columns:1fr}.service-photo-band figure,.service-photo-band figure:first-child{grid-column:auto;height:480px}.event-grid.shell{grid-template-columns:1fr}.gallery-grid img,.gallery-grid figure:nth-child(1) img,.gallery-grid figure:nth-child(7) img{height:480px}.news-grid.shell{grid-template-columns:1fr}.news-grid img{height:380px}}

/* Softer coastal typography, accessible colour accents and quiet textures */
:root{--serif:"Dosis","Avenir Next",Avenir,sans-serif;--coral-text:#a94f3d}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.012em;line-height:1.02}
h3{font-weight:500}.hero h1{font-weight:300;letter-spacing:-.015em;line-height:.9}.page-hero h1{font-weight:300;letter-spacing:-.01em}.marine-manifesto h2 em{font-family:var(--serif);font-size:.72em;font-weight:300;letter-spacing:.015em;text-transform:none}
.booking-title strong,.distance-card strong,.rating strong,.quote-card blockquote{font-family:var(--serif)}

.intro-copy h2,.split-heading h2,.experience-copy h2,.reviews-intro h2,.editorial-two h2,.service-feature h2,.gallery-intro h2,.legal-copy h2,.contact-intro h2,.contact-form h2,.event-detail h2,.related-events h2,.event-copy h2,.news-grid h2{color:var(--sea)}
.intro-copy h2::first-line,.split-heading h2::first-line,.experience-copy h2::first-line,.reviews-intro h2::first-line,.editorial-two h2::first-line,.service-feature h2::first-line,.gallery-intro h2::first-line,.contact-intro h2::first-line{color:var(--coral-text)}
.marine-manifesto h2,.fairs-copy h2,.closing-inner h2,.story-panel h2,.event-contact h2,.inner-cta h2,.map-placeholder h2,.room-row-copy h2{color:#fff}
.marine-manifesto h2::first-line,.fairs-copy h2::first-line,.closing-inner h2::first-line,.story-panel h2::first-line,.event-contact h2::first-line,.map-placeholder h2::first-line{color:var(--coral)}

.page-hero:after{background-image:repeating-linear-gradient(108deg,rgba(221,248,244,.34) 0 1px,transparent 1px 22px);background-size:auto;opacity:.09;mask-image:linear-gradient(90deg,#000,transparent 74%)}
.rooms-section{background-image:linear-gradient(180deg,rgba(234,247,244,.97),rgba(248,252,250,.99)),repeating-linear-gradient(135deg,rgba(3,79,87,.055) 0 1px,transparent 1px 18px)}
.room-image-wrap:after,.event-image:after{opacity:.13;background-size:auto,11px 11px}
.service-photo-band figure:after{opacity:.12;background-size:auto,12px 12px}
.fairs-teaser:after{opacity:.42;background:repeating-linear-gradient(105deg,rgba(210,245,240,.055) 0 1px,transparent 1px 24px)}

.reviews{grid-template-columns:.68fr 1.32fr;gap:7vw}.reviews:after{opacity:.45}.reviews-carousel{position:relative;isolation:isolate;overflow:hidden;min-height:470px;padding:58px 64px 28px;background:linear-gradient(135deg,#00596f,#008da0);color:#fff}.reviews-carousel:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background-image:radial-gradient(rgba(224,250,246,.7) .55px,transparent .55px);background-size:12px 12px;opacity:.1;mask-image:linear-gradient(115deg,#000,transparent 72%)}
.review-slide{animation:review-in .45s ease-out}.review-source{display:flex;align-items:center;gap:16px;font-size:.66rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.review-stars{color:#ffd3b9;font-size:.9rem;letter-spacing:.13em}.review-quote-mark{display:block;height:74px;margin-top:22px;color:var(--coral);font-family:var(--serif);font-size:7rem;font-weight:300;line-height:1}.review-slide blockquote{max-width:780px;min-height:145px;margin:10px 0 34px;font-family:var(--serif);font-size:clamp(2rem,3.4vw,3.45rem);font-weight:300;line-height:1.12}.review-slide footer{display:flex;flex-direction:column;gap:3px}.review-slide footer strong{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}.review-slide footer span{color:#cce7e3;font-size:.72rem}.review-controls{display:flex;align-items:center;gap:10px;margin-top:28px;border-top:1px solid rgba(219,247,243,.23);padding-top:20px}.review-controls>button{width:44px;height:44px;border:1px solid rgba(220,248,244,.45);border-radius:50%;background:transparent;color:#fff;cursor:pointer}.review-controls>button:hover,.review-controls>button:focus-visible{background:#fff;color:var(--ink)}.review-dots{display:flex;align-items:center;gap:10px;margin:0 auto}.review-dots button{width:28px;height:28px;padding:0;border:0;background:transparent;cursor:pointer}.review-dots button:before{content:"";display:block;width:7px;height:7px;margin:auto;border:1px solid #d8f2ee;border-radius:50%}.review-dots button.is-current:before{background:var(--coral);border-color:var(--coral);transform:scale(1.35)}.review-pause{width:auto!important;min-width:74px;border-radius:99px!important;padding:0 13px!important;font-size:.62rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}@keyframes review-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:850px){.reviews{grid-template-columns:1fr}.reviews-carousel{min-height:440px}.review-slide blockquote{min-height:120px}}
@media (max-width:580px){h2{line-height:1.04}.reviews-carousel{min-height:470px;padding:38px 24px 22px}.review-slide blockquote{min-height:160px;font-size:2.25rem}.review-controls{gap:6px}.review-dots{gap:3px}.review-pause{min-width:68px;padding-inline:9px!important}}
@media (prefers-reduced-motion:reduce){.review-slide{animation:none}.reviews-carousel:before{display:none}}

/* Refined seaside hospitality system */
:root{--ink:#00324a;--ink-2:#00566e;--sea:#00798c;--sea-bright:#00b3c6;--lagoon:#7de3dc;--foam:#e7f8fa;--sand:#f6efde;--ivory:#f8fcfc;--gold:#f0bd4f;--coral:#ff8a65;--coral-text:#00798c;--line:rgba(0,50,74,.15);--serif:"Playfair Display",Baskerville,"Iowan Old Style",Georgia,serif}
body{background-color:var(--ivory);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='96' viewBox='0 0 240 96'%3E%3Cpath d='M0 24c30-12 50-12 80 0s50 12 80 0 50-12 80 0M-40 70c30-12 50-12 80 0s50 12 80 0 50-12 80 0 50 12 80 0' fill='none' stroke='%2300798c' stroke-opacity='.032' stroke-width='1'/%3E%3C/svg%3E");background-size:240px 96px}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.027em;line-height:.99}h3{font-weight:500}.hero h1{max-width:1120px;font-size:clamp(4.4rem,7.8vw,8.3rem);font-weight:400;line-height:.86;letter-spacing:-.035em}.hero h1 span{font-style:italic;font-weight:400;color:#d9efeb}.page-hero h1{font-weight:400;letter-spacing:-.025em}.review-slide blockquote{font-weight:400}.booking-title strong,.distance-card strong,.rating strong{font-family:var(--serif)}

h2::first-line{color:inherit!important}.intro-copy h2,.split-heading h2,.experience-copy h2,.reviews-intro h2,.editorial-two h2,.service-feature h2,.gallery-intro h2,.legal-copy h2,.contact-intro h2,.contact-form h2,.event-detail h2,.related-events h2,.event-copy h2,.news-grid h2{color:var(--ink)}
.marine-manifesto h2,.fairs-copy h2,.closing-inner h2,.story-panel h2,.event-contact h2,.inner-cta h2,.map-placeholder h2,.room-row-copy h2{color:#fff}
.title-accent{color:var(--sea);font-style:italic}.section-title-lockup.is-light .title-accent{color:#f0d8a2}

.section-title-lockup{display:grid;grid-template-columns:52px minmax(0,1fr);gap:20px;align-items:start;margin-bottom:32px}.section-title-lockup h2{margin:0}.section-title-icon{position:relative;display:block;width:52px;padding-top:7px;color:var(--sea)}.section-title-icon:after{content:"";display:block;width:34px;margin-top:9px;border-top:1px solid color-mix(in srgb,var(--sea) 58%,transparent)}.section-title-icon .marine-icon{width:46px;height:46px;stroke-width:1.3}.section-title-lockup.is-light .section-title-icon{color:var(--lagoon)}.section-title-lockup.is-light .section-title-icon:after{border-color:rgba(202,237,232,.48)}.section-title-lockup.is-centered{width:max-content;max-width:100%;margin-inline:auto;text-align:left}.split-heading .section-title-lockup{margin-bottom:0}.fairs-copy .section-title-lockup{max-width:900px}.reviews-intro .section-title-lockup{grid-template-columns:45px minmax(0,1fr);gap:16px}.reviews-intro .section-title-icon{width:45px}.reviews-intro .section-title-icon .marine-icon{width:40px;height:40px}.editorial-two .section-title-lockup{max-width:670px}.gallery-intro .section-title-lockup{width:max-content;max-width:100%;margin-inline:auto;text-align:left}

.button-gold,.booking-bar button,.distance-card{background:var(--gold);color:var(--ink)}.button-gold:hover{background:#ead49f}.nav-book span,.signature-grid span,.footer-main h2,.rating b,.quote-mark,.review-quote-mark{color:var(--gold)}.review-stars{color:#f2ddb0}.review-dots button.is-current:before{background:var(--gold);border-color:var(--gold)}
.signature-strip{background:linear-gradient(128deg,#00324a,#00798c 60%,#00a9b8)}.marine-manifesto{background:radial-gradient(circle at 18% 20%,rgba(109,190,187,.28),transparent 31%),linear-gradient(135deg,#00798c,#00324a)}.closing-cta{background:linear-gradient(135deg,#0095a6,#00465f)}.reviews-carousel{background:linear-gradient(135deg,#005c72,#00798c)}

.rooms-section{background-image:linear-gradient(180deg,rgba(237,247,244,.97),rgba(250,252,249,.98)),repeating-linear-gradient(135deg,rgba(0,121,140,.04) 0 1px,transparent 1px 20px)}.page-hero:after{opacity:.065}.room-image-wrap:after,.event-image:after{opacity:.1}.service-photo-band figure:after{opacity:.09}.fairs-teaser:after{opacity:.3}
@media (prefers-contrast:more){body{background-image:none}.page-hero:after,.room-image-wrap:after,.event-image:after,.service-photo-band figure:after,.fairs-teaser:after{display:none}}
@media (forced-colors:active){body{background-image:none}.section-title-icon:after{border-color:CanvasText}}
@media (max-width:850px){.hero h1{font-size:clamp(4rem,12vw,6.5rem)}.section-title-lockup{grid-template-columns:46px minmax(0,1fr);gap:16px}.section-title-icon{width:46px}.section-title-icon .marine-icon{width:40px;height:40px}}
@media (max-width:580px){.hero h1{font-size:3.55rem;line-height:.91}.section-title-lockup{grid-template-columns:38px minmax(0,1fr);gap:13px;margin-bottom:26px}.section-title-icon{width:38px;padding-top:5px}.section-title-icon .marine-icon{width:34px;height:34px}.section-title-icon:after{width:25px;margin-top:6px}.section-title-lockup h2{font-size:2.75rem}.marine-manifesto .section-title-lockup h2,.closing-cta .section-title-lockup h2{font-size:3.4rem}}

/* Page motion, editorial room composition and shaped dividers */
.page-transition-shell{min-height:100svh;animation:page-enter .62s cubic-bezier(.22,.72,.2,1) both}.page-transition-shell.is-leaving{pointer-events:none;animation:page-exit .28s ease-in both}@keyframes page-enter{from{opacity:.25;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes page-exit{from{opacity:1;transform:none}to{opacity:0;transform:translateY(-8px)}}

.hero-frame span,.hero-scroll{display:none!important}.page-hero h1>span{display:inline}.page-hero-waves{z-index:2}

.room-list.shell{position:relative;display:grid;grid-template-columns:repeat(12,1fr);align-items:start;gap:22px;width:min(1520px,calc(100% - 64px));padding:135px 0 175px}.room-list:before{content:"";position:absolute;top:28px;left:0;right:0;height:42px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='42' viewBox='0 0 320 42'%3E%3Cpath d='M0 22c40-18 80-18 120 0s80 18 120 0 80-18 120 0' fill='none' stroke='%2300798c' stroke-opacity='.28' stroke-width='1'/%3E%3C/svg%3E") repeat-x center/320px 42px;pointer-events:none}.room-row,.room-row:last-child{grid-row:1;padding:0;border:0;transition:transform .35s ease}.room-row:nth-child(1){grid-column:1/6;z-index:1}.room-row:nth-child(2){grid-column:5/9;z-index:3;margin-top:180px}.room-row:nth-child(3){grid-column:8/13;z-index:2;margin-top:58px}.room-row:hover{transform:translateY(-8px)}.room-row>a,.room-row:nth-child(even)>a{position:relative;display:block;min-height:0}.room-row-image{height:720px;border-radius:10px;background:var(--foam);box-shadow:0 28px 70px rgba(3,52,61,.12)}.room-row:nth-child(2) .room-row-image{height:620px}.room-row:nth-child(3) .room-row-image{height:690px}.room-row-image img{width:100%;height:100%;object-fit:cover}.room-row-image>span{top:20px;left:20px;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:rgba(3,48,57,.35);backdrop-filter:blur(5px)}.room-row-copy,.room-row:nth-child(even) .room-row-copy{position:absolute;z-index:3;left:22px;right:22px;bottom:22px;width:auto;padding:28px 72px 28px 28px;background:rgba(3,49,58,.91);border:1px solid rgba(218,243,239,.25);color:#fff;backdrop-filter:blur(12px)}.room-row-copy h2{margin:0 0 12px;font-size:clamp(2.7rem,3.8vw,4.1rem)}.room-row-copy .eyebrow{margin-bottom:10px}.room-row-copy>p:not(.eyebrow){display:-webkit-box;overflow:hidden;margin:0;-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#d8ece9;font-size:.84rem;line-height:1.55}.room-row-copy .round-arrow{right:22px;bottom:24px}

.review-google-link{display:inline-flex;align-items:center;gap:11px;margin-top:18px;padding-bottom:4px;border-bottom:1px solid rgba(224,246,242,.48);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.review-google-link:hover{border-color:var(--gold);color:#f4e1b7}.review-google-link span{font-size:.9rem}

@media (max-width:1150px){.room-list.shell{grid-template-columns:1fr 1fr;gap:28px 20px;padding-top:110px}.room-row,.room-row:nth-child(1),.room-row:nth-child(2),.room-row:nth-child(3){grid-row:auto;grid-column:auto;margin-top:0}.room-row:nth-child(3){grid-column:1/-1;width:65%;margin-inline:auto}.room-row-image,.room-row:nth-child(2) .room-row-image,.room-row:nth-child(3) .room-row-image{height:620px}}
@media (max-width:850px){.room-list.shell{grid-template-columns:1fr;gap:42px;padding-bottom:110px}.room-row:nth-child(3){grid-column:auto;width:auto}.room-row:hover{transform:none}.room-row-image,.room-row:nth-child(2) .room-row-image,.room-row:nth-child(3) .room-row-image{height:560px}.room-row-copy,.room-row:nth-child(even) .room-row-copy{position:relative;left:auto;right:auto;bottom:auto;width:calc(100% - 28px);margin:-60px auto 0;padding:30px 70px 30px 28px}.room-row-copy .round-arrow{position:absolute;right:20px;bottom:26px}}
@media (max-width:580px){.room-list.shell{width:calc(100% - 30px);padding-top:90px}.room-list:before{top:20px}.room-row-image,.room-row:nth-child(2) .room-row-image,.room-row:nth-child(3) .room-row-image{height:480px}.room-row-copy,.room-row:nth-child(even) .room-row-copy{width:calc(100% - 18px);margin-top:-42px;padding:26px 62px 26px 22px}.room-row-copy h2{font-size:3rem}.review-google-link{font-size:.61rem}}
@media (prefers-reduced-motion:reduce){.page-transition-shell,.page-transition-shell.is-leaving{animation:none}.room-row{transition:none}.room-row:hover{transform:none}}

/* Content accuracy, immersive pool, service bento and accessible media viewer */
.room-row{min-width:0}.room-row:nth-child(1){grid-column:1/5}.room-row:nth-child(2){grid-column:5/9;margin-top:150px}.room-row:nth-child(3){grid-column:9/13;margin-top:55px}.room-row-copy{isolation:isolate}.room-row-copy h2{overflow-wrap:normal;word-break:normal;hyphens:none}

.room-gallery.shell{align-items:stretch}.lightbox-trigger{position:relative;display:block;min-width:0;margin:0;padding:0;overflow:hidden;border:0;background:#dce9e5;color:#fff;cursor:zoom-in;text-align:inherit}.room-gallery .lightbox-trigger:first-child{grid-column:1/-1}.room-gallery .lightbox-trigger img{width:100%;height:min(64vh,660px);object-fit:cover;transition:transform .45s ease,filter .45s ease}.room-gallery .lightbox-trigger:first-child img{height:min(88vh,940px)}.lightbox-trigger>span{position:absolute;right:22px;bottom:22px;display:flex;align-items:center;gap:12px;padding:11px 15px;background:rgba(0,50,74,.86);border:1px solid rgba(255,255,255,.38);font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(7px)}.lightbox-trigger>span b{font-size:1rem;font-weight:400}.lightbox-trigger:hover img,.lightbox-trigger:focus-visible img{transform:scale(1.025);filter:brightness(.9)}
.lightbox{position:fixed;z-index:200;inset:0;display:grid;grid-template-columns:minmax(64px,1fr) minmax(0,1500px) minmax(64px,1fr);align-items:center;padding:72px 28px 28px;background:rgba(1,28,34,.96);color:#fff;animation:lightbox-in .24s ease-out}.lightbox-frame{grid-column:2;margin:0;min-width:0}.lightbox-frame img{width:100%;max-height:calc(100svh - 150px);object-fit:contain}.lightbox-frame figcaption{display:flex;gap:20px;justify-content:center;margin-top:16px;color:#dcebe8;font-size:.75rem}.lightbox-frame figcaption span{color:var(--gold);letter-spacing:.12em}.lightbox-close,.lightbox-nav{display:grid;place-items:center;border:1px solid rgba(226,247,243,.45);background:rgba(4,72,82,.45);color:#fff;cursor:pointer}.lightbox-close:hover,.lightbox-nav:hover,.lightbox-close:focus-visible,.lightbox-nav:focus-visible{background:#fff;color:var(--ink)}.lightbox-close{position:absolute;right:28px;top:22px;width:48px;height:48px;font-size:2rem;font-weight:300}.lightbox-nav{width:54px;height:54px;margin:auto;border-radius:50%;font-size:1.25rem}.lightbox-prev{grid-column:1}.lightbox-next{grid-column:3}@keyframes lightbox-in{from{opacity:0}to{opacity:1}}

.service-grid.shell{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;margin-bottom:110px;border:0}.service-grid article{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:310px;padding:36px 38px;overflow:hidden;border:0;background:var(--foam);box-shadow:0 18px 55px rgba(0,50,74,.07)}.service-grid article:after{content:"";position:absolute;right:-55px;bottom:-70px;width:180px;height:180px;border:1px solid currentColor;border-radius:50%;opacity:.08;box-shadow:0 0 0 26px currentColor,0 0 0 52px currentColor;pointer-events:none}.service-grid article:nth-child(1){grid-column:1/8;min-height:360px;background:#e7f4f0}.service-grid article:nth-child(2){grid-column:8/13;grid-row:span 2;background:linear-gradient(145deg,#00798c,#064650);color:#fff}.service-grid article:nth-child(3){grid-column:1/5;background:var(--sand)}.service-grid article:nth-child(4){grid-column:5/8;background:#d9eeea}.service-grid article:nth-child(5){grid-column:1/7;background:var(--ink);color:#fff}.service-grid article:nth-child(6){grid-column:7/13;background:#f0bd4f;color:var(--ink)}.service-card-head{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between}.service-card-head>span{color:var(--sea);font-size:.64rem;font-weight:700;letter-spacing:.18em}.service-card-head .marine-icon{width:64px;height:64px;color:var(--sea);stroke-width:1.35}.service-grid article:nth-child(2) .service-card-head>span,.service-grid article:nth-child(2) .marine-icon,.service-grid article:nth-child(5) .service-card-head>span,.service-grid article:nth-child(5) .marine-icon{color:#b9e2dc}.service-grid article:nth-child(6) .service-card-head>span,.service-grid article:nth-child(6) .marine-icon{color:#174d54}.service-card-copy{position:relative;z-index:1;max-width:610px}.service-grid h2{margin:54px 0 24px;color:inherit;font-size:clamp(2.5rem,4vw,4rem);line-height:1}.service-grid p{max-width:570px;margin:0;color:#315f64;font-size:.92rem;line-height:1.75}.service-grid article:nth-child(2) p,.service-grid article:nth-child(5) p{color:#d7ebe7}.service-feature>div:last-child .eyebrow{margin-bottom:22px}.service-feature h2{margin:0 0 30px}.service-feature>div:last-child>p:not(.eyebrow){margin:0;color:#2d6170;line-height:1.85}.service-feature .arrow-link{margin-top:32px}

.pool-intro{position:relative}.pool-story.shell{display:grid;grid-template-columns:1.4fr .6fr;gap:18px;width:min(1580px,calc(100% - 48px));padding-bottom:130px}.pool-story figure{position:relative;margin:0;overflow:hidden;background:#d9eae7}.pool-story img{width:100%;height:100%;object-fit:cover}.pool-story-main{min-height:min(92vh,940px)}.pool-story-main figcaption{position:absolute;left:24px;bottom:24px;max-width:330px;padding:16px 20px;background:rgba(0,50,74,.88);color:#fff;font-size:.76rem;backdrop-filter:blur(8px)}.pool-story-side{display:grid;grid-template-rows:minmax(330px,1fr) auto;gap:18px}.pool-story-side figure{min-height:430px}.pool-story-note{position:relative;overflow:hidden;padding:48px 42px;background:var(--foam)}.pool-story-note:after{content:"";position:absolute;right:-55px;bottom:-70px;width:210px;height:140px;border-top:1px solid rgba(0,121,140,.2);border-radius:50%}.pool-story-note .marine-icon{width:60px;height:60px;margin-bottom:32px;color:var(--sea)}.pool-story-note h2{margin:0 0 24px;font-size:clamp(2.5rem,3.5vw,4rem);color:var(--ink)}.pool-story-note>p:last-child{margin:0;color:#42686b}.pool-season{position:relative;padding:70px 0;background:var(--sand)}.pool-season:before{content:"";position:absolute;left:0;right:0;top:-24px;height:48px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='48' viewBox='0 0 320 48'%3E%3Cpath d='M0 25c40-18 80-18 120 0s80 18 120 0 80-18 120 0V48H0Z' fill='%23f2eee2'/%3E%3C/svg%3E") repeat-x center top/320px 48px}.pool-season-grid{display:grid;grid-template-columns:repeat(4,1fr)}.pool-season-grid>div{display:flex;flex-direction:column;gap:7px;padding:10px 38px;border-right:1px solid var(--line)}.pool-season-grid>div:last-child{border:0}.pool-season-grid span{color:#507174;font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.pool-season-grid strong{font-family:var(--serif);font-size:clamp(1.7rem,2.5vw,2.6rem);font-weight:400;line-height:1.15}.pool-editorial{position:relative;overflow:hidden;background:linear-gradient(135deg,#064650,#00798c);color:#fff}.pool-editorial:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(108deg,rgba(220,247,243,.055) 0 1px,transparent 1px 24px);pointer-events:none}.pool-editorial-grid{position:relative;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;align-items:center}.pool-editorial-copy>p:not(.eyebrow){max-width:570px;margin:0 0 34px;color:#d8ebe7}.pool-editorial-copy .section-title-lockup{margin-bottom:34px}.pool-editorial figure{margin:0}.pool-editorial img{width:100%;height:min(80vh,820px);object-fit:cover}.pool-editorial .button{margin-top:4px}

.contact-map{position:relative;min-height:min(82vh,820px);overflow:hidden;background:var(--ink)}.contact-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.78) contrast(1.03)}.contact-map-card{position:absolute;z-index:2;left:max(28px,calc((100% - 1240px)/2));top:50%;width:min(440px,calc(100% - 56px));padding:48px;background:rgba(0,50,74,.94);border:1px solid rgba(218,243,239,.26);color:#fff;transform:translateY(-50%);backdrop-filter:blur(10px)}.contact-map-card h2{margin:0 0 24px;color:#fff;font-size:clamp(3rem,5vw,5rem)}.contact-map-card>p:not(.eyebrow){margin-bottom:30px;color:#d8e9e6}.contact-map-card .button{background:rgba(0,35,41,.2)}

@media (max-width:1150px){.room-row:nth-child(1),.room-row:nth-child(2),.room-row:nth-child(3){grid-column:auto;margin-top:0}.service-grid article:nth-child(n){grid-column:span 6;grid-row:auto;min-height:330px}.service-grid article:nth-child(1),.service-grid article:nth-child(2){min-height:430px}.pool-story.shell{grid-template-columns:1fr 1fr}.pool-story-main{min-height:760px}}
@media (max-width:850px){.room-gallery.shell{grid-template-columns:1fr 1fr}.room-gallery .lightbox-trigger:first-child{grid-column:1/-1}.room-gallery .lightbox-trigger img{height:430px}.room-gallery .lightbox-trigger:first-child img{height:650px}.lightbox{grid-template-columns:58px minmax(0,1fr) 58px;padding-inline:10px}.lightbox-frame figcaption{padding-inline:8px}.service-grid.shell{grid-template-columns:1fr 1fr}.service-grid article:nth-child(n){grid-column:auto}.pool-story.shell{grid-template-columns:1fr}.pool-story-main{min-height:690px}.pool-story-side{grid-template-columns:1fr 1fr;grid-template-rows:auto}.pool-story-side figure{min-height:520px}.pool-season-grid{grid-template-columns:1fr 1fr;gap:34px 0}.pool-season-grid>div:nth-child(2){border-right:0}.pool-editorial-grid{grid-template-columns:1fr}.pool-editorial-copy{max-width:660px}.pool-editorial img{height:650px}.contact-map{min-height:850px}.contact-map-card{top:auto;right:24px;bottom:24px;left:24px;width:auto;transform:none}}
@media (max-width:580px){.room-gallery.shell{grid-template-columns:1fr}.room-gallery .lightbox-trigger:first-child{grid-column:auto}.room-gallery .lightbox-trigger img,.room-gallery .lightbox-trigger:first-child img{height:470px}.lightbox{grid-template-columns:52px minmax(0,1fr) 52px;padding:74px 4px 20px}.lightbox-close{right:14px}.lightbox-nav{width:44px;height:44px}.lightbox-frame figcaption{align-items:center;flex-direction:column;gap:4px;text-align:center;font-size:.68rem}.service-grid.shell{grid-template-columns:1fr;gap:14px;margin-bottom:78px}.service-grid article:nth-child(n){grid-column:auto;min-height:300px;padding:30px 28px}.service-grid article:nth-child(2){min-height:380px}.service-grid h2{margin-top:42px;font-size:2.8rem}.service-card-head .marine-icon{width:54px;height:54px}.service-feature h2{margin-bottom:24px}.pool-story.shell{width:calc(100% - 20px);padding-bottom:95px}.pool-story-main{min-height:570px}.pool-story-side{grid-template-columns:1fr}.pool-story-side figure{min-height:430px}.pool-story-note{padding:40px 28px}.pool-season-grid{grid-template-columns:1fr}.pool-season-grid>div,.pool-season-grid>div:nth-child(2){padding:20px 10px;border-right:0;border-bottom:1px solid var(--line)}.pool-season-grid>div:last-child{border-bottom:0}.pool-editorial img{height:500px}.contact-map{min-height:760px}.contact-map-card{right:14px;bottom:14px;left:14px;padding:34px 25px}.contact-map-card h2{font-size:3.2rem}}
@media (prefers-reduced-motion:reduce){.lightbox{animation:none}.room-gallery .lightbox-trigger img{transition:none}}
@media (prefers-contrast:more){.pool-editorial:before,.service-grid article:after{display:none}.lightbox-trigger>span,.contact-map-card{background:var(--ink)}}
@media (forced-colors:active){.contact-map iframe{filter:none}.lightbox{background:Canvas}.service-grid article{border:1px solid CanvasText}}

/* Google Maps feature and clearly perceptible page transitions */
.contact-map-section{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--foam),var(--ivory))}.contact-map-section:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='86' viewBox='0 0 300 86'%3E%3Cpath d='M0 43c38-16 75-16 113 0s75 16 113 0 75-16 113 0' fill='none' stroke='%2300798c' stroke-opacity='.07'/%3E%3C/svg%3E");background-size:300px 86px}.contact-map-heading{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:end;margin-bottom:62px}.contact-map-heading .section-title-lockup{margin-bottom:0}.contact-map-heading>.lead{max-width:600px;margin:0 0 7px}.contact-map-layout{position:relative;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(370px,.55fr);min-height:720px;background:var(--ink);box-shadow:0 28px 80px rgba(0,50,74,.16)}.contact-map-frame{position:relative;min-width:0;overflow:hidden;border:10px solid #fff}.contact-map-frame:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(0,50,74,.2)}.contact-map-frame iframe{display:block;width:100%;height:100%;min-height:700px;border:0;filter:saturate(.72) contrast(1.04) sepia(.06)}.contact-map-emblem{position:absolute;z-index:2;right:24px;top:24px;display:grid;place-items:center;width:74px;height:74px;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:rgba(0,50,74,.88);color:var(--lagoon);box-shadow:0 10px 35px rgba(0,50,74,.23);pointer-events:none;backdrop-filter:blur(7px)}.contact-map-emblem .marine-icon{width:40px;height:40px}.contact-map-card{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;width:auto;padding:58px 46px;background:linear-gradient(155deg,#00798c,#00324a);border:0;color:#fff;transform:none;backdrop-filter:none}.contact-map-card:before{content:"";position:absolute;inset:16px;border:1px solid rgba(210,239,234,.22);pointer-events:none}.contact-map-card h2{position:relative;margin:0 0 40px;font-size:clamp(3.2rem,4.5vw,5.2rem);line-height:.95}.contact-map-fact{position:relative;display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:center;padding:22px 0;border-top:1px solid rgba(218,243,239,.2)}.contact-map-fact .marine-icon{width:38px;height:38px;color:var(--lagoon)}.contact-map-fact div{display:flex;flex-direction:column}.contact-map-fact span{color:#bddbd6;font-size:.59rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.contact-map-fact strong{font-family:var(--serif);font-size:1.25rem;font-weight:400}.contact-map-card .button{position:relative;align-self:flex-start;margin-top:36px;background:rgba(1,42,49,.2)}.contact-map-card .button span{margin-left:12px}

.site-transition-curtain{position:fixed;z-index:190;inset:0;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#00324a 0%,#00798c 62%,#00a9b8 100%);color:#dff3ef;pointer-events:none;transform:translateY(-101%);animation:curtain-reveal .72s cubic-bezier(.76,0,.24,1) both}.site-transition-curtain:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(108deg,rgba(221,248,244,.055) 0 1px,transparent 1px 25px)}.site-transition-curtain>i{position:absolute;left:-5%;width:110%;height:90px;border-top:1px solid rgba(198,234,229,.38);border-radius:50%}.site-transition-curtain>i:nth-of-type(1){bottom:8%;transform:rotate(-2deg)}.site-transition-curtain>i:nth-of-type(2){bottom:4%;transform:rotate(2deg);opacity:.55}.site-transition-curtain.is-covering{animation:curtain-cover .54s cubic-bezier(.76,0,.24,1) both}.site-transition-mark{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:17px;font-size:.62rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.site-transition-mark .marine-icon{width:72px;height:72px;color:var(--lagoon)}.page-transition-shell{animation:page-enter .72s cubic-bezier(.22,.72,.2,1) both}.page-transition-shell.is-leaving{animation:page-exit .5s ease-in both}@keyframes curtain-reveal{0%{transform:translateY(0)}100%{transform:translateY(-101%)}}@keyframes curtain-cover{0%{transform:translateY(101%)}100%{transform:translateY(0)}}@keyframes page-enter{0%{opacity:.35;transform:translateY(20px);filter:blur(3px)}100%{opacity:1;transform:none;filter:none}}@keyframes page-exit{0%{opacity:1;transform:none}100%{opacity:.22;transform:translateY(-13px)}}

@media (max-width:950px){.contact-map-heading{grid-template-columns:1fr;gap:30px}.contact-map-layout{grid-template-columns:1fr;min-height:0}.contact-map-frame iframe{min-height:620px}.contact-map-card{padding:56px 48px}.contact-map-card .button{align-self:flex-start}}
@media (max-width:580px){.contact-map-heading{margin-bottom:42px}.contact-map-layout{width:calc(100% - 8px)}.contact-map-frame{border-width:6px}.contact-map-frame iframe{min-height:520px}.contact-map-emblem{right:16px;top:16px;width:60px;height:60px}.contact-map-emblem .marine-icon{width:32px;height:32px}.contact-map-card{padding:48px 30px}.contact-map-card h2{margin-bottom:32px;font-size:3.4rem}.contact-map-fact{grid-template-columns:38px 1fr;gap:13px}.contact-map-fact .marine-icon{width:32px;height:32px}.contact-map-card .button{width:100%;padding-inline:18px}.site-transition-mark .marine-icon{width:58px;height:58px}}
@media (prefers-reduced-motion:reduce){.site-transition-curtain{display:none}.page-transition-shell,.page-transition-shell.is-leaving{animation:none;filter:none}}
@media (prefers-contrast:more){.contact-map-section:before,.contact-map-card:before,.site-transition-curtain:before{display:none}.contact-map-frame iframe{filter:none}.contact-map-card{background:var(--ink)}}
@media (forced-colors:active){.contact-map-frame iframe{filter:none}.contact-map-emblem,.contact-map-card{border:1px solid CanvasText}.site-transition-curtain{display:none}}
.contact-map-layout .contact-map-card{inset:auto}

/* Complete editorial blog */
.desktop-nav{gap:clamp(16px,1.75vw,31px)}.blog-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end}.blog-intro .section-title-lockup{margin-bottom:0}.blog-intro>.lead{max-width:590px;margin:0 0 8px}.blog-feature{margin-bottom:130px}.blog-feature>a{display:grid;grid-template-columns:1.4fr .6fr;min-height:680px;background:var(--ink);color:#fff}.blog-feature-image{position:relative;min-width:0;overflow:hidden}.blog-feature-image:after,.blog-card-image:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(0,50,74,.28),transparent 52%)}.blog-feature-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.88);transition:transform .7s ease}.blog-feature-copy{position:relative;display:flex;flex-direction:column;justify-content:center;padding:64px 52px;background:linear-gradient(145deg,#00798c,#00324a)}.blog-feature-copy:after{content:"";position:absolute;inset:17px;border:1px solid rgba(215,240,235,.2);pointer-events:none}.blog-meta{position:relative;z-index:1;display:flex;align-items:center;gap:13px;color:#cce6e1;font-size:.61rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.blog-meta span{color:var(--gold)}.blog-meta span:after{content:"";display:inline-block;height:10px;margin-left:13px;border-left:1px solid currentColor;opacity:.5}.blog-feature h2{position:relative;z-index:1;margin:35px 0 27px;color:#fff;font-size:clamp(3.3rem,4.8vw,5.7rem);line-height:.95}.blog-feature-copy>p{position:relative;z-index:1;display:-webkit-box;overflow:hidden;margin:0;color:#d9ebe7;font-size:.94rem;-webkit-box-orient:vertical;-webkit-line-clamp:5}.blog-read{position:relative;z-index:1;display:flex;align-items:center;gap:15px;align-self:flex-start;margin-top:38px;padding-bottom:6px;border-bottom:1px solid currentColor;font-size:.66rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.blog-read b{font-size:1rem;font-weight:400}.blog-feature>a:hover img{transform:scale(1.025)}
.blog-archive{position:relative;background:linear-gradient(180deg,var(--foam),var(--ivory))}.blog-archive:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='86' viewBox='0 0 300 86'%3E%3Cpath d='M0 43c38-16 75-16 113 0s75 16 113 0 75-16 113 0' fill='none' stroke='%2300798c' stroke-opacity='.055'/%3E%3C/svg%3E");background-size:300px 86px}.blog-archive-heading{position:relative;display:flex;align-items:end;justify-content:space-between;margin-bottom:70px}.blog-archive-heading>div{display:grid;grid-template-columns:58px 1fr;align-items:center}.blog-archive-heading .marine-icon{grid-row:1/3;width:46px;height:46px;color:var(--sea)}.blog-archive-heading .eyebrow{margin:0 0 4px}.blog-archive-heading h2{margin:0;font-size:clamp(3.2rem,5vw,5.2rem)}.blog-archive-heading>span{padding-bottom:7px;color:#527176;font-size:.68rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.blog-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:72px 24px}.blog-card{min-width:0;content-visibility:auto;contain-intrinsic-size:620px}.blog-card>a{display:block;height:100%}.blog-card-image{position:relative;overflow:hidden;background:#d7e8e4}.blog-card-image img{width:100%;aspect-ratio:16/10;object-fit:cover;filter:saturate(.86);transition:transform .55s ease}.blog-card-image>span{position:absolute;z-index:2;left:18px;top:18px;display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:rgba(0,50,74,.58);color:#fff;font-size:.58rem;letter-spacing:.1em;backdrop-filter:blur(5px)}.blog-card-copy{padding:28px 8px 0}.blog-card .blog-meta{color:#5d7678}.blog-card .blog-meta span{color:var(--sea)}.blog-card h2{margin:20px 0 16px;color:var(--ink);font-size:clamp(2rem,2.55vw,3rem);line-height:1.08}.blog-card-copy>p{display:-webkit-box;overflow:hidden;margin:0;color:#4b696c;font-size:.86rem;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:3}.blog-card .blog-read{color:var(--sea)}.blog-card>a:hover img{transform:scale(1.035)}
.blog-breadcrumb{display:flex;align-items:center;gap:10px;overflow:hidden;padding-top:30px;color:#61777a;font-size:.68rem}.blog-breadcrumb a{text-decoration:underline;text-underline-offset:4px}.blog-breadcrumb span[aria-current]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.article-layout{display:grid;grid-template-columns:260px minmax(0,790px);gap:10vw;align-items:start;justify-content:center}.article-meta{position:sticky;top:35px;display:flex;flex-direction:column;border-top:1px solid var(--line)}.article-meta>.marine-icon{width:58px;height:58px;margin:28px 0;color:var(--sea)}.article-meta>div{display:flex;flex-direction:column;gap:4px;padding:18px 0;border-top:1px solid var(--line)}.article-meta>div>span{color:#6a8080;font-size:.59rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.article-meta time,.article-meta strong{font-family:var(--serif);font-size:1.16rem;font-weight:400}.article-meta .arrow-link{align-self:flex-start;margin-top:30px}.article-body{min-width:0}.article-deck{margin:0 0 52px;padding-bottom:43px;border-bottom:1px solid var(--line);color:#244e54;font-family:var(--serif);font-size:clamp(1.55rem,2.5vw,2.3rem);line-height:1.42}.article-content{color:#294f54;font-size:1.03rem;line-height:1.9}.article-content p{margin:0 0 27px}.article-content h2,.article-content h3,.article-content h4{color:var(--ink);line-height:1.13}.article-content h2{margin:78px 0 28px;font-size:clamp(2.35rem,4vw,4rem)}.article-content h3{margin:58px 0 24px;font-size:clamp(1.85rem,3vw,2.8rem)}.article-content h4{margin:45px 0 18px;font-size:1.6rem}.article-content ul,.article-content ol{margin:0 0 34px;padding-left:25px}.article-content li{margin-bottom:12px;padding-left:6px}.article-content li::marker{color:var(--sea)}.article-content blockquote{margin:48px 0;padding:5px 0 5px 30px;border-left:2px solid var(--gold);color:var(--ink);font-family:var(--serif);font-size:1.65rem}.article-content hr{width:86px;margin:58px 0;border:0;border-top:1px solid var(--gold)}.article-content a{color:var(--sea);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.related-posts{background:var(--sand)}.related-posts-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:55px}.related-posts-heading>div{display:grid;grid-template-columns:55px 1fr;align-items:center}.related-posts-heading .marine-icon{grid-row:1/3;width:44px;height:44px;color:var(--sea)}.related-posts-heading .eyebrow{margin:0 0 5px}.related-posts-heading h2{margin:0;font-size:clamp(2.8rem,4.5vw,4.8rem)}.related-posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.related-posts-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;filter:saturate(.86)}.related-posts-grid time{display:block;margin-top:20px;color:#65797b;font-size:.61rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.related-posts-grid h3{margin:9px 0 0;font-size:clamp(1.6rem,2.2vw,2.35rem);line-height:1.12}
@media (max-width:1100px){.brand{width:165px}.desktop-nav{gap:14px;margin-right:24px}.desktop-nav a{font-size:.62rem}.nav-book{padding-left:20px}.blog-feature>a{grid-template-columns:1.15fr .85fr}.blog-grid{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:220px minmax(0,720px);gap:6vw}}
@media (max-width:850px){.blog-intro{grid-template-columns:1fr;gap:34px}.blog-feature>a{grid-template-columns:1fr}.blog-feature-image{height:610px}.blog-feature-copy{min-height:500px}.article-layout{grid-template-columns:1fr}.article-meta{position:static;display:grid;grid-template-columns:repeat(3,1fr);gap:0 24px}.article-meta>.marine-icon{grid-column:1/-1}.article-meta .arrow-link{grid-column:1/-1}.related-posts-grid{grid-template-columns:1fr 1fr}.related-posts-grid article:last-child{display:none}}
@media (max-width:580px){.blog-feature{width:calc(100% - 20px);margin-bottom:80px}.blog-feature-image{height:460px}.blog-feature-copy{min-height:470px;padding:48px 28px}.blog-feature h2{font-size:3.25rem}.blog-archive-heading{align-items:flex-start;flex-direction:column;gap:26px}.blog-grid{grid-template-columns:1fr;gap:58px}.blog-card-image img{aspect-ratio:4/3}.blog-card h2{font-size:2.5rem}.blog-breadcrumb{width:calc(100% - 30px);padding-top:22px}.article-meta{grid-template-columns:1fr}.article-meta>.marine-icon,.article-meta .arrow-link{grid-column:auto}.article-deck{font-size:1.65rem}.article-content{font-size:1rem}.article-content h2{margin-top:60px;font-size:2.55rem}.related-posts-heading{align-items:flex-start;flex-direction:column;gap:28px}.related-posts-grid{grid-template-columns:1fr}.related-posts-grid article:last-child{display:block}.related-posts-grid h3{font-size:2rem}}
@media (prefers-contrast:more){.blog-archive:before,.blog-feature-copy:after{display:none}.blog-feature-copy{background:var(--ink)}.blog-card-image img,.related-posts-grid img{filter:none}}

/* Home magazine, reflow safeguards and accessibility refinements */
:root{--gold-text:#80652c}
html,body{max-width:100%;overflow-x:clip}iframe{max-width:100%}button,input,select,textarea{font:inherit;min-width:0}a,button,summary,input,select,textarea{outline-offset:4px}:focus-visible{outline:3px solid #fff;box-shadow:0 0 0 6px var(--sea)}
.button{max-width:100%;height:auto;padding-block:12px;text-align:center;white-space:normal;line-height:1.35}.page-hero h1,.blog-feature h2,.blog-card h2,.article-content h2,.article-content h3,.related-posts-grid h3{overflow-wrap:normal;word-break:normal;hyphens:none}.field-grid>*{min-width:0}.mobile-nav nav{overflow-y:auto;overscroll-behavior:contain}
.rating b{color:var(--gold-text)}.event-copy>p{color:var(--sea)}.event-detail aside>span,.related-events small,.contact-block>span,.article-meta>div>span,.news-grid>article>p{color:#526d70}.related-posts-grid time{color:#5a7173}

.home-blog{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--ivory),var(--foam))}.home-blog:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='86' viewBox='0 0 300 86'%3E%3Cpath d='M0 43c38-16 75-16 113 0s75 16 113 0 75-16 113 0' fill='none' stroke='%2300798c' stroke-opacity='.05'/%3E%3C/svg%3E");background-size:300px 86px}.home-blog-heading{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end;margin-bottom:68px}.home-blog-heading .section-title-lockup{margin-bottom:0}.home-blog-heading>div:last-child{max-width:580px;padding-bottom:8px}.home-blog-heading>div:last-child>p{margin-bottom:28px;color:#2d6170}.home-blog-grid{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(2,minmax(330px,1fr));gap:18px;min-height:780px}.home-blog-card{position:relative;min-width:0;overflow:hidden;background:var(--ink);color:#fff}.home-blog-card-1{grid-column:1/8;grid-row:1/3}.home-blog-card-2,.home-blog-card-3{grid-column:8/13}.home-blog-card>a{position:relative;display:block;width:100%;height:100%;min-height:330px;overflow:hidden}.home-blog-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.84);transition:transform .65s ease,filter .65s ease}.home-blog-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,34,52,.94) 0%,rgba(2,43,51,.54) 42%,rgba(2,43,51,.05) 72%)}.home-blog-copy{position:absolute;z-index:1;right:0;bottom:0;left:0;padding:36px}.home-blog-copy time{display:block;margin-bottom:13px;color:#d8ebe7;font-size:.63rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.home-blog-copy h3{max-width:820px;margin:0;color:#fff;font-size:clamp(2.2rem,3.7vw,4.5rem);line-height:1;overflow-wrap:normal;word-break:normal;hyphens:none}.home-blog-card:not(.home-blog-card-1) h3{font-size:clamp(1.8rem,2.6vw,2.8rem)}.home-blog-link{display:inline-flex;align-items:center;gap:12px;margin-top:24px;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.7);font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.home-blog-link b{font-size:.9rem;font-weight:400}.home-blog-card>a:hover img,.home-blog-card>a:focus-visible img{transform:scale(1.03);filter:saturate(.92)}

@media (max-width:850px){.home-blog-heading{grid-template-columns:1fr;gap:28px}.home-blog-heading>div:last-child{padding-bottom:0}.home-blog-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto;min-height:0}.home-blog-card-1{grid-column:1/-1;grid-row:auto;height:650px}.home-blog-card-2,.home-blog-card-3{grid-column:auto;height:470px}.home-blog-card:not(.home-blog-card-1) h3{font-size:2.45rem}}
@media (max-width:580px){.home-blog-heading{margin-bottom:46px}.home-blog-grid{grid-template-columns:1fr;gap:14px}.home-blog-card-1,.home-blog-card-2,.home-blog-card-3{grid-column:auto;height:500px}.home-blog-copy{padding:28px 24px}.home-blog-copy h3,.home-blog-card:not(.home-blog-card-1) h3{font-size:2.55rem}.home-blog-link{margin-top:20px}.page-hero h1{font-size:clamp(2.9rem,14vw,3.7rem)}.contact-form input,.contact-form select,.contact-form textarea{width:100%}}
@media (max-width:380px){.shell{width:calc(100% - 24px)}.hero h1{font-size:3.05rem}.page-hero h1{font-size:2.8rem}.hero-actions{width:100%}.hero-actions .button,.booking-bar button{width:100%}.home-blog-card-1,.home-blog-card-2,.home-blog-card-3{height:450px}.home-blog-copy h3,.home-blog-card:not(.home-blog-card-1) h3{font-size:2.2rem}.mobile-nav nav{padding-inline:20px}.mobile-nav nav>a:not(.button){font-size:1.72rem}}
@media (hover:none){.home-blog-card>a:hover img{transform:none;filter:saturate(.84)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.home-blog-card img{transition:none}.home-blog-card>a:hover img,.home-blog-card>a:focus-visible img{transform:none}}
@media (prefers-contrast:more){.home-blog:before{display:none}.home-blog-shade{background:linear-gradient(0deg,#012c34 0 46%,transparent 82%)}}
@media (forced-colors:active){:focus-visible{outline:3px solid CanvasText;box-shadow:none}.home-blog-shade{background:Canvas}.home-blog-card{border:1px solid CanvasText}}

/* Consent management, blocked embeds and accessibility statement */
.footer-cookie-button{margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.footer-cookie-button:hover,.footer-cookie-button:focus-visible{text-decoration:underline;text-underline-offset:4px}.contact-form .checkbox a{text-decoration:underline;text-underline-offset:3px}
.cookie-banner{position:fixed;z-index:310;right:22px;bottom:22px;left:22px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:48px;align-items:end;width:min(1160px,calc(100% - 44px));max-height:calc(100svh - 44px);margin-inline:auto;padding:38px 42px;overflow:auto;border:1px solid rgba(209,239,234,.34);background:linear-gradient(145deg,#00324a,#00798c);box-shadow:0 24px 90px rgba(1,28,34,.34);color:#fff}.cookie-banner:before{content:"";position:absolute;inset:11px;border:1px solid rgba(214,242,237,.13);pointer-events:none}.cookie-close,.cookie-dialog-close{position:absolute;z-index:2;right:14px;top:12px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.48);border-radius:50%;background:transparent;color:#fff;font-size:1.75rem;line-height:1;cursor:pointer}.cookie-intro,.cookie-actions{position:relative;z-index:1}.cookie-kicker{display:block;margin-bottom:11px;color:#f0bd4f;font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.cookie-banner h2,.cookie-dialog h2{margin:0 48px 16px 0;color:#fff;font-size:clamp(2rem,3.3vw,3.55rem);line-height:1}.cookie-banner p,.cookie-dialog>p{max-width:750px;margin-bottom:15px;color:#d8ebe7;font-size:.91rem;line-height:1.65}.cookie-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0!important}.cookie-links a,.map-consent-placeholder>a{color:#fff;text-decoration:underline;text-underline-offset:4px}.cookie-actions{display:grid;grid-template-columns:1fr;gap:10px}.cookie-action{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:11px 18px;border:1px solid rgba(255,255,255,.74);background:transparent;color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.09em;line-height:1.3;text-align:center;text-transform:uppercase;cursor:pointer}.cookie-action:hover{background:#fff;color:var(--ink)}.cookie-action-reject{background:#fff;color:var(--ink)}.cookie-action-settings{background:transparent;color:#fff}.cookie-action-accept{border-color:var(--gold);background:var(--gold);color:var(--ink)}
.cookie-dialog-backdrop{position:fixed;z-index:320;inset:0;display:grid;place-items:center;padding:22px;background:rgba(1,28,34,.76);backdrop-filter:blur(6px)}.cookie-dialog{position:relative;width:min(760px,100%);max-height:calc(100svh - 44px);padding:44px;overflow:auto;border:1px solid rgba(213,240,236,.28);background:var(--ink);box-shadow:0 28px 90px rgba(1,20,25,.45);color:#fff}.cookie-categories{margin-top:28px;border-top:1px solid rgba(220,245,241,.2)}.cookie-categories label{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:20px 0;border-bottom:1px solid rgba(220,245,241,.2);cursor:pointer}.cookie-categories label:has(input:disabled){cursor:default}.cookie-categories label>span{display:flex;flex-direction:column;gap:4px}.cookie-categories strong{font-family:var(--serif);font-size:1.32rem;font-weight:400}.cookie-categories small{color:#c5deda;font-size:.76rem;line-height:1.5}.cookie-categories input{width:24px;height:24px;accent-color:var(--gold)}.cookie-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}
.map-consent-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:700px;padding:48px;text-align:center;background:radial-gradient(circle at 50% 20%,rgba(168,216,210,.14),transparent 34%),linear-gradient(145deg,#00324a,#00798c);color:#fff}.map-consent-placeholder>span{display:grid;place-items:center;width:74px;height:74px;margin-bottom:27px;border:1px solid rgba(255,255,255,.58);border-radius:50%;font-size:2rem}.map-consent-placeholder h3{max-width:520px;margin:0 0 18px;color:#fff;font-size:clamp(2.4rem,4.5vw,4.5rem)}.map-consent-placeholder p{max-width:480px;margin-bottom:28px;color:#d8ebe7}.map-consent-placeholder .button{margin-bottom:22px}
.accessibility-statement{max-width:980px}.accessibility-statement>section{padding-top:12px}.accessibility-statement h3{margin-bottom:20px}.accessibility-statement ul{margin:0 0 34px;padding-left:25px}.accessibility-statement li{margin-bottom:12px;padding-left:6px}.accessibility-statement li::marker{color:var(--sea)}.accessibility-status{margin:0 0 38px;padding:30px 34px;border-left:3px solid var(--sea);background:var(--foam)}.accessibility-status strong{display:block;margin-bottom:10px;color:var(--ink);font-family:var(--serif);font-size:2rem;font-weight:400}.accessibility-status p{margin:0}.accessibility-statement a{text-decoration:underline;text-underline-offset:4px}
@media (max-width:850px){.cookie-banner{grid-template-columns:1fr;gap:26px;align-items:start}.cookie-actions{grid-template-columns:repeat(3,1fr)}.map-consent-placeholder{min-height:620px}}
@media (max-width:650px){.cookie-banner{right:0;bottom:0;left:0;width:100%;max-height:92svh;padding:34px 24px 24px;border-right:0;border-bottom:0;border-left:0}.cookie-banner h2{font-size:2.35rem}.cookie-actions{grid-template-columns:1fr}.cookie-dialog-backdrop{padding:0}.cookie-dialog{width:100%;max-height:100svh;min-height:100svh;padding:38px 22px}.cookie-dialog-actions{grid-template-columns:1fr}.cookie-categories label{gap:18px}.map-consent-placeholder{min-height:520px;padding:35px 22px}.accessibility-status{padding:26px 23px}}
@media (prefers-reduced-motion:reduce){.cookie-dialog-backdrop{backdrop-filter:none}}
@media (prefers-contrast:more){.cookie-banner,.cookie-dialog,.map-consent-placeholder{background:var(--ink)}.cookie-banner:before{display:none}}
@media (forced-colors:active){.cookie-banner,.cookie-dialog,.map-consent-placeholder{border:2px solid CanvasText;background:Canvas}.cookie-action,.cookie-close,.cookie-dialog-close{border:1px solid ButtonText}.accessibility-status{border:2px solid CanvasText}}

/* Final cross-device, spacing, hotel editorial and conversion refinements */
.section-title-lockup{margin-bottom:clamp(34px,4vw,52px)}
h2+p,h3+p{margin-top:clamp(18px,2vw,28px)}
.section-title-lockup+p{margin-top:0}
.editorial-two>*,.room-detail-intro>*,.service-feature>*,.event-detail>*,.contact-layout>*,.home-blog-heading>*,.contact-map-heading>*{min-width:0}
h1,h2,h3{overflow-wrap:normal;word-break:normal;hyphens:none}.lead,.rich-copy p,.event-detail p,.story-panel p,.service-card-copy p{overflow-wrap:break-word}

.whatsapp-float{position:fixed;z-index:180;left:auto;right:24px;bottom:24px;display:grid;place-items:center;width:62px;height:62px;border:1px solid rgba(255,255,255,.76);border-radius:50%;background:#00798c;color:#fff;box-shadow:0 14px 38px rgba(0,50,74,.3);transition:transform .2s ease,background .2s ease}
.whatsapp-float svg{width:32px;height:32px}.whatsapp-float>span{position:absolute;left:auto;right:72px;padding:7px 11px;background:var(--ink);color:#fff;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:0;pointer-events:none;transform:translateX(6px);transition:opacity .2s ease,transform .2s ease;white-space:nowrap}
.whatsapp-float:hover,.whatsapp-float:focus-visible{background:#0a8b80;transform:translateY(-3px)}.whatsapp-float:hover>span,.whatsapp-float:focus-visible>span{opacity:1;transform:none}

.lightbox{display:flex;align-items:center;justify-content:center;padding:74px 78px 30px;overflow:hidden}
.lightbox-frame{width:min(1500px,100%);max-height:calc(100svh - 104px);margin:0}.lightbox-frame img{width:100%;height:auto;max-height:calc(100svh - 154px);object-fit:contain}
.lightbox-nav{position:absolute;z-index:2;top:50%;margin:0;transform:translateY(-50%)}.lightbox-prev{left:18px}.lightbox-next{right:18px}

.hotel-highlights{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--foam),var(--ivory))}.hotel-highlights:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='86' viewBox='0 0 300 86'%3E%3Cpath d='M0 43c38-16 75-16 113 0s75 16 113 0 75-16 113 0' fill='none' stroke='%2300798c' stroke-opacity='.05'/%3E%3C/svg%3E");background-size:300px 86px}
.hotel-highlights-heading{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end;margin-bottom:68px}.hotel-highlights-heading .section-title-lockup{margin-bottom:0}.hotel-highlights-heading>.lead{max-width:570px;margin-bottom:8px}
.hotel-highlights-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.hotel-highlights-grid article{min-width:0;min-height:330px;padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.34)}.hotel-highlights-grid article>div{display:flex;align-items:flex-start;justify-content:space-between;color:var(--sea)}.hotel-highlights-grid article>div>span{font-size:.62rem;font-weight:700;letter-spacing:.16em}.hotel-highlights-grid .marine-icon{width:56px;height:56px}.hotel-highlights-grid h3{margin:55px 0 20px;font-size:clamp(2rem,2.8vw,3rem);line-height:1.05}.hotel-highlights-grid p{margin:0;color:#2d6170;font-size:.88rem;line-height:1.75}
.hotel-rhythm{display:grid;grid-template-columns:1.12fr .88fr;gap:8vw;align-items:center}.hotel-rhythm figure{position:relative;margin:0}.hotel-rhythm img{width:100%;height:min(78vh,760px);object-fit:cover}.hotel-rhythm figcaption{position:absolute;right:20px;bottom:20px;padding:10px 14px;background:rgba(0,50,74,.88);color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.hotel-rhythm>div{min-width:0}.hotel-rhythm>div>p:not(.eyebrow){color:#2d6170}.hotel-rhythm-links{display:flex;flex-wrap:wrap;gap:15px 32px;margin-top:34px}
.hotel-location{display:grid;grid-template-columns:1.15fr .85fr;background:linear-gradient(135deg,var(--sea),var(--ink));color:#fff}.hotel-location>img{width:100%;height:min(88vh,850px);object-fit:cover}.hotel-location>div{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:clamp(54px,7vw,110px)}.hotel-location>div>p:not(.eyebrow){max-width:620px;color:#d7e9e6}.hotel-location .arrow-link{align-self:flex-start;color:#fff;border-color:rgba(255,255,255,.65)}

.gallia-fade-ready .gallia-fade{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.72,.2,1)}.gallia-fade-ready .gallia-fade.is-visible{opacity:1;transform:none}

@media (max-width:1120px){.desktop-nav,.nav-book{display:none}.mobile-nav{display:block;margin-left:auto}.mobile-nav summary{display:grid;place-content:center;gap:8px;width:48px;height:48px;list-style:none;cursor:pointer}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{display:block;width:26px;border-top:2px solid #fff}.mobile-nav nav{position:absolute;right:0;left:0;top:134px;display:flex;min-height:calc(100svh - 134px);max-height:calc(100svh - 134px);flex-direction:column;gap:12px;padding:38px 28px;overflow-y:auto;background:var(--ink);overscroll-behavior:contain}.mobile-nav nav>a:not(.button){padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.12);font-family:var(--serif);font-size:1.75rem;line-height:1.2}.mobile-nav .button{margin-top:18px}.hotel-highlights-grid{grid-template-columns:1fr 1fr}.hotel-rhythm{grid-template-columns:1fr 1fr;gap:6vw}}
@media (max-width:850px){.mobile-nav nav{top:78px;min-height:calc(100svh - 78px);max-height:calc(100svh - 78px)}.hotel-highlights-heading,.hotel-rhythm{grid-template-columns:1fr;gap:38px}.hotel-highlights-heading>.lead{margin:0}.hotel-rhythm img{height:620px}.hotel-location{grid-template-columns:1fr}.hotel-location>img{height:620px}}
@media (max-width:580px){.section-title-lockup{grid-template-columns:42px minmax(0,1fr);gap:14px;margin-bottom:34px}.section-title-icon{width:42px}.section-title-icon .marine-icon{width:38px;height:38px}.hero{height:auto;min-height:max(720px,100svh);padding-block:138px 105px}.hero-content{padding-top:0}.hero h1{max-width:100%;font-size:clamp(3.05rem,15vw,4.15rem);line-height:.92;overflow-wrap:normal;word-break:normal;hyphens:none}.page-hero{min-height:max(500px,72svh);height:auto;padding-top:150px}.page-hero h1{max-width:100%;font-size:clamp(2.65rem,13vw,3.55rem);line-height:1;overflow-wrap:normal;word-break:normal;hyphens:none}.rich-copy{padding-top:0}.story-panel{padding:44px 28px}.story-panel h2{font-size:3rem}.home-blog-card-1,.home-blog-card-2,.home-blog-card-3{height:auto;min-height:500px}.home-blog-card>a{min-height:inherit}.home-blog-copy{position:absolute}.blog-feature h2{font-size:clamp(2.6rem,12vw,3.25rem)}.event-copy{padding-right:48px}.event-detail article h2{font-size:clamp(2.65rem,12vw,3.6rem)}.event-contact>div{padding:70px 28px}.event-contact h2{font-size:3.35rem}.contact-map-heading>.lead{margin-top:4px}.room-row-copy h2{overflow-wrap:normal;word-break:normal;hyphens:none}.lightbox{padding:72px 8px 18px;overflow-y:auto}.lightbox-frame{width:100%;max-height:none}.lightbox-frame img{max-height:calc(100svh - 150px)}.lightbox-prev{left:7px}.lightbox-next{right:7px}.lightbox-nav{width:46px;height:46px;background:rgba(0,50,74,.86)}.lightbox-frame figcaption{padding-inline:54px}.whatsapp-float{left:auto;right:16px;bottom:16px;width:58px;height:58px}.whatsapp-float>span{display:none}.hotel-highlights-grid{grid-template-columns:1fr}.hotel-highlights-grid article{min-height:0;padding:30px 26px}.hotel-highlights-grid h3{margin-top:38px}.hotel-rhythm img,.hotel-location>img{height:500px}.hotel-location>div{padding:70px 26px}.hotel-rhythm-links{align-items:flex-start;flex-direction:column}.stats-row strong{font-size:3rem}}
@media (max-width:380px){.hero h1{font-size:2.85rem}.page-hero h1{font-size:2.55rem}.hotel-location>div{padding-inline:20px}.story-panel h2{font-size:2.75rem}.mobile-nav nav>a:not(.button){font-size:1.6rem}}
@supports not (overflow:clip){html,body{overflow-x:hidden}}
@media (prefers-reduced-motion:reduce){.gallia-fade-ready .gallia-fade,.gallia-fade-ready .gallia-fade.is-visible{opacity:1;transform:none;transition:none}.whatsapp-float{transition:none}}
@media (prefers-contrast:more){.hotel-highlights:before{display:none}.whatsapp-float{background:var(--ink);border:2px solid #fff}}
@media (forced-colors:active){.whatsapp-float,.hotel-highlights-grid article{border:1px solid CanvasText}.whatsapp-float{background:ButtonFace;color:ButtonText}.gallia-fade-ready .gallia-fade{opacity:1;transform:none}}

/* Static editorial heroes */
.hero-media-wrap{position:absolute;inset:0;overflow:hidden;background:#00324a}
.hero-still{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:saturate(.9)}
.hero-shade{z-index:2;background:linear-gradient(0deg,rgba(0,38,46,.88),rgba(0,52,60,.25) 64%,rgba(0,38,46,.2)),linear-gradient(90deg,rgba(0,43,51,.76),rgba(0,43,51,.35) 48%,transparent 82%),radial-gradient(rgba(221,248,244,.1) .7px,transparent .7px);background-size:auto,auto,8px 8px}
.hero-frame,.hero-content,.hero-waves{z-index:3}
.page-hero{isolation:isolate;overflow:hidden}
.page-hero-media{position:absolute;z-index:0;inset:0;overflow:hidden;background:var(--ink)}
.page-hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:1;filter:saturate(.88);transform:none}
.page-hero-shade{z-index:1}.page-hero-mark,.page-hero>.shell,.page-hero-waves{z-index:2}
.page-hero-title-accent{color:#f0c482;font-family:"Cormorant Accent","Cormorant Garamond",Garamond,Georgia,serif;font-size:1.16em;font-style:italic;font-weight:500;letter-spacing:-.025em;line-height:.82;text-shadow:0 2px 18px rgba(1,28,34,.3)}
@media (max-width:580px){.hero-still,.page-hero-media img{object-position:center center}.page-hero-title-accent{font-size:1.13em}.page-hero h1{line-height:.98}}
@media (prefers-contrast:more){.page-hero-title-accent{color:#fff;text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.12em}.hero-still,.page-hero-media img{filter:none}}
@media (forced-colors:active){.page-hero-title-accent{color:Highlight;text-shadow:none}}

/* Complete room carousel and quote request */
.room-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,31%);grid-template-columns:none;gap:22px;overflow-x:auto;padding-bottom:26px;scroll-snap-type:x mandatory;scrollbar-color:var(--sea) rgba(0,121,140,.12);scrollbar-width:thin}.room-carousel .room-card{scroll-snap-align:start;min-width:0}.room-carousel .room-card:last-child{grid-column:auto;width:auto;margin-inline:0}.room-carousel:focus-within{scroll-behavior:smooth}.quote-section{position:relative;overflow:hidden;background:linear-gradient(135deg,#00324a,#00798c);color:#fff}.quote-section:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(224,250,246,.55) .6px,transparent .6px);background-size:12px 12px;opacity:.08}.quote-layout{position:relative;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;align-items:start}.quote-copy{container-type:inline-size;position:sticky;top:140px}.quote-copy>p:last-child{max-width:520px;color:#d8ebe7;line-height:1.8}.quote-form{background:#e7f8fa;color:var(--ink)}.quote-form h2{margin-top:0}.quote-form .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-form label:last-of-type{grid-column:1/-1}
.section-title-lockup h2,.room-card h3,.room-row-copy h2,.contact-form h2{overflow-wrap:normal;word-break:keep-all;hyphens:none;text-wrap:balance}
@media (max-width:850px){.room-carousel{grid-auto-columns:minmax(270px,46%)}.quote-layout{grid-template-columns:1fr}.quote-copy{position:static}.quote-form .field-grid{grid-template-columns:1fr 1fr}}
@media (max-width:580px){.room-carousel.shell{width:calc(100% - 15px);margin-left:15px;grid-auto-columns:minmax(270px,86%);padding-right:15px}.quote-form .field-grid{grid-template-columns:1fr}.quote-section .section-title-lockup h2{font-size:clamp(2.3rem,10.5cqi,3.4rem)}}
@media (prefers-reduced-motion:reduce){.room-carousel:focus-within{scroll-behavior:auto}}

/* Floating accessibility preferences; WordPress uses the matching WAH plugin. */
.accessibility-toolbar{position:relative;z-index:300}
.accessibility-trigger{position:fixed;left:auto;right:24px;bottom:118px;display:grid;place-items:center;width:62px;height:62px;padding:0;border:1px solid rgba(255,255,255,.78);border-radius:50%;background:#00324a;color:#fff;box-shadow:0 14px 38px rgba(0,50,74,.32);cursor:pointer;transition:transform .2s ease,background .2s ease}
.accessibility-trigger svg{width:31px;height:31px}.accessibility-trigger>span{position:absolute;left:auto;right:72px;padding:7px 11px;background:#00324a;color:#fff;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:0;pointer-events:none;transform:translateX(6px);transition:opacity .2s ease,transform .2s ease;white-space:nowrap}
.accessibility-trigger:hover,.accessibility-trigger:focus-visible,.accessibility-trigger[aria-expanded="true"]{background:#00798c;transform:translateY(-3px)}.accessibility-trigger:hover>span,.accessibility-trigger:focus-visible>span{opacity:1;transform:none}
.accessibility-panel{position:fixed;left:auto;right:24px;bottom:194px;width:min(370px,calc(100vw - 48px));max-height:calc(100svh - 218px);overflow:auto;padding:0;background:#fff;color:#00324a;border:1px solid rgba(0,50,74,.18);box-shadow:0 28px 90px rgba(2,36,42,.28)}
.accessibility-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:25px 25px 21px;background:linear-gradient(145deg,#00324a,#00798c);color:#fff}.accessibility-panel-head p{margin:0 0 4px;color:#d9eeea;font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.accessibility-panel-head h2{margin:0;color:#fff;font-family:var(--serif);font-size:2rem;font-weight:400;line-height:1}.accessibility-close{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:transparent;color:#fff;font-size:1.7rem;line-height:1;cursor:pointer}
.a11y-text-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;border-bottom:1px solid #dbe9e6}.a11y-text-controls>span{font-size:.78rem;font-weight:700}.a11y-text-controls>div{display:flex;align-items:center}.a11y-text-controls button{width:46px;height:42px;border:1px solid #a7c3bf;background:#fff;color:#00324a;font-weight:700;cursor:pointer}.a11y-text-controls output{display:grid;place-items:center;width:58px;height:42px;border-block:1px solid #a7c3bf;color:#355b60;font-size:.72rem;font-weight:700}
.a11y-option-grid{display:grid;padding:9px 24px}.a11y-option{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:51px;padding:9px 0;border:0;border-bottom:1px solid #e1ecea;background:transparent;color:#00324a;text-align:left;cursor:pointer}.a11y-option span{font-size:.82rem;font-weight:650}.a11y-option i{position:relative;width:42px;height:23px;border:1px solid #8fb2ad;border-radius:20px;background:#e9f3f1}.a11y-option i:after{content:"";position:absolute;top:3px;left:3px;width:15px;height:15px;border-radius:50%;background:#527275;transition:transform .18s ease,background .18s ease}.a11y-option[aria-pressed="true"] i{background:#00798c;border-color:#00798c}.a11y-option[aria-pressed="true"] i:after{background:#fff;transform:translateX(19px)}
.accessibility-panel-foot{display:grid;gap:12px;padding:17px 24px 23px;background:#e7f8fa}.accessibility-panel-foot button{min-height:44px;border:1px solid #00798c;background:transparent;color:#00324a;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}.accessibility-panel-foot a{color:#00324a;font-size:.72rem;text-align:center;text-decoration:underline;text-underline-offset:3px}
html[data-a11y-text="1"]{font-size:112.5%}html[data-a11y-text="2"]{font-size:125%}
html.a11y-readable-font body,html.a11y-readable-font body *:not(svg):not(path){font-family:Arial,Helvetica,sans-serif!important;letter-spacing:normal!important}
html.a11y-underlined-links a:not(.button){text-decoration:underline!important;text-decoration-thickness:.12em!important;text-underline-offset:.18em!important}
html.a11y-grayscale-media img,html.a11y-grayscale-media video{filter:grayscale(1)!important}
html.a11y-reduce-motion *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
html.a11y-high-contrast body{--ink:#000;--ink-2:#000;--sea:#00535c;--foam:#fff;--paper:#fff;--muted:#202020;background:#fff;color:#000}html.a11y-high-contrast .hero-shade,html.a11y-high-contrast .page-hero-shade{background:rgba(0,0,0,.82)}html.a11y-high-contrast .eyebrow,html.a11y-high-contrast .lead{color:inherit}html.a11y-high-contrast :focus-visible{outline:4px solid #ffdf00!important;outline-offset:4px!important}
@media (max-width:580px){.accessibility-trigger{left:auto;right:16px;bottom:104px;width:58px;height:58px}.accessibility-trigger>span{display:none}.accessibility-panel{left:auto;right:12px;bottom:172px;width:calc(100vw - 24px);max-height:calc(100svh - 188px)}.accessibility-panel-head{padding:22px 20px 19px}.a11y-text-controls,.a11y-option-grid,.accessibility-panel-foot{padding-inline:20px}}
@media (prefers-reduced-motion:reduce){.accessibility-trigger,.accessibility-trigger>span,.a11y-option i:after{transition:none}}
@media (prefers-contrast:more){.accessibility-trigger{border:2px solid #fff}.accessibility-panel{border:2px solid #00324a}.a11y-option i{border:2px solid currentColor}}
@media (forced-colors:active){.accessibility-trigger,.accessibility-panel,.accessibility-close,.a11y-text-controls button,.accessibility-panel-foot button{border:2px solid ButtonText}.accessibility-trigger{background:ButtonFace;color:ButtonText}.accessibility-panel-head{background:Canvas;color:CanvasText}.accessibility-panel-head h2,.accessibility-panel-head p,.accessibility-close{color:CanvasText}.a11y-option i,.a11y-option i:after{forced-color-adjust:auto}}

/* Persistent navigation and deterministic interface layers. */
html{scroll-padding-top:146px}
.site-header{position:fixed!important;z-index:200;top:0;right:0;bottom:auto;left:0;transform:translateZ(0);will-change:transform}
.site-transition-curtain{z-index:500}
.site-transition-logo{display:block;width:clamp(230px,28vw,360px);height:auto;filter:none}
.lightbox{z-index:400}
.cookie-banner{z-index:600}.cookie-dialog-backdrop{z-index:610}
body.admin-bar .site-header{top:32px}
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-header{background:#00324a}}
@media (max-width:850px){html{scroll-padding-top:90px}}
@media (max-width:580px){.site-transition-logo{width:min(245px,70vw)}}
@media (max-width:782px){body.admin-bar .site-header{top:46px}}
@media (forced-colors:active){.site-header{border-bottom:1px solid CanvasText;background:Canvas}.site-transition-logo{filter:none}}

/* Fluid heading fit: titles scale to their actual container and never split words. */
:where(h1,h2,h3){max-width:100%;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;text-wrap:balance}
.hero-content,.page-hero>.shell,.intro-copy,.marine-manifesto-inner,.split-heading>div:first-child,.experience-copy,.home-blog-heading>div:first-child,.fairs-copy,.reviews-intro,.editorial-two>div:first-child,.blog-intro>div:first-child,.pool-intro>div:first-child,.pool-editorial-copy,.hotel-highlights-heading>div:first-child,.hotel-rhythm>div,.hotel-location>div,.contact-intro,.contact-map-heading>div:first-child,.gallery-intro,.story-panel,.service-card-copy,.service-feature>div:last-child,.pool-story-note,.event-detail article,.event-contact>div,.contact-map-card,.contact-form,.blog-feature-copy,.blog-card-copy,.home-blog-copy,.room-row-copy,.article-content,.related-posts-grid article,.inner-cta>.shell,.closing-inner{container-type:inline-size}
.hero h1{font-size:clamp(3rem,7.2vw,8.3rem);font-size:clamp(3rem,10.5cqi,8.3rem)}
.page-hero h1{font-size:clamp(2.35rem,6.8vw,7.6rem);font-size:clamp(2.35rem,8.6cqi,7.6rem)}
.section-title-lockup h2{font-size:clamp(2.2rem,4.2vw,5.3rem);font-size:clamp(2.2rem,10.5cqi,5.3rem)}
.marine-manifesto .section-title-lockup h2,.closing-cta .section-title-lockup h2{font-size:clamp(2.55rem,5vw,5.8rem);font-size:clamp(2.55rem,10.5cqi,5.8rem)}
.story-panel h2{font-size:clamp(2.15rem,4vw,3.5rem);font-size:clamp(2.15rem,11cqi,3.5rem)}
.service-card-copy h2,.blog-card-copy h2,.related-posts-grid h3{font-size:clamp(1.8rem,3vw,3rem);font-size:clamp(1.8rem,10cqi,3rem)}
.service-feature h2,.pool-story-note h2,.event-detail article h2,.event-contact h2,.contact-map-card h2,.contact-form h2,.room-row-copy h2,.inner-cta h2,.closing-inner h2{font-size:clamp(2.2rem,4.8vw,5.6rem);font-size:clamp(2.2rem,10cqi,5.6rem)}
.blog-feature-copy h2,.article-content h2{font-size:clamp(2.1rem,4.2vw,4.8rem);font-size:clamp(2.1rem,9cqi,4.8rem)}
.home-blog-copy h3{font-size:clamp(2rem,3.7vw,4.5rem);font-size:clamp(2rem,9cqi,4.5rem)}
@media (max-width:580px){.hero h1{font-size:clamp(2.85rem,10.5cqi,4.15rem)}.page-hero h1{font-size:clamp(2.35rem,8.6cqi,3.55rem)}.section-title-lockup h2{font-size:clamp(2.15rem,10.5cqi,3.15rem)}.marine-manifesto .section-title-lockup h2,.closing-cta .section-title-lockup h2{font-size:clamp(2.4rem,10.5cqi,3.4rem)}}

/* Keep the hotel story image-led while reserving enough space for intact words. */
.story-grid.shell{grid-template-columns:1.25fr .9fr 1.25fr}
@media (max-width:850px){.story-grid.shell{grid-template-columns:1fr 1fr}}
@media (max-width:580px){.story-grid.shell{grid-template-columns:1fr}}

/* Light Adriatic palette: bright sea tones with dark surfaces limited to media overlays and footer. */
:root{--ink:#073b5c;--ink-2:#075b78;--sea:#007a99;--sea-bright:#00a8c4;--lagoon:#8fe7e7;--foam:#e9fbff;--sand:#fff5dc;--ivory:#fafdff;--gold:#ffc857;--coral:#ff7f6a;--coral-text:#8b3f35;--line:rgba(7,59,92,.16)}
body{background-color:var(--ivory);background-image:linear-gradient(rgba(250,253,255,.92),rgba(250,253,255,.92)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='96' viewBox='0 0 240 96'%3E%3Cpath d='M0 24c30-12 50-12 80 0s50 12 80 0 50-12 80 0M-40 70c30-12 50-12 80 0s50 12 80 0 50-12 80 0 50 12 80 0' fill='none' stroke='%2300a8c4' stroke-opacity='.12' stroke-width='1'/%3E%3C/svg%3E")}
.site-header{background:rgba(0,109,142,.94);box-shadow:0 8px 30px rgba(7,59,92,.16)}
.rooms-section,.blog-archive,.home-blog,.hotel-highlights{background:linear-gradient(180deg,#e9fbff,#fafdff)}
.signature-strip{background:linear-gradient(128deg,#d9f8fd,#8fe7e7 58%,#b9f1ef);color:var(--ink)}
.signature-strip:before{border-color:rgba(7,59,92,.16)}
.signature-grid>div{border-color:rgba(7,59,92,.17)}
.signature-grid .marine-icon{color:var(--ink)}
.signature-grid span{color:var(--coral-text)}
.signature-grid strong{color:var(--ink)}
.signature-grid p{color:#275e73}
.marine-manifesto{background:radial-gradient(circle at 18% 20%,rgba(255,255,255,.72),transparent 34%),linear-gradient(135deg,#8fe7e7,#dff9fd);color:var(--ink)}
.marine-manifesto:after,.marine-orbit,.marine-orbit span{border-color:rgba(7,59,92,.18)}
.marine-orbit{color:var(--ink)}
.marine-manifesto h2,.marine-manifesto h2::first-line{color:var(--ink)}
.marine-manifesto h2 em{color:var(--coral-text)}
.marine-manifesto-inner>p:last-child{color:#255c72}
.marine-manifesto .eyebrow.light,.marine-manifesto .section-title-lockup.is-light .title-accent,.marine-manifesto .section-title-lockup.is-light .section-title-icon{color:var(--ink-2)}
.quote-section{background:linear-gradient(135deg,#d8f7fc,#9be9eb);color:var(--ink)}
.quote-section:before{background-image:radial-gradient(rgba(7,59,92,.28) .6px,transparent .6px)}
.quote-copy .eyebrow,.quote-copy>p:last-child{color:var(--ink-2)}
.quote-form{background:#fff;color:var(--ink);box-shadow:0 24px 65px rgba(7,59,92,.12)}
.reviews-carousel{background:linear-gradient(135deg,#e5faff,#bceff4);color:var(--ink)}
.reviews-carousel:before{background-image:radial-gradient(rgba(7,59,92,.28) .55px,transparent .55px)}
.review-stars,.review-quote-mark{color:var(--coral-text)}
.review-slide footer span,.blog-meta{color:#285f75}
.review-controls{border-color:rgba(7,59,92,.2)}
.review-controls>button{border-color:rgba(7,59,92,.42);color:var(--ink)}
.review-dots button:before{border-color:var(--sea)}
.story-panel{background:linear-gradient(145deg,#c9f3f7,#e9fbff);color:var(--ink)}
.story-panel h2{color:var(--ink)}
.story-panel .eyebrow{color:var(--ink-2)}
.story-panel>p:last-child{color:#285f75}
.hotel-location{background:linear-gradient(135deg,#a9ebef,#e4faff);color:var(--ink)}
.hotel-location .eyebrow.light{color:var(--ink-2)}
.hotel-location>div>p:not(.eyebrow){color:#255c72}
.hotel-location .arrow-link{color:var(--ink);border-color:var(--ink)}
.event-benefits{background:#dff8fc;color:var(--ink)}
.event-benefits>div>div{border-color:rgba(7,59,92,.17)}
.event-benefits span{color:var(--coral-text)}
.event-benefits p{color:#285f75}
.event-contact{background:linear-gradient(135deg,#b5edf2,#e9fbff);color:var(--ink)}
.event-contact h2{color:var(--ink)}
.event-contact .eyebrow{color:var(--ink-2)}
.event-contact>div>p:not(.eyebrow){color:#255c72}
.inner-cta,.closing-cta{background:linear-gradient(135deg,#8fe7e7,#c9f4f7);color:var(--ink)}
.inner-cta:before,.closing-cta:before{border-color:rgba(7,59,92,.17)}
.inner-cta h2,.closing-inner h2,.inner-cta .section-title-lockup h2,.closing-cta .section-title-lockup h2{color:var(--ink)}
.inner-cta>div>p:not(.eyebrow),.closing-inner>p:not(.eyebrow){color:#255c72}
.inner-cta .eyebrow.light,.closing-cta .eyebrow.light,.inner-cta .section-title-lockup.is-light .title-accent,.closing-cta .section-title-lockup.is-light .title-accent,.inner-cta .section-title-lockup.is-light .section-title-icon,.closing-cta .section-title-lockup.is-light .section-title-icon{color:var(--ink-2)}
.section-title-icon{color:var(--ink-2)}
.section-title-icon:after{border-color:rgba(7,59,92,.48)}
.marine-manifesto .section-title-lockup.is-light .section-title-icon,.quote-section .section-title-lockup.is-light .section-title-icon,.hotel-location .section-title-lockup.is-light .section-title-icon,.inner-cta .section-title-lockup.is-light .section-title-icon,.closing-cta .section-title-lockup.is-light .section-title-icon{color:var(--ink)}
.marine-manifesto .section-title-lockup.is-light .section-title-icon:after,.quote-section .section-title-lockup.is-light .section-title-icon:after,.hotel-location .section-title-lockup.is-light .section-title-icon:after,.inner-cta .section-title-lockup.is-light .section-title-icon:after,.closing-cta .section-title-lockup.is-light .section-title-icon:after{border-color:rgba(7,59,92,.48)}
.quote-section .section-title-lockup.is-light .title-accent,.hotel-location .section-title-lockup.is-light .title-accent{color:var(--coral-text)}
.hotel-highlights-grid .marine-icon,.pool-story-note .marine-icon,.blog-archive-heading .marine-icon,.article-meta>.marine-icon,.related-posts-heading .marine-icon{color:var(--ink-2)}
.marine-manifesto .button-outline,.inner-cta .button-outline,.closing-cta .button-outline,.event-contact .button-outline{border-color:var(--ink);color:var(--ink)}
.site-transition-curtain{background:linear-gradient(145deg,#41cbd6,#9be9eb)}
.accessibility-panel-head,.cookie-banner,.map-consent-placeholder{background:linear-gradient(145deg,#006d8e,#00758f)}
.whatsapp-float{background:#007a99}
.whatsapp-float:hover,.whatsapp-float:focus-visible{background:#005f7a}
.site-header .nav-book span{color:#fff3c4}
.site-footer{background:#043049}
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-header{background:#006d8e}}
@media (prefers-contrast:more){.signature-strip,.marine-manifesto,.quote-section,.reviews-carousel,.story-panel,.hotel-location,.event-benefits,.event-contact,.inner-cta,.closing-cta{background:#fff;color:#000}.signature-grid p,.marine-manifesto-inner>p:last-child,.quote-copy>p:last-child,.review-slide footer span,.story-panel>p:last-child,.hotel-location>div>p:not(.eyebrow),.event-benefits p,.event-contact>div>p:not(.eyebrow),.inner-cta>div>p:not(.eyebrow),.closing-inner>p:not(.eyebrow){color:#000}}

/* Responsive hardening: preserve complete content from compact phones to wide screens. */
html,body{max-width:100%;overflow-x:clip}
main,section,article,aside,form,figure,.shell,.shell>*{min-width:0}
img,video,iframe{max-width:100%}
a[href^="mailto:"],a[href^="tel:"]{overflow-wrap:break-word}
.button,.arrow-link,.cookie-action,.mobile-nav summary,.lightbox-trigger,.lightbox-close,.lightbox-nav{min-height:44px}
.booking-bar input,.booking-bar select,.contact-form input,.contact-form select{min-height:44px}
.footer-cookie-button{min-height:44px;padding:8px 0}

@media (max-width:1120px){
  .intro-section,.editorial-two,.room-detail-intro,.service-feature,.contact-layout,.blog-intro,.blog-feature>a,.article-layout,.event-detail,.event-contact,.contact-map-heading,.contact-map-layout,.hotel-highlights-heading,.hotel-rhythm,.hotel-location,.quote-layout{grid-template-columns:minmax(0,1fr)!important}
  .contact-map-layout{min-height:0}
  .contact-map-frame iframe{min-height:620px}
  .contact-map-card{padding:clamp(42px,7vw,72px)}
  .service-feature img,.hotel-rhythm img,.hotel-location>img{height:auto;aspect-ratio:4/3}
  .room-row-copy>p:not(.eyebrow),.blog-feature-copy>p,.blog-card-copy>p{display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important;-webkit-box-orient:initial!important}
}

@media (max-width:850px){
  .section{padding-block:clamp(72px,12vw,104px)}
  .experience-grid{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important;gap:42px!important}
  .experience-grid>*{grid-column:1!important;grid-row:auto!important;width:100%!important;min-width:0}
  .experience-image.tall,.experience-image.wide{height:auto!important;aspect-ratio:4/3}
  .experience-image.tall{aspect-ratio:4/5}
  .experience-copy{padding:0!important}
  .experience-copy .section-title-lockup{width:100%}

  .signature-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:0}
  .signature-grid>div,.signature-grid>div:first-child,.signature-grid>div:last-child{padding:30px 24px!important;border-right:0;border-bottom:1px solid rgba(7,59,92,.17)}
  .signature-grid>div:nth-last-child(-n+2){border-bottom:0}
  .marine-orbit{display:none}
  .marine-manifesto{min-height:0;padding-block:clamp(90px,16vw,132px)}
  .marine-manifesto:after{right:-34vw;top:-18vw;width:92vw;height:92vw}

  .reviews{grid-template-columns:minmax(0,1fr)!important;gap:46px}
  .reviews-carousel{width:100%;min-width:0;overflow:hidden}
  .review-controls{flex-wrap:wrap;gap:14px}
  .review-dots{order:3;width:100%;justify-content:center;flex-wrap:wrap}

  .service-grid.shell{grid-template-columns:minmax(0,1fr)!important;width:min(100% - 36px,700px)}
  .service-grid article:nth-child(n){grid-column:auto!important;grid-row:auto!important;min-height:0;height:auto;padding:36px 32px;overflow:clip}
  .service-grid h2{margin-top:46px}
  .service-photo-band{grid-template-columns:1fr 1fr;min-height:0}
  .service-photo-band figure:first-child{grid-column:1/-1}
  .service-photo-band figure{min-height:380px}

  .pool-story.shell{grid-template-columns:minmax(0,1fr)!important}
  .pool-story-main{min-height:0;aspect-ratio:4/5}
  .pool-story-side{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto}
  .pool-story-side figure{min-height:0;aspect-ratio:4/5}
  .pool-story-note{height:auto;overflow:clip}
  .pool-mosaic{grid-template-columns:1fr;grid-template-rows:auto;padding-bottom:90px}
  .pool-mosaic img:first-child{grid-row:auto;min-height:0;height:auto;aspect-ratio:4/5}
  .pool-mosaic img:nth-child(2){height:auto;aspect-ratio:4/3}

  .gallery-grid.shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:14px}
  .gallery-grid figure:nth-child(n){grid-column:auto!important;grid-row:auto!important}
  .gallery-grid img,.gallery-grid figure:nth-child(1) img,.gallery-grid figure:nth-child(7) img{height:auto;aspect-ratio:4/5}
  .room-gallery.shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .room-gallery .lightbox-trigger:first-child{grid-column:1/-1!important}
  .room-gallery .lightbox-trigger img,.room-gallery .lightbox-trigger:first-child img{height:auto;aspect-ratio:4/5}
  .room-gallery .lightbox-trigger:first-child img{aspect-ratio:16/10}

  .event-benefits>.shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .event-benefits>.shell>div{min-width:0}
  .related-events>div,.related-posts-grid,.blog-grid,.news-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:48px 34px}
  .footer-brand{grid-column:1/-1}
  .footer-bottom{align-items:flex-start;flex-direction:column;gap:20px}
}

@media (max-width:580px){
  .shell{width:calc(100% - 24px)}
  .section{padding-block:64px}
  .section-title-lockup{grid-template-columns:34px minmax(0,1fr);gap:11px;margin-bottom:30px}
  .section-title-icon{width:34px}
  .section-title-icon .marine-icon{width:32px;height:32px}
  .section-title-lockup h2{font-size:clamp(1.9rem,10.2cqi,2.8rem)!important;line-height:1.03}
  .marine-manifesto .section-title-lockup h2,.closing-cta .section-title-lockup h2{font-size:clamp(2rem,10.2cqi,3rem)!important}
  .hero{min-height:max(650px,100svh);padding-block:124px 92px}
  .hero h1{font-size:clamp(2.65rem,14vw,3.7rem)!important;line-height:.96}
  .page-hero{min-height:max(460px,68svh);padding-top:128px;padding-bottom:52px}
  .page-hero h1{font-size:clamp(2.15rem,11.5vw,3.05rem)!important;line-height:1.02}
  .page-hero-title-accent{font-size:1.1em}

  .booking-bar.shell{grid-template-columns:minmax(0,1fr)!important;width:calc(100% - 24px);margin-top:-34px}
  .booking-bar>*{min-height:74px;border-right:0;border-bottom:1px solid #cfe4df}
  .booking-title{padding:20px 22px}
  .booking-bar label{padding:14px 22px}
  .booking-bar button{min-height:58px}

  .signature-strip{padding-block:54px;overflow:clip}
  .signature-grid{grid-template-columns:minmax(0,1fr)!important}
  .signature-grid>div,.signature-grid>div:first-child,.signature-grid>div:last-child{padding:28px 10px!important;border-bottom:1px solid rgba(7,59,92,.17)}
  .signature-grid>div:last-child{border-bottom:0}

  .experience.shell{width:calc(100% - 24px)}
  .experience-grid{gap:34px!important}
  .experience-image.tall{aspect-ratio:4/5}
  .experience-image.wide{aspect-ratio:4/3}
  .experience-links{align-items:flex-start;flex-direction:column;gap:18px}
  .marine-manifesto-inner>p:last-child{padding-inline:4px}
  .fairs-teaser{min-height:620px;padding-block:86px}
  .fairs-copy h2{font-size:clamp(2.55rem,13vw,3.6rem)}

  .quote-form,.contact-form{padding:34px 22px}
  .field-grid,.quote-form .field-grid{grid-template-columns:minmax(0,1fr)!important;gap:0}
  .contact-form h2{font-size:clamp(2.15rem,11vw,3rem)}
  .contact-form .button{width:100%}
  .quote-layout{gap:40px}

  .room-carousel.shell{grid-auto-columns:minmax(248px,88%)}
  .room-list.shell{width:calc(100% - 24px);gap:38px;padding:76px 0 90px}
  .room-row-image,.room-row:nth-child(2) .room-row-image,.room-row:nth-child(3) .room-row-image{height:auto;aspect-ratio:4/5}
  .room-row-copy,.room-row:nth-child(even) .room-row-copy{width:calc(100% - 16px);margin-top:-38px;padding:25px 22px}
  .room-row-copy h2{font-size:clamp(2.05rem,12vw,2.8rem)!important}
  .room-row-copy>p:not(.eyebrow){display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important;-webkit-box-orient:initial!important}
  .room-row-copy .round-arrow{position:static;margin-top:20px}
  .room-gallery.shell{grid-template-columns:minmax(0,1fr)!important;width:calc(100% - 24px)}
  .room-gallery .lightbox-trigger:first-child{grid-column:auto!important}
  .room-gallery .lightbox-trigger img,.room-gallery .lightbox-trigger:first-child img{aspect-ratio:4/5}
  .amenity-panel{padding:32px 22px}
  .amenity-panel ul{grid-template-columns:minmax(0,1fr)!important}

  .service-grid.shell{width:calc(100% - 24px)}
  .service-grid article:nth-child(n){padding:30px 24px}
  .service-grid article:after,.pool-story-note:after{display:none}
  .service-grid h2{font-size:clamp(2.1rem,11.5vw,2.8rem);margin:38px 0 20px}
  .service-photo-band{grid-template-columns:minmax(0,1fr)}
  .service-photo-band figure:first-child{grid-column:auto}
  .service-photo-band figure{min-height:0;aspect-ratio:4/5}
  .service-feature img{aspect-ratio:4/5}

  .pool-story.shell{width:calc(100% - 24px);padding-bottom:72px}
  .pool-story-main{aspect-ratio:4/5}
  .pool-story-main figcaption{right:14px;bottom:14px;left:14px;max-width:none;padding:13px 15px}
  .pool-story-side{grid-template-columns:minmax(0,1fr)}
  .pool-story-side figure{aspect-ratio:4/5}
  .pool-story-note{padding:34px 22px}
  .pool-story-note h2{font-size:clamp(2.05rem,11vw,2.8rem)}
  .pool-editorial img{height:auto;aspect-ratio:4/5}
  .pool-mosaic>div{padding:26px 22px}
  .pool-mosaic strong{font-size:3.8rem}

  .gallery-grid.shell{grid-template-columns:minmax(0,1fr)!important;width:calc(100% - 24px);gap:12px}
  .gallery-grid img,.gallery-grid figure:nth-child(1) img,.gallery-grid figure:nth-child(7) img{aspect-ratio:4/5}

  .blog-feature>a,.blog-grid,.news-grid,.related-posts-grid,.related-events>div{grid-template-columns:minmax(0,1fr)!important}
  .blog-feature-copy>p,.blog-card-copy>p{display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important;-webkit-box-orient:initial!important}
  .blog-feature-copy,.blog-card-copy{padding-inline:22px}
  .article-content img{height:auto}

  .event-benefits>.shell{grid-template-columns:minmax(0,1fr)!important}
  .event-benefits>.shell>div{border-right:0!important;border-bottom:1px solid rgba(7,59,92,.17)}
  .event-benefits>.shell>div:last-child{border-bottom:0}
  .event-contact>div{padding:58px 22px}
  .event-contact h2{font-size:clamp(2.25rem,12vw,3rem)}

  .contact-layout{gap:48px}
  .contact-map-layout{display:block}
  .contact-map-frame{border-width:6px}
  .contact-map-frame iframe{min-height:440px}
  .contact-map-card{padding:48px 22px}
  .contact-map-card h2{font-size:clamp(2.35rem,12vw,3.2rem)}
  .contact-map-fact{grid-template-columns:36px minmax(0,1fr);gap:12px}

  .hotel-highlights-grid{grid-template-columns:minmax(0,1fr)!important}
  .hotel-rhythm img,.hotel-location>img{height:auto;aspect-ratio:4/5}
  .hotel-location>div{padding:58px 22px}
  .story-grid.shell{grid-template-columns:minmax(0,1fr)!important}
  .story-panel{padding:36px 22px}

  .reviews-carousel{padding-inline:22px}
  .review-slide blockquote{font-size:clamp(1.8rem,9vw,2.65rem)}
  .closing-cta{padding-block:78px;overflow:clip}
  .footer-main{grid-template-columns:minmax(0,1fr)!important;gap:38px;padding-bottom:52px}
  .footer-brand{grid-column:auto}
  .footer-bottom,.footer-bottom div{align-items:flex-start;flex-direction:column;gap:14px}

  .cookie-banner{overflow-y:auto}
  .accessibility-panel{overscroll-behavior:contain}
}

@media (max-width:380px){
  .shell{width:calc(100% - 20px)}
  .section-title-lockup{grid-template-columns:30px minmax(0,1fr);gap:9px}
  .section-title-icon{width:30px}
  .section-title-lockup h2{font-size:clamp(1.72rem,10cqi,2.35rem)!important}
  .hero h1{font-size:clamp(2.35rem,13.6vw,3rem)!important}
  .page-hero h1{font-size:clamp(2rem,11vw,2.55rem)!important}
  .room-carousel.shell{grid-auto-columns:minmax(235px,90%)}
  .lightbox-trigger>span{right:10px;bottom:10px;padding:9px 11px}
}

/* Horizontal anchors deliberately outrank legacy WordPress Additional CSS. */
html body .whatsapp-float{left:auto!important;right:24px!important}
html body .accessibility-trigger{left:auto!important;right:24px!important}
html body .accessibility-panel{left:auto!important;right:24px!important}
@media (max-width:580px){
  html body .whatsapp-float{left:auto!important;right:16px!important}
  html body .accessibility-trigger{left:auto!important;right:16px!important}
  html body .accessibility-panel{left:auto!important;right:12px!important}
}

/* Complianz styled to match the Gallia Palace palette */
#cmplz-cookiebanner-container .cmplz-cookiebanner{border:1px solid rgba(209,239,234,.34);background:linear-gradient(145deg,#063640,#08717c);box-shadow:0 24px 90px rgba(1,28,34,.34);color:#fff;font-family:var(--sans)}
#cmplz-cookiebanner-container .cmplz-title{color:#fff;font-family:var(--serif);font-size:2rem;font-weight:400}
#cmplz-cookiebanner-container .cmplz-message,#cmplz-cookiebanner-container .cmplz-category-title,#cmplz-cookiebanner-container .cmplz-description{color:#d8ebe7}
#cmplz-cookiebanner-container .cmplz-btn{min-height:50px;border:1px solid rgba(255,255,255,.74);border-radius:0;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
#cmplz-cookiebanner-container .cmplz-accept{border-color:#d5b775;background:#d5b775;color:#063640}
#cmplz-cookiebanner-container .cmplz-deny{background:#fff;color:#063640}
#cmplz-cookiebanner-container .cmplz-view-preferences,#cmplz-cookiebanner-container .cmplz-save-preferences{background:transparent;color:#fff}
#cmplz-cookiebanner-container a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.gallia-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media (prefers-contrast:more){#cmplz-cookiebanner-container .cmplz-cookiebanner{background:#063640}}

/* WP Accessibility Helper aligned with the Gallia Palace interface */
body #wp_access_helper_container.accessability_container{width:320px;left:auto!important;right:-320px!important;background:#fff!important;color:#063640!important;box-shadow:0 0 70px rgba(2,36,42,.24);font-family:var(--sans)!important}
body #wp_access_helper_container.accessability_container.active{left:auto!important;right:0!important}
body #wp_access_helper_container button.aicon_link{top:auto!important;left:-86px!important;right:auto!important;bottom:118px!important;display:grid!important;place-items:center;width:62px!important;height:62px!important;max-width:62px!important;max-height:62px!important;padding:6px!important;border:1px solid rgba(255,255,255,.78)!important;border-radius:50%!important;background:#063640!important;box-shadow:0 14px 38px rgba(3,54,64,.32)!important}
body #wp_access_helper_container button.aicon_link:hover,body #wp_access_helper_container button.aicon_link:focus{background:#08717c!important;outline:3px solid #f0c482!important;outline-offset:3px!important}
body #wp_access_helper_container .aicon_image{width:48px!important;height:48px!important;border-radius:50%!important}
body #wp_access_helper_container #access_container{height:100svh;max-height:100svh;margin:0!important;padding:22px 20px!important;overflow-y:auto;background:#fff!important;color:#063640!important}
body #wp_access_helper_container .access_container_inner,body #wp_access_helper_container .a_module,body #wp_access_helper_container .a_module_title,body #wp_access_helper_container .a_module_exe{background:#fff!important;color:#063640!important}
body #wp_access_helper_container .a_module{padding:0 0 14px!important;margin:0 0 14px!important;border-bottom:1px solid #dbe9e6!important}
body #wp_access_helper_container .a_module_title{font-size:.82rem!important;font-weight:700!important}
body #wp_access_helper_container button.close_container{width:100%!important;height:46px!important;margin:0 0 22px!important;border:1px solid #063640!important;background:#063640!important;color:#fff!important;font-size:.72rem!important;letter-spacing:.08em!important;text-transform:uppercase!important}
body #wp_access_helper_container button.wah-action-button{min-height:44px!important;border:1px solid #08717c!important;background:#edf7f4!important;color:#063640!important;font-size:.78rem!important}
body #wp_access_helper_container button.wah-action-button:hover,body #wp_access_helper_container button.wah-action-button:focus,body #wp_access_helper_container button.wah-action-button.active_button{background:#08717c!important;color:#fff!important}
body #wp_access_helper_container .wah_plugin_credits{background:#063640!important;color:#fff!important}
@media (max-width:580px){body #wp_access_helper_container.accessability_container{width:calc(100vw - 18px);left:auto!important;right:calc(-100vw + 18px)!important}body #wp_access_helper_container.accessability_container.active{left:auto!important;right:0!important}body #wp_access_helper_container button.aicon_link{left:-74px!important;right:auto!important;bottom:104px!important;width:58px!important;height:58px!important;max-width:58px!important;max-height:58px!important}body #wp_access_helper_container .aicon_image{width:44px!important;height:44px!important}}
@media (prefers-reduced-motion:reduce){body #wp_access_helper_container.accessability_container{transition:none!important}}
@media (forced-colors:active){body #wp_access_helper_container button.aicon_link,body #wp_access_helper_container button.wah-action-button,body #wp_access_helper_container button.close_container{border:2px solid ButtonText!important}}
/* Horizontal-only overrides outrank legacy WordPress Additional CSS without changing its vertical spacing. */
html body #wp_access_helper_container.accessability_container{left:auto!important;right:-320px!important}
html body #wp_access_helper_container.accessability_container.active{left:auto!important;right:0!important}
html body #wp_access_helper_container button.aicon_link{left:-86px!important;right:auto!important}
@media (max-width:580px){html body #wp_access_helper_container.accessability_container{left:auto!important;right:calc(-100vw + 18px)!important}html body #wp_access_helper_container.accessability_container.active{left:auto!important;right:0!important}html body #wp_access_helper_container button.aicon_link{left:-74px!important;right:auto!important}}
