/* ============================================
   LUIS FABREGA — Visual Artist Theme
   Main Stylesheet v1.0
   ============================================ */

:root {
  --ink:        #0c0b09;
  --ink-2:      #141310;
  --ink-3:      #1a1814;
  --cream:      #f2ede6;
  --gold:       #b8924a;
  --gold-light: #d4aa6a;
  --muted:      #7a7267;
  --border:     rgba(184,146,74,0.22);
  --border-2:   rgba(184,146,74,0.12);
  --surface:    #141310;
  --trans:      cubic-bezier(0.25,0.46,0.45,0.94);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }

body {
  background: var(--ink);
  color: var(--cream);
  font-family: 'Montserrat', sans-serif;
  font-weight: 300;
  letter-spacing: 0.02em;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

img { max-width:100%; height:auto; display:block; }
a { color:inherit; }
button { cursor:pointer; }

/* ========== NAV ========== */
.lf-nav {
  position: fixed;
  top:0; left:0; right:0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem 3.5rem;
  background: linear-gradient(to bottom, rgba(12,11,9,0.92) 0%, transparent 100%);
  transition: background 0.4s;
}
.lf-nav.scrolled { background: rgba(10,9,7,0.97); }

.nav-logo {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--cream);
  text-decoration: none;
}
.nav-logo img { height:40px; width:auto; }

.nav-links {
  display: flex;
  gap: 2.5rem;
  list-style: none;
}
.nav-links a {
  font-size: 0.62rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--cream);
  text-decoration: none;
  opacity: 0.65;
  transition: opacity 0.3s, color 0.3s;
}
.nav-links a:hover { opacity:1; color:var(--gold-light); }

.nav-cta {
  font-size: 0.58rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold-light);
  border: 1px solid var(--border);
  padding: 0.65rem 1.5rem;
  text-decoration: none;
  transition: background 0.3s, color 0.3s, border-color 0.3s;
}
.nav-cta:hover { background:var(--gold); color:var(--ink); border-color:var(--gold); }

.nav-burger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  padding: 4px;
}
.nav-burger span {
  display: block;
  width: 24px;
  height: 1px;
  background: var(--cream);
  transition: transform 0.3s, opacity 0.3s;
}

/* ========== MOBILE NAV ========== */
.nav-mobile {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(10,9,7,0.98);
  z-index: 999;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.nav-mobile.open { display:flex; }
.nav-mobile ul { list-style:none; text-align:center; }
.nav-mobile-link {
  display: block;
  font-family: 'Cormorant Garamond', serif;
  font-size: 2.5rem;
  font-weight: 300;
  letter-spacing: 0.05em;
  color: var(--cream);
  text-decoration: none;
  padding: 0.75rem 0;
  transition: color 0.3s;
}
.nav-mobile-link:hover { color:var(--gold-light); }
.nav-cta-mobile {
  font-size: 0.7rem !important;
  font-family: 'Montserrat', sans-serif !important;
  letter-spacing: 0.25em !important;
  border: 1px solid var(--border);
  padding: 0.8rem 2rem !important;
  margin-top: 1rem;
  color: var(--gold-light) !important;
}

/* ========== BUTTONS ========== */
.btn-primary {
  display: inline-block;
  font-size: 0.6rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  background: var(--gold);
  color: var(--ink);
  padding: 1.05rem 2.5rem;
  text-decoration: none;
  font-weight: 500;
  transition: background 0.3s;
}
.btn-primary:hover { background:var(--gold-light); }

.btn-ghost {
  display: inline-block;
  font-size: 0.6rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  border: 1px solid var(--border);
  color: var(--cream);
  padding: 1.05rem 2.5rem;
  text-decoration: none;
  transition: border-color 0.3s, color 0.3s;
}
.btn-ghost:hover { border-color:var(--gold); color:var(--gold-light); }

/* ========== HERO ========== */
.hero {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 1fr 1fr;
  position: relative;
  overflow: hidden;
}
.hero-left {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 9rem 4rem 6rem 5rem;
  position: relative;
  z-index: 2;
}
.hero-eyebrow {
  font-size: 0.6rem;
  letter-spacing: 0.35em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 2rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.hero-eyebrow::before {
  content: '';
  display: block;
  width: 3rem;
  height: 1px;
  background: var(--gold);
}
.hero-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(4.5rem, 7.5vw, 7.5rem);
  font-weight: 300;
  line-height: 0.93;
  letter-spacing: -0.02em;
  margin-bottom: 2.5rem;
}
.hero-name em { font-style:italic; color:var(--gold-light); }
.hero-desc {
  font-size: 0.68rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--muted);
  line-height: 2.2;
  max-width: 28ch;
  margin-bottom: 3rem;
}
.hero-actions { display:flex; gap:1rem; flex-wrap:wrap; }
.hero-right { position:relative; overflow:hidden; }
.hero-right img { width:100%; height:100%; object-fit:cover; }
.hero-image-placeholder {
  width:100%; height:100%;
  background: linear-gradient(135deg,#1a1712 0%,#0c0b09 50%,#1e1a14 100%);
  display:flex; align-items:center; justify-content:center;
}
.hero-image-inner {
  width:72%; height:78%;
  border:1px solid var(--border);
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  gap:1rem; position:relative;
}
.hero-corner {
  position:absolute;
  font-size:0.5rem; letter-spacing:0.2em;
  color:var(--muted); text-transform:uppercase;
  line-height:1.6;
}
.hero-corner.tl { top:1rem; left:1rem; }
.hero-corner.br { bottom:1rem; right:1rem; text-align:right; }
.hero-image-label {
  font-family:'Cormorant Garamond',serif;
  font-style:italic; font-size:0.9rem; color:var(--muted); letter-spacing:0.1em;
}
.hero-image-tag {
  font-size:0.55rem; letter-spacing:0.3em; text-transform:uppercase;
  color:var(--gold); border:1px solid var(--border); padding:0.4rem 1rem;
}
.hero-scroll {
  position:absolute; bottom:3rem; left:5rem;
  display:flex; align-items:center; gap:1rem;
  font-size:0.55rem; letter-spacing:0.25em; text-transform:uppercase; color:var(--muted);
}
.hero-scroll::after {
  content:''; display:block; width:4rem; height:1px; background:var(--muted);
  animation: scrollLine 2s ease-in-out infinite;
}
@keyframes scrollLine { 0%,100%{width:4rem;opacity:1} 50%{width:2rem;opacity:0.4} }

/* ========== SECTION STRUCTURE ========== */
.section-header {
  display:flex; align-items:baseline; justify-content:space-between;
  margin-bottom:4rem; padding-bottom:1.5rem; border-bottom:1px solid var(--border);
}
.section-number { font-size:0.6rem; letter-spacing:0.22em; color:var(--gold); }
.section-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.5rem,4vw,3.5rem); font-weight:300; letter-spacing:-0.01em;
}
.section-title em { font-style:italic; color:var(--gold-light); }
.section-link {
  font-size:0.6rem; letter-spacing:0.25em; text-transform:uppercase;
  color:var(--gold); text-decoration:none;
  border-bottom:1px solid var(--border); padding-bottom:0.2rem;
  transition:color 0.3s, border-color 0.3s;
}
.section-link:hover { color:var(--gold-light); border-color:var(--gold-light); }

/* ========== WORK ========== */
#work { padding:8rem 5rem; background:var(--ink); }
.work-grid {
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr;
  grid-template-rows:auto auto;
  gap:1.5px;
}
.work-item {
  position:relative; overflow:hidden; cursor:pointer;
  display:block; text-decoration:none;
}
.work-item--large { grid-row:span 2; }
.work-placeholder {
  width:100%; aspect-ratio:1;
  display:flex; flex-direction:column;
  align-items:center; justify-content:center; gap:1rem;
  transition:transform 0.7s var(--trans);
  position:relative;
}
.work-item--large .work-placeholder { aspect-ratio:auto; height:100%; min-height:560px; }
.work-item:hover .work-placeholder { transform:scale(1.04); }
.ph-photo   { background:linear-gradient(160deg,#1a1a18,#0f0f0d); }
.ph-video   { background:linear-gradient(160deg,#111318,#0d0e12); }
.ph-music   { background:linear-gradient(160deg,#16110e,#0e0b09); }
.ph-painting{ background:linear-gradient(160deg,#121513,#0c0f0d); }
.ph-prints  { background:linear-gradient(160deg,#16130e,#100e0a); }
.work-placeholder img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; }
.work-icon-text {
  font-family:'Cormorant Garamond',serif; font-style:italic;
  font-size:3rem; font-weight:300; opacity:0.12; color:var(--cream);
  position:relative; z-index:1;
}
.work-overlay {
  position:absolute; bottom:0; left:0; right:0;
  padding:3rem 1.75rem 1.75rem;
  background:linear-gradient(to top,rgba(12,11,9,0.96) 0%,transparent 100%);
  display:flex; flex-direction:column; gap:0.5rem;
  z-index:2;
}
.work-category { font-size:0.55rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--gold); }
.work-title {
  font-family:'Cormorant Garamond',serif;
  font-size:1.5rem; font-weight:300; color:var(--cream); line-height:1.2;
}
.work-title em { font-style:italic; }
.work-action {
  font-size:0.55rem; letter-spacing:0.25em; text-transform:uppercase;
  color:var(--muted); margin-top:0.5rem; transition:color 0.3s;
}
.work-item:hover .work-action { color:var(--gold-light); }

/* ========== PRINTS ========== */
#prints { padding:8rem 5rem; background:var(--surface); }
.prints-intro { display:grid; grid-template-columns:1fr 1fr; gap:6rem; margin-bottom:5rem; align-items:end; }
.prints-text p { font-size:0.9rem; line-height:2.1; color:var(--muted); max-width:44ch; }
.prints-text p em { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.05rem; color:var(--cream); }
.prints-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; }
.stat-item { border-top:1px solid var(--border); padding-top:1.5rem; }
.stat-num { font-family:'Cormorant Garamond',serif; font-size:2.5rem; font-weight:300; color:var(--gold-light); line-height:1; margin-bottom:0.5rem; }
.stat-label { font-size:0.55rem; letter-spacing:0.22em; text-transform:uppercase; color:var(--muted); }
.prints-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5px; }
.print-card { position:relative; overflow:hidden; cursor:pointer; text-decoration:none; display:block; }
.print-placeholder {
  aspect-ratio:3/4; display:flex; align-items:center; justify-content:center;
  transition:transform 0.6s var(--trans);
}
.print-placeholder img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; }
.print-numeral {
  font-family:'Cormorant Garamond',serif; font-style:italic;
  font-size:2rem; font-weight:300; opacity:0.12; color:var(--cream);
}
.print-card:hover .print-placeholder { transform:scale(1.05); }
.pp1 { background:linear-gradient(170deg,#181612,#0f0d09); }
.pp2 { background:linear-gradient(170deg,#0e1218,#090d12); }
.pp3 { background:linear-gradient(170deg,#161218,#0f0d14); }
.pp4 { background:linear-gradient(170deg,#121614,#0d1110); }
.print-info { padding:1.25rem 1rem; background:var(--surface); }
.print-edition { font-size:0.5rem; letter-spacing:0.25em; text-transform:uppercase; color:var(--gold); margin-bottom:0.5rem; }
.print-name { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.05rem; color:var(--cream); margin-bottom:0.75rem; }
.print-price { font-size:0.75rem; letter-spacing:0.08em; color:var(--muted); }
.print-price strong { font-weight:400; color:var(--cream); font-size:0.95rem; }
.print-add {
  display:block; text-align:center;
  font-size:0.55rem; letter-spacing:0.25em; text-transform:uppercase;
  border:1px solid var(--border); color:var(--cream); padding:0.65rem;
  margin-top:0.75rem; text-decoration:none;
  transition:background 0.3s, color 0.3s, border-color 0.3s;
}
.print-add:hover { background:var(--gold); border-color:var(--gold); color:var(--ink); }

/* ========== SESSIONS ========== */
.lf-sessions { display:grid; grid-template-columns:1fr 1fr; min-height:90vh; }
.sessions-image {
  background:linear-gradient(145deg,#12100e,#1a1714,#0d0c0a);
  display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden;
}
.sessions-image img { width:100%; height:100%; object-fit:cover; }
.sessions-image-frame {
  width:62%; height:72%;
  border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center;
  flex-direction:column; gap:1rem; position:relative;
}
.sessions-eiffel { font-size:2rem; opacity:0.2; color:var(--gold); }
.sessions-placeholder-text {
  font-family:'Cormorant Garamond',serif; font-style:italic;
  font-size:0.9rem; color:var(--muted); letter-spacing:0.1em;
}
.location-badge {
  position:absolute; bottom:-1px; left:-1px;
  background:var(--gold); color:var(--ink);
  font-family:'Montserrat',sans-serif;
  font-size:0.5rem; letter-spacing:0.3em; text-transform:uppercase;
  padding:0.5rem 1.5rem; font-weight:500;
}
.sessions-content { padding:7rem 5rem; display:flex; flex-direction:column; justify-content:center; }
.sessions-eyebrow {
  font-size:0.6rem; letter-spacing:0.35em; text-transform:uppercase;
  color:var(--gold); margin-bottom:1.5rem;
  display:flex; align-items:center; gap:1rem;
}
.sessions-eyebrow::before { content:''; width:2rem; height:1px; background:var(--gold); display:block; }
.sessions-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.8rem,4vw,4.2rem); font-weight:300; line-height:1.1; margin-bottom:2rem;
}
.sessions-title em { font-style:italic; color:var(--gold-light); }
.sessions-desc { font-size:0.82rem; line-height:2; color:var(--muted); max-width:42ch; margin-bottom:3rem; }
.sessions-features { list-style:none; margin-bottom:3rem; }
.sessions-features li {
  font-size:0.65rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--muted);
  padding:0.9rem 0; border-bottom:1px solid var(--border);
  display:flex; align-items:center; gap:1rem;
}
.sessions-features li::before { content:''; width:0.4rem; height:0.4rem; background:var(--gold); display:block; flex-shrink:0; }

/* ========== MUSIC ========== */
.lf-music {
  padding:8rem 5rem;
  background:var(--ink);
  display:grid; grid-template-columns:1fr 1fr; gap:7rem; align-items:center;
}
.music-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.5rem,3.5vw,3.5rem); font-weight:300; line-height:1.1; margin:1.5rem 0;
}
.music-title em { font-style:italic; color:var(--gold-light); }
.music-desc { font-size:0.82rem; line-height:2; color:var(--muted); max-width:44ch; margin-bottom:3rem; }
.music-platforms { display:flex; flex-direction:column; gap:1px; }
.platform-link {
  display:flex; align-items:center; justify-content:space-between;
  padding:1.25rem 1.5rem; background:var(--surface); text-decoration:none; color:var(--cream);
  transition:background 0.3s; border-left:2px solid transparent;
}
.platform-link:hover { background:#1c1a15; border-left-color:var(--gold); }
.platform-left { display:flex; align-items:center; gap:1.25rem; }
.platform-icon-char { font-size:1.1rem; color:var(--gold-light); width:20px; text-align:center; }
.platform-name { font-size:0.7rem; letter-spacing:0.15em; text-transform:uppercase; }
.platform-sub { font-size:0.55rem; letter-spacing:0.1em; color:var(--muted); margin-top:0.2rem; }
.platform-arrow { font-size:0.8rem; color:var(--gold); opacity:0; transition:opacity 0.3s, transform 0.3s; }
.platform-link:hover .platform-arrow { opacity:1; transform:translateX(4px); }
.music-releases-label { font-size:0.55rem; letter-spacing:0.25em; text-transform:uppercase; color:var(--muted); margin-bottom:1.5rem; }
.music-album {
  background:var(--surface); padding:2rem;
  display:flex; align-items:center; gap:1.5rem;
  transition:background 0.3s; cursor:pointer; margin-bottom:1.5px;
}
.music-album:hover { background:#1c1a15; }
.album-art {
  width:70px; height:70px; border:1px solid var(--border);
  background:linear-gradient(135deg,#1a1209,#0d0b06);
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.album-art img { width:100%; height:100%; object-fit:cover; }
.album-info { flex:1; }
.album-title { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.1rem; margin-bottom:0.3rem; }
.album-year { font-size:0.55rem; letter-spacing:0.2em; text-transform:uppercase; color:var(--muted); }
.album-play {
  width:36px; height:36px; border:1px solid var(--border); border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:0.7rem; color:var(--gold);
  flex-shrink:0; transition:background 0.3s, color 0.3s;
}
.music-album:hover .album-play { background:var(--gold); color:var(--ink); border-color:var(--gold); }

/* ========== GALLERIES ========== */
.lf-galleries { padding:8rem 5rem; background:var(--surface); text-align:center; }
.galleries-header { max-width:60ch; margin:0 auto 5rem; }
.galleries-eyebrow { font-size:0.6rem; letter-spacing:0.35em; text-transform:uppercase; color:var(--gold); margin-bottom:2rem; }
.gold-line { width:3rem; height:1px; background:var(--gold); margin:0 auto 2rem; }
.galleries-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.5rem,4vw,3.5rem); font-weight:300; line-height:1.1; margin-bottom:1.5rem;
}
.galleries-title em { font-style:italic; color:var(--gold-light); }
.galleries-desc { font-size:0.82rem; line-height:2; color:var(--muted); }
.cv-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5px; margin-bottom:4rem; }
.cv-item { background:var(--ink); padding:2.5rem 2rem; text-align:left; border-top:1px solid var(--border); }
.cv-type { font-size:0.5rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--gold); margin-bottom:1rem; }
.cv-name { font-family:'Cormorant Garamond',serif; font-size:1.2rem; font-weight:300; color:var(--cream); margin-bottom:0.5rem; line-height:1.4; }
.cv-year { font-size:0.6rem; letter-spacing:0.18em; color:var(--muted); }

/* ========== CONTACT ========== */
.lf-contact {
  padding:8rem 5rem;
  background:var(--ink);
  display:grid; grid-template-columns:1fr 1fr; gap:8rem; align-items:start;
}
.contact-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(3rem,5vw,5.5rem); font-weight:300; line-height:0.95; margin-bottom:2rem;
}
.contact-title em { font-style:italic; color:var(--gold-light); }
.contact-desc { font-size:0.82rem; line-height:2; color:var(--muted); max-width:40ch; margin-bottom:3rem; }
.contact-details { list-style:none; }
.contact-details li {
  padding:1rem 0; border-bottom:1px solid var(--border);
  display:flex; justify-content:space-between; align-items:center;
}
.contact-label { font-size:0.55rem; letter-spacing:0.25em; text-transform:uppercase; color:var(--muted); }
.contact-value { font-size:0.75rem; letter-spacing:0.05em; color:var(--cream); text-decoration:none; transition:color 0.3s; }
a.contact-value:hover { color:var(--gold-light); }
.form-row { margin-bottom:1px; }
.form-row input,
.form-row textarea,
.form-row select {
  width:100%; background:var(--surface); border:none;
  border-bottom:1px solid var(--border);
  color:var(--cream); font-family:'Montserrat',sans-serif;
  font-size:0.75rem; font-weight:300; letter-spacing:0.08em;
  padding:1.3rem 1rem; outline:none; transition:border-color 0.3s;
  -webkit-appearance:none; appearance:none;
}
.form-row input::placeholder,
.form-row textarea::placeholder { color:var(--muted); font-size:0.62rem; letter-spacing:0.22em; text-transform:uppercase; }
.form-row select { color:var(--muted); }
.form-row select option { background:var(--ink); color:var(--cream); }
.form-row input:focus,
.form-row textarea:focus,
.form-row select:focus { border-bottom-color:var(--gold); }
.form-row textarea { min-height:130px; resize:vertical; }
.form-submit { margin-top:2rem; display:flex; align-items:center; gap:1.5rem; }
.form-submit button {
  font-family:'Montserrat',sans-serif; font-size:0.6rem; letter-spacing:0.25em; text-transform:uppercase;
  background:var(--gold); color:var(--ink); border:none; padding:1.1rem 3rem;
  font-weight:500; transition:background 0.3s;
}
.form-submit button:hover { background:var(--gold-light); }
.form-note { font-size:0.6rem; letter-spacing:0.1em; color:var(--muted); line-height:1.8; }
.lf-form-msg { padding:1rem; font-size:0.7rem; letter-spacing:0.1em; border-left:2px solid var(--gold); margin-bottom:1.5rem; }
.lf-form-msg.success { color:var(--gold-light); }
.lf-form-msg.error { color:#c0392b; border-left-color:#8b1a1a; }

/* ========== FOOTER ========== */
.lf-footer {
  padding:3rem 5rem;
  background:#080807;
  display:flex; align-items:center; justify-content:space-between;
  border-top:1px solid var(--border);
  flex-wrap:wrap; gap:1rem;
}
.footer-logo {
  font-family:'Cormorant Garamond',serif;
  font-size:1rem; font-weight:400; letter-spacing:0.25em; text-transform:uppercase;
  color:var(--cream); opacity:0.6;
}
.footer-copy { font-size:0.55rem; letter-spacing:0.15em; text-transform:uppercase; color:var(--muted); }
.footer-social { display:flex; gap:2rem; list-style:none; flex-wrap:wrap; }
.footer-social a {
  font-size:0.55rem; letter-spacing:0.2em; text-transform:uppercase;
  color:var(--muted); text-decoration:none; transition:color 0.3s;
}
.footer-social a:hover { color:var(--gold-light); }

/* ========== ANIMATIONS ========== */
.fade-in { opacity:0; transform:translateY(22px); animation:fadeUp 0.9s var(--trans) forwards; }
.delay-1 { animation-delay:0.2s; }
.delay-2 { animation-delay:0.4s; }
.delay-3 { animation-delay:0.65s; }
.delay-4 { animation-delay:0.9s; }
@keyframes fadeUp { to { opacity:1; transform:translateY(0); } }

/* ========== SCROLLBAR ========== */
::-webkit-scrollbar { width:4px; }
::-webkit-scrollbar-track { background:var(--ink); }
::-webkit-scrollbar-thumb { background:var(--gold); }

/* ========== INNER PAGES ========== */
.lf-main.lf-inner { padding:10rem 5rem 6rem; }
.lf-container { max-width:900px; margin:0 auto; }
.entry-title { font-family:'Cormorant Garamond',serif; font-size:3rem; font-weight:300; margin-bottom:2rem; }
.entry-content { font-size:0.95rem; line-height:2; color:var(--muted); }

/* ========== RESPONSIVE ========== */
@media (max-width:1024px) {
  .lf-nav { padding:1.5rem 2rem; }
  .nav-links { display:none; }
  .nav-cta { display:none; }
  .nav-burger { display:flex; }
  .hero { grid-template-columns:1fr; }
  .hero-right { height:55vh; }
  .hero-left { padding:9rem 2.5rem 4rem; }
  .hero-scroll { left:2.5rem; }
  #work { padding:6rem 2.5rem; }
  .work-grid { grid-template-columns:1fr 1fr; }
  .work-item--large { grid-column:span 2; grid-row:span 1; }
  .work-item--large .work-placeholder { min-height:320px; }
  #prints { padding:6rem 2.5rem; }
  .prints-intro { grid-template-columns:1fr; gap:3rem; }
  .prints-grid { grid-template-columns:repeat(2,1fr); }
  .lf-sessions { grid-template-columns:1fr; }
  .sessions-image { height:55vh; }
  .sessions-content { padding:5rem 2.5rem; }
  .lf-music { grid-template-columns:1fr; gap:4rem; padding:6rem 2.5rem; }
  .lf-galleries { padding:6rem 2.5rem; }
  .cv-grid { grid-template-columns:repeat(2,1fr); }
  .lf-contact { grid-template-columns:1fr; gap:4rem; padding:6rem 2.5rem; }
  .lf-footer { padding:2.5rem 2.5rem; flex-direction:column; gap:1.5rem; text-align:center; }
  .footer-social { justify-content:center; }
}

@media (max-width:600px) {
  .work-grid { grid-template-columns:1fr; }
  .work-item--large { grid-column:span 1; }
  .prints-grid { grid-template-columns:1fr; }
  .prints-stats { grid-template-columns:1fr 1fr; }
  .cv-grid { grid-template-columns:1fr; }
  .form-submit { flex-direction:column; align-items:flex-start; }
}
