/* Modern Repairs — Texas Sites demo
   Visual language retained from the original Site 2 concept:
   deep plum-black, warm coral/amber accents, condensed display type,
   mono metadata, subtle motion and editorial card layouts.
*/

:root {
  --ink:#14101d; --ink-2:#1c1628; --ink-3:#271d36;
  --line:rgba(157,143,179,.16); --line-2:rgba(157,143,179,.28);
  --paper:#f3eef7; --mauve:#9d8fb3; --mauve-dim:#7a6d92;
  --coral:#ff6a5c; --coral-2:#ff8a72; --amber:#ffc24b;
  --glow-coral:rgba(255,106,92,.35); --glow-amber:rgba(255,194,75,.28);
  --radius:14px; --radius-s:9px; --maxw:1200px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --ff-display:"Anton","Arial Narrow",sans-serif;
  --ff-body:"Hanken Grotesk",system-ui,sans-serif;
  --ff-mono:"DM Mono",ui-monospace,monospace;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--ff-body);font-size:1.02rem;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{max-width:100%;display:block} a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--ff-display);font-weight:400;line-height:.94;letter-spacing:.01em;text-transform:uppercase;margin:0}
p{margin:0 0 1rem}
::selection{background:var(--coral);color:var(--ink)}

.skip-link{position:absolute;left:12px;top:-60px;z-index:2000;background:var(--coral);color:var(--ink);font-family:var(--ff-mono);font-size:.82rem;font-weight:500;padding:.6rem 1rem;border-radius:8px;transition:top .2s var(--ease)}
.skip-link:focus{top:12px}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:4px}

.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(1.1rem,4vw,2.4rem)}
.section{padding-block:clamp(3.6rem,8vw,6.4rem);position:relative}
.eyebrow{font-family:var(--ff-mono);font-size:.74rem;letter-spacing:.28em;text-transform:uppercase;color:var(--coral);display:inline-flex;align-items:center;gap:.6rem;margin:0 0 1.1rem;white-space:nowrap}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--coral);display:inline-block}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.4rem;margin-bottom:clamp(2rem,5vw,3.2rem)}
.sec-head h2{font-size:clamp(2.5rem,7vw,5rem)}
.sec-head p{color:var(--mauve);max-width:42ch;margin:0}
.area-head-copy{display:grid;gap:.8rem;justify-items:start;max-width:42ch}
.map-link{display:inline-flex;align-items:center;gap:.45rem;color:var(--paper);font:700 .72rem/1 "DM Mono",monospace;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;border-bottom:1px solid var(--coral);padding-bottom:.28rem;transition:color .2s ease,border-color .2s ease}
.map-link svg{width:15px;height:15px}
.map-link:hover{color:var(--coral-2);border-color:var(--coral-2)}

.btn-amp{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--ff-body);font-weight:700;font-size:.92rem;letter-spacing:.01em;line-height:1;padding:.95rem 1.5rem;border-radius:100px;border:1px solid transparent;cursor:pointer;transition:transform .25s var(--ease),background .25s var(--ease),box-shadow .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease);background:var(--coral);color:#241009;box-shadow:0 10px 30px -12px var(--glow-coral)}
.btn-amp svg{width:17px;height:17px}.btn-amp:hover{transform:translateY(-2px);background:var(--coral-2)}.btn-amp:active{transform:translateY(0)}
.btn-ghost{background:transparent;color:var(--paper);border-color:var(--line-2);box-shadow:none}.btn-ghost:hover{background:rgba(243,238,247,.06);border-color:var(--paper);transform:translateY(-2px)}
.btn-sm{padding:.68rem 1.05rem;font-size:.82rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:.7rem}

.site-header{position:fixed;inset:0 0 auto 0;z-index:1000;transition:background .3s var(--ease),border-color .3s var(--ease),backdrop-filter .3s var(--ease);border-bottom:1px solid transparent}
.site-header.scrolled{background:rgba(20,16,29,.82);backdrop-filter:saturate(160%) blur(14px);border-bottom-color:var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:74px}
.brand{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--ff-display);font-size:1.5rem;letter-spacing:.04em;text-transform:uppercase;color:var(--paper)}
.brand .mark{width:30px;height:30px;color:var(--coral);flex:none}
.nav-links{display:flex;align-items:center;gap:.3rem;list-style:none;margin:0;padding:0}
.nav-links a{font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--mauve);padding:.55rem .8rem;border-radius:8px;transition:color .2s var(--ease),background .2s var(--ease)}
.nav-links a:hover{color:var(--paper);background:rgba(243,238,247,.05)}
.nav-cta{display:inline-flex;align-items:center;gap:.7rem}
.nav-toggle{display:none;width:46px;height:46px;border:1px solid var(--line-2);background:rgba(243,238,247,.04);border-radius:10px;color:var(--paper);cursor:pointer;align-items:center;justify-content:center}
.nav-toggle svg{width:22px;height:22px}.nav-toggle .ic-close{display:none}.nav-toggle[aria-expanded="true"] .ic-open{display:none}.nav-toggle[aria-expanded="true"] .ic-close{display:block}
@media(max-width:900px){
  .nav-toggle{display:inline-flex}.nav-panel{position:fixed;inset:74px 0 auto 0;background:rgba(16,12,24,.98);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);padding:1.2rem clamp(1.1rem,4vw,2.4rem) 1.8rem;display:grid;gap:1rem;transform:translateY(-140%);transition:transform .38s var(--ease);max-height:calc(100vh - 74px);overflow-y:auto}
  .nav-panel.open{transform:translateY(0)}.nav-links{flex-direction:column;align-items:stretch;gap:.1rem}.nav-links a{padding:.85rem .6rem;font-size:1rem;border-bottom:1px solid var(--line);border-radius:0}.nav-cta{justify-content:stretch}.nav-cta .btn-amp{flex:1}
}
@media(min-width:901px){.nav-panel{display:contents}}

.hero{position:relative;padding-top:130px;padding-bottom:clamp(3rem,7vw,5rem);overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 55% at 78% 12%,var(--glow-coral),transparent 60%),radial-gradient(50% 50% at 12% 90%,var(--glow-amber),transparent 62%);pointer-events:none;z-index:0}
.hero .wrap{position:relative;z-index:1}.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.hero-tag{font-family:var(--ff-mono);font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--amber);margin-bottom:1.4rem;display:inline-flex;align-items:center;gap:.7rem}
.pulse{width:9px;height:9px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 0 var(--glow-coral);animation:pulse 2.2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,106,92,.5)}70%{box-shadow:0 0 0 12px rgba(255,106,92,0)}100%{box-shadow:0 0 0 0 rgba(255,106,92,0)}}
.hero h1{font-size:clamp(3.6rem,13vw,9rem);line-height:.86;margin:0 0 1.4rem}
.hero h1 .thin{display:block;font-family:var(--ff-body);font-weight:800;font-size:clamp(1rem,3.4vw,1.55rem);letter-spacing:.02em;text-transform:none;color:var(--mauve);margin-bottom:.5rem}
.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:2px var(--coral);text-stroke:2px var(--coral)}
.hero-lede{color:var(--mauve);max-width:46ch;font-size:1.08rem;margin-bottom:1.8rem}
.stream-row{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:1.6rem}
.stream-label{font-family:var(--ff-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mauve-dim);width:100%;margin-bottom:.1rem}
.stream{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem .95rem;border:1px solid var(--line-2);border-radius:100px;font-size:.82rem;font-weight:600;color:var(--paper);background:rgba(243,238,247,.03);transition:transform .22s var(--ease),border-color .22s var(--ease),background .22s var(--ease)}
.stream svg{width:18px;height:18px}.stream:hover{transform:translateY(-2px);border-color:var(--coral);background:rgba(255,106,92,.08)}

.hero-art{position:relative}.cover{position:relative;aspect-ratio:1;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line-2);box-shadow:0 40px 90px -40px rgba(0,0,0,.9),0 0 0 1px rgba(255,106,92,.08)}
.cover img{width:100%;height:100%;object-fit:cover}.cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(20,16,29,.7))}
.cover-badge{position:absolute;top:14px;left:14px;z-index:2;font-family:var(--ff-mono);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;background:var(--coral);color:#241009;padding:.4rem .7rem;border-radius:100px;font-weight:500}
.cover-meta{position:absolute;left:16px;right:16px;bottom:14px;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.cover-meta .ct{font-family:var(--ff-display);font-size:1.5rem;text-transform:uppercase;line-height:.95}.cover-meta .cn{font-family:var(--ff-mono);font-size:.72rem;color:var(--amber);letter-spacing:.12em}
.blueprint{position:absolute;right:-8%;top:50%;transform:translateY(-50%);width:42%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,194,75,.18);background:radial-gradient(circle at center,rgba(255,106,92,.07),rgba(39,29,54,.2) 42%,transparent 70%);box-shadow:inset 0 0 0 1px rgba(243,238,247,.035),0 30px 60px -30px rgba(0,0,0,.55);z-index:-1;animation:blueprintDrift 18s ease-in-out infinite}
.blueprint::before{content:"";position:absolute;inset:9%;border-radius:50%;border:1px dashed rgba(243,238,247,.13);background:repeating-conic-gradient(from 0deg,rgba(255,194,75,.12) 0 1deg,transparent 1deg 15deg);mask:radial-gradient(circle,transparent 0 63%,#000 64% 66%,transparent 67%);-webkit-mask:radial-gradient(circle,transparent 0 63%,#000 64% 66%,transparent 67%)}
.blueprint::after{content:"";position:absolute;inset:23%;border-radius:50%;border:1px solid rgba(255,106,92,.18);background:linear-gradient(90deg,transparent 49.7%,rgba(243,238,247,.12) 50%,transparent 50.3%),linear-gradient(0deg,transparent 49.7%,rgba(243,238,247,.12) 50%,transparent 50.3%)}
.bp-ring{position:absolute;border-radius:50%;pointer-events:none}.bp-ring-1{inset:14%;border:1px solid rgba(243,238,247,.08)}.bp-ring-2{inset:31%;border:1px solid rgba(255,194,75,.12)}
.bp-cross{position:absolute;left:50%;top:50%;width:10px;height:10px;transform:translate(-50%,-50%);border:1px solid var(--coral);border-radius:50%;box-shadow:0 0 0 5px rgba(255,106,92,.06)}
.bp-tick{position:absolute;background:var(--amber);opacity:.55}.bp-tick-top,.bp-tick-bottom{width:1px;height:18px;left:50%;transform:translateX(-50%)}.bp-tick-top{top:4%}.bp-tick-bottom{bottom:4%}.bp-tick-left,.bp-tick-right{height:1px;width:18px;top:50%;transform:translateY(-50%)}.bp-tick-left{left:4%}.bp-tick-right{right:4%}
.bp-label{position:absolute;font-family:var(--ff-mono);font-size:.52rem;letter-spacing:.16em;color:var(--mauve);white-space:nowrap}.bp-label-top{top:16%;left:50%;transform:translateX(-50%)}.bp-label-bottom{bottom:16%;left:50%;transform:translateX(-50%);color:var(--amber)}
@keyframes blueprintDrift{0%,100%{transform:translateY(-50%) rotate(-2deg)}50%{transform:translateY(-50%) rotate(2deg)}}
@keyframes spin{to{transform:translateY(-50%) rotate(360deg)}}@media(prefers-reduced-motion:reduce){.vinyl,.pulse{animation:none}}

.marquee{border-block:1px solid var(--line);background:var(--ink-2);overflow:hidden;padding-block:.9rem;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;pointer-events:none}
.marquee-track{display:flex;gap:2.4rem;width:max-content;animation:slide 32s linear infinite;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;pointer-events:none}
.marquee-track span{font-family:var(--ff-display);font-size:1.4rem;letter-spacing:.04em;text-transform:uppercase;color:var(--mauve);display:inline-flex;align-items:center;gap:2.4rem;white-space:nowrap}
.marquee-track span::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--coral);display:inline-block}
@keyframes slide{to{transform:translateX(-50%)}}

.tracks-layout{display:grid;grid-template-columns:300px 1fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.record-card{position:sticky;top:100px;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem}
.record-card .rc-cover{aspect-ratio:1;border-radius:var(--radius-s);overflow:hidden;margin-bottom:1rem;border:1px solid var(--line)}.record-card .rc-cover img{width:100%;height:100%;object-fit:cover}
.record-card h3{font-size:1.9rem;margin-bottom:.3rem}.record-card .rc-meta{font-family:var(--ff-mono);font-size:.74rem;color:var(--mauve);letter-spacing:.05em;margin-bottom:1rem}
.record-card .rc-stats{display:flex;gap:1.2rem;padding-top:1rem;border-top:1px solid var(--line)}.record-card .rc-stats div{display:grid}.record-card .rc-stats b{font-family:var(--ff-display);font-size:1.35rem;color:var(--amber)}.record-card .rc-stats small{font-family:var(--ff-mono);font-size:.64rem;color:var(--mauve-dim);letter-spacing:.1em;text-transform:uppercase}
.tracklist{margin:0;padding:0}.track{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:1rem;padding:.95rem 1rem;border-radius:10px;border:1px solid transparent;transition:background .2s var(--ease),border-color .2s var(--ease)}
.track + .track{border-top:1px solid var(--line)}.track:hover{background:var(--ink-2);border-color:var(--line)}.track:hover + .track{border-top-color:transparent}
.track-title{font-weight:600;font-size:1.05rem}.track-title small{display:block;font-weight:400;font-size:.82rem;color:var(--mauve);font-family:var(--ff-body)}
.track-time{font-family:var(--ff-mono);font-size:.84rem;color:var(--mauve);display:inline-flex;align-items:center;gap:.8rem}.track-time .tag{font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--amber);border:1px solid var(--line-2);padding:.18rem .45rem;border-radius:100px}
.service-icon{width:44px;height:44px;border-radius:10px;background:rgba(255,106,92,.07);border:1px solid var(--line-2);display:grid;place-items:center;color:var(--coral)}.service-icon svg{width:23px;height:23px}


.service-area-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.service-map{margin-top:0}
.service-map-frame{position:relative;width:100%;height:clamp(360px,42vw,560px);overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--ink-2)}
.service-map-frame iframe{display:block;width:100%;height:100%;border:0}
.service-map-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem .2rem 0;color:var(--mauve);font:600 .68rem/1.4 "DM Mono",monospace;text-transform:uppercase;letter-spacing:.06em}
.service-map-foot .map-link{margin-left:auto}
.service-area-list{display:grid;gap:2.4rem;padding-top:.35rem}
.service-area-group{padding-bottom:2rem;border-bottom:1px solid var(--line)}
.service-area-group:last-child{padding-bottom:0;border-bottom:0}
.service-area-group h3{font-size:clamp(1.8rem,3.2vw,2.6rem);margin-bottom:1rem;color:var(--paper)}
.service-area-group p{margin:0;color:var(--mauve);font-size:1rem;line-height:1.9}
@media(max-width:900px){
  .service-area-layout{grid-template-columns:1fr}
  .service-map-frame{height:520px}
}
@media(max-width:700px){
  .service-map-foot{align-items:flex-start;flex-direction:column}
  .service-map-foot .map-link{margin-left:0}
}
.tour{background:var(--ink-2);border-block:1px solid var(--line)}.tour-list{display:grid;gap:.2rem}.tour-row{display:grid;grid-template-columns:130px 1fr auto;align-items:center;gap:1.4rem;padding:1.35rem .4rem;border-bottom:1px solid var(--line);transition:padding-left .25s var(--ease)}.tour-row:first-child{border-top:1px solid var(--line)}.tour-row:hover{padding-left:1rem}
.tour-date{display:grid}.tour-date .d-day{font-family:var(--ff-display);font-size:1.7rem;line-height:.9}.tour-date .d-mo{font-family:var(--ff-mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--amber)}
.tour-place .p-city{font-size:1.15rem;font-weight:700}.tour-place .p-venue{color:var(--mauve);font-size:.9rem}.tour-cta{display:inline-flex;align-items:center;gap:.9rem;justify-self:end}
.tour-status{font-family:var(--ff-mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .6rem;border-radius:100px;border:1px solid var(--line-2)}.tour-status.low{color:var(--amber);border-color:rgba(255,194,75,.4)}.tour-status.onsale{color:#1ed760;border-color:rgba(30,215,96,.35)}

.video-feature{position:relative}.video-stage{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line-2)}
.video-stage img{width:100%;height:100%;object-fit:cover}.video-stage::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,16,29,.25),rgba(20,16,29,.75));transition:opacity .4s var(--ease)}
.video-play{position:absolute;inset:0;margin:auto;z-index:3;width:92px;height:92px;border-radius:50%;border:none;background:var(--coral);color:#241009;display:grid;place-items:center;cursor:pointer;box-shadow:0 0 0 0 var(--glow-coral);animation:pulse 2.4s infinite;transition:transform .25s var(--ease),background .25s var(--ease)}
.video-play svg{width:30px;height:30px;margin-left:4px}.video-play:hover{transform:scale(1.06);background:var(--coral-2)}
.video-caption{position:absolute;left:20px;bottom:18px;right:20px;z-index:3;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.video-caption .vc-title{font-family:var(--ff-display);font-size:clamp(1.4rem,4vw,2.4rem);text-transform:uppercase}.video-caption .vc-sub{font-family:var(--ff-mono);font-size:.74rem;color:var(--amber);letter-spacing:.1em}.video-runtime{font-family:var(--ff-mono);font-size:.78rem;color:var(--paper);background:rgba(20,16,29,.6);padding:.3rem .6rem;border-radius:6px;border:1px solid var(--line-2)}
.video-stage.is-live{cursor:default}.video-stage.is-live .video-play,.video-stage.is-live .video-caption{display:none}.video-stage.is-live::after{opacity:.15}.video-stage.is-live img{filter:saturate(1.05)}
.video-live-bar{position:absolute;left:0;right:0;bottom:0;z-index:4;display:none;align-items:center;gap:.9rem;padding:.9rem 1.1rem;background:linear-gradient(180deg,transparent,rgba(12,9,18,.92))}
.video-stage.is-live .video-live-bar{display:flex}.video-live-bar .lb-eq{display:flex;gap:3px;align-items:flex-end;height:20px}.video-live-bar .lb-eq span{width:3px;background:var(--coral);border-radius:2px;animation:bounce .9s ease-in-out infinite}.video-live-bar .lb-eq span:nth-child(2){animation-delay:-.4s;height:80%}.video-live-bar .lb-eq span:nth-child(3){animation-delay:-.6s;height:60%}.video-live-bar .lb-eq span:nth-child(4){animation-delay:-.2s;height:100%}
.video-live-bar .lb-progress{flex:1;height:4px;border-radius:4px;background:rgba(243,238,247,.15);overflow:hidden}.video-live-bar .lb-progress i{display:block;height:100%;width:0;background:var(--coral);animation:fill 20s linear forwards}@keyframes fill{to{width:68%}}
.video-live-bar .lb-time{font-family:var(--ff-mono);font-size:.74rem;color:var(--mauve)}.video-live-bar .lb-title{font-weight:700;font-size:.9rem}
@media(prefers-reduced-motion:reduce){.video-play{animation:none}.lb-progress i{animation:none;width:40%}.lb-eq span{animation:none}}

.merch-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}.merch-card{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .3s var(--ease),border-color .3s var(--ease);display:flex;flex-direction:column}.merch-card:hover{transform:translateY(-6px);border-color:var(--line-2)}
.merch-media{position:relative;aspect-ratio:1;overflow:hidden}.merch-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.merch-card:hover .merch-media img{transform:scale(1.06)}
.merch-body{padding:1.05rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.merch-cat{font-family:var(--ff-mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mauve-dim)}.merch-name{font-weight:700;font-size:1.02rem;line-height:1.25}.merch-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding-top:.4rem}.merch-price{font-family:var(--ff-mono);font-size:1.05rem;color:var(--amber)}
.review-copy{color:var(--mauve);font-size:.95rem;margin:.2rem 0 .5rem}.review-stars{color:var(--amber);letter-spacing:.12em}.review-media{aspect-ratio:16/10}

.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,4rem);align-items:center}.about-photo{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line-2)}.about-photo img{width:100%;aspect-ratio:4/5;object-fit:cover}.about-photo .badge{position:absolute;left:16px;bottom:16px;font-family:var(--ff-mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;background:rgba(12,9,18,.7);border:1px solid var(--line-2);color:var(--amber);padding:.45rem .7rem;border-radius:100px;backdrop-filter:blur(6px)}
.about-copy h2{font-size:clamp(2.4rem,6vw,4rem);margin-bottom:1.2rem}.about-copy p{color:var(--mauve);font-size:1.06rem}.about-copy p strong{color:var(--paper);font-weight:700}
.members{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem 1.4rem;margin-top:1.8rem;padding-top:1.6rem;border-top:1px solid var(--line)}.member{display:grid}.member b{font-size:1rem}.member small{font-family:var(--ff-mono);font-size:.72rem;color:var(--coral);letter-spacing:.06em}
.about-quote{margin-top:1.8rem;padding:1.2rem 1.4rem;border-left:3px solid var(--coral);background:var(--ink-2);border-radius:0 12px 12px 0}.about-quote p{font-family:var(--ff-body);font-style:italic;color:var(--paper);font-size:1.05rem;margin:0 0 .4rem}.about-quote cite{font-family:var(--ff-mono);font-size:.74rem;color:var(--mauve);font-style:normal;letter-spacing:.05em}

.signup{position:relative;overflow:hidden}.signup .panel{background:radial-gradient(80% 120% at 100% 0%,rgba(255,106,92,.16),transparent 55%),radial-gradient(70% 120% at 0% 100%,rgba(255,194,75,.12),transparent 55%),var(--ink-2);border:1px solid var(--line-2);border-radius:20px;padding:clamp(2rem,5vw,3.6rem);display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(1.6rem,4vw,3rem);align-items:center}
.signup h2{font-size:clamp(2.2rem,6vw,3.8rem);margin-bottom:.8rem}.signup p{color:var(--mauve);margin:0}.signup-form{display:grid;gap:.7rem}.field{display:grid;gap:.35rem}.field label{font-family:var(--ff-mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mauve)}
.field input,.field textarea{width:100%;background:rgba(12,9,18,.5);border:1px solid var(--line-2);color:var(--paper);border-radius:14px;padding:.95rem 1.2rem;font-family:var(--ff-body);font-size:.98rem;transition:border-color .2s var(--ease),background .2s var(--ease);resize:vertical}.field input{border-radius:100px}
.field input::placeholder,.field textarea::placeholder{color:var(--mauve-dim)}.field input:focus,.field textarea:focus{outline:none;border-color:var(--coral);background:rgba(12,9,18,.8)}.field input[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:var(--coral)}
.field .err{font-size:.78rem;color:var(--coral);min-height:1em;font-family:var(--ff-mono)}.form-row{display:flex;gap:.7rem;align-items:flex-start}.form-row .field{flex:1}.form-note{font-size:.8rem;color:var(--mauve-dim)}.form-ok{display:none;align-items:center;gap:.6rem;color:#1ed760;font-weight:600;font-size:.95rem;background:rgba(30,215,96,.08);border:1px solid rgba(30,215,96,.3);padding:.8rem 1rem;border-radius:100px}.form-ok.show{display:inline-flex}.form-ok svg{width:18px;height:18px}
.contact-details{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.7rem;padding-top:1.3rem;border-top:1px solid var(--line)}.contact-details div{display:grid;gap:.2rem}.contact-details span{font-family:var(--ff-mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mauve-dim)}.contact-details strong{font-size:.88rem;color:var(--paper)}

.site-footer{border-top:1px solid var(--line);background:var(--ink);padding-top:clamp(3rem,6vw,4.5rem)}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:2.2rem;padding-bottom:2.6rem;border-bottom:1px solid var(--line)}.footer-brand .brand{font-size:2rem;margin-bottom:1rem}.footer-brand p{color:var(--mauve);max-width:34ch}
.footer-col h4{font-family:var(--ff-mono);font-weight:500;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mauve-dim);margin-bottom:1rem}.footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.footer-col a{color:var(--mauve);font-size:.94rem;transition:color .2s var(--ease)}.footer-col a:hover{color:var(--paper)}
.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.6rem 2.2rem}.footer-bottom p{margin:0;font-size:.84rem;color:var(--mauve-dim);font-family:var(--ff-mono);letter-spacing:.02em}.footer-bottom a{color:var(--coral)}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.in{opacity:1;transform:none}.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

@media(max-width:1040px){.merch-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){
 .hero-grid{grid-template-columns:1fr}.hero-art{max-width:460px}.tracks-layout{grid-template-columns:1fr}.record-card{position:static;display:grid;grid-template-columns:120px 1fr;gap:1.2rem;align-items:center}.record-card .rc-cover{margin-bottom:0}.record-card .rc-body{align-self:center}.record-card .rc-stats{grid-column:1/-1}.about-grid{grid-template-columns:1fr}.about-photo{max-width:420px}.signup .panel{grid-template-columns:1fr}.contact-details{grid-template-columns:1fr}
}
@media(max-width:620px){
 body{font-size:.98rem}.hero{padding-top:110px}.hero-actions .btn-amp{flex:1}.tour-row{grid-template-columns:70px 1fr;row-gap:.8rem}.tour-cta{grid-column:1/-1;justify-self:start}.tour-date .d-day{font-size:1.4rem}.track{grid-template-columns:44px 1fr auto;gap:.7rem}.track-title{grid-column:2}.track-time{grid-column:3}.form-row{flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}
}
@media(max-width:420px){.merch-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.sec-head h2{font-size:2.3rem}}

.back-to-top{position:fixed;right:24px;bottom:24px;z-index:1000;display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border:1px solid var(--line-2);border-radius:50%;background:var(--ink-2);color:var(--paper);box-shadow:0 6px 18px rgba(0,0,0,.22);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s ease,visibility .25s ease,transform .25s ease,background .2s ease;cursor:pointer}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:hover{background:var(--coral)}
.back-to-top svg{width:19px;height:19px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:700px){.back-to-top{right:16px;bottom:16px;width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}}


/* Texas Sites Design Standard 1.0 — sample customer site readability baseline.
   Preserve Modern Repairs brand colors and display typography. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { font-size: 1.0625rem; line-height: 1.65; }
p, li { line-height: 1.65; }
@media(max-width:620px) {
  body { font-size: 1.0625rem; }
  .section { padding-block: clamp(3rem, 9vw, 4.25rem); }
}
a, button, input, select, textarea { touch-action: manipulation; }
:focus-visible { outline: 3px solid var(--amber); outline-offset: 3px; }
