/* Side chapters: the course stays visible beside an editorial reading surface. */
html{scrollbar-gutter:stable}#detail{position:fixed;inset:0 0 0 auto;margin:0;width:min(960px,76vw);max-width:none;height:100dvh;max-height:none;padding:0;border:0;border-left:1px solid #eee8c940;box-shadow:-25px 0 100px #061a1833;background:linear-gradient(120deg,#173b31ed,#102b25eb);color:#f3f1dc;backdrop-filter:blur(20px);overflow:hidden;animation:page-enter .5s cubic-bezier(.2,.7,.2,1)}#detail::backdrop{background:#071b191f;backdrop-filter:none}.detail-toolbar{height:84px;border-bottom:1px solid #e7e8ca26;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;gap:16px}.detail-brand{font-size:10px;letter-spacing:1.5px}.detail-brand span{opacity:.55;margin-left:10px}.detail-close{padding:12px 0;background:none;font-size:11px;display:flex;align-items:center;gap:24px}.detail-close span{font-size:30px;font-weight:400}#detail-scroll{height:calc(100% - 84px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#e9e5c74d transparent}.detail-breadcrumb{display:flex;flex-wrap:wrap;gap:12px 22px;padding:28px 5.5%;border-bottom:1px solid #e7e8ca20}.detail-breadcrumb a{font-size:10px;color:#dfe6d3a6;padding:3px 0}.detail-breadcrumb a[aria-current=page]{color:#fff8d9;border-bottom:1px solid #e3e5b6}#detail article{padding:48px 8% 44px}.detail-eyebrow{font-size:9px;letter-spacing:2px;margin:0 0 30px!important;color:#dbe2b1}#detail #detail-title{position:static;font-size:clamp(40px,4.5vw,72px);line-height:1.05;letter-spacing:-.055em;margin:0 0 30px;outline:none;text-shadow:none}#detail .detail-intro{font-size:16px;line-height:1.85;color:#e8ead3d9;max-width:600px;margin:0 0 45px}.detail-link{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #dee4c833;padding:26px 0;font-size:25px;letter-spacing:-.7px;transition:color .2s,padding .2s}.detail-link:hover{color:#e3eba8;padding-left:8px}.detail-link small{display:block;font-size:12px;letter-spacing:0;line-height:1.7;opacity:.65;margin-top:7px}.detail-link b{font-weight:400;font-size:24px}.detail-section{display:grid;grid-template-columns:38px 1fr;gap:18px;border-top:1px solid #dee4c833;padding:30px 0}.detail-number{font-size:9px;letter-spacing:1px;opacity:.5;padding-top:8px}#main-content h3{font-size:25px;line-height:1.2;letter-spacing:-.7px;font-weight:400;margin:0 0 17px}#main-content .detail-section p,#main-content li{font-size:14px;line-height:1.85;color:#e6e9d6d6;margin:0 0 14px}#main-content .detail-section p:last-child{margin-bottom:0}.detail-list{padding-left:17px;margin:0}.detail-list li{padding-left:6px}.detail-photo{margin:0 0 35px}.detail-photo img{width:100%;height:auto;max-height:410px;object-fit:cover;display:block;filter:saturate(.65)}.detail-photo figcaption{font-size:8px;letter-spacing:1.8px;opacity:.55;margin-top:12px}.clinic-table{border-collapse:collapse;width:100%;font-size:13px;margin:22px 0}.clinic-table caption{text-align:left;font-size:11px;color:#dde5cc;line-height:1.7;padding-bottom:14px}.clinic-table th,.clinic-table td{text-align:left;border-bottom:1px solid #dee4c826;padding:13px 0}.clinic-table th{font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:1px}.detail-note{font-size:12px!important;opacity:.7}.detail-phone{display:inline-block;font-size:12px;border-bottom:1px solid #dee4c855;padding-bottom:7px;margin-top:20px}.detail-quote{font-size:clamp(32px,4vw,52px);line-height:1.12;letter-spacing:-2px;margin:35px 0 50px;color:#e3e8b9}.detail-footer{border-top:1px solid #dee4c84d;margin-top:40px;padding:34px 0}.detail-footer>span{font-size:8px;letter-spacing:1.6px;opacity:.6}.detail-enquire{background:#e1e6c4;color:#1a352b;display:flex;justify-content:space-between;align-items:center;width:100%;padding:22px 25px;margin-top:18px;text-align:left;font-size:15px}.detail-enquire b{font-size:23px;font-weight:400}.detail-next{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 0;border-top:1px solid #dee4c833}.detail-next small{font-size:8px;letter-spacing:1px;opacity:.6}.detail-next>span{font-size:16px}.contact-details{display:flex;flex-direction:column;gap:20px;margin-bottom:45px}.contact-details>a{font-size:clamp(17px,2.3vw,30px);letter-spacing:-.5px;overflow-wrap:anywhere}.explore-menu{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.explore-menu a{border-top:1px solid #dee4c833;display:flex;gap:10px;align-items:center;padding:19px 0;font-size:13px}.explore-menu small{font-size:8px;opacity:.5}.explore-menu span{margin-left:auto}.menu-course{display:block;background:none;border-bottom:1px solid #dee4c855;padding:10px 0;margin-top:25px;font-size:11px}.more-services{position:absolute;left:67%;top:70%;min-width:220px}.experience-details{position:absolute;left:0;bottom:0;min-width:190px}.story-link{margin-top:8px}.contact-page-link{font-size:11px;display:block;margin-top:12px!important}.detail-open .rail{visibility:hidden}@keyframes page-enter{from{transform:translateX(70px);opacity:0}to{transform:translateX(0);opacity:1}}
@media(max-width:700px){#detail{width:94vw}.detail-toolbar{height:70px;padding:0 6%;gap:8px}.detail-brand{font-size:8px;letter-spacing:1px}.detail-brand span{display:none}.detail-close{font-size:9px;gap:12px}#detail-scroll{height:calc(100% - 70px)}.detail-breadcrumb{padding:20px 7%;gap:8px 15px}.detail-breadcrumb a{font-size:9px}#detail article{padding:32px 7%}#detail #detail-title{font-size:42px}.detail-eyebrow{font-size:8px;margin-bottom:24px!important}#detail .detail-intro{font-size:14px;margin-bottom:30px}.detail-section{grid-template-columns:24px 1fr;gap:10px;padding:25px 0}#main-content h3{font-size:22px}#main-content .detail-section p,#main-content li{font-size:13px}.detail-link{font-size:22px}.detail-next{align-items:flex-start;flex-direction:column;gap:10px}.more-services{left:8%;top:81%;min-width:180px;padding:10px 0}.experience-details{left:auto;right:0;min-width:0;font-size:9px;padding:10px 0}.explore-menu{gap:0 14px}.explore-menu a{font-size:11px;padding:15px 0}.contact-page-link{font-size:9px;margin-top:7px!important}.final-copy>a{margin-top:8px}.detail-photo img{max-height:300px}}
@media(prefers-reduced-motion:reduce){#detail{animation:none}.detail-link{transition:none}}
.detail-open .scene{opacity:0!important;pointer-events:none!important}.detail-open .giant,.detail-open .orbit,.detail-open .horizon{opacity:0!important}
@media(max-width:700px){.experience-details{left:0;right:auto;bottom:8%;padding:8px 0}#plan-experience{min-width:190px}}
/* Standalone documents: normal page scroll and full-width editorial layouts. */
.content-page{background:#142f28;overflow-x:hidden}.content-page .stage{z-index:-1;pointer-events:none}.page-tint{position:absolute;inset:0;background:linear-gradient(90deg,#0c2928dc,#153d32b8),linear-gradient(0deg,#102e28ed,transparent 90%)}.content-page header.page-header{position:relative;z-index:5;height:110px;background:none;padding:0 5%;gap:32px;border-bottom:1px solid #f0ebd524}.page-header .brand{margin-right:auto}.page-home{font-size:11px;white-space:nowrap}.page-menu{position:relative}.page-menu summary{cursor:pointer;list-style:none;font-size:9px;letter-spacing:2px;padding:14px 0}.page-menu summary::-webkit-details-marker{display:none}.page-menu summary span{font-size:22px;margin-left:12px;vertical-align:middle}.page-menu nav{position:absolute;right:0;top:100%;width:280px;padding:20px 24px;background:#17362f;border:1px solid #e3e7c83d;box-shadow:0 20px 50px #071e2366}.page-menu nav a{display:block;padding:12px 0;font-size:12px;border-bottom:1px solid #e3e7c81c}.page-menu nav a[aria-current=page]{color:#dce99b}.page-hero{position:relative;min-height:660px;min-height:calc(100svh - 110px);padding:9vh 8% 80px;display:grid;grid-template-columns:1.3fr 1fr;gap:24px 9%;align-content:center;align-items:end}.page-hero .detail-eyebrow{grid-column:1/-1;margin:0!important}.content-page h1{position:static;left:auto;top:auto;font-size:clamp(52px,6.8vw,112px);line-height:1.03;letter-spacing:-.065em;margin:0;max-width:900px;grid-column:1/-1;text-shadow:none}.content-page h1 em{padding-left:0;color:#e4e8bd}.content-page .page-lead{font-size:16px;line-height:1.9;max-width:660px;color:#e6ead7d9;margin:18px 0 0}.page-read{display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid #e3e7c86b;font-size:12px;padding:16px 0;max-width:260px;justify-self:end;min-width:200px}.page-read span{font-size:25px}.page-layout{display:grid;grid-template-columns:220px minmax(0,760px);gap:7%;padding:70px 8%;border-top:1px solid #eef0d02c;justify-content:space-between;scroll-margin-top:35px}.page-directory{position:sticky;top:30px;align-self:start}.page-directory>p{font-size:8px;letter-spacing:1.8px;opacity:.5;margin:0 0 22px}.page-directory nav{display:flex;flex-direction:column;gap:0}.page-directory nav a{font-size:12px;color:#dfe6d3a6;padding:12px 0;border-bottom:1px solid #dde4c819}.page-directory nav a[aria-current=page]{color:#f8f4ce}.page-directory nav a[aria-current=page]:before{content:'↗';margin-right:9px}.page-article{min-width:0}.page-article .detail-section:first-child{border-top:0;padding-top:0}.page-article .detail-link:first-child{border-top:0}.page-article .detail-photo img{max-height:520px}.page-article .detail-section{padding:35px 0}.page-article .detail-section h3{font-size:29px}.page-article .detail-section p,.page-article li{font-size:15px!important;line-height:1.85!important}.page-article .detail-footer{margin-top:60px}.page-button{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:22px 25px;background:#e2e6c6;color:#1a352b;font-size:14px;margin-top:20px;width:100%;border:0}.page-button span,.page-button b{font-size:22px;font-weight:400}.page-bottom{margin:0 8%;padding:30px 0 40px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #e7e8ce30;font-size:9px;letter-spacing:1px}.page-article .contact-details a{font-size:clamp(20px,2.4vw,35px)}.enquiry-section{border-top:1px solid #e3e7c84d;margin-top:60px;padding-top:45px;scroll-margin-top:40px}.content-page .enquiry-section h2{position:static;font-size:clamp(34px,4vw,56px);line-height:1.1;margin-bottom:35px}.enquiry-section label{display:block;font-size:12px;margin:14px 0}.enquiry-section input,.enquiry-section select,.enquiry-section textarea{display:block;margin-top:9px;width:100%;font:inherit;color:#f3f1dc;border:1px solid #e1e6c64a;background:#18382daa;border-radius:0;padding:14px}.enquiry-section textarea{resize:vertical}.enquiry-section option{background:#17382c}.enquiry-section .detail-note{margin-top:18px;line-height:1.8}.enquiry-section pre{font:13px/1.9 Manrope,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;padding:20px 0;border-block:1px solid #e1e6c633}.enquiry-section .edit-brief{color:inherit}.enquiry-section [hidden]{display:none!important}.skip-link{position:fixed;left:15px;top:-100px;z-index:30;background:#e3e7c8;color:#123329;padding:12px}.skip-link:focus{top:15px}.scene a{pointer-events:auto}
@media(max-width:700px){.content-page header.page-header{height:90px;padding:0 6%;gap:20px}.page-header .contact-btn{display:none}.page-home{font-size:9px}.page-menu nav{width:min(280px,88vw)}.page-menu summary{font-size:8px;letter-spacing:1px}.page-menu summary span{margin-left:5px}.page-hero{min-height:calc(90svh - 90px);padding:60px 7% 50px;grid-template-columns:1fr;gap:25px}.content-page h1{font-size:clamp(44px,11.6vw,74px);grid-column:auto}.page-hero .detail-eyebrow{font-size:8px}.content-page .page-lead{font-size:14px;line-height:1.8;margin:0}.page-read{justify-self:start;width:100%;max-width:none;font-size:11px}.page-layout{display:block;padding:35px 7% 20px}.page-directory{position:static;margin-bottom:40px}.page-directory>p{margin-bottom:12px}.page-directory nav{flex-direction:row;overflow-x:auto;gap:20px;padding-bottom:10px}.page-directory nav a{flex:0 0 auto;font-size:11px;padding:10px 0}.page-article .detail-section{grid-template-columns:24px 1fr;gap:10px;padding:27px 0}.page-article .detail-section h3{font-size:24px}.page-article .detail-section p,.page-article li{font-size:14px!important}.page-article .detail-link{font-size:23px}.page-bottom{margin:0 7%;flex-direction:column;font-size:8px;gap:18px}.enquiry-section .form-grid{grid-template-columns:1fr;gap:0}.enquiry-section input,.enquiry-section select,.enquiry-section textarea{font-size:16px}.page-tint{background:linear-gradient(90deg,#102e28e6,#173d31c9)}.page-article .detail-photo img{max-height:400px}}
.page-photo{margin:0 0 34px;border-radius:2px;overflow:hidden;position:relative}
.page-photo img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;filter:saturate(.85) contrast(1.02)}
.page-photo figcaption{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:#e6e9d699;padding:12px 0 0}
.hero-actions{display:flex;flex-wrap:wrap;gap:28px;align-items:center;margin-top:34px}
.hero-actions .page-read{position:static;margin:0}
.cta-band{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:22px;border:1px solid #dee4c840;background:#0f231c99;padding:28px 30px;margin:40px 0}
.cta-band small{font-size:9px;letter-spacing:1.6px;color:#dce8b0}
.cta-band p{font-size:20px;line-height:1.35;margin:8px 0 0;color:#f3f1dc;max-width:420px}
.cta-actions{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.cta-phone{font-size:13px;color:#e6e9d6cc;text-decoration:underline;text-underline-offset:4px}
.hub-label{font-size:9px;letter-spacing:1.6px;color:#dce8b0;margin:30px 0 6px}
.detail-section h3 a{color:inherit;text-decoration:none;border-bottom:1px solid #dce8b066}

/* Site menu panel (menu.js) */
.gm-trigger{background:none;border:0;color:inherit;font:inherit;font-size:9px;letter-spacing:2px;display:flex;align-items:center;gap:15px;cursor:pointer;padding:14px 0;position:relative;z-index:31}
.gm-trigger i{width:22px;height:7px;border-top:1px solid;border-bottom:1px solid;transition:transform .45s cubic-bezier(.7,0,.2,1),height .45s}
.gm-open .gm-trigger i{height:0;border-bottom:0;transform:rotate(45deg)}
.gm-open header,.gm-open .gm-header{z-index:31}
.gm-panel{position:fixed;top:12px;left:12px;right:12px;z-index:30;color:#f3f1dc;background:linear-gradient(140deg,#123128f2,#0d241ef7);border:1px solid #e9edc92e;box-shadow:0 40px 120px #04120d80;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);clip-path:inset(0 0 100% 0);opacity:0;transition:clip-path .6s cubic-bezier(.7,0,.2,1),opacity .4s;font-family:Manrope,Arial,sans-serif}
.gm-open .gm-panel{clip-path:inset(0 0 0 0);opacity:1}
.gm-inner{display:grid;grid-template-columns:minmax(220px,26%) 1fr;grid-template-rows:1fr auto;gap:0 5%;padding:120px 4% 28px}
.gm-preview{grid-row:1;margin:0;position:relative;overflow:hidden;aspect-ratio:4/5;max-height:52vh;align-self:start}
.gm-preview img{width:100%;height:100%;object-fit:cover;filter:saturate(.75);display:block}
.gm-preview img.in{animation:gmimg .7s cubic-bezier(.2,.7,.2,1)}
@keyframes gmimg{from{opacity:0;transform:scale(1.06)}}
.gm-preview figcaption{position:absolute;left:16px;bottom:14px;font-size:8px;letter-spacing:2px;text-transform:uppercase;background:#0d241e99;padding:7px 9px}
.gm-cols{display:grid;grid-template-columns:1.3fr 1fr .8fr;gap:4%}
.gm-label{font-size:8px;letter-spacing:2.4px;text-transform:uppercase;opacity:.55;margin:0 0 18px;padding-bottom:14px;border-bottom:1px solid #e9edc926}
.gm-col ul{list-style:none;margin:0;padding:0}
.gm-col a{display:flex;gap:14px;align-items:baseline;padding:9px 0;color:inherit;text-decoration:none;opacity:0;transform:translateY(14px);transition:opacity .5s,transform .6s cubic-bezier(.2,.7,.2,1),color .25s}
.gm-open .gm-col a{opacity:1;transform:none}
.gm-col li:nth-child(1) a{transition-delay:.18s}.gm-col li:nth-child(2) a{transition-delay:.23s}.gm-col li:nth-child(3) a{transition-delay:.28s}.gm-col li:nth-child(4) a{transition-delay:.33s}.gm-col li:nth-child(5) a{transition-delay:.38s}
.gm-num{font-size:9px;opacity:.45;min-width:18px}
.gm-text{font-size:clamp(20px,2vw,30px);letter-spacing:-.04em;line-height:1.1;transition:transform .35s}
.gm-col:not(:first-child) .gm-text{font-size:clamp(16px,1.35vw,20px);letter-spacing:-.02em}
.gm-text small{display:block;font-size:11px;letter-spacing:0;opacity:.55;margin-top:5px}
.gm-col a:hover .gm-text,.gm-col a:focus-visible .gm-text{transform:translateX(8px);font-family:Georgia,serif;font-style:italic}
.gm-col a:hover,.gm-col a[aria-current=page]{color:#dce99b}
.gm-foot{grid-column:1/-1;display:flex;gap:36px;align-items:center;border-top:1px solid #e9edc926;margin-top:36px;padding-top:20px;font-size:11px}
.gm-foot a{color:inherit;opacity:.7;text-decoration:none}.gm-foot a:hover{opacity:1}
.gm-foot .gm-cta{margin-left:auto;opacity:1;border-bottom:1px solid #dce99b80;padding-bottom:6px;color:#dce99b}
@media(max-width:900px){.gm-inner{grid-template-columns:1fr;padding:100px 7% 22px}.gm-preview{display:none}.gm-cols{grid-template-columns:1fr 1fr;gap:28px 8%}.gm-col:first-child{grid-column:1/-1}}
@media(max-width:700px){.gm-panel{top:0;left:0;right:0;max-height:100svh;overflow-y:auto}.gm-inner{padding:92px 7% 22px}.gm-col a{padding:7px 0}.gm-text{font-size:22px}.gm-foot{flex-wrap:wrap;gap:12px 22px;margin-top:22px}.gm-foot .gm-cta{margin-left:0;width:100%}}
@media(prefers-reduced-motion:reduce){.gm-panel,.gm-col a,.gm-preview img.in{transition:none;animation:none}}
body.gm-open header,body.gm-open header.page-header{z-index:31!important}
.gm-trigger i{position:relative}.gm-trigger i:after{content:"";position:absolute;left:0;right:0;top:-1px;border-top:1px solid;opacity:0;transform:rotate(90deg);transition:opacity .3s}.gm-open .gm-trigger i:after{opacity:1}
/* Menu fit + polish */
.gm-panel{max-height:calc(100svh - 24px);overflow-y:auto;overscroll-behavior:contain;outline:none}
.gm-col a:focus{outline:none}.gm-col a:focus-visible .gm-text{color:#dce99b}
.gm-col a:focus-visible .gm-num{opacity:1;color:#dce99b}
.gm-col a:hover .gm-text,.gm-col a:focus-visible .gm-text{font-family:inherit;font-style:normal}
.gm-col a:hover .gm-num{opacity:1;color:#dce99b}
.gm-text small{transition:opacity .3s}.gm-col a:hover small{opacity:.8}
@media(max-width:1100px) and (min-width:701px){
 .gm-inner{grid-template-columns:1fr;padding:104px 5% 22px}
 .gm-preview{display:none}
 .gm-cols{grid-template-columns:1.25fr 1fr .8fr;gap:5%}
 .gm-col:first-child{grid-column:auto}
 .gm-text{font-size:22px}
 .gm-col:not(:first-child) .gm-text{font-size:15px}
 .gm-col a{padding:7px 0}
 .gm-foot{margin-top:26px}
}
@media(max-height:760px) and (min-width:701px){.gm-inner{padding-top:96px}.gm-preview{max-height:44vh}.gm-col a{padding:6px 0}.gm-foot{margin-top:20px;padding-top:14px}}
@media(max-width:700px){.gm-col:not(:first-child) .gm-text{font-size:16px}.gm-cols{gap:24px 6%}}
/* clean X for menu trigger (home + inner) */
#menu i,.gm-trigger i{position:relative;display:block;width:22px;height:8px;border:0!important;transform:none!important}
#menu i:before,#menu i:after,.gm-trigger i:before,.gm-trigger i:after{content:"";position:absolute;left:0;right:0;height:1px;background:currentColor;border:0;opacity:1;transition:transform .45s cubic-bezier(.7,0,.2,1),top .45s cubic-bezier(.7,0,.2,1)}
#menu i:before,.gm-trigger i:before{top:0}
#menu i:after,.gm-trigger i:after{top:7px;transform:none}
.gm-open #menu i:before,.gm-open .gm-trigger i:before{top:3.5px;transform:rotate(45deg)}
.gm-open #menu i:after,.gm-open .gm-trigger i:after{top:3.5px;transform:rotate(-45deg)}
.gm-num{display:none!important}
.page-directory{display:none!important}.page-layout{display:block!important}.page-article{max-width:820px;margin:0 auto}
.gm-two .gm-cols{grid-template-columns:1.3fr 1fr}.gm-two .gm-col:first-child{grid-column:auto}@media(max-width:700px){.gm-two .gm-cols{grid-template-columns:1fr}}
.detail-section>div:only-child{grid-column:1/-1;min-width:0}
