/* TEL-819 direction B: warm editorial, native HTML/CSS. Variance 6 / Motion 3 / Density 3.
   References are recorded in the parent art-direction brief; no reference code copied. */
:root{color-scheme:light;--paper:#f4f0e8;--ink:#2b3029;--muted:#666858;--accent:#954221;--line:#ccc7bc;--gutter:clamp(24px,5vw,88px);--font-body:"Helvetica Neue",Helvetica,Arial,sans-serif;--font-display:Georgia,"Times New Roman",serif;--reading-width:680px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}button{font:inherit}a{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.skip{position:fixed;z-index:10;left:20px;top:-100px;padding:16px;background:var(--ink);color:var(--paper)}.skip:focus{top:16px}.masthead{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter)}.wordmark{font-size:23px;letter-spacing:-1px;font-weight:550}.masthead>span:last-child{font-size:12px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding:34px var(--gutter) 48px;min-height:calc(100svh - 88px);max-width:1800px;margin:auto}.hero-copy{align-self:center;padding:8px 0 0}.eyebrow{font-size:10px;line-height:1.4;letter-spacing:.13em;text-transform:uppercase;font-weight:600;margin:0 0 25px;color:var(--accent)}h1,h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.06em;margin:0;line-height:.99}h1{font-size:clamp(64px,6.4vw,104px)}h1 em,h2 em{font-weight:400;color:var(--accent)}.deck{font-size:16px;line-height:1.6;margin:27px 0 25px;max-width:350px}.download{display:inline-flex;border-radius:9px}.download img{display:block;border-radius:9px;width:160px;height:54px}.requirements{font-size:10px;color:var(--muted);margin:19px 0 0}.portrait{margin:0;min-width:0;display:flex;flex-direction:column;position:relative}.portrait>img{width:100%;height:100%;min-height:560px;max-height:850px;object-fit:cover;object-position:78% center;flex:1}.portrait figcaption{display:flex;justify-content:space-between;gap:16px;padding-top:13px;font-size:11px;color:var(--muted)}.method{padding:100px var(--gutter);display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}h2{font-size:clamp(40px,4.3vw,66px);line-height:1.07}.section-heading>p:last-child{max-width:370px;font-size:16px;line-height:1.7;margin:28px 0 0;color:#53574b}/* A script score: the source phrases stay readable while two cues move through them. */
.rhythm{align-self:center;min-width:0}
.score-heading{display:flex;justify-content:space-between;gap:12px;padding:0 0 20px;border-bottom:1px solid var(--ink);font-size:13px;font-weight:550;letter-spacing:-.015em}
.score-format{font-size:10px;color:var(--muted);font-weight:400;align-self:center}
.script-score{--row-height:104px;position:relative;padding-bottom:42px;margin-top:7px;isolation:isolate}
.script-line{height:var(--row-height);display:flex;align-items:center;gap:18px;padding-right:74px;border-bottom:1px solid var(--line)}
.line-number{font-size:10px;font-variant-numeric:tabular-nums;color:var(--muted);align-self:center}
.script-line p{font-family:var(--font-display);font-size:clamp(24px,2.2vw,34px);letter-spacing:-.035em;line-height:1.15;margin:0;color:#77796f;transition:color .35s}
.script-line.is-guide p{color:var(--accent)}.script-line.is-delivery p{color:var(--ink)}
.script-line.is-guide .line-number{color:var(--accent)}.script-line.is-delivery .line-number{color:var(--ink)}
.cue{position:absolute;right:0;top:0;height:var(--row-height);display:flex;align-items:center;gap:8px;transform:translateY(calc(var(--row) * var(--row-height)));transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .25s;color:var(--accent)}
.cue span{font-size:11px;font-weight:550;letter-spacing:-.01em;white-space:nowrap}.cue i{display:block;height:22px;width:3px;background:currentColor;border-radius:2px}
.delivery-cue{color:var(--ink)}.cue.is-parked{height:36px}
.beat-summary{margin:0 0 18px;min-height:66px;font-size:13px;line-height:1.65;color:var(--muted);max-width:440px}.state-label{color:var(--ink);font-weight:550}
.rhythm-controls{display:flex;justify-content:space-between;gap:20px;align-items:center}.rhythm-controls[hidden]{display:none}
.beat-selector{position:relative;display:grid;grid-template-columns:repeat(4,44px);padding:3px;background:#e9e4d9;border-radius:24px;isolation:isolate}
.beat-selector button{width:44px;height:44px;border:0;background:transparent;cursor:pointer;color:#53574b;font-size:11px;font-variant-numeric:tabular-nums;border-radius:22px;transition:color .3s}
.beat-selector button[aria-current]{color:var(--paper)}
.beat-selection{position:absolute;top:3px;bottom:3px;left:3px;width:44px;border-radius:22px;background:var(--ink);z-index:-1;transform:translateX(calc(var(--beat,0) * 44px));transition:transform .4s cubic-bezier(.22,1,.36,1)}
.transport{display:flex;align-items:center;gap:10px}.transport button{height:46px;color:var(--ink);cursor:pointer;background:transparent;border:0;font-size:12px;padding:0}.transport button:hover:not([aria-disabled="true"]){color:var(--accent)}#previous-beat{width:44px;font-size:20px}#previous-beat[aria-disabled="true"]{color:#a29f94;cursor:default}#next-beat{min-width:94px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--ink)}#next-beat>span:last-child{font-size:20px}
.rhythm-caption{font-size:12px;line-height:1.65;color:var(--muted);margin:24px 0 0;max-width:390px}.rhythm-caption>span{display:block;font-size:10px;margin-top:7px;letter-spacing:.03em}
.practice{padding:80px var(--gutter) 100px;background:#e9e4d9;display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}.steps details{border-top:1px solid #c2beb2}.steps summary{padding:23px 0;min-height:68px;cursor:pointer;list-style:none;font-size:20px;letter-spacing:-.035em;display:flex;align-items:center;gap:24px}.steps summary::-webkit-details-marker{display:none}.steps summary>span{font-size:11px;color:var(--accent);letter-spacing:0}.steps summary::after{content:'+';margin-left:auto;font-size:24px}.steps details[open] summary::after{content:'−'}.steps p{max-width:390px;line-height:1.65;font-size:14px;color:#53574b;margin:0 0 25px 38px}footer{padding:30px var(--gutter);display:flex;align-items:center;justify-content:space-between;}footer p{font-size:12px;color:var(--muted)}
@media(min-width:701px) and (max-height:800px){.hero{padding-top:24px;padding-bottom:30px}.portrait>img{min-height:520px}h1{font-size:clamp(60px,5.5vw,84px)}.deck{margin:20px 0}}
@media(max-width:700px){.masthead{height:65px}.wordmark{font-size:21px}.masthead>span:last-child{font-size:10px}.hero{display:flex;flex-direction:column;gap:34px;padding-top:33px;min-height:auto}.hero-copy{align-self:stretch;padding:0}h1{font-size:clamp(56px,11.5vw,78px);line-height:1.02}.hero-copy h1 br:nth-of-type(1),.hero-copy h1 em br{display:none}.hero-copy h1 em{display:block}.deck{font-size:15px;margin:23px 0}.requirements{margin-top:18px}.portrait>img{height:360px;min-height:0;max-height:none;flex:none;object-position:75% center}.portrait figcaption{font-size:10px}.method,.practice{display:block;padding:60px var(--gutter)}h2{font-size:43px}.section-heading>p:last-child{font-size:15px;margin-top:24px}.rhythm{margin-top:42px}.script-score{--row-height:100px}.script-line{gap:12px;padding-right:63px}.script-line p{font-size:27px}.score-format{font-size:9px}.rhythm-controls{gap:8px;flex-wrap:wrap}.beat-summary{min-height:86px}.transport{gap:0;margin-left:auto}#previous-beat{width:44px}#next-beat{min-width:88px;gap:8px}.rhythm-caption{font-size:12px}.steps{margin-top:34px}.steps summary{font-size:20px}footer{gap:24px}footer p{text-align:right;max-width:120px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

@media(min-width:701px) and (max-width:1100px){.method{grid-template-columns:1fr;gap:42px}.section-heading{max-width:640px}.rhythm{max-width:640px;width:100%}.script-line p{font-size:32px}}
@media(max-width:360px){.score-format{display:none}.script-line p{font-size:24px}#next-beat{min-width:82px;font-size:11px}.script-line{gap:9px}}.definition,.use-cases,.questions{padding:88px var(--gutter)}
.wide-heading{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:48px}.wide-heading>p{max-width:345px;font-size:16px;line-height:1.7;color:#53574b;margin:0}
.definition{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.definition h2{margin-bottom:32px}.definition>div{max-width:700px}.definition p:not(.eyebrow){font-size:16px;line-height:1.75;color:#53574b;margin:0 0 20px}.definition strong{font-weight:550}.definition .eyebrow{margin-top:7px}
.use-cases{background:#e9e4d9}.use-list{display:grid;grid-template-columns:repeat(3,1fr);gap:5vw}.use-list article{border-top:1px solid #bcb6aa;padding:20px 0 0}.use-list article>span{font-size:11px;color:var(--accent)}h3{font-size:21px;font-weight:450;letter-spacing:-.03em;line-height:1.3;margin:25px 0 12px}.use-list p{font-size:14px;line-height:1.7;color:#53574b;margin:0}.questions{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}.faq a{color:var(--accent);text-underline-offset:4px}.faq a:hover{text-decoration-thickness:2px}.questions h2{margin-bottom:30px}.faq{min-width:0}.faq details{border-top:1px solid var(--line)}.faq summary{min-height:60px;padding:21px 30px 21px 0;font-size:17px;line-height:1.4;list-style:none;position:relative;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';position:absolute;right:0;font-size:22px;top:17px}.faq details[open] summary::after{content:'−'}.faq p{font-size:14px;line-height:1.75;color:#53574b;margin:0 0 22px}footer nav{display:flex;gap:22px;font-size:12px}footer nav a,footer nav button{display:inline-flex;align-items:center;min-height:44px;font:inherit;line-height:1.5;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
@media(min-width:1500px){.definition,.use-cases,.questions,.method,.practice{padding-left:max(var(--gutter),calc((100vw - 1624px)/2));padding-right:max(var(--gutter),calc((100vw - 1624px)/2))}}
@media(max-width:700px){.definition,.use-cases,.questions{padding:60px var(--gutter)}.wide-heading{display:block;margin-bottom:35px}.wide-heading>p{margin-top:25px;font-size:15px}.definition,.questions{display:block}.definition>.eyebrow{margin-top:0}.definition p:not(.eyebrow){font-size:15px}.use-list{display:block}.use-list article+article{margin-top:28px}.use-list h3{margin-top:16px}.faq{margin-top:32px}footer{flex-wrap:wrap}footer nav{order:3;flex-basis:100%;gap:26px}}

/* Optional measurement controls, separate from the hero's single download CTA. */
#analytics-settings{color:inherit;background:none;border:0;padding:0;cursor:pointer}
#analytics-notice{position:fixed;z-index:10;bottom:16px;left:16px;right:16px;max-width:780px;margin:auto;padding:20px 24px;background:#f4f0e8;color:#2d332b;border:1px solid #bcb7ab;box-shadow:0 4px 24px #20261c18;display:flex;gap:24px;align-items:center}
#analytics-notice[hidden],#analytics-settings[hidden]{display:none}
#analytics-notice h2{font:600 16px/1.3 var(--font-body);margin:0 0 8px}
#analytics-notice p{font:14px/1.5 var(--font-body);margin:0}
.analytics-choices{display:flex;flex-shrink:0;gap:8px}
.analytics-choices button{font:14px/1.3 var(--font-body);padding:12px;background:transparent;border:1px solid #777b70;color:inherit;cursor:pointer;white-space:nowrap}
#analytics-notice a{color:inherit;text-decoration:underline}
@media(max-width:720px){#analytics-notice{padding:16px;display:block}.analytics-choices{margin-top:12px}.analytics-choices button{flex:1}}

/* Shared information-page system: structure lives in scripts/information-pages.mjs. */
.masthead a.wordmark,footer a.wordmark{text-decoration:none}
.information-heading{padding:64px var(--gutter) 64px;max-width:1440px;margin:auto}
.information-heading h1{font-size:clamp(64px,7vw,100px)}
.information-heading h1>span{color:var(--accent)}
.information-intro{font-size:clamp(17px,1.7vw,21px);line-height:1.65;max-width:650px;margin:28px 0 0;color:var(--ink)}
.information-date{font-size:12px;color:var(--muted);margin:24px 0 0}
.information-layout{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,var(--reading-width));gap:clamp(48px,8vw,128px);padding:0 var(--gutter) 100px;max-width:1440px;margin:auto;align-items:start}
.information-index{border-top:1px solid var(--line);padding-top:22px}
.information-index .eyebrow{margin-bottom:12px}
.information-index ol{padding:0;list-style:none;margin:0}
.information-index li a{display:block;padding:10px 0;line-height:1.5;font-size:13px;color:var(--muted);text-decoration:none}
.information-index a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.information-content{min-width:0}
.information-content section{border-top:1px solid var(--line);padding:26px 0 44px;scroll-margin-top:24px}
.section-number{display:block;font-size:11px;color:var(--accent);margin-bottom:18px;font-variant-numeric:tabular-nums}
.information-content h2{font-size:clamp(30px,3vw,42px);line-height:1.15;letter-spacing:-.04em;margin:0 0 24px;text-wrap:balance}
.information-content h3{font-size:19px;line-height:1.4;font-weight:550;margin:28px 0 12px}
.information-content p,.information-content li{font-size:16px;line-height:1.8;overflow-wrap:anywhere}
.information-content p{margin:0 0 18px}
.information-content ul,.information-content ol{padding-left:22px;margin:0 0 20px}
.information-content li{padding-left:4px;margin-bottom:10px}
.information-content a{color:var(--accent);text-underline-offset:4px}
.information-content strong{font-weight:600}
.information-content section>:last-child{margin-bottom:0}
.information-page footer nav{flex-wrap:wrap}
@media(max-width:800px){.information-heading{padding-top:40px;padding-bottom:42px}.information-layout{grid-template-columns:1fr;gap:36px;padding-bottom:56px}.information-index nav[aria-label="On this page"] ol{columns:2;column-gap:24px}.information-index li{break-inside:avoid}.information-content section{padding-bottom:34px}}
@media(max-width:420px){.information-index nav[aria-label="On this page"] ol{columns:1}.information-content p,.information-content li{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
