/* Circuit Atelier. Layout is driven by data-layout, never by window width alone. */
:root {
 --paper:#f7f9f5;--paper-2:#edf1e9;--card:#fff;--ink:#17231d;--ink-2:#536258;--ink-3:#647166;
 --forest:#0b2119;--forest-2:#133d2c;--mint:#a9dcc2;--emerald:#16714e;--accent:#176a4c;--accent-deep:#145338;
 --accent-wash:#e9f1e8;--accent-line:#c8d8c8;--line:#dce3d9;--line-strong:#b9c8b7;--gold:#816832;--champagne:#d4ba85;
 --font-display:'Sora','Be Vietnam Pro',sans-serif;--font-body:'Be Vietnam Pro','Segoe UI',sans-serif;
 --shadow-2:0 16px 40px -24px #0b21192b;--night:#0b2119;--lime:#a9dcc2;--cream:#f7f9f5;
 --display-font:'Sora','Be Vietnam Pro',sans-serif;--body-font:var(--font-body);--frame-gutter:clamp(28px,4.8cqw,88px);
}
html {scroll-behavior:smooth;scroll-padding-top:160px;}
body {background:#091a12;color:var(--ink);font-size:14px;overflow-x:clip;}
button,a,input {touch-action:manipulation;}
button,a {color:inherit;}
[hidden] {display:none!important;}
:focus-visible {outline:2px solid var(--emerald);outline-offset:5px;}
.sr-only {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.experience-viewport {width:100%;}
.site-frame {position:relative;width:100%;min-width:0;container-type:inline-size;container-name:atelier;background:var(--paper);margin-inline:auto;}
:root[data-view-mode='mobile'] .site-frame {max-width:440px;box-shadow:0 0 0 1px #ffffff16,0 32px 80px #0004;}
:root[data-desktop-preview='true'] .experience-viewport {height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain;}
:root[data-desktop-preview='true'] .site-frame {width:1120px;min-width:1120px;}
:root[data-desktop-preview='true'] .site-header {top:0;}
:root[data-desktop-preview='true'] .tabs {top:88px;}
.view-toolbar {position:sticky;top:0;height:40px;z-index:100;background:#081a12;color:#c4d3c4;border-bottom:1px solid #ffffff16;font-size:10px;}
.view-toolbar-inner {height:100%;max-width:1680px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding-inline:24px;}
.view-brand {font-size:11px;font-weight:600;letter-spacing:.1em;}
.view-brand>span {font-size:8px;color:#9db7a7;font-weight:400;letter-spacing:.16em;margin-left:8px;}
.layout-picker {position:relative;}
.layout-picker summary {display:flex;align-items:center;gap:9px;list-style:none;cursor:pointer;min-height:36px;padding-inline:10px;font-size:10px;}
.layout-picker summary::-webkit-details-marker {display:none;}
.layout-picker svg {width:16px;height:16px;display:block;}
.layout-options {position:absolute;right:0;top:calc(100% + 6px);width:260px;background:#102d21;border:1px solid #66846c;border-radius:12px;padding:6px;box-shadow:0 18px 60px #0006;}
.layout-options button {width:100%;display:flex;align-items:center;gap:14px;padding:12px;text-align:left;border:1px solid transparent;border-radius:7px;color:#e9efe5;background:transparent;cursor:pointer;font-size:12px;}
.layout-options button>span:nth-child(2) {flex:1;}
.layout-options small {display:block;font-size:9px;color:#b1c3b3;margin-top:4px;}
.layout-options button[aria-checked='true'] {background:#224b35;border-color:#497b58;}
.layout-options button:hover {background:#244632;}
.layout-check {opacity:0;color:var(--mint);}
[aria-checked='true']>.layout-check {opacity:1;}
.wrap {width:100%;max-width:1680px;margin-inline:auto;padding-inline:var(--frame-gutter);}
.skip-link {position:fixed;left:16px;top:-100px;z-index:150;padding:12px 18px;background:var(--mint);color:var(--forest);border-radius:5px;}
.skip-link:focus {top:8px;}
.site-header {position:sticky;top:40px;z-index:50;background:#0b2119;border-bottom:1px solid #c0dcc521;backdrop-filter:none;transition:background 180ms;}
.site-header-inner {display:flex;align-items:center;min-height:88px;gap:24px;padding-block:0;}
.has-scrolled .site-header {background:#0c281d;}
.brand {display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--paper);flex-shrink:0;}
.brand-bk {width:32px;height:37px;}
.brand-copy {display:block;}
.brand-name {display:block;font-family:var(--font-body);font-size:17px;font-weight:600;letter-spacing:-.04em;line-height:1.5;color:var(--paper);}
.brand-period {color:var(--mint);}
.brand-sub {display:block;font-size:7px;letter-spacing:.22em;font-weight:400;color:#a8bda9;margin-top:3px;}
.desktop-nav {display:flex;align-items:center;justify-content:center;gap:clamp(12px,1.6cqw,30px);margin-left:auto;}
.desktop-nav button {font-size:11px;font-weight:400;position:relative;white-space:nowrap;border:0;background:none;color:#c8d5c5;cursor:pointer;min-height:44px;padding:4px 0;}
.desktop-nav button::after {content:'';position:absolute;bottom:4px;left:0;right:0;height:1px;background:var(--mint);transform:scaleX(0);transform-origin:left;transition:transform 180ms;}
.desktop-nav button:hover,.desktop-nav button.is-active {color:#fff;}
.desktop-nav button.is-active::after,.desktop-nav button:hover::after {transform:scaleX(1);}
.header-actions {display:flex;gap:7px;align-items:center;margin-left:10px;}
.icon-button {display:inline-grid;place-items:center;flex-shrink:0;width:42px;height:42px;border:1px solid #b0cbb02b;border-radius:50%;background:none;color:var(--paper);cursor:pointer;font-size:26px;transition:border-color 180ms,background 180ms;}
.icon-button svg {width:19px;height:19px;}
.icon-button:hover {background:#d5e4cd10;border-color:#b5d9b376;}
.atelier-hero {position:relative;min-height:min(880px,calc(100svh - 128px));background:#0b2119;overflow:clip;isolation:isolate;color:var(--paper);}
.hero-grain {position:absolute;inset:0;pointer-events:none;z-index:2;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.7' fill='%23fff' d='M0 0h120v120H0z'/%3E%3C/svg%3E");}
.atelier-hero::after {content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0b2119 0%,#0b2119d9 26%,#0b211900 69%),linear-gradient(0deg,#0b2119 0%,#0b211900 18%);z-index:0;}
.atelier-hero-inner {position:relative;z-index:3;min-height:inherit;display:flex;flex-direction:column;padding-block:36px 28px;pointer-events:none;}
.atelier-hero-inner button,.atelier-hero-inner a {pointer-events:auto;}
.hero-kicker {display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.16em;font-weight:500;color:#c8daca;}
.status-dot {width:5px;height:5px;background:var(--mint);border-radius:50%;}
.hero-volume {color:#a6b7a9;margin-left:14px;font-size:8px;}
.hero-copy {position:relative;padding-top:clamp(45px,5.6cqw,98px);padding-bottom:40px;}
.hero-edition {font-size:8px;font-weight:400;letter-spacing:.14em;color:#a6c0ac;margin:0 0 20px;}
.atelier-hero h1 {font-family:var(--font-display);font-size:clamp(84px,9.5cqw,160px);font-weight:600;line-height:1.16;letter-spacing:-.085em;margin:0;position:relative;}
.atelier-hero h1>span {display:block;}
.title-mint {color:var(--mint);}
.title-period {color:var(--champagne);}
.hero-subtitle {color:#bdcebd;font-size:13px;line-height:1.85;margin:24px 0 0;max-width:360px;}
.hero-actions {display:flex;align-items:center;gap:30px;margin-top:30px;}
.atelier-cta {display:inline-flex;align-items:center;justify-content:space-between;gap:42px;min-height:50px;border:1px solid var(--mint);border-radius:4px;background:var(--mint);color:var(--forest);padding:14px 22px;font-size:12px;font-weight:500;cursor:pointer;text-decoration:none;transition:background 180ms,box-shadow 180ms;}
.atelier-cta:hover {background:#c1ead2;box-shadow:0 0 0 5px #a9dcc20c;}
.atelier-cta>span {font-size:20px;line-height:1;transition:transform 180ms;}
.atelier-cta:hover>span {transform:translate(2px,-2px);}
.hero-secondary {color:#e0e9d9;font-size:10px;text-decoration:none;padding:12px 0;border-bottom:1px solid #bfd1bc50;display:flex;gap:24px;}
.hero-art {position:absolute;z-index:0;inset:0 -10% 0 25%;margin:0;pointer-events:none;}
.hero-art img {width:100%;height:100%;object-fit:contain;object-position:right center;display:block;}
.hero-baseline {display:flex;align-items:end;justify-content:space-between;gap:24px;margin-top:auto;padding-top:20px;border-top:1px solid #cadcbb24;font-size:8px;letter-spacing:.09em;line-height:1.8;color:#bccbb8;}
.hero-baseline>span:first-child>span {font-size:7px;color:#a1b6a3;}
.hero-credit {font-size:9px;letter-spacing:0;}
.signature-name {font-family:var(--font-script);font-weight:700;color:var(--champagne);font-size:19px;}
.scroll-cue {display:flex;gap:18px;align-items:center;color:#c4d4bf;text-decoration:none;font-size:7px;letter-spacing:.1em;}
.scroll-cue>span {display:grid;place-items:center;width:30px;height:30px;border:1px solid #d7e1ce40;border-radius:50%;font-size:14px;}
.section-eyebrow {display:flex;justify-content:space-between;align-items:center;color:var(--emerald);font-size:9px;font-weight:500;letter-spacing:.12em;margin-bottom:28px;}
.tiny-signal {font-family:Georgia,serif;font-size:38px;line-height:1;color:#849e80;}
.atelier-welcome {padding-block:80px 64px;}
.welcome-layout {display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:start;}
.welcome-layout h2,.section-heading h2 {font-size:clamp(34px,3.65cqw,58px);font-family:var(--font-display);font-weight:500;letter-spacing:-.065em;line-height:1.3;color:var(--forest);}
.welcome-layout h2>span,.section-heading h2>span {color:#789078;}
.welcome-copy {padding-top:4px;max-width:430px;}
.welcome-copy p {font-size:13px;color:var(--ink-2);line-height:1.95;}
.welcome-copy strong {font-weight:500;color:var(--ink);}
.welcome-copy .welcome-note {font-size:11px;padding-left:20px;border-left:1px solid var(--line-strong);margin-top:22px;color:var(--ink-3);}
.hero-stats {display:grid;grid-template-columns:repeat(5,1fr);max-width:none;margin:56px 0 0;border-top:1px solid var(--line-strong);padding-top:28px;gap:20px;}
.stat {display:flex;flex-direction:column;text-align:left;border:0;border-left:1px solid var(--line);padding:0 24px;}
.stat:first-child {padding-left:0;border-left:0;}
.stat-num {font-family:var(--font-display);font-size:42px;font-weight:400;line-height:1.3;letter-spacing:-.07em;color:var(--forest);font-variant-numeric:tabular-nums;}
.stat-label {font-size:10px;color:var(--ink-2);margin-top:9px;}
.library-section {background:#e9eee5;padding-block:66px 74px;}
.section-heading {display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:34px;}
.section-heading .section-eyebrow {margin-bottom:18px;}
.section-heading>p {font-size:11px;color:var(--ink-2);line-height:1.9;padding-bottom:5px;}
.library-grid {display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-template-rows:auto auto;gap:16px;}
.library-card {position:relative;min-width:0;min-height:204px;text-align:left;border:1px solid #d4dfd0;border-radius:8px;background:var(--paper);padding:24px;display:flex;flex-direction:column;overflow:hidden;cursor:pointer;isolation:isolate;transition:border-color 220ms,box-shadow 220ms;}
.library-card:first-child {grid-row:span 2;background:var(--forest);border-color:var(--forest);color:var(--paper);}
.library-card:nth-child(4) {background:#dbe6d5;}
.library-card:nth-child(6) {grid-column:1/-1;min-height:145px;background:#dddcc9;}
.library-card-top {display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:9px;color:var(--ink-2);position:relative;z-index:2;}
.library-card-top>.i {height:18px;width:18px;}
.library-card:first-child .library-card-top {color:#bfd3b8;}
.library-card h3 {font-family:var(--font-display);font-size:24px;letter-spacing:-.05em;font-weight:500;color:var(--forest);line-height:1.4;margin-top:auto;padding-top:45px;position:relative;z-index:2;}
.library-card:first-child h3 {font-size:36px;color:var(--mint);}
.library-card p {font-size:10px;line-height:1.7;color:var(--ink-2);position:relative;z-index:2;max-width:190px;margin-top:8px;}
.library-card:first-child p {color:#bfceba;}
.library-card>span:last-child {position:absolute;bottom:24px;right:24px;width:30px;height:30px;display:grid;place-items:center;border:1px solid #6e896d55;border-radius:50%;font-size:17px;color:var(--emerald);transition:transform 180ms;}
.library-card:first-child>span:last-child {color:var(--mint);border-color:#a9dcc24d;}
.library-card:hover {border-color:var(--emerald);box-shadow:0 8px 30px #0b211910;}
.library-card:hover>span:last-child {transform:rotate(-35deg);}
.library-cover {position:absolute;width:180px;height:120px;right:-12px;top:28px;color:#71936a;opacity:.28;transition:transform 400ms;z-index:0;}
.library-card:first-child .library-cover {width:360px;height:260px;top:42px;right:-80px;opacity:.5;color:#b8d8ab;}
.library-card:nth-child(6) .library-cover {right:20px;top:4px;width:240px;}
.library-card:hover .library-cover {transform:scale(1.035);}
.chapter-explore {padding-block:76px;}
.chapter-explore-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.chapter-preview {text-align:left;position:relative;border:0;border-top:1px solid var(--line-strong);background:none;padding:24px 0 0;cursor:pointer;color:var(--forest);min-width:0;}
.chapter-preview>span:first-child {font-size:66px;font-family:var(--font-display);letter-spacing:-.08em;font-weight:400;line-height:1.2;color:#a0b79b;transition:color 180ms;}
.chapter-preview>span:nth-child(2) {float:right;font-size:10px;color:var(--ink-2);margin-top:12px;}
.chapter-preview h3 {font-size:16px;font-weight:500;margin-top:22px;}
.chapter-preview p {font-size:11px;color:var(--ink-2);line-height:1.7;margin-top:10px;max-width:240px;padding-right:18px;}
.chapter-preview>span:last-child {display:inline-block;margin-top:20px;font-size:11px;color:var(--emerald);}
.chapter-preview:hover>span:first-child {color:var(--emerald);}
.atelier-daily {display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:50px;border-block:1px solid var(--line);padding-block:28px;}
.daily-quote p {font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:18px;color:var(--forest);line-height:1.7;margin-top:8px;}
.micro-label {font-size:8px;font-weight:400;letter-spacing:.1em;color:var(--ink-2);display:block;}
.daily-time time,.daily-visits>span:last-child {font-size:17px;font-variant-numeric:tabular-nums;font-family:var(--font-mono);color:var(--forest);display:block;margin-top:12px;}
.tabs {position:sticky;top:128px;z-index:40;background:var(--paper);border-block:0;border-bottom:1px solid var(--line-strong);backdrop-filter:none;}
.tabs-inner {display:flex;justify-content:space-between;gap:24px;overflow:auto;}
.tab-btn {background:none;border:0;border-bottom:2px solid transparent;color:var(--ink-2);font-size:12px;font-weight:500;padding:21px 0 19px;border-radius:0;min-height:64px;white-space:nowrap;}
.tab-btn .i {width:17px;height:17px;}
.tab-btn.is-active {background:none;color:var(--emerald);border-color:var(--emerald);}
main {padding-block:44px 72px;background:var(--paper);min-height:40vh;scroll-margin-top:200px;}
#content {scroll-margin-top:128px;}
#toc {scroll-margin-top:210px;}
.reader-eyebrow {margin-bottom:28px;font-size:8px;}
.content-tools {display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:34px;}
.content-index {font-size:9px;letter-spacing:.09em;color:var(--ink-2);text-transform:uppercase;}
.study-search {display:flex;align-items:center;width:340px;max-width:100%;gap:12px;border:1px solid var(--line-strong);background:var(--card);border-radius:5px;padding:5px 12px;}
.study-search label {display:flex;color:var(--emerald);}
.study-search svg {width:17px;height:17px;}
.study-search input {font-size:12px;width:100%;min-width:0;border:0;background:transparent;color:var(--ink);padding:9px 0;}
.study-search input:focus {outline:none;}
.study-search:focus-within {outline:2px solid var(--emerald);outline-offset:2px;}
.study-search button {border:0;background:none;color:var(--ink-2);min-width:40px;min-height:36px;cursor:pointer;}
.search-feedback {font-size:12px;color:var(--ink-2);padding-bottom:24px;}
.search-empty {border:1px dashed var(--line-strong);padding:40px 24px;text-align:center;margin-bottom:24px;border-radius:8px;font-size:13px;color:var(--ink-2);}
.lt-overview {display:flex;align-items:end;justify-content:space-between;gap:24px;padding:0 0 32px;border:0;border-radius:0;background:none;box-shadow:none;margin-bottom:0;}
.lt-overview-title,.section-title {font-family:var(--font-display);font-size:32px;font-weight:500;letter-spacing:-.06em;line-height:1.4;color:var(--forest);}
.lt-overview-desc,.section-desc {font-size:12px;color:var(--ink-2);line-height:1.9;margin-top:12px;max-width:560px;}
.section-desc {margin-bottom:30px;}
.section-title::after,.lt-overview-meter {display:none;}
.lt-overline {font-size:8px;letter-spacing:.12em;color:var(--emerald);margin-bottom:12px;}
.lt-overline-mark {background:var(--emerald);}
.lt-stats {display:flex;gap:24px;flex-shrink:0;}
.lt-stat-pill,.lt-stat-pill.is-success {border:0;border-left:1px solid var(--line);padding:0 0 0 20px;border-radius:0;background:none;display:flex;align-items:start;flex-direction:column;}
.lt-stat-num {font-family:var(--font-display);font-weight:400;color:var(--forest);font-size:25px;}
.lt-stat-label {font-size:8px;color:var(--ink-2);}
.toc-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;}
.toc-chapter {background:var(--card);border:1px solid var(--line);border-radius:8px;padding:24px 24px 10px;box-shadow:none;content-visibility:visible;min-width:0;transition:border-color 180ms;}
.toc-chapter:hover {border-color:#9fb59b;}
.toc-chapter-head {display:flex;align-items:center;gap:18px;padding:0 0 20px;margin-bottom:4px;border-color:var(--line);position:relative;}
.toc-chapter-num {font-family:var(--font-display);font-size:34px;font-weight:400;letter-spacing:-.06em;color:#789a70;}
.toc-chapter-title {font-size:18px;font-family:var(--font-display);font-weight:500;color:var(--forest);}
.toc-chapter-badge {font-size:9px;border:0;background:var(--accent-wash);color:var(--emerald);border-radius:3px;padding:4px 7px;letter-spacing:0;white-space:nowrap;}
.chapter-toggle {display:none;}
.toc-sec {min-height:67px;gap:12px;padding:13px 2px;border-radius:3px;}
.toc-sec:hover {background:var(--accent-wash);}
.toc-sec-num {font-size:10px;color:var(--emerald);}
.toc-sec-title {font-size:13px;font-weight:500;color:var(--ink);line-height:1.75;}
.toc-sec-anno {font-size:9px;color:var(--gold);margin-top:4px;}
.toc-sec-icons {color:var(--ink-3);display:flex;gap:5px;}
.toc-sec-icons .i {width:12px;height:12px;}
.toc-sec-meta {color:var(--ink-2);font-size:9px;}
.toc-sec-arrow {color:var(--emerald);}
.group-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.group-section {margin-bottom:42px;}
.group-header {font-family:var(--font-display);font-size:24px;font-weight:500;letter-spacing:-.04em;border-bottom:1px solid var(--line);padding-bottom:16px;color:var(--forest);}
.group-header::before {background:var(--emerald);height:1px;width:24px;}
.group-subhead {font-size:12px;margin-block:24px 16px;color:var(--ink-2);}
.group-note {font-size:12px;line-height:1.85;padding:20px;border:1px solid #d9d6b8;border-left:3px solid var(--champagne);border-radius:5px;background:#f1f0e2;}
.file-card {position:relative;padding:24px;min-height:152px;align-items:start;border:1px solid var(--line);border-radius:7px;background:var(--card);box-shadow:none;gap:16px;transition:border-color 180ms,box-shadow 180ms;}
.file-card::after {content:'↗';position:absolute;bottom:16px;right:18px;color:var(--emerald);font-size:17px;}
.file-card:hover {transform:none;border-color:var(--emerald);box-shadow:var(--shadow-2);}
.file-card[aria-disabled='true'] {cursor:default;}
.file-card[aria-disabled='true']::after {content:'—';}
.file-icon {width:36px;height:42px;border:1px solid var(--line);background:var(--paper-2);color:var(--emerald);border-radius:5px;}
.file-title {font-weight:500;font-size:13px;line-height:1.7;color:var(--forest);}
.file-name {font-size:10px;color:var(--ink-2);overflow-wrap:anywhere;margin-top:8px;}
.file-status {font-size:9px;color:var(--emerald);margin-top:16px;}
.file-status.is-missing {color:var(--gold);}
.hw-card {padding:28px;border:1px solid var(--line);border-radius:8px;background:var(--card);box-shadow:none;margin-bottom:24px;}
.hw-title {font-family:var(--font-display);font-weight:500;font-size:23px;letter-spacing:-.05em;color:var(--forest);padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:24px;}
.hw-title-num {font-size:32px;font-weight:400;color:#789a70;}
.hw-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.hw-block {background:var(--paper);padding:18px;border-radius:0 5px 5px 0;border-color:var(--line-strong);}
.hw-block-label {font-size:9px;letter-spacing:.03em;color:var(--ink-2);}
.hw-block-link {font-size:13px;line-height:1.85;color:var(--forest);}
.hw-block-file {font-size:10px;color:var(--ink-2);overflow-wrap:anywhere;}
.quiz-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.quiz-card {padding:24px;border:1px solid var(--line);border-radius:8px;background:var(--card);box-shadow:none;}
.quiz-card-title {font-family:var(--font-display);font-size:16px;font-weight:500;letter-spacing:-.03em;border-color:var(--line);padding-bottom:16px;color:var(--forest);}
.problem-row {padding:18px 0;background:none;border-radius:0;border-bottom:1px solid var(--line);}
.problem-row:last-child {border:0;}
.problem-name {font-size:13px;}
.problem-note {font-size:11px;line-height:1.8;color:var(--ink-2);}
.btn-link {background:var(--paper);border-color:var(--line);border-radius:4px;min-height:38px;padding:8px 12px;font-size:10px;}
.btn {border-radius:4px;font-size:12px;min-height:44px;}
.btn-primary {background:var(--forest);border:1px solid var(--forest);color:var(--paper);}
.btn-primary:hover {background:var(--forest-2);}
.btn-secondary {background:var(--paper);border-color:var(--line-strong);color:var(--forest);}
.lt-toolbar {gap:16px;margin-bottom:24px;}
.lt-breadcrumb {gap:8px;flex-wrap:wrap;min-width:0;}
.lt-crumb {font-size:11px;}
.lt-secnav-btn {border-radius:4px;min-height:42px;background:var(--card);font-size:11px;}
.lt-resource-layout {grid-template-columns:280px minmax(0,1fr);gap:24px;}
.lt-res-sidebar {background:var(--card);border:1px solid var(--line);border-radius:8px;box-shadow:none;top:214px;position:sticky;}
.lt-res-header {padding:24px 20px;background:var(--forest);border-radius:7px 7px 0 0;}
.lt-res-section-meta {font-size:9px;color:var(--mint);}
.lt-res-section-title {font-family:var(--font-display);font-size:22px;font-weight:500;letter-spacing:-.04em;color:var(--paper);line-height:1.5;}
.lt-res-header .lt-card-anno {color:#ddc68d;}
.lt-res-list {padding:12px;gap:6px;}
.lt-res-item {padding:14px 9px;border-radius:4px;}
.lt-res-item.is-active {background:var(--accent-wash);border-color:#b8cdb4;}
.lt-res-icon,.lt-res-item.is-active .lt-res-icon {border-radius:5px;background:var(--paper-2);color:var(--emerald);}
.lt-res-label {font-size:12px;color:var(--forest);}
.lt-res-name {font-size:10px;}
.lt-res-viewer {min-width:0;border-radius:8px;border:1px solid var(--line);box-shadow:none;background:var(--paper-2);}
.lt-viewer-toolbar {padding:18px 20px;background:var(--card);border-color:var(--line);gap:16px;flex-wrap:wrap;}
.lt-viewer-title {font-size:12px;min-width:0;flex-wrap:wrap;}
.lt-viewer-fname {font-size:10px;overflow-wrap:anywhere;white-space:normal;}
.lt-viewer-frame {height:73vh;min-height:540px;border:0;background:var(--paper-2);}
.lt-viewer-empty {color:var(--ink-2);min-height:380px;}
body[data-study-view='reader'] .content-tools {display:none;}
.section-header {padding-block:20px 32px;border-bottom:1px solid var(--line);margin-bottom:32px;}
.section-meta {font-size:10px;color:var(--emerald);}
.section-detail-title {font-family:var(--font-display);font-size:clamp(30px,3.5cqw,50px);font-weight:500;line-height:1.4;letter-spacing:-.06em;color:var(--forest);}
.doc-block {padding:28px;background:var(--card);border:1px solid var(--line);border-radius:8px;box-shadow:none;margin-bottom:28px;}
.doc-block h3 {font-family:var(--font-display);font-weight:500;font-size:24px;letter-spacing:-.04em;color:var(--forest);}
.doc-block .filename {font-size:11px;color:var(--ink-2);margin-block:14px 20px;overflow-wrap:anywhere;}
.pdf-frame {height:75vh;min-height:480px;border:1px solid var(--line);border-radius:4px;background:var(--paper-2);}
.placeholder-msg {font-size:13px;color:var(--ink-2);padding:24px;background:var(--paper-2);}
.section-nav {border-top:1px solid var(--line);padding-top:24px;gap:16px;}
.section-nav .btn {min-width:0;}
.not-found {padding:70px 0;}
.not-found-code {color:#71956c;font-weight:400;letter-spacing:-.08em;}
.not-found h2 {font-weight:500;letter-spacing:-.05em;}
.error-banner {border:1px solid #d8bab4;border-radius:5px;background:#f4e9e6;color:#813f39;}
.site-footer {margin-top:0;content-visibility:visible;background:var(--forest);border-top:1px solid #a9dcc252;overflow:hidden;}
.footer-grid {display:grid;grid-template-columns:1.3fr .7fr 1fr 1.2fr;gap:44px;padding-block:60px 32px;}
.footer-grid-3 {grid-template-columns:1.3fr 1fr 1.2fr;}
.footer-col-stage {grid-column:auto;}
.footer-bk {width:32px;height:36px;}
.footer-title {font-size:23px;font-family:var(--font-display);font-weight:500;letter-spacing:-.06em;color:var(--paper);line-height:1.4;}
.footer-sub {font-size:9px;color:#b6c6b2;}
.footer-sub .signature-name {font-size:17px;}
.footer-desc,.footer-lines {font-size:11px;color:#b6c6b2;line-height:1.9;}
.footer-head {font-size:8px;letter-spacing:.15em;color:#b2cda7;}
.footer-nav {gap:0;}
.footer-nav button {font-size:11px;color:#c6d4bf;min-height:34px;}
.footer-nav button::before {background:#7ca075;}
.footer-nav button:hover {color:var(--mint);}
.footer-quote {font-family:'Playfair Display',Georgia,serif;font-size:14px;color:#d1d9bf;line-height:1.8;text-align:left;}
.footer-quote-mark {font-size:22px;color:var(--champagne);}
.footer-pcb {opacity:.7;}
.footer-pcb .pcb-trace path,.footer-pcb .pcb-comp path,.footer-pcb .pcb-comp circle,.footer-pcb .pcb-comp rect {stroke:#a9c397;}
.footer-ghost {margin-top:10px;height:auto;}
.footer-ghost span {font-family:var(--font-display);font-size:clamp(60px,11cqw,180px);font-weight:500;letter-spacing:-.08em;opacity:1;color:#b4d39d0f;line-height:1.3;transform:none;}
.site-footer-bottom {background:none;border-color:#bcd4a72e;padding-block:8px;}
.footer-bottom-inner {font-size:9px;color:#b6c4ad;gap:16px;}
.footer-bottom-right {gap:16px;flex-wrap:wrap;}
.footer-logout {font-size:10px;color:#c5d2b8;}
.footer-top {font-size:9px;background:none;border-color:#c7d8b93b;color:#c5d2b8;}
.footer-top:hover {background:#b4d39d0a;color:#fff;}
.atelier-menu {position:fixed;inset:0 0 0 auto;margin:0;width:min(470px,100%);max-width:100%;height:100dvh;max-height:100dvh;background:#0e2b1f;color:var(--paper);border:0;border-left:1px solid #a9dcc24d;padding:28px 32px;overflow:auto;}
.atelier-menu::backdrop {background:#020d08a6;}
.menu-top {display:flex;align-items:center;justify-content:space-between;margin-bottom:38px;}
.menu-top .micro-label {color:var(--mint);}
.atelier-menu h2 {font-family:var(--font-display);font-size:38px;letter-spacing:-.06em;line-height:1.4;font-weight:500;margin-bottom:30px;}
.atelier-menu nav>button {display:flex;width:100%;align-items:center;gap:20px;padding:20px 0;border:0;border-top:1px solid #c7d8b930;background:none;color:#f7f9f5;font-size:18px;letter-spacing:-.02em;text-align:left;cursor:pointer;}
.atelier-menu nav>button>span:first-child {font-size:9px;color:#aecaa5;font-family:var(--font-mono);}
.atelier-menu nav>button>span:last-child {margin-left:auto;color:var(--mint);}
.menu-bottom {display:flex;justify-content:space-between;font-size:11px;margin-top:36px;padding-bottom:24px;}
.menu-bottom a {color:#c5d6be;text-decoration:none;}
.mobile-bottom-nav {display:none;}
.reveal {opacity:1;transform:none;}
.reveal.is-visible,.atelier-visible {animation:atelier-enter 650ms cubic-bezier(.22,1,.36,1) both;}
.hero-copy {animation:atelier-enter 750ms cubic-bezier(.22,1,.36,1) both;}
@keyframes atelier-enter {from{opacity:.35;transform:translateY(18px);}to{opacity:1;transform:none;}}
/* True mobile layout, including when explicitly chosen on a desktop. */
:root[data-layout='mobile'] {--frame-gutter:22px;scroll-padding-top:120px;}
:root[data-layout='mobile'] .view-toolbar-inner {padding-inline:14px;}
:root[data-layout='mobile'] .site-frame {padding-bottom:76px;}
:root[data-layout='mobile'] .site-header {top:40px;}
:root[data-layout='mobile'] .site-header-inner {min-height:66px;gap:14px;}
:root[data-layout='mobile'] .brand {gap:10px;}
:root[data-layout='mobile'] .brand-name {font-size:15px;}
:root[data-layout='mobile'] .brand-bk {width:27px;height:31px;}
:root[data-layout='mobile'] .brand-sub {font-size:6px;display:block;letter-spacing:.18em;}
:root[data-layout='mobile'] .desktop-nav {display:none;}
:root[data-layout='mobile'] .header-actions {margin-left:auto;gap:7px;}
:root[data-layout='mobile'] .icon-button {width:38px;height:38px;}
:root[data-layout='mobile'] .atelier-hero {min-height:535px;}
:root[data-layout='mobile'] .atelier-hero-inner {padding-block:22px 20px;min-height:535px;}
:root[data-layout='mobile'] .hero-kicker {font-size:8px;gap:7px;}
:root[data-layout='mobile'] .hero-volume {font-size:7px;margin-left:auto;}
:root[data-layout='mobile'] .hero-copy {padding-top:40px;padding-bottom:26px;}
:root[data-layout='mobile'] .hero-edition {font-size:6px;letter-spacing:.1em;margin-bottom:16px;}
:root[data-layout='mobile'] .atelier-hero h1 {font-size:clamp(50px,14.9cqw,67px);line-height:1.2;letter-spacing:-.075em;}
:root[data-layout='mobile'] .hero-art {inset:20% -48% -4% -5%;opacity:.65;}
:root[data-layout='mobile'] .hero-art img {object-position:center;object-fit:cover;}
:root[data-layout='mobile'] .atelier-hero::after {background:linear-gradient(90deg,#0b2119f2,#0b21194d 100%),linear-gradient(0deg,#0b2119 0%,#0b211900 35%);}
:root[data-layout='mobile'] .hero-subtitle {font-size:12px;line-height:1.8;margin-top:18px;max-width:250px;}
:root[data-layout='mobile'] .hero-actions {gap:20px;flex-wrap:wrap;margin-top:24px;}
:root[data-layout='mobile'] .atelier-cta {font-size:11px;min-height:48px;padding:12px 18px;gap:25px;}
:root[data-layout='mobile'] .hero-secondary {font-size:9px;gap:12px;padding-block:10px;}
:root[data-layout='mobile'] .hero-baseline {gap:12px;font-size:7px;align-items:end;padding-top:14px;}
:root[data-layout='mobile'] .hero-baseline>span:first-child>span {font-size:6px;}
:root[data-layout='mobile'] .hero-credit {font-size:7px;text-align:right;}
:root[data-layout='mobile'] .hero-credit .signature-name {display:block;font-size:18px;}
:root[data-layout='mobile'] .scroll-cue {display:none;}
:root[data-layout='mobile'] .atelier-welcome {padding-block:38px 36px;}
:root[data-layout='mobile'] .section-eyebrow {font-size:8px;letter-spacing:.08em;margin-bottom:20px;}
:root[data-layout='mobile'] .welcome-layout {grid-template-columns:1fr;gap:22px;}
:root[data-layout='mobile'] .welcome-layout h2,:root[data-layout='mobile'] .section-heading h2 {font-size:31px;line-height:1.35;letter-spacing:-.06em;}
:root[data-layout='mobile'] .welcome-copy p {font-size:12px;line-height:1.9;}
:root[data-layout='mobile'] .welcome-note {display:none;}
:root[data-layout='mobile'] .hero-stats {grid-template-columns:repeat(3,1fr);gap:22px 10px;margin-top:28px;padding-top:22px;}
:root[data-layout='mobile'] .stat {padding-left:14px;padding-right:0;}
:root[data-layout='mobile'] .stat:nth-child(4) {border-left:0;padding-left:0;}
:root[data-layout='mobile'] .stat-num {font-size:32px;}
:root[data-layout='mobile'] .stat-label {font-size:8px;margin-top:6px;}
:root[data-layout='mobile'] .library-section {padding-block:32px 36px;}
:root[data-layout='mobile'] .section-heading {display:block;margin-bottom:24px;}
:root[data-layout='mobile'] .section-heading>p {display:none;}
:root[data-layout='mobile'] .section-heading .section-eyebrow {margin-bottom:14px;}
:root[data-layout='mobile'] .library-grid {display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:10px;}
:root[data-layout='mobile'] .library-card {padding:16px;min-height:146px;border-radius:7px;}
:root[data-layout='mobile'] .library-card:first-child {grid-column:span 2;grid-row:auto;min-height:174px;}
:root[data-layout='mobile'] .library-card:nth-child(6) {grid-column:span 2;min-height:110px;}
:root[data-layout='mobile'] .library-card-top {font-size:8px;}
:root[data-layout='mobile'] .library-card h3 {font-size:16px;padding-top:28px;}
:root[data-layout='mobile'] .library-card:first-child h3 {font-size:27px;}
:root[data-layout='mobile'] .library-card p {font-size:8px;max-width:110px;margin-top:5px;}
:root[data-layout='mobile'] .library-card:first-child p {max-width:200px;}
:root[data-layout='mobile'] .library-card>span:last-child {width:24px;height:24px;bottom:13px;right:13px;font-size:14px;}
:root[data-layout='mobile'] .library-card .library-cover {width:120px;height:100px;top:20px;right:-18px;}
:root[data-layout='mobile'] .library-card:first-child .library-cover {width:210px;height:150px;top:8px;right:-10px;}
:root[data-layout='mobile'] .library-card:nth-child(6) .library-cover {right:20px;top:0;width:180px;}
:root[data-layout='mobile'] .chapter-explore {padding-block:36px;}
:root[data-layout='mobile'] .chapter-explore-grid {grid-template-columns:1fr;gap:0;}
:root[data-layout='mobile'] .chapter-preview {display:grid;grid-template-columns:54px 1fr 38px;gap:0 14px;padding:18px 0;border-top:1px solid var(--line);align-items:center;}
:root[data-layout='mobile'] .chapter-preview>span:first-child {grid-row:1/3;font-size:35px;}
:root[data-layout='mobile'] .chapter-preview>span:nth-child(2) {grid-column:2;grid-row:2;float:none;font-size:9px;margin-top:5px;}
:root[data-layout='mobile'] .chapter-preview h3 {grid-column:2;grid-row:1;font-size:13px;margin:0;}
:root[data-layout='mobile'] .chapter-preview p {display:none;}
:root[data-layout='mobile'] .chapter-preview>span:last-child {grid-column:3;grid-row:1/3;font-size:0;margin:0;}
:root[data-layout='mobile'] .chapter-preview>span:last-child::after {content:'↗';font-size:21px;}
:root[data-layout='mobile'] .atelier-daily {grid-template-columns:1fr 1fr;gap:22px;padding-block:24px;}
:root[data-layout='mobile'] .daily-quote {grid-column:1/-1;}
:root[data-layout='mobile'] .daily-quote p {font-size:17px;}
:root[data-layout='mobile'] .micro-label {font-size:7px;}
:root[data-layout='mobile'] .daily-time time,:root[data-layout='mobile'] .daily-visits>span:last-child {font-size:15px;margin-top:8px;}
:root[data-layout='mobile'] .tabs {position:relative;top:auto;border:0;padding-top:24px;}
:root[data-layout='mobile'] .tabs-inner {justify-content:start;gap:8px;padding-bottom:8px;scrollbar-width:none;}
:root[data-layout='mobile'] .tab-btn {font-size:10px;padding:10px 13px;border:1px solid var(--line-strong);border-radius:4px;min-height:40px;gap:7px;}
:root[data-layout='mobile'] .tab-btn .i {width:13px;height:13px;}
:root[data-layout='mobile'] .tab-btn.is-active {color:var(--paper);background:var(--forest);border-color:var(--forest);}
:root[data-layout='mobile'] #content {scroll-margin-top:110px;}
:root[data-layout='mobile'] main {padding-block:20px 40px;scroll-margin-top:114px;}
:root[data-layout='mobile'] #toc {scroll-margin-top:120px;}
:root[data-layout='mobile'] .reader-eyebrow {display:none;}
:root[data-layout='mobile'] .content-tools {display:flex;flex-direction:column;align-items:stretch;gap:14px;padding-bottom:26px;}
:root[data-layout='mobile'] .content-index {font-size:8px;}
:root[data-layout='mobile'] .study-search {width:100%;}
:root[data-layout='mobile'] .study-search input {font-size:16px;}
:root[data-layout='mobile'] .lt-overview {display:block;padding-bottom:22px;}
:root[data-layout='mobile'] .lt-overview-title,:root[data-layout='mobile'] .section-title {font-size:26px;}
:root[data-layout='mobile'] .lt-overline {font-size:7px;}
:root[data-layout='mobile'] .lt-overview-desc,:root[data-layout='mobile'] .section-desc {font-size:11px;line-height:1.85;}
:root[data-layout='mobile'] .lt-stats {gap:24px;margin-top:20px;}
:root[data-layout='mobile'] .lt-stat-pill,:root[data-layout='mobile'] .lt-stat-pill.is-success {padding-left:15px;}
:root[data-layout='mobile'] .lt-stat-pill:first-child {padding-left:0;border-left:0;}
:root[data-layout='mobile'] .lt-stat-num {font-size:22px;}
:root[data-layout='mobile'] .lt-stat-label {font-size:7px;}
:root[data-layout='mobile'] .toc-grid {grid-template-columns:1fr;gap:12px;}
:root[data-layout='mobile'] .toc-chapter {padding:18px 16px 6px;border-radius:7px;}
:root[data-layout='mobile'] .toc-chapter-head {gap:11px;padding-bottom:14px;}
:root[data-layout='mobile'] .toc-chapter-num {font-size:28px;}
:root[data-layout='mobile'] .toc-chapter-title {font-size:15px;}
:root[data-layout='mobile'] .toc-chapter-badge {font-size:7px;padding:4px 5px;margin-left:auto;}
:root[data-layout='mobile'] .chapter-toggle {display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:4px;background:var(--paper-2);color:var(--forest);font-size:19px;cursor:pointer;flex-shrink:0;}
:root[data-layout='mobile'] .chapter-toggle::before {content:'−';}
:root[data-layout='mobile'] .is-collapsed .chapter-toggle::before {content:'+';}
:root[data-layout='mobile'] .toc-chapter.is-collapsed .toc-sec-list {display:none;}
:root[data-layout='mobile'] .toc-chapter.is-collapsed .toc-chapter-head {border-bottom:0;padding-bottom:7px;}
:root[data-layout='mobile'] .toc-sec {padding-block:13px;min-height:64px;gap:9px;}
:root[data-layout='mobile'] .toc-sec-num {font-size:9px;}
:root[data-layout='mobile'] .toc-sec-title {font-size:12px;}
:root[data-layout='mobile'] .toc-sec-icons {display:none;}
:root[data-layout='mobile'] .toc-sec-meta {font-size:8px;}
:root[data-layout='mobile'] .toc-sec-anno {font-size:8px;}
:root[data-layout='mobile'] .group-grid,:root[data-layout='mobile'] .quiz-grid,:root[data-layout='mobile'] .hw-grid {grid-template-columns:1fr;gap:12px;}
:root[data-layout='mobile'] .group-header {font-size:21px;}
:root[data-layout='mobile'] .group-note {font-size:11px;padding:17px;}
:root[data-layout='mobile'] .file-card {padding:20px 16px;min-height:130px;gap:13px;}
:root[data-layout='mobile'] .file-title {font-size:13px;}
:root[data-layout='mobile'] .file-name {font-size:10px;}
:root[data-layout='mobile'] .hw-card {padding:20px 16px;}
:root[data-layout='mobile'] .hw-title {font-size:20px;}
:root[data-layout='mobile'] .hw-title-num {font-size:27px;}
:root[data-layout='mobile'] .hw-block {padding:16px;}
:root[data-layout='mobile'] .hw-block-link {font-size:12px;}
:root[data-layout='mobile'] .quiz-card {padding:20px 16px;}
:root[data-layout='mobile'] .quiz-card-title {font-size:16px;}
:root[data-layout='mobile'] .problem-name {font-size:12px;}
:root[data-layout='mobile'] .problem-links {gap:8px;}
:root[data-layout='mobile'] .btn-link {font-size:10px;min-height:40px;}
:root[data-layout='mobile'] .lt-toolbar {flex-wrap:wrap;gap:14px;}
:root[data-layout='mobile'] .lt-secnav {justify-content:space-between;width:100%;}
:root[data-layout='mobile'] .lt-crumb {font-size:10px;}
:root[data-layout='mobile'] .lt-resource-layout {grid-template-columns:minmax(0,1fr);gap:16px;}
:root[data-layout='mobile'] .lt-res-sidebar {position:static;border-radius:7px;}
:root[data-layout='mobile'] .lt-res-header {padding:20px;}
:root[data-layout='mobile'] .lt-res-section-title {font-size:23px;}
:root[data-layout='mobile'] .lt-res-list {display:flex;flex-direction:row;overflow:auto;padding:10px;gap:8px;}
:root[data-layout='mobile'] .lt-res-item {flex:0 0 158px;width:158px;min-width:0;align-items:start;padding:12px 8px;}
:root[data-layout='mobile'] .lt-res-icon {width:26px;height:30px;flex-shrink:0;}
:root[data-layout='mobile'] .lt-res-icon .i {width:14px;height:14px;}
:root[data-layout='mobile'] .lt-res-label {font-size:10px;}
:root[data-layout='mobile'] .lt-res-name {font-size:8px;}
:root[data-layout='mobile'] .lt-viewer-toolbar {padding:16px;gap:14px;}
:root[data-layout='mobile'] .lt-viewer-actions {width:100%;gap:8px;}
:root[data-layout='mobile'] .lt-viewer-actions .btn-link {flex:1;justify-content:center;}
:root[data-layout='mobile'] .lt-viewer-frame {min-height:400px;height:65vh;}
:root[data-layout='mobile'] .section-detail-title {font-size:28px;}
:root[data-layout='mobile'] .section-header {padding-block:10px 24px;}
:root[data-layout='mobile'] .doc-block {padding:20px 14px;}
:root[data-layout='mobile'] .doc-block h3 {font-size:22px;}
:root[data-layout='mobile'] .pdf-frame {min-height:400px;height:65vh;}
:root[data-layout='mobile'] .pdf-actions {gap:8px;}
:root[data-layout='mobile'] .pdf-actions .btn {font-size:10px;}
:root[data-layout='mobile'] .section-nav {gap:8px;}
:root[data-layout='mobile'] .section-nav .btn {font-size:10px;padding:10px;}
:root[data-layout='mobile'] .nav-spacer {min-width:0;}
:root[data-layout='mobile'] .footer-grid,:root[data-layout='mobile'] .footer-grid-3 {grid-template-columns:1fr 1fr;gap:30px 20px;padding-block:36px 24px;}
:root[data-layout='mobile'] .footer-col-brand,:root[data-layout='mobile'] .footer-col-stage {grid-column:1/-1;}
:root[data-layout='mobile'] .footer-col-stage {max-width:340px;}
:root[data-layout='mobile'] .footer-title {font-size:23px;}
:root[data-layout='mobile'] .footer-desc,:root[data-layout='mobile'] .footer-lines {font-size:10px;}
:root[data-layout='mobile'] .footer-ghost span {font-size:12.7cqw;}
:root[data-layout='mobile'] .footer-bottom-inner {flex-direction:column;align-items:start;gap:14px;}
:root[data-layout='mobile'] .footer-bottom-right {gap:12px;}
:root[data-layout='mobile'] .footer-bottom-right>span:first-child {width:100%;}
:root[data-layout='mobile'] .mobile-bottom-nav {display:flex;position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:65;width:100%;max-width:440px;justify-content:space-around;background:#f7f9f5;border-top:1px solid var(--line-strong);padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px));box-shadow:0 -6px 22px #0b211908;}
:root[data-layout='mobile'][data-view-mode='auto'] .mobile-bottom-nav {max-width:none;}
.mobile-bottom-nav>button {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:48px;min-width:54px;padding:4px;border:0;background:none;color:var(--ink-2);cursor:pointer;font-size:8px;border-radius:5px;}
.mobile-bottom-nav svg {width:20px;height:20px;}
.mobile-bottom-nav>button.is-active {color:var(--emerald);background:#e6eee2;}
:root[data-layout='mobile'] .atelier-menu {width:min(440px,100%);padding:24px;}
:root[data-layout='mobile'] .atelier-menu h2 {font-size:32px;}
/* Login retains the same form, circuit and simulation state. */
.atelier-gate .site-frame {background:var(--forest);}
.atelier-gate .gate {background:var(--forest);}
.atelier-gate .gate {color:var(--cream);}
.atelier-gate .gate-main {background:none;min-height:0;scroll-margin-top:0;}
.atelier-gate .gate-brand {color:var(--cream);}
.atelier-gate .gate-title {font-family:var(--font-display);font-size:clamp(66px,6.5cqw,100px);font-weight:500;letter-spacing:-.07em;}
.atelier-gate .gate-title-line:last-child {color:var(--mint);}
.atelier-gate .gate-card {background:var(--paper);border:1px solid #bdd4b240;color:var(--ink);}
.atelier-gate .gate-submit {background:var(--forest);color:var(--paper);}
.atelier-gate .gate-input-wrap:focus-within {border-color:var(--emerald);box-shadow:0 0 0 3px #20976b13;}
.atelier-gate .gate-header {border-color:#a9dcc22d;}
:root[data-layout='desktop'] .atelier-gate .gate {min-height:calc(100svh - 40px);padding-inline:clamp(32px,6cqw,100px);}
:root[data-layout='desktop'] .atelier-gate .gate-main {display:grid;max-width:1200px;grid-template-columns:minmax(0,1.1fr) minmax(0,.95fr);gap:clamp(50px,6cqw,90px);padding-block:28px;align-items:center;}
:root[data-layout='desktop'] .atelier-gate .gate-story {display:block;}
:root[data-layout='desktop'] .atelier-gate .gate-access {width:100%;max-width:none;justify-self:stretch;}
:root[data-layout='desktop'] .atelier-gate .gate-card {padding:36px;}
:root[data-layout='desktop'] .atelier-gate .gate-art {height:242px;width:100%;margin-top:18px;}
:root[data-layout='desktop'] .atelier-gate .gate-collection {display:flex;}
:root[data-layout='desktop'] .atelier-gate .gate-title {font-size:clamp(46px,5.7cqw,90px);line-height:1.18;margin-block:22px;}
:root[data-layout='mobile'] .atelier-gate .site-frame {padding-bottom:0;}
:root[data-layout='mobile'] .atelier-gate .gate {padding-inline:22px;min-height:calc(100svh - 40px);}
:root[data-layout='mobile'] .atelier-gate .gate-header {min-height:76px;}
:root[data-layout='mobile'] .atelier-gate .gate-main {display:flex;flex-direction:column;align-items:stretch;gap:28px;padding-block:30px;max-width:440px;}
:root[data-layout='mobile'] .atelier-gate .gate-story {width:100%;}
:root[data-layout='mobile'] .atelier-gate .gate-title {font-size:clamp(48px,13.8cqw,63px);line-height:1.18;margin-block:22px;}
:root[data-layout='mobile'] .atelier-gate .gate-description {font-size:12px;}
:root[data-layout='mobile'] .atelier-gate .gate-art {height:210px;margin-block:14px;max-width:100%;}
:root[data-layout='mobile'] .atelier-gate .gate-access {width:100%;max-width:none;position:static;}
:root[data-layout='mobile'] .atelier-gate .gate-card {padding:28px 22px;border-radius:12px;}
:root[data-layout='mobile'] .atelier-gate .gate-field input {font-size:16px;}
:root[data-layout='mobile'] .atelier-gate .gate-collection {display:none;}
:root[data-layout='mobile'] .atelier-gate .gate-header-note {font-size:7px;}
:root[data-layout='mobile'] .atelier-gate .gate-brand-copy {font-size:10px;}
:root[data-layout='mobile'] .atelier-gate .gate-brand-copy>span {font-size:7px;}
:root[data-layout='mobile'] .atelier-gate .gate-footer {min-height:76px;font-size:9px;gap:12px;}
:root[data-layout='mobile'] .atelier-gate .gate-footer-right {font-size:8px;}
@container (min-width:760px) and (max-width:1100px) {
 .desktop-nav {gap:12px;}.desktop-nav button {font-size:10px;}.site-header-inner {gap:18px;}.brand-name {font-size:15px;}.header-actions {gap:5px;margin-left:0;}.icon-button {width:36px;height:36px;}
 .lt-overview {align-items:start;flex-direction:column;}.lt-stats {margin-top:0;}.toc-sec-icons {display:none;}.toc-chapter {padding:20px 18px 10px;}.group-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .footer-grid {grid-template-columns:1.2fr 1fr;gap:32px;}.footer-col-stage {grid-column:auto;}.library-card {padding:20px;}.library-card h3 {font-size:20px;}
}
@media (prefers-reduced-motion:reduce) {
 html {scroll-behavior:auto!important;}
 *,*::before,*::after {animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}
 .hero-art img {transform:none!important;}
}

/* Circuit Atlas footer: a purposeful closing scene instead of an empty brand wall. */
.circuit-footer {position:relative;background:#0b2119;border-top:1px solid #a9dcc252;overflow:hidden;isolation:isolate;}
.circuit-footer::before {content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 78% 32%,#d4ba850c,transparent 32%),linear-gradient(115deg,transparent 0 46%,#b4d39d06 46.1% 46.2%,transparent 46.3% 100%);}
.footer-atlas {display:grid;grid-template-columns:minmax(270px,.84fr) minmax(0,1.6fr);gap:clamp(34px,6vw,92px);padding-block:clamp(52px,7vw,84px) 30px;}
.footer-atlas-intro {display:flex;flex-direction:column;align-items:flex-start;min-width:0;}
.footer-atlas-intro .footer-brand {margin-bottom:clamp(34px,5vw,60px);}
.footer-atlas-kicker,.footer-atlas-map-head {display:flex;align-items:center;gap:8px;color:#a9cda9;font-family:var(--font-mono);font-size:8px;letter-spacing:.15em;line-height:1.4;}
.atlas-kicker-dot {width:6px;height:6px;border:1px solid var(--champagne);border-radius:50%;box-shadow:0 0 0 3px #d4ba8515;}
.footer-atlas-intro h2 {margin:18px 0 16px;color:var(--paper);font-family:var(--font-display);font-size:clamp(31px,3.2vw,54px);font-weight:500;letter-spacing:-.065em;line-height:1.06;}
.footer-atlas-intro h2 span {color:var(--mint);}
.footer-atlas-desc {max-width:320px;margin:0;color:#b6c6b2;font-size:11px;line-height:1.9;}
.footer-atlas-cta {display:flex;flex-direction:column;gap:10px;margin-top:clamp(30px,4vw,48px);}
.footer-atlas-cta-label {color:#89aa88;font-family:var(--font-mono);font-size:8px;letter-spacing:.13em;text-transform:uppercase;}
.footer-cta {display:flex;align-items:center;justify-content:space-between;gap:42px;min-width:190px;min-height:48px;padding:12px 15px;border:1px solid #b4d39d55;border-radius:3px;background:#a9dcc2;color:#10271f;font-size:11px;font-weight:600;text-align:left;cursor:pointer;transition:background 180ms,transform 260ms var(--ease-depth),box-shadow 260ms;}
.footer-cta:hover,.footer-cta:focus-visible {background:#c5ecd8;box-shadow:0 12px 28px -18px #b4e5c966;transform:translateY(-2px);}
.footer-cta:focus-visible,.atlas-node:focus-visible,.footer-top:focus-visible {outline:2px solid var(--champagne);outline-offset:3px;}
.footer-atlas-map {min-width:0;padding:15px 16px 16px;border:1px solid #b4d39d2e;border-radius:5px;background:#0d2a20;box-shadow:inset 0 1px #d4ba8508;}
.footer-atlas-map-head {justify-content:space-between;padding:0 2px 14px;color:#8fb18d;}
.footer-atlas-status {color:#e0c788;}
.footer-atlas-graphic {position:relative;min-height:330px;overflow:hidden;border:1px solid #b4d39d16;border-radius:3px;background:linear-gradient(145deg,#112e235e,#0920174a);}
.footer-atlas-graphic::after {content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#c5ecd805 1px,transparent 1px),linear-gradient(#c5ecd805 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);opacity:.3;}
.footer-atlas-lines {position:absolute;inset:16px 12px;width:calc(100% - 24px);height:calc(100% - 32px);overflow:visible;opacity:.56;}
.atlas-line {stroke:#8eb88d;stroke-width:1;stroke-dasharray:4 8;vector-effect:non-scaling-stroke;}
.atlas-line-main {stroke:#d4ba85;stroke-dasharray:72 12 4 12;opacity:.7;}
.atlas-line-node {fill:#d4ba85;stroke:#0d2a20;stroke-width:3;vector-effect:non-scaling-stroke;}
.footer-atlas-nodes {position:absolute;inset:18px;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:16px 14px;}
.atlas-node {position:relative;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;padding:12px 10px;border:1px solid #a9cda92e;border-radius:3px;background:#0c281dd9;color:#d7e4cf;text-align:left;cursor:pointer;transition:border-color 220ms,background 220ms,transform 260ms var(--ease-depth),box-shadow 220ms;}
.atlas-node:hover,.atlas-node:focus-visible {border-color:#d4ba85b8;background:#173b2b;box-shadow:0 12px 24px -20px #d4ba85;transform:translateY(-3px);}
.atlas-node:hover .atlas-node-dot,.atlas-node:focus-visible .atlas-node-dot {background:var(--champagne);box-shadow:0 0 0 4px #d4ba8524,0 0 12px #d4ba8580;}
.atlas-node-index {align-self:start;color:#8aab89;font-family:var(--font-mono);font-size:8px;letter-spacing:.08em;}
.atlas-node-dot {width:7px;height:7px;border:1px solid #b4d39d;border-radius:50%;transition:background 180ms,box-shadow 180ms;}
.atlas-node-copy {display:flex;min-width:0;flex-direction:column;gap:4px;}
.atlas-node-copy strong {overflow:hidden;color:#e5eadc;font-size:11px;font-weight:500;letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;}
.atlas-node-copy small {overflow:hidden;color:#8fae91;font-size:8px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap;}
.atlas-node-arrow {align-self:start;color:#b4d39d;font-size:15px;transition:transform 220ms var(--ease-depth);}
.atlas-node:hover .atlas-node-arrow,.atlas-node:focus-visible .atlas-node-arrow {transform:translate(2px,-2px);color:var(--champagne);}
.footer-atlas-map:has(.atlas-node:hover) .atlas-line-main,.footer-atlas-map:has(.atlas-node:focus-visible) .atlas-line-main {animation:atlas-signal 1.6s linear infinite;}
.footer-atlas-note {display:flex;justify-content:space-between;gap:18px;padding-block:18px 24px;color:#83a685;font-family:var(--font-mono);font-size:8px;letter-spacing:.08em;text-transform:uppercase;}
.footer-atlas-note i {display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:var(--champagne);box-shadow:0 0 0 3px #d4ba8516;}
.circuit-footer .site-footer-bottom {position:relative;z-index:1;border-top:1px solid #bcd4a72e;background:#091c15;padding-block:12px;}
.circuit-footer .footer-bottom-inner {min-height:28px;}
@keyframes atlas-signal {to {stroke-dashoffset:-180;}}

@media (max-width:1100px) {
 .footer-atlas {grid-template-columns:minmax(230px,.72fr) minmax(0,1.45fr);gap:32px;}
 .footer-atlas-nodes {gap:12px 10px;}
 .atlas-node {padding-inline:8px;gap:7px;}
 .atlas-node-copy small {font-size:7px;}
}
@media (max-width:760px) {
 .footer-atlas,:root[data-layout='mobile'] .footer-atlas {display:flex;flex-direction:column;gap:34px;padding-block:44px 18px;}
 .circuit-footer {padding-bottom:76px;}
 .footer-atlas-intro .footer-brand {margin-bottom:34px;}
 .footer-atlas-intro h2 {font-size:clamp(34px,10vw,46px);}
 .footer-atlas-desc {max-width:390px;font-size:11px;}
 .footer-atlas-cta {margin-top:28px;}
 .footer-atlas-map {padding:13px 12px 12px;}
 .footer-atlas-graphic {min-height:0;padding:12px;}
 .footer-atlas-lines {display:none;}
 .footer-atlas-nodes {position:relative;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:9px;}
 .atlas-node {min-height:62px;padding:11px 9px;}
 .atlas-node-copy strong {font-size:10px;}
 .atlas-node-copy small {font-size:7px;}
 .footer-atlas-note {flex-direction:column;gap:8px;padding-block:14px 20px;font-size:7px;}
 .circuit-footer .footer-bottom-inner {align-items:flex-start;gap:12px;}
 .circuit-footer .footer-bottom-right {gap:10px;}
 .circuit-footer .footer-bottom-right>span:first-child {width:100%;}
}
@media (prefers-reduced-motion:reduce) {
 .footer-atlas-map:has(.atlas-node:hover) .atlas-line-main,.footer-atlas-map:has(.atlas-node:focus-visible) .atlas-line-main {animation:none;}
 .atlas-node,.footer-cta {transition:none;}
}

/* Repeat the mobile composition after the base atlas rules so forced-mobile wins at any viewport width. */
:root[data-layout='mobile'] .circuit-footer {padding-bottom:76px;}
:root[data-layout='mobile'] .footer-atlas {display:flex;flex-direction:column;gap:34px;padding-block:44px 18px;}
:root[data-layout='mobile'] .footer-atlas-intro .footer-brand {margin-bottom:34px;}
:root[data-layout='mobile'] .footer-atlas-intro h2 {font-size:clamp(34px,10vw,46px);}
:root[data-layout='mobile'] .footer-atlas-desc {max-width:390px;font-size:11px;}
:root[data-layout='mobile'] .footer-atlas-cta {margin-top:28px;}
:root[data-layout='mobile'] .footer-atlas-map {padding:13px 12px 12px;}
:root[data-layout='mobile'] .footer-atlas-graphic {min-height:0;padding:12px;}
:root[data-layout='mobile'] .footer-atlas-lines {display:none;}
:root[data-layout='mobile'] .footer-atlas-nodes {position:relative;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:9px;}
:root[data-layout='mobile'] .atlas-node {min-height:62px;padding:11px 9px;}
:root[data-layout='mobile'] .atlas-node-copy strong {font-size:10px;}
:root[data-layout='mobile'] .atlas-node-copy small {font-size:7px;}
:root[data-layout='mobile'] .footer-atlas-note {flex-direction:column;gap:8px;padding-block:14px 20px;font-size:7px;}
:root[data-layout='mobile'] .circuit-footer .footer-bottom-inner {align-items:flex-start;gap:12px;}
:root[data-layout='mobile'] .circuit-footer .footer-bottom-right {gap:10px;}
:root[data-layout='mobile'] .circuit-footer .footer-bottom-right>span:first-child {width:100%;}

/* Closing scene footer: a warm sign-off that lets the page end like a completed chapter. */
.closing-footer {background:#0a2018;overflow:hidden;}
.closing-footer::before {content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 78% 37%,#d4ba8512,transparent 28%),radial-gradient(ellipse at 20% 110%,#7eb9960b,transparent 34%);}
.closing-stage {position:relative;min-height:560px;padding:26px clamp(20px,4vw,58px) 20px;border:1px solid #b4d39d22;border-radius:4px;background:linear-gradient(130deg,#0b251b,#102d2140 58%,#0b2119);isolation:isolate;}
.closing-stage::after {content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(118deg,transparent 0 52%,#e4ca8c08 52.1% 52.25%,transparent 52.35% 100%);}
.closing-stage-top {display:flex;justify-content:space-between;gap:20px;color:#8eaf8f;font-family:var(--font-mono);font-size:8px;letter-spacing:.14em;line-height:1.4;}
.closing-stage-top span:last-child {color:#d6bf86;}
.closing-stage-rule {height:1px;margin-top:18px;background:#b4d39d24;overflow:hidden;}
.closing-stage-rule span {display:block;width:24%;height:1px;background:linear-gradient(90deg,transparent,var(--champagne),transparent);animation:closing-rule 5s ease-in-out infinite;}
.closing-stage-content {position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);min-height:440px;align-items:center;}
.closing-copy-block {position:relative;z-index:2;max-width:580px;padding-block:38px 20px;animation:closing-rise 700ms var(--ease-out) both;}
.closing-kicker {margin:0 0 20px;color:#9fc49d;font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;}
.closing-kicker::before {content:'✦';display:inline-block;margin-right:8px;color:var(--champagne);font-size:11px;}
.closing-copy-block h2 {margin:0;color:#f3f3e9;font-family:var(--font-display);font-size:clamp(42px,6.3vw,92px);font-weight:500;letter-spacing:-.075em;line-height:.96;}
.closing-copy-block h2 em {color:#b4e1c3;font-style:normal;}
.closing-copy {max-width:390px;margin:28px 0 0;color:#b4c9b4;font-size:12px;line-height:1.9;}
.closing-actions {display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:36px;}
.closing-primary,.closing-secondary {display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;padding:12px 16px;border-radius:3px;font-size:11px;text-decoration:none;cursor:pointer;transition:transform 220ms var(--ease-depth),background 180ms,border-color 180ms,color 180ms;}
.closing-primary {min-width:174px;border:1px solid #d9bd72;background:#d9bd72;color:#10271f;font-weight:600;}
.closing-secondary {border:1px solid #b4d39d45;background:transparent;color:#dce8d5;}
.closing-primary:hover,.closing-primary:focus-visible,.closing-secondary:hover,.closing-secondary:focus-visible {transform:translateY(-3px);}
.closing-primary:hover,.closing-primary:focus-visible {background:#f0d691;}
.closing-secondary:hover,.closing-secondary:focus-visible {border-color:#d9bd72;color:#f0d691;}
.closing-primary:focus-visible,.closing-secondary:focus-visible {outline:2px solid var(--mint);outline-offset:3px;}
.closing-rose {position:absolute;z-index:1;right:3%;bottom:-5px;width:clamp(235px,28vw,420px);margin:0;pointer-events:none;opacity:.55;transform:rotate(2deg);animation:closing-rose-in 1.1s var(--ease-out) .12s both;}
.closing-rose img {display:block;width:100%;height:auto;filter:saturate(.82) brightness(.9);}
.closing-rose-orbit {position:absolute;z-index:-1;inset:12% -10% 8%;border:1px solid #d4ba8545;border-radius:50%;transform:rotate(-25deg);box-shadow:0 0 0 16px #d4ba8508,0 0 40px #d4ba8512;}
.closing-signature {position:absolute;z-index:3;right:17%;bottom:12%;display:flex;flex-direction:column;align-items:flex-start;color:#b6c9ae;animation:closing-rise 700ms var(--ease-out) .22s both;}
.closing-signature span {font-family:var(--font-body);font-size:9px;}
.closing-signature strong {color:#dfc27f;font-family:'Playfair Display',Georgia,serif;font-size:clamp(23px,2.5vw,35px);font-style:italic;font-weight:500;line-height:1.2;}
.closing-stage-bottom {display:flex;align-items:center;justify-content:space-between;gap:18px;color:#84a984;font-family:var(--font-mono);font-size:8px;letter-spacing:.1em;text-transform:uppercase;}
.closing-stage-bottom i {display:inline-block;width:5px;height:5px;margin-right:7px;border-radius:50%;background:#d9bd72;box-shadow:0 0 0 4px #d9bd7218;}
.closing-pulse {width:100px;height:1px;background:linear-gradient(90deg,transparent,#d9bd72,transparent);animation:closing-pulse 2.8s ease-in-out infinite;}
.closing-nav {display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 4px 25px;color:#94b392;}
.closing-nav-label {font-family:var(--font-mono);font-size:8px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;}
.closing-nav-links {display:flex;align-items:center;justify-content:flex-end;gap:22px;flex-wrap:wrap;}
.closing-nav-links button {min-height:36px;padding:5px 0;border:0;border-bottom:1px solid transparent;background:transparent;color:#cad9c3;font-size:10px;cursor:pointer;transition:color 180ms,border-color 180ms,transform 180ms var(--ease-depth);}
.closing-nav-links button:hover,.closing-nav-links button:focus-visible {border-color:#d9bd72;color:#f0d691;transform:translateY(-2px);}
.closing-nav-links button:focus-visible {outline:2px solid var(--mint);outline-offset:3px;}
.closing-footer .site-footer-bottom {background:#071811;}
@keyframes closing-rise {from{opacity:0;transform:translate3d(0,14px,0);}to{opacity:1;transform:none;}}
@keyframes closing-rose-in {from{opacity:0;transform:translate3d(22px,12px,0) rotate(4deg);}to{opacity:.55;transform:rotate(2deg);}}
@keyframes closing-rule {0%,100%{transform:translateX(-120%);}45%,65%{transform:translateX(320%);}}
@keyframes closing-pulse {0%,100%{opacity:.2;transform:scaleX(.45);transform-origin:left;}50%{opacity:1;transform:scaleX(1);transform-origin:left;}}
@media (max-width:760px) {
 .closing-footer {padding-bottom:76px;}
 .closing-stage {min-height:650px;padding:20px 18px 18px;}
 .closing-stage-top {font-size:7px;}
 .closing-stage-top span:last-child {display:none;}
 .closing-stage-content {display:block;min-height:540px;}
 .closing-copy-block {padding-top:52px;}
 .closing-kicker {font-size:8px;line-height:1.6;}
 .closing-copy-block h2 {font-size:clamp(42px,12.5vw,61px);line-height:.98;}
 .closing-copy {max-width:310px;margin-top:24px;font-size:11px;}
 .closing-actions {align-items:stretch;flex-direction:column;gap:10px;max-width:210px;margin-top:30px;}
 .closing-primary,.closing-secondary {width:100%;}
 .closing-rose {right:-28px;bottom:5px;width:205px;opacity:.46;}
 .closing-signature {right:23px;bottom:25px;}
 .closing-signature strong {font-size:26px;}
 .closing-stage-bottom {font-size:7px;}
 .closing-pulse {width:46px;}
 .closing-nav {align-items:flex-start;flex-direction:column;gap:12px;padding-block:20px 22px;}
 .closing-nav-links {justify-content:flex-start;gap:4px 18px;width:100%;}
 .closing-nav-links button {min-height:42px;font-size:10px;}
}
:root[data-layout='mobile'] .closing-footer {padding-bottom:76px;}
:root[data-layout='mobile'] .closing-stage {min-height:650px;padding:20px 18px 18px;}
:root[data-layout='mobile'] .closing-stage-top span:last-child {display:none;}
:root[data-layout='mobile'] .closing-stage-content {display:block;min-height:540px;}
:root[data-layout='mobile'] .closing-copy-block {padding-top:52px;}
:root[data-layout='mobile'] .closing-copy-block h2 {font-size:clamp(42px,12.5vw,61px);line-height:.98;}
:root[data-layout='mobile'] .closing-copy {max-width:310px;margin-top:24px;font-size:11px;}
:root[data-layout='mobile'] .closing-actions {align-items:stretch;flex-direction:column;gap:10px;max-width:210px;margin-top:30px;}
:root[data-layout='mobile'] .closing-primary,:root[data-layout='mobile'] .closing-secondary {width:100%;}
:root[data-layout='mobile'] .closing-rose {right:-28px;bottom:5px;width:205px;opacity:.46;}
:root[data-layout='mobile'] .closing-signature {right:23px;bottom:25px;}
:root[data-layout='mobile'] .closing-signature strong {font-size:26px;}
:root[data-layout='mobile'] .closing-stage-bottom {font-size:7px;}
:root[data-layout='mobile'] .closing-pulse {width:46px;}
:root[data-layout='mobile'] .closing-nav {align-items:flex-start;flex-direction:column;gap:12px;padding-block:20px 22px;}
:root[data-layout='mobile'] .closing-nav-links {justify-content:flex-start;gap:4px 18px;width:100%;}
:root[data-layout='mobile'] .closing-nav-links button {min-height:42px;font-size:10px;}
@media (prefers-reduced-motion:reduce) {
 .closing-stage-rule span,.closing-copy-block,.closing-rose,.closing-signature,.closing-pulse {animation:none;}
 .closing-copy-block,.closing-rose,.closing-signature {opacity:1;transform:none;}
 .closing-primary,.closing-secondary,.closing-nav-links button {transition:none;}
}
