
/* HTMM presentation layer — owned exclusively by the theme. */

/* Shared */
.htmm-so-kicker{font:700 .7rem/1.2 monospace;letter-spacing:.13em;text-transform:uppercase;color:var(--orange);margin-bottom:10px}
.htmm-so-section{padding:0}
.htmm-so-section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:34px}
.htmm-so-section-head h2{font-size:clamp(2.8rem,4.7vw,5rem);line-height:.93;letter-spacing:-.055em;margin:5px 0 0;max-width:850px}
.htmm-so-section-head>p{max-width:430px;color:var(--muted);line-height:1.58;margin:0}
.htmm-so-btn,.htmm-pagehero__button{display:inline-block;padding:14px 18px;border:2px solid var(--ink);border-radius:6px;text-decoration:none;font-size:.76rem;font-weight:900;text-transform:uppercase}
.htmm-so-btn--dark{background:var(--ink);color:#fff}
.htmm-so-more{margin-top:24px;font-weight:700}

/* FULL-BLEED HERO BREAKOUT
   The parent row is normal width. The widget alone breaks out. */
.entry-content .panel-grid.htmm-full-bleed .htmm-homehero,
.entry-content .panel-grid.htmm-full-bleed .htmm-pagehero{
  position:relative;
  left:50%;
  width:100vw;
  max-width:none;
  margin-left:-50vw;
  margin-right:0;
  border-radius:0;
  overflow:hidden;
}

/* Home hero */
.htmm-homehero{background:var(--paper);border-bottom:1px solid var(--line)}
.htmm-homehero__inner{
  width:min(calc(100% - 64px),var(--content));
  min-height:680px;margin:auto;padding:58px 0;
  display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center
}
.htmm-homehero h1{font-size:clamp(4rem,6.2vw,7rem);line-height:.85;letter-spacing:-.07em;margin:12px 0 24px}
.htmm-homehero h1 em{font-style:normal;color:var(--orange)}
.htmm-homehero__copy>p{max-width:600px;font-size:1.12rem;line-height:1.58;color:#302e2a}
.htmm-homehero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.htmm-homehero__primary,.htmm-homehero__secondary{padding:14px 18px;border:2px solid var(--ink);border-radius:6px;text-decoration:none;font-size:.76rem;font-weight:900;text-transform:uppercase}
.htmm-homehero__primary{background:var(--ink);color:#fff}
.htmm-homehero__status{display:flex;gap:7px;flex-wrap:wrap;margin-top:24px}
.htmm-homehero__status span{font:700 .57rem monospace;border:1px solid #bdb5aa;padding:6px 8px;background:#faf7f1}
.htmm-homehero__scene{position:relative;min-height:545px}
.htmm-homehero__vinyl{position:absolute;width:410px;aspect-ratio:1;border-radius:50%;right:0;top:28px;background:radial-gradient(circle,var(--lime) 0 8%,#151515 8.5% 15%,#050505 15.5% 100%);box-shadow:0 28px 55px #0003}
.htmm-homehero__vinyl:after{content:"";position:absolute;inset:8%;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 7px,#ffffff12 7.5px 8px)}
.htmm-homehero__cover{position:absolute;width:325px;aspect-ratio:1;left:35px;top:65px;z-index:4;overflow:hidden;background:#fff;box-shadow:0 26px 50px #0004;transform:rotate(-4deg)}
.htmm-homehero__cover img{width:100%;height:100%;object-fit:cover}
.htmm-homehero__desk{position:absolute;left:0;right:0;bottom:10px;height:165px;background:linear-gradient(145deg,#2a2e2a,#101210);border:1px solid #5d635b;box-shadow:inset 0 0 0 5px #090a09,0 20px 40px #0004;border-radius:14px;padding:17px;z-index:6;display:grid;grid-template-columns:205px 150px 1fr;gap:17px;align-items:center}
.htmm-homehero__display{height:110px;background:#0d1b0a;border:1px solid #53623e;padding:12px;display:flex;flex-direction:column;justify-content:center;box-shadow:inset 0 0 15px #000}
.htmm-homehero__display small,.htmm-homehero__display span{font:.54rem monospace;color:#879b72}.htmm-homehero__display b{font:900 1.3rem monospace;color:var(--lime);margin:5px 0}
.htmm-homehero__controls{display:flex;gap:11px}.htmm-homehero__controls i{width:29px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#858a80 0 8%,#3b3f39 9% 45%,#111 46%);border:2px solid #777c74}
.htmm-homehero__steps{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.htmm-homehero__steps i{height:32px;border-radius:4px;background:#555a53;border:1px solid #777d74}.htmm-homehero__steps i:nth-child(1),.htmm-homehero__steps i:nth-child(4),.htmm-homehero__steps i:nth-child(7),.htmm-homehero__steps i:nth-child(10),.htmm-homehero__steps i:nth-child(14){background:var(--orange)}.htmm-homehero__steps i:nth-child(16){background:var(--lime)}
.htmm-homehero__sticker{position:absolute;right:0;top:18px;width:108px;aspect-ratio:1;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;text-align:center;padding:14px;font-weight:900;font-size:.72rem;z-index:8;transform:rotate(8deg);border:5px solid var(--paper)}
.htmm-homehero__cable{position:absolute;right:-65px;bottom:64px;width:285px;height:185px;border:8px solid var(--orange);border-left-color:transparent;border-top-color:transparent;border-radius:50%;transform:rotate(20deg);z-index:5}

/* Page hero */
.htmm-pagehero{--hero-accent:var(--lime);background:#151715;color:#fff;border-bottom:1px solid #40443e}
.htmm-pagehero--orange{--hero-accent:var(--orange)}
.htmm-pagehero--blue{--hero-accent:#4260ff}
.htmm-pagehero__inner{
  width:min(calc(100% - 64px),var(--content));
  min-height:560px;margin:auto;padding:54px 0;
  display:grid;grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);gap:58px;align-items:center
}
.htmm-pagehero__copy{min-width:0;position:relative;z-index:5}
.htmm-pagehero__copy .htmm-so-kicker{color:var(--hero-accent)}
.htmm-pagehero h1{font-size:clamp(3.2rem,4.7vw,5.4rem);line-height:.9;letter-spacing:-.06em;margin:12px 0 22px;max-width:760px}
.htmm-pagehero__copy>p{max-width:590px;color:#d1d4cf;font-size:1.05rem;line-height:1.6;margin:0}
.htmm-pagehero__button{margin-top:23px;background:var(--hero-accent);color:#111;border-color:var(--hero-accent)}
.htmm-pagehero__scene{position:relative;min-width:0;min-height:420px}

/* Explore rack */
.htmm-pagehero--explore{background:#101416}
.htmm-scene-rack{position:absolute;inset:30px 0;background:#242824;border:5px solid #090a09;border-radius:14px;box-shadow:0 28px 55px #0008;padding:24px;display:grid;grid-template-rows:repeat(4,1fr);gap:9px}
.htmm-rack-channel{background:#333832;border:1px solid #5b6259;display:grid;grid-template-columns:68px 1fr 105px 26px;align-items:center;padding:10px 15px;gap:12px}
.htmm-rack-channel small{font:.58rem monospace;color:#9ca298}.htmm-rack-channel b{font:900 1rem monospace}.htmm-rack-channel span{height:5px;background:#0c0e0c}.htmm-rack-channel span:after{content:"";display:block;width:62%;height:100%;background:var(--hero-accent)}.htmm-rack-channel i{width:18px;aspect-ratio:1;border-radius:50%;background:var(--orange);box-shadow:0 0 12px var(--orange)}
.htmm-rack-meter{position:absolute;right:-10px;top:30px;bottom:30px;width:7px;display:flex;flex-direction:column;gap:4px}.htmm-rack-meter i{flex:1;background:#5b6259}.htmm-rack-meter i:nth-last-child(-n+4){background:var(--orange)}

/* DAWless */
.htmm-scene-groovebox{position:absolute;right:0;top:35px;width:min(100%,500px);padding:22px;background:linear-gradient(145deg,#30342f,#111311);border:1px solid #686e66;border-radius:15px;box-shadow:inset 0 0 0 5px #090a09,0 28px 50px #0007;transform:rotate(-2deg);z-index:3}
.htmm-gb-top,.htmm-gb-footer{font:700 .61rem monospace;letter-spacing:.12em;color:#9da299}
.htmm-gb-screen{height:86px;margin:13px 0 18px;background:#0d1b0a;border:1px solid #4e603b;box-shadow:inset 0 0 18px #000;padding:13px 16px;display:flex;flex-direction:column;justify-content:center}.htmm-gb-screen b{font:900 2.2rem monospace;color:var(--lime)}.htmm-gb-screen span{font:700 .6rem monospace;color:#8fa27a}
.htmm-gb-knobs{display:flex;gap:20px;margin-bottom:17px}.htmm-gb-knobs i{width:42px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#83887e 0 7%,#3b3f39 8% 44%,#111311 45%);border:2px solid #767b72}
.htmm-gb-pads{display:grid;grid-template-columns:repeat(8,1fr);gap:7px}.htmm-gb-pads i{height:32px;border-radius:4px;background:#555a53;border:1px solid #777d74}.htmm-gb-pads i:nth-child(1),.htmm-gb-pads i:nth-child(4),.htmm-gb-pads i:nth-child(7),.htmm-gb-pads i:nth-child(10),.htmm-gb-pads i:nth-child(14){background:var(--lime)}
.htmm-scene-mini-vinyl{position:absolute;width:150px;aspect-ratio:1;border-radius:50%;left:20px;bottom:5px;background:radial-gradient(circle,var(--lime) 0 12%,#111 12.5% 19%,#030403 19.5% 100%);z-index:4}
.htmm-scene-cable--a{position:absolute;right:-35px;bottom:25px;width:250px;height:165px;border:8px solid var(--lime);border-left-color:transparent;border-top-color:transparent;border-radius:50%;transform:rotate(18deg)}

/* Synth */
.htmm-pagehero--synth{background:linear-gradient(100deg,#0d1016,#161922)}
.htmm-scene-modular{position:absolute;inset:30px 0 72px 20px;background:#292d31;border:5px solid #0b0d0f;box-shadow:0 26px 55px #0008;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:40px 12px 18px}
.htmm-mod-title{position:absolute;left:18px;top:12px;font:700 .65rem monospace;color:#b3b7bb}
.htmm-mod-column{border-left:1px solid #555b61;padding:12px;display:flex;flex-direction:column;align-items:center;gap:18px}.htmm-mod-column b{font:.7rem monospace;color:#d7dadc}.htmm-mod-column i{width:44px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#72777b 0 8%,#25292c 9% 50%,#0c0e10 51%);border:2px solid #7f8589}.htmm-mod-column span{width:14px;aspect-ratio:1;border-radius:50%;background:var(--hero-accent);box-shadow:0 0 12px var(--hero-accent)}
.htmm-patch-cable{position:absolute;border:7px solid var(--hero-accent);border-top-color:transparent;border-radius:50%;z-index:5}.htmm-patch-cable--1{width:245px;height:170px;left:70px;top:105px;transform:rotate(18deg)}.htmm-patch-cable--2{width:205px;height:135px;right:40px;top:160px;border-color:var(--orange);border-top-color:transparent;transform:rotate(-12deg)}
.htmm-keybed{position:absolute;left:45px;right:0;bottom:0;height:82px;display:grid;grid-template-columns:repeat(12,1fr);gap:3px}.htmm-keybed i{background:#f2eee5;border:1px solid #777}.htmm-keybed i:nth-child(2),.htmm-keybed i:nth-child(4),.htmm-keybed i:nth-child(7),.htmm-keybed i:nth-child(9),.htmm-keybed i:nth-child(11){background:#151719;height:55px;z-index:2}

/* Guide */
.htmm-pagehero--guide{background:linear-gradient(120deg,#171917,#20241b)}
.htmm-scene-flow{position:absolute;left:0;right:0;top:45px;bottom:50px;display:flex;align-items:center;justify-content:center;gap:8px}
.htmm-flow-step{width:108px;aspect-ratio:1;background:#2a2e29;border:1px solid #596057;border-radius:10px;padding:12px;display:flex;flex-direction:column;justify-content:center}.htmm-flow-step small{font:700 .6rem monospace;color:var(--lime)}.htmm-flow-step b{font:900 1rem monospace;margin:4px 0}.htmm-flow-step span{font:.54rem monospace;color:#9fa49c}
.htmm-flow-line{height:4px;flex:1;min-width:20px;background:var(--lime)}.htmm-flow-meter{position:absolute;left:10px;right:10px;bottom:0;height:76px;display:flex;align-items:end;gap:7px}.htmm-flow-meter i{flex:1;background:var(--lime);opacity:.75}.htmm-flow-meter i:nth-child(3n){height:70%}.htmm-flow-meter i:nth-child(3n+1){height:28%}.htmm-flow-meter i:nth-child(3n+2){height:48%}

/* About / release */
.htmm-pagehero--about{background:#201c1b}
.htmm-scene-release{position:absolute;inset:0}.htmm-release-vinyl{position:absolute;width:365px;aspect-ratio:1;border-radius:50%;right:-20px;top:20px;background:radial-gradient(circle,#f4efe7 0 5%,var(--orange) 5.5% 13%,#090909 13.5% 100%);box-shadow:0 28px 50px #0007}.htmm-release-vinyl:after{content:"";position:absolute;inset:8%;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 7px,#ffffff0e 7.5px 8px)}
.htmm-release-sleeve{position:absolute;width:310px;aspect-ratio:1;left:10px;top:65px;background:var(--orange);color:#111;padding:26px;box-shadow:0 25px 50px #0007;transform:rotate(-5deg);z-index:3;display:flex;flex-direction:column}.htmm-release-sleeve small{font:700 .64rem monospace}.htmm-release-sleeve strong{font-size:2.9rem;line-height:.85;letter-spacing:-.06em;margin:auto 0}.htmm-release-sleeve span{font:700 .58rem monospace}.htmm-release-sticker{position:absolute;right:20px;bottom:20px;width:104px;aspect-ratio:1;border-radius:50%;background:var(--blue);display:grid;place-items:center;text-align:center;font-weight:900;z-index:5;transform:rotate(9deg)}

/* Ticker */
.htmm-ticker{width:100%;overflow:hidden;background:var(--ink);color:#fff;border-radius:999px}
.htmm-ticker__track{display:flex;align-items:center;gap:32px;width:max-content;padding:14px 20px;white-space:nowrap;animation:htmm-scroll var(--htmm-ticker-speed,26s) linear infinite;font-weight:900;font-size:.76rem;text-transform:uppercase}
.htmm-ticker__track span:after{content:"◆";color:var(--lime);margin-left:32px;font-size:.6rem}
.htmm-ticker--pause:hover .htmm-ticker__track{animation-play-state:paused}
@keyframes htmm-scroll{to{transform:translateX(-50%)}}

/* Topics */
.htmm-topics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.htmm-topic{min-height:155px;border:1px solid var(--line);background:var(--paper2);padding:18px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;transition:.18s}
.htmm-topic:hover{background:var(--lime);transform:translateY(-3px)}
.htmm-topic__dial{width:42px;aspect-ratio:1;border-radius:50%;background:var(--panel);border:3px solid #777c74;box-shadow:inset 0 0 0 5px #242824}
.htmm-topic small{display:block;font:700 .61rem monospace;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.htmm-topic strong{font-size:1.12rem}

/* Manifest */
.htmm-manifest{background:var(--panel);color:#fff;border-radius:16px;padding:48px;display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:center}
.htmm-manifest h2{font-size:clamp(2.5rem,4.3vw,4.6rem);line-height:.94;letter-spacing:-.055em;margin:6px 0 17px}.htmm-manifest__text{color:#c9cbc6;line-height:1.64}
.htmm-manifest__squares{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.htmm-manifest__square{aspect-ratio:1;border:1px solid #61665e;display:grid;place-items:center;background:#252825}.htmm-manifest__square--1{background:var(--orange)}.htmm-manifest__square--2{border-radius:50%;background:radial-gradient(circle,var(--lime) 0 15%,#111 16% 100%)}.htmm-manifest__square--3{background:var(--blue)}.htmm-manifest__square span{font:700 .61rem monospace}

/* CTA */
.htmm-cta{padding:38px 42px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:30px;border:1px solid var(--line);min-height:170px}.htmm-cta h2{font-size:clamp(2rem,3.7vw,3.6rem);line-height:.96;letter-spacing:-.05em;margin:6px 0 10px}.htmm-cta p{max-width:680px;line-height:1.58}.htmm-cta--dark{background:var(--panel);color:#fff}.htmm-cta--lime{background:var(--lime)}.htmm-cta--paper{background:var(--paper2)}

/* Responsive */
@media(max-width:980px){
  .htmm-homehero__inner,.htmm-pagehero__inner{width:calc(100% - 40px);grid-template-columns:1fr;min-height:0}
  .htmm-homehero__scene{min-height:530px}.htmm-pagehero__scene{min-height:400px}
  .htmm-topics{grid-template-columns:repeat(2,1fr)}
  .htmm-manifest{grid-template-columns:1fr}
}
@media(max-width:640px){
  .htmm-homehero__inner,.htmm-pagehero__inner{width:calc(100% - 24px);padding:34px 0}
  .htmm-homehero h1{font-size:clamp(3.4rem,15vw,4.8rem)}
  .htmm-pagehero h1{font-size:clamp(2.8rem,12vw,4rem)}
  .htmm-homehero__scene{min-height:420px}.htmm-pagehero__scene{min-height:320px}
  .htmm-homehero__vinyl{width:285px;right:-55px}.htmm-homehero__cover{width:235px;left:0}.htmm-homehero__desk{height:132px;grid-template-columns:120px 1fr}.htmm-homehero__controls{display:none}.htmm-homehero__steps{grid-template-columns:repeat(4,1fr)}
  .htmm-scene-groovebox{width:95%}.htmm-gb-pads{grid-template-columns:repeat(4,1fr)}
  .htmm-release-sleeve{width:225px;left:0}.htmm-release-sleeve strong{font-size:2.1rem}.htmm-release-vinyl{width:260px;right:-70px}
  .htmm-rack-channel{grid-template-columns:52px 1fr 20px}.htmm-rack-channel span{display:none}
  .htmm-flow-step{width:74px}.htmm-flow-step span{display:none}
  .htmm-topics{grid-template-columns:1fr}
  .htmm-manifest{padding:28px 22px}
  .htmm-cta{display:block;padding:28px 22px}.htmm-cta .htmm-so-btn{margin-top:14px}
}
@media(prefers-reduced-motion:reduce){.htmm-ticker__track{animation:none;flex-wrap:wrap;width:auto;white-space:normal}}
