@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--navy:#1b3350;--deep:#14283e;--silver:#c8cbc7;--paper:#f7f8f7;--ink:#1c2a38;--muted:#596570;--line:#dce1e5;--blue:#e8eef2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font:16px/1.65 'DM Sans',Arial,sans-serif;background:var(--paper);color:var(--ink)}h1,h2,h3,p{margin:0}h1,h2,.display{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;line-height:1;letter-spacing:-.015em;font-weight:600}h1{font-size:clamp(58px,7vw,100px)}h2{font-size:clamp(40px,4.8vw,62px)}h3{font-size:22px;line-height:1.3}p{margin-top:18px}a{color:inherit;text-underline-offset:5px}button{font:inherit}img{display:block;max-width:100%}.wrap{width:min(1240px,90%);margin:auto}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.muted{color:var(--muted)}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:12px 23px;border:1px solid transparent;border-radius:3px;background:var(--navy);color:white;font-weight:600;font-size:14px;text-decoration:none;transition:background .2s,transform .2s}.btn:hover{background:#294e74;transform:translateY(-2px)}.btn.light{background:var(--silver);color:var(--deep)}.btn.outline{border-color:var(--line);background:transparent;color:var(--ink)}.textlink{font-size:14px;font-weight:600}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #678dae;outline-offset:5px}.skip{position:absolute;left:15px;top:-90px;background:white;padding:12px;z-index:40}.skip:focus{top:10px}.topbar{background:var(--deep);color:var(--silver);font-size:12px;letter-spacing:.05em}.topbar .wrap{display:flex;justify-content:space-between;gap:20px;padding:8px 0}header{background:var(--navy);color:white;position:sticky;top:0;z-index:20;border-bottom:1px solid #ffffff20}.nav{height:100px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo-frame{width:120px;height:78px;overflow:hidden;position:relative;flex-shrink:0}.logo-frame img{position:absolute;width:132px;max-width:none;left:-6px;top:-34px}.navlinks{display:flex;gap:32px;align-items:center}.navlinks a{text-decoration:none;font-size:14px}.navlinks a[aria-current]{text-decoration:underline;text-underline-offset:8px}.menu{display:none;background:transparent;border:1px solid #ffffff70;color:white;padding:8px 15px;border-radius:3px}.hero{display:grid;grid-template-columns:1fr 1.02fr;background:var(--navy);color:white;min-height:610px}.hero-copy{padding:65px 9% 65px max(5vw,calc((100vw - 1240px)/2));display:flex;flex-direction:column;justify-content:center;align-items:start}.hero h1{margin:25px 0 5px}.hero h1 span{color:var(--silver)}.hero p{color:#d7dfe5;max-width:450px;font-size:18px}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:30px}.hero-image{position:relative;min-height:570px}.hero-image>img{height:100%;width:100%;position:absolute;object-fit:cover;object-position:52% center}.image-label{position:absolute;bottom:25px;left:25px;right:25px;border:1px solid #ffffff70;background:#14283ee8;padding:18px 23px;display:flex;justify-content:space-between;align-items:center;gap:20px}.image-label strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:26px}.image-label span{font-size:13px;color:#d7dfe5}.wayfinding{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.wayfinding a{display:flex;align-items:center;gap:20px;text-decoration:none;padding:27px 25px;border-right:1px solid var(--line);font-weight:600}.wayfinding a:first-child{padding-left:0}.wayfinding a:last-child{border:0}.wayfinding .num{font-size:13px;color:var(--muted);font-weight:400}.section{padding:90px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:35px}.section-head h2{margin-top:15px}.section-head>p{max-width:390px;color:var(--muted)}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:30px 0}.filters button{background:transparent;border:1px solid var(--line);border-radius:3px;cursor:pointer;padding:10px 19px;font-size:14px;color:var(--ink)}.filters button[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:white}.directory{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service{background:white;border:1px solid var(--line);border-top:4px solid var(--brand,var(--navy));padding:30px;display:flex;flex-direction:column;border-radius:3px;min-height:350px}.service .eyebrow{color:var(--muted);font-size:11px}.service h3{font-size:27px;margin-top:22px}.service p{font-size:15px;color:var(--muted);flex:1}.service-price{margin-top:24px;font-size:15px;font-weight:700}.service-detail{font-size:12px;color:var(--muted);margin:6px 0 22px}.service a{margin-top:23px;font-weight:700;font-size:14px;align-self:start}.directory-note{font-size:13px;color:var(--muted);margin-top:25px}.nutrition{display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center;border-top:1px solid var(--line);padding-top:35px;margin-top:40px}.nutrition p{max-width:750px;color:var(--muted);font-size:15px;margin-top:10px}.story{background:var(--blue)}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.split img{width:100%;height:460px;object-fit:cover;border-radius:3px}.split h2{margin-top:20px}.split p{color:var(--muted)}.fact-list{margin:28px 0 0;padding:0;list-style:none;border-top:1px solid #ccd4da}.fact-list li{border-bottom:1px solid #ccd4da;padding:15px 0;display:flex;justify-content:space-between;gap:25px;font-size:14px}.fact-list span{color:var(--muted)}.family-band{background:var(--navy);color:white;padding:70px 0}.family-band .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.family-band p{margin:0;color:#d7dfe5;font-size:18px}.family-band .eyebrow{color:var(--silver);margin-bottom:16px}.visit-summary{display:grid;grid-template-columns:1fr 1fr;gap:80px}.visit-summary h2{margin-top:15px}.visit-summary p{color:var(--muted)}.address-card{background:white;border:1px solid var(--line);padding:35px}.address-card .display{font-size:60px}.address-card p{margin-top:8px}.address-card .btn{margin-top:24px}.footer{background:var(--deep);color:#d7dfe5;padding:50px 0 25px}.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}.footer h3{font-size:17px;color:white}.footer p{font-size:14px}.footer a{display:block;font-size:14px;margin-top:10px}.footer .footer-logo{width:120px;margin:0 0 15px}.footer-bottom{border-top:1px solid #ffffff25;display:flex;justify-content:space-between;flex-wrap:wrap;gap:25px;padding-top:25px;margin-top:40px;font-size:12px}.footer-bottom a{display:inline;font-size:12px;margin:0 0 0 18px}.page-hero{background:var(--blue);padding:65px 0}.page-hero h1{margin-top:20px}.page-hero p{max-width:710px;font-size:19px;color:var(--muted)}.room-options{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:45px}.room-option{border-top:2px solid var(--navy);padding-top:24px}.room-option .display{font-size:40px;color:#697b8b;margin-bottom:22px}.room-option p{color:var(--muted);font-size:15px}.callout{background:var(--navy);color:white;padding:40px;border-radius:4px;margin-top:45px}.callout p{color:#d7dfe5;max-width:800px}.callout .actions{margin-top:22px}.faqs details{padding:22px 0;border-bottom:1px solid var(--line)}.faqs summary{font-size:18px;font-weight:600;cursor:pointer}.faqs p{color:var(--muted)}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.contact-card{border:1px solid var(--line);background:white;padding:30px}.contact-card a{overflow-wrap:anywhere}.contact-card h3{margin-top:14px}.contact-card p{font-size:15px;color:var(--muted)}.contact-card .btn{margin-top:22px}[hidden]{display:none!important}@media(max-width:1000px){.navlinks{gap:20px}.hero-copy{padding:45px 5vw}.hero{min-height:560px}.directory{grid-template-columns:repeat(2,1fr)}.split{gap:40px}.family-band .wrap{gap:45px}}@media(max-width:700px){.topbar .wrap{justify-content:center}.topbar .wrap span:last-child{display:none}.nav{height:88px}.nav>.btn{display:none}.logo-frame{transform:scale(.9);transform-origin:left center}.menu{display:block}.navlinks{display:none;position:absolute;top:88px;left:0;right:0;padding:24px 5%;background:var(--navy);border-top:1px solid #ffffff30}.navlinks.open{display:flex;flex-direction:column;align-items:start;gap:18px}.navlinks a{font-size:16px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 5vw}.hero h1{font-size:66px}.hero-image{min-height:390px}.image-label{left:18px;right:18px;bottom:18px;padding:14px 18px}.wayfinding{grid-template-columns:1fr}.wayfinding a,.wayfinding a:first-child{padding:17px 0;border-right:0;border-bottom:1px solid var(--line)}.wayfinding a:last-child{border:0}.section{padding:60px 0}.section-head{display:block}.section-head>p{max-width:none}.directory,.split,.visit-summary,.family-band .wrap,.room-options,.contact-grid{grid-template-columns:1fr;gap:25px}.service{min-height:310px}.nutrition{grid-template-columns:1fr;gap:20px}.nutrition .btn{justify-self:start}.split img{height:330px}.family-band{padding:50px 0}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:1/-1}.page-hero{padding:45px 0}.page-hero h1{font-size:57px}.callout{padding:28px}.room-options{gap:35px}.filters{gap:7px}.filters button{padding:9px 13px}.address-card{padding:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hire-hero{display:grid;grid-template-columns:1.4fr .75fr;gap:75px;align-items:center}.hire-rate{background:var(--navy);color:white;padding:35px;border-radius:4px}.hire-rate .rate{font:600 90px/1 'Barlow Condensed',Impact,sans-serif;margin-top:24px}.hire-rate .rate span{font:400 17px/1.6 'DM Sans',sans-serif}.hire-rate p{color:#d7dfe5;font-size:16px}.hire-rate ul{padding:20px 0 20px 20px;font-size:14px;border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;margin:24px 0}.hire-rate li{padding:5px 0}.hire-rate a{font-size:14px;font-weight:600}.hire-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 32px}.hire-benefits article{border-top:1px solid var(--line);padding-top:25px}.hire-benefits .display{font-size:40px;color:#697b8b;display:block;margin-bottom:24px}.hire-benefits p{color:var(--muted);font-size:15px}.hire-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.hire-steps article{border-top:2px solid var(--navy);padding-top:22px}.hire-steps strong{font-size:17px}.hire-steps p{font-size:15px;color:var(--muted)}@media(max-width:900px){.hire-hero{gap:30px;grid-template-columns:1.1fr .8fr}.hire-rate{padding:25px}.hire-benefits,.hire-steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.hire-hero,.hire-benefits,.hire-steps{grid-template-columns:1fr}.hire-hero{gap:35px}.hire-rate .rate{font-size:76px}.hire-benefits{gap:30px}.hire-steps{gap:28px}}
.hire-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.hire-price-card{border:1px solid var(--line);background:white;padding:30px;border-radius:4px;display:flex;flex-direction:column}.hire-price-card .price-number{font:600 66px/1.2 'Barlow Condensed',Impact,sans-serif;margin:22px 0}.price-number span{font:400 15px/1.6 'DM Sans',sans-serif}.hire-price-card h3{font-size:21px}.hire-price-card p{font-size:15px;color:var(--muted);flex:1}.cancel-note{border-top:1px solid var(--line);padding-top:18px;margin-top:25px;font-size:14px;font-weight:700}.day-rate{background:var(--navy);color:white;border-color:var(--navy)}.day-rate p{color:#d7dfe5}.day-rate .cancel-note{border-color:#ffffff40}.booking-strip{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--blue);padding:25px 30px;margin-top:28px;border-radius:4px}.booking-strip p{margin:0;font-size:15px}.booking-strip .btn{flex-shrink:0}@media(max-width:760px){.hire-pricing{grid-template-columns:1fr}.booking-strip{align-items:start;flex-direction:column;gap:18px}.fact-list li{flex-wrap:wrap;gap:6px}}
.room-options{grid-template-columns:repeat(2,1fr)}.day-rate .btn{margin-top:22px}.entrance-guide{border:1px solid var(--line);background:white;margin-top:25px;padding:24px}.entrance-guide>div+div{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.entrance-guide strong{font-size:16px}.entrance-guide p{font-size:15px;margin-top:7px}@media(max-width:700px){.room-options{grid-template-columns:1fr}}
.nav>.btn{white-space:nowrap}@media(min-width:701px) and (max-width:1000px){.nav>.btn{display:none}}

.contact-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:65px;align-items:start}.contact-layout h2{margin-top:16px}.contact-layout aside{display:grid;gap:24px}.enquiry-form{margin-top:32px}.enquiry-form label{display:block;font-weight:600;margin-bottom:22px}.enquiry-form label span{font-size:12px;font-weight:400}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{display:block;width:100%;margin-top:8px;padding:13px;border:1px solid #98a6b2;border-radius:3px;background:white;color:var(--ink);font:inherit}.enquiry-form textarea{resize:vertical}.enquiry-form :is(input,select,textarea):focus-visible{outline:3px solid #678dae;outline-offset:2px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note,#contact-status{font-size:14px;margin:0 0 20px}.enquiry-form button{cursor:pointer}.enquiry-form button:disabled{opacity:.55;cursor:not-allowed;transform:none}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#contact-status{margin-top:18px}.privacy-copy{max-width:850px}.privacy-copy h2{margin-top:16px}@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:35px}}@media(max-width:500px){.form-pair{grid-template-columns:1fr;gap:0}}
