/* Home shell - wide threshold, one row of rooms */
.env.md-env-home,
.env:has(.glasspane.md-room-home){
  max-width:min(96vw,1680px);
  zoom:1;
}
/* Every open room uses the same shell scale as home — only once the room is visible */
.env:has(.glasspane:not(.md-room-home) > #room.show){zoom:1;}
@media(max-width:760px){
  .env.md-env-home,
  .env:has(.glasspane.md-room-home),
  .env:has(.glasspane:not(.md-room-home) > #room.show){max-width:100%;zoom:1;}
}
.glasspane::before{content:'';position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;opacity:0;background:transparent;transition:opacity 1.1s cubic-bezier(.22,1,.36,1);}
.glasspane::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;background:linear-gradient(180deg,rgba(255,255,255,.24) 0%,transparent 36%,transparent 68%,rgba(0,0,0,.03) 100%);transition:opacity 1.1s cubic-bezier(.22,1,.36,1);}
body[data-env-material="glass"] .glasspane::after{opacity:1;}
/* Home = the threshold: wide, welcoming light from above, in the brand's colour */
.glasspane.md-room-home::before{opacity:.30;background:radial-gradient(140% 110% at 50% -18%,var(--halo-a),transparent 72%);}
body[data-env-material="glass"] .glasspane{
  background:linear-gradient(165deg,var(--ice-1),rgba(255,255,255,.26) 44%,var(--ice-2));
  box-shadow:0 0 0 1px rgba(255,255,255,.46),0 22px 52px rgba(0,0,0,.07),var(--glass-edge);
}
body[data-env-material="glass"] .room-card{
  background:rgba(255,255,255,.54);
  backdrop-filter:blur(var(--glass-card-blur,22px)) saturate(148%);
  -webkit-backdrop-filter:blur(var(--glass-card-blur,22px)) saturate(148%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68),0 0 0 1px rgba(255,255,255,.36),0 6px 20px rgba(0,0,0,.05);
}
/* Identity = the portrait room: light converges to centre where the mark lives; edges recede so it's the subject */
.glasspane.md-room-identity::before{opacity:.46;background:radial-gradient(140% 118% at 50% 46%,var(--halo-b),transparent 80%);}
/* ══ Identity gallery - a quiet museum for the brand's visual foundation ══ */
#roomBody .id-gallery{max-width:920px;margin:0 auto;padding:clamp(2px,1.2vh,14px) 0 clamp(20px,4.5vh,48px);}
.id-gallery .id-hero{gap:clamp(18px,4vh,40px);padding:clamp(18px,5vh,64px) 0 clamp(4px,1.2vh,14px);}
.id-gallery .id-hero .id-primary{width:min(68%,380px);min-height:clamp(100px,14vh,170px);}
.id-gallery.reveal .id-hero-caption{opacity:0;animation:galFade 1.4s ease 1.4s forwards;}
.id-gallery .id-hero-role{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-faint);font-weight:600;margin-bottom:10px;}
.id-gallery .id-hero-note{font-size:12.5px;color:var(--ink-soft);font-weight:300;line-height:1.65;max-width:330px;margin:0 auto;}
.id-gallery.reveal .id-hero{opacity:0;animation:galRise 1.5s cubic-bezier(.22,1,.36,1) .25s forwards;}
.id-gallery.reveal .id-section{opacity:0;animation:galRise 1.2s cubic-bezier(.22,1,.36,1) forwards;}
.id-gallery.reveal .s-support{animation-delay:2.2s;}
.id-gallery.reveal .s-notes{animation-delay:2.5s;}
.id-gallery .id-eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);font-weight:600;margin:clamp(22px,4.5vh,48px) 0 clamp(12px,1.8vh,16px);text-align:center;}
.id-gallery .id-palette-grid{display:flex;flex-wrap:wrap;gap:clamp(10px,.9vw,14px);justify-content:flex-end;align-items:flex-start;margin:0;}
.id-gallery .id-palette-col{flex:0 0 auto;width:clamp(72px,5.8vw,92px);min-width:0;}
.id-gallery .id-swatch-block{width:100%;aspect-ratio:1/1;border-radius:10px;padding:0;box-shadow:inset 0 0 0 1px rgba(20,40,28,.10),0 3px 12px rgba(20,40,28,.10);}
.id-gallery .id-swatch-block.swatch-dark{box-shadow:inset 0 0 0 1px rgba(255,255,255,.24),0 3px 12px rgba(0,0,0,.28);}
.id-gallery .id-swatch-block span,.id-gallery .id-swatch-block .hex{display:none;}
.id-gallery .id-palette-spec{margin-top:7px;display:flex;flex-direction:column;gap:2px;text-align:left;}
.id-gallery .id-palette-name{font-weight:600;letter-spacing:.01em;font-size:10.5px;line-height:1.2;color:var(--ink);}
.id-gallery .id-palette-fmt{font-weight:400;font-size:8px;letter-spacing:.03em;color:var(--ink-faint);font-variant-numeric:tabular-nums;line-height:1.35;text-transform:uppercase;}
.id-gallery .id-palette-pairings{margin-top:clamp(12px,1.6vh,16px);padding-top:clamp(10px,1.2vh,14px);border-top:1px solid var(--sage-line);text-align:left;}
.id-gallery .id-palette-pairings-label{font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--ink-faint);margin-bottom:6px;}
.id-gallery .id-palette-pairings-list{margin:0;padding:0 0 0 1.1em;font-size:10.5px;line-height:1.5;color:var(--ink-soft);}
.id-gallery .id-palette-pairings-list li{margin:0 0 4px;}
.id-gallery .id-palette-label{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);font-weight:600;margin-bottom:clamp(8px,1vh,12px);}
.id-gallery .id-swatches{display:flex;flex-wrap:wrap;gap:clamp(6px,.7vw,9px);justify-content:flex-start;align-items:flex-start;margin:0;}
/* ── Identity: two-column layout, contained so a near-empty brand doesn't sprawl ── */
.md-room-identity #roomBody .id-gallery{
  max-width:980px;margin:0 auto;padding:clamp(4px,1.1vh,14px) 0;
  display:grid;grid-template-columns:1fr 1fr;              /* two EQUAL columns, block-centered → equal borders both sides */
  grid-template-areas:"hero hero" "support notes";
  column-gap:clamp(20px,2.2vw,40px);row-gap:clamp(8px,1.6vh,18px);
}
.md-room-identity #roomBody .id-hero{grid-area:hero;padding:clamp(6px,1.6vh,20px) 0 clamp(2px,.8vh,8px);}
.md-room-identity #roomBody .s-support{grid-area:support;}
.md-room-identity #roomBody .s-notes{grid-area:notes;}
.md-room-identity #roomBody .id-notes-grid{max-width:440px;margin:0 auto;}
.md-room-identity #roomBody .id-notes-palette{max-width:440px;margin:clamp(10px,1.6vh,16px) auto 0;padding-top:clamp(10px,1.4vh,14px);border-top:none;}
.md-room-identity #roomBody .id-notes-grid:has(#idIndustryRow:not([style*="display:none"])) + .id-notes-palette{border-top:1px solid var(--sage-line);}
.md-room-identity #roomBody .id-notes-palette .id-palette-grid{max-width:none;justify-content:flex-end;gap:clamp(8px,.65vw,12px);}
/* Supporting Identity marks: always a 2-column grid (2×2 for four marks) - never collapse to a single vertical column */
.md-room-identity #roomBody .id-marks .id-markrow{grid-template-columns:repeat(2,minmax(0,1fr))!important;justify-content:stretch;gap:clamp(12px,1.6vw,20px)!important;}
/* Assets: wide shelves - up to 5 clean columns on large screens */
.env.md-env-assets #assetRoot .asset-grid,
.md-room-assets #assetRoot .asset-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;}
@media(max-width:1500px){
  .env.md-env-assets #assetRoot .asset-grid,
  .md-room-assets #assetRoot .asset-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media(max-width:1100px){
  .env.md-env-assets #assetRoot .asset-grid,
  .md-room-assets #assetRoot .asset-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .env.md-env-assets #assetRoot .asset-grid,
  .md-room-assets #assetRoot .asset-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
/* Assets: identity marks as role columns (click a column to pull up its files) */
#assetRoot .id-marks-shelf .role-cols,
#assetRoot .cat-fam-shelf .role-cols{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:clamp(8px,.85vw,12px);
  align-items:flex-start;
  transition:opacity .28s ease;
  width:100%;
}
@media(max-width:1500px){
  #assetRoot .id-marks-shelf .role-cols,
  #assetRoot .cat-fam-shelf .role-cols{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media(max-width:1100px){
  #assetRoot .id-marks-shelf .role-cols,
  #assetRoot .cat-fam-shelf .role-cols{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px){
  #assetRoot .id-marks-shelf .role-cols,
  #assetRoot .cat-fam-shelf .role-cols{grid-template-columns:repeat(2,minmax(0,1fr));}
}
#assetRoot .id-marks-shelf .role-cols.is-updating,
#assetRoot .cat-fam-shelf .role-cols.is-updating{opacity:.58;pointer-events:none;}
#assetRoot .role-col{display:flex;flex-direction:column;gap:6px;min-width:0;max-width:none;width:100%;}
#assetRoot .role-col-head{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--ink-faint);display:flex;align-items:flex-start;gap:6px;min-height:2.2em;line-height:1.25;}
#assetRoot .id-marks-shelf .role-col-head .shelf-count{display:none;}
#assetRoot .id-marks-shelf .shelf-eyebrow .shelf-count{display:none;}
#assetRoot .assets-read,#assetRoot .assets-concierge,#assetRoot .assets-concierge-stack,#assetRoot .gread,#assetRoot .fmt-guide{display:none!important;}
#assetRoot .role-col .fam-rep{max-width:none;width:100%;}
#assetRoot .role-col .fam-rep>.asset-card{max-width:none;width:100%;}
#assetRoot .role-col .fam-rep .asset-thumb{aspect-ratio:1/1;}
#assetRoot .role-col .fam-rep .asset-thumb img{padding:0!important;}
#assetRoot .id-marks-shelf .asset-thumb img{padding:0!important;}
#assetRoot .role-col .fam-rep .asset-name{font-size:10px;}
#assetRoot .role-col .fam-rep .asset-varchip{font-size:9px;}
#assetRoot .role-empty{border:1px dashed var(--sage-line);border-radius:12px;min-height:108px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;font-size:10px;letter-spacing:.02em;color:var(--ink-faint);line-height:1.35;padding:12px;}
#assetRoot .role-empty span{opacity:.6;font-style:italic;}
#assetRoot .role-empty-compact .role-empty-list{font-style:normal;opacity:1;font-weight:500;color:var(--ink-soft);}
#assetRoot .role-col-gaps{grid-column:1/-1;max-width:420px;}
#assetRoot .role-col.has-files{cursor:pointer;}
#assetRoot .role-open-hint{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-weight:600;text-align:center;padding:2px;}
#assetRoot .role-col.has-files:hover .role-open-hint{color:var(--ink-soft);}
/* Assets: inline horizontal drawer - a role's files open as a clean strip below the columns */
#assetRoot .role-col.is-open{position:relative;}
#assetRoot .role-col.is-open .role-col-head{color:var(--ink-soft);}
#assetRoot .role-drawer{grid-column:1/-1;width:100%;margin-top:clamp(4px,0.8vh,10px);max-height:0;opacity:0;overflow:hidden;transition:max-height .4s cubic-bezier(.22,1,.36,1),opacity .28s ease,margin-top .3s ease;}
#assetRoot .role-drawer[hidden]{display:none;}
#assetRoot .role-drawer.open{max-height:1600px;opacity:1;overflow:visible;position:relative;padding:clamp(10px,1.2vw,14px) clamp(10px,1.2vw,14px) clamp(12px,1.4vw,16px);border-radius:14px;background:linear-gradient(160deg,rgba(255,255,255,.72),rgba(255,255,255,.52));box-shadow:inset 0 0 0 1px rgba(44,90,60,.14),var(--shadow);}
#assetRoot .role-drawer-head{display:flex;align-items:center;justify-content:flex-start;padding:0 36px 10px 2px;margin-bottom:8px;border-bottom:1px solid rgba(44,90,60,.1);}
#assetRoot .role-drawer-title{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--ink-soft);}
#assetRoot .role-drawer-close{position:absolute;top:8px;right:8px;z-index:9;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:16px;line-height:1;background:rgba(255,255,255,.92);border:none;color:var(--ink-soft);cursor:pointer;padding:0;box-shadow:var(--shadow);transition:color .2s,transform .15s;}
#assetRoot .role-drawer-close:hover{color:#b3261e;transform:scale(1.04);}
#assetRoot .role-drawer-files{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(8px,.75vw,11px);overflow:visible;padding:clamp(2px,.4vw,6px) clamp(2px,.35vw,5px) clamp(4px,.5vh,8px);}
@media(max-width:1500px){#assetRoot .role-drawer-files{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(max-width:1100px){#assetRoot .role-drawer-files{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:760px){#assetRoot .role-drawer-files{grid-template-columns:repeat(2,minmax(0,1fr));}}
#assetRoot .role-drawer-files>.asset-card{max-width:none;transform:none!important;}
#assetRoot .role-drawer-files>.asset-card:hover{transform:none!important;}
#assetRoot .role-drawer-files .asset-card:hover .asset-thumb{transform:translateY(-4px);box-shadow:var(--shadow-hover)!important;}
#assetRoot .role-drawer-files .asset-name{font-size:9.5px;}
#assetRoot .role-drawer-files .asset-varchip{font-size:8.5px;}
body.deep-immerse #assetRoot .role-drawer.open{background:linear-gradient(160deg,rgba(20,30,23,.88),rgba(12,20,15,.72));box-shadow:inset 0 0 0 1px rgba(255,255,255,.1),0 10px 28px rgba(0,0,0,.28);}
body.deep-immerse #assetRoot .role-drawer-head{border-bottom-color:rgba(255,255,255,.1);}
body.deep-immerse #assetRoot .role-drawer-close{background:rgba(16,20,26,.74);color:rgba(246,248,244,.86);}
body.deep-immerse #assetRoot .role-drawer-title{color:rgba(246,248,244,.72);}
/* Assets: colour pairings drawer inside Color / Swatches */
#assetRoot .swatch-shelf .pairing-panel{margin-top:clamp(14px,2vh,20px);border-top:1px solid var(--sage-line);padding-top:clamp(12px,1.6vh,16px);}
#assetRoot .pairing-panel-toggle{display:flex;align-items:center;gap:10px;width:100%;font-family:inherit;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--ink-soft);background:linear-gradient(160deg,rgba(255,255,255,.42),rgba(255,255,255,.24));border:1px solid var(--sage-line);border-radius:12px;padding:11px 14px;cursor:pointer;transition:color .2s,box-shadow .2s,background .2s;}
#assetRoot .pairing-panel-toggle:hover{color:var(--ink);box-shadow:var(--shadow);}
#assetRoot .pairing-panel-meta{margin-left:auto;font-size:9px;letter-spacing:.06em;text-transform:none;font-weight:500;color:var(--ink-faint);}
#assetRoot .pairing-panel-chevron{width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .25s ease;margin-left:4px;flex:none;}
#assetRoot .pairing-panel.is-open .pairing-panel-chevron{transform:rotate(-135deg) translateY(2px);}
#assetRoot .pairing-panel-body{margin-top:clamp(10px,1.4vh,14px);}
#assetRoot .pairing-cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(8px,.85vw,12px);align-items:flex-start;width:100%;}
@media(max-width:1500px){#assetRoot .pairing-cols{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(max-width:1100px){#assetRoot .pairing-cols{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:760px){#assetRoot .pairing-cols{grid-template-columns:repeat(2,minmax(0,1fr));}}
#assetRoot .pairing-panel .role-drawer{grid-column:1/-1;}
/* Assets: compact collapsible shelves — Color / Swatches, Photography, Reference Boards */
#assetRoot .compact-shelf .shelf-toggle{
  width:100%;font-family:inherit;font-size:9px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--ink-faint);font-weight:600;background:linear-gradient(160deg,rgba(255,255,255,.36),rgba(255,255,255,.2));
  border:1px solid var(--sage-line);border-radius:12px;padding:9px 12px;margin:clamp(14px,2vh,22px) 2px 0;
  cursor:pointer;display:flex;align-items:center;gap:8px;transition:color .2s,box-shadow .2s,background .2s;
}
#assetRoot .compact-shelf .shelf-toggle::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--sage);opacity:.7;flex:none;}
#assetRoot .compact-shelf .shelf-toggle:hover{color:var(--ink-soft);box-shadow:var(--shadow);}
#assetRoot .compact-shelf .shelf-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .25s ease;margin-left:auto;flex:none;}
#assetRoot .compact-shelf.is-open .shelf-chevron{transform:rotate(45deg) translateY(-2px);}
#assetRoot .compact-shelf .shelf-body{max-height:4800px;opacity:1;overflow:hidden;transition:max-height .45s cubic-bezier(.22,1,.36,1),opacity .28s ease,margin .3s ease;}
#assetRoot .compact-shelf:not(.is-open) .shelf-body{max-height:0;opacity:0;margin-top:0;pointer-events:none;}
#assetRoot .compact-shelf .shelf-line{font-size:10px;line-height:1.4;margin-bottom:clamp(5px,.7vh,8px);}
#assetRoot .compact-shelf .asset-grid{grid-template-columns:repeat(auto-fill,minmax(108px,1fr))!important;gap:clamp(5px,.65vw,8px)!important;}
#assetRoot .compact-shelf .role-cols{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:clamp(6px,.65vw,9px)!important;}
@media(max-width:1500px){#assetRoot .compact-shelf .role-cols{grid-template-columns:repeat(5,minmax(0,1fr))!important;}}
@media(max-width:1100px){#assetRoot .compact-shelf .role-cols{grid-template-columns:repeat(4,minmax(0,1fr))!important;}}
@media(max-width:760px){#assetRoot .compact-shelf .role-cols{grid-template-columns:repeat(3,minmax(0,1fr))!important;}}
#assetRoot .compact-shelf .role-col-head{font-size:8.5px;min-height:1.75em;letter-spacing:.12em;}
#assetRoot .compact-shelf .role-col .fam-rep .asset-name{font-size:9px;}
#assetRoot .compact-shelf .role-col .fam-rep .asset-varchip{font-size:8px;}
#assetRoot .compact-shelf .role-open-hint{font-size:8px;padding:1px;}
#assetRoot .compact-shelf .asset-name{font-size:9.5px;}
#assetRoot .compact-shelf .asset-varchip{font-size:8.5px;}
#assetRoot .compact-shelf .role-drawer-files{grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(6px,.65vw,9px);}
@media(max-width:1500px){#assetRoot .compact-shelf .role-drawer-files{grid-template-columns:repeat(5,minmax(0,1fr));}}
@media(max-width:1100px){#assetRoot .compact-shelf .role-drawer-files{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(max-width:760px){#assetRoot .compact-shelf .role-drawer-files{grid-template-columns:repeat(3,minmax(0,1fr));}}
#assetRoot .compact-shelf .role-drawer-files .asset-name{font-size:9px;}
#assetRoot .compact-shelf .pairing-panel{margin-top:clamp(10px,1.4vh,14px);}
#assetRoot .compact-shelf .pairing-panel-toggle{padding:9px 12px;font-size:9px;}
.md-room-assets #assetRoot .compact-shelf .shelf-toggle{margin-top:clamp(10px,1.4vh,16px);}
.md-room-assets #assetRoot .compact-shelf .asset-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))!important;gap:clamp(5px,.6vw,7px)!important;}
.editing .id-palette-name{cursor:text;}
.gd-pairings{margin-top:14px;padding-top:12px;border-top:1px solid rgba(44,90,60,.12);}
.gd-pairings-label{font-size:9px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--ink-faint);margin-bottom:8px;}
.gd-pairings-list{margin:0;padding:0 0 0 1.1em;font-size:12px;line-height:1.55;color:var(--ink-soft);}
.gd-pairings-list li{margin:0 0 4px;}
/* Assets: file-type filter - expand a role column into a flat grid of matching files */
#assetRoot .role-col.filtered .role-open-hint{display:none;}
#assetRoot .role-col.filtered .role-files{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:clamp(8px,.7vw,11px);padding:4px 0 8px;max-height:none;opacity:1;overflow:visible;}
#assetRoot .role-col.filtered .role-files[hidden]{display:grid!important;}
#assetRoot .role-col.filtered:has(.role-files) .fam-rep{display:none;}
/* Assets + Identity: wide layout, scaled down so shelves stay digestible at 100% zoom */
.env.md-env-identity,
.env:has(.glasspane.md-room-identity){max-width:min(96vw,1680px);zoom:1;}
.env.md-env-assets,
.env:has(.glasspane.md-room-assets){
  max-width:min(96vw,1680px);
  zoom:1;
  width:100%;
  padding-left:clamp(6px,.8vw,14px);
  padding-right:clamp(6px,.8vw,14px);
}
.glasspane.md-room-assets{max-width:none;width:100%;padding:clamp(10px,1.4vw,22px);}
.md-room-assets #assetRoot,
.env.md-env-assets #assetRoot{max-width:1240px;width:100%;margin:0 auto;}
.md-room-assets #assetRoot .shelf-eyebrow{margin-top:clamp(10px,1.5vh,16px);margin-bottom:4px;}
.md-room-assets #assetRoot .asset-shelf:first-of-type .shelf-eyebrow,
.md-room-assets #assetRoot .id-marks-shelf .shelf-eyebrow{margin-top:clamp(0px,.2vh,4px);}
.md-room-assets #assetRoot .shelf-line{margin-bottom:clamp(6px,.85vh,9px);font-size:10.5px;line-height:1.45;}
.md-room-assets #assetRoot .asset-filters{margin-bottom:clamp(8px,1vh,11px);}
.md-room-assets #assetRoot .assets-concierge,
.md-room-assets #assetRoot .assets-concierge-stack{margin-bottom:clamp(8px,1.1vh,12px);}
.md-room-assets #assetRoot .assets-concierge{padding:clamp(10px,1.2vw,14px) clamp(12px,1.3vw,16px);}
.md-room-assets #assetRoot .ac-q{font-size:clamp(13px,1.2vw,15px);}
.md-room-assets #assetRoot .fmt-guide{margin-top:clamp(8px,1.4vh,14px);}
.md-room-assets #assetRoot .asset-grid{gap:clamp(7px,.85vw,10px)!important;}
@media (max-width:900px){
  .md-room-identity #roomBody .id-gallery{max-width:100%;}
  .env.md-env-identity,
  .env:has(.glasspane.md-room-identity),
  .env.md-env-assets,
  .env:has(.glasspane.md-room-assets),
  .env:has(.glasspane:not(.md-room-home) > #room.show){max-width:100%;zoom:1;}
}
.id-gallery .id-notes-grid{max-width:440px;margin:0 auto;}
.id-gallery .id-note-row{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:13px 2px;border-bottom:1px solid var(--sage-line);}
.id-gallery .id-note-row:last-child{border-bottom:none;}
.id-gallery .id-note-k{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);font-weight:600;flex:none;}
.id-gallery .id-note-v{font-size:14px;color:var(--ink);font-weight:300;text-align:right;outline:none;}
.id-gallery .id-note-v:focus{color:var(--sage);}
.id-gallery .id-prepared{text-align:center;margin-top:clamp(36px,7vh,72px);font-size:11px;color:var(--ink-faint);font-weight:300;letter-spacing:.02em;opacity:0;animation:galFade 1.4s ease 3.2s forwards;}
.id-gallery .id-prepared b{font-weight:400;color:var(--ink-soft);}
/* waiting pedestal - a prepared, empty place (never a placeholder) */
.id-marks .markcell.pedestal .markframe.waiting{background:transparent!important;box-shadow:inset 0 0 0 1px var(--sage-line)!important;display:flex!important;align-items:center;justify-content:center;}
.id-marks .pedestal-wait{font-size:11px;font-style:italic;font-weight:300;color:var(--ink-faint);text-align:center;padding:0 20px;line-height:1.45;}
.id-marks .markcell.pedestal .markmeta-label{color:var(--ink-faint);}
.id-marks .markcell.pedestal .markmeta-note{opacity:.72;}
.id-marks .markcell.pedestal .markframe.waiting{position:relative;}
.pedestal-dismiss{position:absolute;top:8px;right:8px;width:22px;height:22px;border:none;border-radius:50%;background:rgba(20,30,24,.12);color:var(--ink-faint);font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s,background .2s,color .2s;z-index:2;}
.id-marks .markcell.pedestal:hover .pedestal-dismiss{opacity:1;}
.pedestal-dismiss:hover{background:rgba(20,30,24,.22);color:var(--ink);}
@keyframes galRise{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:none;}}
@keyframes galFade{from{opacity:0;}to{opacity:1;}}
@media(prefers-reduced-motion:reduce){.id-gallery .id-hero,.id-gallery .id-hero-caption,.id-gallery .id-section,.id-gallery .id-prepared{animation:none!important;opacity:1!important;transform:none!important;}}
#mdWelcome{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;pointer-events:none;background:#0b1116;opacity:0;transition:opacity .9s ease;overflow:hidden;}
#mdWelcome.on{opacity:1;}
#mdWelcome .md-env{position:absolute;inset:-12%;opacity:0;transition:opacity 2.4s ease,background 1.6s ease;filter:blur(10px) saturate(1.06);transform:scale(1.04);}
#mdWelcome.s-envload .md-env{opacity:.5;}
#mdWelcome.s-env .md-env{opacity:1;}
#mdWelcome .md-vig{position:absolute;inset:0;background:radial-gradient(120% 92% at 50% 44%,transparent 38%,rgba(6,10,14,.58) 100%);}
#mdWelcome .md-greet{position:absolute;font-family:var(--display);font-weight:300;font-size:clamp(30px,4.6vw,52px);letter-spacing:-.02em;color:#f5f1e8;opacity:0;transform:translateY(8px);transition:opacity .9s ease,transform .9s ease;text-shadow:0 2px 22px rgba(0,0,0,.42);}
#mdWelcome.s-greet .md-greet{opacity:1;transform:none;}
#mdWelcome .md-greet .soft{color:rgba(245,241,232,.45);}
#mdWelcome .md-stage{position:relative;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:24px;}
#mdWelcome .md-logo{position:relative;opacity:0;transform:scale(.92) translateY(8px);transition:opacity 1.05s ease,transform 1.25s cubic-bezier(.2,.7,.2,1);}
#mdWelcome.s-logo .md-logo{opacity:1;transform:none;}
#mdWelcome .md-logo::after{content:"";position:absolute;inset:-45% -45%;background:radial-gradient(closest-side,rgba(255,255,255,.15),transparent 70%);z-index:-1;}
#mdWelcome .md-logo img{height:clamp(96px,16vh,168px);max-width:min(60vw,360px);object-fit:contain;filter:drop-shadow(0 18px 44px rgba(0,0,0,.5));}
#mdWelcome .md-name{font-family:var(--display);font-weight:300;font-size:clamp(30px,5vw,56px);letter-spacing:-.02em;color:#f5f1e8;opacity:0;transform:translateY(12px);transition:opacity .95s ease,transform .95s ease;text-shadow:0 2px 22px rgba(0,0,0,.45);}
#mdWelcome.s-name .md-name{opacity:1;transform:none;}
#mdWelcome .md-tag{font-weight:300;font-size:clamp(14px,1.8vw,18px);color:rgba(245,241,232,.7);max-width:min(80vw,560px);opacity:0;transform:translateY(8px);transition:opacity .95s ease,transform .95s ease;text-shadow:0 1px 16px rgba(0,0,0,.4);}
#mdWelcome.s-tag .md-tag{opacity:1;transform:none;}
#mdWelcome .md-pal{display:flex;gap:10px;margin-top:8px;}
#mdWelcome .md-pal i{width:clamp(26px,3.4vw,40px);height:clamp(26px,3.4vw,40px);border-radius:999px;box-shadow:0 6px 18px rgba(0,0,0,.38),inset 0 0 0 1px rgba(255,255,255,.16);opacity:0;transform:translateY(12px) scale(.6);transition:opacity .6s ease,transform .75s cubic-bezier(.2,.85,.2,1);}
#mdWelcome.s-pal .md-pal i{opacity:1;transform:none;}
/* the live walk-through - narrates the real intake while the env blooms, before "welcome home" lands */
#mdWelcome .md-narrwrap{position:absolute;left:0;right:0;top:calc(50% + 8px);display:flex;flex-direction:column;align-items:center;gap:11px;opacity:0;transform:translateY(10px);transition:opacity 1s ease,transform 1s cubic-bezier(.22,1,.36,1);padding:0 28px;text-align:center;max-width:min(92vw,34rem);margin:0 auto;}
#mdWelcome.s-narr .md-narrwrap{opacity:1;transform:none;}
#mdWelcome .md-narrwrap.out{opacity:0;transform:translateY(-10px);pointer-events:none;}
#mdWelcome .md-narreb{font-size:10px;letter-spacing:.28em;text-transform:uppercase;font-weight:500;color:rgba(245,241,232,.46);transition:opacity .6s ease;}
#mdWelcome .md-narr{font-family:var(--display);font-weight:300;font-size:clamp(18px,2.4vw,25px);letter-spacing:-.01em;line-height:1.35;color:#f5f1e8;min-height:2.7em;text-shadow:0 2px 20px rgba(0,0,0,.42);transition:opacity .62s ease,transform .62s cubic-bezier(.22,1,.36,1);}
#mdWelcome .md-narr.swap{opacity:0;transform:translateY(8px);}
#mdWelcome.s-narr .md-narreb{animation:mdBreathe 3.2s ease-in-out infinite;}
@keyframes mdBreathe{0%,100%{opacity:.4;}50%{opacity:.85;}}
/* first arrival: the threshold - the door is all you see; rooms move in afterwards */
#home.home-empty .rooms,#home.home-empty .studio-links,#home.home-empty .home-prepared{display:none;}
#home.home-empty .home-head{min-height:min(74vh,680px);display:flex;flex-direction:column;justify-content:center;padding:clamp(1.5rem,4vh,3rem) clamp(1rem,3vw,2rem);}
#home.home-empty .welcome-sub{color:rgba(13,31,19,.72);}
#home.home-intake:not(.home-empty) .home-head{min-height:min(58vh,560px);transition:min-height .85s cubic-bezier(.22,1,.36,1);}
#home.home-intake .home-logo{opacity:0;transform:translateY(8px) scale(.96);}
#home.home-intake .home-logo.home-logo--live{opacity:1;transform:none;transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);}
#home.home-intake .welcome,#home.home-intake .welcome-sub,#home.home-intake .kicker{transition:opacity .45s ease,transform .45s cubic-bezier(.22,1,.36,1);}
#home.home-intake .welcome.swap,#home.home-intake .welcome-sub.swap,#home.home-intake .kicker.swap{opacity:0;transform:translateY(4px);}
@media (prefers-reduced-motion:reduce){#home.home-intake .home-logo,#home.home-intake .welcome,#home.home-intake .welcome-sub,#home.home-intake .kicker{transition:none;opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){#mdWelcome{display:none;}}
.fontup{margin-top:24px;border-top:1px solid var(--ink-faint);padding-top:18px;}
.fontup-head{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:12px;}
.fontup-add{cursor:pointer;font-size:12px;letter-spacing:0;text-transform:none;color:var(--ink-soft);border:1px dashed var(--ink-faint);border-radius:999px;padding:5px 13px;transition:color .2s,border-color .2s;}
.fontup-add:hover{color:var(--ink);border-color:var(--ink-soft);}
.fontrow{display:flex;flex-direction:column;gap:9px;padding:15px 0;border-bottom:1px solid var(--ink-faint);}
.fontrow:last-child{border-bottom:0;}
.fontprev{font-size:clamp(21px,3vw,31px);line-height:1.18;color:var(--ink);}
.fontmeta{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;}
.fontname{font-size:12.5px;color:var(--ink-soft);letter-spacing:.01em;}
.fontrole{font-size:13px;padding:5px 11px;border-radius:9px;border:1px solid var(--ink-faint);background:transparent;color:var(--ink);cursor:pointer;}
.fontup-empty{font-size:13px;color:var(--ink-soft);border:1px dashed var(--ink-faint);border-radius:13px;padding:20px;text-align:center;}
.gread{margin-top:22px;border-top:1px solid var(--ink-faint);padding-top:18px;}
.gread-head{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:14px;display:flex;align-items:center;gap:10px;}
.gread-busy{font-size:11px;letter-spacing:.04em;text-transform:none;color:var(--ink-faint);}
.gread-note{font-size:11px;letter-spacing:.04em;text-transform:none;color:var(--ink-faint);}
.gread-sec{margin-bottom:16px;}
.gread-lbl{font-size:12px;color:var(--ink-soft);margin-bottom:8px;}
.gread-cols,.gread-chips{display:flex;flex-wrap:wrap;gap:8px;}
.gread-col{display:flex;align-items:center;gap:7px;padding:5px 11px 5px 6px;border:1px solid var(--ink-faint);border-radius:999px;background:transparent;color:var(--ink);font-size:12.5px;cursor:pointer;transition:border-color .2s;}
.gread-col:hover{border-color:var(--ink-soft);}
.gread-col i{width:16px;height:16px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);}
.gread-chip{font-size:12.5px;color:var(--ink);border:1px solid var(--ink-faint);border-radius:8px;padding:4px 10px;}
.gread-rules{margin:0;padding-left:18px;color:var(--ink-soft);font-size:13px;line-height:1.5;}
.gread-rules li{margin-bottom:5px;}
.movein{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:16px;}
.movein-btn{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:var(--sage);background:rgba(255,255,255,.72);box-shadow:var(--shadow),0 0 48px rgba(132,196,155,.14);padding:12px 24px;border-radius:99px;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease;}
.movein-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:var(--shadow-hover),0 0 64px rgba(132,196,155,.22);}
.movein-btn svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.movein-status{font-size:12px;color:var(--ink-faint);min-height:1.1em;text-align:center;}
.movein-status.is-busy{display:inline-flex;align-items:center;justify-content:center;gap:10px;}
.movein-status.is-busy::before{content:"";width:14px;height:14px;flex:none;border-radius:50%;border:2px solid rgba(44,90,60,.14);border-top-color:var(--sage);animation:hm-spin .75s linear infinite;}
body.hm-busy .movein-btn{pointer-events:none;opacity:.62;}
.hm-busy-overlay{position:fixed;inset:0;z-index:9600;display:grid;place-items:center;padding:24px;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s;}
body.hm-busy .hm-busy-overlay{opacity:1;visibility:visible;}
.hm-busy-card{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:min(92vw,320px);padding:22px 28px 20px;border-radius:22px;background:rgba(255,255,255,.82);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);box-shadow:0 10px 40px rgba(16,40,24,.1),inset 0 1px 0 rgba(255,255,255,.85);pointer-events:auto;}
.hm-spinner{width:32px;height:32px;border-radius:50%;border:2.5px solid rgba(44,90,60,.12);border-top-color:var(--sage);animation:hm-spin .72s linear infinite;}
.hm-busy-label{margin:0;font-size:13px;line-height:1.45;color:var(--ink-soft);font-weight:400;text-align:center;letter-spacing:.01em;}
@keyframes hm-spin{to{transform:rotate(360deg);}}
@media (prefers-reduced-motion:reduce){
  .hm-spinner,.movein-status.is-busy::before{animation:none;border-top-color:rgba(44,90,60,.4);}
}
body.home-dark-ground .hm-busy-card,body.deep-immerse .hm-busy-card{background:rgba(14,22,18,.78);box-shadow:0 12px 44px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08);}
body.home-dark-ground .hm-busy-label,body.deep-immerse .hm-busy-label{color:rgba(246,248,244,.82);}
body.home-dark-ground .hm-spinner,body.deep-immerse .hm-spinner{border-color:rgba(255,255,255,.12);border-top-color:rgba(196,220,204,.88);}
.reset-link{display:none;font-size:11px;color:var(--ink-faint);background:none;padding:4px 10px;border-radius:99px;opacity:.8;transition:opacity .2s,color .2s;margin-top:2px;}
.reset-link:not([hidden]){display:inline-flex;}
.reset-link:hover{opacity:1;color:var(--ink-soft);}
.glasspane.drag{box-shadow:0 0 0 2px var(--sage),var(--shadow);}
.glasspane.drag::after{content:'Drop your brand - zip, folder, or files';position:absolute;inset:0;display:grid;place-items:center;font-family:var(--display);font-weight:300;font-size:clamp(22px,3vw,32px);color:var(--sage);background:rgba(247,248,243,.72);backdrop-filter:blur(8px);border-radius:var(--r-lg);z-index:30;pointer-events:none;}
.rooms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.1vw,16px);max-width:min(96vw,1420px);margin:0 auto;transition:opacity .32s cubic-bezier(.22,1,.36,1),filter .32s cubic-bezier(.22,1,.36,1),transform .32s cubic-bezier(.22,1,.36,1);}
/* Settled Brand Home — one tight cluster: intro, doors, studio pills */
.glasspane.md-room-home:has(> #home.has-brand){
  padding:clamp(14px,2.2vw,28px) clamp(16px,2.5vw,32px) clamp(12px,1.8vw,22px);
}
.glasspane.md-room-home > #home.has-brand{
  gap:clamp(10px,1.5vh,18px);
}
.glasspane.md-room-home > #home.has-brand .home-head{
  margin:0;
}
.glasspane.md-room-home > #home.has-brand .kicker{
  margin:0 0 6px;
  color:var(--ink-soft);
}
.glasspane.md-room-home > #home.has-brand .home-logo{
  margin:0 0 clamp(6px,1vh,12px);
}
.glasspane.md-room-home > #home.has-brand .home-logo img{
  height:clamp(52px,6.5vw,82px);
  max-width:clamp(210px,32vw,360px);
}
.glasspane.md-room-home > #home.has-brand .welcome{
  font-size:clamp(22px,2.8vw,34px);
  margin:.1em 0 .08em;
  line-height:1.08;
}
.glasspane.md-room-home > #home.has-brand .welcome-sub{
  font-size:clamp(13px,1.25vw,15.5px);
  margin:0 auto;
  max-width:42ch;
}
.glasspane.md-room-home > #home.has-brand .home-prepared{
  margin:clamp(4px,.7vh,8px) auto 0;
}
.glasspane.md-room-home > #home.has-brand .prep-line{
  font-size:.74rem;
  line-height:1.45;
  letter-spacing:.015em;
}
/* Logged-in Brand Home note — one calm line under the welcome, not a dashboard */
#home.has-brand.home-overview-on .home-overview{
  display:flex;flex-direction:column;gap:clamp(6px,.8vh,10px);
  width:min(100%,640px);margin:0 auto;
}
.home-overview{display:none;}
.ho-lede{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(8px,1vh,12px);}
.ho-statement{
  font-family:var(--body);font-weight:300;font-size:clamp(.88rem,1.35vw,1rem);
  line-height:1.55;letter-spacing:.01em;color:var(--ink-soft);max-width:42ch;margin:0;
}
.ho-next{
  margin-top:0;padding:.58em 1.1em;border:none;border-radius:999px;cursor:pointer;
  font:inherit;font-size:.8rem;font-weight:400;letter-spacing:.02em;color:var(--ink);
  background:var(--light);box-shadow:var(--shadow),var(--glass-edge);
  transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .35s ease,background .35s ease;
}
.ho-next:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover);}
/* Founder tools stay off the front door — double-click the home mark to open Studio */
#home .studio-links{display:none;}
#home .home-logo{cursor:default;}
.brh-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:none;background:transparent;padding:.55em 0;font:inherit;color:inherit;cursor:pointer;border-bottom:1px solid var(--sage-line);}
.brh-item:last-child{border-bottom:none;}
.brh-cta{margin-left:auto;font-size:.68rem;font-weight:500;color:var(--sage);white-space:nowrap;}
.brh-item:hover .brh-cta{color:var(--ink);}
body.home-dark-ground .ho-next,
#home.dark-ground .ho-next{background:rgba(255,255,255,.12);color:rgba(246,248,244,.96);}
/* Brand Record review queue */
.brq-panel{max-width:min(96vw,520px);}
.brq-progress{font-size:.78rem;color:var(--ink-soft);margin:0 0 .75em;}
.brq-body{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75em;padding:.25em 0 1em;}
.brq-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:96px;width:100%;padding:14px 16px;border-radius:14px;background:linear-gradient(160deg,rgba(255,255,255,.58),rgba(255,255,255,.34));box-shadow:inset 0 0 0 1px var(--sage-line);}
.brq-preview.on-dark{background:var(--b1,#1c2b22);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.brq-preview-main{display:flex;align-items:center;justify-content:center;width:100%;min-height:72px;}
.brq-preview-main img{max-height:88px;max-width:min(280px,85vw);object-fit:contain;filter:drop-shadow(0 6px 16px rgba(0,0,0,.12));}
.brq-preview-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;width:100%;}
.brq-preview-chip{display:inline-flex;align-items:center;justify-content:center;width:44px;height:36px;border-radius:8px;background:rgba(255,255,255,.55);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);overflow:hidden;}
.brq-preview-chip.on-dark{background:#1c2b22;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.brq-preview-chip img{max-width:100%;max-height:100%;object-fit:contain;padding:4px;}
.brq-preview-more{font-size:10px;color:var(--ink-faint);align-self:center;padding:0 4px;}
.brq-preview-empty{min-height:72px;}
.brq-preview img{max-height:64px;max-width:min(240px,80vw);object-fit:contain;}
.brq-swatch{width:48px;height:48px;border-radius:12px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);}
.brq-type{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);}
.brq-prompt{font-family:var(--display);font-weight:300;font-size:1.05rem;line-height:1.35;color:var(--ink);max-width:36ch;margin:0;}
.brq-family-note{font-size:.78rem;color:var(--ink-faint);margin:0;max-width:34ch;}
.brq-name{font-size:.78rem;color:var(--ink-soft);}
.brq-category-input{width:min(100%,280px);padding:.55em .75em;border-radius:10px;border:1px solid var(--sage-line);background:var(--light);font:inherit;font-size:.85rem;}
.brq-actions{display:flex;flex-direction:column;gap:8px;}
.brq-actions button{
  width:100%;padding:.72em 1em;border:none;border-radius:12px;cursor:pointer;font:inherit;font-size:.82rem;
  background:var(--glass);box-shadow:var(--shadow),var(--glass-edge);color:var(--ink);text-align:center;
  transition:transform .35s ease,box-shadow .35s ease;
}
.brq-actions button:hover{transform:translateY(-1px);box-shadow:var(--shadow-hover);}
.brq-actions button.primary{background:var(--light);font-weight:500;}
.brq-actions button.ghost{background:transparent;box-shadow:none;color:var(--ink-soft);}
.brq-done{text-align:center;font-size:.82rem;color:var(--sage);padding:1em 0 .25em;}
.brq-compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;width:100%;margin:.25em 0;}
.brq-compare-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 10px;border-radius:12px;background:linear-gradient(160deg,rgba(255,255,255,.58),rgba(255,255,255,.34));box-shadow:inset 0 0 0 1px var(--sage-line);}
.brq-compare-card.on-dark{background:var(--b1,#1c2b22);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.brq-compare-card img{max-height:72px;max-width:100%;object-fit:contain;}
.brq-compare-label{font-size:.72rem;color:var(--ink-soft);max-width:12ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.brq-fmt{font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);}
.glasspane.md-room-home > #home.has-brand .rooms{
  margin:0 auto;
}
.glasspane.md-room-home > #home.has-brand .studio-links{
  margin:0;
  padding:clamp(2px,.5vh,6px) 0 0;
  gap:10px;
}
@media(max-width:980px){.rooms{grid-template-columns:repeat(2,minmax(0,1fr));max-width:min(96vw,760px);gap:clamp(8px,1.4vw,12px);}}
@media(max-width:980px),(max-height:780px){
  .glasspane.md-room-home:has(> #home.has-brand){
    padding:clamp(12px,2vw,22px) clamp(14px,3vw,24px) clamp(10px,1.5vw,18px);
  }
  .glasspane.md-room-home > #home.has-brand{gap:clamp(8px,1.2vh,14px);}
  .glasspane.md-room-home > #home.has-brand .home-head{margin:0;}
  .glasspane.md-room-home > #home.has-brand .home-logo img{height:clamp(48px,6vw,74px);}
  .glasspane.md-room-home > #home.has-brand .welcome{font-size:clamp(20px,2.5vw,30px);}
  .glasspane.md-room-home > #home.has-brand .studio-links{padding:0;}
  .room-card{min-height:96px;padding:12px 14px;}
}
@media(max-width:520px){.rooms{grid-template-columns:1fr;max-width:none;gap:9px;}}
@media(max-width:520px){
  .glasspane.md-room-home:has(> #home.has-brand){
    padding-bottom:clamp(40px,8vh,52px);
  }
  .glasspane.md-room-home > #home.has-brand .studio-links{flex-wrap:wrap;}
}
@media(max-width:520px),(max-height:680px){
  .glasspane.md-room-home > #home.has-brand .home-logo img{height:clamp(46px,8vw,68px);}
  .glasspane.md-room-home > #home.has-brand .welcome{font-size:clamp(19px,5.2vw,28px);}
  .room-card{min-height:88px;}
  .room-card b{font-size:.94rem;}
  .room-card i{font-size:.72rem;}
  .room-ic{width:30px;height:30px;border-radius:9px;}
  .room-ic svg{width:16px;height:16px;}
}
.room-card{text-align:left;display:flex;flex-direction:column;min-height:100px;padding:clamp(12px,1.4vw,15px);border-radius:var(--r-md);background:var(--glass);backdrop-filter:blur(var(--glass-card-blur)) saturate(var(--glass-card-sat));-webkit-backdrop-filter:blur(var(--glass-card-blur)) saturate(var(--glass-card-sat));box-shadow:var(--shadow),var(--glass-edge);transition:transform .55s cubic-bezier(.22,1,.36,1),box-shadow .4s ease,background .4s ease,opacity .5s ease,filter .5s ease;position:relative;overflow:hidden;}
.room-card::after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(120% 82% at 50% 124%,var(--portal-glow),transparent 70%);opacity:0;transition:opacity .4s ease;pointer-events:none;}
.room-card:hover{transform:translateY(-4px);background:var(--light);box-shadow:var(--shadow-hover);}
.room-card:hover::after{opacity:.7;}
/* dark brand ground - frosted glowing portals (Brand immersion, not only Deep mode) */
body.home-dark-ground,
#home.dark-ground{
  --ink:rgba(246,248,244,.96);--ink-soft:rgba(246,248,244,.78);--ink-faint:rgba(246,248,244,.58);
  --mark-ink:rgba(246,248,244,.90);--sage-line:rgba(255,255,255,.18);--stone:rgba(255,255,255,.14);
}
body.home-dark-ground #room,
body.home-dark-ground #roomBody,
body.deep-immerse #room,
body.deep-immerse #roomBody{color:rgba(246,248,244,.94);}
body.home-dark-ground #room .kicker,
body.home-dark-ground #roomTitle,
body.home-dark-ground #roomDesc,
body.deep-immerse #room .kicker,
body.deep-immerse #roomTitle,
body.deep-immerse #roomDesc{color:rgba(246,248,244,.96);}
body.home-dark-ground #roomDesc,
body.deep-immerse #roomDesc{color:rgba(246,248,244,.72);}
body.home-dark-ground .back,
body.deep-immerse .back{color:rgba(246,248,244,.82);background:rgba(255,255,255,.10);box-shadow:0 0 0 1px rgba(255,255,255,.14),var(--shadow);}
body.home-dark-ground .back:hover,
body.deep-immerse .back:hover{color:rgba(246,248,244,.98);}
body.home-dark-ground #roomBody .shelf-eyebrow,
body.home-dark-ground #roomBody .sect-label,
body.home-dark-ground #roomBody .id-eyebrow,
body.home-dark-ground #roomBody .type-eyebrow,
body.deep-immerse #roomBody .shelf-eyebrow,
body.deep-immerse #roomBody .sect-label,
body.deep-immerse #roomBody .id-eyebrow,
body.deep-immerse #roomBody .type-eyebrow{color:rgba(246,248,244,.72);}
body.home-dark-ground #roomBody .shelf-eyebrow::before,
body.home-dark-ground #roomBody .sect-label::before,
body.deep-immerse #roomBody .shelf-eyebrow::before,
body.deep-immerse #roomBody .sect-label::before{background:rgba(246,248,244,.82);opacity:.85;}
body.home-dark-ground #roomBody .shelf-line,
body.home-dark-ground #roomBody .id-hero-note,
body.home-dark-ground #roomBody .id-read-line,
body.home-dark-ground #roomBody .ac-q,
body.deep-immerse #roomBody .shelf-line,
body.deep-immerse #roomBody .id-hero-note,
body.deep-immerse #roomBody .id-read-line,
body.deep-immerse #roomBody .ac-q{color:rgba(246,248,244,.78);}
body.home-dark-ground #roomBody .id-hero-role,
body.home-dark-ground #roomBody .id-note-k,
body.home-dark-ground #roomBody .id-palette-label,
body.home-dark-ground #roomBody .fmt-tag,
body.deep-immerse #roomBody .id-hero-role,
body.deep-immerse #roomBody .id-note-k,
body.deep-immerse #roomBody .id-palette-label,
body.deep-immerse #roomBody .fmt-tag{color:rgba(246,248,244,.68);}
body.home-dark-ground #roomBody .id-note-v,
body.home-dark-ground #roomBody .id-name,
body.deep-immerse #roomBody .id-note-v,
body.deep-immerse #roomBody .id-name{color:rgba(246,248,244,.92);}
body.deep-immerse #roomBody .id-palette-name{color:rgba(246,248,244,.92);}
body.deep-immerse #roomBody .id-palette-fmt,
body.deep-immerse #roomBody .id-palette-pairings-label{color:rgba(246,248,244,.62);}
body.deep-immerse #roomBody .id-palette-pairings-list{color:rgba(246,248,244,.78);}
body.deep-immerse #roomBody .id-palette-pairings,
body.deep-immerse #roomBody .id-notes-grid:has(#idIndustryRow:not([style*="display:none"])) + .id-notes-palette{border-top-color:rgba(246,248,244,.12);}
body.deep-immerse #assetRoot .compact-shelf .shelf-toggle{background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.04));border-color:rgba(246,248,244,.12);color:rgba(246,248,244,.68);}
body.deep-immerse #assetRoot .compact-shelf .shelf-toggle:hover{color:rgba(246,248,244,.88);}
body.home-dark-ground .room-card b,
body.deep-immerse #home .rooms .room-card b,
#home.dark-ground .room-card b{color:rgba(246,248,244,.98);}
body.home-dark-ground .room-card,
body.deep-immerse #home .rooms .room-card,
#home.dark-ground .room-card{
  background:linear-gradient(165deg,rgba(255,255,255,.14),rgba(255,255,255,.06)) !important;
  backdrop-filter:blur(20px) saturate(165%);
  -webkit-backdrop-filter:blur(20px) saturate(165%);
  box-shadow:0 0 0 1px rgba(255,255,255,.14),0 12px 28px rgba(0,0,0,.22),var(--glass-edge);
  color:rgba(246,248,244,.96) !important;
}
body.home-dark-ground .room-card::before,
body.deep-immerse #home .rooms .room-card::before,
#home.dark-ground .room-card::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 42%);
}
body.home-dark-ground .room-card::after,
body.deep-immerse #home .rooms .room-card::after,
#home.dark-ground .room-card::after{opacity:.26;}
body.home-dark-ground .room-card:hover,
body.deep-immerse #home .rooms .room-card:hover,
#home.dark-ground .room-card:hover{
  background:linear-gradient(165deg,rgba(255,255,255,.18),rgba(255,255,255,.09)) !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.18),0 14px 32px rgba(0,0,0,.26),0 0 24px rgba(255,255,255,.04),var(--glass-edge);
}
body.home-dark-ground .room-card:hover::after,
body.deep-immerse #home .rooms .room-card:hover::after,
#home.dark-ground .room-card:hover::after{opacity:.52;}
body.home-dark-ground .room-card i,
body.deep-immerse #home .rooms .room-card i,
#home.dark-ground .room-card i{color:rgba(246,248,244,.76);}
body.home-dark-ground .room-ic,
body.deep-immerse #home .rooms .room-ic,
#home.dark-ground .room-ic{background:rgba(255,255,255,.11);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);}
body.home-dark-ground .room-ic svg,
body.deep-immerse #home .rooms .room-ic svg,
#home.dark-ground .room-ic svg{stroke:rgba(246,248,244,.96);}
body.home-dark-ground .room-card .go,
body.deep-immerse #home .rooms .room-card .go,
#home.dark-ground .room-card .go{color:rgba(246,248,244,.48);}
body.home-dark-ground .glasspane.md-room-home,
body.deep-immerse .glasspane.md-room-home{
  background:linear-gradient(165deg,rgba(255,255,255,.13),rgba(255,255,255,.05));
  box-shadow:0 0 0 1px rgba(255,255,255,.15),0 30px 68px rgba(0,0,0,.28),var(--glass-edge);
}
body.home-dark-ground[data-env-material="glass"] .glasspane.md-room-home,
body.deep-immerse[data-env-material="glass"] .glasspane.md-room-home{
  background:linear-gradient(165deg,rgba(255,255,255,.11),rgba(255,255,255,.03) 55%,rgba(0,0,0,.06));
  box-shadow:0 0 0 1px rgba(255,255,255,.18),0 34px 76px rgba(0,0,0,.34);
}
body.home-dark-ground .kicker,body.home-dark-ground .welcome,body.home-dark-ground .welcome-sub,
#home.dark-ground .welcome,#home.dark-ground .welcome-sub{color:rgba(246,248,244,.96);}
body.home-dark-ground .welcome .soft,body.home-dark-ground .kicker,
#home.dark-ground .welcome .soft{color:rgba(246,248,244,.62);}
body.home-dark-ground .prep-line,#home.dark-ground .prep-line{color:rgba(246,248,244,.62);}
/* cinematic enter: the other portals recede as one opens */
#home.entering .rooms{opacity:0;filter:blur(5px);transform:scale(.985) translateY(4px);transition:opacity .22s ease,filter .22s ease,transform .22s cubic-bezier(.22,1,.36,1);}
#home.entering .home-head{opacity:0;transition:opacity .22s ease;}
@media (prefers-reduced-motion: reduce){.rooms,.room-card{transition:none;}}
.room-ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--surface);box-shadow:inset 0 0 0 1px var(--sage-line);}
.room-ic svg{width:18px;height:18px;stroke:var(--mark-ink);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.room-card b{display:block;font-weight:400;font-size:clamp(.92rem,.95vw,1rem);letter-spacing:-.01em;margin-top:auto;line-height:1.2;}
.room-card i{display:block;font-style:normal;font-size:clamp(.72rem,.78vw,.76rem);font-weight:300;color:var(--ink-soft);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.35;}
.room-card .go{position:absolute;top:14px;right:14px;opacity:0;transform:translateX(-4px);transition:.25s;color:var(--ink-faint);}
.room-card:hover .go{opacity:1;transform:none;}
.room-no{position:absolute;top:14px;right:16px;left:auto;font-size:.62rem;letter-spacing:.14em;font-variant-numeric:tabular-nums;color:var(--ink-faint);opacity:.55;font-weight:500;transition:opacity .25s ease;}
.room-card:hover .room-no{opacity:0;}
.room-card[data-open="founder"]{opacity:.5;}
.room-card[data-open="founder"]:hover{opacity:1;}
/* home: quiet "already prepared" line - the concierge speaking */
.home-prepared{text-align:center;margin:clamp(11px,2vh,18px) auto 0;max-width:640px;}
.home-prepared.empty{display:none;}
.prep-line{font-size:.78rem;color:var(--ink-faint);font-weight:300;letter-spacing:.02em;}
/* ═══════════════ HOME ENTRANCE - cinematic arrival (walking through the door) ═══════════════ */
.home-veil{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;
  background:radial-gradient(125% 125% at 50% 30%,#2e5a40 0%,#1f3d2e 58%,#16281e 100%);
  opacity:1;transition:opacity .95s cubic-bezier(.22,1,.36,1),transform 1.15s cubic-bezier(.22,1,.36,1);}
.home-veil.lift,.home-veil.gone{opacity:0;transform:scale(1.06);pointer-events:none;}
.home-veil .hv-mark{width:68px;}
.home-veil .hv-mark svg{width:100%;height:auto;display:block;}
.home-veil .hv-mark svg path{fill:#ece6d8;}
body.md-arrive .env{opacity:0;transform:scale(.986);}
body.md-arrive.md-arrive-go .env{opacity:1;transform:none;transition:opacity 1s cubic-bezier(.22,1,.36,1),transform 1.2s cubic-bezier(.22,1,.36,1);}
body.md-arrive .home-head{opacity:0;transform:translateY(10px);}
body.md-arrive.md-arrive-go .home-head{opacity:1;transform:none;transition:opacity .85s ease .25s,transform .95s cubic-bezier(.22,1,.36,1) .25s;}
body.md-arrive #homePrepared{opacity:0;}
body.md-arrive.md-arrive-go #homePrepared{opacity:1;transition:opacity .8s ease .55s;}
body.md-arrive .room-card{opacity:0;transform:translateY(13px);}
body.md-arrive.md-arrive-go .room-card{opacity:1;transform:none;transition:opacity .72s ease,transform .82s cubic-bezier(.22,1,.36,1);}
body.md-arrive.md-arrive-go .room-card:nth-child(1){transition-delay:.55s;}
body.md-arrive.md-arrive-go .room-card:nth-child(2){transition-delay:.63s;}
body.md-arrive.md-arrive-go .room-card:nth-child(3){transition-delay:.71s;}
body.md-arrive.md-arrive-go .room-card:nth-child(4){transition-delay:.79s;}
body.md-arrive.md-arrive-go .room-card:nth-child(5){transition-delay:.87s;}
body.md-arrive.md-arrive-go .room-card:nth-child(6){transition-delay:.95s;}
.prep-item{display:flex;flex-direction:column;align-items:center;gap:3px;}
.prep-k{font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);}
.prep-v{font-size:.86rem;color:var(--ink-soft);font-weight:300;letter-spacing:.01em;}

/* identity */
.id-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(14px,2vw,22px);padding:clamp(10px,2vw,22px) 0 clamp(6px,1.2vw,16px);}
/* the primary logo floats above a soft, glowing pedestal */
.id-pedestal{position:relative;display:grid;place-items:center;width:100%;padding:clamp(12px,1.8vw,22px) clamp(20px,4vw,60px) 0;}
.id-pedestal::before{content:'';position:absolute;left:50%;top:44%;width:min(60%,380px);height:min(60%,300px);transform:translate(-50%,-50%);background:radial-gradient(ellipse at center,var(--b3,#4e6b5a) 0%,transparent 68%);opacity:.42;filter:blur(34px);z-index:0;pointer-events:none;}
.id-pedestal::after{content:'';position:absolute;left:50%;bottom:clamp(14px,2vw,22px);width:min(46%,280px);height:24px;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(20,30,24,.20),transparent 72%);filter:blur(7px);z-index:0;pointer-events:none;}
.id-primary{min-height:0;display:grid;place-items:center;}
.id-hero .id-primary{position:relative;z-index:1;width:min(66%,360px);height:clamp(100px,14vh,170px);min-height:clamp(88px,12vh,155px);background:transparent;box-shadow:none;border-radius:0;overflow:visible;animation:idFloat 6.5s ease-in-out infinite;}
.id-hero .id-primary>img{
  filter:drop-shadow(0 18px 30px rgba(20,30,24,.20));
}
.id-hero .id-primary .vframe-tag{display:none;}
@keyframes idFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(prefers-reduced-motion:reduce){.id-hero .id-primary{animation:none;}}
.id-primary .wm{font-family:var(--display);font-weight:400;font-size:clamp(22px,2.8vw,32px);color:var(--b1);text-align:center;line-height:1.05;}
.id-primary .wm small{display:block;font-size:.32em;letter-spacing:.32em;text-transform:uppercase;color:var(--b3);margin-top:1em;font-weight:500;}
.id-namecard{padding:0;display:flex;flex-direction:column;align-items:center;text-align:center;background:none;backdrop-filter:none;box-shadow:none;max-width:46ch;}
.id-name{font-family:var(--display);font-weight:400;font-size:clamp(22px,2.4vw,30px);line-height:1.04;letter-spacing:-.02em;outline:none;border-radius:6px;}
.id-hero.logo-named .id-name{font-size:clamp(15px,1.6vw,19px);font-weight:300;color:var(--ink-soft);letter-spacing:0;margin-top:4px;}
.id-name:focus{box-shadow:0 0 0 2px rgba(44,90,60,.22);}
.id-tag{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(15px,1.5vw,18px);color:var(--ink-soft);margin-top:10px;max-width:34ch;outline:none;border-radius:6px;line-height:1.3;}
.id-tag:focus{box-shadow:0 0 0 2px rgba(44,90,60,.22);}
.edit-hint{font-size:10px;color:var(--ink-faint);margin-top:14px;display:none;}
.editing .edit-hint{display:block;}
/* Identity specialist read - what the room understands, kept quiet and human */
.id-read,.color-read,.type-read,.assets-read,.apps-read{margin:clamp(10px,1.4vh,16px) 2px 2px;display:grid;gap:7px;}
.color-read .id-read-note,.type-read .id-read-note,.assets-read .id-read-note,.apps-read .id-read-note{display:none;}
.id-read-line{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(14px,1.4vw,16px);color:var(--ink-soft);margin:0;line-height:1.4;}
.id-read-note{font-size:11.5px;line-height:1.5;color:var(--ink-faint);margin:0;padding-left:14px;position:relative;}
.id-read-note::before{content:"";position:absolute;left:0;top:.52em;width:5px;height:5px;border-radius:50%;background:var(--ink-faint);opacity:.55;}
.rec-uploads{display:flex;flex-wrap:wrap;gap:8px;margin:7px 0 3px;padding-left:14px;}
.rec-upload{font-family:inherit;font-size:11.5px;letter-spacing:.01em;color:var(--ink-soft);background:rgba(127,127,127,.05);border:1.5px dashed var(--ink-faint);border-radius:10px;padding:9px 13px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:border-color .2s,background .2s,color .2s,transform .2s;}
.rec-upload:hover{color:var(--ink);border-color:var(--sage);transform:translateY(-1px);}
.rec-upload.drag{border-style:solid;border-color:var(--sage);background:var(--glass);}
.rec-upload svg{width:13px;height:13px;opacity:.7;}
.editing .swatch span:not(.hex){cursor:text;}
.id-marks{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,18px);}
.id-markrow{display:flex;flex-wrap:wrap;gap:clamp(8px,1vw,12px);}
.id-markrow>.markframe{flex:1 1 148px;max-width:260px;}
.mark-sublabel{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);font-weight:500;margin-top:2px;}
.markframe{aspect-ratio:4/3;display:grid;place-items:center;}
.markframe.dark{background:var(--b1);}.markframe.brand{background:var(--b4);}.markframe.paper{background:var(--b2);}
.mono{width:58px;height:58px;border-radius:var(--r-sm);display:grid;place-items:center;font-family:var(--display);font-weight:500;font-size:24px;}
.mono.fill{background:var(--b3);color:var(--b1);}.mono.line{box-shadow:inset 0 0 0 2px var(--b2);color:var(--b2);}
.wordmark-mini{font-family:var(--display);font-size:20px;color:var(--b1);text-align:center;}
.wordmark-mini small{display:block;font-size:.36em;letter-spacing:.28em;text-transform:uppercase;color:var(--b3);margin-top:.6em;}
.id-colors{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(8px,1vw,12px);}
.swatch{aspect-ratio:1;border-radius:var(--r-sm);position:relative;overflow:hidden;box-shadow:var(--shadow);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease;cursor:pointer;}
.swatch:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover);}
.swatch span{position:absolute;left:10px;bottom:9px;font-size:9px;font-weight:600;}
.swatch .hex{position:absolute;left:10px;top:9px;font-size:8px;font-family:ui-monospace,monospace;opacity:.7;}

/* in-shell colour picker */
.cp-overlay{position:fixed;inset:0;z-index:120;display:grid;place-items:center;background:rgba(12,26,18,.34);backdrop-filter:blur(8px) saturate(120%);-webkit-backdrop-filter:blur(8px) saturate(120%);padding:24px;animation:cpFade .3s ease;}
.cp-overlay[hidden]{display:none;}
@keyframes cpFade{from{opacity:0}to{opacity:1}}
.cp-panel{width:min(340px,92vw);padding:clamp(18px,2.4vw,24px);border-radius:var(--r-lg);display:flex;flex-direction:column;gap:13px;background:linear-gradient(160deg,rgba(255,255,255,.9),rgba(255,255,255,.74));backdrop-filter:blur(var(--glass-shell-blur)) saturate(var(--glass-shell-sat));-webkit-backdrop-filter:blur(var(--glass-shell-blur)) saturate(var(--glass-shell-sat));box-shadow:var(--glass-edge),0 0 0 1px rgba(44,90,60,.08),0 30px 80px rgba(16,44,28,.28);animation:lib-rise .4s cubic-bezier(.22,1,.36,1);}
.cp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;}
.cp-heading{display:flex;flex-direction:column;gap:4px;min-width:0;}
.cp-eyebrow{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);font-weight:600;}
.cp-title{font-family:var(--display);font-weight:400;font-size:1.25rem;letter-spacing:-.01em;color:var(--ink);line-height:1.1;}
.cp-x{flex:0 0 auto;border:none;font-size:16px;line-height:1;color:var(--ink-faint);width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.5);box-shadow:inset 0 0 0 1px var(--sage-line);cursor:pointer;transition:color .2s,background .2s,transform .3s cubic-bezier(.22,1,.36,1);}
.cp-x:hover{color:var(--ink);background:rgba(44,90,60,.08);transform:rotate(90deg);}
.cp-sv{position:relative;width:100%;height:158px;border-radius:var(--r-sm);overflow:hidden;cursor:crosshair;touch-action:none;background:hsl(0,100%,50%);}
.cp-sv-white{position:absolute;inset:0;background:linear-gradient(to right,#fff,rgba(255,255,255,0));}
.cp-sv-black{position:absolute;inset:0;background:linear-gradient(to top,#000,rgba(0,0,0,0));}
.cp-hue{position:relative;height:14px;border-radius:99px;cursor:pointer;touch-action:none;background:linear-gradient(to right,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%);}
.cp-handle{position:absolute;width:16px;height:16px;border-radius:50%;box-shadow:0 0 0 2px #fff,0 1px 5px rgba(0,0,0,.45);transform:translate(-50%,-50%);pointer-events:none;}
.cp-hue-handle{top:50%;}
.cp-row{display:flex;gap:10px;align-items:center;}
.cp-preview{width:42px;height:42px;border-radius:10px;flex:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14);}
.cp-hex{flex:1;font-family:ui-monospace,monospace;font-size:14px;letter-spacing:.05em;text-transform:uppercase;padding:11px 12px;border-radius:var(--r-xs);border:none;outline:none;color:#1c2b22!important;background:rgba(255,255,255,.92)!important;box-shadow:inset 0 0 0 1px rgba(44,90,60,.18);}
.cp-hex:focus{box-shadow:inset 0 0 0 2px rgba(44,90,60,.42);}
.cp-presetlab{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:rgba(28,43,34,.42);font-weight:500;margin-top:2px;}
.cp-presets{display:flex;flex-wrap:wrap;gap:7px;}
.cp-chip{width:24px;height:24px;border-radius:7px;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14);transition:transform .14s ease;}
.cp-chip:hover{transform:scale(1.14);}
.cp-done{margin-top:4px;padding:11px;border:none;border-radius:10px;cursor:pointer;font:inherit;font-size:12px;letter-spacing:.04em;font-weight:600;color:var(--paper,#fbf8f0);background:var(--b1,#1c2b22);box-shadow:var(--shadow);}
.cp-done:hover{filter:brightness(1.08);}

/* published-link modal */
.pub-overlay{position:fixed;inset:0;z-index:120;display:grid;place-items:center;background:rgba(12,26,18,.34);backdrop-filter:blur(8px) saturate(120%);-webkit-backdrop-filter:blur(8px) saturate(120%);padding:24px;animation:cpFade .3s ease;overflow-y:auto;overscroll-behavior:contain;}
.pub-overlay[hidden]{display:none;}
body.pub-modal-open{overflow:hidden;}
.pub-panel{width:min(440px,94vw);padding:clamp(20px,2.6vw,28px);border-radius:var(--r-lg);display:flex;flex-direction:column;gap:12px;background:linear-gradient(160deg,rgba(255,255,255,.9),rgba(255,255,255,.74));backdrop-filter:blur(var(--glass-shell-blur)) saturate(var(--glass-shell-sat));-webkit-backdrop-filter:blur(var(--glass-shell-blur)) saturate(var(--glass-shell-sat));box-shadow:var(--glass-edge),0 0 0 1px rgba(44,90,60,.08),0 30px 80px rgba(16,44,28,.28);animation:lib-rise .4s cubic-bezier(.22,1,.36,1);}
.pub-panel.review-panel{max-height:min(88vh,900px);min-height:0;overflow:hidden;}
.pub-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;}
.pub-heading{display:flex;flex-direction:column;gap:4px;min-width:0;}
.pub-eyebrow{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);font-weight:600;}
.pub-title{font-family:var(--display);font-weight:400;font-size:clamp(1.15rem,2.4vw,1.4rem);letter-spacing:-.01em;color:var(--ink);line-height:1.1;}
.pub-x{flex:0 0 auto;border:none;font-size:16px;line-height:1;color:var(--ink-faint);width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.5);box-shadow:inset 0 0 0 1px var(--sage-line);cursor:pointer;transition:color .2s,background .2s,transform .3s cubic-bezier(.22,1,.36,1);}
.pub-x:hover{color:var(--ink);background:rgba(44,90,60,.08);transform:rotate(90deg);}
.pub-sub{font-size:12.5px;line-height:1.5;color:var(--ink-soft);margin:0;}
.pub-linkrow{display:flex;gap:8px;margin-top:2px;}
.pub-link{flex:1;min-width:0;font-family:ui-monospace,monospace;font-size:12.5px;padding:11px 12px;border-radius:10px;border:none;outline:none;color:var(--ink);background:rgba(255,255,255,.72);box-shadow:inset 0 0 0 1px rgba(44,90,60,.18);}
.pub-copy{flex:none;padding:11px 16px;border:none;border-radius:10px;cursor:pointer;font:inherit;font-size:12px;font-weight:600;letter-spacing:.03em;color:var(--paper,#fbf8f0);background:var(--b1,#1c2b22);box-shadow:var(--shadow);}
.pub-copy:hover{filter:brightness(1.08);}
.pub-open{font-size:12.5px;color:var(--b3,#4e6b5a);text-decoration:none;font-weight:500;align-self:flex-start;margin-top:2px;}
.pub-open:hover{text-decoration:underline;text-underline-offset:3px;}
.guides-panel{width:min(460px,94vw);}
.guides-list{display:flex;flex-direction:column;gap:8px;max-height:min(56vh,440px);overflow:auto;margin-top:4px;}
.guides-empty{font-size:12.5px;color:var(--ink-soft);text-align:center;padding:22px 6px;margin:0;}
.guide-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.6);box-shadow:inset 0 0 0 1px rgba(44,90,60,.12);}
.guide-meta{display:flex;flex-direction:column;min-width:0;}
.guide-meta b{font-family:var(--display);font-weight:400;font-size:1rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.guide-meta span{font-size:11px;color:var(--ink-faint);margin-top:1px;}
.guide-acts{display:flex;gap:7px;flex:none;}
.guide-open,.guide-copy{font:inherit;font-size:11.5px;font-weight:600;letter-spacing:.02em;padding:7px 13px;border-radius:8px;cursor:pointer;border:none;text-decoration:none;}
.guide-open{color:var(--paper,#fbf8f0);background:var(--b1,#1c2b22);}
.guide-open:hover{filter:brightness(1.08);}
.guide-copy{color:var(--ink);background:rgba(20,30,24,.07);box-shadow:inset 0 0 0 1px rgba(44,90,60,.18);}
.guide-copy:hover{background:rgba(20,30,24,.12);}
/* the publish + saved-guides panels are light glass in non-immersive rooms - keep their text dark there */
.pub-panel .pub-title,.pub-panel .pub-sub,.pub-panel .pub-x,.pub-link,.guides-empty,.guide-meta b,.guide-copy{color:#1c2b22!important;}
.pub-panel .pub-sub,.pub-panel .pub-x,.guides-empty{color:rgba(28,43,34,.6)!important;}
.guide-meta span{color:rgba(28,43,34,.46)!important;}
/* editor overlays in immersive / deep mode → dark forest glass, matching the library picker */
body.deep-immerse .cp-overlay,body.deep-immerse .pub-overlay{background:rgba(6,12,9,.5);}
body.deep-immerse .cp-panel,body.deep-immerse .pub-panel{background:linear-gradient(160deg,rgba(20,30,23,.92),rgba(12,20,15,.82));box-shadow:var(--glass-edge),0 0 0 1px rgba(255,255,255,.08),0 30px 80px rgba(0,0,0,.5);}
body.deep-immerse .cp-title,body.deep-immerse .pub-panel .pub-title,body.deep-immerse .guide-meta b{color:rgba(246,248,244,.94)!important;}
body.deep-immerse .cp-eyebrow,body.deep-immerse .pub-eyebrow,body.deep-immerse .cp-presetlab{color:rgba(246,248,244,.5)!important;}
body.deep-immerse .pub-panel .pub-sub,body.deep-immerse .guide-meta span,body.deep-immerse .guides-empty{color:rgba(246,248,244,.64)!important;}
body.deep-immerse .cp-x,body.deep-immerse .pub-panel .pub-x{color:rgba(246,248,244,.6)!important;background:rgba(255,255,255,.06)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)!important;}
body.deep-immerse .cp-x:hover,body.deep-immerse .pub-panel .pub-x:hover{color:#fff!important;background:rgba(255,255,255,.12)!important;}
body.deep-immerse .cp-hex,body.deep-immerse .pub-link{color:rgba(246,248,244,.92)!important;background:rgba(255,255,255,.06)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)!important;}
body.deep-immerse .guide-row{background:rgba(255,255,255,.05)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)!important;}
body.deep-immerse .guide-copy{color:rgba(246,248,244,.9)!important;background:rgba(255,255,255,.08)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)!important;}
body.deep-immerse .cp-done,body.deep-immerse .pub-copy,body.deep-immerse .guide-open{background:rgba(120,175,140,.2)!important;color:rgba(230,245,235,.98)!important;box-shadow:inset 0 0 0 1px rgba(150,200,165,.34)!important;}
body.deep-immerse .cp-done:hover,body.deep-immerse .pub-copy:hover,body.deep-immerse .guide-open:hover{background:rgba(120,175,140,.3)!important;filter:none!important;}
body.deep-immerse .pub-open{color:rgba(150,205,170,.95)!important;}

/* assets gallery */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(9px,1.1vw,13px);}
@media(max-width:820px){.gallery{grid-template-columns:1fr 1fr;}}
.gframe{aspect-ratio:1;}
.ph{width:100%;height:100%;}
.ph.a{background:linear-gradient(135deg,#2c5a3c,#4e6b5a);}
.ph.b{background:linear-gradient(135deg,#b4915a,#e4cfa6);}
.ph.c{background:linear-gradient(135deg,#1c2b22,#36493c);}
.ph.d{background:linear-gradient(135deg,#cdd9cd,#eef1ea);}
.glogo{background:var(--b2);display:grid;place-items:center;}
.glogo .wordmark-mini{font-size:18px;}

/* typography specimen */
.spec{padding:clamp(24px,3vw,40px);border-radius:var(--r-md);background:var(--glass);backdrop-filter:blur(var(--glass-card-blur)) saturate(var(--glass-card-sat));-webkit-backdrop-filter:blur(var(--glass-card-blur)) saturate(var(--glass-card-sat));box-shadow:var(--shadow),var(--glass-edge);}
.spec .big{font-family:var(--display);font-weight:300;font-size:clamp(28px,3.6vw,46px);line-height:1.04;letter-spacing:-.025em;color:var(--ink);}
.spec .scale{display:flex;gap:clamp(16px,2.4vw,30px);flex-wrap:wrap;align-items:baseline;margin:clamp(20px,2.6vw,32px) 0;color:var(--ink-soft);font-family:var(--display);padding-bottom:clamp(18px,2.4vw,28px);border-bottom:1px solid var(--sage-line);}
.spec .body{max-width:62ch;color:var(--ink-soft);font-size:14px;line-height:1.65;font-weight:300;}
.pairline{display:flex;gap:clamp(20px,4vw,48px);flex-wrap:wrap;margin-top:clamp(16px,2.2vw,24px);font-size:12px;color:var(--ink-soft);}
.pairline b{display:block;font-size:9px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--ink-faint);margin-bottom:3px;}
.type-ref-panel{margin-top:clamp(18px,2.4vw,28px);padding-top:clamp(18px,2.4vw,28px);border-top:1px solid var(--sage-line);}
.type-ref-grid{display:grid;gap:clamp(16px,2.2vw,24px);}
.type-ref-row{display:grid;gap:8px;}
.type-ref-label{font-size:9px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--ink-faint);}
.type-ref-sample{font-family:var(--display);font-size:clamp(22px,2.8vw,34px);line-height:1.08;color:var(--ink);}
.type-ref-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-size:12px;color:var(--ink-soft);}
.type-ref-meta b{color:var(--ink);font-weight:500;}
.type-ref-meta span{max-width:42ch;line-height:1.45;}
.type-ref-dl,.gd-type-dl{font-size:11px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink-faint);padding-bottom:1px;}
.type-ref-dl:hover,.gd-type-dl:hover{border-bottom-color:var(--ink);}
.type-ref-note{margin:10px 0 0;font-size:13px;line-height:1.55;color:var(--ink-soft);}
.type-ref-note b{color:var(--ink);font-weight:500;margin-right:6px;}
.type-logo-spec{margin-top:clamp(16px,2.2vw,24px);padding-top:clamp(14px,2vw,20px);border-top:1px solid var(--sage-line);}
.gd-type-dl{display:inline-block;margin-top:8px;}

/* deliverables vault */
.vault{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(9px,1.1vw,13px);}
.vault.vault-2{grid-template-columns:1fr 1fr;gap:clamp(12px,1.4vw,18px);}
@media(max-width:720px){.vault{grid-template-columns:1fr 1fr;}.vault.vault-2{grid-template-columns:1fr;}}
.vaultcard.primary{min-height:128px;box-shadow:var(--shadow),inset 0 0 0 1.5px rgba(44,90,60,.26);}
.vaultcard.primary b{font-size:1.45rem;}
.deliv-more{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 20px;margin-top:clamp(13px,1.8vh,18px);}
.deliv-link{background:none;border:none;cursor:pointer;font:inherit;font-size:12.5px;color:var(--ink-soft);padding:5px 4px;border-radius:6px;transition:color .2s ease;}
.deliv-link:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px;}
@media(max-width:720px){.vault{grid-template-columns:1fr 1fr;}}
.vaultcard{padding:clamp(16px,1.8vw,22px);border-radius:var(--r-md);min-height:108px;display:flex;flex-direction:column;background:linear-gradient(160deg,rgba(255,255,255,.58),rgba(255,255,255,.38));backdrop-filter:blur(var(--glass-card-blur)) saturate(var(--glass-card-sat));box-shadow:var(--shadow),var(--glass-edge);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease;cursor:pointer;}
.vaultcard:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover);}
.vaultcard b{font-family:var(--display);font-weight:400;font-size:1.2rem;margin-top:auto;}
.vaultcard i{font-style:normal;font-size:.74rem;color:var(--ink-soft);margin-top:2px;}
.vaultcard .vic{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--b3);font-weight:600;}

/* guide hero */
.guidehero{min-height:260px;border-radius:var(--r-md);overflow:hidden;background:var(--b1);color:var(--b2);position:relative;box-shadow:var(--shadow);padding:clamp(26px,4vw,44px);display:flex;flex-direction:column;justify-content:flex-end;}
.guidehero .ge{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--b3);font-weight:500;}
.guidehero h2{font-family:var(--display);font-weight:300;font-size:clamp(30px,4.4vw,56px);line-height:.98;letter-spacing:-.03em;margin:.18em 0 0;}
.guidehero p{font-family:var(--display);font-style:italic;font-weight:300;color:rgba(243,239,230,.68);max-width:34ch;margin-top:.5em;font-size:clamp(15px,1.6vw,20px);}

/* full guide document (the only room that renders the guide) */
.guidedoc{--gd-paper:var(--ink);--gd-faint:var(--ink-soft);--gd-mute:var(--ink-faint);--gd-sage:var(--b3,var(--sage));--gd-line:var(--sage-line);--gd-panel:var(--surface);--gd-glass:var(--light);background:transparent;color:var(--gd-paper);border-radius:var(--r-md);}
/* light guide: hold the hero text dark & readable - legibilityFix's auto-colour was tuned for the old dark hero and misreads the transparent one */
body:not(.deep-immerse) .guidedoc .gd-hero{color:var(--ink)!important;}
body:not(.deep-immerse) .guidedoc .gd-tag{color:var(--ink-soft)!important;}
body:not(.deep-immerse) .guidedoc .gd-herosub{color:var(--ink-soft)!important;}
body:not(.deep-immerse) .guidedoc .gd-meta span{color:var(--ink)!important;}
body:not(.deep-immerse) .guidedoc .gd-meta b{color:var(--ink-soft)!important;}
/* deep mode: the guide returns to a dark document - cream text on dark surfaces reads perfectly */
body.deep-immerse .guidedoc{--gd-paper:#ebe5d6;--gd-faint:rgba(235,229,214,.74);--gd-mute:rgba(235,229,214,.6);--gd-sage:color-mix(in srgb,var(--b3,#9bb0a2) 40%,#eff2ec);--gd-line:rgba(235,229,214,.2);--gd-panel:color-mix(in srgb,var(--b1,#16241c) 82%,#ffffff);--gd-glass:color-mix(in srgb,var(--b1,#16241c) 73%,#ffffff);}
.gd-hero{background:transparent;color:var(--gd-paper);padding:clamp(28px,4.5vw,52px);}
.gd-eyebrow,.gd-num{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gd-sage);font-weight:600;display:flex;align-items:center;gap:9px;}
.gd-eyebrow::before,.gd-num::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gd-sage);flex:none;}
.gd-num{margin-bottom:14px;}
.gd-herolock{display:flex;align-items:center;gap:clamp(12px,2vw,20px);margin:.5em 0 .1em;flex-wrap:wrap;}
.gd-herologo{display:none;}.gd-herologo.on img{display:block;height:clamp(50px,7vw,84px);max-width:min(52vw,340px);object-fit:contain;}
.gd-herologo.on{display:block;}
.gd-title{font-family:var(--display);font-weight:300;font-size:clamp(34px,6vw,68px);letter-spacing:-.03em;line-height:.96;margin:0;color:var(--gd-paper);}
.gd-tag{font-family:var(--display);font-style:italic;font-weight:300;color:var(--gd-faint);font-size:clamp(17px,2vw,24px);margin:.55em 0 0;}
.gd-herosub{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gd-sage);margin:1.1em 0 0;line-height:1.6;}
.gd-meta{display:flex;gap:clamp(20px,3vw,40px) clamp(24px,4vw,46px);flex-wrap:wrap;margin-top:clamp(22px,3vw,34px);padding-top:clamp(18px,2.4vw,24px);border-top:1px solid var(--gd-line);}
.gd-meta div.wide{flex-basis:100%;}
.gd-meta b{display:block;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--gd-mute);font-weight:600;margin-bottom:5px;}
.gd-meta span{font-size:13.5px;color:var(--gd-paper);font-weight:300;}
.gd-section{padding:clamp(26px,4vw,46px);border-top:1px solid var(--gd-line);}
.gd-head{font-weight:400;font-size:clamp(26px,4.4vw,46px);line-height:1.02;letter-spacing:-.01em;margin:0 0 .5em;color:var(--gd-paper);}
.gd-head .cap{font-family:var(--display);text-transform:uppercase;letter-spacing:.005em;font-weight:500;}
.gd-head em{font-family:var(--display);font-style:italic;font-weight:300;color:var(--gd-sage);letter-spacing:0;}
.gd-sub{font-size:14px;line-height:1.65;color:var(--gd-faint);max-width:62ch;margin:0 0 22px;}
.gd-logos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:10px;}
.gd-logos.two{grid-template-columns:1fr 1fr;}
.gd-logogroup{margin-bottom:14px;}
.gd-logogroup-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-weight:600;margin:0 0 7px;}
.gd-logocell{position:relative;min-height:clamp(130px,14vw,170px);display:grid;place-items:center;border-radius:var(--r-sm);padding:clamp(8px,1.2vw,12px);overflow:visible;}
.gd-logocell.paper{background:#ebe5d6;}.gd-logocell.dark{background:var(--b1,#16241c);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);}.gd-logocell.brand{background:var(--b4);}
.gd-logocell img{max-width:88%;max-height:clamp(100px,14vw,175px);width:auto;height:auto;object-fit:contain;}
.gd-logo-label{position:absolute;left:0;right:0;bottom:12px;text-align:center;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(28,43,34,.5);padding:0 10px;}
.gd-logocell.dark .gd-logo-label,
.gd-logo-label.on-dark{color:rgba(235,229,214,.84);text-shadow:0 1px 6px rgba(0,0,0,.28);}
.gd-logo-dl{position:absolute;top:10px;right:10px;width:27px;height:27px;border-radius:8px;border:none;display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity .15s,background .15s;background:rgba(0,0,0,.08);color:#1c2b22;}
.gd-logocell:hover .gd-logo-dl{opacity:1;}
.gd-logo-dl:hover{background:rgba(0,0,0,.16);}
.gd-logo-dl.on-dark{background:rgba(235,229,214,.16);color:var(--gd-paper);}.gd-logo-dl.on-dark:hover{background:rgba(235,229,214,.3);}
.gd-logo-dl svg{width:15px;height:15px;}
.wm-doc{font-family:var(--display);font-size:clamp(17px,2vw,25px);color:#1c2b22;text-align:center;}
.wm-doc small{display:block;font-size:.32em;letter-spacing:.3em;text-transform:uppercase;color:rgba(28,43,34,.55);margin-top:.9em;}
.gd-palette{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.gd-sw{position:relative;border-radius:var(--r-sm);min-height:clamp(120px,15vw,168px);display:flex;flex-direction:column;justify-content:space-between;padding:16px 18px;box-shadow:inset 0 0 0 1px rgba(235,229,214,.16);}
  .gd-sw{min-height:clamp(150px,17vw,188px);justify-content:flex-start;gap:9px;}
  .gd-sw-fmts{display:flex;flex-direction:column;gap:2px;margin-top:auto;}
  .gd-sw-use{font-size:10px;line-height:1.45;opacity:.85;font-weight:400;letter-spacing:.01em;text-transform:none;}
  .gd-sw-use b{display:block;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:8.5px;opacity:.65;margin-bottom:3px;}
.gd-sw span{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;}.gd-sw i{font-style:normal;font-size:11px;font-family:ui-monospace,monospace;opacity:.78;letter-spacing:.04em;}
.gd-type{display:grid;grid-template-columns:1fr;gap:12px;}
.gd-type>div{background:linear-gradient(160deg,var(--gd-glass),var(--gd-panel));border-radius:var(--r-sm);padding:clamp(20px,3vw,30px);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),inset 0 0 0 1px var(--gd-line);}
.gd-typelabel{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--gd-sage);font-weight:600;margin-bottom:16px;}
.gd-disp{font-family:var(--display);font-weight:400;font-size:clamp(30px,5vw,52px);line-height:1.02;letter-spacing:-.01em;color:var(--gd-paper);}
.gd-bodysample{font-size:15px;line-height:1.65;color:var(--gd-faint);}
.gd-voice{display:flex;flex-direction:column;gap:clamp(18px,2.6vw,28px);}
.gd-voice-pos{font-family:var(--display);font-weight:300;font-size:clamp(20px,2.6vw,30px);line-height:1.32;letter-spacing:-.01em;color:var(--gd-paper);max-width:30ch;margin:0;}
.gd-voice-tones{display:flex;flex-wrap:wrap;gap:8px;}
.gd-voice-tone{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gd-sage);padding:7px 13px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--gd-line);}
.gd-voice-lang{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(15px,1.7vw,19px);line-height:1.5;color:var(--gd-faint);max-width:46ch;margin:0;padding-left:16px;border-left:2px solid var(--gd-sage);}
.gd-voice{display:flex;flex-direction:column;gap:clamp(18px,2.6vw,28px);}
.gd-voice-pos{font-family:var(--display);font-weight:300;font-size:clamp(20px,2.6vw,30px);line-height:1.32;letter-spacing:-.01em;color:var(--gd-paper);max-width:30ch;margin:0;}
.gd-voice-tones{display:flex;flex-wrap:wrap;gap:8px;}
.gd-voice-tone{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gd-sage);padding:7px 13px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--gd-line);}
.gd-voice-lang{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(15px,1.7vw,19px);line-height:1.5;color:var(--gd-faint);max-width:46ch;margin:0;padding-left:16px;border-left:2px solid var(--gd-sage);}
.gd-voice{display:flex;flex-direction:column;gap:clamp(18px,2.6vw,28px);}
.gd-voice-pos{font-family:var(--display);font-weight:300;font-size:clamp(20px,2.6vw,30px);line-height:1.32;letter-spacing:-.01em;color:var(--gd-paper);max-width:30ch;margin:0;}
.gd-voice-tones{display:flex;flex-wrap:wrap;gap:8px;}
.gd-voice-tone{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gd-sage);padding:7px 13px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--gd-line);}
.gd-voice-lang{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(15px,1.7vw,19px);line-height:1.5;color:var(--gd-faint);max-width:46ch;margin:0;padding-left:16px;border-left:2px solid var(--gd-sage);}
.gd-voice{display:flex;flex-direction:column;gap:clamp(18px,2.6vw,28px);}
.gd-voice-pos{font-family:var(--display);font-weight:300;font-size:clamp(20px,2.6vw,30px);line-height:1.32;letter-spacing:-.01em;color:var(--gd-paper);max-width:30ch;margin:0;}
.gd-voice-tones{display:flex;flex-wrap:wrap;gap:8px;}
.gd-voice-tone{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gd-sage);padding:7px 13px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--gd-line);}
.gd-voice-lang{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(15px,1.7vw,19px);line-height:1.5;color:var(--gd-faint);max-width:46ch;margin:0;padding-left:16px;border-left:2px solid var(--gd-sage);}
.gd-voice{display:flex;flex-direction:column;gap:clamp(18px,2.6vw,28px);}
.gd-voice-pos{font-family:var(--display);font-weight:300;font-size:clamp(20px,2.6vw,30px);line-height:1.32;letter-spacing:-.01em;color:var(--gd-paper);max-width:30ch;margin:0;}
.gd-voice-tones{display:flex;flex-wrap:wrap;gap:8px;}
.gd-voice-tone{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gd-sage);padding:7px 13px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--gd-line);}
.gd-voice-lang{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(15px,1.7vw,19px);line-height:1.5;color:var(--gd-faint);max-width:46ch;margin:0;padding-left:16px;border-left:2px solid var(--gd-sage);}
.gd-voice{display:flex;flex-direction:column;gap:clamp(18px,2.6vw,28px);}
.gd-voice-pos{font-family:var(--display);font-weight:300;font-size:clamp(20px,2.6vw,30px);line-height:1.32;letter-spacing:-.01em;color:var(--gd-paper);max-width:30ch;margin:0;}
.gd-voice-tones{display:flex;flex-wrap:wrap;gap:8px;}
.gd-voice-tone{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gd-sage);padding:7px 13px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--gd-line);}
.gd-voice-lang{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(15px,1.7vw,19px);line-height:1.5;color:var(--gd-faint);max-width:46ch;margin:0;padding-left:16px;border-left:2px solid var(--gd-sage);}
.gd-voice{display:flex;flex-direction:column;gap:clamp(18px,2.6vw,28px);}
.gd-voice-pos{font-family:var(--display);font-weight:300;font-size:clamp(20px,2.6vw,30px);line-height:1.32;letter-spacing:-.01em;color:var(--gd-paper);max-width:30ch;margin:0;}
.gd-voice-tones{display:flex;flex-wrap:wrap;gap:8px;}
.gd-voice-tone{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gd-sage);padding:7px 13px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--gd-line);}
.gd-voice-lang{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(15px,1.7vw,19px);line-height:1.5;color:var(--gd-faint);max-width:46ch;margin:0;padding-left:16px;border-left:2px solid var(--gd-sage);}
.gd-fname{display:block;margin-top:14px;font-size:13px;color:var(--gd-paper);font-weight:500;}
.gd-fname+.gd-fname,.gd-fdesc{font-weight:300;color:var(--gd-mute);}
.gd-mockups{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;}
.gd-mock{aspect-ratio:1;border-radius:var(--r-sm);}
/* ── In Use: two-up showcase (real email signature + Instagram icon) ── */
.inuse-two{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media(max-width:640px){.inuse-two{grid-template-columns:1fr;}}
.inuse-card{position:relative;border-radius:var(--r-md);overflow:hidden;min-height:clamp(190px,24vw,250px);display:grid;place-items:center;padding:26px 26px 34px;background:linear-gradient(160deg,var(--gd-glass),var(--gd-panel));box-shadow:inset 0 1px 0 rgba(255,255,255,.06),inset 0 0 0 1px var(--gd-line);}
.inuse-sig{background:#fff;border-radius:10px;padding:18px 20px;box-shadow:0 12px 30px rgba(0,0,0,.22);max-width:100%;overflow:auto;}
.inuse-ig{width:clamp(118px,15vw,150px);height:clamp(118px,15vw,150px);border-radius:50%;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.3);}
.inuse-ig img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%;}
.inuse-tag{position:absolute;left:15px;bottom:13px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gd-mute);}
.mk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;}
.mk{position:relative;aspect-ratio:4/3;min-width:0;min-height:0;border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow);background:var(--b2);display:grid;place-items:center;}
.mk-tag{position:absolute;left:10px;bottom:9px;z-index:3;font-size:9px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--ink-soft);background:rgba(255,255,255,.82);padding:3px 7px;border-radius:6px;backdrop-filter:blur(6px);}
.mk-tag.on-dark{color:rgba(255,255,255,.86);background:rgba(0,0,0,.28);}
.mk img{display:block;object-fit:contain;}
/* business card */
.mk-card{width:74%;aspect-ratio:1.7/1;border-radius:9px;background:#fff;box-shadow:0 10px 26px rgba(20,40,28,.18);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:10%;}
.mk-card img{max-width:64%;max-height:46%;}
.mk-card .mk-rule{width:34%;height:2px;border-radius:2px;background:var(--b3);}
.mk-card .mk-nm{font-family:var(--display);font-size:11px;color:var(--b1);letter-spacing:.01em;}
/* email signature */
.mk-sig{width:80%;background:#fff;border-radius:8px;box-shadow:0 8px 22px rgba(20,40,28,.12);display:flex;align-items:center;gap:11px;padding:13px 15px;}
.mk-sig img{width:34%;max-height:54px;}
.mk-sig .mk-bar{width:2px;align-self:stretch;background:var(--b3);border-radius:2px;}
.mk-sig .mk-lines{display:flex;flex-direction:column;gap:4px;flex:1;}
.mk-sig .mk-lines b{font-size:10px;color:var(--b1);font-weight:600;}
.mk-sig .mk-lines i{font-style:normal;font-size:8px;color:var(--ink-faint);}
.mk-sig .mk-lines .mk-accent{color:var(--b3);font-weight:600;}
/* website header */
.mk-web{width:86%;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 8px 22px rgba(20,40,28,.12);}
.mk-web .mk-nav{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid rgba(0,0,0,.06);}
.mk-web .mk-nav img{height:21px;max-width:48%;}
.mk-web .mk-nav .mk-links{margin-left:auto;display:flex;gap:7px;}
.mk-web .mk-nav .mk-links span{width:16px;height:4px;border-radius:3px;background:var(--b4);opacity:.5;}
.mk-web .mk-hero{height:46px;background:linear-gradient(120deg,var(--b1),var(--b4));}
/* social post */
.mk-post{width:72%;aspect-ratio:1/1;border-radius:12px;background:linear-gradient(150deg,var(--b1),var(--b5));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:12%;}
.mk-post img{max-width:60%;max-height:44%;}
.mk-post .mk-cap{font-family:var(--display);font-size:10px;text-align:center;color:rgba(255,255,255,.9);}
/* signage */
.mk-sign{width:100%;height:100%;background:linear-gradient(180deg,#e9eae6,#dcdedb);display:grid;place-items:center;}
.mk-sign .mk-panel{width:60%;aspect-ratio:1.5/1;border-radius:6px;background:var(--b1);box-shadow:0 14px 30px rgba(0,0,0,.22);display:grid;place-items:center;padding:9%;}
.mk-sign .mk-panel img{max-width:74%;max-height:60%;}
/* social avatar */
.mk-avatar{width:100%;height:100%;background:linear-gradient(160deg,var(--b2),#fff);display:grid;place-items:center;}
.mk-avatar .mk-circle{width:54%;aspect-ratio:1/1;border-radius:50%;background:var(--b1);box-shadow:0 10px 24px rgba(20,40,28,.2);display:grid;place-items:center;padding:14%;}
.mk-avatar .mk-circle img{max-width:78%;max-height:78%;}
@media(max-width:640px){.mk-grid{grid-template-columns:1fr 1fr;}}
.mk-dl{position:absolute;top:8px;right:8px;z-index:4;display:flex;gap:5px;opacity:0;transition:opacity .2s;}
.mk:hover .mk-dl{opacity:1;}
.mk-dl button{font-size:9px;letter-spacing:.04em;font-weight:500;color:var(--ink-soft);background:rgba(255,255,255,.92);box-shadow:inset 0 0 0 1px var(--sage-line);border-radius:99px;padding:3px 9px;cursor:pointer;transition:color .2s,box-shadow .2s;}
.mk-dl button:hover{color:var(--ink);box-shadow:inset 0 0 0 1px rgba(44,90,60,.3);}
.gd-usage{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.gd-use{padding:20px 22px;border-radius:var(--r-sm);background:var(--gd-panel);box-shadow:inset 0 0 0 1px var(--gd-line);border-top:2px solid var(--gd-sage);}
.gd-use.dont{border-top-color:#c97a6e;}
.gd-use b{font-size:11px;letter-spacing:.14em;text-transform:uppercase;}
.gd-use.do b{color:var(--gd-sage);}.gd-use.dont b{color:#d99a8e;}
.gd-use ul{list-style:none;padding:0;margin:13px 0 0;display:grid;gap:8px;font-size:13.5px;line-height:1.4;color:var(--gd-faint);}
.gd-files{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;}
.gd-file{text-align:left;padding:17px 19px;border-radius:var(--r-sm);background:var(--gd-panel);box-shadow:inset 0 0 0 1px var(--gd-line);cursor:pointer;transition:transform .25s,background .25s;color:var(--gd-paper);}
.gd-file:hover{transform:translateY(-2px);background:color-mix(in srgb,var(--gd-panel) 80%,var(--gd-paper) 8%);}
.gd-file b{display:block;font-weight:500;font-size:.9rem;}
.gd-file span{font-size:11px;color:var(--gd-sage);}
@media(max-width:640px){.gd-type,.gd-logos{grid-template-columns:1fr;}.gd-mockups{grid-template-columns:1fr 1fr;}.gd-usage,.gd-files{grid-template-columns:1fr;}}

/* founder list */
.flist{display:grid;gap:9px;max-width:580px;}
.fgroup-h{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-weight:600;margin:20px 0 9px;max-width:580px;}
.fgroup-h:first-of-type{margin-top:4px;}
.frow{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:var(--r-sm);background:rgba(255,255,255,.5);box-shadow:var(--shadow);}
.frow b{font-weight:400;font-size:.94rem;}.frow i{font-style:normal;font-size:.76rem;color:var(--ink-faint);}
.toggle{width:38px;height:22px;border-radius:99px;background:rgba(44,90,60,.16);position:relative;flex:0 0 auto;}
.toggle::after{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:left .22s cubic-bezier(.22,1,.36,1);}
.toggle{cursor:pointer;transition:background .22s ease;}
.toggle.on{background:var(--sage);}
.toggle.on::after{left:19px;}
.note{margin-top:clamp(16px,2.4vh,26px);font-size:11.5px;color:var(--ink-faint);text-align:center;line-height:1.55;max-width:58ch;margin-left:auto;margin-right:auto;}
/* every container in a room is editable - quiet hover affordance */
.vframe,.swatch,.gd-sw{cursor:pointer;}
.gd-sw{position:relative;}
.vframe::after,.swatch::after,.gd-sw::after{content:'Replace';position:absolute;bottom:8px;left:8px;top:auto;right:auto;z-index:4;font-size:9px;letter-spacing:.02em;color:var(--ink-soft);background:rgba(255,255,255,.86);backdrop-filter:blur(6px);padding:3px 8px;border-radius:99px;opacity:0;transform:translateY(3px);transition:opacity .2s,transform .2s;box-shadow:inset 0 0 0 1px rgba(44,90,60,.1);pointer-events:none;}
.swatch::after,.gd-sw::after{content:'Color';}
.vframe.markframe.waiting::after{display:none;}   /* empty pedestal: upload target - no Replace chip over the dismiss × */
.md-room-identity .vframe:not(.waiting)::after{content:'Preview';}
.md-room-identity .vframe:not(.waiting):hover::after{opacity:1;transform:none;}
.assets-managing #assetRoot .asset-thumb[data-asset]:not(.doc) .asset-replace{letter-spacing:.02em;}
.editing .vframe:hover::after,.editing .swatch:hover::after,.editing .gd-sw:hover::after{opacity:1;transform:none;}
.editing .md-room-identity .vframe:not(.waiting):hover::after{opacity:1;transform:none;}
[contenteditable="true"]{outline:none;border-radius:6px;transition:box-shadow .15s;}
[contenteditable="true"]:hover{box-shadow:0 0 0 1px rgba(44,90,60,.16);}
[contenteditable="true"]:focus{box-shadow:0 0 0 2px rgba(44,90,60,.25);}

/* Brand Home — Google Sign-In overlay */
body.hm-auth-locked{overflow:hidden;}
.hm-auth-overlay{
  position:fixed;inset:0;z-index:12000;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(165deg,rgba(244,248,245,.94),rgba(232,240,234,.88));
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  padding:clamp(1.5rem,4vw,3rem);
}
.hm-auth-overlay[hidden]{display:none!important;}
.hm-auth-panel{
  width:min(420px,100%);text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:.35rem;
}
.hm-auth-mark svg{width:52px;height:auto;fill:var(--mark-ink);opacity:.88;}
.hm-auth-wordmark{
  margin:1rem 0 .25rem;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--ink-faint);font-weight:500;
}
.hm-auth-title{
  font-family:var(--font-display,'Fraunces',serif);font-size:clamp(1.85rem,4.5vw,2.65rem);
  font-weight:300;line-height:1.12;letter-spacing:-.04em;color:var(--ink);margin:0 0 .5rem;
}
.hm-auth-sub{font-size:.92rem;font-weight:300;color:var(--ink-soft);margin:0 0 1.35rem;line-height:1.5;}
.hm-auth-google{min-height:44px;display:flex;align-items:center;justify-content:center;width:100%;}
.hm-auth-hint{
  margin-top:1rem;font-size:.78rem;font-weight:300;color:var(--ink-faint);
  max-width:22rem;line-height:1.55;
}
.hm-auth-hint.err{color:rgba(120,40,40,.72);}
#home .home-head{position:relative;}
.hm-signout-btn{
  position:absolute;top:0;right:0;z-index:2;
  font-size:11px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-faint);background:rgba(255,255,255,.35);border:1px solid rgba(0,0,0,.06);
  padding:6px 12px;border-radius:99px;cursor:pointer;
  transition:color .2s,background .2s,border-color .2s;
}
.hm-signout-btn:not([hidden]){display:inline-flex;}
.hm-signout-btn[hidden]{display:none!important;}
.hm-signout-btn:hover{color:var(--ink-soft);background:rgba(255,255,255,.55);}
