:root {
  --bg: #0e1111;
  --surface: #151919;
  --surface-2: #1d2221;
  --text: #f3efe7;
  --muted: #a8b0ac;
  --accent: #d4a85d;
  --line: rgba(255,255,255,.1);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; font-family:Inter,Arial,sans-serif; background:var(--bg); color:var(--text); }
a { color:inherit; text-decoration:none; }
.site-header { position:sticky; top:0; z-index:20; display:flex; justify-content:space-between; align-items:center; padding:18px 5vw; background:rgba(14,17,17,.88); backdrop-filter:blur(16px); border-bottom:1px solid var(--line); }
.brand { font-size:24px; font-weight:800; letter-spacing:-1px; }
.brand span { color:var(--accent); }
nav { display:flex; gap:26px; align-items:center; font-size:14px; }
nav a { color:#d9dfdc; }
.nav-cta { border:1px solid var(--line); padding:10px 14px; border-radius:999px; }
.hero { min-height:78vh; padding:110px 6vw 70px; position:relative; overflow:hidden; display:flex; align-items:flex-end; background:
linear-gradient(120deg, rgba(4,8,8,.88), rgba(4,8,8,.32)),
radial-gradient(circle at 75% 22%, rgba(212,168,93,.22), transparent 38%),
url("lake-como-hero.png") center center / cover no-repeat; }
.hero:after { content:""; position:absolute; inset:auto -12% -28% 38%; height:70%; background:radial-gradient(ellipse, rgba(255,211,124,.18), transparent 60%); transform:rotate(-9deg); }
.hero-content { position:relative; z-index:2; max-width:820px; }
.eyebrow,.section-no { color:var(--accent); text-transform:uppercase; letter-spacing:.16em; font-weight:700; font-size:12px; }
h1 { font-family:"Playfair Display",serif; font-size:clamp(56px,10vw,122px); line-height:.84; letter-spacing:-.055em; margin:16px 0 28px; }
.lead { max-width:660px; font-size:18px; line-height:1.7; color:#d5d9d6; }
.hero-actions { display:flex; gap:12px; margin-top:32px; flex-wrap:wrap; }
.btn { display:inline-flex; align-items:center; justify-content:center; padding:14px 20px; border-radius:999px; font-weight:700; font-size:14px; }
.btn-primary { background:var(--text); color:#111; }
.btn-ghost { border:1px solid var(--line); background:rgba(255,255,255,.05); }
.hero-badge { position:absolute; right:5vw; bottom:36px; z-index:2; color:#d9dfdc; font-size:12px; letter-spacing:.1em; text-transform:uppercase; }
.section { padding:96px 6vw; border-top:1px solid var(--line); }
.section-head { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-bottom:40px; }
.section-head.compact { align-items:start; }
h2 { font-family:"Playfair Display",serif; font-size:clamp(38px,5vw,68px); line-height:1; margin:10px 0 0; letter-spacing:-.035em; }
.text-link { color:var(--accent); font-weight:700; font-size:14px; }
.tracks { display:grid; gap:12px; }
.track-card { display:grid; grid-template-columns:64px 1fr auto; gap:24px; align-items:center; padding:28px; border:1px solid var(--line); background:var(--surface); transition:.2s ease; }
.track-card:hover { transform:translateY(-2px); border-color:rgba(212,168,93,.45); }
.track-card.featured { background:linear-gradient(120deg, rgba(212,168,93,.12), var(--surface)); }
.track-index { font-family:"Playfair Display",serif; font-size:34px; color:var(--accent); }
.track-tag { color:var(--accent); text-transform:uppercase; letter-spacing:.12em; font-size:10px; font-weight:800; margin:0 0 8px; }
.track-copy h3 { margin:0 0 8px; font-size:26px; }
.track-copy p:not(.track-tag) { color:var(--muted); margin:0; }
.track-link { font-weight:700; font-size:13px; white-space:nowrap; }
.split { display:grid; grid-template-columns:1fr 1fr; gap:8vw; }
.story { font-size:20px; line-height:1.8; color:#d7dcda; max-width:700px; }
.story strong { display:block; margin-top:24px; color:var(--accent); }
.services { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:42px; }
.services article { padding:30px; min-height:240px; border:1px solid var(--line); background:var(--surface); }
.services span { color:var(--accent); font-size:12px; letter-spacing:.15em; }
.services h3 { margin:60px 0 12px; font-size:22px; }
.services p { color:var(--muted); line-height:1.6; }
.cta-section { padding:110px 6vw; text-align:center; background:linear-gradient(180deg,var(--surface),#101414); border-top:1px solid var(--line); }
.cta-section p:not(.eyebrow) { color:var(--muted); max-width:600px; margin:20px auto 28px; line-height:1.7; }
footer { display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; padding:30px 6vw; border-top:1px solid var(--line); color:var(--muted); font-size:13px; }
.footer-brand { color:var(--text); }
@media (max-width:900px){
 nav a:not(.nav-cta){display:none}.hero{min-height:70vh}.section-head,.split{display:block}.section-head .text-link{display:inline-block;margin-top:20px}.services{grid-template-columns:1fr 1fr}.track-card{grid-template-columns:48px 1fr}.track-link{grid-column:2;margin-top:8px}.story{margin-top:30px}
}
@media (max-width:600px){
 .site-header{padding:16px 20px}.hero,.section,.cta-section{padding-left:22px;padding-right:22px}.hero{padding-top:90px}.services{grid-template-columns:1fr}.hero-badge{display:none}h1{font-size:58px}.track-card{padding:20px;grid-template-columns:1fr}.track-index,.track-link{grid-column:1}.track-index{font-size:24px}footer{padding:28px 22px;display:block}footer p{margin:8px 0}
}
