:root{--store-accent:#ad79ff}.purple,.dark{background:var(--store-accent)}.closing{background:color-mix(in srgb,var(--store-accent) 12%,#0e0e12)}.highlighted{background:color-mix(in srgb,var(--store-accent) 10%,#17161d);border-color:var(--store-accent)}.shop,.admin-shell{padding:65px 5% 80px;max-width:1440px;margin:auto;min-height:70vh}.shop-heading{position:relative;padding-bottom:55px}.shop-heading h1{font-size:clamp(54px,6vw,88px);letter-spacing:-4px;line-height:1.08;margin-top:24px}.shop-heading p{position:absolute;right:0;bottom:60px;font-size:16px;line-height:1.8;color:var(--muted)}nav .active{color:var(--purple)}.shop-tools,.search-sort,.category-tabs,.toolbar,.admin-heading,.form-actions{display:flex;align-items:center;justify-content:space-between;gap:18px}.shop-tools{padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;margin-bottom:35px}.category-tabs{justify-content:flex-start;flex-wrap:wrap;gap:8px}.category-tabs button,.admin-tabs button{background:none;border:1px solid transparent;color:var(--muted);padding:10px 15px;border-radius:5px;font-size:14px}.category-tabs .selected,.admin-tabs .selected{background:#272031;border-color:#5c4476;color:#f1e4ff}input,select,textarea{font:inherit;color:var(--ink);background:#121016;border:1px solid #514759;border-radius:5px;padding:12px 14px;max-width:100%;font-size:15px}input:focus,select:focus,textarea:focus{outline:2px solid var(--purple);outline-offset:2px}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.product-card{border:1px solid #332c3e;border-radius:8px;overflow:hidden;background:#17141d}.product-art{position:relative;background:radial-gradient(ellipse at center,#33243f,#101015 75%);width:100%;height:330px;padding:26px;border:0;display:flex;align-items:center;justify-content:center}.product-art img{max-height:100%;max-width:100%;object-fit:contain;border-radius:4px}.product-category{position:absolute;top:18px;left:20px;font-size:11px;padding:6px 9px;background:#17121dd9;color:#d9cbe6;border:1px solid #534260;border-radius:3px}.product-copy{padding:26px}.product-title{display:flex;gap:15px;justify-content:space-between;align-items:center}.product-title h2{font-size:27px;letter-spacing:-1px}.product-title>span{font-family:'Space Grotesk',sans-serif;font-size:24px;white-space:nowrap}.product-copy p{color:var(--muted);font-size:16px;line-height:1.7;margin:15px 0 23px}.product-copy .button{width:100%}.store-assurance{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;padding:30px 0;margin-top:35px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.notice,.success,.error{padding:18px 22px;line-height:1.65;border-radius:5px;margin:20px 0;font-size:15px}.notice{border:1px solid #615032;background:#282216;color:#e1d2ad}.success{border:1px solid #3f6755;background:#14271d;color:#b6ebce}.error{border:1px solid #79404b;background:#331c23;color:#ffcad4}.error a,.help-copy a,.handover a,.admin-account a{color:var(--purple);text-decoration:underline}.empty{padding:60px 20px;text-align:center;color:var(--muted)}.empty h2{font-size:32px;margin-bottom:15px}.empty p{margin:15px 0;line-height:1.7}.empty .button{width:fit-content;margin:25px auto}.modal-layer{position:fixed;inset:0;background:#07050bdc;backdrop-filter:blur(7px);z-index:100;overflow:auto;padding:35px;display:flex;align-items:center;justify-content:center}.product-modal{max-width:1080px;width:100%;max-height:90vh;overflow:auto;background:#19151f;border:1px solid #675078;border-radius:9px;display:grid;grid-template-columns:1fr 1fr;position:relative}.detail-image{width:100%;height:100%;min-height:350px;object-fit:contain;padding:30px;background:#100d16}.detail-copy{padding:45px 32px}.detail-copy h2{font-size:35px;margin:18px 0;line-height:1.2}.detail-copy p{font-size:16px;line-height:1.7;color:var(--muted)}.description{white-space:pre-wrap;font-size:15px;color:#c9c0d3;line-height:1.85;margin:25px 0}.detail-price{font-size:32px;display:block;margin:22px 0}.detail-price small{font-size:13px;color:var(--muted)}.detail-copy>.button{width:100%}.detail-copy>small{display:block;font-size:12px;line-height:1.7;color:var(--muted);margin-top:14px}.close{z-index:1}button:disabled{opacity:.5;cursor:not-allowed}.downloads h1,.admin-heading h1{font-size:64px;letter-spacing:-3px;margin:24px 0;line-height:1.08}.downloads>p{font-size:16px;line-height:1.8;color:var(--muted)}.download-row{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:26px 0;border-bottom:1px solid var(--line)}.download-row p{font-size:15px;line-height:1.7;margin:9px 0;color:var(--muted)}.download-row small{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.pending{margin:50px 0}.pending h2{font-size:30px}.pending>p{margin:15px 0;line-height:1.8;color:var(--muted)}.help-copy{font-size:14px;line-height:1.8;color:var(--muted);margin:25px 0}.admin-heading{align-items:flex-end;margin-bottom:25px}.admin-heading h1{font-size:56px}.admin-account{color:var(--muted);font-size:14px;margin:20px 0}.admin-tabs{display:flex;gap:10px;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:30px 0}.toolbar{margin:30px 0}.toolbar h2{font-size:32px;letter-spacing:-1px}.toolbar h2 small{font-size:16px;color:var(--muted)}.admin-products article{display:flex;align-items:center;gap:25px;border:1px solid var(--line);border-radius:7px;background:#19161f;padding:20px;margin-bottom:15px}.admin-products img{width:120px;height:100px;object-fit:contain;background:#100d16;border-radius:4px}.admin-products h3{font-size:22px}.admin-products p{font-size:15px;color:var(--muted);margin:10px 0}.admin-products small{font-size:12px;color:var(--muted)}.row-actions{display:flex;gap:20px;align-items:center;margin-left:auto}.quiet{background:none;border:0;color:var(--muted);font-size:14px;text-decoration:underline}.status{font-size:11px;text-transform:uppercase;letter-spacing:.7px;border-radius:3px;padding:5px 8px;background:#30273c;color:#decbf6;display:inline-block}.status.published,.status.paid{background:#203a2e;color:#b5e3c9}.status.archived{background:#343034;color:#c3bcc5}.panel{background:#19161f;border:1px solid var(--line);padding:30px;border-radius:8px;margin:30px 0}.editor{scroll-margin-top:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.form-grid label,.appearance label{display:flex;flex-direction:column;gap:10px;font-size:14px;font-weight:500}.full{grid-column:1/-1}label small,.upload-field small{font-size:12px;font-weight:400;line-height:1.7;color:var(--muted)}textarea{resize:vertical}.upload-preview{width:100%;height:220px;object-fit:contain;margin-top:20px;background:#100d16;border:1px solid #39303f;border-radius:5px}.upload-field>small{display:block;margin:10px 0}.upload-field input[type=file]{width:100%;padding:10px}.upload-field input::file-selector-button{background:#35263f;color:#e9dcf4;border:1px solid #6e5383;border-radius:3px;padding:8px;margin-right:10px}.file-label{font-size:15px;overflow-wrap:anywhere;margin:25px 0}.colour-field{display:flex!important;flex-direction:row!important;align-items:center;gap:15px!important;margin:25px 0;flex-wrap:wrap}.colour-field input{width:65px;height:45px;padding:3px}.colour-field span{font-size:13px;color:var(--muted)}.form-actions{justify-content:flex-start;margin-top:35px;border-top:1px solid var(--line);padding-top:25px}.form-actions span{font-size:13px;color:var(--muted)}.appearance{max-width:800px}.appearance h2,.handover h2{font-size:36px}.appearance>p,.handover p{font-size:16px;line-height:1.85;color:var(--muted);margin:20px 0}.radio-card{flex-direction:row!important;border:1px solid #4b3a5b;padding:20px;align-items:flex-start;margin-top:20px;cursor:pointer}.radio-card input{margin-top:5px;accent-color:var(--purple)}.radio-card small{display:block;margin-top:8px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}th,td{padding:17px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:500}.order-id{display:block;max-width:230px;overflow-wrap:anywhere;color:var(--muted);font-size:11px;margin-top:8px}.handover{max-width:900px}.handover h3{margin-top:35px;font-size:23px}.handover code{background:#0c0a11;padding:3px 7px;border-radius:4px;font-size:13px;color:#d9b6ff;overflow-wrap:anywhere}.handover .button{width:fit-content}.audit-list small{display:block;color:var(--muted);font-size:12px;margin-top:7px}.audit-list li{padding:10px 0;border-bottom:1px solid var(--line)}.audit-list li:before{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}footer{gap:20px;flex-wrap:wrap}footer a{font-size:13px}footer .brand{font-size:32px}input[type=radio]{width:18px;height:18px;padding:0;flex-shrink:0}@media(max-width:900px){.shop-heading p{position:static;margin-top:25px}.shop-tools{display:block}.search-sort{margin-top:20px;justify-content:flex-start}.product-art{height:270px}.product-title{display:block}.product-title>span{display:block;margin-top:14px}.product-modal{grid-template-columns:1fr}.detail-image{max-height:300px;min-height:200px}.product-grid{gap:18px}.product-copy{padding:22px}.admin-products article{gap:15px}.admin-products img{width:90px}.row-actions{flex-direction:column;gap:15px}.form-grid{gap:20px}.admin-heading h1{font-size:48px}}@media(max-width:600px){header nav a:first-child{display:block}header nav{gap:13px;font-size:12px}.shop,.admin-shell{padding-top:40px}.shop-heading h1{font-size:53px;letter-spacing:-3px}.product-grid{grid-template-columns:1fr}.shop-tools input{width:100%}.search-sort{flex-wrap:wrap}.search-sort select{width:100%}.category-tabs button{padding:9px 12px;font-size:13px}.product-art{height:300px}.product-title{display:flex;align-items:flex-start}.product-title h2{font-size:24px}.product-title>span{font-size:22px;margin:0}.store-assurance{font-size:12px}.modal-layer{padding:15px}.detail-copy{padding:30px 23px}.detail-copy h2{font-size:30px}.download-row{flex-wrap:wrap}.download-row .button{width:100%}.downloads h1{font-size:46px}.admin-heading{display:block}.admin-heading>.button{width:fit-content}.admin-heading h1{font-size:45px}.admin-tabs{gap:5px}.admin-tabs button{padding:10px;font-size:13px}.admin-products article{flex-wrap:wrap}.admin-products img{width:70px;height:70px}.admin-products article>div:nth-child(2){flex:1;min-width:180px}.row-actions{flex-direction:row;width:100%;margin-left:0;justify-content:flex-end}.admin-products h3{font-size:20px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.panel{padding:22px}.toolbar{flex-wrap:wrap}.toolbar h2{font-size:28px}.form-actions{flex-wrap:wrap}.appearance h2,.handover h2{font-size:30px}.notice,.error,.success{padding:16px}.shop-heading{padding-bottom:35px}}
.payment-label{margin-top:22px}.appearance form>label{line-height:1.6}.appearance form>.button{margin-top:22px}
@media(max-width:600px){header{gap:12px}header .brand{font-size:27px}header nav{gap:10px;font-size:11px}}
.product-page{padding:35px 5% 80px;max-width:1440px;margin:auto}.breadcrumbs{display:flex;margin:0;justify-content:flex-start;gap:12px;font-size:13px;color:var(--muted);flex-wrap:wrap}.breadcrumbs a{color:var(--purple)}.product-page-title{padding:40px 0 35px}.product-page-title h1{font-size:clamp(40px,4.8vw,70px);letter-spacing:-3px;line-height:1.13;max-width:1000px;margin:20px 0}.product-page-title h1 em{font-size:.55em;font-style:normal;letter-spacing:-1px;display:block;margin-top:8px}.product-page-title>p{font-size:18px;color:var(--muted);line-height:1.7}.product-page-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:45px;align-items:start}.product-main{min-width:0}.product-showcase{background:radial-gradient(ellipse at center,#241c30,#0b0a10 75%);border:1px solid #3e344a;border-radius:7px;overflow:hidden}.product-showcase>button{width:100%;border:0;background:none;display:block;padding:30px;cursor:zoom-in}.product-showcase img{display:block;max-width:100%;height:auto;max-height:620px;object-fit:contain;margin:auto;border-radius:4px}.product-showcase>div{display:flex;justify-content:space-between;align-items:center;padding:17px 22px;border-top:1px solid #302738;color:var(--muted);gap:20px;font-size:11px;letter-spacing:1px}.product-showcase>div button{background:none;border:0;color:var(--purple);font-size:12px;letter-spacing:0}.product-jumps{display:flex;margin:0;padding:24px 0;gap:24px;justify-content:flex-start;border-bottom:1px solid var(--line);flex-wrap:wrap;font-size:13px;color:var(--muted)}.product-overview{padding:45px 0 15px;scroll-margin-top:30px}.product-prose{font-size:16px;line-height:1.9;color:#c8c1d2}.product-prose p{margin:20px 0;white-space:pre-line}.product-prose>p:first-child{font-size:12px;letter-spacing:1.2px;color:var(--purple);font-weight:600;margin:20px 0 25px}.product-prose h2{font-size:36px;letter-spacing:-1.5px;color:var(--ink);margin:55px 0 25px;line-height:1.15}.product-prose h3{font-size:23px;color:var(--ink);margin:30px 0 12px;padding-left:15px;border-left:3px solid var(--purple);line-height:1.4}.product-prose h3+p{margin-top:12px}.product-prose ul{border:0;padding:0;margin:20px 0}.product-prose li{font-size:16px}.purchase-sidebar{position:sticky;top:25px}.purchase-panel{border:1px solid #684b84;border-radius:7px;padding:28px;background:linear-gradient(145deg,#211a2c,#17141e)}.purchase-panel h2{font-size:26px;letter-spacing:-.7px;line-height:1.3;margin-top:20px}.purchase-amount{font-family:'Space Grotesk',sans-serif;font-size:46px;letter-spacing:-2px;margin:26px 0}.purchase-amount>span{display:block;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:0;color:var(--muted);margin-top:7px}.purchase-includes{border-top:1px solid #3c3048;margin:0;padding:15px 0 25px}.purchase-includes li{font-size:14px;margin:13px 0}.paypal-button{background:#ffc439;border:0;width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 19px;color:#172c50;font-size:16px;font-weight:700;border-radius:5px;min-height:55px}.paypal-button:disabled{opacity:.65}.checkout-status{font-size:12px;line-height:1.8;color:#c6bdcf;margin-top:15px}.purchase-divider{height:1px;background:#3c3048;margin:24px 0}.purchase-help{font-size:13px;line-height:1.9;color:var(--muted)}.purchase-help a{color:var(--purple)}.purchase-caption{display:flex;flex-direction:column;gap:5px;padding:30px 5px;font-family:'Space Grotesk',sans-serif;font-size:30px;letter-spacing:-1px;color:#6b5d7a}.purchase-caption strong{color:var(--purple);font-weight:500}.sandbox-label{color:#e9d8a9;font-size:12px;line-height:1.7;margin-bottom:15px}.delivery-panel,.edition-compare{padding:40px 0;border-top:1px solid var(--line);margin-top:30px;scroll-margin-top:30px}.delivery-panel h2,.edition-compare h2{font-size:34px;letter-spacing:-1.5px;line-height:1.2;margin:20px 0 30px}.delivery-grid{display:grid;gap:25px}.delivery-grid article{padding:23px;border:1px solid var(--line);border-radius:5px;background:#17141d}.delivery-grid article>span{font-size:11px;color:var(--purple);letter-spacing:1px}.delivery-grid h3{font-size:21px;margin:13px 0 10px}.delivery-grid p{font-size:15px;line-height:1.8;color:var(--muted)}.edition-compare th,.edition-compare td{padding:16px 12px;font-size:13px}.edition-compare th{color:#e1d6eb}.edition-compare td:not(:first-child){color:#b898db}.other-edition{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:25px;background:#21192c;border:1px solid #554065;border-radius:6px;margin-top:30px}.other-edition h3{font-size:23px;margin:10px 0}.other-edition p{font-size:14px;line-height:1.7;color:var(--muted)}.other-edition strong{font-size:21px;color:var(--purple);white-space:nowrap}.product-zoom{max-width:1200px;width:94%;padding:42px 20px 20px;background:#101016;border:1px solid #59446d}.product-zoom img{max-width:100%;max-height:80vh;display:block;margin:auto;object-fit:contain}@media(max-width:1000px){.product-page-grid{grid-template-columns:minmax(0,1fr) 300px;gap:25px}.purchase-panel{padding:22px}.purchase-amount{font-size:40px}.product-showcase>button{padding:18px}.product-jumps{gap:15px;font-size:12px}.product-page-title h1{font-size:53px}.product-prose h2{font-size:31px}}@media(max-width:760px){.product-page-grid{grid-template-columns:1fr;gap:35px}.purchase-sidebar{position:static;display:contents}.purchase-panel{grid-row:2;padding:25px}.product-main{display:contents}.product-showcase{grid-row:1}.product-jumps{grid-row:3}.product-overview{grid-row:4;padding-top:10px}.delivery-panel{grid-row:5}.product-proven{grid-row:6}.edition-compare{grid-row:7}.purchase-caption{display:none}.product-page-title{padding:30px 0}.product-page-title h1{font-size:43px;letter-spacing:-2px}.product-page-title>p{font-size:16px}.purchase-panel h2{font-size:24px}.purchase-amount{margin:20px 0}.purchase-includes{padding-bottom:15px}.product-prose h2{font-size:31px}.product-prose h3{font-size:22px}.other-edition{flex-wrap:wrap}.product-showcase>div{font-size:9px;padding:14px}.product-showcase>div button{font-size:11px}.edition-compare td,.edition-compare th{font-size:12px;padding:14px 8px}.breadcrumbs{font-size:12px}.delivery-panel,.edition-compare{margin-top:0}}
.advanced-synth{padding:22px 18px 58px}.advanced-synth>img{display:block;width:100%;max-height:100%;object-fit:contain;border-radius:4px;box-shadow:0 12px 30px #0006}.advanced-synth small{bottom:20px}
.fx-art{display:block;padding:0;background:radial-gradient(ellipse at 45% 42%,#46256166,transparent 65%),#100d17;border-color:#554066;isolation:isolate}.fx-grid{position:absolute;inset:0;background-image:linear-gradient(#bb86ff08 1px,transparent 1px),linear-gradient(90deg,#bb86ff08 1px,transparent 1px);background-size:30px 30px;mask-image:linear-gradient(transparent,#000,transparent);z-index:-1}.fx-art-top{position:absolute;top:27px;left:25px;right:25px;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#c9afdF}.fx-live{font-size:8px;border:1px solid #70508a;background:#2b1c39;padding:6px 8px;border-radius:3px;letter-spacing:1px}.fx-live:before{content:'';display:inline-block;width:4px;height:4px;border-radius:50%;background:#c28aff;margin-right:6px}.fx-orbit{position:absolute;width:330px;height:330px;border:1px solid #a16cdd25;border-radius:50%;left:50%;top:44%;transform:translate(-50%,-50%);box-shadow:0 0 0 34px #ac79e609,0 0 0 70px #ac79e605;z-index:-1}.fx-rack-frame{position:absolute;top:24%;left:5%;width:90%;padding:7px;border:1px solid #8b60af;background:#17111f;border-radius:7px;box-shadow:0 0 35px #a04ee82b,0 25px 40px #0009}.fx-rack-crop{position:relative;width:100%;aspect-ratio:1100/300;overflow:hidden;border-radius:3px;background:#14121a}.fx-rack-crop img{position:absolute;width:100%;height:auto;max-width:none;left:0;top:0;transform:translateY(-67.4%);display:block}.fx-callouts{position:absolute;top:61%;left:7%;right:7%;display:flex;justify-content:space-between;gap:10px;color:#d2b6ed;font-size:8px;letter-spacing:.7px}.fx-callouts span{position:relative;padding-top:16px}.fx-callouts span:before{content:'';position:absolute;left:0;top:-6px;height:14px;border-left:1px solid #9264b5}.fx-callouts b{font-weight:400;color:#8d699f;margin-right:5px}.fx-caption{position:absolute;bottom:30px;left:27px;right:27px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.fx-caption strong{font-family:'Space Grotesk',sans-serif;font-size:29px;line-height:1.1;letter-spacing:-1px;font-weight:500;color:#e8ddf5}.fx-caption em{font-style:normal;color:#b889ef}.fx-caption>span{font-size:8px;line-height:1.8;letter-spacing:1.4px;color:#bda2d0;text-align:right}@media(max-width:1000px){.fx-callouts{top:58%;font-size:7px}.fx-caption strong{font-size:24px}.fx-art-top{left:20px;right:20px;font-size:8px}.fx-live{font-size:7px}.fx-caption{left:22px;right:22px}}@media(max-width:650px){.fx-art{height:350px}.fx-rack-frame{top:26%}.fx-callouts{top:61%;font-size:7px;gap:5px}.fx-caption{bottom:23px}.fx-caption strong{font-size:26px}.fx-art-top{top:22px}.fx-caption>span{font-size:7px}}
.fx-caption em{font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit}
.fx-art-top{font-size:10px}.fx-live{font-size:9px}.fx-callouts{font-size:10px;letter-spacing:0}.fx-caption>span{font-size:9px}@media(max-width:1000px){.fx-callouts{font-size:9px}.fx-art-top{font-size:9px}.fx-live{font-size:8px}}@media(max-width:650px){.fx-callouts{font-size:9px}.fx-caption>span{font-size:8px}}
.menu-toggle{display:none}
@media(max-width:650px){
 .site-header{position:relative;justify-content:space-between;gap:15px;z-index:60}
 .site-header .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;align-items:center;margin-left:auto;width:44px;height:44px;border:1px solid #53445f;border-radius:5px;background:#1a1521;color:var(--ink);padding:10px}
 .menu-toggle>span{display:block;width:20px;height:2px;background:currentColor;border-radius:2px;transition:transform .18s,opacity .18s}
 .menu-toggle[aria-expanded=true]>span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true]>span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .site-header .site-navigation{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;margin:0;padding:9px 12px;background:#19151f;border:1px solid #554061;border-radius:7px;box-shadow:0 20px 40px #0008;flex-direction:column;gap:0;align-items:stretch;z-index:70;font-size:16px}
 .site-header .site-navigation.is-open{display:flex}.site-header .site-navigation a,.site-header .site-navigation a:first-child{display:block;padding:15px 12px;line-height:1.4;border-radius:4px}.site-header .site-navigation a+a{border-top:1px solid #342a3f}.site-header .site-navigation a:hover{background:#2a2035;color:#dfc5ff}.site-header .nav-buy{display:none}
}
@media(prefers-reduced-motion:reduce){.menu-toggle>span{transition:none}}
/* Keep the introduction readable and left-aligned at every screen width. */
.intro{grid-template-columns:minmax(0,1fr);gap:26px}.intro>div{display:block}.intro h2{white-space:normal}.intro p{max-width:780px;margin-top:25px}.features article{display:flex;flex-direction:column}.features .wave,.features .envelope,.features .bars{flex-shrink:0}.features .tag{margin-top:auto}
@media(max-width:650px){.intro{gap:22px}.intro p{margin-top:22px}}
/* A shared page width keeps desktop and windowed compositions consistent. */
:root{--page-width:1100px;--content-width:990px}
main,.shop,.admin-shell,.product-page{max-width:var(--page-width);margin-inline:auto}
header.site-header,footer{width:90%;max-width:var(--content-width);margin-inline:auto}
@media(min-width:651px){.hero-copy h1{font-size:clamp(70px,8.5vw,86px);letter-spacing:-4px}.hero-side{width:38%}}
/* Give the layout 50% more room while retaining shared alignment. */
:root{--page-width:1650px;--content-width:1485px}
.shop,.admin-shell,.product-page{padding-inline:min(5vw,82.5px)}
/* Place store copy in its own grid cell instead of over the heading. */
.shop-heading{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:24px 40px;align-items:end}
.shop-heading>.eyebrow{grid-column:1/-1}.shop-heading h1{font-size:clamp(52px,5.2vw,82px);margin:0;min-width:0;overflow-wrap:normal}
.shop-heading p{position:static;right:auto;bottom:auto;margin:0;padding-bottom:5px;max-width:100%;font-size:16px;line-height:1.8}
@media(max-width:1000px){.shop-heading{grid-template-columns:minmax(0,1fr);gap:24px}.shop-heading>.eyebrow{grid-column:auto}.shop-heading h1{font-size:clamp(48px,6vw,70px)}.shop-heading p{margin:0;padding:0}}
@media(max-width:600px){.shop-heading{gap:20px}.shop-heading h1{font-size:clamp(44px,8.5vw,53px)}}
/* Match the supplied windowed composition instead of stretching its columns. */
:root{--page-width:1200px;--content-width:1080px}
.shop,.admin-shell,.product-page{padding-inline:min(5vw,60px)}
@media(min-width:651px){.hero-copy h1{font-size:clamp(70px,8.5vw,102px);letter-spacing:-5px}}
@media(min-width:1001px){.hero-side{width:31%}}
.instrument-stage>img{width:auto;height:auto;max-width:74%;max-height:86%;object-fit:contain}
@media(max-width:650px){.instrument-stage>img{max-width:89%;max-height:86%}}
/* Use the same right-hand column width for the eyebrow and hero copy. */
.hero-top .release{width:31%;flex-shrink:0;text-align:left}
@media(min-width:651px) and (max-width:1000px){.hero-top .release{width:38%}}
.price-card>.edition-overview{margin-top:26px;font-size:15px;line-height:1.75}.price-card>.edition-list-label{font-size:14px;font-weight:600;color:var(--ink);margin-top:22px}.price-card>.edition-list-label+ul{margin-top:14px;padding-top:12px}.price-card>.edition-closing{font-size:14px;line-height:1.75;margin-top:20px;color:var(--muted)}
.guest-download-order{margin-top:25px}.receipt-box{padding:20px;border:1px solid var(--line);border-top:0;background:#19151f;border-radius:0 0 6px 6px}.receipt-box>label{font-size:15px;font-weight:600}.receipt-box>p{font-size:13px;line-height:1.7;color:var(--muted);margin:10px 0 15px}.receipt-controls{display:flex;gap:15px;align-items:center}.receipt-controls input{flex:1;min-width:0;font-size:13px}.receipt-controls button{white-space:nowrap}@media(max-width:650px){.receipt-controls{flex-direction:column;align-items:stretch}.receipt-controls input{width:100%}.receipt-controls button{justify-content:center}}

.checkout-account,.account-form{display:flex;flex-direction:column;gap:10px;margin:18px 0 8px;padding:16px;border:1px solid var(--line);border-radius:6px;background:#14121a}
.checkout-account-intro,.account-signed-in,.checkout-account-help{font-size:13px;line-height:1.6;color:var(--muted);margin:0}
.checkout-account label,.account-form label{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.checkout-account input,.account-form input{width:100%;box-sizing:border-box;padding:12px 14px;border-radius:6px;border:1px solid var(--line);background:#0e0e12;color:inherit;font:inherit}
.account-page{max-width:520px}
.account-form{margin-top:28px}
.account-form .button{margin-top:8px;justify-content:center}
.account-switch{margin-top:22px;color:var(--muted);font-size:14px}
.account-gate{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.account-gate .button{display:inline-flex}
button.linkish,a.linkish{background:none;border:0;padding:0;color:var(--purple);font:inherit;cursor:pointer;text-decoration:underline}

.checkout-page{max-width:1100px}
.checkout-lead{color:var(--muted);font-size:16px;line-height:1.7;max-width:40rem;margin:12px 0 36px}
.checkout-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);gap:28px;align-items:start}
.checkout-order,.checkout-account-panel{padding:28px}
.checkout-product{display:grid;grid-template-columns:96px minmax(0,1fr);gap:18px;margin:18px 0 22px}
.checkout-product img{width:96px;height:96px;object-fit:cover;border-radius:6px;border:1px solid var(--line);background:#0e0e12}
.checkout-category{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.checkout-product h2{margin:0 0 8px;font-size:22px;letter-spacing:-.5px}
.checkout-product p{margin:0;color:var(--muted);line-height:1.6;font-size:14px}
.checkout-total{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:18px}
.checkout-total strong{font-size:22px}
.checkout-total small{font-size:12px;color:var(--muted);font-weight:500}
.checkout-account-panel form{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.checkout-account-panel label{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.checkout-account-panel input{width:100%;box-sizing:border-box;padding:12px 14px;border-radius:6px;border:1px solid var(--line);background:#0e0e12;color:inherit;font:inherit}
.checkout-account-panel .paypal-button{margin-top:8px;text-align:center;text-decoration:none}
a.paypal-button{display:flex;align-items:center;justify-content:center}
@media(max-width:850px){.checkout-grid{grid-template-columns:1fr}.checkout-product{grid-template-columns:72px minmax(0,1fr)}}

.product-title h2 em,.purchase-panel h2 em,.other-edition h3 em{display:block;margin-top:6px;color:var(--purple);font-style:normal;font-size:.72em;letter-spacing:-.5px;line-height:1.2}

/* features mobile full-width */
@media (max-width: 1200px) {
  .features {
    grid-template-columns: 1fr;
    margin-left: 5%;
    margin-right: 5%;
  }
  .features article {
    border-left: 0 !important;
    padding: 22px 22px 24px;
    align-items: flex-start;
    width: 100%;
    box-sizing: border-box;
    /* Hug content — don't stretch like equal-height desktop columns. */
    height: auto;
    min-height: 0;
  }
  .features article + article {
    border-top: 1px solid #312d3b;
  }
  .features .tag {
    margin-top: 18px !important;
  }
  .features .number,
  .features h3,
  .features p,
  .features .tag {
    text-align: left;
    width: 100%;
    max-width: none;
  }
  .features h3 {
    margin-top: 10px;
    margin-bottom: 0;
  }
  .features p {
    margin: 12px 0 0;
  }
  .features .wave,
  .features .envelope,
  .features .bars,
  .features .wave.squiggle {
    height: 72px !important;
    min-height: 0 !important;
    width: auto;
    max-width: none;
    margin: 4px 0 0;
    justify-content: flex-start;
    align-items: center;
    overflow: visible;
  }
  .features .wave.dials {
    display: flex;
    gap: 14px;
    height: 72px !important;
    width: auto;
  }
  .features .wave.dials svg {
    width: 68px;
    height: 68px;
  }
  .features .wave.squiggle {
    width: 168px;
    max-width: 168px;
  }
  .features .wave.squiggle svg {
    width: 168px;
    height: 56px;
  }
  .features .bars {
    width: 168px;
    max-width: 168px;
    overflow: hidden;
  }
  .features .bars:before {
    width: 100%;
    height: 56px;
  }
  .features .envelope svg {
    width: 168px;
    height: 56px;
  }
}

@media (max-width: 650px) {
  .features {
    margin-left: 5%;
    margin-right: 5%;
  }
  .features article {
    padding: 20px 18px 22px;
  }
  .features .tag {
    margin-top: 16px !important;
  }
  .features .wave,
  .features .envelope,
  .features .bars,
  .features .wave.squiggle,
  .features .wave.dials {
    height: 68px !important;
  }
  .features .wave.dials svg {
    width: 64px;
    height: 64px;
  }
  .features .wave.squiggle {
    width: 156px;
    max-width: 156px;
  }
  .features .wave.squiggle svg {
    width: 156px;
    height: 52px;
  }
  .features .bars {
    width: 156px;
    max-width: 156px;
  }
  .features .bars:before {
    height: 52px;
  }
}

/* features desktop icon alignment */
@media (min-width: 1201px) {
  .features {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .features article {
    align-items: stretch;
  }
  .features .wave,
  .features .envelope,
  .features .bars {
    height: 115px;
    min-height: 115px;
    width: 100%;
    max-width: none;
    margin: 0;
    align-items: center;
    justify-content: flex-start;
  }
  .features .wave.dials {
    height: 115px;
    min-height: 115px;
    gap: 16px;
    margin: 0;
  }
  .features .wave.dials svg {
    width: 78px;
    height: 78px;
  }
  .features .wave:not(.dials) {
    font-size: 85px;
    letter-spacing: -15px;
    line-height: 1;
    height: 115px;
  }
  .features .bars {
    width: 220px;
    max-width: 220px;
  }
  .features .bars:before {
    height: 60px;
    width: 100%;
  }
  .features .envelope svg {
    width: 100%;
    height: 80px;
  }
}

/* home image lightbox */
#instrument > img {
  cursor: zoom-in;
}
#image-view {
  position: relative;
  max-width: min(1200px, 96vw);
  width: 96vw;
  padding: 52px 18px 18px;
  background: #0f0e14;
  border: 1px solid #5a4a6e;
  border-radius: 10px;
  color: #fff;
}
#image-view::backdrop {
  background: #07050de8;
  backdrop-filter: blur(8px);
}
#image-view img {
  width: 100%;
  max-height: calc(100vh - 110px);
  object-fit: contain;
  display: block;
  margin: 0 auto;
}
#image-view .close {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  width: 42px;
  height: 42px;
  border: 1px solid #6d5a82;
  border-radius: 8px;
  background: #1c1724;
  color: #f4eefc;
  font-size: 28px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
#image-view .close:hover {
  filter: none;
  background: #2a2235;
  border-color: #9b7dc0;
  color: #fff;
}
@media (max-width: 650px) {
  #image-view {
    width: 94vw;
    padding: 48px 10px 10px;
  }
  #image-view .close {
    width: 40px;
    height: 40px;
  }
}

/* instrument stage image scale */
/* Give the synth more room so UI text is readable. */
.instrument-stage {
  height: 720px;
}
.instrument-stage > img {
  width: auto;
  height: auto;
  max-width: 92%;
  max-height: 90%;
  object-fit: contain;
}
@media (max-width: 1000px) {
  .instrument-stage {
    height: 560px;
  }
  .instrument-stage > img {
    max-width: 90%;
    max-height: 88%;
  }
}
@media (max-width: 650px) {
  .instrument-stage {
    height: 390px;
    padding: 18px 12px 48px;
    box-sizing: border-box;
  }
  /* Decorative corner copy overlaps the larger image on phones — hide it. */
  .instrument-stage .stage-label {
    display: none;
  }
  .instrument-stage > img {
    max-width: 96%;
    max-height: 100%;
  }
  .instrument-stage .stage-bottom {
    left: 14px;
    right: 14px;
    bottom: 12px;
    font-size: 9px;
    gap: 10px;
  }
  .instrument-stage .stage-bottom button {
    font-size: 11px;
  }
}

/* proven / industry video */
.proven {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 40px 48px;
  align-items: center;
  margin: 0 5% 90px;
  padding: 42px 0 10px;
}
.proven-copy h2 {
  font-size: clamp(28px, 3.4vw, 42px);
  letter-spacing: -1.4px;
  line-height: 1.15;
  margin-top: 18px;
  max-width: 16ch;
}
.proven-names {
  margin: 26px 0 0;
  padding: 0;
  color: #d7c6ec;
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 0.2px;
  max-width: 34ch;
}
.proven-names span {
  display: inline-block;
  margin: 0 0.55em;
  color: var(--purple);
}
.proven-media {
  border: 1px solid #3f334d;
  border-radius: 8px;
  overflow: hidden;
  background: #0d0b12;
  box-shadow: 0 24px 50px #0007;
}
.proven-media video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  background: #000;
}
@media (max-width: 1000px) {
  .proven {
    grid-template-columns: 1fr;
    gap: 28px;
    margin-bottom: 60px;
    padding-top: 20px;
  }
  .proven-copy h2 {
    max-width: 20ch;
  }
}
@media (max-width: 650px) {
  .proven {
    margin-left: 4%;
    margin-right: 4%;
    margin-bottom: 45px;
  }
  .proven-copy h2 {
    font-size: 30px;
    max-width: none;
  }
  .proven-names {
    font-size: 15px;
    max-width: none;
  }
}

/* product proven video */
.product-page .proven,
.product-proven {
  margin: 28px 0 8px;
  padding: 28px 0 8px;
  gap: 28px 36px;
  border-top: 1px solid var(--line);
}
.product-page .proven-copy h2 {
  max-width: 18ch;
}
@media (max-width: 1000px) {
  .product-page .proven,
  .product-proven {
    margin-top: 22px;
    padding-top: 22px;
  }
}

/* proven heading compact */
.proven-heading {
  font-size: 15px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  font-weight: 600;
  margin: 0 0 12px;
}
.product-page .proven-copy h2.proven-heading,
.proven-copy h2.proven-heading {
  max-width: none;
  font-size: 15px;
  letter-spacing: 0.08em;
  line-height: 1.4;
  margin-top: 0;
}
.proven-names {
  font-size: 18px;
  line-height: 1.7;
  color: #f0e8fa;
  max-width: none;
}

/* product proven mobile order */
@media (max-width: 760px) {
  .product-proven {
    order: unset;
    margin-top: 10px;
    margin-bottom: 0;
    padding-top: 24px;
    border-top: 1px solid var(--line);
  }
  .product-proven .proven-media {
    margin-top: 16px;
  }
}

/* proven heading sentence */
.proven-heading,
.product-page .proven-copy h2.proven-heading,
.proven-copy h2.proven-heading {
  font-size: 20px;
  letter-spacing: -0.3px;
  line-height: 1.35;
  text-transform: none;
  color: #f0e8fa;
  font-weight: 600;
  margin: 0 0 12px;
  max-width: none;
}

/* closing explore button */
.closing .button {
  width: auto;
  max-width: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-inline: auto;
  padding: 14px 22px;
}
.closing .button span {
  margin: 0;
}

/* account page title */
.account-page h1 {
  font-size: clamp(42px, 8vw, 56px);
  letter-spacing: -2px;
  line-height: 1.1;
  white-space: nowrap;
  margin: 18px 0 14px;
}
@media (max-width: 650px) {
  .account-page h1 {
    font-size: 40px;
    letter-spacing: -1.5px;
  }
}

/* feature squiggle svg */
.features .wave.squiggle {
  font-size: 0;
  letter-spacing: 0;
  width: 180px;
  max-width: 180px;
  height: 115px;
  display: flex;
  align-items: center;
}
.features .wave.squiggle svg {
  width: 180px;
  height: 70px;
  display: block;
  overflow: visible;
}
.features .wave.squiggle .squiggle-path {
  fill: none;
  stroke: var(--purple);
  stroke-width: 10;
  stroke-linecap: round;
  stroke-linejoin: round;
}
@media (max-width: 1000px) {
  .features .wave.squiggle,
  .features .wave:not(.dials) {
    font-size: 0;
    letter-spacing: 0;
    width: 180px;
    max-width: 180px;
    height: 5.5rem;
  }
  .features .wave.squiggle svg {
    width: 180px;
    height: 70px;
  }
}
@media (max-width: 650px) {
  .features .wave.squiggle {
    width: 168px;
    max-width: 168px;
    height: 5.25rem;
  }
  .features .wave.squiggle svg {
    width: 168px;
    height: 64px;
  }
}
@media (min-width: 1001px) {
  .features .wave.squiggle {
    width: 180px;
    max-width: 180px;
    height: 115px;
  }
}

/* features windowed stack */
@media (max-width: 1200px) {
  .features {
    grid-template-columns: 1fr !important;
  }
  .features article + article {
    border-left: 0 !important;
    border-top: 1px solid #312d3b;
  }
  .features .wave.squiggle,
  .features .wave.squiggle svg {
    width: 168px !important;
    max-width: 168px !important;
  }
  .features .wave.squiggle {
    height: 72px !important;
    min-height: 0 !important;
    font-size: 0 !important;
    letter-spacing: 0 !important;
  }
  .features .wave.squiggle svg {
    height: 56px !important;
  }
  .features .wave.squiggle .squiggle-path {
    stroke-width: 10;
  }
}
@media (min-width: 1201px) {
  .features .wave.squiggle {
    width: 180px;
    max-width: 180px;
    height: 115px;
    font-size: 0;
    letter-spacing: 0;
  }
  .features .wave.squiggle svg {
    width: 180px;
    height: 70px;
  }
}
