:root{color-scheme:light dark;--bg:#f7f7ef;--paper:#fffef8;--ink:#183d33;--text:#263f36;--muted:#626d64;--accent:#b6db6b;--line:#d8ddd0;--soft:#edf0e4;--radius:18px;--width:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.7 "Avenir Next",Avenir,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input{font:inherit}button,a,input{touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:3px solid var(--ink);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink);line-height:1.12;text-wrap:balance}h1,h2{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-weight:500;letter-spacing:-.045em}h1{font-size:clamp(2.6rem,7.7vw,6.4rem);max-width:15ch;margin-bottom:24px;overflow-wrap:anywhere}h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:24px}h3{font-size:1.15rem;letter-spacing:-.02em}p{margin-bottom:1.2em}.wrap{max-width:var(--width);margin:auto;padding:0 16px}.site-header{border-bottom:1px solid var(--line)}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:12px;font-weight:750;line-height:1.2;text-decoration:none;max-width:65%;overflow-wrap:anywhere}.brand-mark{display:inline-grid;place-items:center;flex-shrink:0;width:30px;height:30px;border:1.5px solid var(--ink);border-radius:50%;font-family:Georgia,serif;font-size:22px}.nav{display:flex;gap:22px;font-size:.85rem;white-space:nowrap}.nav a{text-decoration:none}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:36px;padding:64px 0 56px;border-bottom:1px solid var(--line)}.eyebrow{display:flex;align-items:center;gap:10px;font-size:.73rem;font-weight:750;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin-bottom:24px}.eyebrow:before{content:"";width:22px;height:1px;background:currentColor}.lead{font-size:clamp(1.08rem,2vw,1.25rem);max-width:54ch;color:var(--muted);line-height:1.65}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:8px;padding:12px 20px;text-decoration:none;cursor:pointer;font-weight:650}.button:hover{filter:brightness(1.13)}.hero-note{border:1px solid var(--line);background:var(--soft);padding:30px;border-radius:var(--radius);align-self:end}.note-symbol{font:4rem/1 Georgia,serif;color:var(--ink);margin-bottom:20px}.hero-note small{color:var(--muted)}.hero-note p{margin:12px 0 0;font-size:1.13rem}.section{padding:56px 0;border-bottom:1px solid var(--line)}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.section-heading a{font-size:.85rem;white-space:nowrap}.cards{display:grid;gap:16px}.card{border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:var(--paper);min-width:0}.card p{color:var(--muted);margin-bottom:0}.card-number{display:block;font-size:.75rem;letter-spacing:.1em;color:var(--muted);margin-bottom:34px}.steps{padding:0;margin:0;list-style:none;counter-reset:steps}.steps li{counter-increment:steps;display:grid;grid-template-columns:40px 1fr;gap:18px;padding:20px 0;border-top:1px solid var(--line)}.steps li:before{content:counter(steps,decimal-leading-zero);font-size:.8rem;color:var(--muted);padding-top:3px}.faq{max-width:850px}details{border-top:1px solid var(--line);padding:18px 0}summary{font-weight:650;cursor:pointer;line-height:1.5}details p{margin:14px 0 0;color:var(--muted)}.guide-grid{display:grid;gap:0 28px;list-style:none;margin:0;padding:0}.guide-grid li{border-top:1px solid var(--line)}.guide-grid a{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;text-decoration:none;line-height:1.45;overflow-wrap:anywhere}.guide-grid a:after{content:"↗";color:var(--muted);flex-shrink:0}.site-footer{padding:38px 0 26px;font-size:.8rem;color:var(--muted)}.footer-top,.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px}.footer-links{display:flex;gap:10px 24px;flex-wrap:wrap;margin:24px 0}.footer-bottom{padding-top:22px;border-top:1px solid var(--line)}.footer-legal{display:flex;gap:22px}.breadcrumb{display:flex;gap:10px;flex-wrap:wrap;font-size:.8rem;color:var(--muted);margin:32px 0}.article{max-width:760px;padding:28px 0 56px}.article h1{font-size:clamp(2.4rem,5.5vw,4.5rem);max-width:20ch}.article h2{font-size:clamp(1.7rem,3vw,2.3rem);margin-top:46px}.article h3{margin-top:28px}.article li+li{margin-top:6px}.article .lead{max-width:none}.article-header{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:32px}.article section{scroll-margin-top:30px}.muted{color:var(--muted)}.skip{position:absolute;top:-100px;left:16px;background:var(--paper);padding:10px;z-index:5}.skip:focus{top:8px}.tool-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.tool-controls{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin:24px 0}.file-input{max-width:100%;font-size:.9rem}.canvas-wrap{background:var(--soft);border:1px solid var(--line);border-radius:12px;min-height:160px;display:grid;place-items:center;overflow:hidden}.canvas-wrap canvas{display:block;max-width:100%;height:auto}.canvas-wrap:has(canvas[hidden]){display:none}[hidden]{display:none!important}.tool-status{font-size:.9rem;min-height:1.7em;margin:14px 0 0}.tool-label{display:block;font-weight:650;margin-bottom:10px}.empty{color:var(--muted);border-top:1px solid var(--line);padding:20px 0}
@media(min-width:720px){.hero{grid-template-columns:minmax(0,1fr) 260px;padding:88px 0 70px;gap:56px}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section{padding:64px 0}.tool-panel{padding:36px}}
@media(max-width:420px){.header-inner{min-height:74px}.nav{gap:12px}.brand{font-size:.9rem}.hero-note{padding:24px}.section-heading{flex-wrap:wrap}.card{padding:24px}}
@media(prefers-color-scheme:dark){:root{--bg:#13251f;--paper:#1b3028;--ink:#e4f0db;--text:#dae3d4;--muted:#adb9a7;--accent:#b6db6b;--line:#395044;--soft:#213a2d}.button{background:var(--accent);color:#13251f;border-color:var(--accent)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Loaded only for generator sites; the reading-site stylesheet stays unchanged. */
.product-hero{padding:32px 0;gap:24px;align-items:center}
.product-hero h1{font-size:clamp(2.1rem,3.8vw,3.1rem);max-width:22ch;line-height:1.1;margin-bottom:16px}
.product-hero .eyebrow{margin-bottom:12px}
.product-hero .lead{font-size:1.05rem;line-height:1.55;margin-bottom:20px}
.product-hero>div{min-width:0;overflow-wrap:anywhere}
.product-preview{margin:0;min-width:0;display:flex;justify-content:flex-end}
.product-preview img{display:block;width:auto;max-width:100%;height:auto;max-height:320px;border-radius:var(--radius)}
.generator-site #tool{padding:24px 0 36px}
.generator-site .genbase{max-width:none}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gallery-card{display:block;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);text-decoration:none;transition:border-color .15s}
.gallery-card:hover{border-color:var(--ink)}
.gallery-card figure{margin:0}
.gallery-card img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:var(--soft)}
.gallery-card figcaption{padding:18px 20px;line-height:1.5;overflow-wrap:anywhere}
.generator-site .gen-legal,.generator-site .footer-legal{flex-wrap:wrap}
.generator-site .genbase :is(select,input,textarea){min-width:0;max-width:100%}
.generator-site .genbase :is(form,.gen-top,.gen-actions){min-width:0;overflow-wrap:anywhere}
@media(min-width:720px){.product-hero{grid-template-columns:minmax(0,1fr) minmax(0,.68fr);gap:48px;padding:32px 0}.product-hero-solo{grid-template-columns:minmax(0,1fr)}.product-hero-solo .lead{max-width:65ch}}
@media(max-width:719px){.product-hero{padding:28px 0;gap:20px}.product-preview{display:none}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.generator-site .header-inner{flex-wrap:wrap;gap:12px;padding-top:16px;padding-bottom:16px}.generator-site .brand{max-width:100%;min-width:0}.generator-site .nav{flex-wrap:wrap;gap:16px}.generator-site .genbase{padding:20px}.generator-site .gen-legal{gap:12px}.generator-site .section-heading{flex-wrap:wrap}}
@media(max-width:420px){.gallery-grid{gap:12px}.gallery-card figcaption{padding:10px 12px;font-size:.85rem}}
@media(prefers-reduced-motion:reduce){.gallery-card{transition:none}}
