/* Gloss & Grit — neon aura + rainbow bubble + grit durability.
   DELETE cream/beige Bodoni editorial. Deep ink stage. No .js. */
:root {
  --ink: #0b0a12;
  --ink-2: #161422;
  --raised: #1c1830;
  --text: #f6f2ff;
  --muted: #b9b0d0;
  --magenta: #ff2d6a;
  --magenta-deep: #c4164a;
  --lime: #c8ff3d;
  --cobalt: #2d5bff;
  --cobalt-hot: #3d6bff;
  --orange: #ff6b1a;
  --chrome: #c8d0dc;
  --chrome-bright: #e8eef8;
  --pink: #ff4db8;
  --aura-m: rgba(255,45,106,.45);
  --aura-c: rgba(45,91,255,.4);
  --aura-l: rgba(200,255,61,.28);
  --rainbow: linear-gradient(90deg,#ff2d6a,#ff6b1a,#c8ff3d,#2d5bff,#a855f7,#ff2d6a);
  --max: 42rem;
  --max-wide: 68rem;
  --space: 1.25rem;
  --radius: 999px;
  --radius-card: 1.25rem;
  --nav-h: 2.85rem;
  --font-display: "Syne", system-ui, sans-serif;
  --font-body: "Outfit", system-ui, sans-serif;
  --font-meta: "Outfit", system-ui, sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{font-size:100%;-webkit-text-size-adjust:100%;overflow-x:hidden}
body{
  margin:0;min-width:320px;color:var(--text);
  background-color:var(--ink);
  background-image:
    radial-gradient(ellipse 80% 50% at 15% -10%,var(--aura-m),transparent 55%),
    radial-gradient(ellipse 70% 45% at 95% 5%,var(--aura-c),transparent 50%),
    radial-gradient(ellipse 60% 40% at 50% 100%,var(--aura-l),transparent 55%),
    linear-gradient(180deg,var(--ink),var(--ink-2));
  background-attachment:fixed;
  font-family:var(--font-body);font-size:1.05rem;line-height:1.55;
}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--lime);text-underline-offset:.18em}
a:hover{color:var(--chrome-bright)}
a:focus-visible,button:focus-visible,.nav-toggle-label:focus-visible,
input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:2px solid var(--lime);outline-offset:3px
}
.skip{
  position:absolute;left:.75rem;top:.75rem;z-index:20;
  padding:.4rem .7rem;background:var(--raised);color:var(--text);
  text-decoration:none;border:1px solid rgba(255,255,255,.28);border-radius:.5rem;
  transform:translateY(-200%)
}
.skip:focus{transform:none}
.preview-bar{
  margin:0;padding:.45rem var(--space);background:#05040a;color:var(--chrome);
  font-family:var(--font-meta);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;
  text-align:center;border-bottom:3px solid transparent;border-image:var(--rainbow) 1
}
.site-header{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:.75rem 1rem;padding:.95rem var(--space);
  border-bottom:1px solid rgba(255,255,255,.12);
  background:rgba(11,10,18,.85);backdrop-filter:blur(12px);
  position:sticky;top:0;z-index:10
}
.wordmark{display:inline-flex;color:var(--text);text-decoration:none;line-height:1}
.wordmark:hover{color:var(--text)}
.wordmark-stack{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem}
.wordmark-primary{
  font-family:var(--font-display);font-size:1.4rem;font-weight:800;letter-spacing:-.02em;line-height:1.05;
  background:var(--rainbow);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 12px var(--aura-m))
}
.wordmark-sub{
  font-family:var(--font-meta);font-size:.68rem;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--muted)
}
.nav-toggle{position:absolute;opacity:0;pointer-events:none}
.nav-toggle-label{
  display:inline-flex;align-items:center;justify-content:center;min-height:var(--nav-h);
  padding:0 1rem;border:1px solid var(--magenta);border-radius:var(--radius);
  background:rgba(255,45,106,.15);color:var(--text);font-family:var(--font-meta);
  font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;
  box-shadow:0 0 20px var(--aura-m)
}
.primary-nav{width:100%;display:none}
.nav-toggle:checked ~ .primary-nav{display:block}
.primary-nav ul{list-style:none;margin:.45rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.primary-nav a{
  display:flex;align-items:center;justify-content:center;min-height:var(--nav-h);
  padding:.45rem .85rem;border:1px solid transparent;border-radius:var(--radius);
  background:var(--raised);color:var(--text);text-decoration:none;
  font-family:var(--font-meta);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  transition:transform .15s ease,background .15s ease
}
.primary-nav li:nth-child(1) a{box-shadow:inset 0 0 0 1px rgba(255,45,106,.55),0 0 16px rgba(255,45,106,.2)}
.primary-nav li:nth-child(2) a{box-shadow:inset 0 0 0 1px rgba(200,255,61,.5),0 0 16px rgba(200,255,61,.15)}
.primary-nav li:nth-child(3) a{box-shadow:inset 0 0 0 1px rgba(45,91,255,.55),0 0 16px rgba(45,91,255,.2)}
.primary-nav li:nth-child(4) a{box-shadow:inset 0 0 0 1px rgba(255,107,26,.55),0 0 16px rgba(255,107,26,.2)}
.primary-nav a:hover{background:var(--ink-2);color:var(--text);transform:translateY(-1px)}
.primary-nav a[aria-current="page"]{
  background:linear-gradient(135deg,rgba(255,45,106,.35),rgba(45,91,255,.3));
  box-shadow:0 0 24px var(--aura-m),inset 0 0 0 1px var(--magenta);color:var(--text)
}
.wrap{width:min(100% - 2 * var(--space),var(--max));margin-inline:auto}
.wrap-wide{width:min(100% - 2 * var(--space),var(--max-wide));margin-inline:auto}
.kicker,.issue-meta,.plate-label,.brand-line{
  font-family:var(--font-meta);font-size:.72rem;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--lime);margin:0 0 .75rem
}
h1,h2,h3{font-family:var(--font-display);font-weight:800;line-height:1.08;letter-spacing:-.03em;margin:0 0 .75rem;color:var(--text)}
h1{font-size:clamp(2.2rem,5.8vw,3.75rem)}
h2{font-size:clamp(1.55rem,3.2vw,2.2rem)}
h3{font-size:1.2rem}
.lede,.entry-note{font-size:1.08rem;color:var(--muted);max-width:36rem}
.cta-row{margin:1.25rem 0 0;display:flex;flex-wrap:wrap;gap:.75rem}
.btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:3.1rem;padding:.75rem 1.5rem;
  background:linear-gradient(160deg,#ff5a8a 0%,var(--magenta) 45%,var(--magenta-deep) 100%);
  color:#fff;text-decoration:none;font-family:var(--font-meta);font-size:.78rem;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius);
  box-shadow:0 0 0 1px rgba(255,45,106,.4),0 8px 28px var(--aura-m),inset 0 1px 0 rgba(255,255,255,.35);
  transition:transform .15s ease,box-shadow .15s ease
}
.btn:hover{
  background:linear-gradient(160deg,#ff7aa3 0%,#ff2d6a 50%,#a80e3c 100%);color:#fff;transform:translateY(-2px);
  box-shadow:0 0 0 1px rgba(255,45,106,.55),0 12px 36px var(--aura-m),inset 0 1px 0 rgba(255,255,255,.4)
}
.btn-ghost{
  background:transparent;color:var(--lime);border:1px solid var(--lime);box-shadow:0 0 20px var(--aura-l)
}
.btn-ghost:hover{background:rgba(200,255,61,.12);color:var(--chrome-bright);border-color:var(--chrome-bright)}
.btn-lime{
  background:linear-gradient(160deg,#e8ff8a 0%,var(--lime) 50%,#9acc20 100%);color:var(--ink);
  border-color:rgba(255,255,255,.3);
  box-shadow:0 0 0 1px rgba(200,255,61,.45),0 8px 28px var(--aura-l),inset 0 1px 0 rgba(255,255,255,.5)
}
.lookbook-fold{
  padding:1.5rem 0 2rem;min-height:calc(900px - 6.75rem);border-bottom:1px solid rgba(255,255,255,.12);position:relative;display:flex;align-items:center
}
.lookbook-fold .wrap-wide{width:min(100% - 2 * var(--space),var(--max-wide));margin-inline:auto}
.lookbook-fold::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(circle at 80% 40%,var(--aura-c),transparent 40%),radial-gradient(circle at 20% 70%,var(--aura-m),transparent 35%)
}
.lookbook-fold > *{position:relative;z-index:1}
.fold-grid{display:grid;gap:1.5rem;align-items:end}
.brand-line{color:var(--chrome)}
.brand-line span{color:var(--magenta)}
.fold-copy h1{margin-bottom:.85rem;text-shadow:0 0 40px var(--aura-m)}
.fold-plate{
  margin:0;position:relative;background:var(--ink);border-radius:var(--radius-card);overflow:hidden;
  box-shadow:0 0 40px var(--aura-m),0 0 80px var(--aura-c)
}
.fold-plate::before{
  content:"";position:absolute;inset:-2px;border-radius:inherit;padding:2px;background:var(--rainbow);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:2
}
.fold-plate img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:contrast(1.08) saturate(1.15)}
.fold-plate::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:linear-gradient(180deg,transparent 55%,rgba(11,10,18,.55))
}
.fold-plate figcaption,.plate-credit,.hero-photo-credit{
  margin:.55rem 0 0;font-family:var(--font-meta);font-size:.7rem;letter-spacing:.06em;color:var(--muted)
}
.section{padding:2.5rem 0}
.section.band{
  background:linear-gradient(135deg,rgba(255,45,106,.18),rgba(45,91,255,.16) 50%,rgba(200,255,61,.1));
  border-block:1px solid rgba(255,255,255,.12);box-shadow:inset 0 0 80px rgba(255,45,106,.08)
}
.section.band-cobalt{
  background:linear-gradient(120deg,rgba(45,91,255,.28),rgba(168,85,247,.18));
  border-block:1px solid rgba(45,91,255,.35)
}
.section.band-lime{
  background:linear-gradient(120deg,rgba(200,255,61,.14),rgba(255,107,26,.12));
  border-block:1px solid rgba(200,255,61,.3)
}
.section-head{
  display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.75rem;
  margin-bottom:1.25rem;padding-bottom:.85rem;border-bottom:2px solid transparent;border-image:var(--rainbow) 1
}
.section-head h2{margin:0}
.section-head a{color:var(--chrome);font-family:var(--font-meta);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-decoration:none}
.section-head a:hover{color:var(--lime)}
.plate-grid{display:grid;grid-template-columns:1fr;gap:1.1rem}
.plate{
  margin:0;background:var(--raised);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-card);
  overflow:hidden;position:relative;box-shadow:0 12px 32px rgba(0,0,0,.35);
  transition:transform .2s ease,box-shadow .2s ease
}
.plate:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(255,45,106,.25)}
.plate.bubble{border-radius:1.75rem}
.plate.bubble-magenta{box-shadow:0 0 0 2px rgba(255,45,106,.55),0 12px 36px var(--aura-m)}
.plate.bubble-lime{box-shadow:0 0 0 2px rgba(200,255,61,.5),0 12px 36px var(--aura-l)}
.plate.bubble-cobalt{box-shadow:0 0 0 2px rgba(45,91,255,.55),0 12px 36px var(--aura-c)}
.plate.bubble-orange{box-shadow:0 0 0 2px rgba(255,107,26,.55),0 12px 36px rgba(255,107,26,.35)}
.plate.bubble-chrome{box-shadow:0 0 0 2px rgba(200,208,220,.55),0 12px 36px rgba(200,208,220,.2)}
.plate img{width:100%;aspect-ratio:1/1;object-fit:cover;filter:contrast(1.06) saturate(1.2)}
.plate.wide img{aspect-ratio:16/10}
.plate figcaption{
  padding:.85rem 1rem 1rem;border-top:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg,rgba(28,24,48,.95),rgba(11,10,18,.98))
}
.plate-label{margin:0 0 .25rem;color:var(--magenta)}
.plate.bubble-lime .plate-label{color:var(--lime)}
.plate.bubble-cobalt .plate-label{color:var(--cobalt-hot)}
.plate.bubble-orange .plate-label{color:var(--orange)}
.plate.bubble-chrome .plate-label{color:var(--chrome)}
.plate figcaption p{margin:0;font-size:.92rem;color:var(--muted)}
.menu-split{display:grid;gap:1.5rem}
.menu-block{
  padding:1.25rem;background:var(--raised);border-radius:var(--radius-card);
  border:1px solid rgba(255,255,255,.12);box-shadow:0 0 30px rgba(45,91,255,.12)
}
.menu-block:first-child{box-shadow:0 0 30px var(--aura-m);border-color:rgba(255,45,106,.35)}
.menu-block:last-child{box-shadow:0 0 30px var(--aura-l);border-color:rgba(200,255,61,.3)}
.menu-block h2,.menu-block h3{margin-top:0;padding-bottom:.5rem;border-bottom:2px solid transparent;border-image:var(--rainbow) 1}
.menu-table{width:100%;border-collapse:collapse;font-size:.95rem}
.menu-table th,.menu-table td{padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.12);text-align:left;vertical-align:top}
.menu-table th{font-family:var(--font-meta);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}
.menu-table .price{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700;text-align:right;color:var(--lime)}
.menu-table .dur{color:var(--muted);font-size:.85rem;white-space:nowrap}
.price-note,.form-note{font-size:.92rem;color:var(--muted)}
.studio-card{
  display:grid;gap:1rem;padding:1.5rem;
  background:linear-gradient(145deg,rgba(255,45,106,.2),transparent 40%),linear-gradient(225deg,rgba(45,91,255,.25),transparent 45%),var(--ink-2);
  color:var(--text);border:1px solid rgba(255,255,255,.28);border-radius:var(--radius-card);
  box-shadow:0 0 0 1px rgba(200,255,61,.15),0 20px 50px rgba(0,0,0,.45);position:relative;overflow:hidden
}
.studio-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--rainbow)}
.studio-card a{color:var(--lime)}
.studio-card a:hover{color:var(--chrome-bright)}
.studio-card h2,.studio-card h3{color:var(--text);margin-top:0}
.studio-card .kicker{color:var(--chrome)}
.hours-list{list-style:none;margin:0;padding:0;display:grid;gap:.25rem;font-variant-numeric:tabular-nums}
.hours-list li{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(255,255,255,.12);padding:.35rem 0}
.brand-note{
  padding:1.15rem 1.3rem;border-left:4px solid var(--lime);background:rgba(200,255,61,.08);
  border-radius:0 var(--radius-card) var(--radius-card) 0;box-shadow:0 0 24px var(--aura-l)
}
.brand-note p{margin:0;font-family:var(--font-display);font-weight:700;font-size:1.15rem;line-height:1.35;color:var(--text)}
.media-block{margin:0;position:relative}
.scene-photo{width:100%;max-height:22rem;object-fit:cover;filter:contrast(1.06) saturate(1.15);border-bottom:3px solid transparent;border-image:var(--rainbow) 1}
.hero-compact{padding:1.75rem 0 .5rem}
.contact-form{display:grid;gap:.85rem;max-width:28rem}
.contact-form label{display:grid;gap:.35rem;font-family:var(--font-meta);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--chrome)}
.contact-form input,.contact-form textarea,.contact-form select{
  width:100%;padding:.75rem .85rem;border:1px solid rgba(255,255,255,.28);border-radius:.75rem;
  background:var(--raised);color:var(--text);font:inherit;text-transform:none;letter-spacing:normal;
  font-family:var(--font-body);font-size:1rem;font-weight:400
}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted)}
.site-footer{
  margin-top:2rem;padding:1.75rem var(--space) 2.25rem;border-top:3px solid transparent;
  border-image:var(--rainbow) 1;background:#05040a;color:var(--chrome)
}
.site-footer a{color:var(--lime)}
.site-footer a:hover{color:var(--chrome-bright)}
.site-footer .footer-grid{width:min(100%,var(--max-wide));margin-inline:auto;display:grid;gap:1rem}
.site-footer p{margin:0;font-size:.9rem}
.site-footer .tiny{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:#6e6680}
.lede-below{margin:1.5rem auto 0;max-width:var(--max-wide);padding-inline:var(--space);color:var(--muted)}
.grit-proof{display:grid;gap:.75rem;grid-template-columns:1fr;margin-top:1.25rem}
.grit-chip{
  display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-radius:var(--radius);
  background:var(--raised);border:1px solid rgba(255,255,255,.12);
  font-family:var(--font-meta);font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase
}
.grit-chip .dot{width:.65rem;height:.65rem;border-radius:50%;flex-shrink:0;box-shadow:0 0 12px currentColor}
.grit-chip.magenta{color:var(--magenta);box-shadow:0 0 20px var(--aura-m)}
.grit-chip.lime{color:var(--lime);box-shadow:0 0 20px var(--aura-l)}
.grit-chip.cobalt{color:var(--cobalt-hot);box-shadow:0 0 20px var(--aura-c)}
.grit-chip.orange{color:var(--orange);box-shadow:0 0 20px rgba(255,107,26,.35)}
.grit-chip.magenta .dot{background:var(--magenta);color:var(--magenta)}
.grit-chip.lime .dot{background:var(--lime);color:var(--lime)}
.grit-chip.cobalt .dot{background:var(--cobalt);color:var(--cobalt)}
.grit-chip.orange .dot{background:var(--orange);color:var(--orange)}
@media (min-width:560px){.grit-proof{grid-template-columns:1fr 1fr}}
@media (min-width:700px){
  .plate-grid{grid-template-columns:1fr 1fr}
  .plate.feature{grid-column:1/-1}
  .menu-split{grid-template-columns:1fr 1fr;gap:2rem}
  .studio-card{grid-template-columns:1.2fr 1fr;align-items:start}
}
@media (min-width:900px){
  .nav-toggle-label{display:none}
  .primary-nav{display:block;width:auto}
  .primary-nav ul{margin:0;display:flex;gap:.45rem}
  .primary-nav a{min-width:6.75rem}
  .fold-grid{grid-template-columns:1.05fr .95fr;gap:2rem;align-items:end}
  .plate-grid{grid-template-columns:repeat(3,1fr)}
  .plate.feature{grid-column:span 2}
  .plate.feature img{aspect-ratio:16/11}
}
