/* Engraving plates, open studies and local essays. The artwork's authored
   geometry and the shared visible-only drawing controller are unchanged. */
.landing-page { --landing-paper:#fff; --landing-ink:var(--tone-ink); --landing-muted:var(--tone-muted); --landing-line:var(--accent-rule); background:var(--landing-paper); color:var(--landing-ink); }
.landing-page .landing-shell { width:min(100% - 112px,1200px); margin-inline:auto; }
.landing-page main :is(h1,h2,h3,h4) { font-family:'Instrument Serif',Georgia,serif!important; font-weight:400!important; font-synthesis:none; }
.landing-page .landing-eyebrow,.landing-page .over { color:var(--maroon); font-family:'Outfit',sans-serif; font-size:12.5px; font-weight:500; line-height:1.6; letter-spacing:.075em; text-transform:uppercase; }
.landing-page .landing-eyebrow { margin:0 0 18px; }
.landing-page .landing-hero { padding:79px 0 61px; background:var(--landing-paper); border:0; }
.landing-page .landing-hero-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr); gap:100px; align-items:center; }
.landing-page .landing-hero h1 { font-size:clamp(49px,4.7vw,68px); line-height:1.04; letter-spacing:-.032em; margin:0 0 29px; color:var(--landing-ink); }
.landing-page .landing-hero h1 i { color:var(--maroon); font-weight:400; }
.landing-page .landing-intro { max-width:640px; font-family:'Outfit',sans-serif; font-size:17px; font-weight:400; line-height:1.82; color:var(--ink-soft); margin:0; }
.landing-page .landing-actions { display:flex; align-items:center; flex-wrap:wrap; gap:19px 27px; margin-top:28px; }
.landing-page .landing-actions .btn { min-height:51px; padding:13px 21px; border-radius:4px; box-shadow:none; font-size:14px; gap:21px; letter-spacing:0; }
.landing-page .landing-actions .btn .ic { display:none; }
.landing-page .landing-text-link { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:var(--maroon); font-family:'Outfit',sans-serif; font-size:14px; font-weight:400; line-height:1.6; text-decoration:none; text-underline-offset:5px; }
.landing-page .landing-text-link:is(:hover,:focus-visible) { text-decoration:underline; }
.landing-page .landing-text-link span { font-size:18px; }
.landing-page .landing-call-note { font-size:13px; line-height:1.8; color:var(--landing-muted); margin:17px 0 0; max-width:610px; }
.landing-page .landing-call-note>span { display:block; font-size:12.5px; margin-top:4px; }
/* One considered plate rather than an illustration inside a sales card. */
.landing-page .landing-plate { width:100%; max-width:370px; margin:0 auto; padding-top:10px; }
.landing-page .landing-art { display:flex; align-items:center; justify-content:center; height:346px; margin:0 0 23px; color:var(--maroon); }
.landing-page .landing-art :is(.city-sigil,.subject-sigil) { position:static; inset:auto; width:320px; height:320px; transform:none; margin:0; max-width:100%; }
.landing-page .landing-art .city-sigil--wide { width:355px; height:300px; }
.landing-page .landing-art :is(.city-sigil,.subject-sigil) svg { width:100%; height:100%; opacity:.92; stroke-width:.35; color:var(--maroon); }
.landing-page .landing-art :is(.city-sigil,.subject-sigil)::after { display:none; }
.landing-page .landing-art-pair { gap:10px; }
.landing-page .landing-art-pair :is(.city-sigil,.subject-sigil) { width:180px; height:215px; }
.landing-page .landing-plate figcaption { display:flex; align-items:baseline; justify-content:space-between; gap:20px; padding:14px 1px 0; border-top:1px solid var(--landing-line); color:var(--landing-muted); font:400 12.5px/1.5 'Outfit',sans-serif; }
.landing-page .landing-plate-signature { font:400 22px/1.1 'Instrument Serif',Georgia,serif; color:var(--ink-muted); }
.landing-page .landing-plate-signature i { font-style:italic; color:var(--maroon); }
.landing-page--ef .landing-plate { max-width:335px; }
.landing-page--ef .landing-art { height:365px; }
.landing-page--ef .landing-art :is(.city-sigil,.subject-sigil) { width:310px; height:345px; }
.landing-page--town .landing-hero { padding-bottom:54px; }
.landing-page--town .landing-hero-grid { grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr); gap:90px; }
.landing-page--town .landing-plate { max-width:360px; }
.landing-page--town .landing-art { height:320px; }
.landing-page--town .landing-art .city-sigil { width:310px; height:310px; }
.landing-page--online .landing-hero-grid { grid-template-columns:1.3fr .8fr; }
/* Matching is evidence in the reading flow, not a repeated hero sidebar. */
.landing-page .landing-match-note { padding:0; background:var(--landing-paper); }
.landing-page .landing-match-note>.landing-shell { display:grid; grid-template-columns:160px minmax(240px,1fr) minmax(0,1.45fr); gap:39px; align-items:start; padding:32px 0 37px; border-top:1px solid var(--landing-line); }
.landing-page .landing-match-note .landing-eyebrow { margin:5px 0 0; }
.landing-page .landing-match-note h2 { font-size:31px; line-height:1.13; letter-spacing:-.02em; margin:0; }
.landing-page .landing-match-note p:last-child { font-size:14px; line-height:1.85; color:var(--landing-muted); margin:2px 0 0; }
/* The session study is an asymmetric reading composition, not a numbered rail. */
.landing-page .landing-session { padding:76px 0 70px; background:#fff; }
.landing-page .landing-session>.landing-shell { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr); gap:0 85px; align-items:start; }
.landing-page .landing-section-head { display:block; margin:0; }
.landing-page .landing-section-head h2 { max-width:470px; font-size:clamp(37px,3.3vw,47px); line-height:1.07; letter-spacing:-.028em; margin:0 0 24px; }
.landing-page .landing-section-head>p { font-size:16px; line-height:1.85; color:var(--landing-muted); margin:0; max-width:430px; }
.landing-page .landing-section-head>.landing-fit-note { margin-top:26px; font-size:15px; }
.landing-page .landing-session-grid { display:block; }
.landing-page .landing-session-grid article { display:grid; grid-template-columns:38px minmax(0,1fr); gap:0 17px; padding:0 0 27px; margin:0 0 25px; border:0; border-bottom:1px solid var(--line); }
.landing-page .landing-session-grid article:last-child { border-bottom:0; margin-bottom:0; padding-bottom:0; }
.landing-page .landing-step { grid-column:1; grid-row:1/3; font:400 18px/1.2 'Instrument Serif',Georgia,serif; color:var(--maroon); padding-top:4px; }
.landing-page .landing-session-grid h3 { grid-column:2; font-size:29px; line-height:1.14; letter-spacing:-.015em; margin:0 0 11px; }
.landing-page .landing-session-grid p { grid-column:2; font-size:15px; line-height:1.85; color:var(--landing-muted); margin:0; }
.landing-page .landing-session-grid .landing-text-link { grid-column:2; margin-top:13px; }
.landing-page .landing-plan-note { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr); gap:85px; align-items:start; grid-column:1/-1; margin-top:49px; padding:30px 0 0; border:0; border-top:1px solid var(--landing-line); background:none; border-radius:0; }
.landing-page .landing-plan-note h3 { max-width:325px; font-size:28px; font-weight:400; line-height:1.18; letter-spacing:-.015em; margin:0; }
.landing-page .landing-plan-note p { color:var(--landing-muted); font-size:14px; line-height:1.85; margin:0; }
.landing-page .landing-online-format { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr); gap:85px; align-items:start; grid-column:1/-1; padding:27px 0 0; }
.landing-page .landing-online-format h3 { font-size:28px; font-weight:400; line-height:1.18; margin:0; }
.landing-page .landing-online-format p { color:var(--landing-muted); font-size:14px; line-height:1.85; margin:0; }
.landing-page .landing-online-format a { color:var(--maroon); text-underline-offset:5px; }
/* Town pages show three possible directions openly, then return to local essays. */
.landing-page--town .landing-session>.landing-shell,.landing-page--online #landing-work>.landing-shell { display:block; }
.landing-page--town .landing-section-head,.landing-page--online #landing-work .landing-section-head { display:grid; grid-template-columns:1.05fr 1fr; gap:90px; margin-bottom:37px; }
.landing-page--town .landing-session-grid,.landing-page--online #landing-work .landing-session-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:43px; }
.landing-page--town .landing-session-grid article,.landing-page--online #landing-work .landing-session-grid article { display:block; padding:23px 0 0; margin:0; border:0; border-top:1px solid var(--landing-line); }
.landing-page--town .landing-step,.landing-page--online #landing-work .landing-step { display:block; padding:0; margin-bottom:17px; }
.landing-page--town .landing-session-grid h3,.landing-page--online #landing-work .landing-session-grid h3 { font-size:30px; }
.landing-page--town .landing-section-head h2,.landing-page--online #landing-work .landing-section-head h2 { margin:0; }
.landing-page--town .landing-section-head>p,.landing-page--online #landing-work .landing-section-head>p { align-self:end; }
/* Subject curricula are open studies, with the authored engravings as markers. */
.landing-page .sec { padding:75px 56px; background:#fff; }
.landing-page .sec.sec-alt { background:var(--paper-warm); background-image:none; }
.landing-page .sec .sh { max-width:1100px; margin:0 auto 44px; text-align:left; }
.landing-page .sec .sh h2 { font-size:44px!important; line-height:1.1; letter-spacing:-.025em; margin:0 0 21px; }
.landing-page .sec .sh .over { margin-bottom:14px; }
.landing-page .sec .sh p { color:var(--landing-muted); font-size:16px; line-height:1.85; max-width:770px; margin:0; }
.landing-page .svc-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:52px 80px; max-width:1100px; }
.landing-page .svc { position:relative; background:none!important; border:0!important; border-radius:0!important; box-shadow:none!important; padding:0!important; transform:none!important; }
.landing-page .svc:hover { background:none; border:0; box-shadow:none; transform:none; }
.landing-page .svc h3 { font-size:34px!important; font-weight:400!important; line-height:1.13; letter-spacing:-.022em; margin:0 0 15px; }
.landing-page .svc h3>span { display:inline-block; color:var(--ink-muted)!important; font-family:'Outfit',sans-serif; font-size:12.5px!important; font-weight:400!important; line-height:1.5; border:0; border-radius:0!important; background:none!important; padding:0!important; }
.landing-page .svc p { color:var(--landing-muted); font-size:16px; line-height:1.85; }
.landing-page .svc-icon.svc-art { width:118px; height:118px; margin:-4px 0 16px -7px; }
.landing-page .svc[style*="grid-template-columns"] { grid-template-columns:125px minmax(0,1fr)!important; gap:30px!important; padding:25px 0 31px!important; border-block:1px solid var(--landing-line)!important; }
.landing-page .svc[style*="grid-template-columns"] .svc-icon { margin:0!important; }
.landing-page .svc[style*="grid-template-columns"] h3 { color:var(--landing-ink)!important; }
/* Local knowledge is a series of essay chapters, with genuine source notes. */
.landing-page .hub-sec { padding-top:64px; padding-bottom:64px; background:#fff; }
.landing-page .hub-sec.sec-alt { background:var(--paper-warm); }
.landing-page .hub-prose { max-width:1120px; display:grid; grid-template-columns:minmax(240px,.75fr) minmax(0,1.35fr); gap:80px; }
.landing-page .landing-chapter-head h2 { font-size:39px; line-height:1.1; letter-spacing:-.025em; margin:0; max-width:360px; }
.landing-page .landing-chapter-copy { min-width:0; }
.landing-page .hub-prose h3 { font-size:30px; line-height:1.18; letter-spacing:-.018em; margin:31px 0 16px; }
.landing-page .hub-prose h2:not(:first-child) { margin-top:34px; }
.landing-page .hub-prose p,.landing-page .hub-prose li { color:var(--ink-soft); font-size:16px; line-height:1.9; }
.landing-page .hub-prose p { margin:0 0 20px; }
.landing-page .hub-prose ul,.landing-page .hub-prose ol { padding-left:21px; margin:0 0 24px; }
.landing-page .hub-prose li { padding-left:5px; margin-bottom:12px; }
.landing-page .hub-prose strong { color:var(--ink); font-weight:500; }
.landing-page .hub-prose .src { font-size:12.5px; line-height:1.85; color:var(--landing-muted); margin:29px 0 0; padding-top:17px; border-top:1px solid var(--landing-line); }
.landing-page .hub-prose a { color:var(--maroon); text-decoration:underline; text-underline-offset:4px; }
.landing-page .town-photo { width:min(100% - 112px,1120px); padding:17px 0 38px; margin:0 auto; }
.landing-page .town-photo img { width:100%; max-height:450px; border-radius:2px; box-shadow:none; }
.landing-page .town-photo figcaption { color:var(--landing-muted); font-size:12.5px; margin-top:13px; }
/* Reviews keep their exact words; their context reads like an attribution. */
.landing-page .landing-review-context { max-width:820px; margin:29px auto 15px; padding:0 34px; color:var(--landing-muted); font-size:12.5px; line-height:1.7; }
.landing-page .inline-test { max-width:820px; text-align:left; background:none; border:0; border-left:1px solid var(--maroon); border-radius:0; box-shadow:none; padding:7px 0 8px 34px; margin:0 auto 51px; }
.landing-page .inline-test::before,.landing-page .inline-test::after { content:none; }
.landing-page .inline-test blockquote { font-family:'Instrument Serif',Georgia,serif; font-size:29px; font-weight:400; line-height:1.45; color:var(--ink-soft); }
.landing-page .inline-test blockquote strong { color:var(--ink); font-weight:400; }
.landing-page .inline-test .it-author { margin-top:17px; font-size:13px; font-weight:500; }
.landing-page .inline-test .it-detail { color:var(--landing-muted); font-size:12.5px; line-height:1.7; }
.landing-page .inline-test .it-stars { font-size:12.5px; margin-bottom:17px; }
.landing-page .founder-note { background:#fff; padding:30px 56px; }
.landing-page .founder-note-in { max-width:900px; padding:35px 0; margin:auto; gap:29px; border:0; border-block:1px solid var(--landing-line); }
.landing-page .founder-note p { font-size:30px; font-weight:400; line-height:1.3; color:var(--ink-soft); }
.landing-page .founder-note img { width:88px; height:88px; }
.landing-page .founder-note-link { font-size:14px; }
.landing-page .hub-guarantee { max-width:1120px; border:0; border-block:1px solid var(--landing-line); border-radius:0; box-shadow:none; background:none; padding:25px 0; }
.landing-page .hub-guarantee p { font-size:15px; line-height:1.85; color:var(--ink-soft); }
.landing-page .hub-guarantee .guarantee-k,.landing-page .founder-note-eyebrow { font-size:12.5px; }
.landing-page .faq-list { max-width:900px; }
.landing-page .faq-item { border-color:var(--landing-line); }
.landing-page .faq-q { font-size:29px; font-weight:400; line-height:1.3; color:var(--ink); padding-block:21px; }
.landing-page .faq-a,.landing-page .faq-a p,.landing-page .faq-a-inner { font-size:16px; line-height:1.85; color:var(--landing-muted); }
/* All prices/commitment details remain available, away from the opening. */
.landing-page .landing-rate-note { display:flex; justify-content:space-between; align-items:center; gap:35px; width:min(100% - 112px,1100px); padding:28px 0 33px; border-top:1px solid var(--landing-line); }
.landing-page .landing-rate-note p { font-size:14px; line-height:1.85; color:var(--landing-muted); margin:0; }
.landing-page .landing-rate-note strong { font-weight:500; color:var(--ink-soft); }
.landing-page .landing-rate-note p>span { display:block; font-size:12.5px; margin-top:4px; }
.landing-page .landing-rate-note .landing-text-link { white-space:nowrap; }
.landing-page .town-price { max-width:900px; padding:0; border:0; background:none; border-radius:0; box-shadow:none; text-align:left; }
.landing-page .town-price .tp-main { font-family:'Instrument Serif',Georgia,serif; font-size:34px; font-weight:400; line-height:1.2; margin-bottom:21px; }
.landing-page .town-price p { font-size:16px; line-height:1.85; color:var(--landing-muted); }
.landing-page .town-price .steps-cta { margin-top:20px; }
.landing-page .town-price .steps-cta a { background:none; border:0; color:var(--maroon); display:inline-flex; align-items:center; min-height:44px; padding:8px 0; font-size:14px; box-shadow:none; text-decoration:none; text-underline-offset:5px; }
.landing-page .cta-ban { padding:74px 56px 78px; background:var(--paper-warm); text-align:left; }
.landing-page .landing-invitation-shell { width:100%; max-width:1100px; margin:auto; display:grid; grid-template-columns:minmax(0,1fr) 255px; gap:0 80px; align-items:start; }
.landing-page .cta-ban h2 { grid-column:1; font-size:48px!important; font-weight:400; line-height:1.07; letter-spacing:-.027em; max-width:670px; margin:0 0 23px; color:var(--landing-ink); }
.landing-page .cta-ban p { grid-column:1; max-width:670px; margin:0; color:var(--ink-muted); font-size:15px; line-height:1.85; }
.landing-page .cta-ban p a { color:var(--maroon)!important; text-underline-offset:5px; }
.landing-page .cta-ban .cta-btns,.landing-page .landing-invitation-shell>.btn { grid-column:2; grid-row:1/3; align-self:center; margin:0; }
.landing-page .cta-ban .btn { color:#fff; background:var(--maroon); border:1px solid var(--maroon); min-height:52px; border-radius:4px; box-shadow:none; font-size:14px; }
.landing-page .cta-ban .btn .ic { display:none; }
.landing-page .cta-ban .cta-btns { justify-content:flex-start; }
.landing-page .steps-row { max-width:1100px; gap:54px; }
.landing-page .stp { text-align:left; }
.landing-page .stp h3 { font-size:29px; line-height:1.14; }
.landing-page .stp p { color:var(--landing-muted); font-size:15px; line-height:1.85; }
.landing-page .stp-num { margin:0 0 20px; }
.landing-page .audience-grid,.landing-page .pricing-box,.landing-page .instructor-card { max-width:1100px; }
.landing-page .audience-card,.landing-page .pricing-box,.landing-page .instructor-card { border:0; background:none; box-shadow:none; border-radius:0; }
.landing-page .audience-card { padding:0; text-align:left; }
.landing-page .audience-card h3 { font-size:29px; }
.landing-page .audience-card p,.landing-page .pricing-note p,.landing-page .instructor-text p { color:var(--landing-muted); font-size:16px; line-height:1.85; }
.landing-page .instructor-text h3 { font-weight:400; }
.landing-page .form-note { color:var(--landing-muted); font-size:13px; line-height:1.8; }
.landing-page .landing-online-rate-link { margin-top:27px; }
.landing-page .landing-feature-photo { width:min(100% - 112px,1120px); margin:0 auto; padding:8px 0 55px; }
.landing-page .landing-feature-photo img { display:block; width:100%; height:320px; object-fit:cover; border-radius:2px; }
.landing-page a:focus-visible,.landing-page summary:focus-visible { outline:2px solid var(--maroon); outline-offset:5px; }
@media(max-width:1100px) {
 .landing-page .landing-shell { width:calc(100% - 72px); }
 .landing-page .landing-hero-grid { gap:60px; grid-template-columns:minmax(0,1.25fr) minmax(250px,.8fr); }
 .landing-page .landing-hero h1 { font-size:58px; }
 .landing-page .landing-art { height:300px; }
 .landing-page .landing-art :is(.city-sigil,.subject-sigil) { width:280px; height:280px; }
 .landing-page .landing-match-note>.landing-shell { grid-template-columns:130px .9fr 1.3fr; gap:25px; }
 .landing-page .landing-match-note h2 { font-size:28px; }
 .landing-page .landing-session>.landing-shell,.landing-page .landing-plan-note,.landing-page .landing-online-format { gap:0 55px; }
 .landing-page .svc-grid { gap:44px 55px; }
 .landing-page .hub-prose { gap:50px; grid-template-columns:minmax(200px,.8fr) minmax(0,1.4fr); }
 .landing-page .town-photo,.landing-page .landing-rate-note { width:calc(100% - 72px); }
 .landing-page .landing-invitation-shell { gap:0 50px; grid-template-columns:minmax(0,1fr) 235px; }
}
@media(max-width:850px) {
 .landing-page .landing-shell { width:calc(100% - 48px); }
 .landing-page .landing-hero { padding:57px 0 43px; }
 .landing-page .landing-hero-grid,.landing-page--town .landing-hero-grid,.landing-page--online .landing-hero-grid { grid-template-columns:minmax(0,1fr) 225px; gap:35px; }
 .landing-page .landing-hero h1 { font-size:49px; }
 .landing-page .landing-intro { font-size:16px; }
 .landing-page .landing-art,.landing-page--ef .landing-art,.landing-page--town .landing-art { height:240px; }
 .landing-page .landing-art :is(.city-sigil,.subject-sigil),.landing-page--ef .landing-art :is(.city-sigil,.subject-sigil),.landing-page--town .landing-art .city-sigil { width:220px; height:235px; }
 .landing-page .landing-art-pair { flex-direction:column; gap:0; }
 .landing-page .landing-art-pair :is(.city-sigil,.subject-sigil) { width:130px; height:130px; }
 .landing-page .landing-match-note>.landing-shell { grid-template-columns:1fr 1.4fr; gap:15px 38px; }
 .landing-page .landing-match-note .landing-eyebrow { grid-column:1/-1; }
 .landing-page .landing-session { padding:57px 0; }
 .landing-page .landing-session>.landing-shell { grid-template-columns:.9fr 1.2fr; gap:0 37px; }
 .landing-page .landing-section-head h2 { font-size:38px; }
 .landing-page .landing-session-grid article { grid-template-columns:25px 1fr; gap:0 10px; }
 .landing-page .landing-session-grid h3 { font-size:27px; }
 .landing-page .landing-plan-note,.landing-page .landing-online-format { gap:37px; }
 .landing-page--town .landing-section-head,.landing-page--online #landing-work .landing-section-head { gap:40px; }
 .landing-page--town .landing-session-grid,.landing-page--online #landing-work .landing-session-grid { gap:26px; }
 .landing-page--town .landing-session-grid h3,.landing-page--online #landing-work .landing-session-grid h3 { font-size:26px; }
 .landing-page .sec { padding:58px 36px; }
 .landing-page .sec .sh h2 { font-size:38px!important; }
 .landing-page .svc-grid { gap:40px; }
 .landing-page .hub-prose { gap:35px; grid-template-columns:210px minmax(0,1fr); }
 .landing-page .landing-chapter-head h2 { font-size:33px; }
 .landing-page .hub-prose .src { overflow-wrap:anywhere; }
 .landing-page .town-photo,.landing-page .landing-rate-note { width:calc(100% - 48px); }
 .landing-page .founder-note { padding:22px 36px; }
 .landing-page .landing-rate-note { gap:22px; }
 .landing-page .cta-ban { padding:58px 36px; }
 .landing-page .cta-ban h2 { font-size:41px!important; }
 .landing-page .landing-invitation-shell { grid-template-columns:1fr; }
 .landing-page .cta-ban .cta-btns,.landing-page .landing-invitation-shell>.btn { grid-column:1; grid-row:auto; margin-top:27px; justify-self:start; }
}
@media(max-width:650px) {
 .landing-page .landing-shell { width:calc(100% - 40px); }
 .landing-page .landing-hero { padding:36px 0 27px; }
 .landing-page .landing-hero-grid,.landing-page--town .landing-hero-grid,.landing-page--online .landing-hero-grid { grid-template-columns:1fr; gap:33px; }
 .landing-page .landing-hero h1 { font-size:46px!important; line-height:1.055; margin-bottom:24px; }
 .landing-page .landing-hero .landing-eyebrow { font-size:12.5px!important; letter-spacing:.06em; margin-bottom:17px; }
 .landing-page .landing-intro { font-size:16px; line-height:1.85; }
 .landing-page .landing-actions { gap:17px; margin-top:24px; }
 .landing-page .landing-actions .btn { width:auto; justify-content:space-between; min-width:218px; }
 .landing-page .landing-actions .landing-text-link { font-size:13px; }
 .landing-page .landing-call-note { font-size:13px!important; line-height:1.85; margin-top:15px; }
 .landing-page .landing-call-note>span { font-size:12.5px; }
 .landing-page .landing-plate,.landing-page--ef .landing-plate,.landing-page--town .landing-plate { max-width:290px; margin:0 auto; padding-top:4px; }
 .landing-page .landing-art,.landing-page--ef .landing-art,.landing-page--town .landing-art { height:237px; margin-bottom:14px; }
 .landing-page .landing-art :is(.city-sigil,.subject-sigil),.landing-page--ef .landing-art :is(.city-sigil,.subject-sigil),.landing-page--town .landing-art .city-sigil { width:245px; height:237px; }
 .landing-page .landing-art-pair { flex-direction:row; }
 .landing-page .landing-art-pair :is(.city-sigil,.subject-sigil) { width:138px; height:150px; }
 .landing-page .landing-plate figcaption { font-size:12.5px; padding-top:12px; }
 .landing-page .landing-plate-signature { font-size:21px; }
 .landing-page .landing-match-note>.landing-shell { display:block; padding:27px 0 35px; }
 .landing-page .landing-match-note .landing-eyebrow { margin:0 0 14px; }
 .landing-page .landing-match-note h2 { font-size:31px; margin:0 0 20px; }
 .landing-page .landing-match-note p:last-child { font-size:15px; line-height:1.85; }
 .landing-page .landing-session { padding:47px 0 43px; }
 .landing-page .landing-session>.landing-shell { display:block; }
 .landing-page .landing-section-head { margin-bottom:30px; }
 .landing-page .landing-section-head h2 { font-size:38px; margin-bottom:21px; }
 .landing-page .landing-section-head>p { font-size:16px; max-width:none; }
 .landing-page .landing-session-grid article { grid-template-columns:28px 1fr; gap:0 11px; padding-bottom:24px; margin-bottom:24px; }
 .landing-page .landing-session-grid h3 { font-size:29px; }
 .landing-page .landing-session-grid p { font-size:16px; }
 .landing-page .landing-plan-note { display:block; margin-top:31px; padding-top:26px; }
 .landing-page .landing-plan-note h3 { font-size:29px; margin-bottom:17px; }
 .landing-page .landing-plan-note p { font-size:15px!important; }
 .landing-page .landing-online-format { display:block; padding-top:26px; }
 .landing-page .landing-online-format h3 { font-size:29px; margin-bottom:17px; }
 .landing-page .landing-online-format p { font-size:15px; }
 .landing-page--town .landing-section-head,.landing-page--online #landing-work .landing-section-head { display:block; margin-bottom:31px; }
 .landing-page--town .landing-section-head h2,.landing-page--online #landing-work .landing-section-head h2 { margin-bottom:21px; }
 .landing-page--town .landing-session-grid,.landing-page--online #landing-work .landing-session-grid { grid-template-columns:1fr; gap:28px; }
 .landing-page--town .landing-session-grid article,.landing-page--online #landing-work .landing-session-grid article { padding-top:22px; }
 .landing-page--town .landing-session-grid h3,.landing-page--online #landing-work .landing-session-grid h3 { font-size:31px; }
 .landing-page .sec { padding:47px 20px; }
 .landing-page .sec .sh { margin-bottom:32px; }
 .landing-page .sec .sh h2 { font-size:37px!important; line-height:1.12; }
 .landing-page .sec .sh p { font-size:16px; }
 .landing-page .svc-grid { grid-template-columns:1fr; gap:37px; }
 .landing-page .svc h3 { font-size:32px!important; }
 .landing-page .svc h3>span { display:inline-block!important; margin:9px 0 0!important; }
 .landing-page .svc[style*="grid-template-columns"] { grid-template-columns:1fr!important; gap:17px!important; text-align:left!important; }
 .landing-page .svc-grid .svc[style*="grid-template-columns"] .svc-icon { margin:0!important; }
 .landing-page .svc p { font-size:16px; }
 .landing-page .svc-icon.svc-art { width:108px; height:108px; }
 .landing-page .hub-sec,.landing-page .hub-sec.sec-alt { padding:44px 20px; }
 .landing-page .hub-prose { display:block; }
 .landing-page .landing-chapter-head h2 { font-size:36px; margin-bottom:25px; max-width:none; }
 .landing-page .hub-prose h3 { font-size:29px; }
 .landing-page .hub-prose p,.landing-page .hub-prose li { font-size:16px; }
 .landing-page .hub-prose .src { font-size:12.5px!important; }
 .landing-page .town-photo { width:calc(100% - 40px); padding:8px 0 24px; }
 .landing-page .landing-review-context { width:calc(100% - 40px); padding:0 20px; margin:23px auto 14px; font-size:12.5px!important; }
 .landing-page .inline-test { margin-left:20px!important; margin-right:20px!important; padding:4px 0 7px 20px; }
 .landing-page .inline-test blockquote { font-size:27px!important; }
 .landing-page .founder-note { padding:21px 20px; }
 .landing-page .founder-note-in { gap:20px; align-items:flex-start; }
 .landing-page .founder-note p { font-size:27px!important; }
 .landing-page .founder-note img { width:74px; height:74px; }
 .landing-page .hub-guarantee { padding:23px 0; }
 .landing-page .hub-guarantee p { font-size:15px!important; }
 .landing-page .faq-q { font-size:27px; }
 .landing-page .faq-a p,.landing-page .faq-a-inner { font-size:16px; }
 .landing-page .landing-rate-note { display:block; width:calc(100% - 40px); padding:24px 0 28px; }
 .landing-page .landing-rate-note p { font-size:14px!important; }
 .landing-page .landing-rate-note p>span { font-size:12.5px; }
 .landing-page .landing-rate-note .landing-text-link { margin-top:14px; }
 .landing-page .town-price .tp-main { font-size:30px; }
 .landing-page .cta-ban { padding:49px 20px 53px; }
 .landing-page .cta-ban h2 { font-size:39px!important; }
 .landing-page .cta-ban p { font-size:16px; }
 .landing-page .stp h3 { font-size:29px; }
 .landing-page .stp p { font-size:16px; }
}
@media(max-width:365px) {
 .landing-page .landing-shell { width:calc(100% - 32px); }
 .landing-page .landing-hero h1 { font-size:42px!important; }
 .landing-page .landing-actions .btn { min-width:210px; }
 .landing-page .landing-section-head h2 { font-size:36px; }
 .landing-page .sec .sh h2 { font-size:34px!important; }
 .landing-page .landing-chapter-head h2 { font-size:34px; }
 .landing-page .landing-plate { max-width:260px; }
}
/* A phone should reach the page's subject or local material quickly. The
   plate remains present, as a small drawing beside its caption. */
@media(max-width:650px) {
 .landing-page.landing-restored .landing-hero { padding:26px 0 23px; }
 .landing-page.landing-restored .landing-hero-grid { gap:18px; }
 .landing-page.landing-restored .landing-hero h1 { font-size:42px!important; line-height:1.05; margin-bottom:20px; }
 .landing-page.landing-restored .landing-hero .landing-eyebrow { margin-bottom:14px; }
 .landing-page.landing-restored .landing-intro { line-height:1.72; }
 .landing-page.landing-restored .landing-actions { margin-top:20px; gap:13px 23px; }
 .landing-page.landing-restored .landing-actions .btn { min-height:48px; }
 .landing-page.landing-restored .landing-call-note { line-height:1.7; margin-top:13px; }
 .landing-page.landing-restored .landing-call-note>span { margin-top:3px; }
 .landing-page.landing-restored .landing-plate { display:grid; grid-template-columns:92px minmax(0,1fr); gap:21px; align-items:center; width:100%; max-width:none; margin:0; padding:0; }
 .landing-page.landing-restored .landing-art { width:92px; height:92px; margin:0; }
 .landing-page.landing-restored .landing-art :is(.city-sigil,.subject-sigil) { width:92px; height:92px; }
 .landing-page.landing-restored .landing-art-pair { gap:4px; }
 .landing-page.landing-restored .landing-art-pair :is(.city-sigil,.subject-sigil) { width:45px; height:65px; }
 .landing-page.landing-restored .landing-plate figcaption { display:block; padding:0; border:0; font-size:13px; }
 .landing-page.landing-restored .landing-plate-signature { display:none; }
 .landing-page .landing-feature-photo { width:calc(100% - 40px); padding:0 0 34px; }
 .landing-page .landing-feature-photo img { height:165px; }
}
@media(max-width:365px) { .landing-page.landing-restored .landing-hero h1 { font-size:38px!important; } }

/* A single burgundy chapter separates the teaching approach from local reading. */
.landing-page #landing-work { background:var(--chapter-deep); color:#fff; }
.landing-page #landing-work :is(h2,h3) { color:#fff; }
.landing-page #landing-work :is(.landing-eyebrow,.landing-step) { color:#fff; }
.landing-page #landing-work :is(.landing-section-head>p,.landing-session-grid p,.landing-plan-note p,.landing-online-format p) { color:var(--chapter-copy); }
.landing-page #landing-work :is(article,.landing-plan-note) { border-color:var(--chapter-rule); }
.landing-page #landing-work :is(a,.landing-text-link) { color:#fff; text-decoration:underline; text-underline-offset:5px; }
.landing-page #landing-work .landing-text-link { text-decoration:none; }
.landing-page #landing-work .landing-text-link:is(:hover,:focus-visible),.landing-page .town-price .steps-cta a:is(:hover,:focus-visible) { text-decoration:underline; }
.landing-page #landing-work a:focus-visible { outline-color:#fff; }
.landing-page .landing-course-nav { display:flex; flex-wrap:wrap; gap:8px 24px; padding:19px 0; margin:0 auto 32px; max-width:1100px; border-block:1px solid var(--landing-line); }
.landing-page .landing-course-nav a { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:7px 0; font-size:14px; line-height:1.6; color:var(--maroon); text-decoration:none; text-underline-offset:5px; }
.landing-page .landing-course-nav a:is(:hover,:focus-visible) { text-decoration:underline; }
.landing-page .svc[id],.landing-page .landing-worked-example[id] { scroll-margin-top:100px; }
.landing-page .landing-route-note { max-width:620px; margin:18px 0 0; padding:13px 0 0; border-top:1px solid var(--landing-line); font-size:14px; line-height:1.75; color:var(--landing-muted); }
.landing-page .landing-route-note .landing-text-link { display:flex; width:fit-content; max-width:100%; font-size:14px; margin-top:3px; }
/* New search-entry evidence uses the same open, ruled reading language. */
.landing-page .landing-worked-example.sec { background:var(--accent-surface); border-block:1px solid var(--landing-line); }
.landing-page .landing-worked-example.sec>.landing-shell { width:100%; max-width:1100px; }
.landing-page .landing-worked-example .landing-section-head { display:grid; grid-template-columns:1.1fr 1fr; gap:65px; align-items:end; margin-bottom:31px; }
.landing-page .landing-worked-example .landing-section-head h2 { margin:0; }
.landing-page .landing-worked-example p { max-width:850px; color:var(--ink-soft); font-size:16px; line-height:1.85; margin:0 0 22px; overflow-wrap:anywhere; }
.landing-page .landing-worked-example .landing-example-note { color:var(--ink-muted); font-size:13px; line-height:1.8; }
.landing-page .landing-example-table { border-collapse:collapse; width:100%; table-layout:fixed; margin:28px 0; background:#fff; color:var(--ink); font-size:16px; line-height:1.6; }
.landing-page .landing-example-table caption { text-align:left; font-size:13px; line-height:1.7; padding:0 0 14px; color:var(--ink-muted); }
.landing-page .landing-example-table :is(th,td) { text-align:left; padding:17px 22px; border-bottom:1px solid var(--landing-line); vertical-align:top; }
.landing-page .landing-example-table th:first-child { width:55%; }
.landing-page .landing-example-table thead { background:var(--accent-strong); }
.landing-page .landing-example-table th { font-weight:500; }
.landing-page .landing-example-table abbr { text-decoration:none; }
.landing-page .landing-example-transfer { padding:20px 0 0; border-top:1px solid var(--line); }
.landing-page .landing-example-transfer strong { display:block; color:var(--maroon); font-weight:500; margin-bottom:8px; }
.landing-page aside.landing-worked-example { padding:26px 28px 6px; margin:29px 0; background:#fff; border-left:2px solid var(--maroon); }
.landing-page aside.landing-worked-example .landing-eyebrow { color:var(--maroon); font-size:12px; }
.landing-page aside.landing-worked-example h3 { margin:0 0 18px; }
.landing-page .landing-educator-fit.sec { background:#fff; }
.landing-page .landing-educator-fit>.landing-shell { width:100%; max-width:1100px; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr); gap:70px; }
.landing-page .landing-educator-fit article { display:grid; grid-template-columns:132px minmax(0,1fr); gap:28px; border-top:2px solid var(--maroon); padding-top:27px; }
.landing-page .landing-educator-fit picture { display:block; }
.landing-page .landing-educator-fit img { display:block; width:132px; height:156px; object-fit:cover; }
.landing-page .landing-educator-fit h3 { font-size:34px; line-height:1.15; margin:0 0 9px; }
.landing-page .landing-educator-copy p { font-size:16px; line-height:1.8; color:var(--landing-muted); margin:17px 0 0; }
.landing-page .landing-educator-copy .landing-educator-credential { color:var(--maroon); font-size:12.5px; margin:0; }
.landing-page .landing-educator-copy .landing-educator-note { font-size:13px; }
.landing-page .landing-educator-copy .landing-text-link { margin-top:20px; }
@media(max-width:850px) {
 .landing-page .landing-educator-fit>.landing-shell { grid-template-columns:1fr; gap:31px; }
 .landing-page .landing-educator-fit .landing-section-head { margin-bottom:0; }
 .landing-page .landing-worked-example .landing-section-head { gap:32px; }
}
@media(max-width:650px) {
 .landing-page .landing-course-nav { gap:5px 21px; margin-bottom:25px; padding:12px 0; }
 .landing-page .landing-route-note { font-size:13px; margin-top:14px; padding-top:10px; }
 .landing-page .landing-worked-example .landing-section-head { display:block; }
 .landing-page .landing-worked-example .landing-section-head h2 { margin-bottom:21px; }
 .landing-page .landing-example-table { font-size:14px; }
 .landing-page .landing-example-table :is(th,td) { padding:13px 10px; }
 .landing-page .landing-example-table th:first-child { width:50%; }
 .landing-page .landing-educator-fit article { grid-template-columns:88px minmax(0,1fr); gap:22px; padding-top:23px; }
 .landing-page .landing-educator-fit picture { grid-row:1/3; }
 .landing-page .landing-educator-copy { display:contents; }
 .landing-page .landing-educator-copy :is(h3,.landing-educator-credential) { grid-column:2; }
 .landing-page .landing-educator-copy h3 { align-self:end; margin-bottom:0; }
 .landing-page .landing-educator-copy :is(p:not(.landing-educator-credential),.landing-text-link) { grid-column:1/-1; margin-top:0; }
 .landing-page .landing-educator-fit img { width:88px; height:108px; }
 .landing-page .landing-educator-fit h3 { font-size:29px; }
 .landing-page aside.landing-worked-example { padding:23px 20px 3px; }
}
@media(max-width:365px) {
 .landing-page .landing-educator-fit article { grid-template-columns:74px minmax(0,1fr); gap:17px; }
 .landing-page .landing-educator-fit img { width:74px; height:92px; }
}
