/* ═══════════════════════════════════════════════
   Lady Paradox — Master Stylesheet v2.0
   assets/css/main.css
═══════════════════════════════════════════════ */

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --black:   #080806;
  --offwhite:#f4f1eb;
  --warm:    #1a1712;
  --gold:    #c8a45a;
  --gold2:   #e8d4a0;
  --gray:    #7a7060;
  --lgray:   #e2ddd4;
}

html { scroll-behavior: smooth; }
body { font-family:'DM Sans',sans-serif; background:var(--black); color:var(--offwhite); overflow-x:hidden; }

/* ── TYPOGRAPHY ─────────────────────────────── */
.section-label { font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold); margin-bottom:1rem; }
.section-title { font-family:'Cormorant Garamond',serif; font-size:clamp(2.5rem,5vw,4rem); font-weight:300; line-height:1; }
.section-title em { font-style:italic; color:var(--gold); }

/* ── LAYOUT ─────────────────────────────────── */
.container { max-width:1240px; margin:0 auto; padding:0 3.5rem; }
section { padding:7rem 0; }

/* ── BUTTONS ─────────────────────────────────── */
.btn { display:inline-block; font-family:'Space Mono',monospace; font-size:0.65rem; letter-spacing:0.14em; text-transform:uppercase; text-decoration:none; padding:0.9rem 2.2rem; transition:all 0.3s; cursor:pointer; border:none; }
.btn-gold  { background:var(--gold);  color:var(--black); }
.btn-gold:hover { background:var(--gold2); }
.btn-ghost { background:transparent; color:var(--offwhite); border:1px solid rgba(244,241,235,0.35); }
.btn-ghost:hover { border-color:var(--gold); color:var(--gold); }

/* ── REVEAL ANIMATION ───────────────────────── */
.reveal { opacity:0; transform:translateY(28px); transition:opacity 0.8s ease, transform 0.8s ease; }
.reveal.in { opacity:1; transform:none; }

/* ── NAV ─────────────────────────────────────── */
#site-nav { position:fixed; top:0; left:0; right:0; z-index:200; display:flex; align-items:center; justify-content:space-between; padding:1.6rem 3.5rem; transition:all 0.4s ease; }
#site-nav.scrolled { background:rgba(8,8,6,0.92); backdrop-filter:blur(16px); padding:1rem 3.5rem; border-bottom:1px solid rgba(200,164,90,0.15); }
#site-nav.solid    { background:rgba(8,8,6,0.92); backdrop-filter:blur(16px); border-bottom:1px solid rgba(200,164,90,0.15); }
.nav-logo { font-family:'Cormorant Garamond',serif; font-size:1.25rem; font-weight:600; letter-spacing:0.08em; color:var(--offwhite); text-decoration:none; }
.nav-logo span { color:var(--gold); }
.nav-links { display:flex; gap:2.8rem; list-style:none; }
.nav-links a { font-size:0.72rem; font-weight:400; letter-spacing:0.18em; text-transform:uppercase; color:rgba(244,241,235,0.7); text-decoration:none; transition:color 0.3s; }
.nav-links a:hover, .nav-links a.active { color:var(--gold); }
.nav-cta { font-family:'Space Mono',monospace; font-size:0.65rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--black) !important; background:var(--gold); padding:0.6rem 1.5rem; text-decoration:none; transition:background 0.3s; }
.nav-cta:hover { background:var(--gold2); }
.nav-hamburger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:4px; }
.nav-hamburger span { display:block; width:24px; height:1.5px; background:var(--offwhite); transition:all 0.3s; }

/* Mobile menu */
.mobile-menu { display:none; position:fixed; inset:0; z-index:199; background:var(--black); flex-direction:column; align-items:center; justify-content:center; }
.mobile-menu.open { display:flex; }
.mobile-menu-close { position:absolute; top:1.5rem; right:1.5rem; background:none; border:none; color:rgba(244,241,235,0.4); font-size:1.5rem; cursor:pointer; transition:color 0.3s; }
.mobile-menu-close:hover { color:var(--gold); }
.mobile-menu ul { list-style:none; text-align:center; }
.mobile-menu ul li { margin:1.5rem 0; }
.mobile-menu ul a { font-family:'Cormorant Garamond',serif; font-size:2.5rem; font-weight:300; color:var(--offwhite); text-decoration:none; transition:color 0.3s; }
.mobile-menu ul a:hover { color:var(--gold); }

/* ── HOMEPAGE HERO ───────────────────────────── */
#hero { position:relative; height:100vh; min-height:700px; display:flex; align-items:flex-end; overflow:hidden; }
.hero-bg { position:absolute; inset:0; z-index:0; }
.hero-bg img { width:100%; height:100%; object-fit:cover; object-position:center 20%; filter:brightness(0.72); }
.hero-bg::after { content:''; position:absolute; inset:0; background:linear-gradient(to right,rgba(8,8,6,0.65) 0%,rgba(8,8,6,0.1) 55%,transparent 100%),linear-gradient(to top,rgba(8,8,6,0.9) 0%,rgba(8,8,6,0.3) 40%,transparent 70%); }
.hero-content { position:relative; z-index:1; padding:0 3.5rem 5rem; max-width:680px; }
.hero-eyebrow { font-family:'Space Mono',monospace; font-size:0.65rem; letter-spacing:0.25em; text-transform:uppercase; color:var(--gold); margin-bottom:1.4rem; opacity:0; animation:fadeUp 0.9s 0.3s ease forwards; }
.hero-name { font-family:'Cormorant Garamond',serif; font-size:clamp(4.5rem,9vw,8rem); font-weight:300; line-height:0.9; letter-spacing:-0.02em; opacity:0; animation:fadeUp 0.9s 0.5s ease forwards; }
.hero-name em { display:block; font-style:italic; color:var(--gold); font-weight:300; }
.hero-sub,.hero-tagline { margin-top:1.8rem; font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.15rem; color:rgba(244,241,235,0.75); line-height:1.6; max-width:420px; opacity:0; animation:fadeUp 0.9s 0.7s ease forwards; }
.hero-actions { display:flex; gap:1.2rem; margin-top:2.8rem; flex-wrap:wrap; opacity:0; animation:fadeUp 0.9s 0.9s ease forwards; }
.hero-scroll { position:absolute; right:3.5rem; bottom:4rem; z-index:1; display:flex; flex-direction:column; align-items:center; gap:0.8rem; opacity:0; animation:fadeIn 1.2s 1.4s ease forwards; }
.hero-scroll span { font-family:'Space Mono',monospace; font-size:0.58rem; letter-spacing:0.2em; text-transform:uppercase; color:rgba(244,241,235,0.4); writing-mode:vertical-rl; }
.scroll-line { width:1px; height:60px; background:linear-gradient(to bottom,rgba(200,164,90,0.6),transparent); animation:scrollDrop 2s ease-in-out infinite; }

/* ── HOMEPAGE INTRO ──────────────────────────── */
#intro { background:var(--warm); padding:0; border-top:1px solid rgba(200,164,90,0.15); border-bottom:1px solid rgba(200,164,90,0.15); overflow:hidden; }
.intro-grid { display:grid; grid-template-columns:1fr 1fr; }
.intro-bio { padding:5rem 4rem; border-right:1px solid rgba(200,164,90,0.12); }
.intro-bio h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,3.5vw,3rem); font-weight:300; line-height:1.15; margin-bottom:1.8rem; }
.intro-bio h2 em { font-style:italic; color:var(--gold); }
.intro-bio p, .intro-bio-text p { font-size:0.95rem; font-weight:300; color:rgba(244,241,235,0.7); line-height:1.85; margin-bottom:1.2rem; }
.intro-quote { padding:5rem 4rem; display:flex; flex-direction:column; justify-content:center; position:relative; }
.intro-quote::before { content:'"'; font-family:'Cormorant Garamond',serif; font-size:16rem; font-weight:300; color:rgba(200,164,90,0.07); position:absolute; top:-2rem; left:2.5rem; line-height:1; pointer-events:none; user-select:none; }
.pull-quote { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:clamp(1.6rem,2.5vw,2.2rem); font-weight:300; line-height:1.45; color:var(--offwhite); position:relative; z-index:1; margin-bottom:2rem; }
.pull-quote em { font-style:normal; color:var(--gold); }
.pull-quote-line { width:32px; height:1px; background:var(--gold); margin-bottom:1.2rem; }
.pull-quote-attr { font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.18em; text-transform:uppercase; color:rgba(244,241,235,0.35); }

/* ── MUSIC (homepage) ────────────────────────── */
#music { background:var(--black); padding:7rem 0; }
.section-header { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:3.5rem; }
.section-header h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.5rem,5vw,4rem); font-weight:300; line-height:1; }
.section-header h2 em { font-style:italic; color:var(--gold); }
.see-all { font-family:'Space Mono',monospace; font-size:0.65rem; letter-spacing:0.15em; text-transform:uppercase; color:var(--gold); text-decoration:none; display:flex; align-items:center; gap:0.5rem; transition:gap 0.3s; }
.see-all:hover { gap:0.9rem; }
.see-all::after { content:'→'; }
.singles-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; }
.single-card { cursor:pointer; }
.single-art { aspect-ratio:1; position:relative; overflow:hidden; margin-bottom:1rem; }
.single-art-inner { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:2.5rem; opacity:0.1; transition:transform 0.5s ease; }
.single-card:hover .single-art-inner { transform:scale(1.06); }
.art-bg-a { background:linear-gradient(135deg,#1a1218,#0d0a10); }
.art-bg-b { background:linear-gradient(135deg,#121a14,#080d09); }
.art-bg-c { background:linear-gradient(135deg,#1a1512,#0d0b08); }
.art-bg-d { background:linear-gradient(135deg,#0f1218,#080a0d); }
.single-hover-overlay { position:absolute; inset:0; background:rgba(0,0,0,0.55); display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity 0.35s; }
.single-card:hover .single-hover-overlay { opacity:1; }
.play-icon { width:48px; height:48px; border-radius:50%; background:var(--gold); display:flex; align-items:center; justify-content:center; font-size:1.1rem; color:var(--black); text-decoration:none; }
.single-title { font-family:'Cormorant Garamond',serif; font-size:1.05rem; font-weight:600; margin-bottom:0.2rem; }
.single-meta  { font-family:'Space Mono',monospace; font-size:0.6rem; letter-spacing:0.08em; color:rgba(244,241,235,0.4); }

/* ── INSTAGRAM ────────────────────────────────── */
#instagram { background:var(--warm); padding:6rem 0; border-top:1px solid rgba(200,164,90,0.12); }
.insta-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:2.5rem; }
.insta-handle { display:flex; align-items:center; gap:0.8rem; font-family:'Space Mono',monospace; font-size:0.7rem; letter-spacing:0.1em; color:var(--gold); text-decoration:none; }
.insta-handle:hover { color:var(--gold2); }
.insta-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:4px; margin-bottom:2rem; }
.insta-tile { aspect-ratio:1; background:var(--black); position:relative; overflow:hidden; cursor:pointer; display:block; text-decoration:none; }
.insta-tile-inner { width:100%; height:100%; display:flex; align-items:center; justify-content:center; opacity:0.06; font-size:1.8rem; transition:transform 0.4s; }
.insta-tile:hover .insta-tile-inner { transform:scale(1.08); opacity:0.1; }
.insta-tile-overlay { position:absolute; inset:0; background:rgba(200,164,90,0.0); transition:background 0.3s; }
.insta-tile:hover .insta-tile-overlay { background:rgba(200,164,90,0.12); }
.insta-notice { text-align:center; padding:2rem; border:1px dashed rgba(200,164,90,0.2); }
.insta-notice p { font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.1em; color:rgba(244,241,235,0.35); margin-bottom:0.8rem; }
.insta-notice a { font-size:0.7rem; color:var(--gold); text-decoration:none; border-bottom:1px solid rgba(200,164,90,0.3); }

/* ── DUAL OFFERINGS ──────────────────────────── */
#offerings { background:var(--black); padding:0; display:grid; grid-template-columns:1fr 1fr; }
.offering-card { padding:6rem 4rem; position:relative; overflow:hidden; text-decoration:none; color:var(--offwhite); display:block; transition:background 0.4s; }
.offering-card:first-child { border-right:1px solid rgba(200,164,90,0.12); background:var(--warm); }
.offering-card:last-child  { background:rgba(200,164,90,0.04); }
.offering-card:hover { background:rgba(200,164,90,0.08); }
.offering-num { font-family:'Cormorant Garamond',serif; font-size:6rem; font-weight:300; color:rgba(200,164,90,0.1); line-height:1; position:absolute; top:2rem; right:3rem; pointer-events:none; }
.offering-label { font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold); margin-bottom:1.5rem; }
.offering-title { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,3.5vw,3rem); font-weight:300; line-height:1.1; margin-bottom:1.5rem; }
.offering-title em { font-style:italic; color:var(--gold); }
.offering-desc { font-size:0.88rem; color:rgba(244,241,235,0.6); line-height:1.8; font-weight:300; max-width:340px; margin-bottom:2.5rem; }
.offering-link { font-family:'Space Mono',monospace; font-size:0.65rem; letter-spacing:0.15em; text-transform:uppercase; color:var(--gold); display:flex; align-items:center; gap:0.6rem; transition:gap 0.3s; }
.offering-card:hover .offering-link { gap:1rem; }
.offering-link::after { content:'→'; }

/* ── MUSIC PAGE HERO ─────────────────────────── */
#page-hero { padding-top:80px; min-height:70vh; display:grid; grid-template-columns:1fr 1fr; overflow:hidden; }
.page-hero-left { background:var(--warm); padding:6rem 4rem 6rem 3.5rem; display:flex; flex-direction:column; justify-content:flex-end; position:relative; overflow:hidden; }
.page-hero-left::before { content:'MUSIC'; position:absolute; bottom:-1rem; left:-0.5rem; font-family:'Cormorant Garamond',serif; font-size:14rem; font-weight:600; color:rgba(200,164,90,0.04); line-height:1; pointer-events:none; white-space:nowrap; letter-spacing:-0.04em; }
.page-hero-eyebrow { font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold); margin-bottom:1.2rem; opacity:0; animation:fadeUp 0.8s 0.2s ease forwards; }
.page-hero-title { font-family:'Cormorant Garamond',serif; font-size:clamp(3.5rem,7vw,6.5rem); font-weight:300; line-height:0.92; letter-spacing:-0.02em; position:relative; z-index:1; opacity:0; animation:fadeUp 0.8s 0.35s ease forwards; }
.page-hero-title em { font-style:italic; color:var(--gold); display:block; }
.page-hero-sub { margin-top:2rem; font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.1rem; color:rgba(244,241,235,0.5); line-height:1.6; max-width:380px; position:relative; z-index:1; opacity:0; animation:fadeUp 0.8s 0.5s ease forwards; }
.page-hero-right { position:relative; overflow:hidden; }
.page-hero-right img { width:100%; height:100%; object-fit:cover; object-position:center top; display:block; }
.page-hero-right::after { content:''; position:absolute; inset:0; background:linear-gradient(to right,var(--warm) 0%,transparent 30%),linear-gradient(to top,rgba(8,8,6,0.5) 0%,transparent 50%); }

/* ── STORY SECTION ───────────────────────────── */
#story { background:var(--warm); padding:0; border-top:1px solid rgba(200,164,90,0.12); border-bottom:1px solid rgba(200,164,90,0.12); }
.story-grid { display:grid; grid-template-columns:1fr 1.6fr; }
.story-img { position:relative; overflow:hidden; min-height:600px; }
.story-img img { width:100%; height:100%; object-fit:cover; object-position:center 20%; display:block; filter:brightness(0.85); }
.story-img::after { content:''; position:absolute; inset:0; background:linear-gradient(to right,transparent 60%,var(--warm) 100%); }
.story-text { padding:6rem 4rem 6rem 3rem; display:flex; flex-direction:column; justify-content:center; }
.story-text h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,3.5vw,3rem); font-weight:300; line-height:1.15; margin-bottom:2rem; }
.story-text h2 em { font-style:italic; color:var(--gold); }
.story-text p,.story-body p { font-size:0.95rem; font-weight:300; color:rgba(244,241,235,0.72); line-height:1.9; margin-bottom:1.3rem; }
.story-text p strong { color:var(--offwhite); font-weight:400; }
.achievements { margin-top:2.5rem; padding-top:2.5rem; border-top:1px solid rgba(200,164,90,0.15); display:flex; flex-direction:column; gap:0.9rem; }
.achievement-item { display:flex; align-items:baseline; gap:1rem; font-size:0.88rem; color:rgba(244,241,235,0.65); font-weight:300; line-height:1.5; }
.achievement-item::before { content:'◆'; font-size:0.4rem; color:var(--gold); flex-shrink:0; position:relative; top:-2px; }

/* ── VIDEO ───────────────────────────────────── */
#video { background:var(--black); padding:7rem 0; }
.video-inner { display:grid; grid-template-columns:1fr 1.2fr; gap:5rem; align-items:center; }
.video-info h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,3.5vw,3rem); font-weight:300; line-height:1.15; margin-bottom:1.5rem; }
.video-info h2 em { font-style:italic; color:var(--gold); }
.video-info p { font-size:0.92rem; color:rgba(244,241,235,0.65); line-height:1.85; font-weight:300; margin-bottom:2rem; }
.video-meta { display:flex; flex-direction:column; gap:0.5rem; margin-bottom:2rem; }
.video-meta-row { display:flex; gap:1rem; align-items:baseline; }
.video-meta-label { font-family:'Space Mono',monospace; font-size:0.58rem; letter-spacing:0.15em; text-transform:uppercase; color:var(--gold); flex-shrink:0; width:80px; }
.video-meta-val { font-size:0.85rem; color:rgba(244,241,235,0.6); font-weight:300; }
.yt-link { display:inline-flex; align-items:center; gap:0.6rem; font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--gold); text-decoration:none; border-bottom:1px solid rgba(200,164,90,0.3); padding-bottom:2px; transition:border-color 0.3s; }
.yt-link:hover { border-color:var(--gold); }
.yt-link::after { content:'→'; }
.video-embed-wrap { position:relative; padding-bottom:56.25%; height:0; overflow:hidden; background:var(--warm); border:1px solid rgba(200,164,90,0.12); }
.video-embed-wrap iframe { position:absolute; top:0; left:0; width:100%; height:100%; border:none; }

/* ── RELEASES ─────────────────────────────────── */
#releases { background:var(--warm); padding:7rem 0; border-top:1px solid rgba(200,164,90,0.12); }
.releases-header { margin-bottom:3.5rem; }
.release-featured { display:grid; grid-template-columns:320px 1fr; border:1px solid rgba(200,164,90,0.12); margin-bottom:2rem; background:rgba(8,8,6,0.4); }
.release-featured-art { aspect-ratio:1; background:linear-gradient(135deg,#1a1612,#0d0b08); display:flex; align-items:center; justify-content:center; font-size:4rem; opacity:0.15; position:relative; overflow:hidden; }
.release-featured-art img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.release-featured-body { padding:2.5rem 3rem; display:flex; flex-direction:column; justify-content:center; }
.release-tag { font-family:'Space Mono',monospace; font-size:0.58rem; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold); margin-bottom:0.8rem; }
.release-featured-title { font-family:'Cormorant Garamond',serif; font-size:2.4rem; font-weight:300; line-height:1.1; margin-bottom:0.4rem; }
.release-featured-title em { font-style:italic; color:var(--gold); }
.release-year { font-family:'Space Mono',monospace; font-size:0.62rem; color:rgba(244,241,235,0.35); letter-spacing:0.1em; margin-bottom:1.5rem; }
.release-featured-desc { font-size:0.88rem; color:rgba(244,241,235,0.6); line-height:1.8; font-weight:300; margin-bottom:2rem; max-width:480px; }
.stream-links,.platforms-strip { display:flex; gap:0.7rem; flex-wrap:wrap; margin-top:2rem; padding-top:2rem; border-top:1px solid rgba(200,164,90,0.1); }
.stream-btn { font-family:'Space Mono',monospace; font-size:0.58rem; letter-spacing:0.1em; text-transform:uppercase; padding:0.5rem 1rem; border:1px solid rgba(200,164,90,0.25); color:rgba(244,241,235,0.65); text-decoration:none; transition:all 0.3s; }
.stream-btn:hover { border-color:var(--gold); color:var(--gold); }
.releases-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; }
.release-card { cursor:pointer; }
.release-art { aspect-ratio:1; position:relative; overflow:hidden; margin-bottom:1rem; }
.release-art-bg { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:2.5rem; opacity:0.1; transition:transform 0.5s; }
.release-card:hover .release-art-bg { transform:scale(1.06); }
.bg-a { background:linear-gradient(135deg,#1a1218,#0d0a10); }
.bg-b { background:linear-gradient(135deg,#121a14,#080d09); }
.bg-c { background:linear-gradient(135deg,#1a1512,#0d0b08); }
.bg-d { background:linear-gradient(135deg,#0f1218,#080a0d); }
.release-hover { position:absolute; inset:0; background:rgba(0,0,0,0.55); display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity 0.3s; }
.release-card:hover .release-hover { opacity:1; }
.play-circle { width:48px; height:48px; border-radius:50%; background:var(--gold); display:flex; align-items:center; justify-content:center; font-size:1rem; color:var(--black); text-decoration:none; }
.release-card-title { font-family:'Cormorant Garamond',serif; font-size:1.05rem; font-weight:600; margin-bottom:0.2rem; }
.release-card-meta  { font-family:'Space Mono',monospace; font-size:0.58rem; letter-spacing:0.08em; color:rgba(244,241,235,0.35); }

/* ── GALLERY ─────────────────────────────────── */
#gallery { background:var(--black); padding:7rem 0; border-top:1px solid rgba(200,164,90,0.1); }
.gallery-grid { display:grid; grid-template-columns:1.2fr 1fr 1fr; grid-template-rows:auto auto; gap:4px; margin-top:3rem; }
.gallery-item { overflow:hidden; position:relative; background:var(--warm); }
.gallery-item:first-child { grid-row:span 2; height:644px; }
.gallery-item:not(:first-child) { height:320px; }
.gallery-item img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.6s ease, filter 0.6s ease; filter:brightness(0.9); }
.gallery-item:hover img { transform:scale(1.04); filter:brightness(1); }

/* ── WORK WITH ME PAGE HERO ──────────────────── */
#page-hero .hero-inner { max-width:1240px; margin:0 auto; padding:0 3.5rem; display:grid; grid-template-columns:1.1fr 1fr; gap:6rem; align-items:center; position:relative; z-index:1; }
#page-hero .hero-eyebrow { font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold); margin-bottom:1.4rem; opacity:0; animation:fadeUp 0.8s 0.2s ease forwards; }
#page-hero .hero-title { font-family:'Cormorant Garamond',serif; font-size:clamp(3rem,6vw,5.5rem); font-weight:300; line-height:0.95; letter-spacing:-0.02em; margin-bottom:2rem; opacity:0; animation:fadeUp 0.8s 0.35s ease forwards; }
#page-hero .hero-title em { font-style:italic; color:var(--gold); display:block; }
#page-hero .hero-body,.hero-body p { font-size:1.05rem; font-weight:300; color:rgba(244,241,235,0.72); line-height:1.85; margin-bottom:1.5rem; max-width:520px; opacity:0; animation:fadeUp 0.8s 0.5s ease forwards; }
#page-hero .hero-actions { display:flex; gap:1rem; flex-wrap:wrap; opacity:0; animation:fadeUp 0.8s 0.65s ease forwards; }
.hero-portrait { position:relative; opacity:0; animation:fadeIn 1s 0.6s ease forwards; }
.hero-portrait img { width:100%; display:block; filter:grayscale(20%) brightness(0.9); }
.hero-portrait::after { content:''; position:absolute; top:1.5rem; right:-1.5rem; bottom:-1.5rem; left:1.5rem; border:1px solid rgba(200,164,90,0.3); pointer-events:none; z-index:-1; }

/* ── APPROACH ─────────────────────────────────── */
#approach { background:var(--black); padding:5rem 0; border-top:1px solid rgba(200,164,90,0.1); border-bottom:1px solid rgba(200,164,90,0.1); }
.approach-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(200,164,90,0.1); border:1px solid rgba(200,164,90,0.1); }
.approach-item { background:var(--black); padding:3rem 2.5rem; position:relative; overflow:hidden; transition:background 0.3s; }
.approach-item:hover { background:var(--warm); }
.approach-item::after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform 0.4s ease; }
.approach-item:hover::after { transform:scaleX(1); }
.approach-icon { font-size:1.6rem; margin-bottom:1.5rem; opacity:0.7; }
.approach-title { font-family:'Cormorant Garamond',serif; font-size:1.35rem; font-weight:600; margin-bottom:0.8rem; }
.approach-desc { font-size:0.85rem; color:rgba(244,241,235,0.55); line-height:1.75; font-weight:300; }

/* ── SERVICES ─────────────────────────────────── */
#services { background:var(--warm); padding:7rem 0; }
.services-intro { display:grid; grid-template-columns:1fr 1fr; gap:4rem; margin-bottom:5rem; align-items:end; }
.services-intro p { font-size:0.95rem; color:rgba(244,241,235,0.6); line-height:1.85; font-weight:300; }
.service-block { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:rgba(200,164,90,0.1); border:1px solid rgba(200,164,90,0.1); margin-bottom:1px; }
.service-block.full { grid-template-columns:1fr; }
.service-card { background:var(--black); padding:3.5rem; position:relative; overflow:hidden; transition:background 0.4s; }
.service-card:hover { background:#0f0e0b; }
.service-num { font-family:'Space Mono',monospace; font-size:0.58rem; letter-spacing:0.2em; color:var(--gold); margin-bottom:1.8rem; display:flex; align-items:center; gap:1rem; }
.service-num::after { content:''; flex:1; height:1px; background:rgba(200,164,90,0.2); }
.service-name { font-family:'Cormorant Garamond',serif; font-size:2rem; font-weight:300; line-height:1.1; margin-bottom:1rem; }
.service-name em { font-style:italic; color:var(--gold); }
.service-tagline { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1rem; color:rgba(244,241,235,0.45); margin-bottom:2.5rem; }
.service-cols { display:grid; grid-template-columns:1fr 1fr; gap:2rem; margin-bottom:2.5rem; }
.service-block.full .service-cols { grid-template-columns:repeat(3,1fr); }
.service-col-title { font-family:'Space Mono',monospace; font-size:0.58rem; letter-spacing:0.15em; text-transform:uppercase; color:var(--gold); margin-bottom:1rem; }
.service-list { list-style:none; display:flex; flex-direction:column; gap:0.55rem; }
.service-list li { font-size:0.85rem; color:rgba(244,241,235,0.6); font-weight:300; line-height:1.5; display:flex; align-items:baseline; gap:0.6rem; }
.service-list li::before { content:'—'; color:var(--gold); font-size:0.7rem; flex-shrink:0; }
.service-cta-link { display:inline-flex; align-items:center; gap:0.6rem; font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--gold); background:none; border:none; border-bottom:1px solid rgba(200,164,90,0.3); padding-bottom:2px; cursor:pointer; transition:border-color 0.3s, gap 0.3s; }
.service-cta-link:hover { border-color:var(--gold); gap:1rem; }
.service-cta-link::after { content:'→'; }

/* ── TESTIMONIALS ─────────────────────────────── */
#testimonials { background:var(--black); padding:7rem 0; border-top:1px solid rgba(200,164,90,0.1); }
.testimonials-header { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:4rem; }
.carousel-wrap { position:relative; overflow:hidden; }
.carousel-track { display:flex; transition:transform 0.6s cubic-bezier(0.4,0,0.2,1); }
.testimonial-slide { min-width:100%; display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
.testimonial-card { background:var(--warm); padding:3rem; position:relative; overflow:hidden; border:1px solid rgba(200,164,90,0.08); transition:border-color 0.3s; }
.testimonial-card:hover { border-color:rgba(200,164,90,0.25); }
.t-quote-mark { font-family:'Cormorant Garamond',serif; font-size:7rem; font-weight:300; color:rgba(200,164,90,0.08); position:absolute; top:-1.5rem; left:2rem; line-height:1; pointer-events:none; }
.t-text { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.2rem; line-height:1.65; color:rgba(244,241,235,0.85); margin-bottom:2.5rem; position:relative; z-index:1; }
.t-author { display:flex; align-items:center; gap:1rem; }
.t-author-line { width:24px; height:1px; background:var(--gold); flex-shrink:0; }
.t-name { font-size:0.82rem; font-weight:500; color:var(--offwhite); }
.t-role { font-size:0.72rem; color:rgba(244,241,235,0.4); font-weight:300; margin-top:0.2rem; }
.carousel-controls { display:flex; align-items:center; gap:1.5rem; margin-top:2.5rem; }
.carousel-btn { width:44px; height:44px; border:1px solid rgba(200,164,90,0.3); background:transparent; color:var(--gold); font-size:1rem; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all 0.3s; }
.carousel-btn:hover { background:var(--gold); color:var(--black); }
.carousel-dots { display:flex; gap:0.5rem; }
.carousel-dot { width:6px; height:6px; border-radius:50%; background:rgba(200,164,90,0.25); border:none; cursor:pointer; transition:background 0.3s; padding:0; }
.carousel-dot.active { background:var(--gold); }

/* ── CTA SECTION ─────────────────────────────── */
#cta { background:var(--warm); padding:7rem 0; border-top:1px solid rgba(200,164,90,0.12); }
.cta-header { text-align:center; margin-bottom:4rem; }
.cta-header h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.5rem,5vw,4rem); font-weight:300; line-height:1.1; margin-bottom:1rem; }
.cta-header h2 em { font-style:italic; color:var(--gold); }
.cta-header p { font-size:0.95rem; color:rgba(244,241,235,0.55); font-weight:300; max-width:480px; margin:0 auto; line-height:1.8; }
.cta-cards { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:rgba(200,164,90,0.1); border:1px solid rgba(200,164,90,0.1); max-width:900px; margin:0 auto; }
.cta-card { background:var(--black); padding:4rem 3.5rem; display:flex; flex-direction:column; align-items:flex-start; transition:background 0.3s; }
.cta-card:hover { background:#0f0e0b; }
.cta-card-icon { font-size:2rem; margin-bottom:1.5rem; opacity:0.6; }
.cta-card-title { font-family:'Cormorant Garamond',serif; font-size:1.8rem; font-weight:300; margin-bottom:0.8rem; }
.cta-card-title em { font-style:italic; color:var(--gold); }
.cta-card-desc { font-size:0.85rem; color:rgba(244,241,235,0.55); font-weight:300; line-height:1.75; margin-bottom:2.5rem; flex:1; }

/* ── MODAL ───────────────────────────────────── */
.modal-overlay { display:none; position:fixed; inset:0; z-index:500; background:rgba(8,8,6,0.85); backdrop-filter:blur(8px); align-items:center; justify-content:center; padding:2rem; }
.modal-overlay.open { display:flex; }
.modal { background:var(--warm); border:1px solid rgba(200,164,90,0.2); padding:3.5rem; width:100%; max-width:580px; position:relative; max-height:90vh; overflow-y:auto; }
.modal-close { position:absolute; top:1.5rem; right:1.5rem; background:none; border:none; font-size:1.2rem; color:rgba(244,241,235,0.4); cursor:pointer; transition:color 0.3s; }
.modal-close:hover { color:var(--gold); }
.modal-title { font-family:'Cormorant Garamond',serif; font-size:2rem; font-weight:300; margin-bottom:0.5rem; }
.modal-title em { font-style:italic; color:var(--gold); }
.modal-sub { font-size:0.85rem; color:rgba(244,241,235,0.5); font-weight:300; margin-bottom:2.5rem; line-height:1.6; }
.calendly-placeholder { background:rgba(8,8,6,0.4); border:1px dashed rgba(200,164,90,0.2); padding:4rem 2rem; text-align:center; }
.calendly-placeholder p { font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.12em; color:rgba(244,241,235,0.3); margin-bottom:0.8rem; }
.calendly-placeholder a { font-size:0.72rem; color:var(--gold); text-decoration:none; border-bottom:1px solid rgba(200,164,90,0.3); }

/* ── CONTACT HERO ─────────────────────────────── */
#hero.contact-hero { align-items:center; justify-content:center; height:60vh; min-height:480px; text-align:center; }
#hero.contact-hero .hero-content { padding:0 2rem; }
#hero.contact-hero .hero-title { font-family:'Cormorant Garamond',serif; font-size:clamp(3.5rem,8vw,7rem); font-weight:300; line-height:0.92; letter-spacing:-0.02em; opacity:0; animation:fadeUp 0.8s 0.35s ease forwards; }
#hero.contact-hero .hero-title em { font-style:italic; color:var(--gold); }
#hero.contact-hero .hero-sub { margin:1.5rem auto 0; font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.1rem; color:rgba(244,241,235,0.65); max-width:480px; opacity:0; animation:fadeUp 0.8s 0.5s ease forwards; }

/* ── CONTACT PATHS ────────────────────────────── */
#paths { background:var(--black); padding:6rem 0 0; }
.paths-intro { text-align:center; margin-bottom:4rem; }
.paths-intro h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,4vw,3.2rem); font-weight:300; line-height:1.1; margin-bottom:0.8rem; }
.paths-intro h2 em { font-style:italic; color:var(--gold); }
.paths-intro p { font-size:0.9rem; color:rgba(244,241,235,0.5); font-weight:300; max-width:420px; margin:0 auto; line-height:1.8; }
.tab-switch { display:flex; justify-content:center; border-bottom:1px solid rgba(200,164,90,0.15); }
.tab-btn { font-family:'Space Mono',monospace; font-size:0.65rem; letter-spacing:0.15em; text-transform:uppercase; background:none; border:none; cursor:pointer; color:rgba(244,241,235,0.4); padding:1.2rem 3rem; position:relative; transition:color 0.3s; }
.tab-btn::after { content:''; position:absolute; bottom:-1px; left:0; right:0; height:2px; background:var(--gold); transform:scaleX(0); transition:transform 0.3s; }
.tab-btn.active { color:var(--gold); }
.tab-btn.active::after { transform:scaleX(1); }
.tab-btn:hover { color:rgba(244,241,235,0.7); }
.tab-panels { background:var(--warm); border:1px solid rgba(200,164,90,0.1); border-top:none; }
.tab-panel { display:none; padding:4.5rem 3.5rem; }
.tab-panel.active { display:block; }
.call-layout,.message-layout { display:grid; grid-template-columns:1fr 1.4fr; gap:5rem; align-items:start; }
.message-layout { grid-template-columns:1fr 1.6fr; }
.call-info h3,.message-info h3 { font-family:'Cormorant Garamond',serif; font-size:2rem; font-weight:300; line-height:1.15; margin-bottom:1.2rem; }
.call-info h3 em,.message-info h3 em { font-style:italic; color:var(--gold); }
.call-info p,.message-info p { font-size:0.88rem; color:rgba(244,241,235,0.6); line-height:1.85; font-weight:300; margin-bottom:1.2rem; }
.call-details { display:flex; flex-direction:column; gap:1rem; margin-top:2rem; padding-top:2rem; border-top:1px solid rgba(200,164,90,0.12); }
.call-detail { display:flex; align-items:baseline; gap:1rem; }
.call-detail-label { font-family:'Space Mono',monospace; font-size:0.58rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--gold); flex-shrink:0; width:70px; }
.call-detail-val { font-size:0.85rem; color:rgba(244,241,235,0.65); font-weight:300; }
.direct-contacts { margin-top:2.5rem; padding-top:2rem; border-top:1px solid rgba(200,164,90,0.12); display:flex; flex-direction:column; gap:1.2rem; }
.direct-contact-label { font-family:'Space Mono',monospace; font-size:0.55rem; letter-spacing:0.15em; text-transform:uppercase; color:var(--gold); margin-bottom:0.25rem; }
.direct-contact-val { font-size:0.88rem; color:rgba(244,241,235,0.65); font-weight:300; }
.calendly-wrap { background:rgba(8,8,6,0.4); border:1px solid rgba(200,164,90,0.12); min-height:420px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:4rem 2.5rem; }
.calendly-wrap p { font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.12em; color:rgba(244,241,235,0.25); margin-bottom:0.6rem; }
.calendly-link { margin-top:1rem; font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.1em; color:var(--gold); text-decoration:none; border-bottom:1px solid rgba(200,164,90,0.3); }

/* ── FORMS ───────────────────────────────────── */
.contact-form { display:flex; flex-direction:column; gap:1.4rem; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1.4rem; }
.form-group { display:flex; flex-direction:column; gap:0.45rem; }
.form-label { font-family:'Space Mono',monospace; font-size:0.56rem; letter-spacing:0.16em; text-transform:uppercase; color:rgba(244,241,235,0.35); }
.form-input,.form-select,.form-textarea { background:transparent; border:none; border-bottom:1px solid rgba(200,164,90,0.18); padding:0.75rem 0; font-family:'DM Sans',sans-serif; font-size:0.95rem; color:var(--offwhite); outline:none; transition:border-color 0.3s; width:100%; }
.form-input::placeholder,.form-textarea::placeholder { color:rgba(244,241,235,0.18); }
.form-input:focus,.form-select:focus,.form-textarea:focus { border-color:var(--gold); }
.form-textarea { resize:none; height:110px; }
.form-select { cursor:pointer; appearance:none; }
.form-select option { background:var(--warm); }
.form-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; }
.form-note { font-size:0.75rem; color:rgba(244,241,235,0.3); font-weight:300; font-style:italic; }
.form-success { padding:1.2rem 1.5rem; background:rgba(200,164,90,0.08); border:1px solid rgba(200,164,90,0.25); font-family:'Space Mono',monospace; font-size:0.65rem; letter-spacing:0.08em; color:var(--gold); line-height:1.6; }
.form-error-msg { font-family:'Space Mono',monospace; font-size:0.62rem; color:#e07070; margin-top:0.5rem; }

/* ── SOCIALS SECTION ─────────────────────────── */
#socials { background:var(--black); padding:5rem 0; border-top:1px solid rgba(200,164,90,0.1); }
.socials-inner { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:2.5rem; }
.socials-left h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,3.5vw,2.8rem); font-weight:300; line-height:1.1; }
.socials-left h2 em { font-style:italic; color:var(--gold); }
.socials-left p { font-size:0.85rem; color:rgba(244,241,235,0.45); font-weight:300; margin-top:0.6rem; }
.socials-links { display:flex; gap:1rem; flex-wrap:wrap; }
.social-btn { display:flex; align-items:center; gap:0.6rem; font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.1em; text-transform:uppercase; padding:0.75rem 1.4rem; border:1px solid rgba(200,164,90,0.2); color:rgba(244,241,235,0.65); text-decoration:none; transition:all 0.3s; }
.social-btn:hover { border-color:var(--gold); color:var(--gold); }

/* ── FOOTER ──────────────────────────────────── */
#site-footer { background:var(--black); border-top:1px solid rgba(200,164,90,0.1); padding:2.5rem 3.5rem; }
.footer-inner { max-width:1240px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; }
.footer-logo { font-family:'Cormorant Garamond',serif; font-size:1.1rem; font-weight:600; color:var(--offwhite); text-decoration:none; letter-spacing:0.05em; }
.footer-logo span { color:var(--gold); }
.footer-copy { font-size:0.72rem; color:rgba(244,241,235,0.3); letter-spacing:0.05em; }
.footer-socials { display:flex; gap:1.8rem; }
.social-link { font-family:'Space Mono',monospace; font-size:0.62rem; letter-spacing:0.12em; text-transform:uppercase; color:rgba(244,241,235,0.35); text-decoration:none; transition:color 0.3s; }
.social-link:hover { color:var(--gold); }

/* ── WORK WITH ME HERO BACKGROUND ────────────── */
#page-hero.wwm { background:var(--warm); min-height:75vh; padding-top:80px; display:flex; align-items:center; position:relative; overflow:hidden; }
#page-hero.wwm::before { content:'WORK'; position:absolute; right:-2rem; bottom:-3rem; font-family:'Cormorant Garamond',serif; font-size:22rem; font-weight:600; color:rgba(200,164,90,0.04); line-height:1; pointer-events:none; letter-spacing:-0.04em; white-space:nowrap; }

/* ── ANIMATIONS ──────────────────────────────── */
@keyframes fadeUp   { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }
@keyframes fadeIn   { from{opacity:0} to{opacity:1} }
@keyframes scrollDrop { 0%{transform:scaleY(0);transform-origin:top;opacity:1} 50%{transform:scaleY(1);transform-origin:top;opacity:1} 100%{transform:scaleY(1);transform-origin:top;opacity:0} }

/* ── RESPONSIVE ──────────────────────────────── */
@media (max-width:1024px) {
  .singles-grid,.releases-grid { grid-template-columns:repeat(2,1fr); }
  .service-block { grid-template-columns:1fr; }
  .service-block.full .service-cols { grid-template-columns:1fr 1fr; }
  .release-featured { grid-template-columns:1fr; }
  .release-featured-art { aspect-ratio:16/7; }
  .video-inner { grid-template-columns:1fr; gap:3rem; }
  .gallery-grid { grid-template-columns:1fr 1fr; }
  .gallery-item:first-child { grid-row:span 1; height:320px; }
  .testimonial-slide { grid-template-columns:1fr; }
  .cta-cards { grid-template-columns:1fr; }
  .call-layout,.message-layout { grid-template-columns:1fr; gap:3rem; }
}
@media (max-width:768px) {
  #site-nav { padding:1.2rem 1.5rem; }
  #site-nav.scrolled { padding:0.9rem 1.5rem; }
  #site-nav.solid { padding:1.2rem 1.5rem; }
  .nav-links { display:none; }
  .nav-hamburger { display:flex; }
  .container { padding:0 1.5rem; }
  section { padding:5rem 0; }
  #hero { min-height:100svh; }
  .hero-content { padding:0 1.5rem 4rem; }
  .hero-scroll { display:none; }
  .intro-grid { grid-template-columns:1fr; }
  .intro-bio { border-right:none; border-bottom:1px solid rgba(200,164,90,0.12); padding:3.5rem 1.5rem; }
  .intro-quote { padding:3.5rem 1.5rem; }
  .singles-grid { grid-template-columns:1fr 1fr; }
  .insta-grid { grid-template-columns:repeat(3,1fr); }
  #offerings { grid-template-columns:1fr; }
  .offering-card:first-child { border-right:none; border-bottom:1px solid rgba(200,164,90,0.12); }
  #page-hero { grid-template-columns:1fr; }
  .page-hero-right { min-height:55vw; }
  .story-grid { grid-template-columns:1fr; }
  .story-img { min-height:300px; }
  .story-img::after { background:linear-gradient(to top,var(--warm) 0%,transparent 40%); }
  .story-text { padding:3.5rem 1.5rem; }
  .services-intro { grid-template-columns:1fr; gap:2rem; }
  .service-cols { grid-template-columns:1fr; gap:1.5rem; }
  .service-block.full .service-cols { grid-template-columns:1fr; }
  .testimonials-header { flex-direction:column; align-items:flex-start; gap:1rem; }
  #page-hero.wwm .hero-inner { grid-template-columns:1fr; gap:3rem; padding:3rem 1.5rem; }
  .hero-portrait { max-width:320px; }
  .approach-grid { grid-template-columns:1fr; }
  .gallery-grid { grid-template-columns:1fr 1fr; gap:3px; }
  .gallery-item:not(:first-child),.gallery-item:first-child { height:200px; }
  .tab-panel { padding:3rem 1.5rem; }
  .tab-btn { padding:1rem 1.5rem; font-size:0.58rem; }
  .form-row { grid-template-columns:1fr; }
  .socials-inner { flex-direction:column; align-items:flex-start; }
  .footer-inner { flex-direction:column; gap:1.5rem; text-align:center; }
  .footer-socials { justify-content:center; flex-wrap:wrap; }
}
@media (max-width:480px) {
  .hero-actions { flex-direction:column; }
  .singles-grid { grid-template-columns:1fr 1fr; }
  .gallery-grid { grid-template-columns:1fr; }
  .gallery-item,.gallery-item:first-child { height:260px; }
  .cta-cards { max-width:100%; }
}
