:root{--paper:#f7f7f2;--ink:#29342e;--muted:#626c65;--green:#365d49;--line:#d8ded5;--tint:#e9ede5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #839d65;outline-offset:6px}a:hover{color:#6c815b}.wrap{width:min(1240px,calc(100% - 96px));margin:auto}header{min-height:116px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:15px;font-size:17px;line-height:1.4}.monogram{font:italic 42px Georgia,serif;letter-spacing:-4px;padding-right:5px}.brand small{display:block;font-size:12px;color:var(--muted);margin-top:4px}nav{display:flex;gap:28px;font-size:14px}.switch{display:flex;gap:10px;font-size:14px}.switch a{padding:10px 2px}.switch [aria-current]{font-weight:bold;border-bottom:1px solid var(--green)}.switch span{color:#9aa297;padding-top:10px}.hero{display:grid;grid-template-columns:1.3fr .8fr;gap:8%;padding-top:76px;padding-bottom:90px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin:0 0 28px;color:var(--green)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.06}h1{font-size:clamp(48px,5.3vw,78px);margin-bottom:30px}em{color:var(--green);font-weight:400}h2{font-size:clamp(36px,3.3vw,49px);margin-bottom:20px}h3{font-weight:500;font-size:22px;line-height:1.35;letter-spacing:-.02em;margin-bottom:14px}.intro{color:var(--muted);max-width:530px;font-size:17px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:33px}.button{background:var(--green);color:white;display:inline-flex;gap:22px;align-items:center;padding:15px 21px;border:1px solid var(--green);font-size:14px;border-radius:3px;transition:background .2s}.button:hover{background:#284837;color:white}.button.secondary{background:transparent;color:var(--green);border-color:#c1cbbf}.button.secondary:hover{background:var(--tint)}.language-panel{align-self:stretch;background:var(--tint);border-radius:180px 180px 4px 4px;padding:66px 40px 25px;min-height:460px;display:flex;flex-direction:column;justify-content:space-between;text-align:center}.panel-label{font-size:12px;letter-spacing:.18em;color:var(--green)}.language-list{font:italic 35px/1.5 Georgia,serif;padding:28px 0;color:var(--green)}.language-list span{display:block}.experience{border-top:1px solid #c9d2c4;padding-top:20px;display:flex;gap:18px;align-items:center;justify-content:center;text-align:left}.experience strong{font:64px/1 Georgia,serif;letter-spacing:-4px}.experience strong span{font-size:35px;vertical-align:top;letter-spacing:0}.experience p{font-size:13px;line-height:1.5;margin:0}.panel-bottom{font-size:11px;display:flex;justify-content:space-between;margin:24px 0 0;color:var(--muted)}.section{padding:85px 0;border-top:1px solid var(--line)}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-bottom:42px}.section-heading .eyebrow{padding-top:10px}.section-heading p:not(.eyebrow){color:var(--muted);max-width:600px}.services{display:grid;grid-template-columns:1fr 1fr;column-gap:60px}.service{display:flex;gap:28px;border-top:1px solid var(--line);padding:32px 0 26px}.number{font-size:13px;color:var(--green);padding-top:5px}.service p{color:var(--muted);margin-bottom:0}.about{background:var(--tint);padding:90px 0}.about-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:10%}.about h2{font-size:48px;line-height:1.14}.signature{font:italic 25px Georgia,serif;color:var(--green);margin-top:50px}.biography p{margin-bottom:22px}.business{padding-top:24px;border-top:1px solid #c6cfc1;font-size:14px;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.step{display:block;color:var(--green);font:34px Georgia,serif;margin-bottom:20px}.steps p{color:var(--muted)}.price{border-top:1px solid var(--line);padding-top:23px;margin:24px 0 0;color:var(--muted);font-size:14px;max-width:850px}.contact{background:#2d493b;color:#f7f7f2;padding:85px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.contact .eyebrow{color:#bbcdb7}.contact h2{font-size:54px;line-height:1.1}.contact h2 em{color:#bdcfb8}.contact p:not(.eyebrow){color:#d1dbce;max-width:400px}.contact-links a{display:block;padding:22px 0;border-bottom:1px solid #63786a}.contact-links a:hover{color:#c2d4b6}.contact-links small{font-size:12px;color:#bdcbbd;display:block;margin-bottom:6px}.contact-links span{font-size:clamp(16px,1.7vw,23px);display:flex;align-items:center;justify-content:space-between;gap:12px;overflow-wrap:anywhere}.contact-links b{font-weight:400}footer{display:flex;justify-content:space-between;gap:20px;padding:30px 0;font-size:12px;color:var(--muted)}@media(min-width:1500px){.hero{padding-top:95px;padding-bottom:105px}}@media(max-width:1000px){.wrap{width:calc(100% - 56px)}nav{gap:16px}.brand small{max-width:160px}.hero{gap:5%}.language-panel{padding-left:25px;padding-right:25px}.actions{gap:10px}.section-heading{grid-template-columns:1fr 2.5fr}.contact-grid{gap:7%}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}header{min-height:90px;flex-wrap:wrap;gap:8px;padding:18px 0}.brand{font-size:15px}.brand small{font-size:11px;max-width:none}.monogram{font-size:36px}nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;margin-top:12px;gap:8px;font-size:12px}.hero{grid-template-columns:1fr;padding-top:44px;padding-bottom:50px;gap:38px}h1{font-size:clamp(45px,10.5vw,70px)}.eyebrow{font-size:11px;margin-bottom:21px}.intro{font-size:16px}.language-panel{min-height:0;border-radius:4px;padding:24px;text-align:left}.language-list{font-size:25px;padding:20px 0;display:flex;flex-wrap:wrap;gap:8px 20px}.experience{justify-content:flex-start}.experience strong{font-size:50px}.panel-bottom{margin-top:20px}.section{padding:50px 0}.section-heading{display:block;margin-bottom:28px}.services{grid-template-columns:1fr}.service{gap:20px;padding:26px 0}.about{padding:50px 0}.about-grid{grid-template-columns:1fr;gap:30px}.about h2{font-size:39px}.signature{margin-top:25px}.steps{grid-template-columns:1fr;gap:22px}.steps article{position:relative;padding-left:57px}.step{position:absolute;left:0;top:0;font-size:27px}.steps h3{margin-bottom:8px}.steps p{margin:0}.price{margin-top:30px}.contact{padding:50px 0}.contact-grid{grid-template-columns:1fr;gap:16px}.contact h2{font-size:43px}.contact-links span{font-size:19px}footer{flex-wrap:wrap;gap:10px;padding:25px 0}footer span:nth-child(2){display:none}.button{font-size:13px;padding:14px 17px}h3{font-size:21px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero-portrait{margin:0;align-self:center}.hero-portrait img{display:block;width:100%;height:auto;border-radius:5px}.hero-portrait figcaption{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted);padding-top:13px}.about-photo{margin:30px 0 0;max-width:320px}.about-photo img{display:block;width:100%;height:auto;border-radius:4px}.about .signature{margin-top:24px}@media(max-width:760px){.hero-portrait{width:min(100%,430px);margin:0 auto}.about-photo{max-width:280px}.hero{gap:32px}}
.review-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#bac6b5 transparent;padding-bottom:16px;position:relative}.review-card{flex:0 0 100%;min-width:0;scroll-snap-align:start;background:var(--tint);padding:44px 50px;border:1px solid var(--line);border-radius:4px}.demo-label{font-size:13px;color:var(--green);border:1px solid #b8c7b0;padding:5px 10px;display:inline-block;border-radius:3px}.review-card blockquote{font:400 clamp(24px,2.7vw,36px)/1.45 Georgia,serif;margin:26px 0;max-width:950px}.review-type{color:var(--muted);font-size:14px;margin:0}.review-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:20px}.review-position{font-size:14px;color:var(--muted);margin-right:12px}.review-controls button{width:46px;height:46px;border:1px solid #afbdab;border-radius:50%;background:transparent;color:var(--green);font-size:24px;cursor:pointer}.review-controls button:hover{background:var(--tint)}.review-controls button:focus-visible,.review-track:focus-visible{outline:3px solid #839d65;outline-offset:4px}@media(max-width:760px){.review-card{padding:26px 24px}.review-card blockquote{font-size:24px}.review-track{gap:16px}}
.review-meta{display:flex;align-items:center;justify-content:space-between;gap:20px}.google-source{font-size:16px;font-weight:600}.review-stars{color:#966519;font-size:21px;letter-spacing:3px}.review-author{font-weight:600;margin:0 0 6px;font-size:16px}.review-original{margin-top:18px;font-size:14px;color:var(--muted)}.review-original summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.review-original p{margin:12px 0 0;max-width:850px}.reviews-source-link{color:var(--green);text-decoration:underline;text-underline-offset:5px;font-size:14px}
.service-more{display:inline-flex;gap:16px;margin-top:20px;font-size:14px;color:var(--green);text-decoration:underline;text-underline-offset:5px}.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}.service-page{padding-top:38px;padding-bottom:80px}.back-link{font-size:14px;color:var(--muted)}.detail-hero{padding:55px 0 48px;border-bottom:1px solid var(--line);max-width:1000px}.detail-hero h1{font-size:clamp(42px,5vw,68px);max-width:950px;overflow-wrap:break-word}.detail-intro{font-size:20px;color:var(--muted);max-width:800px;margin:0}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:9%;padding-top:50px;align-items:start}.detail-section{padding-bottom:30px;margin-bottom:28px;border-bottom:1px solid var(--line)}.detail-section h2{font-size:34px;line-height:1.2}.detail-section p{color:var(--muted);max-width:760px}.included-list{padding-left:24px;color:var(--muted)}.included-list li{padding:0 0 17px 12px}.included-list li::marker{color:var(--green)}.enquiry-panel{background:var(--tint);padding:30px;border-radius:4px}.enquiry-panel h2{font-size:34px;line-height:1.15}.enquiry-panel p{color:var(--muted)}.enquiry-panel .button{display:flex;justify-content:center;margin-top:12px}.enquiry-phone{display:block;margin-top:24px;text-align:center;font-size:15px}@media(max-width:900px){.detail-grid{grid-template-columns:minmax(0,1fr) 290px;gap:35px}.enquiry-panel{padding:24px}}@media(max-width:760px){.detail-grid{grid-template-columns:1fr;padding-top:32px;gap:0}.detail-hero{padding:35px 0}.detail-intro{font-size:18px}.detail-hero h1{font-size:43px}.detail-section h2{font-size:30px}.service-page{padding-bottom:50px}}
.education-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.qualification{border-top:1px solid var(--line);padding-top:28px}.qualification-date{font-size:14px;color:var(--green)}.qualification h3{font:32px/1.2 Georgia,serif}.qualification>p:not(.qualification-date){color:var(--muted)}.certificate-preview{display:block;margin-top:24px}.certificate-preview img{display:block;width:100%;height:auto;max-width:440px;border:1px solid var(--line)}.certificate-preview span{display:block;margin-top:14px;font-size:14px;text-decoration:underline;text-underline-offset:4px;color:var(--green)}@media(max-width:760px){.education-grid{grid-template-columns:1fr;gap:30px}}
