/* One layout grid, one body style, and a consistent action hierarchy. */
:root{--paper:#f8f4e9;--ink:#302e29;--accent:#344254;--muted:#716a5e;--line:#ddd4c1;--soft:#eee7d8;--radius:16px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:40px}
body{margin:0;font-size:16px;line-height:1.65;background-color:var(--paper);background-image:radial-gradient(ellipse 1200px 1000px at 8% 0%,#fffdf7a6,transparent 70%),radial-gradient(ellipse 1100px 1600px at 105% 650px,#b69a600b,transparent 75%),url('/assets/watercolor-paper.svg');background-size:auto,auto,512px 512px;background-repeat:no-repeat,no-repeat,repeat}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.wrap{width:min(1120px,calc(100% - 80px));margin-inline:auto}
.skip{position:fixed;top:8px;left:8px;z-index:10;transform:translateY(-160%);background:white;padding:12px}
.skip:focus{transform:none}
.header{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:20px;font-weight:550;letter-spacing:-.6px;white-space:nowrap}
.brand img{width:30px;height:30px}
.header nav,.footer nav{display:flex;align-items:center;gap:28px;font-size:14px}
.header nav>a:not(.button):hover,.footer a:hover{text-decoration:underline;text-underline-offset:5px}
.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 22px;border:1px solid var(--accent);border-radius:9px;background:var(--accent);color:#fff;font-size:14px;font-weight:550;line-height:1.4;transition:background .18s}
.button:hover{background:#293647}
.button.small{min-height:42px;padding:10px 17px}
.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}
.button.secondary:hover{background:var(--soft)}
.actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.hero{padding-top:64px}
.hero-copy{text-align:center;max-width:760px;margin:0 auto 48px}
h1,h2,h3,p{margin:0}
.hero h1{font-size:clamp(44px,5.6vw,68px);line-height:1.08;font-weight:500;letter-spacing:-2.8px}
.hero h1 span{display:block}
.hero-copy>p{max-width:560px;margin:24px auto 28px;font-size:18px;line-height:1.6;color:var(--muted)}
.hero .actions{justify-content:center}
.walkthrough{position:relative;margin:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fffdf7;box-shadow:0 2px 14px #51432708}
.film-stage{position:relative;aspect-ratio:8/5;background:var(--paper)}
.film-stage video{display:block;width:100%;height:100%;object-fit:contain}
.film-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:10px;padding:14px 20px;border:1px solid #d9d7cd;border-radius:40px;background:#fffef9f2;color:var(--ink);font-size:14px;font-weight:500;white-space:nowrap;box-shadow:0 4px 20px #2929250d}
.film-play:hover{background:white}
.film-play svg{width:18px;height:18px;fill:currentColor;stroke:none}
.works-with{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:32px;padding:32px 0 64px;color:var(--muted)}
.tool{display:inline-flex;align-items:center;gap:8px;font-size:14px;white-space:nowrap}
.tool img{object-fit:contain;color-scheme:light}
.section{padding:72px 0;border-top:1px solid var(--line)}
.section-heading,.download-section,.faq-layout{display:grid;grid-template-columns:5fr 7fr;column-gap:48px;align-items:start}
.section-heading{margin-bottom:32px;align-items:center}
h2{font-size:36px;font-weight:500;line-height:1.2;letter-spacing:-1.2px}
.section-heading>p,.download-action>p{color:var(--muted);max-width:480px;line-height:1.65}
.visual-demo{display:block;width:100%;height:670px;min-height:600px;border:0;background:transparent}
.download-action{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.faq details{border-bottom:1px solid var(--line);padding:20px 0}
.faq details:first-child{padding-top:0}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:16px;line-height:1.6;list-style:none;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:'+';font-size:20px;color:var(--muted)}
.faq details[open] summary:after{content:'−'}
.faq details p{color:var(--muted);font-size:16px;line-height:1.65;margin:12px 24px 0 0}
.faq a,.article a:not(.button){text-decoration:underline;text-underline-offset:4px}
.footer{border-top:1px solid var(--line);padding:28px 0 36px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--muted)}
.footer .brand{font-size:16px;color:var(--ink)}
.footer .brand img{width:24px;height:24px}
.article{max-width:760px;padding:64px 0 80px}
.article h1{font-size:clamp(36px,4.5vw,52px);line-height:1.15;letter-spacing:-2px;font-weight:500;margin:0 0 24px}
.article .eyebrow{display:block;margin-bottom:16px;font-size:16px;color:var(--muted)}
.article .lead{font-size:18px;line-height:1.65}
.article p,.article li{color:var(--muted)}
.article p{margin:16px 0}
.article h2{font-size:26px;letter-spacing:-.6px;margin:40px 0 16px}
.article h3{font-size:20px;font-weight:500;margin:24px 0 12px}
.article .actions{margin:24px 0}
.article .note{font-size:16px}
.article .callout{border-left:2px solid var(--line);padding:0 0 0 20px;margin:28px 0}
.article ul,.article ol{padding-left:24px}
.article li{padding-left:4px;margin:10px 0}
.article pre{font:14px/1.8 ui-monospace,SFMono-Regular,monospace;background:var(--soft);border:1px solid var(--line);border-radius:9px;overflow:auto;padding:20px}
.article code{font-size:.9em}
.article details{border-top:1px solid var(--line);padding:20px 0;margin-top:24px}
.article details>summary{cursor:pointer;font-weight:500}
.copy-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
.copy-status{font-size:14px;color:var(--muted)}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}
[hidden]{display:none!important}
@media(max-width:900px){
 .wrap{width:calc(100% - 48px)}
 .hero{padding-top:48px}
 .hero-copy{margin-bottom:36px}
 .hero h1{font-size:56px;letter-spacing:-2.2px}
 .section{padding:56px 0}
 .section-heading,.download-section,.faq-layout{grid-template-columns:1fr;gap:24px}
 .section-heading{margin-bottom:28px}
 h2{font-size:32px;letter-spacing:-1px}
 .works-with{padding-bottom:48px}
 .visual-demo{height:680px}
}
@media(max-width:560px){
 .wrap{width:calc(100% - 32px)}
 .header{min-height:76px;gap:12px}
 .brand{font-size:17px;gap:7px}
 .brand img{width:25px;height:25px}
 .header nav{gap:12px}
 .header nav>a:not(.button){display:none}
 .header .button{font-size:13px;min-height:40px;padding:10px 12px}
 .hero{padding-top:40px}
 .hero h1{font-size:clamp(34px,10.8vw,42px);letter-spacing:-1.8px}
 .hero-copy>p{font-size:16px;margin:20px auto 24px;max-width:340px}
 .hero-copy{margin-bottom:32px}
 .walkthrough{border-radius:12px}
 .film-play{font-size:14px;padding:11px 15px}
 .works-with{display:grid;grid-template-columns:repeat(2,max-content);gap:18px 32px;padding:24px 8px 40px}
 .tool{font-size:14px}
 .section{padding:40px 0}
 h2{font-size:30px}
 .section-heading{gap:16px;margin-bottom:24px}
 .visual-demo{height:845px}
 .footer{flex-direction:column;align-items:flex-start;gap:20px;padding:24px 0}
 .footer nav{flex-wrap:wrap;gap:18px}
 .article{padding:40px 0 56px}
 .article h1{font-size:36px;letter-spacing:-1.4px}
 .article pre{font-size:12px;padding:16px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* One reading direction: title, explanation, then the experience. */
.section-heading,.download-section,.faq-layout{display:block}
.section-heading h2{margin-bottom:16px}.section-heading>p{max-width:650px}
.download-section h2{margin-bottom:24px}
.faq-layout>h2{margin-bottom:32px}.faq{max-width:760px}

/* A clearer promise, followed by a concrete product story. */
.hero{padding-top:76px}.hero-copy{margin-bottom:40px}.hero-copy>p{max-width:595px;text-wrap:pretty}.hero h1{font-size:clamp(44px,5.6vw,72px);letter-spacing:-3px}.header{border-bottom:0}.header nav>a:not(.button){color:var(--muted)}
.film-chapters{display:flex;justify-content:center;gap:8px;padding:14px 20px;background:#fffdf6;border-top:1px solid var(--line)}
.film-chapters button{display:flex;align-items:center;justify-content:center;gap:14px;border:0;background:transparent;color:var(--muted);padding:9px 18px;border-radius:7px;font-size:14px;line-height:1.4}.film-chapters button:hover,.film-chapters button[aria-current=true]{background:var(--soft);color:var(--ink)}.film-chapters svg{width:13px;height:13px;flex:none}
.works-with{padding:30px 0 50px;gap:30px}.section{padding:64px 0}.section-heading{max-width:700px;margin-bottom:28px}.section-heading h2{margin-bottom:14px}.download-section{background:linear-gradient(120deg,#eee7d855,transparent);padding:48px 36px;border:1px solid var(--line);border-radius:16px;margin-block:12px 64px}.download-section h2{margin-bottom:24px}.download-action{gap:12px}.download-action>p{font-size:14px}.faq-layout{padding-top:0;border-top:0}.faq{max-width:820px}.faq details{padding:20px 0}.faq details:first-child{padding-top:0}
@media(max-width:560px){.hero{padding-top:44px}.hero h1{font-size:42px;letter-spacing:-1.9px}.hero-copy>p{max-width:340px;font-size:16px}.hero-copy{margin-bottom:28px}.film-chapters{padding:7px 6px;gap:1px;justify-content:space-between}.film-chapters button{font-size:11px;padding:9px 6px;gap:3px;min-height:44px}.film-chapters svg{width:10px;height:10px}.works-with{padding:24px 0 36px;gap:18px 32px}.section{padding:40px 0}.download-section{padding:30px 24px;margin-block:0 44px}.faq-layout{padding-top:0}.section-heading>p{font-size:16px}}

/* Comparisons show the work; destination marks never stand in for customer proof. */
.feedback-comparison{display:grid;grid-template-columns:1fr 1fr;gap:24px}.feedback-comparison article{padding:30px;border-radius:14px;border:1px solid var(--line);min-width:0}.feedback-comparison h3{font-size:15px;line-height:1.5;font-weight:500;margin:0 0 24px;color:var(--muted)}.typed-example{background:#eee8dc70}.typed-example>p{font-size:19px;line-height:1.65;color:#8a8272;max-width:400px}.typed-lines{display:flex;flex-direction:column;gap:8px;margin-top:26px}.typed-lines i{height:3px;border-radius:3px;width:70%;background:#dcd2bf88}.typed-lines i:nth-child(2){width:87%}.typed-lines i:nth-child(3){width:42%}.marked-example{background:#fffdf7}.marked-example figure{position:relative;margin:0 -5px 22px}.marked-example figure>img{display:block;width:100%;height:auto}.marked-example>p{font-size:21px;letter-spacing:-.25px;line-height:1.5;color:var(--ink)}.illustration-cursor{position:absolute;right:13%;bottom:-10px;width:27px;height:27px;fill:var(--ink);stroke:#fffdf7;stroke-width:1.3;transform:rotate(-12deg)}.destination-strip{padding-top:40px;text-align:center}.destination-strip>p{color:var(--muted);font-size:16px}.destination-strip .works-with{padding:25px 0 0;gap:46px;display:flex}.destination-strip .tool{font-size:17px;font-weight:500;color:#6e6a60;gap:10px}.destination-strip .tool img{width:24px;height:24px}
.savings-section .section-heading{max-width:700px}.savings-calculator{max-width:820px;border:1px solid var(--line);border-radius:14px;background:#fffdf7;padding:32px}.savings-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 32px}.savings-fields label{display:flex;flex-direction:column;gap:9px;font-size:14px;color:var(--muted)}.savings-fields input{width:100%;min-height:46px;border:1px solid var(--line);border-radius:7px;background:#faf7ef;padding:10px 12px;font-size:17px;color:var(--ink)}.savings-result{border-top:1px solid var(--line);margin-top:32px;padding-top:25px}.savings-time{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:8px}.savings-time output{font-size:43px;line-height:1.2;letter-spacing:-1.5px}.savings-time>span{color:var(--muted);font-size:16px}.savings-result>p:not(.savings-time){color:var(--muted);font-size:16px;line-height:1.6}.savings-method{margin-top:22px;border-top:1px solid var(--line);padding-top:18px}.savings-method summary{cursor:pointer;color:var(--muted);font-size:14px}.savings-method p{font-size:14px;color:var(--muted);line-height:1.7;margin-top:12px}
@media(max-width:650px){.feedback-comparison{grid-template-columns:1fr;gap:16px}.feedback-comparison article{padding:24px}.feedback-comparison h3{margin-bottom:18px}.typed-example>p{font-size:17px}.marked-example>p{font-size:20px}.typed-lines{display:none}.destination-strip{padding-top:30px}.destination-strip .works-with{display:grid;grid-template-columns:repeat(2,max-content);gap:20px 30px}.destination-strip .tool{font-size:16px}.savings-calculator{padding:24px}.savings-fields{grid-template-columns:1fr;gap:16px}.savings-fields label{flex-direction:row;align-items:center;justify-content:space-between;gap:16px}.savings-fields input{width:96px;flex:none}.savings-time{gap:8px}.savings-time output{font-size:36px}.savings-time>span{font-size:14px}}

.demo-page .section-heading{grid-template-columns:1fr;gap:14px}.demo-page h1{font-size:44px;line-height:1.15;letter-spacing:-1.5px;font-weight:500}.demo-note{max-width:620px;font-size:13px;color:var(--muted);margin-top:14px}.demo-note summary{cursor:pointer}.demo-note p{margin-top:12px}
