.desktop-nav{gap:25px}.desktop-nav [aria-current=page]{color:#915f49;border-bottom:1px solid currentColor}.page-hero{padding:28px 7% 65px;border-bottom:1px solid var(--line);background:linear-gradient(125deg,var(--ivory) 65%,#e9d7cd)}.breadcrumbs{display:flex;gap:12px;font-size:12px;color:var(--muted);margin-bottom:65px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.page-hero h1{font:400 clamp(68px,7.7vw,124px)/1.03 var(--serif);letter-spacing:-3px;margin:24px 0}.page-hero h1 em{font-size:.88em}.page-hero>p{max-width:560px;font-size:17px;line-height:1.8;color:var(--muted)}.editorial-split{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;align-items:center}.editorial-split h2{margin:25px 0}.editorial-split p,.service-story p,.about-visit p,.service-help p{font-size:16px;line-height:1.9;color:var(--muted)}.editorial-split figure{margin:0}.editorial-split img{width:100%;height:530px;object-fit:cover}.editorial-split figcaption{font-size:12px;color:var(--muted);padding-top:12px}.editorial-split .button{margin-top:16px}.values,.service-steps{background:#e9dbd2}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.three-grid article>span{font-size:12px;color:#765d50}.three-grid h3{font:400 34px var(--serif);margin:18px 0}.three-grid p{font-size:15px;line-height:1.85;color:var(--muted)}.about-visit,.service-help,.service-story,.faq-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start}.service-story h2{font-size:55px;margin:25px 0 35px}.service-story p:first-child{margin-top:0}.source-note{font-size:13px!important}.source-note a{text-decoration:underline}.service-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:0 65px}.service-card{padding:40px 0;border-top:1px solid var(--line)}.service-card h2{font-size:68px;margin:24px 0}.service-card p{font-size:15px;line-height:1.8;max-width:400px;color:var(--muted)}.service-card:last-child{grid-column:1/-1}.service-help{background:#e9dbd2}.faq-section h2{font-size:56px;margin-top:25px}.faq-list details{border-top:1px solid var(--line);padding:23px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list p{font-size:15px;line-height:1.85;color:var(--muted);max-width:490px}.faq-list summary{font-size:15px;line-height:1.7}.related{padding-top:35px;border-top:1px solid var(--line)}.related>div{display:flex;flex-wrap:wrap;gap:18px 38px;margin-top:28px}.related a{font:28px var(--serif);border-bottom:1px solid var(--line);padding-bottom:10px}.site-cta{text-align:center;padding:65px 7%;color:var(--ivory);background:var(--ink)}.site-cta .eyebrow{color:#c7aca1}.site-cta h2{margin:24px 0 35px;font-size:68px}.full-footer{display:grid;grid-template-columns:1.1fr 1fr 1.1fr 1.2fr;align-items:start;padding:48px 7% 25px}.full-footer>div{display:flex;flex-direction:column;align-items:start;gap:12px;font-size:13px}.full-footer b{font-size:12px;font-weight:500;letter-spacing:1px;margin-bottom:8px}.full-footer a:not(.brand):hover{text-decoration:underline;text-underline-offset:4px}.full-footer .footer-base{grid-column:1/-1;display:flex;flex-direction:row;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px;font-size:12px;color:var(--muted);margin-top:25px}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:13%}.contact-layout h2{font-size:58px;margin:23px 0 33px}.contact-item{padding:24px 0;border-bottom:1px solid var(--line)}.contact-item h3{font-size:15px;font-weight:500;margin:0 0 15px}.contact-item p{font-size:15px;line-height:1.8;color:var(--muted)}.enquiry-form{margin-top:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px 20px}.enquiry-form label{display:flex;flex-direction:column;font-size:14px;gap:10px;margin-bottom:23px}.enquiry-form input,.enquiry-form textarea,.enquiry-form select,.admin-form input,.admin-form select{background:#fff9;border:1px solid #c6b8ae;padding:14px 13px;width:100%;font:16px var(--sans);color:var(--ink);border-radius:4px;min-height:48px}.enquiry-form input:focus,.enquiry-form textarea:focus,.enquiry-form select:focus{outline:2px solid #997047;outline-offset:2px}.enquiry-form textarea{resize:vertical}.enquiry-form .consent{display:flex;flex-direction:row;align-items:start;gap:12px;line-height:1.7;font-size:13px}.consent input{appearance:auto;width:18px;min-height:18px;height:18px;flex:0 0 18px;margin-top:3px;accent-color:var(--ink)}.consent a{text-decoration:underline}.form-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.form-note,.form-status{font-size:13px;line-height:1.8;color:var(--muted)}.form-status.error{color:#8c201c}.form-status.success{color:#315d3e}.enquiry-form button:disabled{opacity:.55;cursor:wait;transform:none}.booking-steps{padding-left:20px;font-size:14px}.booking-steps li{padding-left:12px;margin-bottom:25px}.booking-steps p{font-size:14px;line-height:1.8;color:var(--muted)}.booking-layout{background:var(--ivory)}.prose{max-width:980px;margin:auto}.prose h2{font-size:34px;margin:40px 0 15px;letter-spacing:-.4px}.prose p{font-size:16px;line-height:1.9;color:var(--muted)}.prose a{text-decoration:underline}.gallery-filters{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.gallery-filters button{font-size:13px;border:1px solid var(--line);background:transparent;color:var(--ink);padding:10px 18px;border-radius:30px;cursor:pointer}.gallery-filters button[aria-pressed=true]{background:var(--ink);color:var(--ivory);border-color:var(--ink)}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.gallery-grid figure{margin:0}.gallery-grid img{display:block;width:100%;height:480px;object-fit:cover}.gallery-grid button{background:none;border:0;padding:0;width:100%;cursor:zoom-in}.gallery-grid figcaption{font-size:13px;color:var(--muted);padding:15px 0}.gallery-disclosure{font-size:12px;color:var(--muted);margin-top:30px}.instagram-callout{background:#e9dbd2;text-align:center}.instagram-callout h2{margin:25px 0}.instagram-callout p{max-width:520px;margin:0 auto 30px;font-size:16px;line-height:1.8;color:var(--muted)}.lightbox{padding:20px;border:0;background:var(--ivory);max-width:min(90vw,850px);max-height:92svh}.lightbox::backdrop{background:#211a18dd}.lightbox img{display:block;max-height:72svh;max-width:100%;width:auto;margin:10px auto;object-fit:contain}.lightbox button{border:1px solid var(--ink);padding:8px 18px;border-radius:25px;float:right;background:transparent;cursor:pointer}.lightbox p{font-size:14px;clear:both}.admin-wrap{max-width:1200px;margin:auto;padding:35px 6%}.admin-wrap h1{font:52px var(--serif);margin:20px 0}.admin-wrap h2{font:36px var(--serif);margin:20px 0}.admin-form{max-width:570px}.admin-form label{display:block;font-size:14px;margin:18px 0}.admin-form input,.admin-form select{display:block;margin-top:8px}.admin-form textarea{width:100%;font:16px var(--sans);padding:12px}.admin-nav{display:flex;flex-wrap:wrap;gap:15px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.admin-nav a{font-size:14px;text-decoration:underline}.admin-nav form{margin-left:auto}.notice{padding:16px;border:1px solid var(--line);line-height:1.8;font-size:14px}.request-card{border:1px solid var(--line);padding:25px;margin:20px 0;background:#fffc}.request-card h3{font:32px var(--serif);margin:0 0 15px}.request-card p{font-size:14px;line-height:1.8;overflow-wrap:anywhere}.request-card .request-meta{font-size:12px;color:var(--muted)}.request-card form{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 15px 0 0}.request-card select{padding:10px;font:14px var(--sans)}.request-card .button{min-height:40px;padding:10px 18px;font-size:12px}.admin-login{max-width:650px;margin:50px auto}.admin-help{font-size:13px;line-height:1.8;color:var(--muted)}.admin-tabs{display:flex;gap:18px;margin:25px 0;flex-wrap:wrap}.admin-tabs a{padding:10px;border-bottom:1px solid var(--line);font-size:14px}.admin-gallery img{width:150px;height:170px;object-fit:cover}.admin-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.admin-gallery article{padding:20px;border:1px solid var(--line)}.danger-button{background:#8c201c;color:#fff;border:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.desktop-nav{gap:15px;font-size:13px}.header{padding:0 4%}.page-hero h1{font-size:90px}.editorial-split,.service-story,.faq-section,.contact-layout{gap:6%}.contact-layout h2{font-size:47px}.service-story h2{font-size:45px}.three-grid{gap:28px}.full-footer{gap:30px;grid-template-columns:1fr 1fr}.gallery-grid img{height:400px}}
@media(max-width:700px){.header{padding:0 6%}.page-hero{padding:25px 6% 42px}.breadcrumbs{margin-bottom:43px;font-size:11px}.page-hero h1{font-size:clamp(55px,13vw,85px);letter-spacing:-2px}.page-hero>p{font-size:15px}.editorial-split,.about-visit,.service-help,.service-story,.faq-section,.contact-layout{grid-template-columns:1fr;gap:35px}.editorial-split img{height:460px}.three-grid{grid-template-columns:1fr;gap:20px}.three-grid article{border-top:1px solid #c7b7ad;padding-top:22px}.three-grid h3{font-size:33px}.service-cards{grid-template-columns:1fr;gap:0}.service-card:last-child{grid-column:auto}.service-card{padding:30px 0}.service-card h2{font-size:58px}.service-story h2{font-size:46px;margin:20px 0 30px}.service-story p{font-size:15px}.faq-section h2{font-size:47px}.related a{font-size:25px}.site-cta{padding:50px 6%}.site-cta h2{font-size:54px}.full-footer{grid-template-columns:1fr 1fr;padding:40px 6% 24px;gap:30px 20px}.full-footer>div{font-size:12px}.full-footer .footer-base{font-size:11px;gap:15px}.contact-layout h2{font-size:48px}.form-grid{grid-template-columns:1fr;gap:0}.gallery-section .section-top{flex-direction:column;align-items:start}.gallery-filters{justify-content:start;gap:8px}.gallery-filters button{padding:8px 14px;font-size:12px}.gallery-grid{gap:18px;grid-template-columns:1fr}.gallery-grid img{height:440px}.gallery-grid figcaption{font-size:12px}.admin-wrap{padding:25px 6%}.admin-wrap h1{font-size:42px}.admin-gallery{grid-template-columns:1fr}.request-card{padding:20px}.request-card .button{font-size:12px}.full-footer .brand{font-size:45px}}
