:root{--c-ink: #1B1F2A;--c-ink-soft: #5A6172;--c-coral: #E85A4F;--c-coral-deep: #C7463C;--c-teal: #17635E;--c-cream: #FBF9F6;--c-sand: #F3EFE9;--c-paper: #FFFFFF;--c-line: #E9E4DC;--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--fs-hero: clamp(2.1rem, 5.5vw, 3.6rem);--fs-h2: clamp(1.5rem, 3.2vw, 2.1rem);--fs-body: 1rem;--fs-small: .875rem;--sp-1: .5rem;--sp-2: 1rem;--sp-3: 1.75rem;--sp-4: 3rem;--sp-5: 5rem;--r-s: 12px;--r-m: 20px;--r-full: 999px;--shadow-card: 0 2px 6px rgba(27,31,42,.05), 0 14px 34px rgba(27,31,42,.09);--shadow-pop: 0 6px 16px rgba(232,90,79,.25);--wrap: 1120px}*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--c-ink);background:var(--c-cream);line-height:1.6}img{max-width:100%;display:block;height:auto}a{color:inherit;text-decoration:none}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--sp-2)}.site-header{position:sticky;top:0;z-index:20;background:#fbf9f6eb;backdrop-filter:blur(10px);border-bottom:1px solid var(--c-line)}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;padding:.8rem var(--sp-2)}.brand img{height:40px}nav.main{display:flex;gap:var(--sp-1);align-items:center;flex-wrap:wrap}nav.main a{padding:.45rem .85rem;border-radius:var(--r-full);font-weight:550;font-size:.95rem}nav.main a:hover{background:var(--c-sand)}nav.main a.cta{background:var(--c-coral);color:#fff;box-shadow:var(--shadow-pop)}nav.main a.cta:hover{background:var(--c-coral-deep)}.lang-switch{font-size:var(--fs-small)}.lang-switch a{padding:.2rem .35rem;color:var(--c-ink-soft);border-radius:6px}.lang-switch a[aria-current]{color:var(--c-coral);font-weight:700}.hero{background:linear-gradient(150deg,#fff6f0,#fde9e2 45%,#f7efe3);overflow:hidden}.hero .wrap{padding-top:var(--sp-5);padding-bottom:var(--sp-5);display:grid;gap:var(--sp-3)}.hero h1{font-size:var(--fs-hero);line-height:1.12;letter-spacing:-.025em;max-width:20ch}.hero p{color:var(--c-ink-soft);font-size:1.12rem;max-width:52ch}.btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--c-coral);color:#fff;font-weight:650;padding:.85rem 1.7rem;border-radius:var(--r-full);border:0;cursor:pointer;font-size:1rem;box-shadow:var(--shadow-pop)}.btn:hover{background:var(--c-coral-deep)}.btn.ghost{background:var(--c-paper);color:var(--c-ink);border:1.5px solid var(--c-line);box-shadow:none}.btn-row{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin-top:var(--sp-2)}section{padding:var(--sp-4) 0}section.tint{background:var(--c-sand)}h2{font-size:var(--fs-h2);letter-spacing:-.015em}.sub{color:var(--c-ink-soft);margin-top:.5rem;max-width:60ch}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--sp-2);margin-top:var(--sp-3)}.card{background:var(--c-paper);border-radius:var(--r-m);overflow:hidden;box-shadow:var(--shadow-card);transition:transform .18s ease}.card:hover{transform:translateY(-4px)}.card img{aspect-ratio:1/1.06;object-fit:cover;width:100%}.card .body{padding:var(--sp-2)}.card h3{font-size:1.06rem}.card p{color:var(--c-ink-soft);font-size:var(--fs-small);margin-top:.25rem}.card .tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-coral);background:#fdebe8;padding:.15rem .55rem;border-radius:var(--r-full);margin-top:.55rem}.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-2);margin-top:var(--sp-3)}.cat{background:var(--c-paper);border:1px solid var(--c-line);border-radius:var(--r-m);padding:var(--sp-2);text-align:center;font-weight:600}.cat .ic{font-size:1.9rem;display:block;margin-bottom:.4rem}.previewer{display:grid;grid-template-columns:1fr 340px;gap:var(--sp-3);margin-top:var(--sp-3);align-items:start}.stage{background:var(--c-paper);border:1px solid var(--c-line);border-radius:var(--r-m);padding:var(--sp-2);box-shadow:var(--shadow-card)}.stage canvas{width:100%;height:auto;border-radius:var(--r-s);touch-action:none;cursor:grab;display:block}.controls{display:grid;gap:var(--sp-2);background:var(--c-paper);border:1px solid var(--c-line);border-radius:var(--r-m);padding:var(--sp-2);box-shadow:var(--shadow-card)}.shapes{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.shape-btn{border:2px solid var(--c-line);background:var(--c-paper);border-radius:var(--r-s);padding:.5rem 0;font-size:.8rem;font-weight:600;cursor:pointer;color:var(--c-ink-soft)}.shape-btn.on{border-color:var(--c-coral);color:var(--c-coral);background:#fdebe8}.controls label{font-size:var(--fs-small);font-weight:650;color:var(--c-ink-soft)}.controls input[type=range]{width:100%;accent-color:var(--c-coral)}.hint{font-size:var(--fs-small);color:var(--c-ink-soft)}.preview-chip{display:none;align-items:center;gap:.6rem;background:#fdebe8;border-radius:var(--r-s);padding:.5rem .7rem;font-size:var(--fs-small);font-weight:600;color:var(--c-coral-deep)}.preview-chip img{width:44px;height:44px;object-fit:cover;border-radius:8px}.preview-chip.show{display:flex}.steps{counter-reset:st;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-2);margin-top:var(--sp-3)}.step{background:var(--c-paper);border-radius:var(--r-m);padding:var(--sp-2);box-shadow:var(--shadow-card)}.step:before{counter-increment:st;content:counter(st);display:inline-grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:var(--r-full);background:var(--c-teal);color:#fff;font-weight:750;margin-bottom:.55rem}form.inquiry{display:grid;gap:var(--sp-2);max-width:560px;margin-top:var(--sp-3)}form.inquiry input,form.inquiry textarea{width:100%;padding:.8rem 1rem;border:1.5px solid var(--c-line);border-radius:var(--r-s);font:inherit;background:var(--c-paper)}form.inquiry input:focus,form.inquiry textarea:focus{outline:2.5px solid var(--c-coral);border-color:transparent}label.lb{font-weight:650;font-size:var(--fs-small)}.hp{position:absolute;left:-9999px}.note{font-size:var(--fs-small);color:var(--c-ink-soft)}footer.site-footer{border-top:1px solid var(--c-line);background:var(--c-paper);margin-top:var(--sp-4)}footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-3);padding-top:var(--sp-3);padding-bottom:var(--sp-3);color:var(--c-ink-soft);font-size:var(--fs-small)}@media(max-width:860px){.previewer{grid-template-columns:1fr}.cats{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:1fr 1fr}}
