/* Public art direction: graphite, ivory, signal orange. Independent of admin tokens.
   Design variance 7 / motion 5 / density 4 for the page, 8 for the audio workspace. */
.public-home {
 --public-bg:#111113; --public-panel:#1c1c20; --public-text:#f6f4ef;
 --public-muted:#a9a7ae; --public-line:#343438; --public-accent:#ff6333;
 --accent:var(--public-accent); --accent-hover:#ff8059; --muted:var(--public-muted);
 --ink:var(--public-text); --border:var(--public-line); --line:var(--public-line);
 --home-header-height:68px;
 background:var(--public-bg); color:var(--public-text); color-scheme:dark;
}
.public-home .site-header {max-width:none; height:var(--home-header-height); padding:0 28px; border:0; gap:24px; background:var(--public-bg)}
.public-home .brand {color:var(--public-text); font-size:26px}
.public-home .brand span {font-size:9px; letter-spacing:.2em; color:var(--public-muted)}
.public-home .site-header nav {gap:24px; justify-content:flex-end}
.public-home .site-header nav a {font-size:12px; font-weight:550}
.public-home .site-header .button {border:1px solid #636167; border-radius:3px; background:transparent; padding:8px 17px; color:var(--public-text)}
.public-home .site-header .button:hover {background:var(--public-text); color:var(--public-bg)}
.public-home main {max-width:none; padding:0 28px 70px; min-height:0}
.public-home :focus-visible {outline:2px solid #ffac8d; outline-offset:4px}
.public-stage {height:calc(100dvh - var(--home-header-height)); min-height:640px; display:flex; flex-direction:column; padding-bottom:16px; gap:20px}
.public-home .listening-intro {display:flex; align-items:center; justify-content:space-between; gap:32px; padding:12px 0 8px; flex:none}
.public-home .listening-kicker {font:11px var(--mono); color:var(--public-muted); margin:0 0 10px}
.public-home .listening-intro h1 {font-size:clamp(34px,4.3vw,76px); font-weight:620; letter-spacing:-.065em; line-height:1.02; margin:0; overflow-wrap:normal}
.public-home .listening-intro h1 em,.public-home .section-heading h2 em {font-style:normal; color:var(--public-accent)}
.listening-intro-aside {flex:none; padding:0 2px 0 24px; border-left:1px solid var(--public-line)}
.listening-intro-aside p {font-size:12px; color:var(--public-muted); line-height:1.6; margin:0 0 8px}
.listening-intro-aside a {font-size:11px; color:var(--public-text); text-decoration:none; display:flex; justify-content:space-between; gap:28px; align-items:center}
.listening-intro-aside a:hover {text-decoration:underline}
.listening-intro-aside a span {font-size:19px; color:var(--public-accent)}
.public-home .listening-section {margin:0; flex:1; min-height:0; display:flex}
[data-listening-room] {width:100%; min-width:0; display:flex}
.daw-loading {width:100%; padding:28px; background:var(--public-panel); border:1px solid var(--public-line); border-radius:8px; font-size:14px}
.daw {
 --daw-bg:#19191c; --daw-panel:#232327; --daw-raised:#2c2c31;
 --daw-line:#3c3c42; --daw-text:#efeee9; --daw-muted:#b3b0b8;
 --daw-accent:#ff8257; --daw-accent-ink:#22120c; --ease-out:cubic-bezier(.23,1,.32,1);
 position:relative; width:100%; display:flex; flex-direction:column; min-height:0;
 background:var(--daw-bg); color:var(--daw-text); border:1px solid #47474d;
 border-radius:8px; font-size:12px; line-height:1.4; isolation:isolate; text-align:left;
}
.daw * {box-sizing:border-box}
.daw button,.daw input {font:inherit}
.daw button {border:0; box-shadow:none; color:inherit; background:transparent; display:inline-flex; align-items:center; justify-content:center; gap:7px; cursor:pointer; font-weight:500; border-radius:3px; padding:0; white-space:nowrap; touch-action:manipulation; text-transform:none; letter-spacing:normal}
.daw button:disabled {cursor:wait; opacity:.65}
.daw :focus-visible,.daw .is-guided {outline:2px solid var(--daw-accent); outline-offset:3px}
.daw-windowbar {height:32px; flex:none; display:flex; align-items:center; gap:22px; padding:0 14px; background:#2a2a2e; border-radius:7px 7px 0 0; border-bottom:1px solid #111113}
.daw-window-title {display:flex; align-items:center; gap:15px; flex:1}
.daw-window-title strong {font-size:12px; letter-spacing:-.03em}
.daw-window-title>span {font-size:10px; color:var(--daw-muted); border-left:1px solid #55545b; padding-left:15px}
.daw-recording-label {font:9px var(--mono); color:var(--daw-muted); letter-spacing:.05em}
.daw .daw-text-button {min-height:28px; padding:3px 7px; font-size:10px; color:var(--daw-muted)}
.daw-toolbar {display:flex; flex:none; align-items:center; gap:20px; padding:8px 14px; min-height:50px; border-bottom:1px solid #111113; background:#222226}
.daw-session-label {width:170px; flex:none; color:var(--daw-muted); font-size:11px}
.daw-transport {display:flex; gap:5px; align-items:center; border-radius:3px}
.daw .daw-play {background:var(--daw-accent); color:var(--daw-accent-ink); height:30px; min-width:90px; padding:0 12px; font-weight:650}
.daw .daw-square {height:30px; width:30px; background:#333339; color:#efeee9; font-size:20px; border:1px solid #53535c}
.daw .daw-square.is-active {background:#d2cfca; color:#232326; border-color:#d2cfca}
.daw-icon {display:inline-block; width:12px; height:12px; position:relative; flex:none}
.daw-icon--play {width:0; height:0; border-top:5px solid transparent; border-bottom:5px solid transparent; border-left:8px solid currentColor}
.daw-icon--pause {border-left:3px solid currentColor; border-right:3px solid currentColor; width:9px; height:11px}
.daw-icon--stop {background:currentColor; width:8px; height:8px}
.daw-icon--power {border:1.5px solid currentColor; border-radius:50%; width:12px; height:12px; border-top-color:transparent}
.daw-icon--power:before {content:''; position:absolute; left:4px; top:-3px; width:1.5px; height:6px; background:currentColor}
.daw-icon--search {border:1.4px solid currentColor; border-radius:50%; width:10px; height:10px; margin:0 1px 2px}
.daw-icon--search:after {content:''; position:absolute; width:4px; height:1.5px; background:currentColor; transform:rotate(45deg); right:-3px; bottom:-2px}
.daw-icon--loading {border:2px solid currentColor; border-right-color:transparent; border-radius:50%}
.daw-clock {font-family:var(--mono); font-variant-numeric:tabular-nums; white-space:nowrap; display:flex; align-items:baseline; gap:8px; padding:3px 12px; background:#17171a; border:1px solid #414148; border-radius:3px}
.daw-clock strong {font-size:18px; font-weight:500; letter-spacing:-.04em}
.daw-clock span {font-size:10px; color:var(--daw-muted)}
.daw-output {margin-left:auto; display:flex; align-items:center; gap:10px; max-width:250px; min-width:100px}
.daw-output label {font:9px var(--mono); color:var(--daw-muted)}
.daw-output .daw-meter {width:65px; flex:none; height:7px}
.daw-output input {max-width:80px}
.daw-workspace {display:grid; grid-template-columns:200px minmax(0,1fr); grid-template-rows:minmax(0,1fr); flex:1; min-height:300px}
.daw-browser {display:flex; flex-direction:column; background:#202023; border-right:4px solid #121214; padding:15px 11px 12px; min-width:0; min-height:0; overflow:auto}
.daw-search {display:flex; align-items:center; gap:7px; background:#17171a; border:1px solid #51515a; border-radius:3px; padding:0 9px; color:#c3c0c9; min-width:0; height:32px}
.daw .daw-search input {background:none; border:0; box-shadow:none; color:var(--daw-text); padding:0; height:30px; min-width:0; width:100%; font-size:10px; border-radius:0; outline:none}
.daw-search:focus-within {outline:2px solid var(--daw-accent); outline-offset:2px}
.daw-search input::placeholder {color:#aaa7b1; opacity:1}
.daw-browser-heading {display:flex; justify-content:space-between; gap:10px; font:9px var(--mono); color:var(--daw-muted); margin:20px 4px 10px}
.daw-plugin-list {display:flex; flex-direction:column; gap:7px}
.daw .daw-browser-plugin {width:100%; justify-content:flex-start; gap:9px; padding:10px 8px; min-height:52px; background:#2b2b30; border:1px solid #45454d; text-align:left; cursor:grab; touch-action:none; user-select:none; -webkit-user-select:none}
.daw .daw-browser-plugin.is-armed {background:#513329; border-color:var(--daw-accent)}
.daw-browser-plugin:active {cursor:grabbing}
.daw-browser-plugin>span:nth-child(2) {display:flex; flex:1; flex-direction:column; gap:3px}
.daw-browser-plugin strong {font-size:13px; font-weight:600}
.daw-browser-plugin small {font-size:10px; color:var(--daw-muted)}
.daw-plugin-glyph {font-size:22px}
.daw-drag-handle {font-size:21px; color:#93909a}
.daw-browser-help {margin:17px 4px 15px; font-size:10px; color:var(--daw-muted); line-height:1.7; max-width:24ch}
.daw-browser-footer {display:flex; flex-direction:column; gap:3px; margin:auto 4px 0; font:9px var(--mono); color:var(--daw-muted)}
.daw-browser-footer small {font:9px Geist,system-ui}
.daw-no-results {font-size:11px; padding:0 4px}
.daw-no-results p {color:var(--daw-muted); margin:5px 0}
.daw .daw-no-results button {font-size:10px; color:var(--daw-accent); text-decoration:underline; padding:8px 0}
.daw-arrangement {min-width:0; min-height:0; display:flex; flex-direction:column}
.daw-ruler-row,.daw-track {display:grid; grid-template-columns:minmax(0,1fr) 195px}
.daw-ruler-row {height:28px; flex:none; align-items:center; color:var(--daw-muted); background:#252529; font:9px var(--mono)}
.daw-ruler {display:flex; justify-content:space-between; padding:0 9px; overflow:hidden; gap:5px}
.daw-ruler-row>span {border-left:1px solid #111113; padding-left:12px; align-self:stretch; display:flex; align-items:center; font-size:8px; letter-spacing:.04em}
.daw-track {flex:1 1 0; border-top:1px solid #151518; min-height:110px; --track-color:#ff956c; --track-bg:#623d31; --track-ink:#ffd1b9; position:relative}
.daw-track--1 {--track-color:#bfc2d4; --track-bg:#363946; --track-ink:#cfd3e9}
.daw-track-controls {padding:6px 10px 7px; border-left:3px solid #5b585e; background:#2a2a2e; min-width:0; display:flex; flex-direction:column; justify-content:space-between}
.daw-track.is-selected .daw-track-controls {border-left-color:var(--track-color); background:#333135}
.daw-track-heading {display:flex; align-items:center; justify-content:space-between; gap:12px; background:var(--track-color); color:#201a18; margin:-6px -10px 6px; padding:2px 8px; height:24px; flex:none}
.daw .daw-track-name {justify-content:flex-start; text-align:left; font-size:11px; min-height:21px; color:#201a18}
.daw-track-name>span {font:9px var(--mono); opacity:.8}
.daw-track-heading>small {font:8px var(--mono)}
.daw-track-tools {display:flex; align-items:center; gap:5px; margin-bottom:4px}
.daw-track-tools .daw-meter {flex:1; margin-left:5px}
.daw-track-tools output {font:9px var(--mono); color:var(--daw-muted); min-width:40px; text-align:right}
.daw .daw-mini {width:24px; height:24px; border:1px solid #64616b; font:10px var(--mono); background:#202024; flex:none}
.daw .daw-mini.is-active {background:var(--daw-accent); border-color:var(--daw-accent); color:var(--daw-accent-ink)}
.daw-meter {display:block; height:5px; background:#121214; overflow:hidden; width:100%; border-radius:1px}
.daw-meter i {display:block; background:var(--daw-accent); transform:scaleX(0); transform-origin:left; height:100%; width:100%}
.daw input[type=range] {accent-color:#f2b494; cursor:pointer; width:100%; height:16px; min-width:0; margin:0; padding:0; background:none; border:0; touch-action:pan-y; box-shadow:none}
.daw .daw-insert {margin-top:4px; min-height:24px; width:100%; border:1px solid #67606a; justify-content:flex-start; padding:0 6px; font-size:10px; color:#e0dce4}
.daw-insert i {width:6px; height:6px; border-radius:50%; background:#7e7682}
.daw-insert.is-on i {background:var(--daw-accent)}
.daw-insert small {margin-left:auto}
.daw .daw-insert--empty {color:#c8c0cd; border-style:dashed; background:#232126}
.daw .daw-insert.is-ready {background:var(--daw-accent); color:var(--daw-accent-ink); border-color:var(--daw-accent)}
.daw-lane {position:relative; padding:7px; overflow:hidden; background-image:linear-gradient(to right,#aaa5b320 1px,transparent 1px); background-size:12.5% 100%; min-width:0; min-height:0}
.daw .daw-clip {width:100%; height:100%; min-height:0; display:flex; flex-direction:column; justify-content:flex-start; gap:0; background:var(--track-bg); color:var(--track-ink); border-radius:2px; text-align:left; overflow:hidden; cursor:crosshair; border:1px solid #ffffff20}
.daw-track.is-muted .daw-clip {opacity:.32}
.daw-clip-label {display:flex; align-items:center; justify-content:space-between; width:100%; gap:8px; background:var(--track-color); color:#201a18; padding:4px 8px; font:9px var(--mono); white-space:nowrap; min-width:0}
.daw-clip-label>span:first-child {overflow:hidden; text-overflow:ellipsis}
.daw-waveform {width:100%; height:60px; min-height:0; flex:1; display:block; padding:6px 3px}
.daw-waveform path {fill:none; stroke:currentColor; stroke-width:1.3; vector-effect:non-scaling-stroke}
.daw-playhead {position:absolute; inset:0; border-left:1px solid #fff; pointer-events:none; transform:translateX(0); width:100%; z-index:1}
.daw-playhead:before {content:''; position:absolute; top:0; left:-4px; width:7px; height:6px; background:#fff; clip-path:polygon(0 0,100% 0,50% 100%)}
.daw-drop-hint {position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:#201915dd; color:#ffe3d2; font-size:12px; font-weight:600; pointer-events:none; visibility:hidden; border:2px solid transparent; z-index:2}
.daw-track.is-target .daw-drop-hint {visibility:visible; border-color:var(--daw-accent); border-style:dashed}
.daw-track.is-over .daw-drop-hint {background:#663521ee; border-style:solid}
.daw-track.is-wrong .daw-drop-hint {visibility:visible; color:#ffd0cb; background:#542323e6; border-color:#fa9b91}
.daw-arrangement-space {min-height:24px; display:flex; align-items:center; justify-content:space-between; padding:0 15px; background-image:linear-gradient(to right,#aaa5b320 1px,transparent 1px); background-size:calc((100% - 195px)/8) 100%; color:#a09ca7; font:8px var(--mono); letter-spacing:.05em; border-top:1px solid var(--daw-line)}
.daw-position {display:flex; align-items:center; gap:15px; height:28px; flex:none; padding:0 12px; border-top:1px solid var(--daw-line); background:#222226; font:9px var(--mono); color:var(--daw-muted)}
.daw-position input {flex:1}
.daw-position>span {min-width:38px; text-align:right}
.daw-device-bay {display:flex; flex:none; align-items:center; gap:20px; min-height:58px; border-top:4px solid #121214; padding:8px 16px; background:#242327}
.daw-device-caption {width:162px; flex:none; display:flex; flex-direction:column; gap:5px}
.daw-device-caption>span {font:8px var(--mono); color:var(--daw-muted); letter-spacing:.04em}
.daw-device-caption strong {font-size:12px; font-weight:500}
.daw-device {display:flex; align-items:center; gap:16px; padding-left:17px; border-left:1px solid #625a64}
.daw .daw-effect {min-height:30px; padding:0 9px; background:#29232a; border:1px solid #766c7b; color:#e1dbe5; font-size:10px; gap:7px; flex:none}
.daw .daw-effect.is-on {background:var(--daw-accent); border-color:var(--daw-accent); color:var(--daw-accent-ink)}
.daw-effect small {font:8px var(--mono); letter-spacing:.04em; border-left:1px solid #6a51444d; padding-left:7px}
.daw .daw-open-device {display:flex; flex-direction:column; align-items:flex-start; gap:3px; font-size:11px; padding:0 3px}
.daw-open-device span {font-size:9px; color:var(--daw-muted)}
.daw-device>small {font-size:10px; color:var(--daw-muted); max-width:160px}
.daw-empty-device {color:var(--daw-muted); font-size:11px}
.daw-product-link {margin-left:auto; font-size:10px; color:var(--daw-accent); white-space:nowrap; text-decoration:none}
.daw-product-link:hover {text-decoration:underline}
.daw-guide {position:relative; flex:none; display:flex; align-items:center; min-height:168px; gap:22px; padding:10px 24px 10px 16px; background:#18171a; border-top:1px solid #474046; overflow:hidden}
.daw-mascot {width:165px; height:146px; flex:none; position:relative; opacity:0; pointer-events:none; align-self:flex-end}
.daw-mascot.is-ready {opacity:1}
.daw-mascot canvas {display:block; width:170px!important; height:170px!important; position:absolute; bottom:-11px; left:0}
.daw-guide-bubble {flex:1; max-width:880px; position:relative; padding:12px 18px 13px; min-width:0; background:#efebe2; color:#232020; border-radius:3px 14px 14px 14px}
.daw-guide-bubble:before {content:''; position:absolute; width:12px; height:12px; background:#efebe2; transform:rotate(45deg); left:-6px; top:55%}
.daw-guide-heading {display:flex; align-items:center; justify-content:space-between; gap:10px; font:9px var(--mono); color:#675e5a; min-height:22px}
.daw-guide-heading>div {display:flex; gap:8px}
.daw-guide-heading .daw-text-button {min-height:24px; font:10px Geist,system-ui; color:#675e5a; padding:0 4px}
.daw-guide-heading .daw-text-button:last-child {font-size:19px; width:24px}
.daw-guide-copy strong {display:block; font-size:19px; font-weight:650; letter-spacing:-.035em; margin:2px 0 4px; line-height:1.25; color:#242020}
.daw-guide-copy p {font-size:12px; line-height:1.5; max-width:87ch; margin:0; color:#615854}
.daw-guide-actions {display:flex; align-items:center; gap:16px; margin-top:10px; min-height:30px}
.daw .daw-guide-next {background:#252022; color:#fff8f2; min-height:30px; padding:5px 13px; font-size:11px; font-weight:600}
.daw-guide-actions .daw-text-button {color:#675e5a}
.daw-guide-wait {font:10px var(--mono); color:#813d23}
.daw-guide-bubble :focus-visible {outline-color:#a6421c}
.daw-guide.is-collapsed {min-height:40px; justify-content:flex-end; padding:4px 14px}
.daw-guide.is-collapsed .daw-mascot {display:none}
.daw-statusbar {display:flex; flex:none; align-items:center; justify-content:space-between; gap:14px; padding:5px 14px; min-height:25px; border-top:1px solid #3a343c; border-radius:0 0 7px 7px; background:#222025; font:9px var(--mono); color:#bcb4c2}
.daw-statusbar>span:first-child {flex:1}
.daw-shortcut {display:flex; align-items:center; gap:7px}
.daw-shortcut kbd {border:1px solid #6b626f; border-radius:2px; font:8px var(--mono); padding:1px 4px}
.daw-error {background:#4c2723; color:#ffe4d5; max-width:none; margin:0; padding:12px 20px; font-size:12px}
.daw-error button {margin-left:14px; padding:5px 10px; border:1px solid currentColor}
.daw-plugin-window {position:absolute; inset:94px 24px auto auto; margin:0; padding:0; width:min(490px,calc(100% - 235px)); max-width:none; max-height:none; background:#17151a; color:var(--daw-text); border:1px solid #8b808e; border-radius:6px; box-shadow:0 18px 60px #000b; z-index:8; overflow:hidden; font:12px Geist,system-ui}
.daw-plugin-titlebar {height:32px; padding:0 7px 0 13px; display:flex; align-items:center; justify-content:space-between; gap:12px; background:#3b363f; cursor:move; touch-action:none; user-select:none; -webkit-user-select:none}
.daw-plugin-titlebar>span {font-size:11px; font-weight:600}
.daw-plugin-titlebar button {height:26px; width:26px; font-size:19px; color:#f6effb}
.daw-plugin-switchbar {display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 13px; background:#282229}
.daw-plugin-switchbar>span {font-size:10px; color:#d3cad8}
.daw-plugin-facade {display:block; width:100%; height:auto; max-height:min(260px,27dvh); object-fit:contain; background:#111013; user-select:none; -webkit-user-select:none; pointer-events:none}
.daw-plugin-window--lemaster {width:min(340px,calc(100% - 235px))}
.daw-plugin-window--lemaster .daw-plugin-facade {height:266px}
.daw-plugin-caption {padding:9px 13px; margin:0; max-width:none; font-size:10px; line-height:1.5; color:#cfc4d2; background:#211d23}
.daw-drag-ghost {position:fixed; left:0; top:0; z-index:20; padding:10px 18px; display:flex; gap:10px; background:var(--daw-accent); border:1px solid #ffc2a4; border-radius:4px; box-shadow:0 8px 22px #0006; color:var(--daw-accent-ink); font-size:12px; pointer-events:none}
.daw--expanded {position:fixed; inset:10px; width:auto; z-index:1100; overflow:auto}
.daw--expanded .daw-workspace {flex:1}
.public-home .listening-note {font-size:11px; line-height:1.7; color:var(--public-muted); margin:18px 0 0; max-width:115ch}
.public-home .public-catalogue {margin:76px 0 0; padding-top:30px; border-top:1px solid var(--public-line)}
.public-home .section-heading {border:0; margin:0 0 30px; display:flex; align-items:baseline; justify-content:space-between}
.public-home .section-heading h2 {font-size:clamp(36px,5vw,64px); letter-spacing:-.055em; font-weight:600; line-height:1.1; margin:0}
.public-home .section-heading>span {color:var(--public-muted); font:11px var(--mono)}
.public-home .product-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px 24px}
.public-home .product {display:flex; flex-direction:column; padding:0; border:0; background:none; min-width:0}
.public-home .product-art {display:flex; position:relative; justify-content:center; align-items:center; height:clamp(210px,24vw,360px); overflow:hidden; background:#242126; border-radius:4px; text-decoration:none}
.public-home .product:nth-child(2n) .product-art {background:#28272e}
.public-home .product-art img {display:block; width:87%; height:87%; object-fit:contain}
.public-home .product-wordmark {font-size:clamp(30px,3.8vw,68px); font-weight:700; letter-spacing:-.055em; color:#d1c9c6; padding:20px; overflow-wrap:anywhere}
.public-home .product-art-arrow {position:absolute; bottom:15px; right:18px; color:var(--public-accent); font-size:25px}
.public-home .product-info {position:relative; flex:1; padding:18px 0; border-bottom:1px solid var(--public-line)}
.public-home .product .eyebrow {margin:0 0 6px; font-size:10px; color:var(--public-muted); letter-spacing:.04em}
.public-home .product h3 {font-size:25px; margin:0 0 6px; letter-spacing:-.035em; font-weight:550}
.public-home .product h3 a {text-decoration:none}
.public-home .product h3 a:hover {text-decoration:underline}
.public-home .product-info>p:not(.eyebrow) {margin:0; min-height:0; font-size:12px; color:var(--public-muted)}
.public-home .product .tag {position:absolute; top:20px; right:0; font-size:10px; border:0; background:none; color:#d4c6bb; padding:0}
.public-home footer {max-width:none; margin:0 28px; padding:25px 0; border-top:1px solid var(--public-line); color:var(--public-muted)}
@media(hover:hover) and (pointer:fine) {
 .daw button:hover {background:#ffffff0d}
 .daw .daw-play:hover,.daw .daw-effect.is-on:hover {background:#ffae88}
 .daw .daw-guide-next:hover {background:#4d3028}
 .daw-guide-bubble .daw-text-button:hover {background:#211b1710}
 .daw .daw-clip:hover {filter:brightness(1.12)}
 .public-home .product-art:hover img {transform:translateY(-4px)}
}
@media(prefers-reduced-motion:no-preference) {
 .daw-icon--loading {animation:daw-spin 1s linear infinite}
 .daw button {transition:background-color 120ms ease,color 120ms ease}
 .daw-plugin-window {animation:daw-window-in 180ms var(--ease-out)}
 .daw-mascot {transition:opacity 180ms ease}
 .public-home .product-art img {transition:transform 220ms cubic-bezier(.23,1,.32,1)}
}
@keyframes daw-spin {to{transform:rotate(360deg)}}
@keyframes daw-window-in {from{opacity:0; scale:.97}to{opacity:1; scale:1}}
.daw.is-keyboard .daw-plugin-window {animation:none}
.daw.is-keyboard button {transition:none}
/* A normal laptop gets the complete tutorial, including the guide, in one viewport. */
@media(min-width:1000px) and (min-height:700px) and (max-height:899px) {
 .public-home {--home-header-height:58px}
 .public-stage {min-height:0; gap:14px; padding-bottom:12px}
 .public-home .listening-intro {padding-top:6px; padding-bottom:4px}
 .public-home .listening-intro h1 {font-size:clamp(34px,4vw,60px)}
 .public-home .listening-kicker {margin-bottom:7px}
 .daw-toolbar {min-height:44px; padding-top:6px; padding-bottom:6px}
 .daw-workspace {min-height:242px}
 .daw-browser {padding-top:12px; padding-bottom:9px}
 .daw-browser-heading {margin-top:10px; margin-bottom:8px}
 .daw .daw-browser-plugin {min-height:46px; padding-top:8px; padding-bottom:8px}
 .daw-browser-help {margin-top:10px; margin-bottom:0; font-size:9px; line-height:1.5}
 .daw-browser-footer {display:none}
 .daw-track {min-height:96px}
 .daw-track-controls {padding-top:4px; padding-bottom:4px}
 .daw-track-heading {height:21px; margin-top:-4px; margin-bottom:3px}
 .daw-track-tools {margin-bottom:1px}
 .daw .daw-mini {height:22px; width:24px}
 .daw input[type=range] {height:13px}
 .daw .daw-insert {margin-top:1px; min-height:22px}
 .daw-arrangement-space {display:none}
 .daw-ruler-row {height:25px}
 .daw-position {height:25px}
 .daw-guide {min-height:144px; padding-top:8px; padding-bottom:8px}
 .daw-mascot {height:127px}
 .daw-mascot canvas {width:148px!important; height:148px!important; left:8px; bottom:-10px}
 .daw-guide-bubble {padding-top:7px; padding-bottom:9px}
 .daw-guide-copy strong {font-size:16px}
 .daw-guide-copy p {font-size:11px}
 .daw-guide-actions {margin-top:7px}
 .daw-device-bay {min-height:53px; padding-top:6px; padding-bottom:6px}
 .daw-plugin-window {top:82px; width:410px}
 .daw-plugin-facade {max-height:23dvh}
 .daw-plugin-window--lemaster {width:305px}
}
@media(min-width:1000px) and (min-height:1000px) {
 .public-stage {gap:28px; padding-bottom:24px}
 .public-home .listening-intro {padding-top:24px; padding-bottom:16px}
 .daw-guide {min-height:200px; padding:15px 30px; gap:30px}
 .daw-mascot {width:190px; height:170px}
 .daw-mascot canvas {width:200px!important; height:200px!important; bottom:-15px}
 .daw-guide-bubble {padding:16px 22px 18px}
 .daw-guide-copy strong {font-size:22px}
 .daw-guide-copy p {font-size:13px}
 .daw-guide-actions {margin-top:15px}
}
/* Compact layouts keep controls reachable; they can scroll instead of clipping. */
@media(max-width:999px), (max-height:699px) {
 .public-stage {height:auto; min-height:calc(100dvh - var(--home-header-height))}
 .daw-workspace {min-height:310px}
}
@media(max-width:1100px) {
 .public-home .site-header {padding-left:20px; padding-right:20px}
 .public-home main {padding-left:20px; padding-right:20px}
 .public-home .listening-intro h1 {font-size:clamp(34px,4.5vw,50px)}
 .daw-workspace {grid-template-columns:175px minmax(0,1fr)}
 .daw-session-label {width:145px}
 .daw-ruler-row,.daw-track {grid-template-columns:minmax(0,1fr) 165px}
 .daw-output {max-width:165px}
 .daw-output .daw-meter {width:38px}
 .daw-device-caption {width:137px}
 .daw-guide {padding-left:8px; padding-right:15px; gap:10px}
 .daw-mascot {width:145px}
 .daw-guide-bubble {max-width:none}
 .daw-ruler span:nth-child(even) {visibility:hidden}
 .daw-arrangement-space {background-size:calc((100% - 165px)/8) 100%}
}
@media(max-width:760px) {
 .public-home {--home-header-height:68px}
 .public-home .site-header {height:auto; min-height:var(--home-header-height); padding:14px 16px; align-items:center; flex-direction:row; gap:15px}
 .public-home .brand {font-size:24px}
 .public-home .site-header nav {gap:10px 16px}
 .public-home main {padding-left:12px; padding-right:12px}
 .public-home .listening-intro {padding:16px 5px; align-items:flex-start}
 .public-home .listening-intro h1 {font-size:clamp(36px,6vw,48px); line-height:1.08; max-width:15ch}
 .listening-intro-aside {border:0; padding:4px 0 0; max-width:140px}
 .listening-intro-aside p {font-size:11px}
 .listening-intro-aside a {font-size:10px; gap:10px}
 .daw-toolbar {gap:11px}
 .daw-session-label {display:none}
 .daw-output {max-width:135px; min-width:60px}
 .daw-output label {display:none}
 .daw-clock {margin-left:auto}
 .daw-output .daw-meter {width:25px}
 .daw-workspace {grid-template-columns:1fr; grid-template-rows:auto auto; min-height:0; flex:none}
 .daw-browser {border:0; border-bottom:4px solid #121214; display:grid; grid-template-columns:1fr; gap:10px; padding:12px}
 .daw-search {max-width:none}
 .daw-browser-heading,.daw-browser-help,.daw-browser-footer {display:none}
 .daw-plugin-list {flex-direction:row; gap:10px}
 .daw .daw-browser-plugin {flex:1; width:auto; min-width:0; padding:7px 10px; min-height:48px}
 .daw .daw-search input {font-size:16px}
 .daw-ruler-row,.daw-track {grid-template-columns:minmax(0,1fr) 149px}
 .daw-track {min-height:126px}
 .daw-track-controls {padding:7px}
 .daw-track-heading {margin:-7px -7px 6px}
 .daw-ruler span:nth-child(even) {display:none}
 .daw-clip-label {font-size:8px}
 .daw-clip-label span:last-child {display:none}
 .daw-track-tools output {font-size:8px; min-width:33px}
 .daw-device-bay {padding:10px 12px; gap:12px; min-height:70px; flex-wrap:wrap}
 .daw-device-caption {width:80px}
 .daw-device-caption strong {font-size:11px}
 .daw-device-caption>span {font-size:7px}
 .daw-device {gap:10px; padding-left:10px; flex-wrap:wrap}
 .daw-device>small,.daw-product-link {display:none}
 .daw-empty-device {font-size:10px; max-width:25ch}
 .daw-guide {gap:0; padding:12px 11px 12px 0; min-height:205px}
 .daw-mascot {width:82px; height:112px}
 .daw-mascot canvas {width:106px!important; height:106px!important; left:-7px; bottom:-5px}
 .daw-guide-bubble {padding:8px 10px 11px}
 .daw-guide-copy strong {font-size:15px; letter-spacing:-.025em}
 .daw-guide-copy p {font-size:11px}
 .daw-guide-heading {font-size:8px; gap:4px}
 .daw-guide-heading>div {gap:4px}
 .daw-guide-heading .daw-text-button {font-size:9px}
 .daw-guide-heading .daw-text-button:first-child {max-width:45px; white-space:normal; text-align:right}
 .daw-guide-actions {gap:8px; flex-wrap:wrap}
 .daw-guide-wait {font-size:9px}
 .daw-guide-actions .daw-text-button {font-size:9px}
 .daw-statusbar {font-size:8px; padding:7px 10px; gap:10px}
 .daw-shortcut {display:none}
 .daw-plugin-window,.daw-plugin-window--lemaster {top:210px; right:10px; width:calc(100% - 20px)}
 .daw-plugin-facade {max-height:240px}
 .daw-plugin-window--lemaster .daw-plugin-facade {height:238px}
 .daw-plugin-switchbar>span {font-size:9px}
 .daw-plugin-switchbar {padding:9px; gap:8px}
 .daw--expanded {inset:5px}
 .daw--expanded .daw-workspace {flex:none}
 .daw--expanded .daw-guide {flex:1}
 .daw-arrangement-space {min-height:25px; background-size:calc((100% - 149px)/8) 100%}
 .public-home .product-grid {grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px 15px}
 .public-home .product-art {height:250px}
 .public-home .section-heading {display:block}
 .public-home .section-heading>span {display:block; margin:16px 0 0}
}
@media(max-width:460px) {
 .public-home .site-header nav a {font-size:11px}
 .public-home .site-header .button {padding:7px 10px}
 .public-home .listening-intro {display:block; padding:10px 4px}
 .public-home .listening-intro h1 {font-size:42px}
 .listening-intro-aside {display:flex; align-items:center; max-width:none; gap:20px; justify-content:space-between; margin-top:16px}
 .listening-intro-aside p {margin:0}
 .listening-intro-aside a {max-width:110px}
 .daw-windowbar {gap:8px; padding:0 10px}
 .daw-recording-label {display:none}
 .daw-window-title {gap:9px}
 .daw-window-title>span {padding-left:9px; font-size:9px}
 .daw-toolbar {gap:8px; padding:10px; flex-wrap:wrap}
 .daw-clock {gap:5px; padding:4px 8px}
 .daw-clock strong {font-size:16px}
 .daw-clock span {font-size:9px}
 .daw-output {flex-basis:100%; max-width:none; justify-content:flex-end}
 .daw-output label {display:block}
 .daw-output .daw-meter {width:60px}
 .daw-output input {max-width:94px}
 .daw-ruler-row,.daw-track {grid-template-columns:minmax(0,1fr) 134px}
 .daw-ruler span:nth-last-child(2) {display:none}
 .daw-drop-hint {font-size:10px}
 .daw-guide-heading>div {gap:0}
 .daw-device {padding-left:0; border:0}
 .daw .daw-effect {padding:0 7px; gap:5px}
 .daw-effect small {font-size:7px; padding-left:5px}
 .daw .daw-open-device {font-size:10px}
 .daw-device-caption {width:70px}
 .daw-plugin-window,.daw-plugin-window--lemaster {top:240px}
 .public-home .product-grid {grid-template-columns:1fr}
 .public-home .product-art {height:290px}
 .public-home footer {margin:0 16px}
}
@media(pointer:coarse) {
 .daw .daw-mini {min-width:28px; height:28px}
 .daw .daw-insert {min-height:30px}
 .daw .daw-effect {min-height:34px}
 .daw .daw-guide-next {min-height:36px}
 .daw-plugin-titlebar {min-height:38px}
 .daw-plugin-titlebar button {height:34px; width:34px}
 .daw .daw-square {width:34px; height:34px}
 .daw .daw-play {height:34px}
}
