/* Kilnvale — kiln / studio, document flow only */
@font-face{font-family:'Outfit';src:url('/assets/fonts/outfit-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Outfit';src:url('/assets/fonts/outfit-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Outfit';src:url('/assets/fonts/outfit-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Outfit';src:url('/assets/fonts/outfit-700.woff2') format('woff2');font-weight:700;font-display:swap}
:root{
  --bg:#EFE8DF; --ink:#2B2E32; --accent:#B57A52; --muted:#6B645C;
  --card:#F7F2EB; --line:#D9D0C5;
  --display:"Outfit", system-ui, sans-serif;
  --body:"Outfit", system-ui, sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);line-height:1.55}
body{padding-bottom:64px}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.wrap{width:min(1080px,calc(100% - 32px));margin:0 auto}
.kicker{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 8px}
.lede{color:var(--muted);max-width:36em}
.btn{display:inline-block;background:var(--accent);color:#fff;padding:12px 18px;border:0;font:inherit;letter-spacing:.08em;text-transform:uppercase;font-size:12px}
.price{font-size:22px;color:var(--accent);margin:8px 0 14px}
.v-options{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.v-pill{border:1px solid var(--line);background:var(--card);padding:8px 12px;font:inherit;cursor:pointer}
.v-pill.on{background:var(--ink);color:#fff}

.kv-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 0;border-bottom:4px solid var(--ink)}
.kv-mark{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.04em;font-size:20px}
.kv-mark i{width:16px;height:16px;background:var(--accent);display:inline-block;flex:none}
.kv-nav{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}

.kv-stage{background:var(--ink);color:#F7F2EB}
.kv-stage img{width:100%;height:280px;object-fit:cover;filter:brightness(.55);display:block}
.kv-stage-copy{padding:28px 0 32px;color:#F7F2EB}
.kv-stage-copy .wrap{width:min(1080px,calc(100% - 32px))}
.kv-stage h1{font-size:clamp(28px,5vw,48px);margin:8px 0 12px;max-width:16em;line-height:1.1}
.kv-stage p{max-width:40em;color:#ddd6cc;margin:0 0 16px}

.kv-fire{padding:48px 0 16px}
.kv-fire h2,.kv-related h2,.kv-story h2{font-size:clamp(24px,3vw,34px);margin:8px 0 16px}
.kv-fire ol{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.kv-fire li{background:var(--card);padding:20px;border-top:4px solid var(--accent)}

.kv-lead{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px 0}
.kv-lead-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;background:var(--card);padding:12px}
.kv-lead-card img{width:100%;height:200px;object-fit:cover}

.kv-board{padding:8px 0 28px}
.kv-board-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.kv-board-grid img{width:100%;aspect-ratio:1;object-fit:cover}
.kv-board-grid p{color:var(--muted);font-size:13px}

.kv-rest-list a{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.kv-rest-list img{width:96px;height:96px;object-fit:cover}

.kv-pdp{padding:24px 0 16px}
.kv-pdp-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:28px;align-items:start}
.kv-pdp img[data-main]{width:100%;background:var(--card)}
.kv-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}
.kv-thumbs img{width:72px;height:72px;object-fit:cover;cursor:pointer;opacity:.55}
.kv-thumbs img.on{opacity:1;outline:3px solid var(--accent)}
.kv-buy h1{font-size:clamp(26px,4vw,34px);margin:0 0 8px}
.kv-hl{padding-left:18px;color:var(--muted)}
.kv-table{width:100%;border-collapse:collapse;margin-top:16px;font-size:14px}
.kv-table th,.kv-table td{border-bottom:1px solid var(--line);padding:8px 0;text-align:left}
.kv-story{padding:0 0 28px;max-width:40em}
.kv-story p{color:var(--muted);line-height:1.7}
.kv-related{padding:0 0 72px}
.kv-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.kv-related-grid img{width:100%;aspect-ratio:1;object-fit:cover}

.kv-foot{background:var(--ink);color:#EFE8DF;padding:36px 0 20px;margin-top:20px}
.kv-foot a{color:#EFE8DF}
.kv-fg{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:20px}
.kv-foot h3{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.ph-policy{padding:36px 0 72px}
.ph-policy-hero h1{font-size:32px}
.ph-policy-split{display:grid;grid-template-columns:1.3fr .7fr;gap:24px}
.ph-policy-card{background:var(--card);padding:20px;border-left:4px solid var(--accent)}
.ph-policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ph-policy-grid article{background:var(--card);padding:16px}
.ph-policy-steps{padding-left:20px}
.ph-form{display:grid;gap:8px;max-width:460px}
.ph-form input,.ph-form textarea{padding:11px;border:1px solid var(--line);font:inherit}
.ph-flash{padding:10px;background:#e5efe4}
.ph-flash.err{background:#f3ddd6}
.wa{position:fixed;right:14px;bottom:14px;background:#25D366;color:#083b1a;padding:11px 14px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;z-index:40}
.empty{padding:64px 0;text-align:center}

@media (max-width: 900px){
  .kv-fire ol,.kv-lead,.kv-lead-card,.kv-board-grid,.kv-pdp-grid,.kv-related-grid,.kv-fg,.ph-policy-split,.ph-policy-grid{grid-template-columns:1fr}
  .kv-rest-list a{grid-template-columns:72px minmax(0,1fr);gap:10px}
  .kv-rest-list a strong{grid-column:2}
  .kv-stage img{height:200px}
  .kv-stage-copy{padding:20px 0 24px}
  .kv-lead-card img{height:180px}
  .kv-nav{width:100%}
}

/* soft pass — kiln ware, 20px ceramic */
img,figure{border-radius:18px}
.btn,.v-pill{border-radius:999px}
.kv-stage img,.kv-lead-card,.kv-lead-card img,.kv-board-grid img,.kv-rest-list img,.kv-media img[data-main],.kv-thumbs img,.kv-related-grid img,.kv-fire li,.ph-policy-card,.ph-policy-grid article{border-radius:20px;overflow:hidden}
.kv-mark i{border-radius:6px}
.ph-form input,.ph-form textarea,.ph-flash{border-radius:14px}
.kv-nav a{padding:6px 10px;border-radius:999px}
.kv-top{border-bottom-width:2px}
