@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/lora-290b0acc.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/lora-65c074a6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/lora-9a6bf9ec.woff2)format("woff2");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/lora-dc07c3ef.woff2)format("woff2");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/lora-2b409ee1.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/lora-5989f646.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/lora-8e7e0514.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/onest-2e68813a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/onest-6980c39d.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/onest-5bff7706.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/onest-bf8447cd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--paper:#faf9f6;--ink:#252d2b;--muted:#49534c;--accent:#bb432c;--wash:#efeee8;--line:#d6d8d0;--dark:#273b34;--green:#52745b;--green-hover:#45654e;--sage:#dfe6da;--sage-line:#bfccbb;--sage-muted:#425246;--font-body:"Onest", Arial, sans-serif;--font-display:"Lora", Georgia, serif;--type-body:1.125rem;--type-small:1rem;--type-title:clamp(2rem, 3.3vw, 2.75rem);--type-card:1.5rem;--section-space:clamp(48px, 6vw, 80px)}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:24px}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--type-body);-webkit-font-smoothing:antialiased;margin:0;font-weight:400;line-height:1.65}body:has(dialog[open]){overflow:hidden}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}figure,blockquote,p,h1,h2,h3{margin:0}h1,h2,h3{font-style:normal;font-weight:500}h1,h2{font-family:var(--font-display);letter-spacing:-.025em;text-wrap:balance;line-height:1.2}h2{font-size:var(--type-title)}h3{font-size:var(--type-card);letter-spacing:-.015em;font-weight:600;line-height:1.35}strong{font-weight:600}em,cite{font-style:normal}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{color:#18211b;background:#ead2ba}.shell{width:min(1280px,100% - 112px);margin-inline:auto}.skip-link{z-index:100;background:#fff;padding:12px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:16px}.eyebrow,.small-label{letter-spacing:.045em;text-transform:uppercase;align-items:center;gap:10px;font-size:1rem;font-weight:500;line-height:1.5;display:flex}.eyebrow{color:var(--muted)}.small-label{color:var(--accent)}.accent-dot{background:var(--accent);border-radius:50%;flex:0 0 7px;width:7px;height:7px;display:inline-block}.accent{color:var(--accent)}.button{min-height:54px;color:var(--paper);background:var(--green);border-radius:7px;justify-content:center;align-items:center;gap:26px;padding:14px 22px;font-size:1rem;font-weight:500;line-height:1.4;transition:background .2s;display:inline-flex}.button:hover{background:var(--green-hover)}.button span[aria-hidden]{flex-shrink:0}.button-paper{background:var(--paper);color:var(--dark)}.button-paper:hover{background:#e3eadc}.text-link,.quiet-link{min-height:48px;color:inherit;font-size:var(--type-body);background:0 0;align-items:center;gap:22px;padding:10px 0;font-weight:500;line-height:1.4;display:inline-flex}.text-link{border-bottom:1px solid}.text-link:hover,.quiet-link:hover{color:var(--accent)}.booking-dialog{border:1px solid var(--line);background:var(--paper);width:min(1040px,100vw - 32px);max-width:none;height:min(850px,100dvh - 40px);max-height:calc(100dvh - 40px);color:var(--ink);border-radius:16px;margin:auto;padding:0;overflow:hidden}.booking-dialog[open]{grid-template-rows:auto minmax(0,1fr) auto;display:grid}.booking-dialog::backdrop{background:#252d2b66}.booking-dialog-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex}.booking-dialog-header h2{text-wrap:initial;font-size:1.5rem;line-height:1.3}.booking-dialog-header p{color:var(--muted);margin-top:5px;font-size:.875rem}.booking-close{border:1px solid var(--line);min-height:44px;color:inherit;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;gap:10px;padding:8px 12px;font-size:.875rem;display:inline-flex}.booking-close span{font-size:1.5rem;line-height:1}.booking-dialog-calendar{background:#fff;min-height:0}.booking-dialog-calendar iframe{border:0;width:100%;min-width:320px;height:100%;display:block}.booking-dialog-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:8px 20px;padding:10px 24px;font-size:.8125rem;line-height:1.5;display:flex}.booking-dialog-footer a{text-underline-offset:3px;align-items:center;min-height:36px;text-decoration:underline;display:inline-flex}@media (width<=680px){.booking-dialog{border:0;border-radius:0;width:100%;height:100dvh;max-height:100dvh}.booking-dialog-header{padding:max(12px, env(safe-area-inset-top)) 16px 12px;gap:12px}.booking-dialog-header h2{max-width:225px;font-size:1.125rem}.booking-dialog-header p{font-size:.75rem}.booking-close{gap:6px;padding:8px;font-size:.75rem}.booking-dialog-footer{padding:8px 16px max(8px, env(safe-area-inset-bottom));font-size:.75rem}}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;min-height:84px;padding-block:8px;display:flex}.wordmark{flex-shrink:0;padding-block:4px}.wordmark>span{letter-spacing:-.025em;font-size:2rem;font-weight:600;line-height:1.15;display:block}.wordmark small{font-size:var(--type-small);margin-top:4px;line-height:1.5;display:block}.site-header nav{font-size:var(--type-body);align-items:center;gap:24px;font-weight:400;line-height:1.4;display:flex}.site-header nav a{white-space:nowrap;align-items:center;min-height:44px;padding-block:8px;display:inline-flex}.site-header nav a:hover{color:var(--accent)}.header-cta{background:var(--green);color:#fff;min-height:48px;font-size:var(--type-body);border-radius:7px;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;font-weight:500;line-height:1.4;display:inline-flex}.header-cta:hover{background:var(--green-hover)}.mobile-menu,.mobile-menu:not([open]) nav{display:none}.mobile-menu summary{border:1px solid var(--line);cursor:pointer;min-height:48px;font-size:var(--type-small);border-radius:7px;justify-content:center;align-items:center;gap:12px;padding:10px 12px;list-style:none;display:flex}.menu-icon{gap:5px;width:18px;display:grid}.menu-icon i{background:currentColor;width:18px;height:2px;transition:transform .2s;display:block}.mobile-menu[open] .menu-icon i:first-child{transform:translateY(3.5px)rotate(45deg)}.mobile-menu[open] .menu-icon i:last-child{transform:translateY(-3.5px)rotate(-45deg)}.teacher-section{padding-block:var(--section-space);border-top:1px solid var(--line);grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(40px,6vw,80px);display:grid}.teacher-visual{min-width:0;position:sticky;top:28px}.teacher-portrait img{aspect-ratio:4/5;object-fit:cover;object-position:50% 35%;border-radius:14px;width:100%}.teacher-portrait figcaption{color:var(--muted);font-size:var(--type-small);margin-top:13px}.teacher-background{border-top:1px solid var(--line);font-size:var(--type-small);gap:10px;margin-top:24px;padding-block:22px;line-height:1.6;display:grid}.teacher-background p:first-child{color:var(--dark);font-weight:500}.teacher-background p:last-child{color:var(--muted)}.teacher-copy{min-width:0}.teacher-copy h2{margin-block:22px 28px}.teacher-copy>p:not(.eyebrow){margin-top:20px}.teacher-copy p.teacher-conclusion{color:var(--dark);background:#e8ece3;border-radius:12px;margin-top:28px;padding:24px}.kuzno-story{border-top:1px solid var(--line);padding-top:16px}.kuzno-story summary{min-height:48px;font-size:var(--type-small);cursor:pointer;justify-content:space-between;gap:16px;font-weight:500;line-height:1.5;list-style:none;display:flex}.kuzno-story summary span{font-size:var(--type-card);flex:none}.kuzno-story>p{font-size:var(--type-small);margin-block:18px}.archive-photo img{border-radius:8px;width:100%}.archive-photo figcaption{color:var(--muted);font-size:var(--type-small);margin-top:10px}.materials-section{background:var(--wash);padding-block:var(--section-space)}.materials-grid{grid-template-columns:.9fr 1.2fr;align-items:start;gap:clamp(40px,6vw,80px);display:grid}.materials-copy{min-width:0}.materials-copy h2{margin-block:18px 0}.materials-copy>p:not(.eyebrow){max-width:470px;margin-top:18px}.materials-footnote{color:var(--muted);font-size:var(--type-small);border-top:1px solid #c9cdc2;gap:18px;margin-top:28px;padding-top:24px;line-height:1.6;display:flex}.materials-footnote>span{color:var(--accent);font-size:1.5rem;line-height:1.4}.lesson-window{background:var(--paper);border:1px solid #cdd2c5;border-radius:18px;min-width:0;overflow:hidden;box-shadow:0 14px 34px #263a3310}.lesson-window-top{border-bottom:1px solid var(--line);color:var(--muted);font-size:var(--type-small);background:#e3e7de;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;line-height:1.5;display:flex}.lesson-window-dots{gap:6px;display:flex}.lesson-window-dots i{background:#8f9e8c;border-radius:50%;width:7px;height:7px}.lesson-window-body{padding:30px}.lesson-window-body .small-label{font-size:var(--type-small);color:var(--muted);letter-spacing:.02em;text-transform:none}.lesson-window-body>h3{font-family:var(--font-body);font-size:var(--type-card);margin-top:12px}.lesson-stages{flex-wrap:wrap;gap:8px;margin-block:24px;display:flex}.lesson-stages button{border:1px solid var(--line);min-height:46px;font-size:var(--type-small);color:var(--ink);background:0 0;border-radius:7px;flex:auto;padding:10px 12px;line-height:1.4}.lesson-stages button>span{color:var(--muted);margin-right:3px}.lesson-stages button[aria-pressed=true]{background:var(--dark);border-color:var(--dark);color:var(--paper)}.lesson-stages button[aria-pressed=true]>span{color:#c4d0bd}.lesson-stage{min-height:280px}.lesson-stage>p:first-child{color:var(--muted);font-size:var(--type-small);line-height:1.6}.lesson-models{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.lesson-models>div{border:1px solid var(--line);background:#fffefa;border-radius:9px;padding:16px 18px}.lesson-models>div>span{font-size:var(--type-small);color:var(--muted);margin-bottom:12px;display:block}.lesson-models strong{color:var(--accent)}.lesson-hint{margin-top:18px}.lesson-hint summary{cursor:pointer;min-height:48px;font-size:var(--type-small);color:var(--dark);justify-content:space-between;align-items:center;gap:16px;list-style:none;display:flex}.lesson-hint p{font-size:var(--type-small);background:#e8ece3;border-radius:7px;margin-top:12px;padding:16px}.lesson-sentence{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:20px;display:grid}.lesson-sentence input{width:100%;min-width:0;color:var(--ink);background:#fffefa;border:1px solid #b9c0b7;border-radius:7px;padding:9px 12px}.lesson-sentence input::placeholder{color:#6a706b}.lesson-check{margin-top:22px}.lesson-feedback{color:var(--dark);font-size:var(--type-small);margin-top:16px}.lesson-speaking{min-height:146px;font-family:var(--font-body);text-align:center;text-wrap:balance;color:var(--dark);background:#e8ece3;border-radius:10px;justify-content:center;align-items:center;margin-block:20px;padding:24px;font-size:1.75rem;line-height:1.3;display:flex}.club-price{flex-wrap:wrap;align-items:baseline;gap:8px 14px;display:flex}.club-price>span{color:var(--sage-muted);font-size:var(--type-small)}.codice-section .button-paper{background:var(--green);color:var(--paper)}.codice-section .button-paper:hover{background:var(--green-hover)}.service-groups{margin-top:44px}.service-group{border-top:1px solid var(--line);margin-top:36px;padding-top:28px}.service-group:first-child{margin-top:0}.service-group-heading{flex-direction:column;gap:10px;margin-bottom:22px;display:flex}.service-group-heading h3{color:var(--dark);font-weight:600}.service-group-heading p{color:var(--muted);font-size:var(--type-small)}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.service-card{border:1px solid var(--line);background:#f6f5f0;border-radius:12px;flex-direction:column;align-items:flex-start;min-width:0;padding:26px;display:flex}.service-card h4{font-size:var(--type-card);letter-spacing:-.015em;margin:0;font-weight:500;line-height:1.35}.service-card .service-meta{color:var(--sage-muted);font-size:var(--type-small);margin-top:10px;line-height:1.5}.service-card .service-description{color:var(--muted);margin-block:18px 22px}.service-card .text-link{gap:16px;max-width:100%;margin-top:auto}.services-grid-single{grid-template-columns:minmax(0,1fr)}.services-grid-single .service-card{grid-template-columns:minmax(0,1fr) auto;column-gap:32px;display:grid}.services-grid-single .service-card h4,.services-grid-single .service-meta,.services-grid-single .service-description{grid-column:1}.services-grid-single .service-description{max-width:740px;margin-bottom:0}.services-grid-single .text-link{grid-area:1/2/4;align-self:center;margin-top:0}.services-note{max-width:820px;color:var(--muted);font-size:var(--type-small);margin-top:24px;line-height:1.6}.reviews-section{padding-block:var(--section-space);background:#eceee7}.reviews-layout{grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(32px,5vw,72px);display:grid}.reviews-intro{min-width:0;padding:30px 0;position:sticky;top:28px}.reviews-intro h2{color:var(--dark);margin-block:28px 24px}.reviews-quote-credit{font-size:var(--type-small);color:var(--muted)}.reviews-intro-text{max-width:380px;margin-top:30px}.reviews-topics{flex-wrap:wrap;gap:8px;margin-block:28px;display:flex}.reviews-topics span{color:var(--dark);font-size:var(--type-small);border:1px solid #c8d2bf;border-radius:999px;padding:7px 12px;line-height:1.5}.review-reader{background:var(--paper);border:1px solid #cdd3c6;border-radius:18px;min-width:0;padding:30px}.review-reader-top{justify-content:space-between;align-items:center;gap:20px;display:flex}.review-count{font-size:var(--type-small);font-weight:500}.review-count>span{color:var(--muted);margin-left:5px;font-weight:400}.review-arrows{gap:10px;display:flex}.review-arrows button{width:46px;height:46px;color:var(--dark);background:0 0;border:1px solid #bcc8b5;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;display:inline-flex}.review-arrows button:hover{background:#e3e9dc}.review-names{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;margin-block:24px 28px;padding-bottom:24px;display:flex}.review-names button{border:1px solid var(--line);min-height:44px;color:var(--muted);font-size:var(--type-small);background:0 0;border-radius:999px;padding:9px 14px;line-height:1.4}.review-names button[aria-pressed=true]{border-color:var(--dark);background:var(--dark);color:var(--paper)}.story-author{align-items:center;gap:16px;display:flex}.story-initial{width:56px;height:56px;color:var(--dark);font-family:var(--font-body);background:#e2e8d9;border-radius:50%;flex:0 0 56px;justify-content:center;align-items:center;font-size:1.75rem;display:flex}.story-author h3{font-weight:600}.story-author p{font-size:var(--type-small);color:var(--muted);margin-top:5px;line-height:1.5}.story-highlight{color:var(--dark);overflow-wrap:break-word;background:#e8ece3;border-radius:10px;margin-block:26px;padding:22px}.story-reading-note{color:var(--muted);font-size:var(--type-small);margin-bottom:12px}.story-answers{border-top:1px solid var(--line)}.story-question{border-bottom:1px solid var(--line)}.story-question summary{font-size:var(--type-small);cursor:pointer;grid-template-columns:24px minmax(0,1fr) 22px;align-items:start;gap:10px;padding-block:19px;font-weight:500;line-height:1.6;list-style:none;display:grid}.question-number{color:var(--accent);font-size:var(--type-small);font-weight:400}.question-sign{color:var(--dark);text-align:center;flex:none;padding-top:2px;font-size:1.5rem;line-height:1;transition:transform .2s;display:block}.story-question[open] .question-sign,.faq-list details[open] .question-sign{transform:rotate(45deg)}.story-question blockquote,.story-original blockquote{overflow-wrap:break-word;gap:18px;padding-block:0 24px;display:grid}.story-question blockquote{padding-left:34px}.story-original summary{min-height:48px;font-size:var(--type-small);color:var(--green);cursor:pointer;align-items:center;gap:18px;font-weight:500;list-style:none;display:inline-flex}.story-original blockquote{border-top:1px solid var(--line);margin-top:20px;padding-top:24px}summary::-webkit-details-marker{display:none}.codice-section{background:var(--sage);color:var(--dark);padding-block:var(--section-space)}.codice-grid{grid-template-columns:1fr 1.13fr;gap:85px;display:grid}.codice-section .eyebrow{color:var(--sage-muted)}.codice-title-block h2{font-size:var(--type-title);margin-top:28px}.codice-dot{color:var(--accent)}.codice-subtitle{color:var(--sage-muted);margin-top:28px}.course-topics{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.course-topics span{border:1px solid var(--sage-line);font-size:var(--type-small);color:var(--sage-muted);border-radius:999px;padding:7px 12px;line-height:1.5}.course-date{border-bottom:1px solid var(--sage-line);font-size:var(--type-small);flex-wrap:wrap;justify-content:space-between;gap:12px 20px;padding-bottom:20px;display:flex}.course-date>span:first-child{color:var(--dark)}.codice-detail{min-width:0}.codice-detail h3{margin-block:28px 23px}.codice-detail>p{color:var(--sage-muted)}.course-includes{font-size:var(--type-small);margin-top:20px}.course-bottom{border-top:1px solid var(--sage-line);margin-top:30px;padding-top:24px}.course-price{flex-wrap:wrap;align-items:center;gap:12px 22px;margin-bottom:18px;display:flex}.course-price strong{font-size:2rem;font-weight:500;line-height:1.2}.course-price>span,.course-start{color:var(--sage-muted);font-size:var(--type-small)}.course-start{margin-bottom:22px}.free-materials-section{padding-block:var(--section-space);border-bottom:1px solid var(--line)}.free-material{border:1px solid var(--line);background:#f1f0e9;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px;margin-top:32px;padding:26px;display:grid}.free-material-meta{color:var(--sage-muted);font-size:var(--type-small);line-height:1.5}.free-material h3{font-family:var(--font-body);margin-top:8px}.free-material-summary>p:last-child{max-width:680px;color:var(--muted);margin-top:12px}.free-material-actions{flex-direction:column;align-items:stretch;gap:4px;display:flex}.free-material-actions .quiet-link{font-size:var(--type-small);justify-content:center}.faq-section{padding-block:var(--section-space);border-bottom:1px solid var(--line)}.faq-list{border-top:1px solid var(--line);margin-top:36px;margin-left:calc(32.6797% + 32.3137px)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:flex-start;gap:24px;padding-block:22px;font-weight:500;list-style:none;display:flex}.faq-list details>p{max-width:680px;color:var(--muted);padding-bottom:26px}.contact-section{text-align:center;padding-block:var(--section-space)}.contact-section .eyebrow{justify-content:center}.contact-section h2{max-width:780px;margin:26px auto}.contact-section>p:not(.eyebrow){max-width:550px;color:var(--muted);margin:24px auto 30px}.other-contacts{font-size:var(--type-small);flex-wrap:wrap;justify-content:center;gap:24px;margin-top:36px;display:flex}.other-contacts>span{color:var(--muted)}.other-contacts a{border-bottom:1px solid var(--line);padding-bottom:3px}.other-contacts a:hover{color:var(--accent)}.site-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;padding-block:26px 30px;display:flex}.footer-brand{font-size:1.5rem;font-weight:500;line-height:1.3}.footer-brand span{color:var(--muted);font-size:var(--type-small);margin-top:5px;font-weight:400;line-height:1.5;display:block}.site-footer>span{color:var(--muted);font-size:var(--type-small)}.footer-contact{min-height:44px;font-size:var(--type-small);align-items:center;gap:10px;display:inline-flex}.footer-contact:hover{color:var(--accent)}.application-dialog{background:var(--paper);width:min(690px,100% - 32px);max-height:calc(100dvh - 40px);color:var(--ink);overscroll-behavior:contain;border:0;border-radius:12px;margin:auto;padding:40px 44px}.application-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#16221cca}.dialog-close{width:44px;height:44px;color:var(--ink);background:0 0;font-size:1.5rem;line-height:1;position:absolute;top:14px;right:14px}.application-dialog h2{margin-top:22px}.dialog-intro{color:var(--muted);margin-top:16px}.application-form{margin-top:28px}.form-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.application-form label,.application-form legend{font-size:var(--type-small);line-height:1.5}.application-form label{margin-bottom:19px;display:block}.application-form label>span{margin-bottom:7px;display:block}.application-form input,.application-form textarea,.application-form select{width:100%;color:var(--ink);font-size:var(--type-body);background:#fffefa;border:1px solid #b9c0b7;border-radius:5px;padding:11px 12px;line-height:1.5}.application-form textarea{resize:vertical;min-height:85px}.application-form input::placeholder,.application-form textarea::placeholder{color:#6a706b}.application-form fieldset{border:0;margin:0 0 23px;padding:0}.application-form legend{margin-bottom:10px}.radio-options{flex-wrap:wrap;gap:10px 18px;display:flex}.application-form .radio-label{align-items:center;gap:7px;margin:0;display:flex}.application-form .radio-label input{width:17px;height:17px;accent-color:var(--dark)}.form-note{color:var(--muted);font-size:var(--type-small);margin:16px 0;line-height:1.5}.form-actions{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.application-summary{background:var(--wash);white-space:pre-wrap;overflow-wrap:anywhere;margin:24px 0;padding:22px}.form-error{color:#9e3022}@media (width<=1000px){.site-header{flex-wrap:wrap;gap:12px 24px}.site-header nav{order:3;justify-content:center;width:100%}}@media (width<=1100px){.shell{width:calc(100% - 72px)}.teacher-section,.materials-grid,.reviews-layout{gap:36px}.review-reader{padding:24px}.codice-grid{gap:50px}.site-footer>p{display:none}}@media (width<=850px){.shell{width:calc(100% - 48px)}.site-header nav{flex-wrap:wrap;gap:16px 24px;font-size:1.125rem}.desktop-break{display:none}.teacher-section{grid-template-columns:.85fr 1.15fr;gap:30px}.teacher-visual{position:static}.teacher-copy h2{margin-top:18px}.teacher-copy p.teacher-conclusion{padding:20px}.materials-grid{grid-template-columns:1fr;gap:32px}.materials-copy>p:not(.eyebrow),.materials-footnote{max-width:650px}.lesson-window{width:100%;max-width:700px}.services-grid{gap:16px}.service-card{padding:24px}.services-grid-single .service-card{display:flex}.services-grid-single .service-description{margin-bottom:22px}.free-material{grid-template-columns:minmax(0,1fr);gap:22px}.free-material-actions{align-items:flex-start}.reviews-layout{grid-template-columns:1fr;gap:28px}.reviews-intro{padding:0;position:static}.reviews-intro h2{max-width:650px;margin-block:20px}.reviews-intro-text{max-width:650px;margin-top:20px}.reviews-topics{margin-block:20px 12px}.codice-grid{grid-template-columns:.85fr 1.15fr;gap:32px}.faq-list{margin-left:0}}@media (width<=680px){:root{--type-title:clamp(1.75rem, 7vw, 2rem);--type-card:1.375rem;--section-space:44px}.shell{width:calc(100% - 32px)}.site-header{grid-template-columns:minmax(0,1fr) auto;gap:16px;min-height:80px;padding-block:10px;display:grid}.wordmark{min-width:0}.wordmark>span{white-space:nowrap;font-size:clamp(1.5rem,6.5vw,1.75rem)}.wordmark small{margin-top:3px}.site-header .desktop-nav,.site-header>.header-cta{display:none}.mobile-menu{z-index:10;display:block;position:relative}.site-header .mobile-menu nav{border:1px solid var(--line);background:var(--paper);text-align:left;border-radius:10px;gap:4px;width:min(300px,100vw - 32px);padding:12px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 12px 28px #263a3324}.site-header .mobile-menu:not([open]) nav{display:none}.site-header .mobile-menu nav a{white-space:normal;min-height:48px;padding:10px 12px}.site-header .mobile-menu .mobile-menu-cta{color:var(--paper);font-size:var(--type-small);margin-top:8px;display:flex}.site-header .mobile-menu .mobile-menu-cta:hover{color:var(--paper)}.button{text-align:left;gap:12px;max-width:100%;padding:14px 16px;font-size:1rem}.text-link,.quiet-link{text-align:left;gap:12px;max-width:100%}.teacher-section{flex-direction:column-reverse;gap:32px;display:flex}.teacher-visual{width:100%}.teacher-portrait img{aspect-ratio:4/3;object-position:50% 35%}.free-material-actions{align-items:stretch}.review-reader{border-radius:12px;padding:22px 18px}.review-reader-top{gap:12px}.review-names{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-block:18px 22px;padding-bottom:18px;display:grid}.review-names button{padding-inline:6px}.story-author{gap:12px}.story-author>div{min-width:0}.story-initial{flex-basis:48px;width:48px;height:48px;font-size:1.5rem}.story-highlight{margin-block:20px;padding:16px}.story-question summary{grid-template-columns:20px minmax(0,1fr) 18px;gap:8px;padding-block:16px}.story-question blockquote{padding-left:0}.faq-list{margin-top:24px}.faq-list summary{gap:16px;padding-block:18px}.contact-section{text-align:left}.contact-section .eyebrow{justify-content:flex-start}.contact-section h2{margin:18px 0}.contact-section>p:not(.eyebrow){margin:18px 0 24px}.contact-section>.button{width:100%}.other-contacts{justify-content:flex-start;gap:8px 24px;margin-top:24px}.other-contacts>span{width:100%}.other-contacts a{align-items:center;min-height:44px;display:inline-flex}.site-footer{grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;padding-block:22px;display:grid}.site-footer>span{grid-column:1/-1}.application-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:32px 20px 24px;overflow-y:auto}.dialog-close{z-index:2;background:var(--paper);border-radius:50%;margin:-24px -8px -20px auto;display:block;position:sticky;top:0}.application-dialog>.eyebrow{overflow-wrap:anywhere;letter-spacing:0;text-transform:none;padding-right:44px}.application-dialog h2{margin-top:18px}.application-form{margin-top:22px}.form-row{grid-template-columns:minmax(0,1fr);gap:0}.application-form label,.application-form fieldset{min-width:0}.application-form input,.application-form textarea,.application-form select{min-width:0;min-height:48px;font-size:1rem}.radio-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.application-form .radio-label{border:1px solid var(--line);border-radius:6px;min-height:48px;padding:10px 8px}.application-form .radio-label input{flex-shrink:0;min-height:0}.form-actions{flex-direction:column;align-items:stretch;gap:8px}.application-form>.button{width:100%}.application-summary{font-size:var(--type-small);padding:16px}.form-note{overflow-wrap:anywhere}.codice-grid{gap:36px}}@media (width<=600px){.teacher-copy h2{margin-bottom:24px}.teacher-copy>p:not(.eyebrow){margin-top:18px}.lesson-window-top{padding:14px 16px}.lesson-window-body{padding:22px 16px}.lesson-stages{grid-template-columns:minmax(0,1fr);gap:6px;margin-block:18px;display:grid}.lesson-stages button{text-align:left}.lesson-models{gap:10px}.lesson-models>div{padding:14px 12px}.lesson-stage{min-height:0}.lesson-sentence{gap:10px}.lesson-sentence input{padding-inline:8px}.lesson-speaking{font-size:1.5rem}.lesson-check{width:100%}.service-groups{margin-top:36px}.service-group{margin-top:28px;padding-top:24px}.course-bottom .button{width:100%}}@media (width<=380px){.lesson-models{grid-template-columns:minmax(0,1fr)}.review-names{grid-template-columns:repeat(2,minmax(0,1fr))}.radio-options{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.offers-secondary{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:24px;margin-top:24px;display:grid}.offers-secondary .service-description{margin-block:18px 0}.offers-secondary .service-description p+p{margin-top:12px}.offer-note{color:var(--muted);font-size:var(--type-small);margin-top:16px}@media (width<=680px){.offers-secondary{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:18px}}.teacher-copy .teacher-cta{margin-top:22px}.teacher-background p:only-child{color:var(--dark)}@media (width<=680px){.teacher-copy .teacher-cta{width:100%}}.learning-steps{margin-block:0 22px;padding-left:24px}.learning-steps li+li{margin-top:14px}.learning-steps li{color:var(--muted)}.learning-steps strong{color:var(--ink)}.level-switch,.lesson-choices{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.level-switch button,.lesson-choice{border:1px solid var(--sage-line);min-height:48px;color:var(--dark);font-size:var(--type-small);background:0 0;border-radius:7px;padding:10px 16px}.level-switch button[aria-pressed=true],.lesson-choice[aria-pressed=true]{background:var(--sage);border-color:var(--green)}.lesson-dialogue{background:var(--wash);border-radius:8px;margin-block:18px;padding:18px}.lesson-choices{margin-top:16px}.lesson-followup{width:100%;margin-top:20px}.offers-secondary.offers-single{grid-template-columns:minmax(0,1fr)}.offers-single .service-card{grid-template-columns:minmax(0,1fr) auto;column-gap:28px;display:grid}.offers-single h3,.offers-single .service-meta,.offers-single .service-description,.offers-single .offer-note{grid-column:1}.offers-single .button{grid-area:1/2/3;align-self:center;width:auto;margin:0}.club-details-note{color:var(--muted);margin-top:12px;font-size:.9375rem}.review-results{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:24px;padding-bottom:28px;display:grid}.review-result{text-align:left;background:var(--paper);color:var(--ink);border:1px solid var(--sage-line);font-size:var(--type-small);border-radius:10px;flex-direction:column;gap:12px;padding:18px;line-height:1.6;display:flex}.review-result[aria-pressed=true]{border-color:var(--green)}.review-result-context{color:var(--muted);font-size:.875rem}.review-read-action{color:var(--green);margin-top:auto}.about-personal{margin-top:20px}.about-personal summary{cursor:pointer;min-height:48px;color:var(--green);justify-content:space-between;display:flex}.about-personal p{margin-top:14px}.teacher-copy a:not(.button){text-underline-offset:4px;text-decoration:underline}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.application-form .consent-label{align-items:flex-start;gap:12px;font-size:.9375rem;display:flex}.application-form .consent-label input{flex:0 0 20px;width:20px;height:20px;min-height:20px;margin-top:4px}.consent-label a{text-decoration:underline}.button:disabled{opacity:.65;cursor:wait}.mobile-booking{display:none}.info-page{max-width:900px;padding-block:36px 80px}.info-page h1{margin-block:24px;font-size:clamp(2rem,5vw,3rem)}.info-page h2{margin-top:32px;margin-bottom:16px;font-size:1.6rem}.info-page p+p{margin-top:16px}.info-page .page-lead{margin-block:24px}.info-page a:not(.button){text-decoration:underline}@media (width<=1000px){.offers-single .service-card{display:flex}.offers-single .button{margin-top:18px}}@media (width<=680px){body{padding-bottom:calc(84px + env(safe-area-inset-bottom))}.mobile-booking{z-index:20;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);display:block;position:fixed;bottom:0;left:0;right:0}.mobile-booking .button{width:100%}body:has(dialog[open]) .mobile-booking{display:none}.level-switch{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.review-reader{padding:18px 14px}.offers-single .button{width:100%}}.review-reader{padding:24px}.review-names{margin-block:16px 20px;padding-bottom:16px}.story-highlight{margin-block:20px 8px;padding:18px}.story-original{margin-top:4px}@media (width<=680px){.review-reader{padding:18px 16px}.review-names{flex-wrap:wrap;gap:6px;display:flex}.review-names button{padding-inline:12px}.story-highlight{padding:16px}}.lesson-demo{border:1px solid var(--line);background:var(--paper);border-radius:16px;overflow:hidden}.lesson-demo-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:26px;list-style:none;display:flex}.lesson-demo-summary::-webkit-details-marker{display:none}.lesson-demo-summary>span:first-child{gap:10px;display:grid}.lesson-demo-summary strong{font-family:var(--font-body);font-size:var(--type-card);font-weight:500;line-height:1.3}.lesson-demo-summary .small-label,.lesson-demo-summary>span>span:last-child{color:var(--muted);font-size:var(--type-small)}.lesson-demo-icon{color:var(--green);flex-shrink:0;font-size:1.8rem}.lesson-demo[open] .lesson-demo-icon{transform:rotate(45deg)}.lesson-demo .lesson-previews{padding:0 20px 20px}.lesson-demo .lesson-window{box-shadow:none}.lesson-goal{color:var(--muted);margin-block:12px 20px}.lesson-mini-task{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.lesson-mini-task h4{margin-bottom:12px;font-size:1.1rem}@media (width<=680px){.lesson-demo-summary{padding:20px 16px}.lesson-demo .lesson-previews{padding:0 12px 12px}}.story-original blockquote{white-space:normal}@media (width<=680px){.site-footer{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px}.site-footer>a{justify-self:start}.site-footer>span{overflow-wrap:anywhere;grid-column:1}.materials-copy>.button,.info-page>.button{width:100%}.mobile-booking{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}.application-dialog{overscroll-behavior:contain}.review-arrows button{width:48px;height:48px}}@media (width<=360px){.wordmark>span{font-size:1.375rem}.wordmark small{font-size:.875rem}.site-header{gap:10px}}.club-details-note a{color:var(--dark);text-underline-offset:3px;text-decoration:underline}#club-terms:target{outline:2px solid var(--green);outline-offset:5px}.review-reader{background:#faf9f6;border-radius:4px 22px}.story-highlight{font-family:var(--font-body);background:0 0;margin-block:24px 10px;padding:0;font-size:clamp(1.25rem,2.2vw,1.5rem);line-height:1.55}.review-gesture-hint{display:none}.teacher-copy>p:not(.eyebrow){font-size:1.0625rem;line-height:1.75}.teacher-copy p.teacher-conclusion{font-family:var(--font-body);border-left:2px solid var(--accent);background:0 0;border-radius:0;padding:0 0 0 20px;font-size:1.375rem;line-height:1.5}.teacher-copy .teacher-conclusion strong{font-weight:500}@media (width<=680px){.review-gesture-hint{color:var(--muted);justify-content:space-between;margin-bottom:18px;font-size:.8125rem;display:flex}.story-highlight,.teacher-copy p.teacher-conclusion{font-size:1.25rem}}@keyframes gentle-enter{0%{opacity:.45;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){[data-reveal].has-entered{animation:.6s ease-out both gentle-enter}.student-story:not([hidden]){animation:.3s ease-out both gentle-enter}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.homework-preview{background:#edf1e8;margin-bottom:18px}.homework-features{color:var(--dark);flex-wrap:wrap;gap:8px 18px;margin:18px 0 0;padding:0;font-size:.875rem;list-style:none;display:flex}.homework-features li:before{content:"✓";color:var(--green);margin-right:7px}.homework-save-note{max-width:260px;color:var(--muted);font-size:.875rem;line-height:1.6}.arrow-icon{vertical-align:middle;flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.arrow-icon svg{width:100%;height:100%;display:block}@media (width<=680px){.free-material{gap:18px}.mobile-booking{padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}.mobile-booking .button{min-height:48px;padding-block:12px}body:has(.mobile-menu[open]) .mobile-booking{display:none}.site-footer>a{align-items:center;min-height:44px;display:inline-flex}.site-footer>.footer-brand{display:block}.site-header{gap:16px;min-height:68px;padding-block:10px}.wordmark{padding:0}.wordmark>span{letter-spacing:-.025em;font-size:1.25rem;line-height:1.2}.wordmark small{margin-top:2px;font-size:.75rem;line-height:1.5}.mobile-menu summary{border:0;gap:0;width:44px;min-height:44px;padding:12px}.menu-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.button.button-secondary{color:var(--dark);background:0 0;border:1px solid #a6b5a7}.button.button-secondary:hover{background:var(--sage)}.offers-single .service-card{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;padding:28px 0}.offers-single .service-card .quiet-link{align-self:start;font-size:1rem}.reviews-intro{padding-top:0}.reviews-intro h2{margin-block:16px 20px}.reviews-intro-text{margin-top:0}.reviews-intro>.quiet-link{margin-top:20px}.review-reader{background:0 0;border:0;border-left:1px solid #c4cebe;border-radius:0;padding:0 0 0 32px}.review-reader-top{margin-bottom:24px}.review-names{border-top:0;border-bottom:1px solid #c4cebe;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 24px;padding:0 0 24px;display:grid}.review-names button{text-align:left;border:1px solid #0000;border-radius:6px;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;font-size:.875rem;display:flex}.review-names button:last-child{grid-column:1/-1}.review-names button[aria-pressed=true]{color:var(--dark);background:#d9e2d2;border-color:#b0bfaa}.review-preview-name{font-size:1rem;font-weight:600}.review-preview-quote{color:var(--muted);font-size:.875rem;line-height:1.5}.story-highlight{font-size:clamp(1.25rem,2.3vw,1.65rem);line-height:1.5}.story-author h3{font-family:var(--font-body);font-size:1.125rem}.story-initial{flex-basis:44px;width:44px;height:44px;font-size:1.375rem}.homework-preview{border:0;border-radius:4px 24px 4px 4px;grid-template-columns:minmax(0,1fr) minmax(260px,.85fr);gap:24px 40px;padding:36px}.homework-preview .free-material-summary>p{margin-top:14px}.homework-preview .free-material-summary>.free-material-meta{margin-top:0;font-size:.875rem}.homework-preview .free-material-actions{flex-direction:row;grid-column:1/-1;align-items:center;gap:20px}.homework-taster{background:var(--paper);border-radius:4px 16px 4px 4px;align-self:stretch;padding:24px;box-shadow:0 8px 24px #273b3407}.taster-label{color:var(--muted);font-size:.75rem}.taster-sentence{font-family:var(--font-body);margin-block:20px;font-size:1.65rem;line-height:1.5}.taster-gap{color:var(--accent);border-bottom:1px solid}.homework-taster fieldset{border:0;min-width:0;margin:0;padding:0}.homework-taster legend{margin-bottom:12px;font-size:.8125rem}.taster-options{gap:10px;display:flex}.taster-options button{min-width:58px;min-height:44px;color:var(--dark);font:inherit;cursor:pointer;background:0 0;border:1px solid #a6b5a7;border-radius:6px}.taster-options button[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--green)}.taster-feedback{min-height:4.5em;color:var(--muted);margin-top:16px;font-size:.875rem;line-height:1.5}.material-secondary{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;padding:24px 0 0}.material-secondary .free-material-actions .quiet-link{justify-content:space-between}@media (width<=680px){:root{--section-space:48px}.offers-single .service-card{padding:24px 0 0}.service-card h3{font-size:1.5rem;line-height:1.3}.service-card .service-description{margin-block:14px;font-size:1rem;line-height:1.6}.reviews-layout{gap:28px}.reviews-intro{padding:0}.reviews-intro h2{margin-block:12px 16px}.reviews-intro-text{font-size:1rem;line-height:1.6}.reviews-intro>.quiet-link{display:none}.review-reader{border-top:1px solid #c4cebe;border-left:0;padding:0}.review-reader-top{margin-block:16px 20px}.review-count{font-size:.875rem}.review-arrows button{width:44px;height:44px}.story-highlight{margin-block:22px 12px;font-size:1.3rem}.story-author p{font-size:.875rem}.story-original{margin-top:8px}.story-original blockquote{font-size:1rem;line-height:1.7}.review-names{margin-top:0}.teacher-section{gap:28px}.teacher-portrait img{aspect-ratio:4/3;object-position:50% 30%}.teacher-background{margin-top:14px}.teacher-copy>p:not(.eyebrow){font-size:1rem;line-height:1.7}.teacher-copy p.teacher-conclusion{font-size:1.25rem;line-height:1.5}.homework-preview{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:24px;padding:24px 18px}.free-material h3{font-size:1.5rem;line-height:1.3}.free-material-summary>p{font-size:1rem;line-height:1.6}.homework-features{grid-template-columns:minmax(0,1fr);gap:6px;margin-top:16px;display:grid}.homework-taster{padding:20px}.taster-sentence{font-size:1.5rem}.homework-preview .free-material-actions{flex-direction:column;grid-column:1;align-items:stretch;gap:10px}.homework-save-note{max-width:none;font-size:.8125rem}.material-secondary{grid-template-columns:minmax(0,1fr);gap:14px}.material-secondary .free-material-actions{align-items:flex-start}.faq-list{margin-top:24px}.faq-list summary{gap:16px;font-size:1rem;line-height:1.5}.faq-list details>p{font-size:1rem;line-height:1.65}.contact-section>p:not(.eyebrow){font-size:1rem;line-height:1.6}.other-contacts{gap:12px 20px;margin-top:24px;font-size:.875rem}.other-contacts>span{width:100%}.other-contacts a{align-items:center;gap:8px;min-height:44px;display:inline-flex}}@media (width>=1001px){.offers-single .service-card>.quiet-link{grid-area:1/2/3;align-self:center}}@media (width>=681px){.wordmark>span{letter-spacing:.025em;font-size:1.7rem;font-weight:500;line-height:1.2}.wordmark small{margin-top:5px;font-size:.875rem;line-height:1.5}}.waitlist-toggle{font-size:1.375rem;line-height:1;transition:transform .2s}.waitlist-form{gap:14px;margin-top:20px;display:grid}.waitlist-form>label:not(.waitlist-consent){gap:6px;font-size:.875rem;line-height:1.5;display:grid}.waitlist-form>label>span{color:var(--muted);font-size:.75rem}.waitlist-form input[type=email],.waitlist-form input[type=text]{width:100%;min-width:0;min-height:46px;color:var(--ink);background:var(--paper);border:1px solid #a6b5a7;border-radius:6px;padding:10px 12px;font-size:1rem}.waitlist-form .waitlist-consent{grid-template-columns:18px 1fr;align-items:start;gap:10px;display:grid}.waitlist-consent input{width:18px;height:18px;accent-color:var(--green);margin-top:3px}.waitlist-form .waitlist-consent>span{color:var(--ink);font-size:.8125rem;line-height:1.5}.waitlist-privacy{text-underline-offset:3px;justify-self:start;font-size:.75rem;text-decoration:underline}.waitlist-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.waitlist-form .button{width:100%}.waitlist-form button:disabled{opacity:.7;cursor:wait}.waitlist-error{color:#a52f20;font-size:.875rem;line-height:1.5}.waitlist-success:not(:empty){border:1px solid var(--sage-line);background:var(--sage);max-width:360px;color:var(--dark);border-radius:6px;margin-top:16px;padding:14px;font-size:.9375rem;line-height:1.6}.waitlist-admin{margin-top:24px}.waitlist-admin-actions{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.waitlist-admin-table{margin-top:20px;overflow-x:auto}.waitlist-admin table{border-collapse:collapse;text-align:left;width:100%;font-size:.9375rem}.waitlist-admin caption{text-align:left;margin-bottom:14px}.waitlist-admin th,.waitlist-admin td{border-bottom:1px solid var(--line);padding:12px 16px 12px 0}.waitlist-admin td a{text-underline-offset:3px;text-decoration:underline}.section-heading{align-items:start;gap:12px;display:grid}.section-heading h2{max-width:780px}.section-intro{max-width:650px;color:var(--muted);margin-top:16px}.faq-list{margin-left:0}.hero{grid-template-columns:1.28fr 1fr;align-items:start;gap:clamp(36px,5vw,72px);padding-block:40px 48px;display:grid}.hero-copy{min-width:0}.hero h1{margin:0 0 24px;font-size:clamp(2rem,4.4vw,3.75rem);line-height:1.12}.hero-title-line{white-space:nowrap;display:block}.hero-intro{max-width:520px}.hero-lead{font-size:1.125rem;line-height:1.6}.hero-person{color:var(--muted);margin-top:12px;font-size:1rem;line-height:1.6}.hero-actions{justify-items:start;gap:8px;margin-top:24px;display:grid}.hero-note{color:var(--muted);font-size:.875rem;line-height:1.5}.hero-actions .quiet-link{margin-top:4px;font-size:.9375rem}.hero-portrait{min-width:0}.hero-portrait img{aspect-ratio:4/5;object-fit:cover;object-position:75% center;border-radius:4px 18px 4px 4px;width:100%}.hero-portrait figcaption{color:var(--muted);justify-content:space-between;gap:16px;margin-top:10px;font-size:.875rem;line-height:1.5;display:flex}.audience-section{padding-block:8px 30px}.audience-section h2{font-family:var(--font-body);letter-spacing:0;font-size:1.125rem;font-weight:500;line-height:1.4}.audience-paths{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px;margin-top:12px;display:grid}.audience-paths a{border-bottom:1px solid var(--line);min-height:52px;color:var(--dark);align-items:center;padding-block:12px;font-size:1rem;transition:border-color .2s;display:flex}.audience-paths a:hover{color:var(--accent);border-color:var(--accent)}.formats-section{padding-block:26px var(--section-space)}.formats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px;display:grid}.format-card{border:1px solid var(--line);background:var(--paper);overflow-wrap:break-word;border-radius:10px;flex-direction:column;gap:24px;min-width:0;padding:26px;display:flex}.format-card-primary{color:var(--dark);background:#f0f3ec;border-color:#a6b5a0}.format-heading h3{font-family:var(--font-body);letter-spacing:-.02em;font-size:1.375rem;font-weight:600;line-height:1.3}.format-meta{color:var(--muted);margin-top:10px;font-size:.875rem;line-height:1.5}.format-content{min-width:0;color:var(--muted);flex:1;font-size:1rem;line-height:1.6}.format-description{color:var(--ink)}.format-includes{gap:8px;margin:18px 0;padding-left:18px;font-size:.9375rem;list-style:outside;display:grid}.format-includes li::marker{color:var(--green)}.format-payment{border-top:1px solid var(--line);padding-top:20px}.offer-price{flex-wrap:wrap;align-items:baseline;gap:8px 12px;display:flex}.offer-price strong{letter-spacing:-.04em;font-variant-numeric:lining-nums;white-space:nowrap;font-size:2.5rem;font-weight:500;line-height:1.1}.offer-price>span{max-width:130px;color:var(--muted);font-size:.875rem;line-height:1.4}.payment-options{gap:6px;margin:16px 0 0;display:grid}.payment-options>div{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;display:flex}.payment-options dt{color:var(--muted);font-size:.875rem;line-height:1.5}.payment-options dd{white-space:nowrap;margin:0;font-size:.9375rem;font-weight:500}.payment-note{color:var(--muted);margin-top:10px;font-size:.875rem;line-height:1.5}.format-action{align-self:start;width:100%;min-width:0}.format-action .button{width:100%;min-height:52px;font-size:.9375rem}@supports (grid-template-rows:subgrid){.formats-grid{grid-template-rows:auto 1fr auto auto}.format-card{grid-row:span 4;grid-template-rows:subgrid;display:grid}}.offer-details{border-top:1px solid var(--sage-line)}.offer-details summary{min-height:48px;color:var(--dark);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding-block:10px;font-size:.9375rem;font-weight:500;list-style:none;display:flex}.offer-details summary>span{font-size:1.5rem;line-height:1;transition:transform .2s}.offer-details[open] summary>span{transform:rotate(45deg)}.offer-details-body{color:var(--muted);padding:4px 0 12px;font-size:.9375rem;line-height:1.6}.offer-details-body p+p{margin-top:12px}.course-steps{margin:0 0 16px;padding-left:20px;list-style:decimal}.course-steps li+li{margin-top:10px}.group-variant+.group-variant{margin-top:18px}.group-variant-heading{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.group-variant-heading h4{color:var(--ink);margin:0;font-size:1rem;font-weight:600;line-height:1.4}.group-variant-heading>span{color:var(--green);white-space:nowrap;font-size:.8125rem}.group-variant>p{margin-top:6px;font-size:.9375rem}.group-materials{margin-top:18px;font-size:.875rem}.club-meetings{margin-top:16px;font-size:.875rem;line-height:1.5}.group-terms{min-height:44px;color:var(--green);text-underline-offset:4px;align-items:center;font-size:.875rem;text-decoration:underline;display:inline-flex}.group-terms:hover{color:var(--accent)}.course-section{padding-top:32px}.course-announcement{background:#f5f0e8;border:1px solid #ded4c8;border-radius:8px;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);align-items:start;gap:28px 40px;padding:28px;display:grid}.course-announcement h3{font-family:var(--font-body);margin-top:10px;font-size:1.375rem;font-weight:600}.course-announcement-copy>p:not(.free-material-meta){max-width:650px;color:var(--muted);margin-top:12px;font-size:1rem;line-height:1.6}.course-announcement-actions{width:100%;min-width:0}.course-announcement-actions .button{width:100%;min-height:52px;font-size:.9375rem}.course-waitlist{width:100%;min-width:0}.course-waitlist>summary{cursor:pointer;justify-content:space-between;list-style:none}.course-waitlist[open] .waitlist-toggle{transform:rotate(45deg)}@media (width>=1001px){.hero-portrait img{aspect-ratio:1}}@media (width<=1100px){.hero{gap:36px}.formats-grid{gap:18px}.format-card{padding:22px}}@media (width<=1000px){.formats-grid{grid-template-rows:none;grid-template-columns:minmax(0,1fr);max-width:680px;margin-inline:auto}.format-card{grid-row:auto;gap:22px;padding:28px;display:flex}}@media (width<=850px){.hero{gap:26px;padding-block:32px 40px}.course-announcement{grid-template-columns:minmax(0,1fr)}}@media (width<=680px){.section-intro{margin-top:14px;font-size:1rem;line-height:1.6}.hero{grid-template-columns:minmax(0,1fr);align-items:start;gap:0;padding-block:24px 32px}.hero-copy{display:contents}.hero h1{letter-spacing:-.035em;grid-row:1;margin:0 0 20px;font-size:clamp(1.75rem,8.5vw,2.75rem);line-height:1.14}.hero-portrait{grid-row:2;margin-bottom:20px}.hero-portrait img{aspect-ratio:16/10;object-position:center 40%}.hero-portrait figcaption{margin-top:8px;font-size:.75rem;line-height:1.4}.hero-intro{grid-row:3;max-width:36rem}.hero-lead{font-size:1rem;line-height:1.55}.hero-person{margin-top:12px;font-size:.9375rem;line-height:1.6}.hero-actions{grid-row:4;justify-items:stretch;gap:8px;margin-top:20px}.hero-actions .button{width:100%;min-height:52px;font-size:.9375rem}.hero-note{font-size:.875rem}.hero-actions .quiet-link{justify-self:start;font-size:.875rem}.audience-section{padding-block:4px 24px}.audience-paths{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.audience-paths a{font-size:.9375rem}.formats-section{padding-top:18px}.formats-grid{gap:20px;margin-top:24px}.format-card{border-radius:8px;gap:22px;padding:24px 20px}.format-meta{font-size:.8125rem}.course-section{padding-top:24px}.course-announcement{gap:22px;padding:24px 20px}}@media (width<=360px){.audience-paths{gap:0 12px}.audience-paths a{font-size:.875rem}}.club-start{color:var(--ink);margin-top:18px}.club-program{margin-top:18px}.club-topic-list{gap:18px;margin:0;padding:0;list-style:none;display:grid}.club-topic-list li+li{border-top:1px solid var(--line);padding-top:18px}.club-topic-list time{color:var(--green);font-size:.8125rem}.club-topic-list h4{color:var(--ink);margin:6px 0 8px;font-size:1rem;line-height:1.45}.club-topic-list p{margin:0}.beginner-group{border:1px solid var(--line);border-radius:8px;align-items:center;gap:24px;margin-top:24px;padding:24px;display:flex}.beginner-group>div{flex:1;min-width:0}.beginner-group h3{font-size:1.125rem}.beginner-group p{color:var(--muted);margin-top:8px;font-size:.9375rem}.beginner-group>a{flex-shrink:0}@media (width<=680px){.beginner-group{flex-direction:column;align-items:stretch;gap:12px;padding:20px}.club-program summary{min-height:48px}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
