@font-face{font-family:StudioSans;src:url(fonts/inter-cyrillic.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:StudioSans;src:url(fonts/inter-latin.woff2) format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0-024F}
@font-face{font-family:StudioDisplay;src:url(fonts/oswald-cyrillic.woff2) format('woff2');font-weight:200 700;font-display:swap}
@font-face{font-family:StudioDisplay;src:url(fonts/oswald-latin.woff2) format('woff2');font-weight:200 700;font-display:swap;unicode-range:U+0-024F}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{--paper:#f5f1e7;--ink:#20271e;--accent:#355340;--line:#c7cec0;--muted:#505e51;--panel:#fffef9;margin:0;background:var(--paper);color:var(--ink);font-family:StudioSans,sans-serif;line-height:1.65}a{color:inherit;text-underline-offset:.22em}a:hover{text-decoration-thickness:2px}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:5px}svg{width:100%;height:auto}p{margin:.8em 0 1.2em}h1,h2,h3{line-height:1.08;margin:0 0 .6em;font-weight:600;letter-spacing:-.035em}h1,h2{font-family:StudioDisplay,StudioSans,sans-serif}h1{font-size:clamp(2.7rem,5.4vw,5.6rem);font-weight:500;max-width:13ch}h2{font-size:clamp(2rem,3vw,3.4rem)}h3{font-size:1.25rem;line-height:1.35}header,main,footer{width:min(1240px,calc(100% - 80px));margin:auto}header{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.brand{font-size:1.05rem;font-weight:750;text-decoration:none}.brand small{display:block;font-weight:450;font-size:.75rem;letter-spacing:.04em;color:var(--muted)}nav{display:flex;gap:24px;flex-wrap:wrap;font-size:.83rem}.skip{position:absolute;left:20px;top:-100px;z-index:10}.skip:focus{top:10px;background:var(--panel);padding:15px}.preview{font-size:.75rem;background:var(--ink);color:var(--paper);padding:8px 24px;text-align:center}.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--muted);margin-bottom:24px}.hero{display:grid;grid-template-columns:1.16fr 1fr;gap:70px;align-items:center;padding:80px 0}.hero .intro{max-width:52ch;color:var(--muted);margin:24px 0 32px}.button{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;background:var(--accent);border:1px solid var(--accent);color:var(--paper);padding:14px 22px;font-weight:650;font-size:.87rem;min-height:48px}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.hero-art{border:1px solid var(--line);padding:24px;background:var(--panel);position:relative;overflow:hidden;color:var(--accent)}.hero-art small{display:flex;justify-content:space-between;margin:0 0 22px;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.hero-art figcaption{font-size:.78rem;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted)}figure{margin:0}.band{display:flex;gap:30px;justify-content:space-between;border-block:1px solid var(--line);padding:18px 0;font-size:.77rem;color:var(--muted)}.section{padding:66px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:32px}.section-head p{max-width:45ch;color:var(--muted);font-size:.87rem}.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.article-card{border-top:2px solid var(--ink);padding:22px 0;display:flex;flex-direction:column}.article-card .number{font:2rem StudioDisplay,sans-serif;color:var(--accent);margin-bottom:26px}.article-card p{font-size:.86rem;color:var(--muted)}.article-card>a:last-child{margin-top:auto;font-size:.83rem;font-weight:650}.tool-teaser{display:grid;grid-template-columns:1fr 1fr;gap:48px;background:var(--ink);color:var(--paper);padding:48px}.tool-teaser .eyebrow{color:inherit;opacity:.7}.tool-teaser p{opacity:.8;font-size:.95rem}.tool-teaser .button{background:var(--paper);color:var(--ink);border-color:var(--paper)}.teaser-list{display:grid;align-content:center;gap:16px;font-size:.9rem}.teaser-list div{padding-bottom:16px;border-bottom:1px solid currentColor}.promo{border-top:1px solid var(--line);padding:36px 0;display:grid;grid-template-columns:1fr 1fr;gap:40px}.promo p{font-size:.85rem;max-width:60ch;color:var(--muted)}.promo small{display:block;color:var(--muted);font-size:.7rem}.promo a{display:inline-block;align-self:start;font-weight:650}.article{width:min(840px,100%);margin:60px auto}.article h1{font-size:clamp(2.3rem,4vw,4rem);max-width:23ch}.article .lead{font-size:1.08rem;color:var(--muted);margin:30px 0 44px}.article h2{font-size:2rem;margin:42px 0 18px}.article section p{font-size:1rem;line-height:1.85}.article .takeaway{border-left:4px solid var(--accent);padding:12px 24px;background:var(--panel);margin:32px 0}.back{font-size:.8rem;display:inline-block;margin-bottom:28px}.table-scroll{overflow-x:auto;max-width:100%;margin:24px 0}table{border-collapse:collapse;width:100%;min-width:580px;font-size:.8rem}th,td{text-align:left;padding:14px;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--panel);font-weight:650}.tool-intro{max-width:800px;margin:60px 0 36px}.tool-intro h1{max-width:22ch;font-size:clamp(2.5rem,4vw,4.4rem)}.tool-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:42px;margin-bottom:60px;align-items:start}form{background:var(--panel);border:1px solid var(--line);padding:30px}fieldset{border:0;padding:0;margin:0 0 26px;min-width:0}legend{font-size:.9rem;font-weight:700;margin-bottom:14px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:.77rem;color:var(--muted);margin-bottom:12px}input{display:block;margin-top:7px;padding:10px 12px;width:100%;min-width:0;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:0;min-height:46px}.row-fields{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}.row-fields>label:first-child{grid-column:auto}.actions{display:flex;gap:12px;flex-wrap:wrap}#result{background:var(--paper);border-top:3px solid var(--accent);padding:24px 0;font-size:.87rem;min-width:0}#result h3{font-family:StudioDisplay,sans-serif;font-size:2rem}.note{font-size:.77rem;color:var(--muted)}.error{border-left:3px solid #ab3027;padding:15px}.tool-help{font-size:.82rem;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}footer{padding:32px 0 40px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;font-size:.7rem;color:var(--muted)}footer p{max-width:60ch;margin:0}footer a{white-space:nowrap}.article-meta{font-size:.72rem;color:var(--muted)}.related{padding-top:24px;border-top:1px solid var(--line);display:grid;gap:12px}
/* Each artboard reflects its working document: signage, diary, route, grid, ledger. */
body[data-theme=retail]{--paper:#f4f1db;--ink:#243321;--accent:#35633c;--panel:#fdfbe9;--line:#bac4aa;--muted:#51634e}body[data-theme=retail] .hero-art{transform:rotate(2deg);box-shadow:12px 12px 0 #d2dbbc}body[data-theme=retail] .article-card:first-child{grid-column:span 2}body[data-theme=retail] .articles{grid-template-columns:2fr 1fr 1fr}
body[data-theme=salon]{--paper:#faeae7;--ink:#3b2628;--accent:#8c3b45;--panel:#fff6f3;--line:#dbb9b8;--muted:#765052}body[data-theme=salon] h1,body[data-theme=salon] h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em}body[data-theme=salon] .hero{grid-template-columns:1fr 1.1fr}body[data-theme=salon] .hero-art{border-radius:48% 48% 0 0;padding-top:60px}body[data-theme=salon] .article-card{border-top-width:1px}
body[data-theme=hotel]{--paper:#eee9df;--ink:#27384a;--accent:#273e58;--panel:#faf6ec;--line:#c0c1bb;--muted:#556171}body[data-theme=hotel] .hero-art{padding:40px 30px;border-top:7px solid var(--accent)}body[data-theme=hotel] h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em}body[data-theme=hotel] .articles{gap:0}body[data-theme=hotel] .article-card{padding:26px;border:1px solid var(--line)}
body[data-theme=fitness]{--paper:#172523;--ink:#eef1d7;--accent:#d0ec5d;--panel:#223430;--line:#4e6256;--muted:#b8c9b7}body[data-theme=fitness] .button{color:#172523}body[data-theme=fitness] .hero-art{border:0;background:#d0ec5d;color:#172523}body[data-theme=fitness] .hero-art small,body[data-theme=fitness] .hero-art figcaption{color:#273e2b}body[data-theme=fitness] h1{text-transform:uppercase}body[data-theme=fitness] .number{font-size:3.5rem}body[data-theme=fitness] .tool-teaser{background:#d0ec5d;color:#172523}
body[data-theme=office]{--paper:#f4f4ee;--ink:#27383a;--accent:#2a6763;--panel:#fffef9;--line:#becbc7;--muted:#4d6766}body[data-theme=office] .hero-art{background:repeating-linear-gradient(0deg,transparent,transparent 39px,#d5dfd7 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,#d5dfd7 40px);padding:36px}body[data-theme=office] .article-card{border:1px solid var(--line);padding:24px}body[data-theme=office] .hero{gap:90px}
body[data-theme=restaurant]{--paper:#f2e6ce;--ink:#4b231f;--accent:#8f302a;--panel:#faf1dc;--line:#cdb39d;--muted:#79564b}body[data-theme=restaurant] h1,body[data-theme=restaurant] h2{font-family:Georgia,serif;font-weight:400}body[data-theme=restaurant] .hero-art{border:4px double var(--ink)}body[data-theme=restaurant] header{border-bottom:4px double var(--ink)}body[data-theme=restaurant] .articles{grid-template-columns:1fr}body[data-theme=restaurant] .article-card{display:grid;grid-template-columns:50px 1fr 1fr;gap:28px;align-items:start}body[data-theme=restaurant] .article-card>a:last-child{grid-column:2}
body[data-theme=spa]{--paper:#ebece0;--ink:#354338;--accent:#4e674f;--panel:#f7f7ee;--line:#c1c7b4;--muted:#5c6b58}body[data-theme=spa] h1,body[data-theme=spa] h2{font-family:Georgia,serif;font-weight:400}body[data-theme=spa] .hero{padding-block:105px;gap:100px}body[data-theme=spa] .hero-art{border-radius:160px 160px 0 0;padding-top:65px;background:#d4dcc8;border:0}body[data-theme=spa] .tool-teaser{background:#d4dcc8;color:var(--ink)}body[data-theme=spa] .article-card{border-color:var(--line)}
body[data-theme=events]{--paper:#f3eee3;--ink:#242520;--accent:#a13b1d;--panel:#fffaf0;--line:#c9c1ae;--muted:#655e4d}body[data-theme=events] .hero{grid-template-columns:1.3fr 1fr}body[data-theme=events] .hero-art{border:0;border-left:8px solid var(--accent);background:#e4d6bc}body[data-theme=events] h1{text-transform:uppercase}body[data-theme=events] .article-card .number{font-size:3.4rem}body[data-theme=events] .tool-teaser{border-left:8px solid var(--accent)}
.tool-layout>*{min-width:0}
.nav-arrow{display:inline-block;width:16px;height:16px;vertical-align:-.15em;flex-shrink:0}.button{gap:10px}
body[data-theme=fitness] .tool-teaser .button{background:var(--ink);color:var(--paper);border-color:var(--ink)}
body[data-theme=salon] .hero-art small,body[data-theme=spa] .hero-art small{justify-content:center;text-align:center;flex-wrap:wrap}
body[data-theme=fitness] .button.secondary{color:var(--ink)}
@media(max-width:900px){header,main,footer{width:calc(100% - 44px)}.hero,.tool-layout{gap:28px;grid-template-columns:1fr!important}.hero{padding:48px 0!important}.hero-art{max-width:560px;width:100%;justify-self:center;transform:none!important}.articles{grid-template-columns:1fr!important}.article-card:first-child{grid-column:auto!important}.tool-teaser,.promo{grid-template-columns:1fr}.hero h1{max-width:18ch}.section-head{display:block}.tool-layout{margin-bottom:40px}.article{margin-block:40px}body[data-theme=restaurant] .article-card{grid-template-columns:44px 1fr}body[data-theme=restaurant] .article-card p{grid-column:2}.tool-teaser{padding:30px}.band{gap:14px;flex-wrap:wrap}.section{padding:44px 0}}
@media(max-width:480px){header,main,footer{width:calc(100% - 32px)}header{display:block;padding:20px 0}.brand{display:inline-block}nav{gap:18px;margin-top:16px;font-size:.76rem}h1{font-size:2.75rem}.hero{gap:35px}.hero-art{padding:22px!important}.hero-art small{font-size:.61rem;gap:12px}body[data-theme=salon] .hero-art,body[data-theme=spa] .hero-art{border-radius:0}.fields{grid-template-columns:1fr}.row-fields{grid-template-columns:1fr 1fr}.row-fields>label:first-child{grid-column:span 2}form{padding:20px}.tool-teaser{padding:26px}.promo{gap:15px}.band{display:block;padding:14px 0}.band span{display:block;padding:4px 0}footer{display:block}footer>a{display:inline-block;margin-top:18px}.article .lead{font-size:1rem}.article section p{font-size:.93rem}.actions .button{width:100%}.article h2{font-size:1.8rem}body[data-theme=restaurant] .article-card{gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
