:root{--navy:#102e3a;--navy-deep:#0a222c;--teal:#5f8f8d;--teal-pale:#c9d9d5;--gold:#c49b5e;--cream:#f6f2eb;--paper:#fbf9f4;--ink:#16323b;--muted:#63757a;--line:#102e3a26;--serif:Georgia, "Times New Roman", serif;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{background:var(--paper);min-width:320px;color:var(--ink);margin:0}body::selection{background:var(--teal-pale);color:var(--navy)}a{color:inherit}button,input,select,textarea{font:inherit}.site-header{z-index:100;padding:0 4.5vw;transition:background .3s,box-shadow .3s;position:fixed;inset:0 0 auto}.site-header.is-scrolled{box-shadow:0 1px 0 var(--line);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fbf9f4f0}.nav-shell{justify-content:space-between;align-items:center;width:min(1400px,100%);height:80px;margin:auto;display:flex}.monogram{font-family:var(--serif);letter-spacing:-.05em;font-size:1.6rem;font-weight:700;text-decoration:none}.monogram span{color:var(--gold)}.main-nav{align-items:center;gap:clamp(1rem,2vw,2.2rem);display:flex}.main-nav a{letter-spacing:.095em;text-transform:uppercase;font-size:.73rem;font-weight:700;text-decoration:none;position:relative}.main-nav>a:not(.nav-enquire):after{content:"";background:var(--teal);height:1px;transition:right .25s;position:absolute;bottom:-6px;left:0;right:100%}.main-nav>a:hover:after{right:0}.nav-enquire{border:1px solid var(--navy);align-items:center;gap:.45rem;padding:.7rem 1rem;display:inline-flex}.menu-button{color:var(--navy);background:0 0;border:0;display:none}.hero{grid-template-columns:minmax(0,1.06fr) minmax(400px,.8fr);align-items:center;gap:clamp(3rem,7vw,8rem);width:min(1500px,100%);min-height:100vh;margin:0 auto;padding:132px 6vw 72px;display:grid;overflow:hidden}.section-label{color:var(--teal);letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:.8rem;margin:0 0 2rem;font-size:.72rem;font-weight:800;display:flex}.section-label span{background:currentColor;width:32px;height:1px}.section-label.light{color:#a6cbc6}h1,h2,h3,p{margin-top:0}.hero h1{font-family:var(--serif);letter-spacing:-.065em;margin-bottom:1.8rem;font-size:clamp(4.6rem,8.7vw,9.3rem);font-weight:400;line-height:.75}.hero h1 em,h2 em{color:var(--teal);font-weight:400}.hero-headline{max-width:700px;font-family:var(--serif);margin-bottom:1.2rem;font-size:clamp(1.48rem,2.4vw,2.25rem);line-height:1.23}.hero-copy{max-width:630px;color:var(--muted);font-size:1.04rem;line-height:1.8}.hero-registration{color:var(--teal);letter-spacing:.13em;text-transform:uppercase;align-items:baseline;gap:.7rem;margin:1.4rem 0 0;font-size:.7rem;font-weight:800;display:flex}.hero-registration strong{color:var(--navy);font-family:var(--serif);letter-spacing:0;text-transform:none;font-size:1.05rem;font-weight:400}.hero-actions{flex-wrap:wrap;gap:.85rem;margin-top:2.2rem;display:flex}.button{letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.7rem;min-height:51px;padding:0 1.35rem;font-size:.76rem;font-weight:800;text-decoration:none;transition:transform .22s,background .22s,color .22s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--navy);color:#fff}.button-primary:hover{background:var(--teal)}.button-secondary{border-color:var(--line);background:0 0}.button-secondary:hover{border-color:var(--navy)}.hero-portrait{justify-content:center;align-items:center;min-height:min(650px,66vw);display:flex;position:relative}.portrait-frame{z-index:2;aspect-ratio:.74;border:1px solid var(--teal-pale);border-radius:220px 220px 20px 20px;width:min(420px,80%);padding:13px;position:relative}.portrait-shape{border-radius:inherit;background:#d9d4d2;height:100%;overflow:hidden;box-shadow:0 30px 70px #102e3a21}.portrait-shape img{object-fit:cover;object-position:50% 42%;width:100%;height:100%;display:block}.portrait-note{z-index:3;background:var(--paper);border-left:3px solid var(--gold);min-width:180px;padding:1.1rem 1.3rem;position:absolute;bottom:15%;left:0;box-shadow:0 12px 40px #102e3a1a}.portrait-note span{color:var(--teal);letter-spacing:.15em;text-transform:uppercase;margin-bottom:.35rem;font-size:.65rem;font-weight:800;display:block}.portrait-note strong{font-family:var(--serif);font-size:1.05rem;line-height:1.35}.orbit{border:1px solid #5f8f8d40;border-radius:50%;position:absolute}.orbit-one{aspect-ratio:1;width:92%}.orbit-two{aspect-ratio:1;width:112%}.section{padding:clamp(6rem,10vw,10rem) max(6vw,50vw - 700px)}.about{background:var(--cream);grid-template-columns:.45fr 1.55fr;gap:clamp(3rem,7vw,9rem);display:grid}.display-number{font-family:var(--serif);color:#5f8f8d4d;margin:4rem 0 1rem;font-size:5rem}.aside-note{color:var(--muted);font-size:.9rem;line-height:1.65}.about h2,.section-heading h2,.practice h2,.qualifications h2,.contact h2{font-family:var(--serif);letter-spacing:-.055em;margin-bottom:3.5rem;font-size:clamp(3.1rem,5.7vw,6rem);font-weight:400;line-height:.96}.about-copy-grid{grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);display:grid}.lead-copy{font-family:var(--serif);font-size:clamp(1.55rem,2.5vw,2.2rem);line-height:1.35}.about-copy-grid>div p{color:var(--muted);line-height:1.8}.interest-row{border-top:1px solid var(--line);flex-wrap:wrap;gap:.7rem;margin-top:3rem;padding-top:2rem;display:flex}.interest-row span{border:1px solid var(--line);border-radius:100px;align-items:center;gap:.4rem;padding:.7rem .9rem;font-size:.75rem;display:flex}.section-heading{justify-content:space-between;align-items:flex-end;gap:3rem;margin-bottom:5rem;display:flex}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:470px;color:var(--muted);line-height:1.75}.feature{border-top:1px solid var(--line);grid-template-columns:55px 70px minmax(280px,1.2fr) minmax(240px,.8fr);align-items:start;gap:clamp(1rem,3vw,3.5rem);min-height:390px;padding:4rem 0;display:grid}.feature:last-child{border-bottom:1px solid var(--line)}.feature-number{font-family:var(--serif);color:var(--teal);font-size:1.15rem}.feature-icon{border:1px solid var(--teal-pale);width:56px;height:56px;color:var(--teal);border-radius:50%;place-items:center;display:grid}.feature-icon svg{stroke-width:1.3px}.eyebrow{color:var(--teal);letter-spacing:.15em;text-transform:uppercase;font-size:.7rem;font-weight:800}.feature-main h3{font-family:var(--serif);margin-bottom:1.4rem;font-size:clamp(2rem,3vw,3rem);font-weight:400;line-height:1.08}.feature-main>p:last-child{color:var(--muted);line-height:1.8}.feature-list{margin:2rem 0 0;padding:0;list-style:none}.feature-list li{border-bottom:1px solid var(--line);color:var(--muted);padding:.72rem 0 .72rem 1.3rem;font-size:.9rem;line-height:1.45;position:relative}.feature-list li:before{content:"";background:var(--gold);border-radius:50%;width:5px;height:5px;position:absolute;top:1.05rem;left:0}.research-notes{flex-direction:column;gap:.8rem;margin-top:1.5rem;display:flex}.research-notes span{background:var(--cream);border-left:2px solid var(--teal);font-family:var(--serif);padding:1rem}.highlights{background:var(--navy);color:#fff;padding:clamp(6rem,9vw,9rem) max(6vw,50vw - 700px)}.highlights-intro{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:4rem;display:flex}.highlights-intro .section-label{margin-bottom:0}.highlights-intro>p{color:#fff9;max-width:500px;line-height:1.7}.stats-grid{border-top:1px solid #ffffff29;grid-template-columns:repeat(4,1fr);display:grid}.stat{animation-delay:var(--delay);border-right:1px solid #ffffff29;padding:3.4rem 2rem 1rem}.stat:first-child{padding-left:0}.stat:last-child{border-right:0}.stat p{min-height:100px;font-family:var(--serif);line-height:.8}.stat strong{color:#d6b881;letter-spacing:-.06em;font-size:clamp(2.7rem,4vw,4.5rem);font-weight:400;display:block}.stat span{color:#a6cbc6;font-size:clamp(1.5rem,2.3vw,2.4rem);display:block}.stat small{color:#ffffff9e;max-width:190px;line-height:1.5;display:block}.practice{background:var(--cream)}.practice-card{background:var(--paper);grid-template-columns:.85fr 1.15fr;display:grid;box-shadow:0 30px 80px #102e3a14}.practice-title{background:linear-gradient(145deg, #173f4c, var(--navy-deep));color:#fff;padding:clamp(2.5rem,6vw,6rem)}.practice-title .section-label{color:#a6cbc6}.practice-title h2{margin:5rem 0 0}.practice-body{align-self:center;padding:clamp(2.5rem,6vw,6rem)}.current-badge{color:var(--teal);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.68rem;font-weight:800;display:inline-flex}.current-badge span{background:#74a97a;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 5px #74a97a24}.practice-body h3{font-family:var(--serif);margin:1.5rem 0;font-size:clamp(2rem,3vw,3rem);font-weight:400}.practice-body h3 strong{color:var(--teal);font-weight:400}.practice-body>p{color:var(--muted);line-height:1.8}.practice-body .systems{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.5rem;font-size:.78rem}.qualifications{grid-template-columns:.7fr 1.3fr;gap:clamp(3rem,7vw,8rem);display:grid}.qualifications-heading{align-self:start;position:sticky;top:120px}.qualifications-heading svg{color:var(--teal)}.qualification{border-top:1px solid var(--line);grid-template-columns:70px 1fr;gap:1.5rem;padding:2.2rem 0;display:grid}.qualification:last-child{border-bottom:1px solid var(--line)}.qualification-year{color:var(--teal);letter-spacing:.1em;font-size:.75rem;font-weight:800}.qualification h3{font-family:var(--serif);margin-bottom:.6rem;font-size:clamp(1.35rem,2vw,1.85rem);font-weight:400}.qualification p{color:var(--muted);margin-bottom:0;font-size:.88rem}.philosophy{background:var(--teal);color:#fff;text-align:center;padding:clamp(7rem,11vw,11rem) max(7vw,50vw - 625px)}.quote-mark{border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:58px;height:58px;margin:0 auto 2.5rem;display:grid}.quote-mark svg{stroke-width:1px}.philosophy blockquote{max-width:1100px;font-family:var(--serif);letter-spacing:-.035em;margin:0 auto;font-size:clamp(2rem,4vw,4.4rem);line-height:1.19}.quote-credit{color:#ffffffb3;letter-spacing:.14em;text-transform:uppercase;justify-content:center;align-items:center;gap:.8rem;margin:3rem 0 0;font-size:.68rem;font-weight:800;display:flex}.quote-credit span{background:currentColor;width:28px;height:1px}.contact{background:var(--navy-deep);color:#fff;grid-template-columns:.85fr 1.15fr;gap:clamp(4rem,8vw,9rem);padding:clamp(7rem,10vw,10rem) max(6vw,50vw - 700px);display:grid}.contact h2{margin-bottom:2rem}.contact-intro>p{color:#ffffff9e;max-width:520px;line-height:1.75}.contact-details{flex-direction:column;gap:1rem;margin:3rem 0;display:flex}.contact-details a,.contact-details p{color:#fff;align-items:center;gap:.9rem;margin:0;text-decoration:none;display:flex}.contact-details svg{color:#a6cbc6;stroke-width:1.5px}.future-link{color:#fff9;align-items:center;gap:1rem;font-size:.82rem;display:flex}.future-link span{color:#a6cbc6;letter-spacing:.1em;text-transform:uppercase;border:1px solid #ffffff2e;padding:.35rem .55rem;font-size:.6rem}.contact-form{background:var(--paper);color:var(--ink);padding:clamp(2rem,4vw,4rem)}.contact-form label{margin-bottom:1.45rem;display:block}.contact-form label>span{letter-spacing:.12em;text-transform:uppercase;margin-bottom:.6rem;font-size:.66rem;font-weight:800;display:block}.field-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact-form input,.contact-form select,.contact-form textarea{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);background:0 0;border-radius:0;outline:none;padding:.85rem 0;transition:border-color .2s}.contact-form textarea{resize:vertical;min-height:125px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--teal)}.contact-form ::placeholder{color:#9aa6a7}.form-submit{background:var(--teal);color:#fff;width:100%;margin-top:.5rem}.form-submit:hover{background:var(--navy)}.form-note{color:var(--teal);text-align:center;margin:1rem 0 0;font-size:.78rem}.privacy-note{color:var(--muted);text-align:center;margin:1rem 0 0;font-size:.68rem}footer{color:#fff;text-align:center;background:#071a22;padding:4rem max(6vw,50vw - 700px)}.footer-brand{font-family:var(--serif);font-size:2rem;text-decoration:none}footer>p{color:#a6cbc6;letter-spacing:.12em;text-transform:uppercase;margin:.6rem 0 3rem;font-size:.75rem}footer>p span{color:var(--gold);margin:0 .4rem}.footer-links{color:#ffffff75;border-top:1px solid #ffffff1a;justify-content:center;align-items:center;gap:2rem;padding-top:2rem;font-size:.7rem;display:flex}.footer-links a{text-decoration:none}.reveal{animation:.7s cubic-bezier(.2,.7,.3,1) both reveal}.delay-one{animation-delay:.13s}@keyframes reveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:1050px){.main-nav{gap:1.1rem}.hero{grid-template-columns:1.1fr .9fr;gap:3rem}.feature{grid-template-columns:40px 55px 1fr}.feature-list,.research-notes{grid-column:3}.stats-grid{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat{border-bottom:1px solid #ffffff29}.stat:nth-last-child(-n+2){border-bottom:0}}@media (max-width:820px){.site-header{padding:0 5vw}.nav-shell{height:70px}.menu-button{cursor:pointer;place-items:center;padding:.6rem;display:grid}.main-nav{background:var(--paper);opacity:0;pointer-events:none;flex-direction:column;align-items:flex-start;padding:2rem 6vw 2.5rem;transition:all .3s;position:absolute;inset:70px 0 auto;transform:translateY(-130%);box-shadow:0 20px 40px #102e3a1f}.main-nav.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.main-nav a{font-size:.85rem}.nav-enquire{justify-content:center;width:100%;margin-top:.5rem}.hero{grid-template-columns:1fr;min-height:auto;padding:115px 6vw 80px}.hero h1{font-size:clamp(4rem,17vw,7rem)}.hero-portrait{width:min(570px,100%);min-height:540px;margin:0 auto}.about,.practice-card,.qualifications,.contact{grid-template-columns:1fr}.about{gap:1rem}.about-aside .display-number,.about-aside .aside-note{display:none}.about-copy-grid{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:flex-start}.feature{grid-template-columns:36px 1fr}.feature-icon,.feature-main,.feature-list,.research-notes{grid-column:2}.highlights-intro{flex-direction:column;align-items:flex-start}.practice-title h2{margin-top:3rem}.qualifications-heading{position:static}}@media (max-width:560px){.hero{padding-left:5vw;padding-right:5vw}.hero h1{line-height:.82}.hero-headline{font-size:1.45rem}.hero-actions .button{width:100%}.hero-portrait{min-height:430px}.portrait-frame{width:78%}.portrait-note{bottom:7%;left:1%}.orbit-two{width:105%}.section{padding-left:6vw;padding-right:6vw}.about h2,.section-heading h2,.practice h2,.qualifications h2,.contact h2{font-size:3.15rem}.feature{min-height:0;padding:3rem 0}.feature-number{display:none}.feature-icon,.feature-main,.feature-list,.research-notes{grid-column:1/-1}.stats-grid{grid-template-columns:1fr}.stat,.stat:first-child{border-bottom:1px solid #ffffff29;border-right:0;padding:2.5rem 0}.stat:nth-last-child(-n+2){border-bottom:1px solid #ffffff29}.stat:last-child{border-bottom:0}.stat p{min-height:0}.practice-title,.practice-body{padding:2rem}.field-row{grid-template-columns:1fr;gap:0}.contact{padding-left:5vw;padding-right:5vw}.contact-form{padding:1.5rem}.footer-links{flex-direction:column;gap:.8rem}}
