
:focus-visible{outline:3px solid var(--terracotta);outline-offset:5px}
section[id],h2[id]{scroll-margin-top:110px}a{color:var(--forest)}
.skip-link{position:fixed;top:8px;left:8px;z-index:200;background:var(--ink);color:#fff;padding:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.seo-nav{gap:20px}.menu-toggle{display:none}.mobile-menu{display:none}
.seo-hero{padding:54px 0 74px}.seo-hero h1{font-size:clamp(2.7rem,5.5vw,4.4rem);max-width:21ch;margin:16px 0 25px}.seo-hero .lead{max-width:57ch}
.breadcrumbs{font-size:.82rem;margin:0 0 34px;color:var(--body)}.breadcrumbs a{color:var(--forest)}
.hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:center}.portrait{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:120px 120px 6px 6px}
.seo-note{font-size:.9rem;max-width:65ch;margin-top:20px;color:var(--body)}
.seo-content{max-width:800px;margin:auto}.seo-section{padding:68px 0;border-top:1px solid var(--stone)}.seo-section h2{margin:0 0 25px;max-width:27ch}.seo-section h3{margin:28px 0 13px}.seo-section li{margin-bottom:12px}.seo-section ul,.seo-section ol{padding-left:24px}
.seo-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:32px}.seo-card{border:1px solid var(--stone);padding:30px;background:#FCFAF3;border-radius:6px}.seo-card h3{margin:0 0 16px;font-size:1.65rem}.seo-card p{font-size:.98rem}.seo-card a{font-size:.94rem;font-weight:600;text-underline-offset:4px}.seo-card .number{font-size:.78rem;letter-spacing:.1em;color:var(--forest)}
.seo-strip{background:var(--sand)}.seo-cta{background:var(--forest);color:var(--cream);padding:62px 0}.seo-cta h2{color:var(--cream);margin-bottom:22px;max-width:24ch}.seo-cta p{max-width:60ch}.seo-cta .btn-primary{background:var(--cream);color:var(--forest)}.seo-cta .btn-ghost{color:var(--cream);border-color:var(--cream)}.seo-cta .btn-ghost:hover{background:rgba(255,255,255,.12)}
.seo-faq details{border-bottom:1px solid var(--stone);padding:20px 0}.seo-faq summary{cursor:pointer;font-weight:600;color:var(--ink);padding-right:15px}.seo-faq details p{margin:15px 0 0}
.seo-related{padding:65px 0}.seo-related h2{max-width:25ch}.seo-footer .wrap{display:grid;grid-template-columns:1fr 1.4fr}.seo-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px}.seo-footer .footer-note{grid-column:1/-1;max-width:85ch;font-size:.8rem;line-height:1.7}.seo-footer .brand{font-size:1.7rem}
.seo-table-wrap{overflow-x:auto}.seo-table{border-collapse:collapse;width:100%;font-size:1rem}.seo-table th,.seo-table td{padding:18px;text-align:left;border-bottom:1px solid var(--stone);vertical-align:top}.seo-table th{background:var(--sand)}
.availability-box{padding:30px;background:var(--sand);border:1px solid var(--stone);margin:28px 0}.availability-box label{display:block;font-weight:600;margin-bottom:12px}.availability-box select{font:inherit;max-width:100%;width:100%;padding:13px;background:var(--cream);border:1px solid var(--sage);color:var(--ink)}.availability-box p{margin:17px 0 0;font-size:1rem}
.sticky-enquiry{display:none}.seo-small{font-size:.88rem}.hero .seo-local{font-size:.88rem;margin:20px 0 0;max-width:57ch}.seo-callout{padding:22px 26px;border-left:3px solid var(--terracotta);background:var(--sand);margin:24px 0}.seo-callout p:last-child{margin-bottom:0}
@media(max-width:1040px){.seo-nav a:not(.btn){display:none}.menu-toggle{display:inline-block;border:1px solid var(--stone);padding:10px 12px;background:transparent;color:var(--ink);font:inherit;font-size:.8rem}.mobile-menu[open]{display:block;padding:12px 24px 20px;background:var(--cream);border-top:1px solid var(--stone)}.mobile-menu a{display:block;padding:8px 0;text-decoration:none;font-size:.93rem}.seo-nav{gap:9px}.bar{gap:15px}}
@media(max-width:720px){.hero-grid{grid-template-columns:1fr;gap:35px}.hero-grid .portrait{max-width:290px}.seo-cards{grid-template-columns:1fr}.seo-hero{padding:38px 0 55px}.seo-section{padding:48px 0}.seo-footer .wrap{grid-template-columns:1fr}.seo-footer nav{grid-template-columns:1fr}.seo-footer .footer-note{grid-column:auto}.seo-table th,.seo-table td{padding:12px 10px}.seo-hero h1{font-size:2.65rem}.sticky-enquiry{display:block;position:fixed;bottom:0;left:0;right:0;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:var(--cream);border-top:1px solid var(--stone);z-index:60}.sticky-enquiry a{display:block;text-align:center;padding:12px}.seo-footer{padding-bottom:105px}.bar .brand span{font-size:.55rem;letter-spacing:.08em}.seo-nav .btn{padding:10px 12px;font-size:.74rem}.wrap{padding:0 22px}.bar{padding:13px 18px}.seo-nav{gap:6px}.brand{max-width:50%}.menu-toggle{padding:9px 8px;font-size:.72rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
