/* Public Langues only: the subscriber's practice-first workspace stays unchanged. */
body.language-page[data-language-access="public"] { --atlas-night:#102c43; --atlas-cream:#fff9eb; --catalog-background:#fbf9f3; background:#fbf9f3; }
.language-page[data-language-access="public"] .language-main { padding-top:18px !important; }
.language-page[data-language-access="public"] .language-wrap { width:min(100%,1220px); padding:0 30px; }
.atlas-hero { position:relative; isolation:isolate; display:grid; grid-template-columns:1.05fr 1fr; background:var(--atlas-night); color:var(--atlas-cream); border-radius:24px; overflow:hidden; min-height:480px; }
.atlas-hero__copy { position:relative; z-index:2; padding:44px 0 30px 38px; align-self:center; }
.language-wrap .atlas-eyebrow { display:flex; align-items:center; gap:10px; color:#e7cf9a; font-size:12px; letter-spacing:.04em; margin:0 0 22px; }
.atlas-eyebrow>span { font-size:20px; }
.language-wrap .atlas-hero h1 { color:var(--atlas-cream); font-size:clamp(36px,3.3vw,52px); line-height:1.13; font-weight:550; letter-spacing:-.045em; }
.atlas-hero h1 em { display:inline-block; color:var(--language-warm); font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.045em; padding-top:5px; }
.language-wrap .atlas-lead { max-width:400px; color:#d3dfe5; font-size:15px; line-height:1.8; margin:22px 0; }
.atlas-actions { display:flex; align-items:flex-start; flex-direction:column; gap:6px; scroll-margin-top:30px; }
.atlas-hero .atlas-start,.atlas-offer .language-button { color:var(--atlas-night) !important; background:#f3d997; border-color:#f3d997; border-radius:10px; font-size:13px; min-height:50px; padding:13px 18px; gap:14px; box-shadow:0 6px 18px #071d3426; }
.atlas-hero .atlas-start:hover,.atlas-offer .language-button:hover { background:#ffe9b8; border-color:#ffe9b8; }
.atlas-hero .atlas-placement { color:#e1eaf0; font-size:12px; font-weight:500; text-decoration-color:#8297a5; }
.language-wrap .atlas-access { color:#c3d0d9; font-size:11px; margin:4px 0 0; }
.atlas-access a { display:inline-flex; align-items:center; min-height:36px; color:#e8d09a; margin-left:12px; }
.atlas-hero :focus-visible,.atlas-offer :focus-visible { outline-color:#ffe1a1; }
.atlas-hero__scene { position:relative; min-width:0; }
.atlas-landscape { position:absolute; inset:0; margin:0; }
.atlas-landscape::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,var(--atlas-night),transparent 38%),linear-gradient(0deg,#102c4366,transparent 45%); pointer-events:none; }
.atlas-landscape .language-identity-image { width:100%; height:100%; object-fit:cover; object-position:56% 50%; animation:atlas-arrive .5s ease-out both; }
.atlas-landscape figcaption { position:absolute; z-index:1; top:28px; right:28px; text-align:right; color:#fff9eb; text-shadow:0 2px 12px #102c43,0 1px 3px #102c43; }
.atlas-landscape figcaption>span { display:block; font:italic 44px/1.2 Georgia,serif; }
.atlas-landscape figcaption small { display:inline-block; background:#102c43d9; border-radius:20px; padding:5px 10px; margin-top:10px; font-size:10px; text-shadow:none; }
.atlas-first-word { position:absolute; z-index:1; bottom:30px; right:28px; width:220px; border-radius:14px; padding:18px 22px; background:#fffaf0; color:#20334c; box-shadow:0 18px 40px #05162745; transform:rotate(-3deg); }
.language-wrap .atlas-first-word>p { display:flex; align-items:center; justify-content:space-between; margin:0 0 12px; font-size:10px; color:#536174; }
.atlas-first-word>p>span { border:1px solid #d0d9dd; border-radius:5px; padding:1px 5px; color:#244f8f; }
.atlas-first-word>strong { display:block; font:400 32px/1.2 Georgia,serif; overflow-wrap:anywhere; }
.atlas-word-meaning,.atlas-word-reading { display:block; font-size:12px; line-height:1.5; margin-top:7px; }
.atlas-word-reading { color:#536174; }
.atlas-word-route { display:flex; gap:5px; margin-top:18px; }
.atlas-word-route i { width:22px; height:3px; border-radius:2px; background:#d6dedb; }
.atlas-word-route i:first-child { background:#244f8f; }
.atlas-destinations { padding:28px 0 34px; }
.atlas-destinations__heading { display:flex; justify-content:space-between; align-items:baseline; gap:16px; margin-bottom:16px; }
.language-wrap .atlas-destinations h2 { font-size:19px; letter-spacing:-.025em; }
.language-wrap .atlas-destinations__heading p { font-size:11px; color:var(--language-muted); margin:0; }
.atlas-language-grid { display:grid; grid-template-columns:repeat(9,minmax(0,1fr)); gap:10px; }
.atlas-language { display:flex; flex-direction:column; min-width:0; padding:4px 4px 10px; border:1px solid transparent; border-radius:12px; text-decoration:none; transition:background .18s,border-color .18s,transform .18s; }
.atlas-language:hover { background:#fff; border-color:var(--language-line); transform:translateY(-3px); }
.atlas-language[aria-current="true"] { background:#fff; border-color:var(--language-green); box-shadow:0 3px 9px #102c430b; }
.atlas-language__image { position:relative; display:block; }
.atlas-language img { width:100%; height:auto; aspect-ratio:1.55; object-fit:cover; border-radius:8px; display:block; }
.atlas-language strong { color:var(--language-ink); font-size:11px; margin-top:9px; font-weight:650; }
.atlas-language small { color:var(--language-muted); font-size:10px; line-height:1.6; }
.atlas-language strong,.atlas-language small { padding:0 3px; }
.atlas-language__check { position:absolute; bottom:5px; right:5px; display:grid; place-items:center; width:18px; height:18px; border-radius:50%; background:var(--language-green); color:white; font-size:11px; box-shadow:0 0 0 2px #fff; }
.language-wrap .atlas-destinations__note { font-size:11px; color:var(--language-muted); margin:14px 0 0; }
.language-page[data-language-access="public"] .language-entry-steps { margin:0 0 40px; border-block:1px solid var(--language-line); border-radius:0; background:none; padding:16px 0; }
.language-page[data-language-access="public"] .language-level-guide { padding:40px 0; border-top:0; }
.language-page[data-language-access="public"] .language-section-heading h2,.atlas-previews h2 { font-size:clamp(28px,2.5vw,38px); letter-spacing:-.04em; }
.atlas-comparison-controls { display:flex; gap:8px; margin:22px 0 0; }
.atlas-comparison-controls button { min-height:46px; padding:10px 18px; border:1px solid var(--language-line); border-radius:30px; color:var(--language-green); background:#fff; font-size:13px; }
.atlas-comparison-controls button[aria-pressed="true"] { background:var(--language-green); border-color:var(--language-green); color:#fff; }
.language-page[data-language-access="public"] .language-level-comparison { margin-top:16px; }
.language-page[data-language-access="public"] .language-level-example { position:relative; border-radius:18px; padding:28px; }
.language-page[data-language-access="public"] .language-level-comparison[data-enhanced] { display:block; }
.language-page[data-language-access="public"] .language-level-comparison[data-enhanced] .language-level-example { min-height:310px; padding:28px 34px; }
.language-page[data-language-access="public"] .language-comparison-sentence { font:25px/1.6 Georgia,serif; max-width:850px; }
.language-page[data-language-access="public"] .language-comparison-sentence[dir="rtl"] { font-family:Tahoma,Arial,sans-serif; line-height:1.9; }
.atlas-comparison-demo { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:4px 18px; }
.atlas-comparison-demo p { color:var(--language-muted); font-size:12px; }
.language-page[data-language-access="public"] .language-workspace { padding-top:42px; }
.language-page[data-language-access="public"] .language-levels { position:relative; gap:12px; padding-top:12px; margin:24px 0 30px; }
.language-page[data-language-access="public"] .language-levels::before { content:''; position:absolute; height:1px; background:var(--language-line); top:33px; left:10%; right:10%; }
.language-page[data-language-access="public"] .language-level { position:relative; padding:0 10px 14px; border:0; background:transparent; text-align:center; border-radius:12px; }
.language-page[data-language-access="public"] .language-level strong { position:relative; display:grid; place-items:center; width:44px; height:44px; margin:0 auto 12px; background:#fbf9f3; border:1px solid var(--language-line); border-radius:50%; font-size:17px; transition:background .2s,color .2s; }
.language-page[data-language-access="public"] .language-level[aria-pressed="true"] { padding:0 10px 14px; background:var(--language-soft); box-shadow:0 0 0 1px var(--language-line); }
.language-page[data-language-access="public"] .language-level[aria-pressed="true"] strong { color:#fff; background:var(--language-green); border-color:var(--language-green); box-shadow:0 0 0 5px #fbf9f3; }
.language-page[data-language-access="public"] .language-next { border-radius:20px; }
.language-page[data-language-access="public"] .language-method { padding-block:46px; }
.atlas-previews { padding:42px 0 12px; scroll-margin-top:24px; }
.atlas-preview-intro { max-width:660px; color:var(--language-muted); font-size:14px; }
.atlas-preview-tabs { display:flex; gap:8px; margin:24px 0 16px; }
.atlas-preview-tabs button { display:flex; align-items:center; gap:10px; flex:1; min-height:54px; padding:12px 16px; text-align:left; border:1px solid var(--language-line); border-radius:12px; background:transparent; color:var(--language-muted); font-size:13px; }
.atlas-preview-tabs b { font-weight:500; font-size:11px; }
.atlas-preview-tabs button[aria-selected="true"] { color:var(--language-ink); background:#fff; border-color:var(--language-green); }
.atlas-preview-panel { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:24px; align-items:center; background:#fff; border:1px solid var(--language-line); border-radius:20px; padding:28px; margin-top:16px; }
.atlas-preview-copy h3 { font-size:24px; }
.atlas-preview-copy p { font-size:13px; color:var(--language-muted); }
.atlas-preview-copy .atlas-preview-number { color:var(--language-green); font:italic 38px/1 Georgia,serif; }
.atlas-preview-panel figure { margin:0; min-width:0; }
.atlas-preview-panel img { display:block; width:100%; height:auto; border:1px solid #e2e6e2; border-radius:10px; background:#fafbf7; }
.atlas-preview-panel figcaption { color:var(--language-muted); font-size:10px; margin-top:10px; }
.language-wrap .atlas-preview-note { font-size:11px; color:var(--language-muted); }
.language-page[data-language-access="public"] .atlas-offer { background:var(--atlas-night); color:#d3dfe5; padding:34px; border:0; border-radius:20px; margin-top:24px; }
.atlas-offer h2 { color:var(--atlas-cream); }
.atlas-offer .language-eyebrow { color:#edcf96; }
.atlas-offer .language-access-note { color:#d3dfe5; }
.atlas-offer p,.atlas-offer ul { color:#d3dfe5; }
.atlas-offer ul { padding-left:19px; }
.atlas-landscape .language-identity-caption { color:#fff9eb; }
.atlas-completion { border:1px solid var(--language-line); background:var(--language-soft); border-radius:14px; padding:20px; margin-top:24px; }
.atlas-completion h3 { font-size:20px; margin:0; }
.atlas-completion p { font-size:13px; }
.atlas-completion .language-link { display:block; margin-top:8px; }
@keyframes atlas-arrive { from { opacity:.5; transform:scale(1.025); } to { opacity:1; transform:scale(1); } }
@media (min-width:1800px) { .atlas-hero { min-height:510px; } }
@media (max-width:1150px) and (min-width:851px) {
  .language-page[data-language-access="public"] .language-wrap { padding:0 24px; }
  .atlas-hero { grid-template-columns:1.2fr 1fr; min-height:470px; }
  .atlas-hero__copy { padding:28px 0 24px 26px; }
  .language-wrap .atlas-hero h1 { font-size:36px; }
  .atlas-hero .atlas-start { font-size:12px; padding:12px; gap:8px; }
  .atlas-first-word { width:180px; right:18px; }
  .atlas-language-grid { gap:4px; }
  .atlas-language strong { font-size:10px; }
}
@media (max-width:850px) {
  .language-page[data-language-access="public"] .language-main { padding-top:14px !important; }
  .language-page[data-language-access="public"] .language-wrap { padding:0 22px; }
  .atlas-hero { min-height:445px; }
  .atlas-hero__copy { padding:30px 0 26px 26px; }
  .language-wrap .atlas-hero h1 { font-size:36px; }
  .language-wrap .atlas-lead { font-size:14px; }
  .atlas-first-word { width:180px; right:20px; }
  .atlas-language-grid { grid-template-columns:repeat(9,minmax(0,1fr)); gap:3px; }
  .atlas-language strong { font-size:10px; padding:0; }
  .atlas-language small { font-size:9px; padding:0; }
  .atlas-destinations__heading { display:block; }
  .language-wrap .atlas-destinations__heading p { margin-top:6px; }
}
/* The fixed 280 px navigation remains open on tablets: use the available content width. */
@media (max-width:1050px) {
  .language-page[data-language-access="public"] .language-wrap { padding:0 16px; }
  .atlas-hero { grid-template-columns:1fr; min-height:0; border-radius:18px; }
  .atlas-hero__copy { padding:24px 24px 14px; }
  .language-wrap .atlas-eyebrow { font-size:10px; margin-bottom:14px; }
  .language-wrap .atlas-hero h1 { font-size:clamp(29px,8.6vw,43px); }
  .language-wrap .atlas-lead { margin:16px 0; font-size:13px; line-height:1.7; }
  .atlas-actions { gap:1px; }
  .atlas-hero .atlas-start { width:100%; font-size:12px; padding:12px 10px; gap:10px; }
  .atlas-hero .atlas-placement { font-size:11px; text-align:left; min-height:42px; }
  .atlas-access a { margin-left:8px; }
  .language-wrap .atlas-access { font-size:10px; margin:0; }
  .atlas-hero__scene { height:174px; }
  .atlas-landscape .language-identity-image { object-position:50% 46%; }
  .atlas-landscape::after { background:linear-gradient(180deg,var(--atlas-night),transparent 55%); }
  .atlas-landscape figcaption { left:20px; right:auto; top:30px; text-align:left; }
  .atlas-landscape figcaption>span { font-size:30px; }
  .atlas-landscape figcaption small { font-size:8px; margin-top:6px; padding:4px 7px; }
  .atlas-first-word { bottom:20px; right:20px; width:140px; padding:12px 14px; border-radius:10px; transform:rotate(-4deg); }
  .language-wrap .atlas-first-word>p { font-size:9px; margin-bottom:6px; }
  .atlas-first-word>strong { font-size:25px; }
  .atlas-word-meaning,.atlas-word-reading { font-size:10px; margin-top:4px; }
  .atlas-word-route { margin-top:10px; gap:4px; }
  .atlas-word-route i { width:16px; }
  .atlas-language-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  .atlas-language { padding:4px 4px 8px; }
  .atlas-language img { aspect-ratio:2; }
  .atlas-language strong { font-size:12px; padding:0 3px; margin-top:6px; }
  .atlas-language small { font-size:11px; padding:0 3px; }
  .atlas-destinations { padding-block:24px; }
  .language-wrap .atlas-destinations h2 { max-width:290px; font-size:21px; }
  .language-page[data-language-access="public"] .language-entry-steps { margin-bottom:8px; }
  .language-page[data-language-access="public"] .language-section-heading h2,.atlas-previews h2 { font-size:28px; }
  .language-page[data-language-access="public"] .language-level-guide { padding-block:32px; }
  .atlas-comparison-controls { gap:6px; }
  .atlas-comparison-controls button { flex:1; font-size:11px; padding:10px 8px; }
  .language-page[data-language-access="public"] .language-level-comparison[data-enhanced] .language-level-example { min-height:430px; padding:22px; }
  .language-page[data-language-access="public"] .language-comparison-sentence { font-size:21px; }
  .language-page[data-language-access="public"] .language-levels { gap:4px; }
  .language-page[data-language-access="public"] .language-level,.language-page[data-language-access="public"] .language-level[aria-pressed="true"] { padding:0 3px 12px; }
  .language-page[data-language-access="public"] .language-level span { font-size:10px; }
  .language-page[data-language-access="public"] .language-level small { font-size:8px; }
  .atlas-preview-tabs { gap:5px; }
  .atlas-preview-tabs button { display:block; padding:10px 6px; text-align:center; font-size:10px; min-height:58px; }
  .atlas-preview-tabs b { display:block; margin-bottom:2px; }
  .atlas-preview-panel { grid-template-columns:1fr; padding:20px; gap:12px; }
  .atlas-preview-copy .atlas-preview-number { font-size:28px; margin:0 0 10px; }
  .atlas-preview-copy h3 { font-size:23px; }
  .language-page[data-language-access="public"] .atlas-offer { padding:26px; }
  .atlas-completion { padding:16px; }
}
@media (min-width:601px) and (max-width:1150px) {
  .atlas-language-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  .atlas-language img { aspect-ratio:2; max-height:78px; }
  .atlas-language strong { font-size:12px; }
  .atlas-language small { font-size:11px; }
}
@media (prefers-reduced-motion:reduce) { .atlas-landscape .language-identity-image { animation:none; } .atlas-language,.language-page[data-language-access="public"] .language-level strong { transition:none; } }
@media (forced-colors:active) { .atlas-hero,.atlas-offer,.atlas-first-word { border:1px solid CanvasText; } .atlas-language[aria-current="true"],.atlas-preview-tabs button[aria-selected="true"] { border:2px solid Highlight; } .atlas-landscape::after { display:none; } }
