:root{--ink:#172534;--muted:#58636d;--paper:#fff;--soft:#f2f4f5;--line:#d9dfe3;--accent:#c3422d;--dark:#172534;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 var(--sans)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c3422d;outline-offset:5px}.skip{position:absolute;left:12px;top:-80px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;border-bottom:1px solid var(--line);background:#ffffffed;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:13px;font-size:15px;line-height:1.3;font-weight:600}.brand small{font-size:10px;letter-spacing:1.7px;display:block;margin-top:6px;font-weight:400}.brand-mark{font:italic 44px/1 var(--serif)}.brand-mark span{color:var(--accent)}nav{display:flex;align-items:center;gap:26px;font-size:14px}nav a:hover{color:var(--accent)}.nav-cta{border:1px solid var(--line);padding:10px 17px}.menu-toggle{display:none}.section{padding:94px 5.5%;max-width:1600px;margin:0 auto}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:600;line-height:1.6;margin:0 0 28px}.tiny-rule{display:inline-block;width:25px;height:2px;background:var(--accent);vertical-align:middle;margin-right:9px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-2px;line-height:1.06}h1{font-size:clamp(64px,6.6vw,108px);margin-bottom:30px}h1 em,h2 em{font-weight:400;color:var(--accent)}h2{font-size:clamp(42px,4.4vw,66px);margin:0}h3{font-size:23px;line-height:1.35;letter-spacing:-.5px;font-weight:500}p{margin-bottom:20px}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;min-height:730px;padding-top:76px;padding-bottom:76px;overflow:hidden}.hero-copy>.eyebrow{max-width:420px}.hero-lead{font-size:21px;line-height:1.5;margin-bottom:20px}.hero-description{max-width:480px;color:var(--muted)}.actions{display:flex;align-items:center;gap:24px;margin-top:32px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 23px;border:1px solid transparent;border-radius:0;font-size:14px;font-weight:600;line-height:1.5;transition:background .2s,color .2s;cursor:pointer}.primary{background:var(--accent);color:#fff}.primary:hover{background:#a83121}.outline{border-color:var(--ink);background:transparent;color:var(--ink)}.outline:hover{background:var(--ink);color:#fff}.light{background:#fff;color:var(--ink)}.light:hover{background:#e5e9ed}.outline-light{background:transparent;border-color:#7f929f;color:#fff}.text-link{font-size:14px;border:0;border-bottom:1px solid currentColor;padding:0 0 3px;background:transparent;width:fit-content;text-align:left;line-height:1.65}.text-link:hover{color:var(--accent)}.hero-meta{font-size:13px;color:var(--muted);margin:22px 0 0}.hero-visual{position:relative;margin:28px 14px 60px 0;align-self:center}.portrait-frame{width:72%;margin-left:23%;background:var(--soft);border:1px solid var(--line);padding:20px 20px 24px}.portrait-top{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;margin-bottom:20px;gap:12px}.portrait{width:100%;height:310px;object-fit:cover;object-position:center 35%;filter:contrast(.96)}.portrait-caption{padding-top:16px}.portrait-caption strong{font-size:16px;display:block;font-weight:500}.portrait-caption>span{font-size:12px;color:var(--muted)}.note-card{position:absolute;left:0;bottom:-55px;width:72%;background:var(--dark);color:white;padding:27px 30px;box-shadow:0 15px 40px #17253416}.note-label{font-size:10px;letter-spacing:1.5px;color:#ced5dc}.note-card>p{font-family:var(--serif);font-size:39px;line-height:1.3;letter-spacing:-1px;margin:18px 0}.note-card em{color:#ee9989}.underline{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}.note-footer{font-size:12px;color:#ced5dc}.hero-side{position:absolute;right:-39px;top:80px;font-size:10px;letter-spacing:2px;writing-mode:vertical-rl}.proof-strip{padding:28px 5.5%;display:grid;grid-template-columns:repeat(4,1fr);background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:24px}.proof-strip strong{font-size:20px;font-weight:500;display:block;margin-bottom:6px}.proof-strip div>span,.proof-strip div>a{font-size:12px;line-height:1.5;color:var(--muted);display:block}.proof-strip a{text-decoration:underline;text-underline-offset:4px}.stars{font-family:var(--sans);font-size:12px;letter-spacing:1px;color:var(--accent);white-space:nowrap}.section-heading{display:grid;grid-template-columns:1fr 2fr 1fr;gap:30px;align-items:start;margin-bottom:50px}.section-heading>.eyebrow{padding-top:8px;margin:0}.section-heading>p:last-child{font-size:14px;color:var(--muted);padding-top:12px}.direction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.direction-card{border:1px solid var(--line);padding:30px;display:flex;flex-direction:column}.card-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:50px;align-items:center;font-size:13px}.tag{font-size:10px;letter-spacing:.7px;border:1px solid currentColor;padding:5px 8px;line-height:1.4}.direction-card p{color:var(--muted);font-size:15px;line-height:1.65}.direction-card ul{list-style:none;padding:22px 0;margin:0 0 24px;border-top:1px solid var(--line);font-size:14px}.direction-card li{padding:4px 0}.direction-card li:before{content:'·';color:var(--accent);margin-right:10px}.direction-card .text-link{margin-top:auto}.dark{background:var(--dark);color:white;border-color:var(--dark)}.dark p{color:#c6d1da}.dark ul{border-color:#4b5965}.dark li:before{color:#ee9989}.dark .text-link:hover{color:#ee9989}.approach{border-top:1px solid var(--line)}.approach .section-heading{grid-template-columns:1fr 3fr}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.approach-intro{max-width:470px}.large-copy{font:31px/1.35 var(--serif);letter-spacing:-.5px}.approach-intro>p:not(.large-copy){color:var(--muted);font-size:15px}.principles article{display:flex;gap:28px;padding:24px 0;border-bottom:1px solid var(--line)}.principles article:first-child{padding-top:0}.principles article>span{font:italic 25px var(--serif);color:var(--accent)}.principles h3{margin-bottom:10px;font-size:21px}.principles p{color:var(--muted);font-size:15px;margin:0}.practice{background:var(--soft)}.lesson-demo{display:grid;grid-template-columns:1fr 1.25fr;border:1px solid var(--line);background:white}.demo-side{padding:35px;border-right:1px solid var(--line)}.demo-side h3{margin-top:28px;margin-bottom:23px;font:29px var(--serif)}.example-options{display:grid;gap:9px}.example-option{text-align:left;background:white;border:1px solid var(--line);padding:15px;display:flex;align-items:center;gap:20px;font-size:15px;color:var(--ink)}.example-option span{font-size:12px;color:var(--muted)}.example-option.active{background:var(--dark);color:white;border-color:var(--dark)}.example-option.active span{color:#d0d9df}.demo-result{padding:43px 45px;display:flex;flex-direction:column;justify-content:center}.demo-result>.eyebrow{font-size:10px;color:var(--muted);margin-bottom:22px}.example-sentence{font:clamp(25px,3vw,39px)/1.35 var(--serif);letter-spacing:-1px;margin-bottom:13px}.example-sentence mark{background:none;color:var(--accent);text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px}.example-translation{font-size:15px;color:var(--muted)}.example-rule{border-top:1px solid var(--line);padding-top:20px;margin-top:12px}.example-rule>span{font-size:10px;letter-spacing:1.5px;font-weight:600}.example-rule p{margin-top:8px;font-size:15px;margin-bottom:14px}.demo-note{font-size:12px;color:var(--muted);margin:0}.materials{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px;padding-top:45px;align-items:center}.materials-text .eyebrow{font-size:10px;margin-bottom:15px}.materials-text h3{font:28px/1.2 var(--serif)}.materials-text p:last-child{font-size:14px;color:var(--muted);margin:0}.material-preview{text-align:left;background:white;padding:14px;border:1px solid var(--line);color:var(--ink)}.material-preview img{width:100%;height:150px;object-fit:contain;background:#fafafa}.material-preview>span{display:block;padding-top:15px;font-size:14px}.material-preview small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.teacher .section-heading{grid-template-columns:1fr 3fr}.teacher-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.teacher-copy p:not(.large-copy){color:var(--muted);font-size:15px;max-width:480px}.credentials{display:grid;grid-template-columns:1fr 1fr;gap:24px}.credentials article{border-top:1px solid var(--line);padding-top:18px}.credential-label{font-size:10px;letter-spacing:1px;display:block;margin-bottom:14px}.credentials strong{font-size:18px;font-weight:500;line-height:1.4;display:block;margin-bottom:12px}.credentials p{font-size:13px;color:var(--muted);line-height:1.6;margin-bottom:10px}.credentials .text-link{font-size:12px}.process{background:var(--dark);color:white}.process h2 em{color:#ee9989}.process .section-heading{grid-template-columns:1fr 3fr}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.step-number{font:italic 42px var(--serif);color:#ee9989}.steps h3{border-top:1px solid #55616c;padding-top:23px;margin-top:24px;font-size:21px}.steps p{font-size:15px;color:#c6d1da;line-height:1.6}.process-bottom{margin-top:25px;border-top:1px solid #55616c;padding-top:25px;display:grid;grid-template-columns:1fr 3fr;gap:32px}.process-bottom strong{font-size:14px;font-weight:500}.process-bottom p{font-size:14px;color:#c6d1da;max-width:680px;margin:0}.rating{font:40px var(--serif);margin-bottom:10px}.rating .stars{vertical-align:middle}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review-card{padding:28px;border:1px solid var(--line);display:flex;flex-direction:column}.review-topic{font-size:10px;letter-spacing:1.3px;color:var(--muted)}blockquote{font:22px/1.55 var(--serif);margin:12px 0 30px}.review-author{margin-top:auto;display:flex;align-items:center;gap:12px}.avatar{width:38px;height:38px;border-radius:50%;background:var(--soft);display:flex;align-items:center;justify-content:center;font:20px var(--serif);flex-shrink:0}.review-author strong{font-size:13px;font-weight:500;display:block}.review-author div>span{font-size:10px;line-height:1.5;color:var(--muted);display:block}.source-note{font-size:12px;color:var(--muted);margin:22px 0 0;max-width:750px}.formats{border-top:1px solid var(--line)}.format-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:24px}.trial-card{padding:40px;background:var(--soft)}.trial-card h3{font:36px/1.2 var(--serif)}.trial-card>p:not(.eyebrow){color:var(--muted);font-size:15px}.trial-card ul{padding-left:20px;font-size:15px;margin:25px 0}.trial-card li{padding-bottom:8px}.format-note{font-size:12px!important;line-height:1.65}.trial-card .button{margin-top:16px}.regular-card{background:var(--dark);color:white;padding:40px}.regular-top{display:flex;justify-content:space-between;gap:20px}.regular-top .eyebrow{font-size:10px;margin-bottom:28px}.regular-top .tag{height:fit-content}.regular-card h3{font:32px var(--serif);margin-bottom:18px}.price{font:59px/1.1 var(--serif);margin-bottom:22px;letter-spacing:-1px}.price span{font:14px var(--sans);letter-spacing:0}.regular-card>p:not(.price){font-size:15px;color:#c6d1da}.included{display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:13px;border-top:1px solid #52616e;border-bottom:1px solid #52616e;padding:24px 0;margin:24px 0}.included span:before{content:'·';color:#ee9989;margin-right:8px}.package-choice{display:flex;align-items:center;gap:20px;justify-content:space-between}.package-choice label{font-size:13px}.package-choice select{background:#253747;border:1px solid #7b8c98;color:white;padding:10px;font-size:13px;min-width:200px}.regular-card>.package-total{font-size:13px!important;margin:14px 0 20px}.regular-card>.format-note{margin:22px 0 0}.faq{background:var(--soft);display:grid;grid-template-columns:1fr 1.5fr;gap:9%}.faq .section-heading{display:block}.faq .eyebrow{margin-bottom:25px}.faq-list details{border-bottom:1px solid #cbd3d9;padding:0}.faq-list details:first-child{border-top:1px solid #cbd3d9}.faq-list summary{list-style:none;cursor:pointer;padding:22px 35px 22px 0;position:relative;font-size:17px;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;top:17px;font:29px var(--serif);color:var(--accent)}.faq-list details[open] summary:after{content:'−'}.faq-list details>p{color:var(--muted);font-size:15px;padding-right:25px;margin-bottom:24px}.contact{background:#172534;color:white;display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact h2{font-size:clamp(45px,5.1vw,76px);margin-bottom:30px}.contact h2 em{color:#ee9989}.contact>div>p:not(.eyebrow){font-size:16px;color:#c6d1da}.contact-direct{font-size:14px;border-bottom:1px solid #8796a1;padding-bottom:4px}.contact-form{padding:32px;background:#223444;border:1px solid #435564}.form-title{font:27px var(--serif);margin-bottom:22px}.contact-form label{display:block;font-size:12px;margin:15px 0 8px;color:#d3dbe1}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:1px solid #70818e;border-radius:0;background:#172534;color:white;padding:12px 13px;font-size:14px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#acbac5}.contact-form textarea{resize:vertical}.contact-form>.button{width:100%;margin-top:22px}.form-disclosure{font-size:11px;line-height:1.6;color:#bdc9d2;margin:15px 0 0}.message-output{border-top:1px solid #647784;margin-top:24px;padding-top:10px}.output-actions{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}.output-actions .button{font-size:12px;padding:10px 15px;min-height:44px}#copy-status{font-size:12px;margin:10px 0 0}footer{padding:35px 5.5%;display:flex;align-items:center;gap:40px;justify-content:space-between}footer>p{font-size:12px;color:var(--muted);margin:0;max-width:250px}footer>div{display:flex;gap:23px;font-size:12px}dialog{max-width:min(90vw,900px);border:1px solid var(--line);padding:28px;color:var(--ink);background:white}dialog::backdrop{background:#0c1722c9}dialog h2{font:23px var(--serif);letter-spacing:0;margin:20px 0}dialog img{margin:auto;min-width:min(65vw,420px);max-height:65vh;object-fit:contain}dialog p{font-size:12px;color:var(--muted);margin:20px 0 0}.dialog-close{border:1px solid var(--line);background:white;padding:8px 15px;float:right;color:var(--ink)}[hidden]{display:none!important}
@media(min-width:1600px){.proof-strip{padding-left:calc((100vw - 1424px)/2);padding-right:calc((100vw - 1424px)/2)}}
@media(max-width:1100px){nav{gap:16px;font-size:12px}.nav-cta{padding:8px 10px}.brand{font-size:13px}.hero{gap:4%;min-height:650px}.hero .eyebrow{font-size:10px}.portrait-frame{padding:15px;width:80%;margin-left:15%}.note-card{width:80%;padding:23px}.note-card>p{font-size:31px}.portrait{height:285px}.hero-lead{font-size:18px}.actions{gap:18px}.section-heading{grid-template-columns:1fr 2.5fr}.section-heading>p:last-child,.section-heading>div:last-child{grid-column:2}.section{padding-top:75px;padding-bottom:75px}.direction-card{padding:23px}.direction-card h3{font-size:21px}.card-top{gap:10px;flex-wrap:wrap;margin-bottom:32px}.tag{font-size:9px}.demo-result{padding:35px}.materials{gap:20px}.regular-card,.trial-card{padding:30px}footer{gap:22px}}
@media(max-width:800px){html{scroll-padding-top:75px}.header{height:75px;padding:0 6%}.menu-toggle{display:block;border:1px solid var(--line);padding:7px 13px;background:white;font-size:13px;color:var(--ink)}nav{display:none;position:absolute;top:74px;left:0;right:0;background:white;padding:22px 6%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;font-size:15px}nav.open{display:flex}nav a{padding:13px 0}.nav-cta{text-align:center;margin-top:12px}.hero{grid-template-columns:1fr 1fr;padding:55px 6% 70px;gap:25px;min-height:auto}h1{font-size:65px}.hero-description{font-size:14px}.hero-lead{font-size:17px}.hero-visual{margin-right:12px}.portrait{height:240px}.portrait-top{font-size:7px}.portrait-caption strong{font-size:12px}.portrait-caption>span{font-size:10px}.note-card>p{font-size:26px}.note-card{padding:19px;width:94%}.note-label,.note-footer{font-size:9px}.hero-side{right:-28px;font-size:8px}.hero .actions{flex-direction:column;align-items:flex-start}.hero .button{font-size:13px;padding:12px 16px}.hero .text-link{font-size:12px}.hero-meta{font-size:11px}.proof-strip{grid-template-columns:1fr 1fr;padding:24px 6%;gap:25px}.proof-strip strong{font-size:18px}.section{padding:65px 6%}.section-heading,.approach .section-heading,.teacher .section-heading,.process .section-heading{display:block}.section-heading{margin-bottom:35px}.section-heading>.eyebrow{margin-bottom:20px;padding:0}.section-heading>p:last-child{margin-bottom:0}.section-heading>div:last-child{margin-top:20px}h2{font-size:49px}.direction-grid{grid-template-columns:1fr}.direction-card{padding:30px}.direction-card h3 br{display:none}.card-top{margin-bottom:25px}.direction-card p{max-width:600px}.direction-card ul{display:flex;gap:5px 25px;flex-wrap:wrap;padding:16px 0;margin-bottom:20px}.direction-card .tag{font-size:10px}.approach-grid,.teacher-layout{gap:40px}.approach-grid{grid-template-columns:1fr}.approach-intro{max-width:none}.large-copy{font-size:29px}.principles article:first-child{padding-top:24px;border-top:1px solid var(--line)}.lesson-demo{grid-template-columns:1fr}.demo-side{border-right:0;border-bottom:1px solid var(--line);padding:28px}.example-options{grid-template-columns:1fr}.demo-result{min-height:330px;padding:30px}.materials{grid-template-columns:1fr 1fr}.materials-text{grid-column:1/-1}.teacher-layout{grid-template-columns:1fr}.teacher-copy p:not(.large-copy){max-width:none}.steps{grid-template-columns:1fr 1fr;gap:22px 32px}.process-bottom{grid-template-columns:1fr;gap:12px}.review-grid{grid-template-columns:1fr}.review-card{padding:30px}.review-topic{margin-bottom:4px}blockquote{font-size:23px}.review-author div>span{font-size:12px}.format-grid{grid-template-columns:1fr}.regular-card,.trial-card{padding:35px}.faq{grid-template-columns:1fr;gap:0}.faq .section-heading{margin-bottom:32px}.contact{grid-template-columns:1fr;gap:35px}.contact h2{font-size:61px}.contact-form{max-width:650px}footer{align-items:flex-start;flex-wrap:wrap;padding:30px 6%;gap:25px}footer>p{max-width:260px}footer>div{width:100%}}
@media(max-width:560px){.hero{grid-template-columns:1fr;padding-top:40px;padding-bottom:65px;gap:20px}h1{font-size:clamp(60px,13.5vw,80px);letter-spacing:-2px;margin-bottom:25px}.hero .eyebrow{max-width:300px}.hero-lead{font-size:19px}.hero-description{font-size:15px}.hero .actions{gap:20px;margin-top:26px}.hero .button{font-size:14px;padding:14px 22px}.hero .text-link{font-size:14px}.hero-meta{font-size:12px}.hero-visual{max-width:360px;width:100%;margin:15px auto 40px}.portrait-frame{width:67%;margin-left:29%;padding:15px}.portrait{height:235px}.portrait-top{font-size:7px;gap:4px;margin-bottom:14px}.portrait-caption strong{font-size:12px}.note-card{width:71%;left:0;bottom:-42px;padding:22px}.note-card>p{font-size:29px;margin:16px 0}.note-footer{font-size:10px}.hero-side{right:-12px;font-size:7px}.proof-strip{gap:22px 15px}.proof-strip strong{font-size:18px}.proof-strip .stars{font-size:9px}.proof-strip div>span,.proof-strip div>a{font-size:11px}.section{padding:55px 6%}.eyebrow{font-size:10px;letter-spacing:1.3px}h2{font-size:42px;letter-spacing:-1.5px}.section-heading{margin-bottom:30px}.section-heading>p:last-child{font-size:14px}.direction-card{padding:25px}.direction-card h3{font-size:24px}.direction-card ul{display:block}.direction-card .text-link{font-size:14px}.large-copy{font-size:27px}.approach-grid{gap:25px}.principles article{gap:20px}.principles h3{font-size:20px}.demo-side{padding:24px}.demo-side .tag{font-size:9px}.demo-side h3{font-size:27px}.demo-result{padding:28px 24px}.example-sentence{font-size:29px}.materials{gap:18px}.material-preview{padding:10px}.material-preview img{height:105px}.material-preview>span{font-size:12px}.material-preview small{font-size:11px}.credentials{grid-template-columns:1fr;gap:22px}.credentials p{font-size:14px}.credentials .text-link{font-size:14px}.credential-label{font-size:10px}.steps{gap:14px 23px}.step-number{font-size:35px}.steps h3{font-size:19px;margin-top:18px;padding-top:18px}.steps p{font-size:14px}.review-card{padding:24px}blockquote{font-size:21px}.regular-card,.trial-card{padding:26px}.regular-top{flex-wrap:wrap;gap:10px}.regular-top .eyebrow{margin-bottom:10px}.regular-top{margin-bottom:22px}.price{font-size:53px}.included{grid-template-columns:1fr;gap:10px}.package-choice{align-items:stretch;flex-direction:column;gap:8px}.package-choice select{font-size:14px;width:100%}.trial-card h3{font-size:33px}.faq-list summary{font-size:16px}.contact h2{font-size:53px}.contact-form{padding:24px}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}.form-title{font-size:25px}.form-disclosure{font-size:12px}.contact-form label{font-size:14px}.contact-form .button{font-size:13px}footer .brand{font-size:13px}footer>p{font-size:12px}footer>div{gap:26px;font-size:13px}.desktop{display:none}dialog{padding:20px}dialog h2{font-size:20px}.dialog-close{float:none}dialog img{min-width:0;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Revised lesson, reviews, packages and booking */
.proof-strip>div:last-child strong{font-size:18px}.hero-visual .portrait-frame{border-top:3px solid var(--accent)}.directions .section-heading,.practice .section-heading,.formats .section-heading{align-items:start}.approach{background:linear-gradient(90deg,#fff 0%,#fff 50%,#f7f8f9 50%,#f7f8f9 100%)}.approach-intro .large-copy{font-size:30px;line-height:1.4}.conversation-demo .demo-side{background:#fff}.situation-hint{font-size:13px;color:var(--muted);margin:25px 0 0}.conversation-demo .demo-result{padding:34px 38px;background:#fafbfc;justify-content:flex-start}.conversation-demo .demo-result>.eyebrow{margin-bottom:10px}.conversation-prompt{font:24px/1.3 var(--serif);margin:0 0 24px}.speech-line{padding:20px 22px;background:var(--dark);color:white;border-left:3px solid var(--accent)}.speaker-label{font-size:9px;letter-spacing:1.4px;color:#b7c6d2;display:block;margin-bottom:10px}.speech-line .example-sentence{font-size:clamp(25px,2.8vw,38px);letter-spacing:-.7px;margin-bottom:12px}.speech-line mark{color:#f5a995}.speech-line .example-translation{font-size:14px;color:#d4dce3;margin:0}.reply-line{border-left:1px solid var(--line);margin:20px 0 0;padding:0 0 0 22px}.reply-line .speaker-label{color:var(--muted);margin-bottom:5px}.reply-line>p{font:21px/1.35 var(--serif);margin:0 0 5px}.reply-line>span:last-child{font-size:13px;color:var(--muted)}.phrase-customization{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:23px}.phrase-customization label{font-size:13px}.phrase-customization select{border:1px solid var(--line);color:var(--ink);background:#fff;font-size:14px;padding:9px 12px;min-width:145px}.conversation-demo .example-rule{margin-top:24px;padding-top:16px}.conversation-demo .example-rule p{margin-bottom:0}.credentials article{padding-bottom:8px}.credentials p{font-size:14px}.awards-details{margin-top:10px}.awards-details summary{font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.awards-details p{font-size:12px;margin:10px 0 0}.competence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);margin-top:55px;padding-top:30px}.competence-grid article{position:relative;padding-left:35px}.competence-number{font:italic 18px var(--serif);color:var(--accent);position:absolute;left:0;top:2px}.competence-grid h3{font-size:19px;margin:0 0 12px}.competence-grid p{font-size:14px;color:var(--muted);margin:0}.reviews{background:#f6f7f8}.review-carousel{display:grid;grid-template-columns:1fr 2fr;border:1px solid var(--line);background:#fff}.carousel-sidebar{background:var(--dark);color:#fff;padding:30px 32px;display:flex;flex-direction:column;align-items:stretch}.quote-symbol{font:95px/.8 var(--serif);color:#f1a08e;margin-top:8px}.carousel-sidebar>p{font-size:11px;letter-spacing:1.3px;min-height:40px;margin:20px 0 30px;line-height:1.65}.carousel-sidebar label{font-size:12px;color:#c4d0d9;margin-bottom:9px}.carousel-sidebar select{background:#243949;border:1px solid #788a98;color:#fff;padding:11px 10px;font-size:13px;width:100%;margin-bottom:25px;border-radius:0}.carousel-controls{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-top:auto;font-size:12px}.carousel-controls button{background:transparent;border:1px solid #718392;color:white;padding:10px 12px;font-size:12px;min-height:42px}.carousel-controls button:hover{background:#344d60}.carousel-controls>span{white-space:nowrap;color:#c4d0d9}.carousel-review{padding:40px 45px;min-height:360px;max-height:550px;overflow-y:auto;display:flex;flex-direction:column;scrollbar-color:#c6cdd3 transparent;scrollbar-width:thin}.carousel-review blockquote{font:23px/1.65 var(--serif);margin:0 0 28px;white-space:pre-line}.carousel-review .review-author{margin-top:auto}.carousel-review .review-author strong{font-size:15px}.carousel-review .review-author div>span{font-size:12px}.carousel-review .avatar{background:#f1e5e2;color:var(--accent);width:43px;height:43px}.review-source{font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:4px;margin:16px 0 0 55px}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.package-card{padding:28px;background:white;border:1px solid var(--line);display:flex;flex-direction:column;position:relative;transition:border-color .2s,box-shadow .2s}.package-card.selected{box-shadow:0 0 0 2px var(--accent)}.package-card.featured{background:var(--dark);color:white;border-color:var(--dark)}.package-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;gap:15px}.package-top .tag{font-size:10px}.package-number{font:italic 42px/1 var(--serif);color:#7e909f}.package-card h3{font:32px/1.2 var(--serif);margin:0 0 15px}.package-purpose{font-size:14px;color:var(--muted);min-height:70px;line-height:1.65;margin-bottom:20px}.package-card.featured .package-purpose{color:#c6d1da}.package-price{min-height:102px;display:flex;flex-direction:column;justify-content:flex-end;margin-bottom:25px}.package-price del{font-size:17px;color:var(--muted);margin-bottom:4px;text-decoration-thickness:1px}.package-price strong{font:48px/1.15 var(--serif);letter-spacing:-1px}.package-price strong span{font-size:27px}.package-price small{font-size:12px;color:var(--muted);margin-top:8px}.featured .package-price del,.featured .package-price small{color:#c6d1da}.package-sum{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);padding-top:18px}.package-sum>span{font-size:12px;max-width:130px}.package-sum strong{font-size:20px;white-space:nowrap;font-weight:500}.featured .package-sum{border-color:#516372}.package-saving{font-size:12px;color:var(--accent);margin:12px 0 0}.featured .package-saving{color:#f1a08e}.package-card ul{padding:23px 0;list-style:none;font-size:13px;line-height:1.5;margin-top:auto;margin-bottom:0}.package-card li{padding:6px 0}.package-card li:before{content:'·';color:var(--accent);margin-right:9px}.featured li:before{color:#f1a08e}.package-card>.button{width:100%;margin-top:4px;font-size:13px}.package-summary-bar{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:25px;padding:25px 30px;background:var(--soft);border:1px solid var(--line)}.package-summary-bar>div>span{font-size:11px;letter-spacing:.7px;display:block;color:var(--muted);margin-bottom:8px}.package-summary-bar strong{font-size:23px;font-weight:500;display:block;line-height:1.35}.package-summary-bar p{font-size:13px;color:var(--muted);margin:7px 0 0}.trial-inline{display:flex;justify-content:space-between;align-items:center;gap:45px;margin-top:45px;padding-top:35px;border-top:1px solid var(--line)}.trial-inline>div{max-width:660px}.trial-inline .eyebrow{font-size:10px;margin-bottom:13px}.trial-inline h3{font:32px var(--serif);margin-bottom:12px}.trial-inline p{font-size:14px;color:var(--muted);margin-bottom:12px}.trial-inline .trial-condition{font-size:13px;color:var(--ink);margin-bottom:0}.trial-inline>.button{flex-shrink:0}.package-terms{font-size:12px;color:var(--muted);margin:28px 0 0;max-width:720px}.contact-banner{grid-template-columns:1.4fr 1fr;gap:12%;align-items:center}.contact-banner h2{font-size:clamp(50px,5vw,75px)}.contact-banner-actions{display:flex;flex-direction:column;gap:24px;align-items:flex-start;border-left:1px solid #718392;padding:20px 0 20px 45px}.contact-banner-actions>.button{min-width:210px}.contact-banner-actions>span{font-size:12px;color:#becad4;margin-top:-12px}.dialog-open{overflow:hidden}.booking-dialog{width:560px;max-width:calc(100vw - 30px);max-height:calc(100dvh - 40px);padding:36px 38px;border:0;overflow-y:auto;box-shadow:0 25px 100px #07111d80}.booking-dialog h2{font:36px/1.12 var(--serif);letter-spacing:-1px;margin:0 0 16px}.booking-dialog .eyebrow{font-size:10px;clear:both;padding-top:10px;margin:0 0 16px}.booking-close{float:right;border:0;background:transparent;border-bottom:1px solid var(--line);padding:0 0 4px;font-size:12px;color:var(--muted)}.booking-dialog .booking-intro{font-size:15px;color:var(--muted);margin-bottom:23px}.booking-form label,.booking-result label{display:block;font-size:13px;margin:15px 0 8px}.optional{float:right;color:var(--muted);font-size:11px}.booking-form input,.booking-form select,.booking-form textarea,.booking-result textarea{display:block;width:100%;padding:12px 13px;border:1px solid #bfc9d0;font-size:15px;background:#fff;color:var(--ink);border-radius:0}.booking-form textarea,.booking-result textarea{resize:vertical}.booking-form>.button{width:100%;margin-top:23px}.booking-help{font-size:12px!important;color:var(--muted);margin:12px 0 0!important;line-height:1.6}.booking-package{position:relative;background:var(--soft);padding:14px 45px 14px 15px;margin-top:20px}.booking-package>span{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.booking-package strong{font-size:13px;font-weight:500;line-height:1.5;display:block}.booking-package button{font-size:11px;border:0;background:transparent;color:var(--accent);position:absolute;right:10px;top:12px;text-decoration:underline;padding:0}.booking-result>p:not(.eyebrow){font-size:14px;color:var(--muted)}.booking-result .output-actions .button{font-size:13px}.booking-result .text-link{font-size:12px;margin-top:12px}.booking-result textarea{font-size:13px;line-height:1.65;background:var(--soft)}.booking-result #copy-status{font-size:12px;margin-top:12px;color:var(--muted)}.booking-dialog .output-actions{justify-content:space-between;gap:10px;flex-wrap:wrap}.booking-dialog .output-actions>.button{flex:1}.contact-banner>div>p:not(.eyebrow){max-width:580px}.credentials .credential-label{font-size:10px}.material-preview{transition:border-color .2s}.material-preview:hover{border-color:var(--accent)}
@media(max-width:1100px){.package-card{padding:23px}.package-purpose{min-height:94px}.package-price strong{font-size:41px}.package-sum{flex-direction:column;align-items:flex-start;gap:6px}.package-sum>span{max-width:none}.carousel-sidebar{padding:28px}.carousel-review{padding:32px}.review-carousel{grid-template-columns:1fr 1.8fr}.competence-grid{gap:22px}.competence-grid h3{font-size:17px}}
@media(max-width:800px){.approach{background:white}.conversation-demo .demo-result{padding:30px}.conversation-demo .demo-side{padding:28px}.review-carousel{grid-template-columns:1fr}.carousel-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:15px 25px;padding:25px 28px}.quote-symbol{display:none}.carousel-sidebar>p{grid-column:1/-1;min-height:0;margin:0;font-size:10px}.carousel-sidebar>label{display:none}.carousel-sidebar select{margin:0;min-width:0}.carousel-controls{margin:0}.carousel-review{min-height:330px;max-height:500px;padding:30px}.competence-grid{grid-template-columns:1fr;gap:25px;margin-top:40px}.competence-grid h3{font-size:20px}.package-grid{grid-template-columns:1fr}.package-card{padding:30px}.package-top{margin-bottom:20px}.package-purpose{min-height:0;max-width:540px}.package-price{min-height:0;margin-bottom:23px}.package-price strong{font-size:47px}.package-sum{flex-direction:row;align-items:center}.package-sum>span{max-width:180px}.package-card ul{display:flex;flex-wrap:wrap;gap:0 25px;padding:20px 0}.package-card>.button{width:fit-content;min-width:230px}.package-summary-bar{padding:24px}.trial-inline{gap:28px}.trial-inline>.button{padding:12px 16px;font-size:12px}.contact-banner{grid-template-columns:1fr;gap:30px}.contact-banner-actions{padding:0;border:0;gap:20px}.contact-banner h2{font-size:61px}.proof-strip>div:last-child strong{font-size:17px}}
@media(max-width:560px){.conversation-demo .demo-result,.conversation-demo .demo-side{padding:25px}.conversation-prompt{font-size:22px}.speech-line{padding:18px}.speech-line .example-sentence{font-size:29px;line-height:1.35}.speech-line .example-translation{font-size:13px}.reply-line>p{font-size:20px}.phrase-customization{gap:15px;flex-wrap:wrap}.phrase-customization label{font-size:13px}.phrase-customization select{width:100%;font-size:16px}.situation-hint{font-size:12px}.carousel-sidebar{grid-template-columns:1fr;gap:15px;padding:25px}.carousel-sidebar>p{grid-column:auto}.carousel-sidebar select{font-size:16px}.carousel-controls{justify-content:space-between}.carousel-controls button{min-width:80px}.carousel-review{padding:25px;min-height:320px;max-height:470px}.carousel-review blockquote{font-size:20px}.review-source{font-size:12px}.package-card{padding:25px}.package-card h3{font-size:32px}.package-card ul{display:block}.package-card>.button{width:100%;font-size:14px}.package-sum strong{font-size:21px}.package-summary-bar{padding:23px;flex-direction:column;align-items:stretch;gap:20px}.package-summary-bar strong{font-size:22px}.package-summary-bar .button{width:100%}.trial-inline{flex-direction:column;align-items:flex-start;gap:22px;margin-top:30px}.trial-inline>.button{font-size:14px;padding:13px 23px;width:100%}.contact-banner h2{font-size:53px}.contact-banner-actions{gap:21px}.booking-dialog{padding:25px;max-height:calc(100dvh - 24px);max-width:calc(100vw - 24px)}.booking-dialog h2{font-size:31px}.booking-form input,.booking-form select,.booking-form textarea{font-size:16px}.booking-form label{font-size:14px}.booking-dialog .output-actions{flex-direction:column}.booking-dialog .output-actions>.button{font-size:14px;width:100%}.booking-close{font-size:13px}.optional{font-size:10px}.competence-grid p{font-size:14px}.proof-strip>div:last-child strong{font-size:17px}.awards-details p{font-size:13px}.credentials .text-link{font-size:13px}}

.direction-card p,.approach-intro>p:not(.large-copy),.principles p,.teacher-copy p:not(.large-copy),.steps p,.faq-list details>p,.package-purpose,.trial-inline p,.competence-grid p{font-size:16px}.booking-form label,.booking-result label{font-size:14px}.package-purpose{min-height:105px}@media(max-width:800px){.package-purpose{min-height:0}}

.package-card.featured{border-color:#e89883;box-shadow:inset 0 4px 0 #e89883}.package-card.featured.selected{box-shadow:inset 0 4px 0 #e89883,0 0 0 2px #c3422d}.recommended-label{font-size:11px;font-weight:600;line-height:1.5;color:#172534;background:#f0ac97;padding:9px 12px;letter-spacing:.15px;margin:-8px 0 22px;width:fit-content}.consultation-card{display:flex;justify-content:space-between;align-items:center;gap:35px;border:1px solid var(--line);background:#fafbfc;padding:30px;margin-top:30px}.consultation-card .eyebrow{font-size:10px;margin-bottom:12px}.consultation-card h3{font:30px/1.2 var(--serif);margin:0 0 12px}.consultation-card p:last-child{font-size:16px;color:var(--muted);margin:0;max-width:590px}.consultation-action{display:flex;flex-direction:column;align-items:flex-end;gap:15px;flex-shrink:0}.consultation-action strong{font:34px/1.2 var(--serif)}.consultation-action strong span{font-size:22px}.consultation-action .button{font-size:13px}@media(max-width:800px){.consultation-card{padding:28px;gap:25px}.consultation-action .button{padding:12px 17px}}@media(max-width:560px){.recommended-label{font-size:12px}.consultation-card{padding:25px;flex-direction:column;align-items:stretch;gap:20px}.consultation-action{align-items:flex-start;gap:17px}.consultation-action .button{width:100%;font-size:14px}}

.recommended-label{position:absolute;top:-16px;left:24px;max-width:calc(100% - 48px);margin:0}.package-card.featured .package-top{margin-top:8px}
/* Warm paper palette and horizontal review feed */
:root{--ink:#1b2b3c;--muted:#655f58;--paper:#f8f1e6;--soft:#eee1cf;--line:#d9cbb8;--accent:#b5412d;--dark:#1b2b3c;--gold:#e3b96e}body{background:var(--paper)}.header{background:#f8f1e6f2;border-bottom-color:#d9cbb8}.hero{background:var(--paper)}.hero h1 em,.section-heading h2 em{background-image:linear-gradient(transparent 87%,#e9cda2 87%,#e9cda2 94%,transparent 94%);text-decoration:none}.portrait-frame{background:#eee1cf;border-color:#cbbca8;box-shadow:10px 10px 0 #ead8be}.portrait-caption>span{color:#655f58}.note-card{background:var(--dark);border-left:4px solid var(--gold)}.note-card em{color:#eeb18c}.proof-strip{background:var(--dark);border-color:var(--dark)}.proof-strip strong{color:#f9ecd7}.proof-strip div>span,.proof-strip div>a{color:#d4cabb}.proof-strip .stars{color:var(--gold)}.proof-strip>div{padding-left:20px;border-left:1px solid #67727d}.proof-strip>div:first-child{padding-left:0;border-left:0}.directions{background:var(--paper)}.direction-card{background:#fbf6ed;border-color:#d2c1a9}.direction-card.dark{background:var(--dark);border-color:var(--dark)}.card-top>span:first-child{color:var(--accent)}.dark .card-top>span:first-child{color:var(--gold)}.direction-card.dark .tag{border-color:#a58e72;color:#efd5af}.approach{background:#f0e4d2;border-color:#d2c1a9}.principles h3{font-weight:500}.practice{background:#ead9bf}.lesson-demo{border-color:#cbb79d;box-shadow:0 8px 0 #dac8ac}.conversation-demo .demo-side{background:#fbf5e9}.conversation-demo .demo-result{background:#f7ecdc}.example-option{background:#fcf7ee;border-color:#cebea8}.example-option.active{background:var(--dark);border-color:var(--dark)}.example-rule{border-color:#cfbfa9}.phrase-customization select{background:#fff8ee;border-color:#bdac97}.speech-line{background:var(--dark);border-left-color:var(--gold)}.speech-line mark{color:#f0bd85}.material-preview{background:#fbf4e9;border-color:#cbb79d}.teacher{background:var(--paper)}.competence-grid h3{text-decoration:underline;text-decoration-color:#d5a873;text-underline-offset:6px;text-decoration-thickness:2px}.process{background:var(--dark);border-top:4px solid #c38753}.process h2 em{color:#efbc89}.step-number{color:var(--gold)}.reviews-feed-section{background:#f0e4d2;overflow:hidden}.feed-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 18px}.feed-toolbar>p{font-size:14px;color:var(--muted);margin:0}.feed-controls{display:flex;align-items:center;gap:16px;font-size:12px}.feed-controls button{background:transparent;border:1px solid #b49c7b;padding:10px 15px;min-height:42px;color:var(--ink);font-size:13px}.feed-controls button:hover:not(:disabled){background:var(--dark);color:var(--paper);border-color:var(--dark)}.feed-controls button:disabled{opacity:.35;cursor:default}.feed-controls span{white-space:nowrap;min-width:55px;text-align:center}.review-feed{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 22px)/2.25);gap:22px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-left:3px;scroll-behavior:smooth;padding:10px 3px 23px;scrollbar-color:#b78852 #e3d0b5;scrollbar-width:thin;-webkit-overflow-scrolling:touch;align-items:stretch}.feed-review{scroll-snap-align:start;padding:28px;background:#fcf7ee;border:1px solid #cab79c;border-top:3px solid #b5412d;min-height:410px;display:flex;flex-direction:column;min-width:0;box-shadow:0 6px 0 #e2d1b8}.feed-review:nth-child(even){border-top-color:#a8783e}.feed-review-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.feed-review .stars{font-size:13px;color:#a65527}.feed-source{font-size:11px;letter-spacing:.7px;color:var(--muted)}.feed-review-topic{font-size:10px;letter-spacing:1px;color:var(--muted);margin:0 0 13px;min-height:16px}.feed-review-quote{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;font:22px/1.5 var(--serif);margin:0 0 17px;white-space:normal}.feed-review .review-read-more{font-size:13px;margin-bottom:27px}.feed-review .review-author{margin-top:auto}.feed-review .avatar{background:#ead2b5;color:#784428;flex-shrink:0}.feed-review .review-author strong{font-size:15px}.feed-review .review-author div>span{font-size:12px;color:var(--muted)}.formats{background:var(--paper)}.package-card{background:#fcf7ee;border-color:#d0bda2}.package-card.featured{background:var(--dark);border-color:#ddaf73}.package-card.featured.selected{box-shadow:inset 0 4px 0 #ddaf73,0 0 0 2px var(--accent)}.recommended-label{background:#e8bd87;color:#202b37}.package-card.selected{box-shadow:0 0 0 2px var(--accent)}.package-price strong{color:var(--ink)}.featured .package-price strong{color:#f9ecd7}.package-summary-bar{background:#ecdbc2;border-color:#c4ac88}.consultation-card{background:#f3e7d5;border-color:#ccb79a}.trial-inline{border-color:#cbb89c}.faq-expanded{display:block;background:#efe2cf;border-top:1px solid #ccb79a}.faq-expanded>.section-heading{display:grid;grid-template-columns:1fr 2fr 1fr;gap:30px;margin-bottom:42px}.faq-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;align-items:start}.faq-group-label{font-size:11px;letter-spacing:1.2px;color:#7e492b;font-weight:600;border-bottom:3px solid #b98753;padding-bottom:17px;margin:0 0 10px}.faq-group .faq-list details:first-child{border-top:0}.faq-group .faq-list details{border-bottom:1px solid #c8b697}.faq-group .faq-list summary{font-size:16px;padding:21px 24px 21px 0;line-height:1.5}.faq-group .faq-list summary:after{font-size:26px;top:17px;color:var(--accent)}.faq-group .faq-list details>p{font-size:15px;line-height:1.75;color:#5c554d;padding-right:10px;margin:0 0 23px}.contact{background:var(--dark);border-top:4px solid #b98753}.contact h2 em{color:#eeb887;text-decoration:underline;text-decoration-color:#ba8961;text-decoration-thickness:1px;text-underline-offset:12px}.contact-banner-actions>.button{background:#f4dfbf;color:var(--ink)}footer{background:#f8f1e6}.booking-dialog,.review-full-dialog{background:#faf3e7}.booking-form input,.booking-form select,.booking-form textarea,.booking-result textarea{background:#fff9f0;border-color:#c7b79f}.booking-package{background:#efdfc7}.review-full-dialog{width:660px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);padding:36px;overflow-y:auto;border:0}.review-dialog-close{float:right;border:0;border-bottom:1px solid var(--line);padding:0 0 4px;background:transparent;color:var(--muted);font-size:13px}.review-full-dialog>.eyebrow{clear:both;padding-top:18px;margin-bottom:15px;font-size:10px}.review-full-dialog h2{font:35px/1.2 var(--serif);letter-spacing:-.5px;margin-bottom:10px}.review-dialog-date{font-size:13px!important;color:var(--muted);margin:0 0 22px!important}.review-full-dialog blockquote{font:20px/1.7 var(--serif);margin:0 0 25px;white-space:pre-line}.review-full-dialog .text-link{font-size:14px}.primary{background:var(--accent)}.primary:hover{background:#953320}.hero h1 em{color:var(--accent)}.faq-expanded .section-heading>.eyebrow{margin-bottom:0}.faq-expanded .section-heading h2{margin:0}
@media(max-width:1100px){.faq-groups{gap:22px}.review-feed{grid-auto-columns:calc((100% - 22px)/1.9)}.feed-review{padding:25px}.feed-review-quote{font-size:21px}.faq-expanded>.section-heading{grid-template-columns:1fr 2.5fr}.faq-expanded .section-heading>p:last-child{grid-column:2}.faq-group .faq-list summary{font-size:15px}}
@media(max-width:800px){nav{background:#f8f1e6}.review-feed{grid-auto-columns:78%}.feed-review{min-height:390px}.faq-groups{grid-template-columns:1fr;gap:35px}.faq-expanded>.section-heading{display:block;margin-bottom:32px}.faq-expanded .section-heading>.eyebrow{margin-bottom:20px}.faq-expanded .section-heading>p:last-child{margin-top:20px}.faq-group .faq-list summary{font-size:17px}.faq-group .faq-list details>p{font-size:16px}.proof-strip>div:nth-child(3){border-left:0;padding-left:0}.feed-toolbar>p{font-size:13px}}
@media(max-width:560px){.review-feed{grid-auto-columns:87%;gap:22px;scroll-padding-left:3px;padding-bottom:22px}.feed-review{padding:23px;min-height:400px}.feed-review-quote{font-size:21px;-webkit-line-clamp:7}.feed-review-topic{font-size:10px}.feed-toolbar{flex-direction:column;align-items:flex-start;gap:15px}.feed-controls{width:100%;justify-content:space-between}.feed-controls button{min-width:85px;font-size:14px}.review-full-dialog{padding:25px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.review-full-dialog blockquote{font-size:18px}.review-full-dialog h2{font-size:30px}.proof-strip>div{padding-left:15px}.proof-strip>div:first-child,.proof-strip>div:nth-child(3){padding-left:0}.faq-group .faq-list summary{font-size:16px}.faq-group-label{font-size:11px}.portrait-frame{box-shadow:7px 7px 0 #ead8be}.contact h2 em{text-underline-offset:8px}}
@media(prefers-reduced-motion:reduce){.review-feed{scroll-behavior:auto}}


/* Restore the warm paper palette, retain the approved deep green. */
.direction-card.dark{background:#1b2b3c;border-color:#1b2b3c}.direction-card.dark h3,.direction-card.dark li{color:#fff8ec}.direction-card.dark p{color:#e1e6e8}.direction-card.dark .tag{color:#efd5af;border-color:#a58e72}.process{background:#263e3b;border-top-color:#b1c5ad}.process h2 em{color:#efc798}.step-number{color:#e4bd85}.package-card.featured{background:#263e3b;border-color:#d6af77}.contact{background:#203442;border-top-color:#b98753}.contact-banner-actions>.button{background:#f1c6aa;color:#203442}.feed-review{background:#fcf7ee;border-radius:3px 18px 3px 3px;min-height:370px}.feed-review:nth-child(even){background:#f6eddf}.feed-review-quote{display:block;overflow:visible;-webkit-line-clamp:unset;font-size:19px;line-height:1.6;white-space:pre-line}.feed-review .review-author{margin-top:25px}.feed-review .review-author div>span{display:block;line-height:1.6}.feed-review .review-read-more{margin-bottom:0}.review-feed{align-items:stretch}.trial-inline{margin:0 0 42px;padding:28px;border:1px solid #c5cdbb;border-left:4px solid #486a57;background:#e5e9df}.trial-inline h3{color:#263e3b}.example-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.example-option{margin:0;min-height:76px;text-align:left;line-height:1.45;padding:14px;font-size:14px;display:flex;gap:12px;align-items:flex-start}.example-option span{flex-shrink:0;font-size:11px}.situation-practice{padding-top:24px;margin-top:24px;border-top:1px solid #cfbfa9}.situation-practice .eyebrow{font-size:10px;margin-bottom:12px}.situation-practice>p:not(.eyebrow){font-size:16px}.situation-practice button{font-size:14px}.situation-practice #situation-answer{color:#263e3b;background:#e3e9dd;border-left:3px solid #486a57;padding:15px;font-size:20px}.contact-channels{display:flex;flex-wrap:wrap;gap:12px;width:100%}.channel-button{padding:17px 23px;background:#f4dfbf;border:1px solid #f4dfbf;color:#203442;text-align:left;flex:1;min-width:140px}.channel-button>span{display:block;font-size:18px;font-weight:600}.channel-button>small{font-size:12px;display:block;margin-top:5px}.channel-button:hover{background:#e9cba7}.contact-form-link{color:#f4dfbf!important;font-size:14px!important}.max-phone{font:25px var(--serif)}.contact-channels .channel-button:focus-visible,.example-option:focus-visible{outline:3px solid #b5412d;outline-offset:4px}.conversation-demo .demo-side{padding:30px}.situation-hint{max-width:350px}.feed-toolbar>p{max-width:580px;line-height:1.6}
@media(max-width:1100px){.example-options{grid-template-columns:1fr}.example-option{min-height:0}.conversation-demo{grid-template-columns:1fr 1.35fr}}
@media(max-width:800px){.conversation-demo{grid-template-columns:1fr}.example-options{grid-template-columns:repeat(3,1fr)}.example-option{font-size:13px;flex-direction:column;gap:6px}.trial-inline{padding:25px}.contact-channels{max-width:600px}}
@media(max-width:560px){.example-options{grid-template-columns:1fr 1fr}.feed-review-quote{font-size:18px;-webkit-line-clamp:unset}.feed-review{min-height:0}.trial-inline{margin-bottom:35px}.channel-button{padding:15px 19px}.conversation-demo .demo-side{padding:25px}.feed-review .review-author strong{font-size:14px}}

/* Compact single-card reviews and neutral first screen. */
.hero,.header{background:#f8f1e6}.hero-visual .portrait-frame{background:#efe5d6;border-color:#d5c6b3}.portrait-top,.hero-side{color:#74695e}.note-card{background:#27343d;border-left-color:#cbbda5}.note-card em{color:#e4cbae}.hero-audiences{display:flex;gap:10px;margin-top:20px}.hero-audiences button{background:transparent;border:1px solid #cbbca7;padding:6px 13px;color:#534f47;font-size:12px}.hero-audiences button:hover{background:#eee3d2}.reviews-feed-section{padding-top:58px;padding-bottom:48px}.reviews-feed-section .section-heading{margin-bottom:28px}.review-deck{display:grid;grid-template-columns:44px minmax(0,780px) 44px;align-items:center;justify-content:center;gap:20px}.review-feed{display:block;grid-auto-flow:initial;grid-auto-columns:initial;padding:0;overflow:hidden;scroll-snap-type:none;scroll-behavior:auto;touch-action:pan-y;scrollbar-width:none;max-width:780px;width:100%}.review-feed::-webkit-scrollbar{display:none}.review-feed .feed-review{height:360px;min-height:0;margin:0;border-radius:4px;background:#fcf7ee;padding:28px 34px;box-shadow:none;display:flex;flex-direction:column}.review-feed .feed-review[hidden]{display:none!important}.review-feed .feed-review-quote{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7;overflow:hidden;font:18px/1.6 var(--serif);white-space:normal;margin:0}.review-feed .feed-review-top{margin-bottom:19px}.review-card-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:20px}.review-card-footer .review-author{margin:0}.review-card-footer .review-read-more{margin:0;font-size:12px;white-space:nowrap}.review-arrow{width:44px;height:44px;display:grid;place-items:center;background:#f6ecdd;border:1px solid #bba589;border-radius:50%;font:32px/1 var(--serif);color:#263e3b;padding:0}.review-arrow:hover{background:#263e3b;color:#fff8ec;border-color:#263e3b}.review-arrow:focus-visible{outline:3px solid #b5412d;outline-offset:4px}.review-position{font-size:12px;color:var(--muted);text-align:center;margin:15px 0 0}.contact-channels{gap:10px}.channel-button{min-width:120px;padding:16px 18px}.channel-button small{overflow-wrap:anywhere}.review-feed[data-direction=next] .feed-review:not([hidden]){animation:review-in-next .2s ease-out}.review-feed[data-direction=prev] .feed-review:not([hidden]){animation:review-in-prev .2s ease-out}@keyframes review-in-next{from{opacity:.4;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}@keyframes review-in-prev{from{opacity:.4;transform:translateX(-18px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:800px){.review-deck{grid-template-columns:36px minmax(0,1fr) 36px;gap:10px}.review-arrow{width:36px;height:36px;font-size:27px}.review-feed .feed-review{height:365px;padding:25px}.review-feed .feed-review-quote{font-size:17px}.review-card-footer{gap:15px}.channel-button{flex-basis:160px}}
@media(max-width:560px){.reviews-feed-section{padding:40px 5%}.review-deck{grid-template-columns:30px minmax(0,1fr) 30px;gap:7px}.review-arrow{width:30px;height:38px;font-size:26px;border-radius:6px}.review-feed .feed-review{height:380px;padding:20px 16px}.review-feed .feed-review-quote{font-size:16px;-webkit-line-clamp:8;line-height:1.55}.review-card-footer{flex-direction:column;align-items:flex-start;gap:12px;padding-top:16px}.review-feed .review-author strong{font-size:13px}.review-feed .review-author div>span{font-size:11px}.review-feed .avatar{width:28px;height:28px;font-size:12px}.hero-description{font-size:15px}.hero-audiences button{font-size:13px}}
@media(prefers-reduced-motion:reduce){.review-feed .feed-review{animation:none!important}}

/* Quiet edge motifs; clear centre, no continuous frame. */
main>.section{position:relative;isolation:isolate}main>.section::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:url('assets/english-edge-pattern.svg');background-size:520px 620px;background-repeat:repeat;opacity:.48;-webkit-mask-image:linear-gradient(90deg,#000 0%,#000b 4%,#0003 10%,transparent 20%,transparent 80%,#0003 90%,#000b 96%,#000 100%);mask-image:linear-gradient(90deg,#000 0%,#000b 4%,#0003 10%,transparent 20%,transparent 80%,#0003 90%,#000b 96%,#000 100%)}main>.section:nth-of-type(even)::before{background-position:190px 110px}.process::before,.contact::before{opacity:.32!important;filter:brightness(1.65)}.contact-banner-actions{padding-left:25px}.contact-channels{display:flex;flex-wrap:wrap;gap:10px}.contact-channels .channel-button{flex:0 1 auto;min-width:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid #aab8b8;border-radius:6px;color:#f5ecde;font-size:13px;font-weight:400;line-height:1.45;padding:12px 17px;text-align:center}.contact-channels .channel-button:hover{background:#ffffff0c;border-color:#f1dfc7}.contact-form-link{color:#ded6ca!important}.contact-channel-choice{border:0;padding:0;margin:20px 0 5px;min-width:0}.contact-channel-choice legend{font-size:14px;color:var(--ink);padding:0;margin-bottom:12px}.channel-radio-row{display:flex;gap:22px;flex-wrap:wrap}.booking-form .channel-radio-row label{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;margin:0;padding:4px 0;color:var(--ink)}.booking-form .channel-radio-row input{appearance:auto;accent-color:#486a57;width:16px;height:16px;margin:0;padding:0;flex-shrink:0;border:0;box-shadow:none}.booking-form .channel-radio-row input:focus-visible{outline:2px solid #486a57;outline-offset:4px}.result-max-number{font-size:14px;color:var(--ink);padding:12px 15px;background:#eee5d6;border-left:2px solid #486a57}.result-max-number[hidden]{display:none}.booking-result .output-actions{flex-wrap:wrap}
@media(max-width:800px){main>.section::before{background-size:420px 500px;opacity:.38;-webkit-mask-image:linear-gradient(90deg,#000,#0008 4%,transparent 17%,transparent 83%,#0008 96%,#000);mask-image:linear-gradient(90deg,#000,#0008 4%,transparent 17%,transparent 83%,#0008 96%,#000)}.contact-banner-actions{padding-left:0}.contact-channels .channel-button{padding:12px 16px}}
@media(max-width:560px){main>.section::before{opacity:.34;background-size:340px 405px;-webkit-mask-image:linear-gradient(90deg,#000,#0008 3%,transparent 13%,transparent 87%,#0008 97%,#000);mask-image:linear-gradient(90deg,#000,#0008 3%,transparent 13%,transparent 87%,#0008 97%,#000)}.contact-channels{gap:10px}.contact-channels .channel-button{font-size:13px;padding:11px 14px}.channel-radio-row{gap:18px}.booking-form .channel-radio-row label{font-size:14px}}
/* Light pattern across selected open sections, quieter beneath copy. */
main>.hero::before,main>.directions::before,main>.teacher::before,main>.formats::before{opacity:.42;background-size:600px 715px;-webkit-mask-image:linear-gradient(90deg,#000 0%,#0009 15%,#0005 35%,#0004 50%,#0005 65%,#0009 85%,#000 100%);mask-image:linear-gradient(90deg,#000 0%,#0009 15%,#0005 35%,#0004 50%,#0005 65%,#0009 85%,#000 100%)}main>.hero::before{background-position:70px 95px}main>.teacher::before{background-position:260px 160px}main>.formats::before{background-position:120px 230px}main>.reviews-feed-section::before{opacity:.3;background-size:650px 775px;-webkit-mask-image:linear-gradient(90deg,#000,#0004 25%,#0002 50%,#0004 75%,#000);mask-image:linear-gradient(90deg,#000,#0004 25%,#0002 50%,#0004 75%,#000)}
@media(max-width:800px){main>.hero::before,main>.directions::before,main>.teacher::before,main>.formats::before{opacity:.32;background-size:480px 570px;-webkit-mask-image:linear-gradient(90deg,#000,#0004 25%,#0003 50%,#0004 75%,#000);mask-image:linear-gradient(90deg,#000,#0004 25%,#0003 50%,#0004 75%,#000)}main>.reviews-feed-section::before{opacity:.23}}
@media(max-width:560px){main>.hero::before,main>.directions::before,main>.teacher::before,main>.formats::before{opacity:.28;background-size:400px 477px}main>.reviews-feed-section::before{opacity:.2;background-size:450px 535px}}
/* One continuous page pattern, aligned across every section. */
body{position:relative;isolation:isolate}body::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:url('assets/english-edge-pattern.svg') 70px 185px/600px 715px repeat;opacity:.42;-webkit-mask-image:linear-gradient(90deg,#000 0%,#0009 15%,#0005 35%,#0004 50%,#0005 65%,#0009 85%,#000 100%);mask-image:linear-gradient(90deg,#000 0%,#0009 15%,#0005 35%,#0004 50%,#0005 65%,#0009 85%,#000 100%)}main>.section{isolation:auto}main>.section::before{display:none!important}main>.section>*,.proof-strip>div,footer>*{position:relative;z-index:2}footer{position:relative}.proof-strip{position:relative}
@media(max-width:800px){body::before{background-size:480px 570px;opacity:.32;-webkit-mask-image:linear-gradient(90deg,#000,#0004 25%,#0003 50%,#0004 75%,#000);mask-image:linear-gradient(90deg,#000,#0004 25%,#0003 50%,#0004 75%,#000)}}
@media(max-width:560px){body::before{background-size:400px 477px;opacity:.28}}

/* Preserve the new portrait’s colors and keep the face in the frame. */
.portrait{object-position:50% 35%;filter:none}

/* Offset cards in normal flow: the portrait remains fully visible. */
.hero-visual{display:flex;flex-direction:column;gap:22px;margin:20px 14px 20px 0}
.hero-visual .portrait-frame{width:80%;margin:0 0 0 auto}
.hero-visual .portrait{height:auto;aspect-ratio:1/1;object-fit:cover}
.hero-visual .note-card{position:relative;inset:auto;width:85%;margin:0;padding:22px 26px}
.hero-visual .note-card>p{font-size:clamp(27px,2.7vw,39px);margin:12px 0;line-height:1.2}
@media(max-width:800px){.hero-visual{gap:20px;margin:15px 12px 15px 0}.hero-visual .note-card{width:94%;padding:20px}.hero-visual .note-card>p{font-size:28px}}
@media(max-width:560px){.hero-visual{max-width:360px;margin:15px auto 0;gap:20px}.hero-visual .portrait-frame{width:88%;margin-left:auto}.hero-visual .note-card{width:94%;padding:22px}.hero-visual .note-card>p{font-size:30px}.hero-side{right:-8px}}
