/* Multi-language public brochure. Existing app screenshots remain real. */
:root{--paper:#f8f8f2;--leaf:#c9f08a;--ink:#202923;--muted:#526056;--line:#d9e0d5;--blue:#31553d;--radius:18px}
body{background:var(--paper)}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.topbar{background:#f8f8f2f5}.hero-next{background:#eff3e8;color:var(--ink);text-align:start;padding-block:52px 0;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center}.hero-next h1{font-size:clamp(42px,5.5vw,76px);line-height:1.5;letter-spacing:-2px}.hero-next h1 em{font-style:normal;color:#426b30}.hero-next .eyebrow{color:#426139}.hero-next .hero-description{color:var(--muted);font-size:21px;margin-top:16px}.hero-next .hero-actions{justify-content:start;gap:22px}.hero-next .text-link{color:var(--ink)}.hero-next .hero-note{color:var(--muted);font-size:13px}.btn{background:var(--leaf);border:1px solid #91af68}.btn:hover{background:#b9e179}.hero-showcase{position:relative;display:flex;justify-content:center;padding:12px 0 34px;min-width:0}.hero-showcase .app-screen{width:240px;transform:rotate(-4deg);box-shadow:0 18px 36px #23392824;border-radius:22px}.hero-showcase .app-screen a{border:6px solid #24342b;border-radius:22px}.hero-stamp{position:absolute;inset-inline-end:-6px;bottom:20px;display:flex;align-items:center;background:#fffdf5;border:1px solid var(--line);border-radius:22px;padding:8px 16px 8px 4px;box-shadow:0 8px 20px #20302110}.hero-stamp img{width:100px;height:100px;object-fit:contain}.hero-stamp span{font-size:15px}.hero-language-links{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;padding-block:26px;border-top:1px solid #cdd9c7}.hero-language-links a{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;min-height:60px;font-size:14px;border-radius:12px}.hero-language-links a:hover{background:#fff}.hero-language-links img{object-fit:contain;flex-shrink:0}.facts-band{background:#fffdf7}.facts strong{font-size:16px}.section{padding-block:80px}.section-heading h2{font-size:clamp(26px,3.2vw,40px)}.languages-band{background:#eaf0e3}.language-catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.language-card{background:#fffdf7;padding:28px;border:1px solid #ced9c7;border-radius:22px;display:flex;flex-direction:column;min-width:0}.language-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.language-card-top img{object-fit:contain}.publication-status{font-size:12px;color:#38532b;background:#edf3e8;padding:5px 10px;border-radius:8px}.language-card .native-name{text-align:start;margin-top:20px;color:var(--muted);font-size:15px}.language-card h3{font-size:24px;margin-block:4px 12px}.language-card>p:not(.native-name){font-size:14px;color:var(--muted);margin-bottom:16px}.language-card .text-link{margin-top:auto;font-size:14px;justify-content:space-between}.catalog-note{text-align:center;font-size:13px;color:var(--muted);margin-top:24px}.learning-tabs button,.explorer-panel,.start-steps li{border-radius:18px}.listening-band{background:#e9eee6}.media-grid>article{background:#fffdf7;border:1px solid var(--line);border-radius:22px;padding:24px}.media-heading{min-height:200px}.personal-band{background:#263e30;color:#f6f9f1}.personal-band p,.personal-band .feature-list span,.personal-band .fine-print{color:#dae5d8}.personal-band .eyebrow{color:var(--leaf)}.download-band{background:#e6eddb}.language-hero-next{background:#eaf0e3;padding-block:30px 60px}.language-hero-next .wrap>p{max-width:760px}.language-title-row{display:flex;align-items:center;gap:24px;margin-block:30px}.language-title-row h1{font-size:clamp(30px,4.2vw,54px)}.language-title-row img{object-fit:contain}.language-hero-next .hero-actions{justify-content:start}.status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0}.status-grid>div{border:1px solid var(--line);border-radius:18px;padding:22px;background:white}.status-grid dt{font-size:13px;color:var(--muted);margin-bottom:12px}.status-grid dd{margin:0;font-weight:700;font-size:16px}.learning-note{padding:32px;background:#e9f0df;border-radius:22px}.learning-note ol{padding-inline-start:24px}.learning-note li{padding-block:14px;border-bottom:1px solid #ced9c7}.module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.module-grid article{padding:24px;border:1px solid var(--line);border-radius:18px;background:#fffdf7}.module-grid p{font-size:14px;color:var(--muted);margin-top:12px}.footer{background:#f0f2e9}.footer-top nav{flex-wrap:wrap}.topnav a{min-height:44px}.horizontal-tabs{flex-wrap:wrap}
@media(max-width:1000px){.hero-grid{gap:28px}.hero-stamp{inset-inline-end:-8px}.hero-language-links{grid-template-columns:repeat(3,1fr)}.module-grid,.status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.language-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.topnav{gap:14px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.hero-next{padding-top:32px}.hero-grid{grid-template-columns:1fr;gap:16px}.hero-copy{text-align:center}.hero-next h1{font-size:44px;letter-spacing:-1px}.hero-next .hero-description{font-size:18px}.hero-next .hero-actions{justify-content:center;flex-wrap:wrap;gap:8px 20px}.hero-showcase .app-screen{width:185px}.hero-showcase{padding-bottom:28px}.hero-stamp{inset-inline-end:0;bottom:26px;padding:4px 10px 4px 0}.hero-stamp img{width:72px;height:72px}.hero-stamp span{font-size:12px}.hero-language-links{gap:4px;padding-block:16px}.hero-language-links a{flex-direction:column;gap:2px;font-size:12px}.hero-language-links img{width:42px;height:42px}.section{padding-block:48px}.language-catalog{grid-template-columns:1fr;gap:14px}.language-card{padding:22px}.language-card-top img{width:68px;height:68px}.language-card .native-name{margin-top:10px}.facts{gap:18px 12px}.facts strong{font-size:14px}.language-title-row{gap:12px;align-items:center}.language-title-row img{width:80px;height:80px}.status-grid,.module-grid{grid-template-columns:1fr}.language-hero-next{padding-bottom:36px}.media-heading{min-height:auto;margin-bottom:20px}.hero-next .btn{width:auto}.hero-language-links a{min-height:72px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.availability-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}.availability-list li{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-block:18px;border-bottom:1px solid var(--line)}.availability-list span{font-size:13px}.available{color:#315b2c}.pending{color:#62655b}.school-section{background:#fffdf7}.school-copy{display:flex;align-items:center;gap:40px}.school-copy>div{max-width:760px}.school-copy p{color:var(--muted);margin-top:18px}.school-copy .btn{flex-shrink:0}
@media(max-width:650px){.availability-list{grid-template-columns:1fr}.school-copy{flex-direction:column;align-items:start;gap:22px}}

.detail-text-only{grid-template-columns:1fr;max-width:850px}.detail-text-only .topic-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:650px){.detail-text-only .topic-list{grid-template-columns:1fr}}

.language-hero-next,.language-hero-next h1,.language-hero-next .text-link{color:var(--ink)}.language-hero-next p,.language-hero-next .breadcrumbs,.language-hero-next .breadcrumbs a{color:var(--muted)}.language-hero-next .eyebrow{color:#426139}

/* Contrast and intrinsic-size audit: light surfaces must not inherit dark-theme ink. */
.topbar{background:#f8f8f2}
.listening-band{color:var(--ink)}
.listening-band .eyebrow{color:#31553d}
.listening-band .section-heading p,.media-grid p{color:var(--muted)}
.media-grid h3{color:var(--ink)}
.footer{color:var(--ink)}
.footer-top>.brand{color:var(--ink)}
.footer-top>p,.footer-top nav a,.footer-bottom{color:var(--muted)}
.footer-bottom{border-color:#b7c3b4;font-size:12px}
.footer-top nav a{display:inline-flex;align-items:center;min-height:44px}
.wrap,.hero-copy,.hero-showcase,.detail-layout>*,.explorer-panel>*,.learning-layout>*,.download-inner>*,.footer-top>*{min-width:0}
.btn,.text-link{max-width:100%;overflow-wrap:anywhere}
.language-card-top{flex-wrap:wrap}
.horizontal-tabs{flex-wrap:wrap;align-items:stretch}
.horizontal-tabs button{flex:0 1 auto;min-inline-size:100px;min-height:48px;white-space:nowrap;padding:10px 20px;line-height:1.7}
.media-grid p{min-height:0}
.media-heading{min-height:0}
.media-grid .app-screen{max-width:100%}
.download-action{min-width:0;width:100%}
.download-action .btn{min-width:0;width:min(100%,300px);gap:12px}
.download-action>span{font-size:14px}
.status-grid dd,.availability-list strong,.availability-list span{overflow-wrap:anywhere}
@media(max-width:800px){.topbar-inner{flex-wrap:wrap}.footer-top{gap:20px}.footer-top nav{gap:4px 20px}}
@media(max-width:650px){
 .horizontal-tabs{gap:8px}
 .horizontal-tabs button{flex:1 1 96px;min-inline-size:96px;padding:10px 12px;font-size:14px}
 .media-grid article{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding:24px}
 .media-heading{margin-bottom:0}
 .media-grid h3{font-size:23px;line-height:1.8}
 .media-grid p{font-size:16px;line-height:2}
 .media-heading .eyebrow{font-size:13px}
 .media-grid .app-screen{width:min(210px,100%);margin:0 auto}
 .listening-band .section-heading p,.section-heading p{font-size:16px}
 .download-inner{grid-template-columns:64px minmax(0,1fr);gap:16px}
 .download-inner>img{width:64px;height:64px;object-fit:contain}
 .download-inner h2{font-size:24px;line-height:1.8}
 .download-inner p{font-size:14px;line-height:1.9}
 .download-action{grid-column:1/-1}
 .footer-top>p{font-size:15px;line-height:2}
 .footer-top nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px;font-size:14px}
 .footer-top nav a{min-width:0;padding-block:8px;overflow-wrap:anywhere}
 .footer-bottom p{font-size:13px;line-height:2}
 .topbar-inner>.btn{max-width:40%}
}
@media(forced-colors:active){.listening-band,.media-grid h3,.media-grid p,.listening-band .eyebrow,.listening-band .section-heading p,.footer,.footer-top>.brand,.footer-top>p,.footer-top nav a,.footer-bottom{color:CanvasText}}

@media(min-width:651px) and (max-width:1000px){.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.app-screen img{aspect-ratio:auto}
@media(min-width:651px){.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Editorial surfaces: one hierarchy for the brochure, without extra script. */
:root{--sheet:#fffdf7;--tint:#e9f1e2;--quiet:#f0f3ea;--edge:#d2decc;--deep:#213b2e;--soft-shadow:0 12px 38px #213b2e12}
.hero-next{background:radial-gradient(ellipse at 18% 45%,#d6e8c9 0,transparent 60%),#eff3e8}
.hero-showcase{isolation:isolate}
.hero-showcase::before{content:"";position:absolute;inset:9% 10%;border:1px solid #7e9b7655;border-radius:50%;z-index:-1;pointer-events:none}
.hero-showcase .app-screen{transform:rotate(-2deg)}
.hero-stamp{z-index:1}
.facts-band{background:var(--sheet)}
.facts p{padding-inline:12px}
.section-heading{margin-block-end:clamp(24px,4vw,44px)}
.section-heading h2{line-height:1.5}
#inside .learning-panels,#practice .explorer-panel{background:var(--quiet);border:1px solid var(--edge);border-radius:26px}
.learning-tabs button{border-radius:16px}
.learning-tabs button[aria-selected=true]{background:var(--tint);border-color:#8aa981}
.language-catalog{gap:14px}
.language-card{position:relative;border-radius:24px;box-shadow:0 2px 0 #25372b08}
.language-card:focus-within{outline:2px solid var(--blue);outline-offset:3px}
.language-card .text-link::after{content:"";position:absolute;inset:0;border-radius:inherit}
.language-card .publication-status{font-variant-numeric:tabular-nums}
.school-section .school-copy{padding:clamp(20px,4vw,44px);border:1px solid var(--edge);border-radius:28px;background:var(--tint)}
.school-section .school-copy p{margin-block-start:10px}
.media-grid>article{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;background:var(--sheet);container-type:inline-size}
.media-grid .app-screen{margin:0 auto;width:min(190px,100%)}
@media(min-width:651px){.media-grid>article{grid-template-columns:minmax(0,1fr) minmax(0,.84fr);align-items:center}}
@media(min-width:651px) and (max-width:940px){.media-grid>article{grid-template-columns:minmax(0,1fr)}}
@container (max-width:330px){.media-grid .media-heading h3{font-size:20px}.media-grid .media-heading p{font-size:15px}}
.personal-screens .app-screen{filter:drop-shadow(0 10px 20px #10231955)}
.gallery-preview{grid-template-columns:repeat(3,minmax(0,1fr));max-width:690px;margin-inline:auto;padding-block-start:0}
.gallery-preview .app-screen{min-width:0}
.gallery-preview figcaption{font-size:13px}
.gallery-disclosure{background:var(--sheet);border:1px solid var(--edge);border-radius:20px;padding-inline:clamp(12px,3vw,28px)}
.start-steps li,.faq-group details{background:var(--sheet);border:1px solid var(--edge);border-radius:18px;padding:20px}
.faq-group details{padding:0 16px;margin-block:8px}
.faq-group details:first-child{border:1px solid var(--edge)}
.faq-group details[open]{background:var(--quiet);border-color:#9ab294}
.start-steps li>span{display:inline-grid;place-items:center;width:42px;height:42px;background:var(--tint);border-radius:50%;font-size:20px}
.download-inner{padding:clamp(16px,3vw,32px);border-radius:24px;background:#f2f7e9;border:1px solid var(--edge)}
.language-hero-next{background:radial-gradient(ellipse at 80% 35%,#d5e6cc 0,transparent 68%),#edf2e8}
.course-overview .status-grid>div{border-block-start:3px solid #a2bd8f;background:var(--sheet)}
.module-grid article{border-radius:22px;border-block-start:3px solid #9fb78e}
.module-grid article:nth-child(2n){background:var(--quiet)}
.language-switch-section{text-align:center;background:#eff3ea;padding-block:clamp(36px,6vw,68px)}
.language-orbit{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(4px,1.4vw,12px);width:min(100%,432px);margin-inline:auto}
.language-orbit a{min-width:0;min-height:44px;aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--edge);border-radius:18px;background:var(--sheet)}
.language-orbit img{width:min(78%,48px);height:auto}
.language-orbit [aria-current=page]{border:2px solid #3c633f;background:#dcead1}
.pricing-hero{background:radial-gradient(ellipse at top,#dae8d2,transparent 76%),var(--quiet)}
.plans .plan{border-radius:24px;background:var(--sheet);box-shadow:var(--soft-shadow)}
.plans .plan-featured{background:#ebf4e5;border-color:#5d8c59}
.plan-heading,.plan-quote,.plan-includes{min-width:0}
.plan-quote .plan-price strong{font-variant-numeric:tabular-nums}
.plan .btn-block{align-self:end}
@supports(grid-template-rows:subgrid){@media(min-width:801px){.plans .plan{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:14px}}}
@media(max-width:650px){.facts p{padding-inline:0}.gallery-preview figcaption{font-size:11px}.gallery-preview{gap:8px}.language-orbit a{border-radius:12px}.download-inner{padding:16px}}
@media(max-width:330px){.language-orbit{gap:3px}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .language-card,.language-orbit a{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
 .language-card:hover,.language-orbit a:hover{transform:translateY(-3px);border-color:#8ba683;box-shadow:var(--soft-shadow)}
}

/* Keep native scrollbar sizing and system colors in forced-color modes. */
@media (forced-colors: none){html{scrollbar-color:#52764c #eef3e8}}

/* Reserve breathing room inside the bordered practice and hero cards. */
#practice .explorer-panel{padding:clamp(18px,3.2vw,38px);gap:clamp(20px,4vw,48px)}
.hero-stamp{padding-inline:12px;gap:6px}
@media(max-width:650px){#practice .explorer-panel{grid-template-columns:minmax(0,1fr);min-height:0}.hero-stamp{padding-inline:10px}}

/* Keep the hero content on a common axis and isolate language direction. */
.language-hero-next{padding-block:clamp(24px,4vw,48px) clamp(40px,7vw,76px);
 background:radial-gradient(ellipse at 50% 20%,#dcead2,transparent 72%),#edf2e8;text-align:center}
.language-hero-next .breadcrumbs{justify-content:center;flex-wrap:wrap;margin-block-end:clamp(18px,3vw,30px)}
.language-identity{display:inline-flex;align-items:center;gap:10px;padding:5px 12px;
 border:1px solid #a9bea1;border-radius:999px;background:#f8fbf3;color:#36533e;font-weight:700}
.language-identity img{width:38px;height:38px;object-fit:contain}
.language-hero-next h1{font-size:clamp(30px,5vw,57px);line-height:1.4;max-width:24ch;
 margin:14px auto 0;text-wrap:balance}
.language-hero-next .language-intro{max-width:min(100%,55ch);margin:12px auto 0;line-height:1.95;text-wrap:pretty}
.language-hero-next .hero-actions{justify-content:center;flex-wrap:wrap;gap:8px 20px;margin-block-start:22px}
.hero-next h1{font-size:clamp(34px,5.2vw,72px);line-height:1.35;text-wrap:balance}
.hero-next h1 em{display:block}
.hero-next .hero-description{max-width:50ch;line-height:1.9;text-wrap:pretty}
.pricing-hero .lead{max-width:54ch;margin-inline:auto;text-wrap:pretty}
#sample-lesson bdi{unicode-bidi:isolate}
#sample-lesson .learning-note li p{margin:0}
#sample-lesson .learning-note li p+p{margin-block-start:4px}
#sample-lesson .faq-group details p{padding-block-end:12px}
@media(max-width:650px){.hero-next .hero-description{margin-inline:auto}.language-hero-next .language-intro{font-size:15px}}

/* Flags are decorative and requested only at desktop widths. */
.hero-flag{display:none}
@media(min-width:901px){
 .language-hero-next{position:relative;isolation:isolate;overflow:hidden;text-align:start;
  padding-block:clamp(30px,4vw,52px) clamp(48px,7vw,92px);
  background:linear-gradient(110deg,#e9f2e3,#f3f6ed)}
 .hero-flag{display:block;position:absolute;z-index:-1;inset-block:0;inset-inline-end:0;width:50%;
  background-position:center;background-size:cover;background-repeat:no-repeat;pointer-events:none;
  opacity:.84;-webkit-mask-image:linear-gradient(to right,#000 5%,#000 52%,transparent 100%);
  mask-image:linear-gradient(to right,#000 5%,#000 52%,transparent 100%)}
 .language-hero-next .language-hero-wrap{padding-inline-end:47%;position:relative}
 .language-hero-next .breadcrumbs,.language-hero-next .hero-actions{justify-content:start}
 .language-hero-next h1,.language-hero-next .language-intro{margin-inline:0}
 .language-hero-next h1{font-size:clamp(34px,4.25vw,58px);text-wrap:balance}
 .language-hero-next .language-intro{max-width:48ch}
 .language-hero-next .language-identity img{display:none}
 .language-hero-next .language-identity{padding:3px 13px}
 .hero-flag--en{background-image:url("hero-flags/en.73855993f072.webp")}
 .hero-flag--fr{background-image:url("hero-flags/fr.202eb12bf87c.webp")}
 .hero-flag--de{background-image:url("hero-flags/de.82152641ebcf.webp")}
 .hero-flag--tr{background-image:url("hero-flags/tr.feb7b0b58b52.webp")}
 .hero-flag--es{background-image:url("hero-flags/es.168e45a05262.webp")}
 .hero-flag--it{background-image:url("hero-flags/it.4debb2f075e8.webp")}
}
@media(forced-colors:active){.hero-flag{display:none}}
