:root{--cream:#f6f3f0;--ink:#412d25;--muted:#73665e;--purple:#626ba8;--lavender:#e9e9f5;--pink:#f5dce5;--line:#dfd8d1;--green:#e3ebe0;--white:#fff;--radius:26px;color-scheme:light;font-family:ui-rounded,"SF Pro Rounded",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.5}img{max-width:100%;object-fit:contain}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400}h1{font-size:clamp(3.3rem,5.9vw,5.5rem)}h2{font-size:clamp(2.4rem,4vw,3.6rem)}h3{font-size:1.75rem;font-weight:650;letter-spacing:-.035em}p{color:var(--muted)}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:6px}a:hover{color:var(--purple)}.wrap{max-width:1200px;width:calc(100% - 96px);margin-inline:auto}.skip-link{position:fixed;top:-100px;left:16px;background:white;padding:12px;z-index:20}.skip-link:focus{top:12px}.site-header{display:flex;align-items:center;justify-content:space-between;min-height:112px;border-bottom:1px solid var(--line);gap:24px}.brand{display:inline-flex;align-items:center;gap:9px;font-weight:750;font-size:1.65rem;letter-spacing:-.07em;white-space:nowrap}.brand-dot{color:var(--purple)}nav{display:flex;gap:32px;font-size:.9rem}nav a:hover,.site-footer a:hover{text-decoration:underline;text-underline-offset:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:54px;padding:14px 23px;border-radius:100px;background:var(--purple);color:#fff;font-size:.94rem;font-weight:650;text-align:center;transition:background .15s,transform .15s}.button:hover{background:#51598f;color:white;transform:translateY(-2px)}.button-small{min-height:44px;padding:10px 21px;font-size:.85rem}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:70px;align-items:center;padding-top:76px;padding-bottom:85px}.eyebrow,.overline,.feature-number{font-size:.75rem;letter-spacing:.14em;font-weight:700;line-height:1.5}.eyebrow{margin-bottom:24px}.tiny-line{display:inline-block;width:27px;border-top:2px solid var(--purple);vertical-align:middle;margin-right:10px}h1 em{color:var(--purple);font-weight:400}.hero-description{max-width:465px;font-size:1.16rem;margin-top:28px;line-height:1.7}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:32px}.text-link{font-size:.91rem;font-weight:650;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#b7afa9}.text-link span{margin-left:8px}.quiet{font-size:.77rem;margin-top:19px}.hero-visual{position:relative;background:var(--lavender);padding:26px 30px 21px;border-radius:160px 160px 28px 28px}.visual-heading{height:64px;display:flex;align-items:center;justify-content:center;position:relative}.visual-heading>span{font-size:.75rem;letter-spacing:.16em;color:#5b6082;transform:translateY(-7px)}.floating-yarn{position:absolute;right:-49px;top:-40px;transform:rotate(14deg)}.project-demo{background:white;border-radius:23px;padding:25px;box-shadow:0 15px 30px #535a8e12;position:relative}.project-top{display:flex;align-items:center;gap:12px}.project-top .overline{font-size:.75rem;letter-spacing:.09em}.project-top h2{font:700 1.4rem/1.25 ui-rounded,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.04em;margin-top:5px}.project-top p{font-size:.8rem;margin-top:5px}.demo-divider{height:1px;background:#ece8e4;margin:20px 0}.counter-heading{display:flex;align-items:center;justify-content:space-between;font-size:.86rem;font-weight:600}.demo-badge{font-size:.75rem;font-weight:500;background:var(--green);padding:3px 11px;border-radius:30px;color:#3c6146}.counter-display{text-align:center;display:flex;flex-direction:column;margin:5px 0 20px}.counter-display output{font-size:5.4rem;font-weight:600;line-height:1.2;letter-spacing:-.08em;font-variant-numeric:tabular-nums}.counter-display>span{font-size:.8rem;color:var(--muted)}.progress-track{height:6px;background:#efedf6;border-radius:8px;overflow:hidden;margin-bottom:22px}.progress-track>span{display:block;width:30%;height:100%;background:#858fc7;transition:width .2s}.counter-controls{display:flex;gap:10px}.counter-controls button{border:0;border-radius:40px;min-height:58px}.minus{background:#f0edf5;color:var(--purple);width:60px;font-size:1.6rem}.add-row{background:var(--purple);color:white;flex:1;font-size:.9rem;font-weight:600}.add-row span{margin-right:9px;font-size:1.25rem}.add-row:hover{background:#51598f}.minus:hover{background:#e4dfee}.demo-bottom{display:flex;gap:8px;justify-content:space-between;align-items:center;margin-top:19px;font-size:.75rem;color:var(--muted)}.reset{font-size:.75rem;color:var(--purple);background:none;border:0;text-decoration:underline;padding:8px}.preview-caption{font-size:.75rem;text-align:center;margin-top:16px;color:#626580}.feature-ribbon{border-block:1px solid var(--line)}.ribbon-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:22px;font-size:.84rem}.ribbon-inner [aria-hidden]{color:#ba9fa9}.section{padding-block:90px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:40px}.section-heading>p{max-width:350px;font-size:.98rem}.section-heading .eyebrow{margin-bottom:17px}.feature-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.feature-card{padding:33px;border-radius:var(--radius);background:var(--lavender);overflow:hidden}.feature-card h3{margin:22px 0 17px}.feature-card p{font-size:.94rem;line-height:1.7}.feature-number{font-size:.75rem;color:#5d5875}.feature-wide{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px}.feature-wide h3{font-size:2.4rem}.mini-counters{display:flex;flex-direction:column;gap:12px}.mini-counters>div{background:white;padding:19px;border-radius:16px;display:flex;justify-content:space-between;align-items:center;gap:15px;box-shadow:0 3px 0 #d9d9ed}.mini-counters>div:last-child{margin-left:16px;margin-right:-8px}.mini-counters span{font-size:.92rem;font-weight:600}.mini-counters small{display:block;font-size:.75rem;font-weight:400;color:var(--muted);margin-top:5px}.mini-counters strong{font-size:2.3rem;color:var(--purple);line-height:1}.pink-card{background:var(--pink)}.feature-card>img{display:block;margin:15px 0 -10px}.cream-card{background:#eee7de;grid-column:span 2;position:relative;padding-right:42%}.cream-card h3{font-size:2rem}.note-example{position:absolute;right:38px;top:75px;width:210px;background:#fffaf0;padding:24px;transform:rotate(5deg);box-shadow:0 8px 25px #412d2508}.note-example span{font-size:.75rem;letter-spacing:.15em;color:#77685b}.note-example p{font-family:Georgia,serif;font-size:1.18rem;font-style:italic;margin-top:20px;color:var(--ink)}.green-card{background:var(--green)}.green-card .feature-number{color:#48604b}.details-strip{display:flex;align-items:center;gap:60px;border-block:1px solid var(--line);padding:28px 0;margin-top:35px}.details-strip p{font-size:.93rem;flex:1}.details-strip strong{color:var(--ink)}.details-strip>a{max-width:240px;flex-shrink:0}.making-section{background:#e7e8f2;padding-block:53px}.making-inner{display:flex;align-items:center;gap:45px}.making-inner>div{flex:1}.making-inner .eyebrow{margin-bottom:14px}.making-inner h2{font-size:2.7rem}.making-inner p:not(.eyebrow){font-size:.95rem;max-width:510px;margin-top:17px}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.guide-card{display:block;border:1px solid var(--line);padding:35px;border-radius:20px;transition:background .15s}.guide-card:hover{background:#fff;color:var(--ink)}.guide-card .overline{font-size:.75rem;color:var(--purple)}.guide-card h3{margin:26px 0 17px;font-size:1.85rem}.guide-card p{font-size:.94rem;margin-bottom:29px}.faq-section{border-top:1px solid var(--line);display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;padding-top:70px}.faq-section>div>p:last-child{font-size:.92rem;margin-top:25px}.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}.faq-list details:first-child{padding-top:0}.faq-list summary{font-size:.98rem;cursor:pointer;font-weight:600;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:1.4rem;font-weight:400;color:var(--purple)}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:.94rem;margin:14px 30px 0 0}.final-cta{text-align:center;border-top:1px solid var(--line);padding-block:66px 85px}.final-cta h2{margin-bottom:30px}.final-cta .eyebrow{margin-bottom:20px}.site-footer{border-top:1px solid var(--line);display:flex;align-items:center;flex-wrap:wrap;gap:22px;padding-block:28px}.site-footer .brand{font-size:1.4rem}.site-footer p{font-size:.78rem;flex:1}.site-footer>div{display:flex;gap:18px;font-size:.76rem}.site-footer small{color:var(--muted);font-size:.75rem;width:100%}
@media(min-width:1400px){.hero{gap:100px}}
@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.hero{gap:35px}.hero-visual{padding:25px 20px 18px}.floating-yarn{right:-30px}.hero-actions{gap:16px}.feature-wide{gap:15px}.feature-card{padding:26px}.cream-card{padding-right:43%}.note-example{right:22px;width:180px;padding:20px}.making-inner{gap:25px}.making-inner>img{width:110px}.making-inner h2{font-size:2.3rem}.making-inner .button{max-width:180px}.site-footer p{flex-basis:50%}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{min-height:87px;gap:14px}.brand{font-size:1.45rem}.brand img{width:33px;height:33px}.site-header nav{gap:18px;font-size:.82rem}.site-header>.button{display:none}.hero{grid-template-columns:1fr;gap:42px;padding-block:48px}.hero-copy{max-width:540px}.hero h1{font-size:clamp(3rem,10vw,4.5rem)}.hero-description{font-size:1.06rem}.hero .eyebrow{font-size:.75rem;margin-bottom:20px}.hero-visual{width:100%;max-width:430px;justify-self:center;padding:25px}.floating-yarn{right:-20px;top:-30px;width:80px}.hero-actions .button{font-size:.88rem}.quiet{font-size:.75rem}.ribbon-inner{display:grid;grid-template-columns:1fr 1fr;text-align:center;gap:9px;font-size:.8rem;padding-block:19px}.ribbon-inner [aria-hidden]{display:none}.section{padding-block:55px}.section-heading{display:block;margin-bottom:27px}.section-heading>p{margin-top:23px;max-width:100%}.feature-grid{grid-template-columns:1fr 1fr;gap:15px}.feature-wide{grid-column:span 2;padding:27px;gap:24px}.feature-wide h3{font-size:2rem}.pink-card{grid-column:1;grid-row:2}.green-card{grid-column:2;grid-row:2}.cream-card{grid-column:span 2;min-height:290px;padding-right:47%}.feature-card h3{font-size:1.55rem}.feature-card p{font-size:.9rem}.note-example{right:30px;top:65px}.details-strip{display:block;margin-top:25px}.details-strip>a{display:inline-block;max-width:none;margin-top:20px}.making-inner{flex-wrap:wrap;gap:20px}.making-inner>img{width:80px;height:80px}.making-inner>div{flex-basis:calc(100% - 100px)}.making-inner h2{font-size:2rem}.making-inner>.button{margin-left:100px;max-width:none}.making-inner .eyebrow{font-size:.75rem}.guide-grid{grid-template-columns:1fr}.guide-card{padding:28px}.faq-section{grid-template-columns:1fr;gap:30px}.final-cta{padding-block:48px 58px}.final-cta h2{font-size:2.6rem}.site-footer{gap:18px}.site-footer p{flex-basis:100%}.site-footer>div{flex-wrap:wrap}}
@media(max-width:420px){.site-header nav{gap:13px}.feature-grid{display:flex;flex-direction:column}.feature-wide{display:block}.mini-counters{margin-top:25px}.cream-card{padding-right:26px}.note-example{position:static;transform:rotate(2deg);width:90%;margin:25px auto 5px}.feature-card>img{float:right;width:88px;height:88px;margin-top:20px}.feature-card .feature-number{display:block}.feature-card p{clear:both}.making-inner{display:block}.making-inner>img{margin-bottom:10px}.making-inner>.button{margin-left:0;margin-top:22px}.hero-visual{padding-inline:18px}.project-demo{padding:20px}.project-top .overline{font-size:.75rem}.hero-actions{align-items:start;flex-direction:column}.visual-heading>span{font-size:.75rem}.floating-yarn{right:-13px;width:66px}.quiet{max-width:270px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Additions for 1.24 features, in the original style */
.pro{display:inline-block;vertical-align:.12em;margin-left:4px;padding:1px 9px;border-radius:99px;background:var(--white);color:var(--purple);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.new-tag{display:inline-block;margin-left:6px;padding:1px 9px;border-radius:99px;background:var(--purple);color:#fff;letter-spacing:.08em}
.widget-card{background:var(--pink)}.widget-card .feature-number{color:#7a4d5d}
.insights-card .feature-number{display:block}
.widget-mock{background:linear-gradient(160deg,#5a5f8f,#3b3f66);border-radius:28px;padding:18px 18px 22px;color:#fff;box-shadow:0 15px 30px #535a8e22;max-width:340px;justify-self:center;width:100%}
.wm-time{text-align:center;font-size:2.6rem;font-weight:600;letter-spacing:-.04em;line-height:1.1;margin:4px 0 16px;opacity:.95}
.wm-card{background:#ffffff26;border-radius:20px;padding:14px 16px}
.wm-top{display:flex;justify-content:space-between;gap:10px;font-size:.75rem;opacity:.9}.wm-top span:first-child{font-weight:650}
.wm-body{display:flex;align-items:center;justify-content:space-between;margin-top:4px}
.wm-body strong{font-size:2.8rem;font-weight:600;line-height:1.1;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.wm-btns{display:flex;gap:8px}.wm-btns b{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#ffffff33;font-size:1.4rem;font-weight:500}.wm-btns b:last-child{background:#fff;color:var(--purple);width:58px;height:58px;font-size:1.8rem}
.mini-bars{display:flex;align-items:flex-end;gap:7px;height:78px;margin:22px 0 -4px}.mini-bars span{flex:1;max-width:22px;background:#9ba2d4;border-radius:6px 6px 3px 3px}.mini-bars span:last-child{background:var(--purple)}
.peek{padding-block:20px 90px}
.peek-row{list-style:none;padding:0 0 18px;display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}
.peek-row li{flex:0 0 230px;scroll-snap-align:start;background:var(--lavender);border-radius:var(--radius);padding:16px 16px 14px;display:flex;flex-direction:column;gap:12px}
.peek-row li:nth-child(3n+2){background:var(--pink)}.peek-row li:nth-child(3n){background:var(--green)}
.peek-row img{border-radius:16px;width:100%;height:auto}
.peek-row span{font-size:.85rem;font-weight:600;text-align:center}
.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.plan-card{border:1px solid var(--line);padding:35px;border-radius:20px;min-width:0}
.plan-pro{background:var(--lavender);border-color:var(--lavender)}
.plan-card .overline{color:var(--purple)}.plan-card h3{margin:18px 0 6px}
.ticks{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px;font-size:.95rem;color:var(--muted)}
.ticks li{position:relative;padding-left:28px}
.ticks li:before{content:"";position:absolute;left:2px;top:.5em;width:12px;height:12px;border-radius:50%;background:var(--white);box-shadow:inset 0 0 0 3px #9ba2d4}
.plan-pro .ticks li:before{box-shadow:inset 0 0 0 3px var(--purple)}
.plan-note{font-size:.82rem;margin-top:22px}
.section-heading>p .text-link{display:inline-block;margin-top:10px}
.guide-grid-3{grid-template-columns:repeat(3,1fr)}
.guide-grid-3 .guide-card{padding:30px;display:flex;flex-direction:column}
.guide-grid-3 .guide-card h3{font-size:1.45rem;margin:20px 0 12px}
.guide-grid-3 .guide-card p{margin-bottom:22px}.guide-grid-3 .guide-card .text-link{margin-top:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.guide-grid-3{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.widget-card,.insights-card{grid-column:span 2}.plan-grid{grid-template-columns:1fr}.plan-card{padding:28px}.guide-grid-3{grid-template-columns:1fr}.peek{padding-block:10px 55px}.peek-row li{flex-basis:200px}}
@media(max-width:420px){.widget-mock{margin-top:25px}}

/* Guide pages */
.article{max-width:760px;padding-block:56px 90px}
.breadcrumb{font-size:.85rem;color:var(--muted);margin-bottom:30px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px;text-decoration-color:#b7afa9}
.article h1{font-size:clamp(2.6rem,5.4vw,4rem);margin-bottom:24px}
.article .eyebrow{margin-bottom:18px;color:var(--purple)}
.article .lede{font-size:1.16rem;margin:0 0 36px;line-height:1.7}
.article h2{font-size:2rem;margin:42px 0 14px}
.article h3{font-size:1.3rem;margin:28px 0 10px}
.article p,.article ul,.article ol{margin-bottom:18px}
.article ul,.article ol{padding-left:1.3em;color:var(--muted)}
.article li{margin-bottom:8px}
.article strong{color:var(--ink)}
.article .worked-example{padding:26px;background:var(--lavender);border-radius:20px;margin-block:26px}
.article .worked-example p:last-child{margin:0}
.article aside{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;padding:30px;background:var(--pink);border-radius:var(--radius);margin-top:48px}
.article aside h2{margin:0 0 8px;font-size:1.7rem}.article aside p{margin:0}.article aside .aside-cta{margin-top:20px}
.article aside img{width:130px;border-radius:16px}
.table-wrap{overflow-x:auto;margin-block:20px 28px;border:1px solid var(--line);border-radius:18px;background:var(--white)}
.article table{width:100%;border-collapse:collapse;font-size:.95rem;font-variant-numeric:tabular-nums}
.article caption{caption-side:top}
.article th,.article td{text-align:left;padding:11px 16px;border-bottom:1px solid var(--line);vertical-align:top}
.article th{font-weight:650;color:var(--ink);background:var(--lavender);font-size:.88rem}
.article tr:last-child td{border-bottom:0}
.article td{color:var(--muted)}.article td:first-child{color:var(--ink);font-weight:650}
.article .note{font-size:.9rem}
.related{margin-top:48px;border-top:1px solid var(--line);padding-top:30px}
.related h2{font-size:1.6rem;margin:0 0 14px}
.related ul{list-style:none;padding:0}
.related a{font-weight:650;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#b7afa9}
.guides-page{padding-block:56px 90px}
.page-head{max-width:720px;margin-bottom:40px}
.page-head h1{font-size:clamp(2.8rem,5.4vw,4.4rem);margin-bottom:20px}
.page-head .eyebrow{margin-bottom:20px}
.notfound ul{list-style:none;padding:0;display:grid;gap:12px;margin-top:28px}
@media(max-width:640px){.article aside{grid-template-columns:1fr}.article aside img{width:110px}.article{padding-block:40px 60px}}
nav a{white-space:nowrap}
nav.breadcrumb{display:block}
@media(max-width:480px){.site-header nav a[href$="#pro"]{display:none}}

/* Images keep their ratio */
img{height:auto}
.project-top img,.brand img,.floating-yarn,.feature-card>img,.making-inner>img{height:auto}

/* Hero counter demo: mirrors the app's counter card */
.project-top{position:relative}.project-top>div{flex:1;min-width:0}
.project-top .demo-badge{align-self:flex-start}
.demo-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;background:#f0edf5;border-radius:99px;padding:4px;margin:18px 0 14px}
.demo-tabs button{border:0;background:none;border-radius:99px;min-height:36px;font-size:.82rem;font-weight:600;color:var(--muted);transition:background .15s,color .15s}
.demo-tabs button[aria-pressed="true"]{background:#fff;color:var(--purple);box-shadow:0 1px 4px #535a8e26}
.cc{border:1px solid #ece8e4;border-radius:18px;overflow:hidden}
.cc-head{display:flex;align-items:center;gap:8px;background:#f5f2ef;padding:10px 14px;font-size:.88rem}
.cc-head strong{flex:1;font-weight:650}
.cc-start{font-size:.7rem;font-weight:600;color:#3c6146;background:var(--green);border-radius:99px;padding:2px 10px}
.cc-more{color:var(--muted);font-weight:700;padding-left:2px}
.cc-body{padding:12px 14px 14px;text-align:center}
.cc-now{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #f0ece8;padding-bottom:10px;color:#b5aca5}
.cc-now small{display:block;font-size:.7rem;color:var(--muted);line-height:1.3}
.cc-now strong{display:block;font-size:.9rem;font-weight:600;color:var(--ink);line-height:1.35;min-height:1.35em}
.cc-now strong.cc-shape{color:#c9406f}
.cc-metric{display:flex;align-items:center;justify-content:center;gap:6px;font-size:.8rem;font-weight:650;color:var(--ink);margin-top:12px}
.cc-metric i{width:10px;height:10px;border-radius:3px;background:var(--purple)}
.cc-count{display:flex;align-items:center;justify-content:center;gap:26px}
.cc-count output{font-size:3.6rem;font-weight:600;letter-spacing:-.06em;line-height:1.15;min-width:1.6em;font-variant-numeric:tabular-nums}
.cc-btn{border:0;width:46px;height:46px;border-radius:50%;background:#7b82c4;color:#fff;font-size:1.5rem;line-height:1;display:grid;place-items:center;transition:transform .12s,background .15s}
.cc-btn:hover{background:var(--purple)}
.cc-btn.pressed,.cc-btn:active{transform:scale(.9);background:var(--purple)}
.cc-pills{display:flex;justify-content:center;gap:8px;min-height:0;flex-wrap:wrap}
.cc-pills:not(:empty){margin:6px 0 2px}
.cc-pill{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:var(--muted);border:1px solid #ece8e4;border-radius:99px;padding:3px 11px}
.cc-pill b{color:var(--ink)}
.cc-pill i{width:8px;height:8px;border-radius:50%}
.cc-pill-st i{background:#e75c8b}.cc-pill-st b{color:#c9406f}
.cc-pill-rep i{background:#e0a33a}
.cc .progress-track{margin:12px 0 6px}
.cc-foot{font-size:.72rem}
.bump{animation:bump .35s ease}
@keyframes bump{40%{transform:scale(1.12)}}
.demo-bottom{margin-top:12px}
.demo-bottom #demo-hint{min-height:2.4em}

/* Phone screens: just the screen, no frame */
.screen{border-radius:13% / 6%;box-shadow:0 0 0 1px #412d2512,0 18px 40px #412d251f}
.peek-row li,.peek-row li:nth-child(3n+2),.peek-row li:nth-child(3n){background:none;padding:6px 4px 14px;flex-basis:210px}
.peek-row img{border-radius:13% / 6%;box-shadow:0 0 0 1px #412d2512,0 14px 30px #412d251c}

/* Guide download box */
.article aside{grid-template-columns:1fr 150px;align-items:end;gap:28px;padding:34px 34px 0;background:var(--lavender);overflow:hidden}
.article aside>div{padding-bottom:34px}
.article aside img{width:150px;border-radius:22px 22px 0 0;box-shadow:0 0 0 1px #412d2512,0 10px 30px #535a8e26;align-self:end}
@media(max-width:640px){.article aside{grid-template-columns:1fr;padding:28px 26px 0}.article aside>div{padding-bottom:0}.article aside img{width:170px;justify-self:center;height:220px;object-fit:cover;object-position:top}}
.article aside img{height:240px;object-fit:cover;object-position:top}
.beginner{padding-top:30px}
.beginner h2 em{color:var(--purple)}
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.steps li{padding:30px;border-radius:var(--radius);background:var(--lavender);min-width:0}
.steps li:nth-child(2){background:var(--pink)}.steps li:nth-child(3){background:var(--green)}
.steps h3{font-size:1.5rem;margin:16px 0 12px}
.steps p{font-size:.94rem}
@media(max-width:760px){.steps{grid-template-columns:1fr;gap:14px}.steps li{padding:26px}}
@media(max-width:480px){.project-top .demo-badge{display:none}.visual-heading>span{letter-spacing:.1em;padding-right:36px}.cc-count{gap:18px}}
/* Logo lockup: wordmark + lighter subtitle */
.brand-sub{font-weight:400;font-size:.62em;letter-spacing:-.01em;color:var(--muted);padding-left:12px;margin-left:3px;border-left:1px solid var(--line);line-height:1.4;align-self:center}
.brand:hover .brand-sub{color:var(--purple)}
@media(max-width:1050px){.site-header nav{gap:22px}}
@media(max-width:1050px){.site-header .brand{display:inline-grid;grid-template-columns:auto auto;column-gap:9px;row-gap:0;align-items:center}.site-header .brand img{grid-row:span 2}.site-header .brand>span:not(.brand-sub){line-height:1;align-self:end}.site-header .brand-sub{border:0;padding:0;margin:0;font-size:.5em;align-self:start;line-height:1.5}}
.button-small{white-space:nowrap}
.article p a:not(.button),.article li a,.article td a{color:var(--purple);text-decoration:underline;text-underline-offset:4px;text-decoration-color:#b9bde0;font-weight:600}.related li a{color:var(--ink)}
@media(max-width:1050px){.project-top .demo-badge{display:none}}

/* Rating + reviews */
.stars{display:inline-flex;gap:3px;color:#e9a23b;vertical-align:middle}
.stars svg{width:1em;height:1em;fill:currentColor}
.rating{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:26px;padding:10px 18px;border-radius:99px;background:var(--white);box-shadow:0 2px 0 #ece6e0;font-size:.92rem;color:var(--muted)}
.rating .stars{font-size:1.15rem}
.rating strong{color:var(--ink);font-size:1.05rem}
.rating:hover{color:var(--purple)}
.hero .quiet{margin-top:14px}
.rating-summary{display:flex;align-items:center;gap:18px}
.rating-summary>strong{font-family:Georgia,serif;font-weight:400;font-size:4.2rem;line-height:1;letter-spacing:-.04em}
.rating-summary .stars{font-size:1.5rem}
.rating-summary p{font-size:.85rem;margin-top:6px;max-width:230px}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.review{margin:0;padding:30px;border-radius:var(--radius);background:var(--lavender);display:flex;flex-direction:column;gap:14px;min-width:0}
.review:nth-child(3n+2){background:var(--pink)}.review:nth-child(3n){background:var(--green)}
.review .stars{font-size:1.05rem}
.review blockquote{margin:0;flex:1}
.review-title{font-weight:700;color:var(--ink);margin-bottom:8px}
.review blockquote p:last-child{font-family:Georgia,serif;font-style:italic;font-size:1.08rem;line-height:1.55;color:var(--ink)}
.review figcaption{font-size:.78rem;color:var(--muted);font-weight:600}
@media(max-width:1050px){.review-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.review-grid{grid-template-columns:1fr}.rating-summary{margin-top:22px}.review{padding:26px}}
.reviews h2 em,#pro h2 em{color:var(--purple)}
