/* Editorial design approved on 16 September 2026. */
:root{--paper:#fcf9f2;--cream:#eee9de;--sage:#e5eddf;--sheet:#fffdf8;--ink:#18231d;--muted:#50584f;--green:#17643c;--green-hover:#10492c;--rule:#d8d8cb;--white:#fff;--display:'Newsreader',Georgia,serif;--sans:'IBM Plex Sans',Arial,sans-serif;--body:var(--sans);--font:var(--sans);--body-size:18px;--small:14px;--label:12px;--radius:6px;--section-space:112px;--bg:var(--paper);--bg-card:var(--sheet);--bg-card-hover:var(--cream);--primary:var(--green);--primary-rgb:23,100,60;--secondary:var(--green);--secondary-rgb:23,100,60;--text:var(--ink);--text-bright:var(--ink);--text-muted:var(--muted);--border:var(--rule);--border-hover:var(--green)}
html{scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:var(--body-size)/1.65 var(--sans)}
*,*::before,*::after{box-sizing:border-box}a{text-underline-offset:5px}button,input,select,textarea{font-family:var(--sans)}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--green);outline-offset:4px}
[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:20px;padding:12px 20px;background:var(--sheet);color:var(--ink);z-index:110}.skip:focus{top:10px}
.container,.wrap{width:min(1220px,calc(100% - 96px));max-width:1220px;margin-inline:auto;padding-inline:0}
.site-header{position:sticky;top:0;z-index:100;width:100%;background:var(--paper);border-bottom:1px solid var(--rule);box-shadow:none;clip-path:none;backdrop-filter:none}
.site-header .site-nav{position:static;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;width:min(1220px,calc(100% - 96px));max-width:1220px;margin:auto;padding:0;background:transparent;border:0;backdrop-filter:none;box-shadow:none;font:500 14px/1.5 var(--sans)}
.site-header a,.site-header button{color:var(--ink);text-shadow:none}.site-header .wordmark{font:600 17px/1.3 var(--sans);letter-spacing:-.04em;text-decoration:none;flex-shrink:0;max-width:100%;padding:10px 0}
.site-links{display:flex;align-items:center;gap:24px}.site-links>a,.resource-group>button{min-height:44px;display:inline-flex;align-items:center;border:0;border-bottom:2px solid transparent;background:transparent;padding:10px 0;text-decoration:none;white-space:nowrap;font:500 14px/1.5 var(--sans)}
.site-links>a:hover,.site-links>a[aria-current],.resource-group>button:hover{border-bottom-color:var(--green)}
.site-links .nav-call{padding:12px 18px;border-radius:6px;background:var(--green);color:#fff;gap:10px;border:0}.site-links .nav-call:hover{background:var(--green-hover)}
.menu-toggle{display:none;min-height:44px;border:1px solid var(--rule);background:var(--sheet);border-radius:4px;padding:10px 14px;cursor:pointer;font-size:14px}
.resource-group{position:relative}.resource-group>button{cursor:pointer;gap:6px;display:none}.nav-ready .resource-group>button{display:inline-flex}.resource-links{position:static;right:0;top:100%;width:280px;padding:12px;background:var(--sheet);border:1px solid var(--rule);box-shadow:0 10px 24px #18231d14;border-radius:6px}
.nav-ready .resource-links{position:absolute}.resource-links a{display:block;padding:12px;text-decoration:none;white-space:normal}.resource-links a:hover{background:var(--cream);text-decoration:underline}.resource-label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:8px 12px 0;padding-top:12px;border-top:1px solid var(--rule)}
.site-footer{width:min(1220px,calc(100% - 96px));margin:0 auto;padding:52px 0 24px;border-top:1px solid var(--rule);background:var(--paper);color:var(--ink);font:14px/1.7 var(--sans)}
.site-footer .footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px}.site-footer .brand{font-weight:600;font-size:18px;text-decoration:none}.site-footer p{margin:12px 0}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li+li{margin-top:10px}.site-footer a{display:inline-block;max-width:100%;overflow-wrap:anywhere;text-decoration:none}.site-footer a:hover{text-decoration:underline}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--rule);padding-top:24px;margin-top:36px;font-size:13px;color:var(--muted)}.legal-links{display:flex;flex-wrap:wrap;gap:16px}
.editorial p{max-width:none}.editorial .service-hero{padding-top:56px}.editorial .service-hero>.eyebrow{margin-bottom:28px}.editorial .page-next{padding:36px 0;font-size:16px;color:var(--green)}.editorial .breadcrumb{position:static;display:block;min-height:0;padding:0;margin:0 0 28px;background:none;border:0;font:14px/1.5 var(--sans);color:var(--muted)}
.editorial main:has(>#visibility){padding-block:64px}.editorial main>h1{margin-top:56px}.editorial main>h1+p{margin-top:28px}.editorial main>.example-document,.editorial #customer-content{margin-block:48px}.editorial .example-document h2{font-size:34px;margin:16px 0 24px}
.editorial .offer-row{gap:48px}.editorial .price{overflow-wrap:normal}.editorial .close-actions p{margin-top:20px}.editorial .sheet ol{list-style:none}
.booking-section{padding:88px 0}.booking-heading{display:grid;grid-template-columns:1fr 1fr;gap:72px;margin-bottom:36px}.booking-heading h2{font:500 clamp(36px,3.4vw,48px)/1.12 var(--display);letter-spacing:-.035em;color:var(--ink)}.booking-heading p{color:var(--muted);margin-top:16px}.booking-heading a{color:var(--green);text-decoration:underline}.booking-frame{min-width:0;width:100%;height:660px;border:1px solid var(--rule);background:var(--sheet);border-radius:6px;overflow:auto}
.ambient-glow,.grid-pattern{display:none!important}.glow-green,.glow-pink{color:var(--green);text-shadow:none}.glow-card,.glow-card:hover,.glow-card-pink:hover{box-shadow:none;border-color:var(--rule);border-radius:6px}.btn-primary,.btn-secondary{background:var(--green);color:#fff;border-radius:6px;box-shadow:none;min-height:44px;font-weight:500}.btn-primary:hover,.btn-secondary:hover{background:var(--green-hover);box-shadow:none}.btn-ghost{border:1px solid var(--green);color:var(--green);border-radius:6px;box-shadow:none;min-height:44px}.btn-ghost:hover{background:var(--cream);box-shadow:none}.badge{border-radius:0;background:transparent;color:var(--green);border:0;padding-left:0}.section-title,.page-title{font-family:var(--display);font-weight:500;letter-spacing:-.035em;color:var(--ink)}
body:not(.editorial) h1,body:not(.editorial) h2{font-family:var(--display)!important;font-weight:500!important;letter-spacing:-.035em}body:not(.editorial) h1{font-size:clamp(40px,4.6vw,64px)!important;line-height:1.1!important}body:not(.editorial) h2{line-height:1.18}body:not(.editorial) p{max-width:none}body:not(.editorial) main{min-height:50vh}body:not(.editorial) .further-reading{background:var(--cream)}
@media(max-width:1100px){.site-header .site-nav{flex-wrap:wrap;gap:0;min-height:76px}.nav-ready .menu-toggle{display:block}.site-links{display:flex;flex-direction:column;flex:0 0 100%;align-items:stretch;gap:0;padding:12px 0 24px;max-height:calc(100dvh - 90px);overflow:auto}.nav-ready .site-links{display:none}.nav-ready .site-links.is-open{display:flex;flex-direction:column}.site-links>a{padding:12px 0}.resource-group>button{width:100%;text-align:left;justify-content:space-between}.nav-ready .resource-links,.resource-links{position:static;width:100%;box-shadow:none;margin-bottom:16px}.site-links .nav-call{align-self:flex-start;margin-top:12px}}
@media(max-width:767px){:root{--section-space:64px}.wrap,.container,.site-header .site-nav,.site-footer{width:calc(100% - 40px)}.site-header .wordmark{font-size:15px;letter-spacing:-.03em}.site-header .site-nav{min-height:70px}.site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:24px}.site-footer .footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{align-items:start;flex-direction:column;font-size:13px}.legal-links{gap:12px 20px}.booking-heading{grid-template-columns:1fr;gap:16px}.booking-section{padding:56px 0}.booking-frame{height:720px}.editorial .service-hero{padding-top:32px}.editorial .offer-row{gap:24px}.editorial .offer-row .price{font-size:34px}.editorial main>h1{margin-top:36px}body:not(.editorial) .page-title{font-size:40px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.site-header:not(.nav-ready){position:static}.site-header:not(.nav-ready) .site-nav{flex-wrap:wrap}.site-header:not(.nav-ready) .site-links{flex-wrap:wrap;align-items:start}.site-header:not(.nav-ready) .resource-links{width:auto;box-shadow:none}
