/* Montserrat (SIL OFL 1.1, assets/fonts/OFL.txt) is served from this site: no visitor data goes to third-party font servers. */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/montserrat-400-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-052F, U+1C80-1C8A, U+20B4, U+2116, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/montserrat-500-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-052F, U+1C80-1C8A, U+20B4, U+2116, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/fonts/montserrat-600-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-052F, U+1C80-1C8A, U+20B4, U+2116, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/montserrat-700-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-052F, U+1C80-1C8A, U+20B4, U+2116, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:800;font-display:swap;src:url('/assets/fonts/montserrat-800-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-052F, U+1C80-1C8A, U+20B4, U+2116, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/montserrat-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/montserrat-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/fonts/montserrat-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/montserrat-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:800;font-display:swap;src:url('/assets/fonts/montserrat-800-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/montserrat-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2190-2199, U+2212, U+2215, U+2248, U+FEFF, U+FFFD}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/montserrat-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2190-2199, U+2212, U+2215, U+2248, U+FEFF, U+FFFD}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/fonts/montserrat-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2190-2199, U+2212, U+2215, U+2248, U+FEFF, U+FFFD}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/montserrat-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2190-2199, U+2212, U+2215, U+2248, U+FEFF, U+FFFD}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:800;font-display:swap;src:url('/assets/fonts/montserrat-800-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2190-2199, U+2212, U+2215, U+2248, U+FEFF, U+FFFD}
:root{--bg:#11101A;--panel:#1B1825;--ink:#FAF8FC;--muted:#B8AEC6;--line:#353140;--accent:#24D6E8;--accentink:#11101A;--action:#A31463;--actionink:#FFFFFF;--pink:#E8329D;--soft:#252033;--title:Montserrat,Arial,sans-serif;--body:Montserrat,Arial,sans-serif;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 var(--body)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button,a{transition:background .2s,color .2s,transform .2s}button{cursor:pointer;border:0}button:disabled{cursor:wait;opacity:.6}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.reviewbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 5%;background:#080a09;font-size:12px;letter-spacing:.1em;color:#bcc5bf}.themes{display:flex;gap:5px}.themes button{padding:6px 12px;background:transparent;color:#abb8b1;border:1px solid #384139;border-radius:6px;font-size:13px;white-space:nowrap}.themes button.active{background:#d0f49b;color:#182115;border-color:#d0f49b}header{max-width:1440px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:28px 5%;gap:24px}.brand{font:800 34px/1 var(--title);letter-spacing:-2px}.brand span{font-weight:500}.brand i{font-size:11px;vertical-align:top;color:var(--accent);font-style:normal;margin-left:5px}.brand.small{font-size:26px}nav{display:flex;align-items:center;gap:30px;font-size:14px}nav button{color:var(--muted);background:none;padding:8px 0}nav a{color:var(--muted)}nav button:hover,nav a:hover{color:var(--ink)}.account{color:var(--ink);border:1px solid var(--line);background:transparent;border-radius:100px;padding:11px 22px;font-size:14px}main{max-width:1440px;margin:auto;padding:0 5%}.view{display:none}.view.active{display:block}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:620px;align-items:center;gap:35px;padding:35px 0 56px}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:700;color:var(--accent);margin:0 0 22px}.hero h1{font:700 clamp(48px,5.6vw,86px)/1.04 var(--title);letter-spacing:-4px;margin:0 0 28px}.hero h1 em{font-style:normal;color:var(--accent)}.lead{font-size:19px;line-height:1.6;color:var(--muted);margin:0 0 33px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.primary,.secondary{padding:17px 22px;border-radius:100px;font-weight:600;font-size:14px;display:inline-flex;align-items:center;justify-content:center;min-height:52px}.primary{background:var(--action);color:var(--actionink)}.primary:hover{transform:translateY(-2px);filter:brightness(1.05)}.secondary{background:transparent;border:1px solid var(--line);color:var(--ink)}.secondary:hover{background:var(--panel)}.honesty{font-size:12px;line-height:1.7;color:var(--muted);margin:24px 0 0;max-width:410px}.hero-image{height:510px;position:relative;overflow:hidden;border-radius:5px 80px 5px 5px}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:75% center}.hero-image:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.8))}.image-caption{position:absolute;bottom:30px;left:30px;z-index:1;color:white}.image-caption span{font-size:11px;letter-spacing:.2em;display:block}.image-caption b{font:600 30px var(--title)}.benefits{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:27px 0;gap:25px}.benefits>div{display:flex;gap:20px;align-items:center}.benefits b{font:400 35px var(--title);color:var(--accent)}.benefits span{font-size:14px;color:var(--muted)}.paths{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;padding:72px 0 90px}.section-title h2{font:600 32px/1.25 var(--title);letter-spacing:-1px}.paths article{border-left:1px solid var(--line);padding-left:32px}.paths article h3{font:600 30px/1.2 var(--title);letter-spacing:-.6px}.paths article p:not(.eyebrow){color:var(--muted);font-size:15px}.textbutton{padding:8px 0;background:none;border-bottom:1px solid var(--accent);color:var(--ink);font-size:14px}.workspace-title{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:40px 0 30px}.workspace-title h1{font:600 clamp(30px,3.4vw,48px)/1.2 var(--title);letter-spacing:-1.5px;margin:0 0 12px}.workspace-title .eyebrow{margin-bottom:12px}.workspace-title p:not(.eyebrow){color:var(--muted);margin:0}.compact{padding:12px 18px;white-space:nowrap}.steps{display:flex;gap:0;list-style:none;padding:0;margin:0 0 28px;border-bottom:1px solid var(--line)}.steps li{padding:14px 24px 14px 0;margin-right:30px;font-size:13px;color:var(--muted);border-bottom:2px solid transparent}.steps li.active{color:var(--accent);border-color:var(--accent)}.workspace-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:48px;align-items:start;padding-bottom:70px}.panel{background:var(--panel);border:1px solid var(--line);padding:30px;border-radius:16px}.mode-tabs{display:flex;gap:10px;padding:5px;background:var(--bg);border-radius:100px;margin-bottom:20px}.mode-tabs button{padding:12px 20px;border-radius:100px;background:none;color:var(--muted);flex:1;font-size:14px}.mode-tabs button.active{background:var(--soft);color:var(--ink)}.record-area{text-align:center;padding:20px 0 15px}.mic{width:76px;height:76px;border-radius:50%;background:var(--accent);color:var(--accentink);display:inline-flex;align-items:center;justify-content:center}.mic svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.6}.mic.recording{background:var(--action);animation:pulse 1.4s infinite}.record-area h3{font:600 23px var(--title);margin:18px 0 8px}.record-area p{font-size:15px;color:var(--muted);margin:0 0 15px}.record-area span{font-size:12px;color:var(--muted)}.file-label{display:flex;justify-content:center;gap:12px;align-items:center;font-size:13px;flex-wrap:wrap;margin:15px 0 25px}.file-label input{max-width:220px;font-size:12px}.field{display:block;font-size:14px;font-weight:500;margin:0 0 20px}.field input,.field textarea,.field select{display:block;width:100%;padding:13px 14px;background:var(--bg);border:1px solid var(--line);border-radius:8px;color:var(--ink);margin-top:8px;font-size:15px}.field textarea{resize:vertical;line-height:1.6}.field small{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:8px}.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:.8}details{padding:17px 0;border-top:1px solid var(--line)}summary{cursor:pointer;font-size:14px;font-weight:500}details .field{margin-top:16px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.wide{width:100%;margin-top:8px}.privacy-note{font-size:12px;color:var(--muted);line-height:1.6;margin:14px 0 0}.aside-note{padding:28px 0;border-top:1px solid var(--line)}.aside-note h3{font:500 31px/1.3 var(--title);letter-spacing:-1px;margin:0 0 25px}.aside-note ul{padding-left:18px;color:var(--muted);font-size:15px}.aside-note li{margin:18px 0}.aside-note p:not(.eyebrow),.aside-foot p{font-size:15px;color:var(--muted)}.aside-foot{padding:25px 0;border-top:1px solid var(--line)}.aside-foot b{font-size:14px}.check{display:flex;align-items:flex-start;gap:12px;font-size:14px;margin:22px 0}.check input{accent-color:var(--accent);width:18px;height:18px;flex-shrink:0;margin-top:3px}.demo-tag{background:var(--soft);color:var(--accent);font-size:11px;padding:12px;letter-spacing:.06em;border-radius:6px}.subtle{font-size:13px;color:var(--muted)}#photo-preview{display:flex;align-items:center;gap:20px;margin:16px 0}#photo-preview img{max-width:130px;max-height:120px;border-radius:8px}#photo-observation,#questions{background:var(--bg);padding:18px;border-radius:8px;font-size:14px;margin-top:20px}#photo-observation p{color:var(--muted)}.track-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:28px}.track{padding:28px;background:var(--panel);border:1px solid var(--line);border-radius:16px}.track img{width:100%;max-height:200px;object-fit:cover;border-radius:8px}.track audio{width:100%;margin:20px 0}.track h3{font:600 24px var(--title)}.track p{font-size:13px;color:var(--muted)}.extras{margin:36px 0 60px}.extras h2{font:500 32px/1.3 var(--title);letter-spacing:-1px}.extra-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-top:1px solid var(--line);padding-top:25px}.extra-grid p{font-size:14px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:32px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer p,footer>span:last-child{font-size:12px;color:var(--muted)}#notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--panel);color:var(--ink);border:1px solid var(--accent);padding:18px 24px;max-width:600px;width:calc(100% - 40px);border-radius:12px;z-index:20;box-shadow:0 10px 50px #0004;font-size:14px}dialog{max-width:580px;width:calc(100% - 32px);background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:20px;padding:40px}dialog::backdrop{background:#0009;backdrop-filter:blur(5px)}dialog h2{font:600 34px/1.2 var(--title);letter-spacing:-1px}dialog p{color:var(--muted);font-size:15px}.dialog-close{position:absolute;right:16px;top:12px;background:none;color:var(--ink);font-size:28px}.calendar-preview{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin:25px 0}.calendar-preview p{font-size:14px;margin-bottom:0}@keyframes pulse{50%{box-shadow:0 0 0 12px #E8329D25}}:root[data-theme=light]{--bg:#FAF8FC;--panel:#FFFFFF;--ink:#11101A;--muted:#675D70;--line:#DDD6E4;--accent:#087884;--accentink:#FFFFFF;--soft:#F1EBF6;color-scheme:light}.reviewbar{background:var(--panel);color:var(--muted);border-bottom:1px solid var(--line)}.themes button{color:var(--muted);border-color:var(--line);min-height:44px}.themes button.active{background:var(--accent);color:var(--accentink);border-color:var(--accent)}.busy{opacity:.65;pointer-events:none}
@media(max-width:1000px){.hero{gap:20px;min-height:550px}.hero-image{height:440px}.hero h1{letter-spacing:-2px}.hero-actions{flex-direction:column;align-items:flex-start}.paths{gap:25px}.workspace-grid{gap:25px;grid-template-columns:minmax(0,2fr) minmax(210px,1fr)}nav{gap:16px}.panel{padding:23px}.aside-note h3{font-size:26px}}
@media(max-width:720px){.reviewbar{padding:9px 5%;flex-direction:column;gap:7px;font-size:10px;text-align:center}.themes button{font-size:12px}header{padding:22px 5%;gap:12px}.brand{font-size:29px}nav{display:none}.account{padding:9px 15px;font-size:13px}.hero{grid-template-columns:1fr;padding:24px 0 32px;gap:30px}.hero h1{font-size:55px;letter-spacing:-2px}.hero .eyebrow{font-size:11px}.lead{font-size:17px}.hero-actions{flex-direction:column;align-items:stretch}.hero-image{height:290px;border-radius:6px 50px 6px 6px}.hero-image img{object-position:center 36%}.benefits{grid-template-columns:1fr;gap:20px}.benefits span br{display:none}.benefits b{font-size:28px}.paths{grid-template-columns:1fr;padding:45px 0;gap:24px}.paths article{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:20px}.section-title h2{font-size:30px}.workspace-title{align-items:flex-start;flex-direction:column;padding-top:25px}.workspace-title h1{font-size:34px;letter-spacing:-1px}.workspace-title p{font-size:15px}.steps{justify-content:space-between}.steps li{padding:12px 0;margin:0;font-size:11px}.workspace-grid{grid-template-columns:1fr;gap:20px}.panel{padding:20px}.workspace-grid aside{display:none}.two-fields{grid-template-columns:1fr;gap:0}.mode-tabs button{padding:12px 8px;font-size:13px}.track-grid,.extra-grid{grid-template-columns:1fr}.record-area h3{font-size:21px}.record-area p{font-size:14px}footer{flex-direction:column;align-items:flex-start;padding:25px 5%}footer p{margin:0}dialog{padding:28px}dialog h2{font-size:29px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

@media(max-width:380px){.hero h1{font-size:clamp(38px,13vw,49px)}.themes{flex-wrap:wrap;justify-content:center}.workspace-title h1{font-size:30px}}

.brand-lockup{display:flex;align-items:center;gap:12px;min-width:0}.brand-original{width:64px;height:64px;object-fit:contain;background:#11101A;border-radius:10px;flex:none}.brand-copy{display:block;min-width:0}.brand-copy strong{display:block;font:800 20px/1.25 var(--title);letter-spacing:-.6px}.brand-copy small{display:block;color:var(--muted);font:500 10px/1.5 var(--body);letter-spacing:1.8px}.brand-copy em{display:block;color:var(--muted);font:400 11px/1.5 var(--body);letter-spacing:0;font-style:normal}.hero-copy{position:relative}.hero-copy:before{content:'';display:block;width:90px;height:4px;background:linear-gradient(90deg,var(--pink),#24D6E8);border-radius:4px;margin-bottom:24px}.hero h1{font-size:clamp(42px,4.6vw,72px);letter-spacing:-2.5px}.primary,.secondary{border-radius:12px}.hero-image{border-radius:16px 60px 16px 16px}.themes button.active{background:var(--action);color:var(--actionink);border-color:var(--action)}@media(max-width:1050px){header{flex-wrap:wrap}header nav{order:3;width:100%;justify-content:center}.hero h1{letter-spacing:-2px}}@media(max-width:720px){header{flex-wrap:nowrap}.brand-original{width:48px;height:48px}.brand-copy strong{font-size:18px}.brand-copy small{font-size:8px;letter-spacing:1.3px}.brand-copy em{font-size:9px}header .account{padding:9px 12px}.hero h1{font-size:clamp(39px,10vw,58px)}.hero-image{border-radius:16px 42px 16px 16px}}@media(max-width:380px){.brand-original{width:40px;height:40px}.brand-lockup{gap:8px}.brand-copy strong{font-size:16px}.brand-copy em{font-size:8px}header .account{font-size:11px;padding:9px}.hero h1{font-size:39px}}

/* Original approved marks, supplied 8 October 2026. */
.brand-original{background:transparent;border-radius:0}.brand-logo-light{display:none}:root[data-theme=light] .brand-logo-light{display:block}:root[data-theme=light] .brand-logo-dark{display:none}

/* Commercial MVP: four-plan catalog (staging only until payments are secure). */
.plans{padding:35px 0 70px}
.plans .section-title{margin-bottom:25px}
.plans .section-title h2{margin:8px 0 12px}
.plan-intro{color:var(--muted);max-width:700px;line-height:1.7}
.plans-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.plan-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:28px 22px;border:1px solid var(--line);border-radius:18px;background:var(--panel);min-width:0}
.plan-card h3{font:700 24px/1.3 var(--title);letter-spacing:-.7px;margin:6px 0 0}
.plan-card .plan-price{font:700 clamp(31px,3vw,41px)/1.2 var(--title);color:var(--ink);margin:0}
.plan-description{font-size:14px;line-height:1.6;color:var(--muted);margin:0}
.plan-meta{font-size:12px;font-weight:600;color:var(--ink);margin-top:auto;padding-top:12px}
.plan-card button{margin-top:5px}
.plan-featured{border:2px solid var(--accent);padding:27px 21px}
.plan-badge{display:table;align-self:flex-start;border-radius:16px;background:var(--accent);color:var(--accentink);padding:5px 11px;font-size:11px;font-weight:700}
.plan-indicator{margin:15px 0 5px;border:1px solid var(--line);border-radius:12px;padding:13px 18px;background:var(--panel);color:var(--ink);font-size:14px}
@media(max-width:1100px){.plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Mobile catalog: show START/LISTEN and CHOOSE/CREATE+ in pairs. */
@media (min-width:350px) and (max-width:620px) {
  .plans-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
  .plan-card {min-width:0;padding:16px 12px;gap:9px;border-radius:16px}
  .plan-featured {padding:15px 11px}
  .plan-card h3 {font-size:18px;line-height:1.25;letter-spacing:-.45px;margin:4px 0 0}
  .plan-card .plan-price {font-size:clamp(26px,7.4vw,31px);line-height:1.15;letter-spacing:-.5px}
  .plan-description {font-size:12px;line-height:1.48;overflow-wrap:break-word}
  .plan-meta {font-size:11px;line-height:1.4;padding-top:8px}
  .plan-badge {font-size:10px;padding:4px 8px}
  .plan-card button {font-size:12px;line-height:1.2;min-height:48px;padding:9px 5px;white-space:normal;overflow-wrap:anywhere}
  .plans {padding-bottom:45px}
  .plans .section-title h2 {font-size:27px}
}
@media (max-width:349px) {
  .plans-grid {grid-template-columns:1fr;gap:12px}
  .plan-card {padding:20px 18px}
  .plan-featured {padding:19px 17px}
  .plans {padding-bottom:45px}
}
/* v0.4 copy pass: single gift product on the home page */
.hero-free{font-size:14px;color:var(--ink);margin:16px 0 0;max-width:430px}
.how{padding:56px 0 0}
.how .section-title{margin-bottom:24px}
.how .benefits{grid-template-columns:repeat(4,minmax(0,1fr))}
.how .benefits>div{align-items:flex-start}
.how .benefits span{line-height:1.6}
.how .benefits strong{color:var(--ink);font-weight:600}
.detail-note{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px 48px;align-items:start;padding:64px 0 56px}
.detail-note .section-title h2{margin:8px 0 12px}
.detail-note ul{margin:0;padding-left:18px;color:var(--muted);font-size:15px;line-height:1.6}
.detail-note li{margin:0 0 14px}
.detail-note>button{grid-column:2;justify-self:start}
.footer-pro{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.footer-pro .textbutton{font-size:12px}
@media(max-width:1000px){.how .benefits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.how{padding-top:40px}.how .benefits{grid-template-columns:1fr}.detail-note{grid-template-columns:1fr;padding:44px 0 40px}.detail-note>button{grid-column:1}}
/* Free-lyrics mode: the email panel sits inside the lyrics panel, right before music */
#order-slot>#buyer-verification{margin:20px 0;padding:22px;box-shadow:none;background:var(--bg)}
#order-slot>#buyer-verification h3{margin-top:0}
#plan-choice select{width:100%}
.view>#buyer-verification{margin-bottom:24px}
/* Legal pages and consent */
.consent-note{font-size:12px;color:var(--muted);margin:10px 0 0}
.consent-note a,.privacy-note a,.footer-legal a,.legal-page a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.footer-legal{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted)}
.legal header nav a[aria-current="page"]{color:var(--ink);font-weight:600}
.legal-page{max-width:760px;margin:0 auto;padding:48px 5% 72px;line-height:1.7}
.legal-page h1{font:600 40px/1.15 var(--title);letter-spacing:-1px;margin:8px 0 16px}
.legal-page h2{font:600 22px/1.3 var(--title);margin:40px 0 10px}
.legal-page p,.legal-page li{color:var(--muted);font-size:16px}
.legal-page b{color:var(--ink)}
.legal-lead{font-size:18px!important;color:var(--ink)!important}
.legal-page mark{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--ink);padding:0 4px;border-radius:4px}
.draft-banner{border:1px solid var(--line);border-radius:12px;padding:12px 16px;font-size:13px!important}
.legal-table{width:100%;border-collapse:collapse;font-size:14px;margin:12px 0}
.legal-table th,.legal-table td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line);color:var(--muted)}
.legal-table th{color:var(--ink);font-weight:600}
@media(max-width:720px){.legal-page h1{font-size:30px}.legal-table,.legal-table tbody,.legal-table tr,.legal-table td{display:block}.legal-table thead{display:none}.legal-table tr{border-bottom:1px solid var(--line);padding:8px 0}.legal-table td{border:0;padding:4px 0}.legal-table td:first-child{color:var(--ink);font-weight:600}}
/* Gift page for the recipient */
.gift-body{min-height:100vh;display:flex;background:var(--bg)}
.gift-page{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px 32px;text-align:center}
.gift-card{max-width:620px;width:100%}
.gift-card h1{font:600 clamp(32px,6vw,52px)/1.12 var(--title);letter-spacing:-1px;margin:12px 0 10px;color:var(--ink)}
.gift-hint{color:var(--muted);margin:0 0 28px}
.gift-play{width:96px;height:96px;border-radius:50%;border:0;background:var(--accent);color:var(--bg);display:inline-grid;place-items:center;cursor:pointer;transition:transform .2s}
.gift-play:hover{transform:scale(1.05)}
.gift-play svg{width:38px;height:38px;fill:currentColor;margin-left:5px}
.gift-play.loading{opacity:.6;cursor:progress}
.gift-title{font:500 20px/1.4 var(--title);color:var(--ink);margin:18px 0 12px}
#gift-audio{width:100%;max-width:440px;margin:4px auto 0;display:block}
#gift-audio[hidden]{display:none}
.gift-card blockquote{margin:36px auto 0;max-width:520px;padding:24px 28px;border:1px solid var(--line);border-radius:16px;text-align:left}
.gift-card blockquote p{font-size:18px;line-height:1.7;color:var(--ink);margin:0;white-space:pre-line}
.gift-card blockquote footer{margin-top:12px;color:var(--muted);font-size:15px;border:0;padding:0;display:block}
.gift-card details{margin:28px auto 0;max-width:520px;text-align:left}
.gift-card summary{cursor:pointer;color:var(--muted);text-align:center}
#gift-lyrics p{white-space:pre-line;line-height:1.75;color:var(--ink);margin:18px 0}
.gift-credit{margin-top:48px;font-size:12px;color:var(--muted);max-width:520px}
.gift-credit a{color:inherit;text-decoration:underline;text-underline-offset:3px}
/* Buyer's gift panel */
#gift-panel .gift-link{display:flex;gap:8px;margin-top:12px}
#gift-panel .gift-link input{flex:1;min-width:0}
@media(max-width:720px){#gift-panel .gift-link{flex-direction:column}}
/* Interface language switcher */
.langs{display:flex;gap:4px;margin-left:auto}
.langs button{padding:6px 10px;background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:6px;font-size:12px;letter-spacing:.06em;min-height:36px;cursor:pointer}
.langs button.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.gift-langs{position:fixed;top:14px;right:14px;z-index:2;margin:0}
@media(max-width:720px){.langs{margin-left:0;justify-content:center}.gift-langs{top:10px;right:10px}}

/* Two independent purchase methods. Both are processed by PayPal; card
   preference is a provider request, never a promise of guest eligibility. */
.payment-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.payment-actions button{width:100%;min-height:56px;text-align:center;white-space:normal}
.payment-note{color:var(--muted);font-size:13px;line-height:1.55;margin:14px 0 0}
@media(max-width:600px){.payment-actions{grid-template-columns:1fr;gap:10px}.payment-actions button{min-height:52px}}

/* Verified-email recovery of an existing current order; no fictional account history. */
#account-dialog{max-height:calc(100dvh - 32px);overflow-y:auto}
.account-recovery{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}
.account-recovery h3{font:600 21px/1.3 var(--title);margin:0 0 8px}
.account-recovery p{margin:0 0 18px}
#account-recover-code-panel{margin-top:18px}
#account-recover-state{margin-top:12px;min-height:24px}

/* Compact, accessible, single-control language switcher. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.lang-menu{display:inline-flex;margin-left:auto;flex:none}
.lang-menu select{min-width:79px;max-width:92px;padding:7px 26px 7px 12px;min-height:38px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:var(--panel);font:600 12px var(--body);cursor:pointer;letter-spacing:.08em}
@media(max-width:720px){.lang-menu{margin-left:0}.lang-menu select{min-height:40px}}
.plan-card .local-price-note{font:500 11px/1.4 var(--body);color:var(--muted);margin:-7px 0 0}
#audio-preview{width:100%}
/* Larger tap area for small footer links without moving them (WCAG 2.5.8). */
.footer-legal a{display:inline-block;padding:13px 4px;margin:-13px -4px}


/* MELOMAK_IOS_SAFE_AREA_V1 */
@supports (padding-top: env(safe-area-inset-top)) {
  @media (max-width: 720px) {
    #songs.active {
      padding-top: max(24px, env(safe-area-inset-top));
    }
  }
}
