:root {
  --ink: #0b0b0e;
  --ink-2: #151218;
  --ink-3: #211922;
  --paper: #f6f1e8;
  --paper-2: #ece3d7;
  --muted: #a9a2a9;
  --wine: #a5003c;
  --wine-deep: #6e0029;
  --orange: #f47a1f;
  --line: rgba(255,255,255,.14);
  --shadow: 0 24px 80px rgba(0,0,0,.28);
  --radius: 28px;
  --radius-sm: 18px;
  --max: 1440px;
  --display: 'Iowan Old Style', 'Baskerville', 'Times New Roman', Georgia, serif;
  --sans: 'Avenir Next', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body {
  margin: 0;
  background: var(--ink);
  color: #fff;
  font-family: var(--sans);
  line-height: 1.55;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}
body::selection { background: var(--orange); color: #0b0b0e; }
a { color: inherit; text-decoration: none; }
img { display:block; max-width:100%; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }

.skip-link {
  position: fixed; left: 12px; top: 12px; z-index: 9999;
  transform: translateY(-140%); background: #fff; color: #000;
  padding: 10px 14px; border-radius: 999px; transition: .2s ease;
}
.skip-link:focus { transform: translateY(0); }

.noise {
  position: fixed; inset: 0; pointer-events:none; z-index:999;
  opacity:.045; mix-blend-mode: soft-light;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E");
}

.container { width:min(calc(100% - 40px), var(--max)); margin-inline:auto; }
.container.narrow { width:min(calc(100% - 40px), 940px); }
.section { position:relative; padding: clamp(78px, 9vw, 150px) 0; }
.section-tight { padding: clamp(54px, 6vw, 90px) 0; }
.section-paper { background:var(--paper); color:var(--ink); }
.section-wine { background:var(--wine-deep); }
.section-soft { background:#100d12; }

.eyebrow {
  display:flex; align-items:center; gap:10px;
  text-transform:uppercase; letter-spacing:.19em; font-size:.72rem; font-weight:800;
  color:var(--orange);
}
.eyebrow::before { content:""; width:30px; height:1px; background:currentColor; }
.kicker { text-transform:uppercase; letter-spacing:.14em; font-size:.78rem; font-weight:800; opacity:.58; }
.display {
  font-family:var(--display); font-weight:650; letter-spacing:-.055em;
  line-height:.9; margin:0;
  font-size:clamp(3.7rem, 9vw, 10rem);
}
.display.medium { font-size:clamp(3rem, 6vw, 7rem); }
.display.small { font-size:clamp(2.5rem, 4.5vw, 5.2rem); }
.lede { font-size:clamp(1.06rem, 1.5vw, 1.36rem); max-width:720px; color:rgba(255,255,255,.72); }
.section-paper .lede { color:rgba(11,11,14,.66); }
.muted { color:rgba(255,255,255,.58); }
.section-paper .muted { color:rgba(11,11,14,.55); }

.site-header {
  position:fixed; inset:0 0 auto; z-index:1000; height:84px;
  display:flex; align-items:center;
  transition: background .25s ease, border-color .25s ease, backdrop-filter .25s ease;
  border-bottom:1px solid transparent;
}
.site-header.is-scrolled {
  background:rgba(9,9,12,.78); border-color:rgba(255,255,255,.09);
  backdrop-filter: blur(18px);
}
.nav-wrap { width:min(calc(100% - 32px), var(--max)); margin:auto; display:flex; align-items:center; justify-content:space-between; gap:26px; }
.brand { display:flex; align-items:center; gap:12px; z-index:1002; }
.brand img { width:168px; max-height:56px; object-fit:contain; object-position:left center; }
.brand-mark { width:38px; height:38px; display:none; }
.nav-links { display:flex; align-items:center; gap:24px; font-size:.84rem; font-weight:750; letter-spacing:.02em; }
.nav-links a { color:rgba(255,255,255,.74); transition:.2s ease; white-space:nowrap; }
.nav-links a:hover, .nav-links a.active { color:#fff; }
.nav-cta { padding:12px 16px; border:1px solid rgba(255,255,255,.24); border-radius:999px; }
.nav-cta:hover { border-color:var(--orange); background:var(--orange); color:var(--ink)!important; }
.menu-toggle { display:none; width:44px; height:44px; border:0; background:transparent; color:#fff; cursor:pointer; z-index:1002; }
.menu-toggle span { display:block; width:26px; height:2px; background:currentColor; margin:6px auto; transition:.25s ease; }

.hero {
  min-height:100svh; padding: 118px 0 50px; position:relative; display:flex; align-items:flex-end; overflow:hidden;
  background:
    radial-gradient(circle at 86% 18%, rgba(244,122,31,.28), transparent 28%),
    radial-gradient(circle at 18% 72%, rgba(165,0,60,.30), transparent 32%),
    linear-gradient(140deg, #08080a 0%, #130c13 48%, #0a090d 100%);
}
.hero::before {
  content:""; position:absolute; width:70vw; height:140vh; right:-30vw; top:-35vh;
  border:1px solid rgba(255,255,255,.08); border-radius:50%; transform:rotate(18deg);
  box-shadow: inset 0 0 0 14vw rgba(255,255,255,.012), inset 0 0 0 28vw rgba(255,255,255,.008);
}
.hero::after {
  content:""; position:absolute; inset:auto 0 0; height:42%;
  background:linear-gradient(180deg, transparent, rgba(0,0,0,.52)); pointer-events:none;
}
.hero-lights { position:absolute; inset:0; overflow:hidden; pointer-events:none; }
.light { position:absolute; width:12vw; min-width:120px; height:130vh; top:-30vh; filter:blur(8px); opacity:.18; transform:rotate(23deg); transform-origin:top; }
.light.one { right:9%; background:linear-gradient(to bottom, rgba(244,122,31,.8), transparent 62%); animation:sway 9s ease-in-out infinite alternate; }
.light.two { right:28%; background:linear-gradient(to bottom, rgba(165,0,60,.8), transparent 62%); animation:sway2 11s ease-in-out infinite alternate; }
.hero-grid { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.55fr) minmax(250px,.45fr); gap:50px; align-items:end; width:100%; }
.hero-copy .hero-topline { margin-bottom:28px; display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.hero-copy .hero-topline span { font-size:.72rem; text-transform:uppercase; letter-spacing:.18em; font-weight:800; opacity:.7; }
.hero-copy h1 { max-width:1180px; }
.hero-copy h1 em { color:var(--orange); font-style:italic; font-weight:500; }
.hero-sub { display:grid; grid-template-columns:minmax(0,620px) auto; gap:30px; align-items:end; margin-top:30px; }
.hero-sub p { font-size:clamp(1rem,1.4vw,1.26rem); color:rgba(255,255,255,.66); margin:0; }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap; }
.hero-side { border-left:1px solid var(--line); padding-left:28px; padding-bottom:8px; }
.hero-side .year { font-family:var(--display); font-size:clamp(4.2rem,7vw,7rem); line-height:.8; color:var(--orange); }
.hero-side p { max-width:260px; color:rgba(255,255,255,.6); font-size:.88rem; margin:16px 0 0; }

.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:52px;
  padding:0 20px; border-radius:999px; border:1px solid rgba(255,255,255,.24);
  font-weight:800; font-size:.82rem; letter-spacing:.04em; text-transform:uppercase; transition:.2s ease;
}
.btn:hover { transform:translateY(-2px); }
.btn-primary { background:var(--orange); color:var(--ink); border-color:var(--orange); }
.btn-primary:hover { background:#ff8d3a; box-shadow:0 12px 34px rgba(244,122,31,.2); }
.btn-ghost:hover { background:#fff; color:#000; border-color:#fff; }
.btn-dark { background:var(--ink); color:#fff; border-color:var(--ink); }
.btn-dark:hover { background:var(--wine); border-color:var(--wine); }
.btn-light { background:#fff; color:#000; border-color:#fff; }
.arrow { font-size:1.18em; line-height:1; }

.marquee { overflow:hidden; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#0c0b0e; }
.marquee-track { width:max-content; display:flex; gap:26px; align-items:center; padding:15px 0; animation:marquee 24s linear infinite; }
.marquee-item { font-size:.72rem; letter-spacing:.16em; font-weight:800; text-transform:uppercase; color:rgba(255,255,255,.65); display:flex; align-items:center; gap:26px; }
.marquee-dot { width:6px; height:6px; border-radius:50%; background:var(--orange); }

.split { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:clamp(44px,8vw,120px); align-items:start; }
.split.reverse { grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); }
.sticky-title { position:sticky; top:120px; }
.prose { max-width:780px; }
.prose p { font-size:clamp(1rem,1.35vw,1.18rem); color:rgba(255,255,255,.68); }
.section-paper .prose p { color:rgba(11,11,14,.67); }
.prose p:first-child { margin-top:0; }
.big-quote { font-family:var(--display); font-size:clamp(2rem,3.2vw,4rem); line-height:1.06; letter-spacing:-.035em; margin:36px 0; }

.number-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); margin-top:54px; }
.number-card { padding:32px 26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); min-height:180px; display:flex; flex-direction:column; justify-content:space-between; }
.number-card .num { font-family:var(--display); font-size:clamp(2.7rem,5vw,5.8rem); line-height:.86; color:var(--orange); }
.number-card .label { font-size:.78rem; text-transform:uppercase; letter-spacing:.14em; color:rgba(255,255,255,.55); }
.section-paper .number-grid { border-color:rgba(11,11,14,.15); }
.section-paper .number-card { border-color:rgba(11,11,14,.15); }
.section-paper .number-card .label { color:rgba(11,11,14,.56); }

.section-head { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:48px; }
.section-head .copy { max-width:620px; }
.section-head p { margin:.6rem 0 0; color:rgba(255,255,255,.58); }
.section-paper .section-head p { color:rgba(11,11,14,.58); }

.artist-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:18px; }
.artist-card { position:relative; overflow:hidden; min-height:560px; border-radius:var(--radius); background:#18141a; grid-column:span 4; isolation:isolate; }
.artist-card:nth-child(1), .artist-card:nth-child(4) { grid-column:span 6; min-height:660px; }
.artist-card .art { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .7s cubic-bezier(.2,.7,.2,1), filter .5s ease; }
.artist-card:hover .art { transform:scale(1.035); filter:saturate(1.08); }
.artist-card::after { content:""; position:absolute; inset:0; background:linear-gradient(to top, rgba(0,0,0,.82), transparent 55%); z-index:1; }
.artist-card .artist-info { position:absolute; z-index:2; left:28px; right:28px; bottom:26px; }
.artist-card .artist-name { font-family:var(--display); font-size:clamp(2.1rem,3.5vw,4.2rem); letter-spacing:-.04em; line-height:.9; margin:0 0 12px; }
.artist-card .artist-meta { display:flex; justify-content:space-between; gap:14px; align-items:center; border-top:1px solid rgba(255,255,255,.24); padding-top:14px; text-transform:uppercase; font-size:.69rem; letter-spacing:.12em; color:rgba(255,255,255,.7); }
.artist-card .pill { background:rgba(255,255,255,.09); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.12); border-radius:999px; padding:8px 10px; }
.artist-photo-card .art { filter:saturate(.92) contrast(1.04); }

.tour-feature { position:relative; border-radius:36px; overflow:hidden; min-height:600px; display:grid; grid-template-columns:1fr .8fr; background:#140d13; border:1px solid rgba(255,255,255,.1); }
.tour-copy { padding:clamp(34px,6vw,86px); display:flex; flex-direction:column; justify-content:space-between; position:relative; z-index:2; }
.tour-art { position:relative; overflow:hidden; background:radial-gradient(circle at 60% 28%, rgba(244,122,31,.75), transparent 18%),linear-gradient(145deg,#a5003c,#171017 64%); }
.tour-art::before { content:"USA"; position:absolute; right:-.05em; bottom:-.12em; font-family:var(--display); font-weight:700; font-size:clamp(10rem,22vw,27rem); line-height:.72; opacity:.1; }
.tour-art::after { content:""; position:absolute; inset:9% 12%; border:1px solid rgba(255,255,255,.24); border-radius:50%; transform:rotate(-13deg); box-shadow:0 0 0 36px rgba(255,255,255,.03),0 0 0 88px rgba(255,255,255,.02); }
.tour-stamp { position:absolute; width:150px; height:150px; left:8%; top:9%; border:1px solid rgba(255,255,255,.32); border-radius:50%; display:grid; place-items:center; text-align:center; text-transform:uppercase; letter-spacing:.12em; font-weight:800; font-size:.67rem; transform:rotate(-9deg); }
.tour-copy h3 { font-family:var(--display); font-size:clamp(3rem,5.5vw,6rem); letter-spacing:-.045em; line-height:.9; margin:18px 0; }
.tour-copy p { max-width:600px; color:rgba(255,255,255,.65); }

.founder-grid { display:grid; grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr); gap:clamp(36px,8vw,110px); align-items:center; }
.portrait-wrap { position:relative; }
.portrait-wrap img { width:100%; aspect-ratio:4/5; object-fit:cover; border-radius:32px; filter:saturate(.82) contrast(1.04); background:#19161b; }
.portrait-wrap::after { content:"FOUNDER / CEO"; position:absolute; right:-26px; bottom:38px; background:var(--orange); color:#111; padding:12px 16px; font-size:.7rem; letter-spacing:.16em; font-weight:900; transform:rotate(-90deg) translateX(100%); transform-origin:right bottom; }
.founder-copy h2 { margin:14px 0 24px; }
.founder-copy .signature { font-family:var(--display); font-size:clamp(2rem,3vw,3.5rem); font-style:italic; margin-top:26px; color:var(--orange); }

.recognition-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.14); }
.recognition-card { background:#0f0d11; padding:28px; min-height:220px; display:flex; flex-direction:column; justify-content:space-between; }
.recognition-card .year { font-family:var(--display); font-size:3.7rem; color:var(--orange); line-height:.9; }
.recognition-card h3 { font-size:1rem; margin:18px 0 6px; }
.recognition-card p { color:rgba(255,255,255,.54); font-size:.84rem; margin:0; }

.story-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:18px; }
.story-card { border-radius:28px; min-height:420px; padding:34px; background:#151218; border:1px solid rgba(255,255,255,.1); display:flex; flex-direction:column; justify-content:space-between; position:relative; overflow:hidden; }
.story-card.primary { min-height:620px; background:linear-gradient(145deg,#220913,#0f0d11 56%); }
.story-card.primary::after { content:"2027"; position:absolute; right:-.08em; bottom:-.2em; font-family:var(--display); font-size:14rem; opacity:.05; }
.story-card h3 { font-family:var(--display); font-size:clamp(2.3rem,4vw,4.7rem); line-height:.98; letter-spacing:-.04em; margin:12px 0; max-width:700px; }
.story-card p { color:rgba(255,255,255,.6); max-width:620px; }
.story-card .meta { font-size:.7rem; letter-spacing:.13em; text-transform:uppercase; color:var(--orange); font-weight:800; }

.cta-band { background:var(--paper); color:var(--ink); }
.cta-inner { min-height:460px; display:grid; grid-template-columns:1.3fr .7fr; gap:50px; align-items:center; }
.cta-inner h2 { margin:0; }
.cta-panel { border-left:1px solid rgba(11,11,14,.2); padding-left:36px; }
.cta-panel p { color:rgba(11,11,14,.65); }

.page-hero { min-height:70svh; display:flex; align-items:flex-end; padding:150px 0 74px; position:relative; overflow:hidden; background:linear-gradient(145deg,#09090c,#180d14); }
.page-hero::after { content:""; position:absolute; width:560px; height:560px; right:-180px; top:-100px; background:radial-gradient(circle,rgba(244,122,31,.24),transparent 68%); }
.page-hero .page-title { position:relative; z-index:2; max-width:1180px; }
.page-hero h1 { font-size:clamp(4.3rem,10vw,10.5rem); }
.page-hero p { font-size:clamp(1.02rem,1.5vw,1.34rem); color:rgba(255,255,255,.62); max-width:760px; }

.artist-page-hero { min-height:90svh; position:relative; display:grid; align-items:end; overflow:hidden; background:#09090c; }
.artist-page-art { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.82; }
.artist-page-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.8) 0%,rgba(0,0,0,.34) 46%,rgba(0,0,0,.2)),linear-gradient(0deg,rgba(0,0,0,.7),transparent 60%); }
.artist-page-content { position:relative; z-index:2; padding:150px 0 66px; }
.artist-page-content .display { max-width:980px; }
.artist-status { display:flex; gap:10px; flex-wrap:wrap; margin:22px 0 30px; }
.artist-status span { padding:8px 11px; background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.13); border-radius:999px; font-size:.69rem; text-transform:uppercase; letter-spacing:.12em; }

.profile-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(38px,7vw,100px); align-items:start; }
.profile-aside { position:sticky; top:110px; }
.profile-aside .label { text-transform:uppercase; letter-spacing:.14em; font-size:.68rem; opacity:.55; }
.profile-aside .value { font-size:1.08rem; margin:6px 0 24px; }
.profile-body h2 { font-family:var(--display); font-size:clamp(2.8rem,5vw,5rem); line-height:.95; letter-spacing:-.045em; margin:0 0 26px; }
.profile-body p { color:rgba(255,255,255,.66); font-size:1.05rem; }

.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.service-card { min-height:330px; border:1px solid rgba(255,255,255,.11); background:#121014; padding:28px; border-radius:24px; display:flex; flex-direction:column; justify-content:space-between; transition:.25s ease; }
.service-card:hover { transform:translateY(-4px); border-color:rgba(244,122,31,.55); }
.service-card .index { font-family:var(--display); font-size:4rem; color:var(--orange); line-height:.8; }
.service-card h3 { font-size:1.25rem; margin:0 0 10px; }
.service-card p { color:rgba(255,255,255,.55); margin:0; font-size:.9rem; }

.timeline { position:relative; margin-top:46px; }
.timeline::before { content:""; position:absolute; left:10px; top:8px; bottom:8px; width:1px; background:rgba(255,255,255,.17); }
.timeline-item { padding-left:54px; position:relative; margin-bottom:46px; }
.timeline-item::before { content:""; position:absolute; left:4px; top:8px; width:13px; height:13px; border-radius:50%; background:var(--orange); box-shadow:0 0 0 8px rgba(244,122,31,.12); }
.timeline-item .time { text-transform:uppercase; letter-spacing:.14em; font-size:.68rem; font-weight:800; color:var(--orange); }
.timeline-item h3 { font-family:var(--display); font-size:clamp(1.8rem,3vw,3rem); letter-spacing:-.035em; margin:7px 0 8px; }
.timeline-item p { color:rgba(255,255,255,.58); max-width:750px; }

.contact-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(40px,7vw,100px); }
.contact-list { display:grid; gap:14px; }
.contact-item { padding:22px 0; border-bottom:1px solid rgba(255,255,255,.12); }
.contact-item .label { text-transform:uppercase; letter-spacing:.14em; font-size:.67rem; opacity:.48; }
.contact-item a, .contact-item .value { display:block; margin-top:6px; font-size:1.05rem; }
.form { display:grid; gap:16px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.field label { display:block; margin:0 0 8px; font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; font-weight:800; color:rgba(255,255,255,.62); }
.field input, .field textarea, .field select { width:100%; background:#111014; color:#fff; border:1px solid rgba(255,255,255,.14); border-radius:14px; padding:15px 16px; outline:none; transition:.2s ease; }
.field textarea { min-height:170px; resize:vertical; }
.field input:focus, .field textarea:focus, .field select:focus { border-color:var(--orange); box-shadow:0 0 0 3px rgba(244,122,31,.12); }
.field select option { background:#111014; }
.honeypot { position:absolute!important; left:-10000px!important; opacity:0!important; }
.form-note { font-size:.78rem; color:rgba(255,255,255,.46); }
.alert { padding:14px 16px; border-radius:14px; margin:0 0 20px; font-size:.9rem; }
.alert.success { background:rgba(71,211,124,.12); border:1px solid rgba(71,211,124,.3); }
.alert.error { background:rgba(255,87,87,.12); border:1px solid rgba(255,87,87,.3); }

.site-footer { background:#08080a; border-top:1px solid rgba(255,255,255,.1); padding:70px 0 28px; }
.footer-grid { display:grid; grid-template-columns:1.15fr .55fr .55fr .75fr; gap:44px; }
.footer-brand img { width:210px; margin-bottom:22px; }
.footer-brand p { color:rgba(255,255,255,.5); max-width:360px; font-size:.88rem; }
.footer-title { text-transform:uppercase; letter-spacing:.14em; font-size:.67rem; font-weight:900; color:rgba(255,255,255,.42); margin-bottom:16px; }
.footer-links { display:grid; gap:9px; font-size:.87rem; }
.footer-links a { color:rgba(255,255,255,.72); }
.footer-links a:hover { color:var(--orange); }
.footer-bottom { margin-top:56px; padding-top:22px; border-top:1px solid rgba(255,255,255,.08); display:flex; justify-content:space-between; gap:20px; color:rgba(255,255,255,.38); font-size:.72rem; }

.reveal { opacity:0; transform:translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.reveal.is-visible { opacity:1; transform:translateY(0); }
[data-delay="1"] { transition-delay:.08s; } [data-delay="2"]{transition-delay:.16s;} [data-delay="3"]{transition-delay:.24s;}

@keyframes sway { from{ transform:rotate(19deg) translateX(-30px);} to{transform:rotate(27deg) translateX(30px);} }
@keyframes sway2 { from{ transform:rotate(27deg) translateX(20px);} to{transform:rotate(16deg) translateX(-20px);} }
@keyframes marquee { to { transform:translateX(-50%); } }

@media (max-width: 1100px) {
  .nav-links { position:fixed; inset:0; background:#0a090c; flex-direction:column; justify-content:center; gap:26px; font-size:1.25rem; opacity:0; pointer-events:none; transform:translateY(-10px); transition:.25s ease; }
  .nav-links.is-open { opacity:1; pointer-events:auto; transform:none; }
  .menu-toggle { display:block; }
  .menu-toggle.is-open span:first-child { transform:translateY(8px) rotate(45deg); }
  .menu-toggle.is-open span:nth-child(2) { opacity:0; }
  .menu-toggle.is-open span:last-child { transform:translateY(-8px) rotate(-45deg); }
  .hero-grid { grid-template-columns:1fr; }
  .hero-side { border-left:0; border-top:1px solid var(--line); padding:22px 0 0; display:flex; align-items:end; gap:28px; }
  .hero-side p { margin:0; }
  .split, .split.reverse, .founder-grid, .contact-grid { grid-template-columns:1fr; }
  .sticky-title, .profile-aside { position:static; }
  .number-grid { grid-template-columns:repeat(2,1fr); }
  .artist-card, .artist-card:nth-child(1), .artist-card:nth-child(4) { grid-column:span 6; min-height:560px; }
  .tour-feature { grid-template-columns:1fr; }
  .tour-art { min-height:360px; }
  .recognition-grid { grid-template-columns:repeat(2,1fr); }
  .story-grid { grid-template-columns:1fr; }
  .cta-inner { grid-template-columns:1fr; min-height:auto; }
  .cta-panel { border-left:0; border-top:1px solid rgba(11,11,14,.18); padding:28px 0 0; }
  .service-grid { grid-template-columns:repeat(2,1fr); }
  .footer-grid { grid-template-columns:1.2fr .8fr .8fr; }
  .footer-grid > :last-child { grid-column:1/-1; }
}

@media (max-width: 720px) {
  .container { width:min(calc(100% - 28px), var(--max)); }
  .site-header { height:72px; }
  .brand img { width:145px; }
  .hero { padding-top:98px; min-height:92svh; }
  .hero-sub { grid-template-columns:1fr; }
  .hero-actions { width:100%; }
  .hero-actions .btn { flex:1; }
  .hero-side { align-items:center; }
  .hero-side .year { font-size:4.4rem; }
  .marquee-track { animation-duration:18s; }
  .section-head { align-items:start; flex-direction:column; }
  .number-grid { grid-template-columns:1fr 1fr; }
  .number-card { min-height:150px; padding:22px 18px; }
  .artist-grid { gap:14px; }
  .artist-card, .artist-card:nth-child(1), .artist-card:nth-child(4) { grid-column:1/-1; min-height:520px; }
  .artist-card .artist-info { left:22px; right:22px; bottom:22px; }
  .tour-copy { padding:32px 24px; }
  .tour-art { min-height:300px; }
  .founder-grid { gap:38px; }
  .portrait-wrap { max-width:520px; }
  .recognition-grid { grid-template-columns:1fr; }
  .recognition-card { min-height:180px; }
  .service-grid { grid-template-columns:1fr; }
  .profile-grid { grid-template-columns:1fr; }
  .form-row { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-grid > :first-child, .footer-grid > :last-child { grid-column:1/-1; }
  .footer-bottom { flex-direction:column; }
  .page-hero { min-height:62svh; padding-top:125px; }
  .artist-page-hero { min-height:82svh; }
  .artist-page-content { padding-top:128px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.001ms!important; animation-iteration-count:1!important; transition-duration:.001ms!important; }
  .reveal { opacity:1; transform:none; }
}
