/* ============================================================
   LDD Kreationz — brand board shared styles
   Extracted from index.html so all pages share one source.
   Colour tokens live in theme.css; this file is layout + look.
   ============================================================ */

:root{
  /* Role aliases from theme.css (with hex fallbacks if theme.css is missing) */
  --purple:var(--brand-primary,#8247C9); --purple-vivid:var(--color-bright-purple,#7700CC); --purple-regal:var(--color-deep-purple,#47007A); --plum:var(--color-deep-plum,#442266);
  --green:var(--brand-secondary,#8BAE55); --taupe:var(--color-pale-taupe,#E8E4DF); --soft-white:var(--color-soft-white,#F7F6F2);
  --purple-soft:#EDE4F8; --green-soft:#EEF2E4; --ink:var(--brand-text,#442266); --ink-soft:#5C556A; --line:var(--brand-border,rgba(68,34,102,.14));
  --white:var(--color-white,#FFFFFF); --olive:var(--color-deep-olive,#454B1B); --lavender:var(--brand-bg,#EEEBF5); --bg:var(--brand-bg,#EEEBF5);
  --gold:var(--brand-accent,#C79A3E); --gold-text:var(--brand-accent-text,#9C7A2E);
  --serif:"Playfair Display",Georgia,serif; --acme:"Acme","Arial Black",sans-serif;
  --body:"Montserrat",Helvetica,Arial,sans-serif; --script:"Pacifico",cursive;
  --maxw:1180px; --radius:18px;
  --shadow:0 20px 55px -26px rgba(68,34,102,.5); --shadow-sm:0 10px 26px -16px rgba(68,34,102,.42);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;color-scheme:light;}
body{margin:0;font-family:var(--body);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 26px;}
section{padding:90px 0;}
.band{border-top:1px solid var(--line);}
.page-lead-band{padding-top:54px;}

.eyebrow{font-family:var(--acme);letter-spacing:.24em;text-transform:uppercase;font-size:12px;color:var(--purple);display:flex;align-items:center;gap:12px;margin:0 0 16px;}
.eyebrow .n{display:none;}
h2.t{font-family:var(--serif);font-weight:800;font-size:clamp(30px,4.6vw,54px);line-height:1.03;margin:0 0 14px;letter-spacing:-.01em;}
.lead{font-size:18px;color:var(--ink-soft);max-width:62ch;margin:0;}

header.bar{position:sticky;top:0;z-index:50;background:rgba(238,235,245,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.bar-in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 26px;max-width:var(--maxw);margin:0 auto;}
.bar-l{display:flex;align-items:center;gap:11px;text-decoration:none;color:inherit;cursor:pointer;}
.bar-l img{height:40px;width:auto;}
.bar-l b{font-family:var(--serif);font-weight:700;font-size:17px;}
.bar-nav{display:flex;gap:20px;flex-wrap:wrap;}
.bar-nav a{text-decoration:none;color:var(--ink-soft);font-size:13px;font-weight:600;}
.bar-nav a:hover{color:var(--purple);}
.bar-nav a.active{color:var(--purple);}
.bar-burger{display:none;background:none;border:0;cursor:pointer;padding:8px;flex-direction:column;gap:5px;}
.bar-burger span{display:block;width:24px;height:2.5px;background:var(--ink);border-radius:2px;transition:.2s;}
@media(max-width:900px){
  .bar-burger{display:flex;}
  .bar-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;flex-wrap:nowrap;gap:0;background:rgba(238,235,245,.98);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);box-shadow:0 14px 26px -12px rgba(68,34,102,.4);padding:6px 0;max-height:72vh;overflow-y:auto;}
  .bar-nav.open{display:flex;}
  .bar-nav a{padding:13px 26px;font-size:15px;border-top:1px solid var(--line);}
  .bar-nav a:first-child{border-top:0;}
}
/* back to top button */
#toTop{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;background:var(--purple);color:#fff;display:grid;place-items:center;text-decoration:none;box-shadow:0 10px 26px -8px rgba(68,34,102,.6);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .3s,visibility .3s,transform .3s,background .2s;z-index:60;border:none;cursor:pointer;}
#toTop.show{opacity:1;visibility:visible;transform:translateY(0);}
#toTop:hover{background:#6f39b0;}
@media(max-width:900px){
  #toTop{left:50%;right:auto;transform:translate(-50%,8px);}
  #toTop.show{transform:translate(-50%,0);}
}

.board-head{background:linear-gradient(160deg,rgba(44,21,71,.82),rgba(68,34,102,.78)),url('assets/hero-bg.webp');background-size:cover;background-position:center;color:#fff;text-align:center;padding:88px 26px 84px;}
.board-head img{height:190px;width:auto;margin:0 auto 8px;filter:drop-shadow(0 20px 40px rgba(0,0,0,.35));}
.hglow{position:relative;display:grid;place-items:center;width:max-content;margin:0 auto 8px;}
.hglow::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.55),rgba(237,228,248,.24) 45%,rgba(237,228,248,0) 70%);filter:blur(8px);z-index:0;}
.hglow img{position:relative;z-index:1;margin:0 !important;}
.board-head h1{font-family:var(--serif);font-weight:900;font-size:clamp(38px,7vw,84px);line-height:.98;margin:10px 0 6px;letter-spacing:-.02em;}
.board-head .scr{font-family:var(--script);color:#d9c2f5;font-size:clamp(22px,3.4vw,34px);margin:2px 0 18px;}
.board-head p{max-width:60ch;margin:0 auto;color:#d8cdea;font-size:17px;}
.board-head .tags{margin-top:26px;display:flex;gap:26px;justify-content:center;flex-wrap:wrap;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:#c9b8e4;}
.board-head .tags span{display:flex;align-items:center;gap:8px;}
.board-head .dot{width:8px;height:8px;border-radius:50%;background:var(--green);}
.gold-rule{width:84px;height:3px;border-radius:2px;background:var(--gold);margin:4px auto 18px;}

.locks{display:grid;grid-template-columns:repeat(3,1fr);gap:0;}
@media(max-width:820px){.locks{grid-template-columns:1fr;}}
.lock{aspect-ratio:1/.92;display:grid;place-items:center;padding:36px;}
.lock img{max-height:160px;width:auto;}
.lk-white{background:var(--soft-white);}
.lk-plum{background:var(--plum);}
.lk-taupe{background:var(--taupe);}
.lk-purple{background:var(--purple);}
.lk-green{background:var(--green);}

.varrow{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:26px;}
@media(max-width:820px){.varrow{grid-template-columns:1fr 1fr;}}
.var{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;}
.var .fr{height:140px;display:grid;place-items:center;padding:20px;}
.var img{max-height:104px;width:auto;}
.var .cap{border-top:1px solid var(--line);padding:10px 14px;font-size:12px;}
.var .cap b{display:block;font-size:12.5px;}
.var .cap span{color:var(--ink-soft);}

.note{background:var(--purple-soft);border-left:4px solid var(--purple);border-radius:10px;padding:15px 20px;font-size:15px;margin-top:24px;}

.circles{display:flex;flex-wrap:wrap;gap:22px;justify-content:center;margin-top:20px;}
.circ{width:236px;background:var(--brand-surface,#fff);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;text-align:left;}
.circ .dotc{width:100%;height:130px;border-radius:0;margin:0;box-shadow:none;border:0;border-bottom:1px solid var(--line);order:0;}
.circ .nm{order:1;font-family:var(--serif);font-weight:800;font-size:21px;line-height:1.15;color:var(--brand-text,#442266);margin:18px 22px 0;}
.circ .hx{order:2;font-size:14px;font-weight:600;letter-spacing:.02em;color:var(--ink-soft);margin:8px 22px 0;}
.circ .rl{order:3;font-size:14px;color:var(--brand-primary,#8247C9);font-weight:500;text-transform:none;letter-spacing:0;margin:6px 22px 20px;}
.subhead{font-size:13px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--ink-soft);text-align:center;margin:40px 0 4px;}

.rules2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px;}
@media(max-width:820px){.rules2{grid-template-columns:1fr;}}
.rbox{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm);min-width:0;}
.grid2>*,.rules2>*{min-width:0;}
.rbox h3{font-family:var(--acme);letter-spacing:.05em;font-size:14px;text-transform:uppercase;margin:0 0 14px;}
.rbox ul{margin:0;padding:0;list-style:none;}
.rbox li{padding:8px 0 8px 30px;position:relative;border-top:1px solid var(--line);font-size:15px;}
.rbox li:first-child{border-top:none;}
.rbox li::before{position:absolute;left:0;top:8px;font-weight:700;}
.do li::before{content:"✓";color:var(--green);}
.dont li::before{content:"✕";color:#b23b57;}

.typeband{background:var(--plum);border-radius:var(--radius);padding:44px;color:#efe6fb;display:grid;grid-template-columns:1fr 1fr;gap:30px;}
@media(max-width:820px){.typeband{grid-template-columns:1fr;}}
.aa{display:block;}
.aa .big{font-family:var(--serif);font-size:clamp(30px,3.6vw,46px);line-height:1.05;color:#fff;margin-bottom:14px;}
.aa.serif .big{font-family:var(--serif);font-weight:800;}
.aa.acme .big{font-family:var(--acme);}
.aa .meta b{font-size:18px;color:#fff;}
.aa .meta .role{font-size:12px;color:#c9b8e4;text-transform:uppercase;letter-spacing:.08em;margin:2px 0 8px;}
.aa .meta .gl{font-size:13px;color:#d8cdea;line-height:1.7;}

.type2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;}
@media(max-width:820px){.type2{grid-template-columns:1fr;}}
.tcard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;}
.tcard .spec-body{font-family:var(--body);font-size:16px;}
.tcard .spec-script{font-family:var(--script);color:var(--purple);font-size:30px;line-height:1.3;}
.tcard b{font-size:15px;}
.tcard .role{color:var(--ink-soft);font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin:2px 0 10px;}

.scale{margin-top:34px;}
.scale-i{display:flex;align-items:baseline;gap:18px;border-top:1px solid var(--line);padding:13px 0;flex-wrap:wrap;}
.scale-i .lb{width:110px;font-size:12px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;font-weight:600;flex:none;}
.scale-i .dm{font-family:var(--serif);line-height:1;}
.scale-i .px{margin-left:auto;font-size:12px;color:var(--ink-soft);flex:none;}

.apps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:14px;}
@media(max-width:820px){.apps{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.apps{grid-template-columns:1fr;}}
.app{position:relative;border-radius:var(--radius);overflow:hidden;min-height:230px;display:grid;place-items:center;padding:26px;border:1px solid var(--line);box-shadow:var(--shadow-sm);}
.app .lbl{position:absolute;left:16px;bottom:14px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;}
.app .ico{position:absolute;right:14px;top:14px;width:30px;height:30px;opacity:.9;}
.app img.mk{max-height:120px;width:auto;}
.a-white{background:var(--soft-white);} .a-white .lbl{color:var(--plum);}
.a-plum{background:linear-gradient(150deg,var(--plum),#331a52);} .a-plum .lbl{color:#e7dcf5;}
.a-purple{background:linear-gradient(150deg,var(--purple),var(--purple-regal));} .a-purple .lbl{color:#f1e8fb;}
.a-green{background:linear-gradient(150deg,var(--green),#6f9040);} .a-green .lbl{color:#1f300c;}
.a-taupe{background:var(--taupe);} .a-taupe .lbl{color:var(--plum);}
.a-vivid{background:linear-gradient(150deg,var(--purple-vivid),var(--purple));} .a-vivid .lbl{color:#f1e8fb;}
.ic-line{fill:none;stroke:currentColor;stroke-width:5;stroke-linejoin:round;stroke-linecap:round;}

.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media(max-width:820px){.grid2{grid-template-columns:1fr;}}
.banned .pill{display:inline-block;background:#fbeef1;color:#a2354e;border:1px solid #f0d3da;border-radius:999px;padding:4px 12px;font-size:12px;margin:4px 4px 0 0;text-decoration:line-through;}
.scale-i2{display:flex;gap:12px;border-top:1px solid var(--line);padding:9px 0;font-size:14px;flex-wrap:wrap;}
.scale-i2:first-child{border-top:none;}
.scale-i2 .k{width:92px;color:var(--ink-soft);flex:none;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.05em;}
.scale-i2 span{min-width:0;overflow-wrap:anywhere;}
.tokens{background:var(--plum);color:#f3ecfb;border-radius:var(--radius);padding:28px;overflow-x:auto;}
.tokens pre{margin:0;font-family:Consolas,monospace;font-size:13px;line-height:1.85;white-space:pre;}
.tokens .c{color:#c7a6ee;} .tokens .v{color:#d7e9b4;}

footer{background:linear-gradient(160deg,rgba(44,21,71,.85),rgba(68,34,102,.82)),url('assets/watercolor_marbled_effect_blending_purple_and_g_.jpg');background-size:cover;background-position:center;color:#e7dcf5;text-align:center;padding:44px 26px;}
footer img{height:70px;margin:0 auto 10px;}
footer .fs{font-family:var(--script);color:#c7a6ee;font-size:22px;}
footer p{max-width:54ch;margin:8px auto 0;color:#cbbbe0;font-size:13px;}
footer .foot-nav{margin:16px 0 4px;display:flex;gap:18px;justify-content:center;flex-wrap:wrap;}
footer .foot-nav a{color:#d9c2f5;text-decoration:none;font-family:var(--body);font-size:13px;font-weight:600;}
footer .foot-nav a:hover{color:#fff;}

/* foundation + components + photography */
.fcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-sm);}
.fcard h3{font-family:var(--serif);font-size:22px;margin:0 0 10px;}
.fcard p{margin:0;color:var(--ink-soft);font-size:15px;}
.tag{display:inline-block;font-family:var(--acme);letter-spacing:.12em;text-transform:uppercase;font-size:11px;padding:5px 12px;border-radius:999px;margin-bottom:14px;}
.tag.consumer{background:var(--purple-soft);color:var(--plum);}
.tag.b2b{background:var(--green-soft);color:#4b6122;}
.pillar-line{font-family:var(--script);color:var(--purple);font-size:20px;margin-top:12px;}
.b2b-card .pillar-line{color:#5b7a2c;}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media(max-width:820px){.g3{grid-template-columns:1fr;}}

.btn{font-family:var(--body);font-weight:600;font-size:15px;border-radius:999px;padding:13px 26px;border:2px solid transparent;cursor:pointer;display:inline-block;text-decoration:none;}
.btn-primary{background:var(--purple);color:#fff;} .btn-primary:hover{background:#6f39b0;}
.btn-secondary{background:var(--green);color:#21300c;}
.btn-outline{background:transparent;color:var(--purple);border-color:var(--purple);}
.btn-ghost{background:#fff;color:var(--ink);border-color:var(--line);}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
.chiprow{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.chip{font-size:12px;padding:4px 12px;border-radius:999px;background:var(--purple-soft);color:var(--plum);font-weight:600;}
.chip.g{background:var(--green-soft);color:#4b6122;}
.stat{text-align:center;padding:26px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);}
.stat .num{font-family:var(--serif);font-size:44px;color:var(--purple);line-height:1;}
.stat .l{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin-top:8px;}

.photo-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:190px;gap:16px;}
@media(max-width:820px){.photo-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.photo-grid{grid-template-columns:1fr;}}
.photo-ph{position:relative;border-radius:var(--radius);overflow:hidden;border:2px dashed var(--purple);
  background:repeating-linear-gradient(45deg,rgba(130,71,201,.05) 0 14px,rgba(130,71,201,.10) 14px 28px),var(--purple-soft);
  display:grid;place-items:center;text-align:center;padding:18px;}
.photo-ph.tall{grid-row:span 2;}
.photo-ph.wide{grid-column:span 2;}
@media(max-width:520px){.photo-ph.tall{grid-row:span 1;}.photo-ph.wide{grid-column:span 1;}}
.photo-ph .ico{font-family:var(--serif);font-size:30px;color:var(--purple);line-height:1;}
.photo-ph b{display:block;margin-top:8px;font-size:15px;color:var(--plum);}
.photo-ph span{display:block;margin-top:4px;font-size:12px;color:var(--ink-soft);}
.photo-ph.dark{background:var(--plum);border-color:#6a4a92;}
.photo-ph.dark .ico,.photo-ph.dark b{color:#e7dcf5;}
.photo-ph.dark span{color:#b9a7d6;}
.photo-ph.filled{border:0;background:none;padding:0;}
.photo-ph.filled img{width:100%;height:100%;object-fit:cover;object-position:center 55%;display:block;}
/* fixed-ratio photo layouts */
.pgrid{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;align-items:start;}
@media(max-width:760px){.pgrid{grid-template-columns:1fr;}}
.pgrid .feature{aspect-ratio:4/3;}
.pgrid .col{display:grid;gap:16px;}
.pgrid .col .photo-ph{aspect-ratio:3/2;}
.pgrid6{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.pgrid6 .photo-ph{aspect-ratio:4/3;}
.pgrid6 .p-top{grid-column:span 2;}
.pgrid6 .p-bot{grid-column:span 1;}
@media(max-width:760px){.pgrid6{grid-template-columns:1fr 1fr;}.pgrid6 .p-top,.pgrid6 .p-bot{grid-column:auto;}}
@media(max-width:480px){.pgrid6{grid-template-columns:1fr;}}
/* circular face close-ups */
.faces{display:flex;gap:28px;justify-content:center;flex-wrap:wrap;margin-top:30px;}
.face{width:150px;height:150px;border-radius:50%;overflow:hidden;border:3px solid var(--purple);box-shadow:var(--shadow-sm);display:grid;place-items:center;text-align:center;background:repeating-linear-gradient(45deg,rgba(130,71,201,.05) 0 14px,rgba(130,71,201,.10) 14px 28px),var(--purple-soft);}
.face .ico{font-family:var(--serif);font-size:28px;color:var(--purple);line-height:1;}
.face.filled{background:none;}
.face.filled img{width:100%;height:100%;object-fit:cover;object-position:center 28%;display:block;}
/* founder images: in-place hover zoom + lift (not clickable) */
.photo-ph.filled,.face.filled{transition:box-shadow .3s ease;}
.photo-ph.filled img,.face.filled img{transition:transform .5s ease;}
.photo-ph.filled:hover,.face.filled:hover{box-shadow:0 18px 44px -20px rgba(68,34,102,.55);}
.photo-ph.filled:hover img,.face.filled:hover img{transform:scale(1.06);}

/* meaning behind the mark */
#meaning .eyebrow{justify-content:center;}
#meaning h2.t{text-align:center;}
#meaning .lead{text-align:center;margin-left:auto;margin-right:auto;}
.meaning-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-top:40px;}
.mcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 22px;box-shadow:var(--shadow-sm);text-align:center;}
.mcard .em{width:74px;height:74px;border-radius:50%;margin:0 auto 16px;display:grid;place-items:center;overflow:hidden;box-shadow:var(--shadow-sm);}
.mcard .em img{width:100%;height:100%;object-fit:contain;padding:8px;}
.mcard .em.txt{font-family:var(--serif);font-weight:800;color:#fff;font-size:22px;letter-spacing:.01em;}
.mcard h4{font-family:var(--serif);font-size:20px;margin:0 0 8px;}
.mcard p{margin:0;color:var(--ink-soft);font-size:14px;line-height:1.6;}

/* ===== Brand Character Sheet ===== */
.cs-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:34px;align-items:start;margin-top:30px;}
.cs-stage{background:linear-gradient(170deg,var(--purple-soft),var(--soft-white));border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-sm);}
.cs-stage img{margin:0 auto;border-radius:10px;}
.cs-stage .cap{margin:14px 2px 0;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-family:var(--acme);color:var(--purple);}
.cs-panels{display:grid;gap:18px;}
.cs-panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;box-shadow:var(--shadow-sm);}
.cs-panel h3{font-family:var(--acme);letter-spacing:.16em;text-transform:uppercase;font-size:12px;color:var(--purple);margin:0 0 14px;}
.cs-dl{display:grid;grid-template-columns:auto 1fr;gap:9px 16px;margin:0;font-size:14.5px;}
.cs-dl dt{font-weight:700;color:var(--plum);white-space:nowrap;}
.cs-dl dd{margin:0;color:var(--ink-soft);}
.cs-vibe{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:14.5px;}
.cs-vibe li{padding-left:20px;position:relative;color:var(--ink-soft);}
.cs-vibe li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:2px;background:var(--green);}
.cs-vibe li b{color:var(--plum);font-weight:700;}
.cs-badges{display:flex;flex-wrap:wrap;gap:8px;}
.cs-badges span{font-size:12px;font-weight:600;padding:7px 13px;border-radius:999px;background:var(--purple-soft);color:var(--purple-regal);border:1px solid rgba(130,71,201,.2);}
.cs-creed{font-family:var(--serif);font-size:clamp(19px,2.2vw,25px);line-height:1.34;font-weight:700;color:var(--plum);margin:0;}
.cs-creed em{font-style:normal;color:var(--purple);}

.cs-plate{margin-top:22px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);}
.cs-plate .ph{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 14px;padding:16px 22px;border-bottom:1px solid var(--line);background:var(--soft-white);}
.cs-plate .ph h3{margin:0;font-family:var(--acme);letter-spacing:.16em;text-transform:uppercase;font-size:12px;color:var(--purple);}
.cs-plate .ph p{margin:0;font-size:13.5px;color:var(--ink-soft);}
.cs-plate .pb{padding:14px;background:linear-gradient(180deg,var(--soft-white),var(--white));}
.cs-plate .pb img{width:100%;border-radius:10px;}
.cs-plate.sq .pb img{max-width:760px;margin:0 auto;}

.cs-masters{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px;}
.cs-panels3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px;}
.cs-ed{display:flex;align-items:center;gap:16px;margin:52px 0 4px;}
.cs-ed h3{margin:0;font-family:var(--serif);font-weight:800;font-size:clamp(21px,2.4vw,28px);color:var(--plum);white-space:nowrap;}
.cs-ed .ln{flex:1;height:1px;background:var(--line);}
.cs-ed .pill{font-family:var(--acme);letter-spacing:.14em;text-transform:uppercase;font-size:10.5px;padding:5px 11px;border-radius:999px;background:var(--purple-soft);color:var(--purple-regal);white-space:nowrap;}
.cs-edlead{margin:0 0 6px;font-size:15px;color:var(--ink-soft);max-width:70ch;}
@media(max-width:900px){ .cs-masters{grid-template-columns:1fr;} .cs-panels3{grid-template-columns:1fr;} }

.cs-faces{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.cs-face{margin:0;background:var(--white);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;}
.cs-face img{width:100%;border-radius:0;background:var(--soft-white);}
.cs-face b{display:block;font-family:var(--acme);letter-spacing:.14em;text-transform:uppercase;font-size:11.5px;color:var(--purple);padding:12px 13px 5px;}
.cs-face span{display:block;font-size:12.5px;line-height:1.45;color:var(--ink-soft);padding:0 13px 13px;}
.cs-faces.five{grid-template-columns:repeat(5,1fr);}
@media(max-width:1100px){ .cs-faces.five{grid-template-columns:repeat(3,1fr);} }
@media(max-width:820px){ .cs-faces{grid-template-columns:repeat(2,1fr);} .cs-faces.five{grid-template-columns:repeat(2,1fr);} }

.cs-sw{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:12px;margin-top:22px;}
.cs-sw div{border-radius:12px;border:1px solid var(--line);overflow:hidden;background:var(--white);}
.cs-sw .chip{height:64px;}
.cs-sw .lb{padding:9px 11px;font-size:11.5px;line-height:1.35;}
.cs-sw .lb b{display:block;color:var(--plum);font-size:12px;}
.cs-sw .lb code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ink-soft);font-size:11px;}

.cs-note{margin-top:22px;border-left:4px solid var(--gold);background:var(--white);border-radius:0 var(--radius) var(--radius) 0;padding:18px 22px;box-shadow:var(--shadow-sm);}
.cs-note h3{margin:0 0 7px;font-family:var(--serif);font-size:19px;color:var(--plum);}
.cs-note p{margin:0;font-size:14.5px;color:var(--ink-soft);}
@media(max-width:900px){ .cs-hero{grid-template-columns:1fr;} }
