/* The Mediterranean Collection — local fonts, light surfaces, hotel-first hierarchy. */
@font-face{font-family:Inter;src:url('fonts/inter-latin.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:ResidenceSerif;src:url('fonts/lmroman17-regular.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:ResidenceSerif;src:url('fonts/lmroman10-italic.otf') format('opentype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:ResidenceSans;src:url('fonts/lmsans10-regular.otf') format('opentype');font-weight:400;font-display:swap}
:root{--ink:#272722;--chalk:#fff;--stone:#f7f5f1;--brass:#94733e;--brass-text:#836230;--muted:#676760;--line:#e2ddd4;--serif:ResidenceSerif,Georgia,serif;--sans:Inter,Arial,sans-serif;--gutter:clamp(24px,6vw,96px);--ease:cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.85 var(--sans);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;height:auto}p,h1,h2,h3,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.13;letter-spacing:-.025em}h1{font-size:clamp(48px,5.7vw,82px)}h2{font-size:clamp(36px,3.8vw,56px)}h3{font-size:32px}em{font-family:var(--serif);font-weight:400;font-style:italic;color:var(--brass-text)}p{max-width:660px}p+p{margin-top:18px}ul{padding-left:20px}::selection{background:var(--brass);color:#fff}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--brass);outline-offset:5px}button:disabled{cursor:default;opacity:.5}.shell{width:calc(100% - var(--gutter)*2);max-width:1240px;margin-inline:auto}.section{padding-block:clamp(70px,7.7vw,112px)}.eyebrow{font:500 12px/1.7 var(--sans);letter-spacing:.19em;text-transform:uppercase;color:var(--brass-text);margin-bottom:20px}.fineprint{font-size:14px;color:var(--muted);line-height:1.7}.fineprint a,.legal-copy a{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:54px;padding:16px 26px;background:var(--brass-text);color:#fff;border:1px solid var(--brass-text);border-radius:0;font-size:14px;line-height:1.5;transition:background .25s,color .25s,border-color .25s}.button:hover{background:#654921;border-color:#654921}.button>span{font-size:20px}.button-outline{background:transparent;color:var(--brass-text)}.button-outline:hover{background:var(--brass-text);color:#fff}.button-light{background:#fff;border-color:#fff;color:var(--ink)}.button-light:hover{background:var(--stone);border-color:var(--stone);color:var(--ink)}.link-line{display:inline-flex;align-items:center;gap:30px;padding:10px 0;border-bottom:1px solid #b99d73;color:var(--brass-text);font-size:14px;font-weight:500;line-height:1.5;transition:color .25s,gap .25s}.link-line>span{font-size:22px}.link-line:hover{color:#47321c;gap:37px}.small-link>span{margin-left:8px}.small-link{display:inline-block;font-size:14px;text-decoration:underline;text-underline-offset:5px;margin-top:18px}.collection-number{display:block;font-size:12px;letter-spacing:.14em;color:var(--brass-text);margin-bottom:18px}.skip-link{position:fixed;top:-100px;left:20px;z-index:200;background:white;padding:15px}.skip-link:focus{top:12px}.image-reveal{overflow:hidden}.image-reveal img{transition:transform 1.1s var(--ease)}a.image-reveal:hover img,button.image-reveal:hover img{transform:scale(1.035)}.will-reveal{opacity:0;transform:translateY(20px)}.will-reveal.is-visible{opacity:1;transform:none;transition:opacity .75s var(--ease),transform .75s var(--ease)}
/* Quiet, consistently aligned navigation. */
.masthead{height:96px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0 4vw;position:relative;z-index:40;background:#fff;border-bottom:1px solid var(--line)}.masthead.over-image{position:absolute;inset:0 0 auto;background:transparent;color:#fff;border-color:#ffffff30}.masthead.is-scrolled{position:fixed;inset:0 0 auto;height:80px;background:#fff;color:var(--ink);box-shadow:0 3px 20px #29251d09;border-color:var(--line)}.brand{display:inline-flex;flex-direction:column;line-height:1;min-width:154px}.brand-main{font:400 35px/1 var(--serif);letter-spacing:-.025em;display:flex;align-items:center;gap:10px}.brand-rule{width:19px;height:1px;background:var(--brass)}.brand-sub{font-size:9px;letter-spacing:.19em;margin-top:8px}.primary-nav{display:flex;gap:23px;font-size:14px;align-items:center}.primary-nav a{padding:12px 0;white-space:nowrap;border-bottom:1px solid transparent}.primary-nav a:hover,.primary-nav a[aria-current=page]{color:var(--brass-text);border-color:var(--brass)}.over-image:not(.is-scrolled) .primary-nav a:hover{color:#fff;border-color:#fff}.mast-actions{display:flex;align-items:center;gap:22px}.reserve-link{padding:12px 18px;background:var(--brass-text);color:#fff;font-size:13px;white-space:nowrap}.reserve-link:hover{background:#654921}.over-image:not(.is-scrolled) .reserve-link{background:transparent;border:1px solid #ffffff80}.menu-toggle{border:0;background:transparent;font-size:13px;display:flex;align-items:center;gap:12px;padding:12px 0;min-height:44px}.menu-toggle i{width:22px;height:9px;border-block:1px solid}.site-menu{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:30px 5vw 55px;border:0;background:#fff;color:var(--ink);overflow:auto}.site-menu::backdrop,.photo-dialog::backdrop{background:#29251dc9}.menu-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:28px}.close-button{display:flex;align-items:center;gap:20px;background:transparent;border:0;padding:12px;font-size:14px;min-height:44px}.close-button span{font-size:28px}.menu-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:7vw;padding-top:45px;max-width:1240px;margin:auto}.menu-main{display:grid;grid-template-columns:1fr 1fr;gap:8px 30px}.menu-main>a{font:400 clamp(23px,2vw,32px)/1.3 var(--serif);display:flex;gap:13px;padding-block:12px}.menu-main>a>span{font:12px/1.7 var(--sans);margin-top:4px;color:var(--brass-text)}.menu-main a:hover,.menu-rooms a:hover{color:var(--brass-text)}.menu-rooms{display:flex;flex-wrap:wrap;gap:12px 23px;margin-top:30px;border-top:1px solid var(--line);padding-top:25px;font-size:14px}.menu-grid figure img{width:100%;height:430px;object-fit:cover}.menu-grid figcaption{font-size:14px;line-height:1.7;margin-top:20px;color:var(--muted)}
/* Approved cinematic hero: original typography, layout and motion. */
.cinema-hero{--ink:#101d31;--serif:ResidenceSerif,Georgia,serif;--sans:ResidenceSans,Arial,sans-serif;--gutter:clamp(24px,7vw,120px);font-family:var(--sans);font-size:17px;line-height:1.75}.cinema-hero .shell{max-width:1440px}.cinema-hero h1,.cinema-hero em{font-family:var(--serif);font-weight:400;color:inherit}.cinema-hero h1 em{font-style:italic}.cinema-hero .eyebrow{font-family:var(--sans);font-weight:400;font-size:12px;letter-spacing:.16em;color:#fff;line-height:1.8}.cinema-hero .eyebrow:before{display:none}
/* A visible reservation bar, separated from the welcome. */
.stay-enquiry{position:relative;display:grid;grid-template-columns:1.25fr 1fr 1fr .6fr auto;gap:24px;align-items:center;border:1px solid var(--line);padding:28px 32px;margin-top:30px;background:#fff;box-shadow:0 7px 35px #36250f05}.stay-enquiry>div .eyebrow{font-size:11px;margin:0;letter-spacing:.1em}.stay-enquiry>div p{font:26px/1.3 var(--serif);margin-top:7px}.stay-enquiry label{font-size:13px;min-width:0}.stay-enquiry input,.stay-enquiry select{display:block;width:100%;min-width:0;border:0;border-bottom:1px solid var(--line);padding:9px 0;background:transparent;border-radius:0;font-size:15px}.stay-enquiry .button{padding-inline:19px;gap:12px}
/* Homepage: consistent editorial sections and a clear guest journey. */
.center-heading{text-align:center;max-width:760px;margin:0 auto 48px}.center-heading .eyebrow{margin-bottom:15px}.center-heading p:not(.eyebrow){margin:23px auto 0;color:var(--muted);max-width:570px}.center-action{text-align:center;margin-top:42px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:40px}.section-title>p{max-width:370px;color:var(--muted)}.welcome{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.welcome-photos{position:relative;padding:0 25px 25px 0}.welcome-photos:after{content:'';position:absolute;inset:25px 0 0 25px;border:1px solid #c6ad85;z-index:-1}.welcome-photos>img{height:550px;width:100%;object-fit:cover}.welcome-caption{position:absolute;bottom:46px;left:22px;padding:10px 15px;background:#ffffffed;font-size:11px;letter-spacing:.18em}.welcome-copy h2{margin-bottom:28px}.welcome-copy>p:not(.eyebrow){color:var(--muted)}.welcome-copy>.link-line{margin-top:22px}.welcome-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;border-top:1px solid var(--line);padding-top:28px;margin-top:35px}.welcome-facts>div{display:flex;flex-direction:column;gap:7px}.welcome-facts strong{font:400 39px/1.1 var(--serif);color:var(--brass-text)}.welcome-facts span{font-size:12px;color:var(--muted)}.home-rooms,.home-leisure,.home-planning{background:var(--stone)}.stay-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.stay-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column}.stay-card-photo{display:block}.stay-card-photo img{height:285px;width:100%;object-fit:cover}.stay-card-copy{padding:28px;display:flex;flex:1;align-items:start;flex-direction:column}.stay-card-copy .eyebrow{font-size:11px;letter-spacing:.13em;margin-bottom:10px}.stay-card h3{font-size:33px;margin-bottom:16px}.stay-card-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);margin-bottom:22px}.stay-card-copy>.link-line{margin-top:auto}.feature-panel{display:grid;grid-template-columns:1.2fr 1fr;align-items:stretch;border:1px solid var(--line);background:var(--stone)}.feature-panel>figure{min-height:500px}.feature-panel>figure img{height:100%;width:100%;object-fit:cover}.feature-panel-copy{padding:55px 48px;align-self:center}.feature-panel-copy h3{font-size:clamp(36px,3.5vw,52px)}.feature-panel-copy>p:not(.eyebrow){margin-top:25px;color:var(--muted)}.feature-panel-copy>.button,.feature-panel-copy>.link-line{margin-top:30px}.feature-panel-copy>.small-link{display:block}.feature-reverse{grid-template-columns:1fr 1.2fr;background:#fff}.feature-reverse>figure{order:2}.feature-reverse .feature-panel-copy{order:1}.leisure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.leisure-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column}.leisure-card img{height:255px;width:100%;object-fit:cover}.leisure-card>div{padding:28px;display:flex;flex-direction:column;align-items:start;flex:1}.leisure-card h3{font-size:30px;margin-bottom:16px}.leisure-card p{font-size:15px;color:var(--muted);margin-bottom:23px}.text-cta{font-size:14px;color:var(--brass-text);margin-top:auto;display:flex;gap:25px}.home-visit{height:570px;position:relative;color:#fff;display:flex;align-items:center;text-align:center}.home-visit>figure,.home-visit>figure img,.visit-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.visit-overlay{background:#1c1a16a8}.visit-copy{position:relative;z-index:1}.visit-copy h2{font-size:clamp(40px,4.8vw,66px)}.visit-copy em{color:inherit}.visit-copy .eyebrow{color:#fff;margin-top:22px;font-size:11px}.visit-copy p:not(.eyebrow){margin:23px auto 28px;color:#f3eee5}.visit-seal{display:inline-grid;place-items:center;width:68px;height:68px;border:1px solid #ffffff9e;border-radius:50%;font:27px var(--serif)}.gallery-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.gallery-preview img{width:100%;height:280px;object-fit:cover}.gallery-preview a>span{display:block;font-size:13px;color:var(--muted);padding-top:14px}.planning-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.planning-grid>article+article{border-left:1px solid #d5c9b7;padding-left:7vw}.planning-grid h2{font-size:44px}.planning-grid p:not(.eyebrow){margin:25px 0;color:var(--muted)}
/* Interior pages: centered title, contained image, clear content rhythm. */
.page-opening{padding-top:58px;background:linear-gradient(var(--stone) 0 70%,#fff 70%)}.opening-copy{text-align:center;width:calc(100% - var(--gutter)*2);max-width:850px;margin:auto;padding-bottom:42px}.opening-copy>.eyebrow{margin-bottom:16px}.opening-copy>p:not(.eyebrow){max-width:640px;margin:23px auto 0;color:var(--muted)}.down-link{display:none}.page-opening>figure{width:calc(100% - var(--gutter)*2);max-width:1240px;height:430px;margin:auto}.page-opening>figure img{width:100%;height:100%;object-fit:cover}.text-opening{text-align:center;padding-block:65px 55px}.text-opening>p:not(.eyebrow){color:var(--muted);margin:24px auto 0}.enquiry-band{display:flex;align-items:center;justify-content:space-between;gap:45px;padding-block:65px;border-top:1px solid var(--line)}.enquiry-band h2{font-size:42px}.enquiry-band .eyebrow{margin-bottom:14px}.enquiry-band p:not(.eyebrow){margin-top:18px;color:var(--muted)}.enquiry-band .button{flex-shrink:0}
/* Accommodation: wide photograph and contained information, alternating for rhythm. */
.room-stories{display:flex;flex-direction:column;gap:45px}.room-story{display:grid;grid-template-columns:1.2fr 1fr;min-width:0;background:var(--stone);border:1px solid var(--line)}.story-image{display:block;overflow:hidden}.story-image img{height:440px;width:100%;object-fit:cover}.story-copy{padding:45px;align-self:center}.story-copy h2{font-size:43px}.story-copy p{margin:23px 0;color:var(--muted)}.story-copy .small-link{display:block}.room-story.reverse{grid-template-columns:1fr 1.2fr}.room-story.reverse .story-image{order:2}.room-story.reverse .story-copy{order:1}.room-hero{display:grid;grid-template-columns:1fr 1.25fr;background:var(--stone);min-height:490px}.room-hero>img{height:490px;width:100%;object-fit:cover;order:2}.room-hero-shade{display:none}.room-hero-copy{align-self:center;padding:55px var(--gutter);width:auto;margin:0}.room-hero h1{font-size:clamp(45px,5vw,73px)}.room-details{display:grid;grid-template-columns:1.3fr .85fr;gap:8vw}.room-description>p:not(.eyebrow){margin-top:25px;color:var(--muted)}.room-description>.link-line{margin-top:25px}.room-enquiry{background:var(--stone);border:1px solid var(--line);border-top:3px solid var(--brass);padding:35px;align-self:start}.room-enquiry h3{font-size:32px}.room-enquiry>p{margin-top:18px;font-size:15px;color:var(--muted)}.room-enquiry .button{margin-block:25px;width:100%;padding-inline:15px;gap:15px}.room-enquiry>a:not(.button){display:block;font-size:16px}.room-enquiry .fineprint{font-size:13px}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:30px}.photo-pair:has(> :only-child){grid-template-columns:1fr}.photo-open{display:block;width:100%;background:none;border:0;padding:0;text-align:left;cursor:zoom-in}.photo-pair .photo-open img{width:100%;height:380px;object-fit:cover}.photo-open>span{display:flex;justify-content:space-between;gap:12px;padding:15px 0;font-size:14px}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.amenities p{margin-top:25px;color:var(--muted)}.amenities>ul{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;padding:0;list-style:none;margin:0}.amenities li{border-bottom:1px solid var(--line);padding:16px 0;font-size:15px}.next-room{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:48px var(--gutter);background:var(--stone);border-top:1px solid var(--line)}.next-room>span{grid-column:1/-1;font-size:12px;letter-spacing:.15em;color:var(--brass-text)}.next-room h2{font-size:48px}.next-room b{font-size:45px;font-weight:400;color:var(--brass-text)}.next-room:hover{background:#eeebe4}
/* Dining and facilities share the same photo-to-copy proportions. */
.dining-venues{display:flex;flex-direction:column;gap:45px}.venue{display:grid;grid-template-columns:1.2fr 1fr;background:var(--stone);border:1px solid var(--line)}.venue-photo img{width:100%;height:460px;object-fit:cover}.venue-copy{padding:44px;align-self:center}.venue-copy h2{font-size:43px}.venue-copy>p{margin-top:23px;color:var(--muted)}.venue-copy .link-line{margin-top:24px}.venue-copy .small-link{display:block}.venue:nth-child(even){grid-template-columns:1fr 1.2fr}.venue:nth-child(even) .venue-photo{order:2}.venue:nth-child(even) .venue-copy{order:1}.pool-dining{display:grid;grid-template-columns:1.2fr 1fr;background:var(--stone);align-items:center}.pool-dining>img{height:460px;width:100%;object-fit:cover}.pool-dining>div{padding:55px}.pool-dining p:not(.eyebrow){margin-top:25px;color:var(--muted)}.experience-feature{display:grid;grid-template-columns:1fr 1.1fr;gap:7vw;align-items:center}.experience-feature p:not(.eyebrow){color:var(--muted);margin-top:25px}.experience-feature .link-line{margin-top:25px}.experience-feature img{height:450px;width:100%;object-fit:cover}.experience-columns{display:grid;grid-template-columns:1fr 1fr;gap:35px}.experience-columns article{border:1px solid var(--line);padding-bottom:30px;background:var(--stone)}.experience-columns img{width:100%;height:330px;object-fit:cover}.experience-columns h2{font-size:37px;margin:27px 30px 0}.experience-columns p{color:var(--muted);margin:20px 30px 0}.experience-columns .link-line{margin:24px 30px 0}.facility-directory{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw}.service-group{border-top:1px solid var(--line);padding:22px 0}.service-group summary{display:flex;align-items:center;justify-content:space-between;gap:20px;font:28px/1.3 var(--serif);cursor:pointer;list-style:none}.service-group summary::-webkit-details-marker{display:none}.service-group summary>span{color:var(--brass-text)}.service-group[open] summary>span{transform:rotate(45deg)}.service-group ul{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px;list-style:none;padding:15px 0 0;font-size:15px;color:var(--muted)}.facility-directory .fineprint{margin-top:25px}
/* Events. */
.event-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:25px 8vw}.event-intro>.eyebrow{grid-column:1/-1;margin:0}.event-intro p:not(.eyebrow){color:var(--muted)}.event-intro .link-line{margin-top:25px}.event-panorama{height:540px;width:calc(100% - var(--gutter)*2);max-width:1240px;margin:auto}.event-panorama img{width:100%;height:100%;object-fit:cover}.event-venues{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.event-venues p{margin-top:25px;color:var(--muted)}.venue-names>div{display:flex;align-items:center;gap:28px;padding:25px 30px;border:1px solid var(--line);border-bottom:0;background:var(--stone)}.venue-names>div:last-child{border-bottom:1px solid var(--line)}.venue-names>div>span{font-size:13px;color:var(--brass-text)}.venue-names h3{font-size:34px}.business-note{display:grid;grid-template-columns:1fr 1fr;gap:7vw;background:var(--stone);border:1px solid var(--line);padding:50px;margin-bottom:60px}.business-note p{color:var(--muted)}.business-note .link-line{margin-top:25px}
/* Photo collection: stable grid, uncluttered filters, light viewer. */
.gallery-filters{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;border-block:1px solid var(--line);padding-block:18px}.gallery-filters button{border:1px solid transparent;background:transparent;padding:10px 20px;font-size:14px}.gallery-filters button:hover{background:var(--stone)}.gallery-filters button[aria-pressed=true]{background:var(--brass-text);color:#fff}.gallery-count{font-size:13px;text-align:center;color:var(--muted);margin-block:22px}.photo-grid{columns:3;column-gap:24px;padding-bottom:60px}.gallery-photo{break-inside:avoid;margin-bottom:22px}.gallery-photo img{width:100%;transition:filter .3s}.gallery-photo:hover img{filter:brightness(.93)}.gallery-photo>span{font-size:12px;color:var(--muted);padding-top:10px}.gallery-photo b{font-size:20px;font-weight:400}.photo-dialog{background:#fbfaf7;color:var(--ink);border:0;padding:30px;max-width:100vw;max-height:100dvh;width:100%;height:100dvh}.photo-dialog>.close-button{margin-left:auto}.photo-dialog figure{height:calc(100dvh - 165px);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:17px}.photo-dialog figure img{max-height:calc(100% - 40px);max-width:100%;object-fit:contain}.photo-dialog figcaption{font-size:14px}.photo-controls{display:flex;justify-content:center;gap:35px;align-items:center;margin-top:10px;font-size:14px}.photo-controls button{border:1px solid #b29d7b;background:transparent;min-width:48px;height:48px;font-size:24px}
/* Story, offers and guest information. */
.about-statement{text-align:center}.about-statement h2{max-width:950px;margin:auto}.about-columns{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin:35px 0;color:var(--muted);text-align:left}.hotel-numbers{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);padding-block:32px;gap:30px}.hotel-numbers>div{display:flex;flex-direction:column;gap:12px}.hotel-numbers strong{font:400 55px/1.1 var(--serif);color:var(--brass-text)}.hotel-numbers span{font-size:14px;color:var(--muted)}.about-diptych{display:grid;grid-template-columns:1.25fr 1fr;gap:30px}.about-diptych img{width:100%;height:410px;object-fit:cover}.values{display:grid;grid-template-columns:1fr 1fr;gap:45px}.values article{border:1px solid var(--line);background:var(--stone);padding:40px}.values h2{font-size:40px}.values p:not(.eyebrow){color:var(--muted);margin-top:25px}.offers-collection{display:grid;grid-template-columns:1fr 1fr;gap:35px}.offers-collection article{border:1px solid var(--line);background:var(--stone)}.offers-collection img{width:100%;height:320px;object-fit:cover}.offers-collection article>div{padding:35px}.offers-collection h2{font-size:38px}.offers-collection p:not(.eyebrow){color:var(--muted);margin-block:22px}.offer-note{padding-bottom:65px}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.journal-grid img{height:260px;width:100%;object-fit:cover;margin-bottom:28px}.journal-grid h2{font-size:32px;margin-bottom:20px}.journal-grid p:not(.eyebrow){color:var(--muted)}.journal-grid .link-line{margin-top:25px}.legal-copy{max-width:850px;padding-bottom:90px}.legal-copy h2{font-size:32px;margin:40px 0 20px}.legal-copy p{color:var(--muted)}
/* Contact and reservations. */
.contact-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;padding-bottom:90px}.contact-section>*{min-width:0}.contact-details{padding-top:30px}.contact-details h2{font-size:41px}.contact-details dl{margin-top:35px}.contact-details dt{font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-top:25px;color:var(--brass-text)}.contact-details dd{margin:8px 0 0;font-size:16px;overflow-wrap:anywhere}.contact-details small{display:block;font-size:14px;margin-top:8px}.enquiry-form{padding:40px;background:var(--stone);border:1px solid var(--line)}.enquiry-form h2{font-size:41px}.enquiry-form>p{margin-top:22px;font-size:15px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px;margin-top:30px}.form-grid label{display:flex;flex-direction:column;gap:8px;font-size:14px;min-width:0}.form-grid label small{display:contents}.form-grid input,.form-grid select,.form-grid textarea{min-width:0;width:100%;min-height:50px;background:#fff;border:1px solid #ccc5b9;border-radius:0;padding:11px;font-size:16px}.full-width{grid-column:1/-1}.consent{display:flex;align-items:flex-start;gap:12px;margin:25px 0;font-size:14px;line-height:1.6}.consent input{width:18px;height:18px;flex-shrink:0;margin-top:4px;accent-color:var(--brass-text)}.consent a{text-decoration:underline}#form-status{font-size:15px;margin-top:25px}.honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-location{border-top:1px solid var(--line)}.location-guide{position:relative;overflow:hidden;background:#dbe7e9;border:1px solid #cad4d5}.map-window{overflow:hidden;touch-action:pan-y}.map-window svg{display:block;width:100%;height:auto;min-height:250px;font-family:var(--sans)}.map-controls{position:absolute;top:15px;right:15px;z-index:2;display:flex;gap:5px}.map-controls button{background:#fff;border:1px solid var(--line);padding:6px 12px;min-width:44px;min-height:44px;font-size:16px}.map-caption{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:15px;background:#fff;font-size:12px;line-height:1.5;max-width:none}.guest-voices{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-bottom:90px;align-items:center}.guest-voices h2{font-size:44px}.guest-voices p:not(.eyebrow){color:var(--muted)}.guest-voices .link-line{margin-top:25px}.film-feature{padding-bottom:80px}.film-feature video{display:block;width:100%;max-height:75vh;background:var(--ink)}.film-feature .fineprint,.film-feature .link-line{margin-top:20px}
/* White footer, bronze rules, concise guest directory. */
.hotel-footer{background:#fff;border-top:1px solid #c8b898}.footer-invite{display:flex;align-items:center;justify-content:space-between;gap:50px;padding-block:62px;border-bottom:1px solid var(--line)}.footer-invite h2{font-size:clamp(32px,3.5vw,49px);max-width:760px}.footer-invite .eyebrow{font-size:11px;margin-bottom:15px}.footer-invite .button{flex-shrink:0}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.3fr;gap:40px;padding-block:55px}.footer-identity p{font-size:14px;color:var(--muted);margin-top:23px}.footer-grid h3{font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-text);margin-bottom:23px}.footer-grid nav a,.footer-contact>a:not(.link-line){display:block;font-size:14px;margin:8px 0;overflow-wrap:anywhere}.footer-contact .link-line{margin-top:15px}.footer-grid a:hover{color:var(--brass-text)}.footer-base{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;padding-block:25px 32px;font-size:12px;color:var(--muted)}.footer-base>div{display:flex;gap:22px;flex-wrap:wrap;align-items:center}.footer-base button{font-size:12px;padding:0;background:none;border:0}
/* Tablet and phone: preserve hierarchy, collapse photo panels without clipping. */
@media(max-width:1200px){.primary-nav{gap:17px}.primary-nav>a:last-child{display:none}.mast-actions{gap:17px}.masthead{gap:20px}.stay-enquiry{grid-template-columns:1fr 1fr .65fr auto;padding:25px}.stay-enquiry>div{display:none}.welcome{gap:5vw}.welcome-photos>img{height:520px}.feature-panel-copy{padding:38px 32px}.stay-card-copy,.leisure-card>div{padding:23px}.stay-card-photo img{height:250px}.gallery-preview img{height:245px}.footer-grid{gap:30px;grid-template-columns:1.2fr 1fr 1fr}.footer-contact{grid-column:1/-1;display:flex;gap:30px;flex-wrap:wrap;align-items:center}.footer-contact h3,.footer-contact .link-line{margin:0}}
@media(max-width:1000px){.primary-nav{display:none}.masthead{height:90px}.welcome{gap:35px}.welcome-facts{gap:24px}.welcome-photos>img{height:530px}.stay-card-grid{gap:18px}.stay-card h3{font-size:28px}.stay-card-copy{padding:21px}.stay-card-photo img{height:230px}.leisure-grid{gap:20px}.leisure-card h3{font-size:27px}.leisure-card img{height:220px}.gallery-preview{gap:16px}.gallery-preview img{height:220px}.feature-panel>figure{min-height:440px}.room-details{gap:35px}.room-enquiry{padding:26px}.story-copy,.venue-copy{padding:30px}.story-image img,.venue-photo img{height:420px}.story-copy h2,.venue-copy h2{font-size:37px}.room-hero>img{height:450px}.room-hero{min-height:450px}.pool-dining>div{padding:35px}.contact-section{grid-template-columns:1fr;gap:40px}.contact-details dl{display:grid;grid-template-columns:140px 1fr;gap:20px 30px;align-items:start}.contact-details dt,.contact-details dd{margin:0}.contact-details dd{break-inside:avoid}.enquiry-form{padding:35px}.footer-base{flex-direction:column}.menu-main{grid-template-columns:1fr}.menu-grid{grid-template-columns:1fr 1fr}.journal-grid{gap:25px}.journal-grid img{height:220px}.business-note{padding:35px}.photo-grid{columns:2}.planning-grid{gap:45px}.planning-grid>article+article{padding-left:45px}}
@media(max-width:760px){:root{--gutter:24px}.section{padding-block:65px}.masthead{height:83px;padding-inline:23px;gap:15px}.brand{min-width:132px}.brand-main{font-size:31px}.brand-sub{font-size:9px;letter-spacing:.12em}.brand-rule{width:16px}.mast-actions{gap:16px}.reserve-link{font-size:12px;padding:10px 12px}.menu-toggle{font-size:13px;gap:8px}.menu-toggle i{width:18px}.masthead.is-scrolled{height:76px}.stay-enquiry{grid-template-columns:1fr 1fr;gap:18px;margin-top:20px;padding:20px}.stay-enquiry .button{font-size:13px;padding:14px 10px;gap:9px;min-height:52px}.stay-enquiry input{font-size:14px}.welcome{grid-template-columns:1fr;gap:38px}.welcome-photos{padding:0 17px 17px 0}.welcome-photos:after{inset:17px 0 0 17px}.welcome-photos>img{height:390px}.welcome-copy h2{font-size:41px}.welcome-facts{gap:36px}.welcome-facts strong{font-size:37px}.welcome-facts span{font-size:12px}.center-heading{margin-bottom:32px}.center-heading h2{font-size:40px}.center-heading p:not(.eyebrow){margin-top:20px}.eyebrow{font-size:11px;letter-spacing:.15em}.stay-card-grid{grid-template-columns:1fr;gap:25px}.stay-card-photo img{height:330px}.stay-card-copy{padding:28px}.stay-card h3{font-size:35px}.stay-card-copy>p:not(.eyebrow){font-size:16px}.feature-panel,.feature-reverse{grid-template-columns:1fr}.feature-panel>figure{min-height:0;height:340px}.feature-panel-copy{padding:35px 28px}.feature-panel-copy h3,.feature-panel-copy h2{font-size:38px}.feature-reverse>figure,.feature-reverse .feature-panel-copy{order:initial}.leisure-grid{grid-template-columns:1fr;gap:25px}.leisure-card img{height:300px}.leisure-card h3{font-size:34px}.leisure-card p{font-size:16px}.leisure-card>div{padding:28px}.home-visit{height:560px}.visit-copy h2{font-size:43px}.visit-copy .eyebrow{font-size:11px}.visit-copy p:not(.eyebrow){font-size:15px}.gallery-preview{grid-template-columns:1fr 1fr;gap:25px 16px}.gallery-preview img{height:225px}.gallery-preview a>span{font-size:12px}.section-title{display:block;margin-bottom:30px}.section-title>.link-line,.section-title>p{margin-top:20px}.planning-grid{grid-template-columns:1fr;gap:35px}.planning-grid>article+article{border-left:0;border-top:1px solid var(--line);padding:35px 0 0}.planning-grid h2{font-size:39px}.page-opening{padding-top:42px}.opening-copy{padding-bottom:33px}.opening-copy h1{font-size:45px}.opening-copy>p:not(.eyebrow){font-size:15px;margin-top:20px}.page-opening>figure{height:310px}.text-opening{padding-block:45px 38px}.text-opening h1{font-size:45px}.text-opening>p:not(.eyebrow){font-size:15px}.enquiry-band{display:block;padding-block:50px}.enquiry-band h2{font-size:35px}.enquiry-band .button{margin-top:25px}.room-stories{gap:28px}.room-story,.room-story.reverse{grid-template-columns:1fr}.room-story.reverse .story-image,.room-story.reverse .story-copy{order:initial}.story-image img{height:320px}.story-copy{padding:28px}.story-copy h2{font-size:36px}.room-hero{display:flex;flex-direction:column;min-height:0}.room-hero-copy{padding:42px 24px;width:100%}.room-hero h1{font-size:48px}.room-hero>img{height:330px;order:2}.room-details{grid-template-columns:1fr;gap:32px}.room-enquiry{padding:28px}.photo-pair{grid-template-columns:1fr;gap:25px}.photo-pair .photo-open img{height:auto;max-height:460px;object-fit:contain}.amenities{grid-template-columns:1fr;gap:30px}.amenities>ul{gap:0 20px}.amenities li{font-size:14px}.next-room{padding:35px 24px;gap:18px}.next-room h2{font-size:35px}.next-room b{font-size:35px}.dining-venues{gap:28px}.venue,.venue:nth-child(even){grid-template-columns:1fr}.venue:nth-child(even) .venue-photo,.venue:nth-child(even) .venue-copy{order:initial}.venue-photo img{height:320px}.venue-copy{padding:28px}.venue-copy h2{font-size:36px}.pool-dining{grid-template-columns:1fr}.pool-dining>img{height:330px}.pool-dining>div{padding:40px 24px}.experience-feature{grid-template-columns:1fr;gap:33px}.experience-feature img{height:330px}.experience-columns{grid-template-columns:1fr;gap:28px}.experience-columns img{height:300px}.experience-columns h2{font-size:34px;margin-inline:25px}.experience-columns p,.experience-columns .link-line{margin-inline:25px}.facility-directory{grid-template-columns:1fr;gap:32px}.service-group summary{font-size:26px}.service-group ul{gap:12px 18px;font-size:14px}.event-intro{grid-template-columns:1fr;gap:24px}.event-panorama{height:330px}.event-venues{grid-template-columns:1fr;gap:30px}.venue-names h3{font-size:31px}.business-note{grid-template-columns:1fr;gap:25px;padding:28px;margin-bottom:40px}.business-note h2{font-size:35px}.gallery-filters{gap:5px;justify-content:start}.gallery-filters button{font-size:14px;padding:10px 13px}.photo-grid{columns:2;column-gap:15px}.gallery-photo{margin-bottom:15px}.gallery-photo>span{font-size:12px;padding-top:8px}.photo-dialog{padding:15px}.about-columns{grid-template-columns:1fr;gap:20px;margin:30px 0}.hotel-numbers{gap:20px;padding-block:25px}.hotel-numbers strong{font-size:44px}.hotel-numbers span{font-size:12px}.about-diptych{grid-template-columns:1fr;gap:25px}.about-diptych img{height:330px}.values{grid-template-columns:1fr;gap:28px}.values article{padding:28px}.values h2{font-size:35px}.offers-collection{grid-template-columns:1fr;gap:28px}.offers-collection img{height:300px}.offers-collection article>div{padding:28px}.offers-collection h2{font-size:35px}.journal-grid{grid-template-columns:1fr;gap:40px}.journal-grid img{height:300px}.journal-grid h2{font-size:34px}.contact-details dl{display:block}.contact-details dt{margin-top:25px}.contact-details dd{margin:8px 0 0}.contact-section{gap:32px;padding-bottom:55px}.contact-details{padding:0}.contact-details h2{font-size:36px}.enquiry-form{padding:28px 22px}.enquiry-form h2{font-size:36px}.form-grid{gap:22px 15px}.guest-voices{grid-template-columns:1fr;gap:25px;padding-bottom:55px}.guest-voices h2{font-size:38px}.map-caption{font-size:12px}.map-controls{top:10px;right:10px}.footer-invite{display:block;padding-block:50px}.footer-invite h2{font-size:37px}.footer-invite .button{margin-top:27px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px;padding-block:40px}.footer-identity,.footer-contact{grid-column:1/-1}.footer-contact{display:block}.footer-contact h3{margin-bottom:20px}.footer-contact .link-line{margin-top:16px}.footer-base{gap:20px;font-size:12px}.footer-base>div{gap:14px 20px}.menu-grid{grid-template-columns:1fr;padding-top:25px}.menu-grid>figure{display:none}.menu-main>a{font-size:29px;padding:11px 0}.site-menu{padding:22px 24px 40px}.menu-top{padding-bottom:25px}}
@media(max-width:420px){.form-grid{grid-template-columns:1fr}.reserve-link{display:none}.stay-enquiry{padding:16px;gap:14px}.stay-enquiry .button>span{display:none}.stay-enquiry .button{font-size:12px}.welcome-photos>img{height:330px}.welcome-facts{gap:27px}.welcome-copy h2{font-size:37px}.stay-card-photo img{height:280px}.gallery-preview img{height:190px}.room-hero h1{font-size:43px}.opening-copy h1,.text-opening h1{font-size:40px}.visit-copy h2{font-size:38px}}
@media(max-width:360px){.photo-grid{columns:1}.footer-grid{grid-template-columns:1fr}.welcome-facts{gap:21px}.welcome-facts strong{font-size:33px}.gallery-preview img{height:170px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.will-reveal{opacity:1;transform:none}.cinema-slide img{transform:none!important}}html.motion-paused{scroll-behavior:auto}html.motion-paused *,html.motion-paused *:before,html.motion-paused *:after{animation-play-state:paused!important;transition:none!important}html.motion-paused .will-reveal{opacity:1;transform:none}
body.header-docked{padding-top:96px}@media(max-width:1000px){body.header-docked{padding-top:90px}}@media(max-width:760px){body.header-docked{padding-top:83px}}

/* Local, supplied IT Genesis footer mark. */
.footer-base{flex-wrap:wrap;align-items:center}.powered-by{display:block;flex-shrink:0;margin-left:auto;padding-block:8px}.powered-by img{width:258px;max-width:100%;height:auto}.powered-by:focus-visible{outline:3px solid #836230;outline-offset:5px}@media(max-width:1000px){.powered-by{margin-left:0;align-self:flex-start}}@media(max-width:420px){.powered-by img{width:240px}}

/* Verified arrival address, replacing the approximate schematic. */
.location-card{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid var(--line);background:var(--stone)}.location-photo{display:block;overflow:hidden}.location-photo img{width:100%;height:100%;min-height:380px;object-fit:cover}.location-card-copy{padding:45px;align-self:center}.location-card-copy h3{font-size:38px}.location-card address{font-style:normal;line-height:1.8;margin-top:24px;color:var(--muted)}.location-coordinates{font-size:13px;color:var(--muted);margin-top:15px}.location-links{display:flex;flex-wrap:wrap;gap:17px 25px;margin-top:28px;align-items:center}.home-arrival{padding-top:65px}.contact-location .section-title{margin-bottom:35px}@media(max-width:760px){.location-card{grid-template-columns:1fr}.location-photo img{height:280px;min-height:0}.location-card-copy{padding:28px}.location-card-copy h3{font-size:34px}.home-arrival{padding-top:45px}}
