/* Shared KIRO STONE website chrome. Kept separate from music and video engines. */
body.kiro-site-shell{margin:0;min-height:100vh;display:flex;flex-direction:column}
body.kiro-site-shell>main{flex:1 0 auto;width:100%;box-sizing:border-box}
.kiro-site-header,.kiro-site-footer,.kiro-site-header *,.kiro-site-footer *{box-sizing:border-box}
.kiro-site-header,.kiro-site-footer{font-family:Arial,Helvetica,sans-serif;line-height:1.4;color:#fff;letter-spacing:normal;text-align:left}
header.kiro-site-header{
 position:sticky;inset:0 0 auto;z-index:60;flex:none;width:100%;max-width:none;height:auto;min-height:88px;
 display:grid;grid-template-columns:180px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;
 column-gap:40px;row-gap:14px;margin:0;padding:18px 4vw;
 background:rgba(4,4,4,.94);border:0;border-bottom:1px solid #252525;backdrop-filter:blur(14px);
}
.kiro-site-header a,.kiro-site-footer a{color:#fff!important;text-decoration:none!important;box-shadow:none;border:0;background:none;border-radius:0}
.kiro-site-header a:hover,.kiro-site-footer a:hover{color:#f90be5!important}
.kiro-site-header a:active,.kiro-site-footer a:active,.kiro-site-header [aria-current]{color:#7fed10!important}
.kiro-site-header a:focus-visible,.kiro-site-footer a:focus-visible{outline:2px solid #7fed10!important;outline-offset:5px}
.kiro-site-header .kiro-shell-brand{grid-column:1;grid-row:1 / 3;display:block;width:180px;max-width:100%;margin:0;padding:0;line-height:0}
.kiro-site-header .kiro-shell-brand img{display:block;position:static;width:100%;height:auto;max-width:100%;aspect-ratio:836 / 239;object-fit:contain;border:0;margin:0;padding:0;transform:none}
.kiro-site-header .kiro-shell-languages{grid-column:2;grid-row:1;justify-self:end;display:flex;align-items:center;gap:20px;margin:0;padding:0}
.kiro-site-header .kiro-shell-languages a{display:block;margin:0;padding:0;font-size:15px;font-weight:700;line-height:20px;letter-spacing:.02em;white-space:nowrap}
.kiro-site-header .kiro-shell-nav{grid-column:2;grid-row:2;justify-self:end;display:flex;align-items:center;justify-content:flex-end;gap:28px;flex-wrap:wrap;width:auto;max-width:100%;margin:0;padding:0}
.kiro-site-header .kiro-shell-nav a{display:block;margin:0;padding:0;font-size:12px;font-weight:500;line-height:17px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
footer.kiro-site-footer{
 position:relative;inset:auto;display:grid;grid-template-columns:144px minmax(0,1fr) auto;align-items:center;gap:24px;
 flex:none;width:100%;max-width:none;height:auto;margin:0;margin-top:auto;padding:32px 4vw;
 background:#050505;border:0;border-top:1px solid #252525;
}
.kiro-site-footer .kiro-shell-footer-brand{display:block;width:144px;margin:0;padding:0;line-height:0}
.kiro-site-footer .kiro-shell-footer-brand img{display:block;width:100%;height:auto;aspect-ratio:836 / 239;object-fit:contain;border:0;margin:0;padding:0}
.kiro-site-footer .kiro-shell-tagline{margin:0;padding:0;color:#92969d;font-size:14px;font-weight:400;line-height:1.6;letter-spacing:0}
.kiro-site-footer .kiro-shell-domain{display:block;font-size:12px;font-weight:400;line-height:1.5;letter-spacing:.14em;white-space:nowrap}
body.kiro-site-shell :is(#music,#art,#contact){scroll-margin-top:112px}
@media(max-width:760px){
 header.kiro-site-header{grid-template-columns:156px minmax(0,1fr);padding:16px 22px;column-gap:18px;row-gap:18px;min-height:0}
 .kiro-site-header .kiro-shell-brand{grid-row:1;width:156px}
 .kiro-site-header .kiro-shell-languages{gap:14px;align-self:center}
 .kiro-site-header .kiro-shell-languages a{font-size:14px}
 .kiro-site-header .kiro-shell-nav{grid-column:1 / -1;grid-row:2;justify-self:start;justify-content:flex-start;gap:26px;flex-wrap:nowrap}
 .kiro-site-header .kiro-shell-nav a{font-size:11px}
 footer.kiro-site-footer{grid-template-columns:1fr;gap:18px;padding:30px 22px}
 .kiro-site-footer .kiro-shell-tagline{font-size:13px}
 body.kiro-site-shell :is(#music,#art,#contact){scroll-margin-top:140px}
}
@media(max-width:360px){
 header.kiro-site-header{grid-template-columns:144px minmax(0,1fr);padding-inline:18px;column-gap:12px}
 .kiro-site-header .kiro-shell-brand{width:144px}
 .kiro-site-header .kiro-shell-languages{gap:10px}
 .kiro-site-header .kiro-shell-languages a{font-size:13px}
}

/* Keep navigation consistent on embedded pages using the shared shell. */
.kiro-shell-nav a[href$="#contact"] { display: none !important; }

/* Colors sampled from the supplied S / lower-right A reference, converted
   from its embedded display profile to sRGB for consistent browser rendering.
   This important layer takes precedence over the older page-specific palettes. */
@layer kiro-interaction {
  body.kiro-site-shell {
    --kiro-action-text: #FFFFFF;
    --kiro-action-hover: #E97B50;
    --kiro-action-selected: #5ADBD8;
  }
  body.kiro-site-shell :is(a, button, [role="button"], input[type="button"], input[type="submit"]) {
    color: var(--kiro-action-text) !important;
  }
  body.kiro-site-shell :is(a, button, [role="button"], input[type="button"], input[type="submit"]):hover {
    color: var(--kiro-action-hover) !important;
  }
  body.kiro-site-shell :is(a, button, [role="button"], input[type="button"], input[type="submit"]):is(
    :active, :focus, .active, .selected, .is-active, .is-selected,
    [aria-current="page"], [aria-current="true"], [aria-current="location"],
    [aria-selected="true"], [aria-pressed="true"]
  ) {
    color: var(--kiro-action-selected) !important;
  }
  body.kiro-site-shell:has(#music:target) .kiro-shell-nav a[href$="#music"],
  body.kiro-site-shell:has(#art:target) .kiro-shell-nav a[href$="#art"] {
    color: var(--kiro-action-selected) !important;
  }
  body.kiro-site-shell :is(a, button, [role="button"]) :is(span, strong, b, em, i, small, svg) {
    color: inherit !important;
  }
  body.kiro-site-shell :is(a, button, input, select, textarea, [role="button"]):focus-visible {
    outline-color: var(--kiro-action-selected) !important;
  }
}

/* Text buttons: retain their click area while removing the surrounding shape. */
@layer kiro-controls {
  body.kiro-site-shell :is(
    button, input[type="button"], input[type="submit"], input[type="reset"],
    a:not(:has(img, picture, video)):not(.documentary-link),
    [role="button"]:not(:has(img, picture, video))
  ) {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    outline: none !important;
  }
  body.kiro-site-shell :is(
    button, input[type="button"], input[type="submit"], input[type="reset"],
    a:not(:has(img, picture, video)):not(.documentary-link),
    [role="button"]:not(:has(img, picture, video))
  ):focus-visible {
    text-decoration: underline !important;
    text-underline-offset: .3em !important;
    text-decoration-thickness: 1px !important;
  }
}
.kiro-site-header .kiro-shell-nav .kiro-shell-madice{
  text-transform:none;letter-spacing:.02em;
}
/* Keep the video play label legible without a filled button. */
.stone-match-showcase .sm-demo-play{text-shadow:0 1px 4px rgba(0,0,0,.9)}
