*{box-sizing:border-box}
:root{
  --bg:#040404;
  --bg2:#0a0a0a;
  --text:#f5f2ea;
  --muted:#a9a397;
  --line:rgba(245,242,234,.12);
  --gold:#d8b678;
  --card:rgba(255,255,255,.045);
}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:Inter,Arial,sans-serif;
  line-height:1.55;
  overflow-x:hidden;
}
.noise{
  pointer-events:none;
  position:fixed;
  inset:0;
  z-index:999;
  opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 300 300' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.nav{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:50;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:18px 6vw;
  background:linear-gradient(to bottom,rgba(4,4,4,.88),rgba(4,4,4,.15),transparent);
  backdrop-filter:blur(10px);
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
}
.brand img{
  width:42px;
  height:42px;
  object-fit:contain;
}
.brand strong{
  color:var(--text);
  display:block;
  letter-spacing:.15em;
  font-size:14px;
  line-height:1;
}
.brand span{
  color:var(--gold);
  display:block;
  letter-spacing:.22em;
  font-size:10px;
  font-weight:800;
  margin-top:4px;
}
.nav nav{
  display:flex;
  gap:28px;
  color:var(--muted);
  font-size:14px;
  font-weight:600;
}
.nav nav a:hover{color:var(--text)}
.hero{
  min-height:100vh;
  position:relative;
  display:flex;
  align-items:flex-end;
  padding:0 6vw 9vw;
  overflow:hidden;
}
.hero-bg,.hero-overlay{position:absolute;inset:0}
.hero-bg img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.82) contrast(1.08);
}
.hero-overlay{
  background:
    radial-gradient(circle at 72% 35%,rgba(216,182,120,.18),transparent 28%),
    linear-gradient(to top,rgba(4,4,4,.96),rgba(4,4,4,.36),rgba(4,4,4,.06)),
    linear-gradient(to right,rgba(4,4,4,.70),rgba(4,4,4,.04));
}
.hero-content{
  position:relative;
  z-index:3;
  max-width:980px;
}
.eyebrow{
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:12px;
  font-weight:900;
  margin:0 0 16px;
}
h1,h2,h3,p{margin-top:0}
h1{
  font-size:clamp(58px,9vw,128px);
  line-height:.82;
  letter-spacing:-.08em;
  margin-bottom:28px;
}
h2{
  font-size:clamp(36px,6vw,84px);
  line-height:.88;
  letter-spacing:-.07em;
  margin-bottom:20px;
}
h3{
  font-size:clamp(24px,3vw,36px);
  letter-spacing:-.045em;
  margin-bottom:12px;
}
.lead{
  font-size:clamp(18px,2.2vw,25px);
  color:#ded8ce;
  max-width:760px;
}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.center{justify-content:center}
.button{
  display:inline-flex;
  border-radius:999px;
  padding:14px 23px;
  border:1px solid var(--line);
  font-weight:800;
  transition:.25s ease;
}
.button:hover{transform: scale(1.03);}
.primary{background:var(--text);color:#050505;border-color:var(--text)}
.ghost{background:rgba(255,255,255,.045);backdrop-filter:blur(10px)}
.section{padding:110px 6vw}
.statement-section{
  padding:90px 6vw 40px;
  background:#050505;
}
.statement{
  position:relative;
  min-height:520px;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  margin-bottom:34px;
  border:1px solid var(--line);
  border-radius:38px;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
}
.statement.right .statement-content{grid-column:2}
.statement.right .statement-image{grid-column:1;grid-row:1}
.statement.left .statement-content{grid-column:1}
.statement.left .statement-image{grid-column:2;grid-row:1}
.statement-image{
  position:relative;
  height:100%;
  min-height:520px;
  opacity:.34;
}
.statement-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle,transparent,rgba(4,4,4,.62));
}
.statement-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.8) contrast(1.06);
}
.statement-content{
  position:relative;
  z-index:2;
  padding:60px;
}
.statement-content p:not(.eyebrow){
  font-size:clamp(18px,2vw,24px);
  color:var(--muted);
  max-width:600px;
}
.section-head{max-width:950px;margin-bottom:42px}
.work{background:#070707}
.premium-gallery{
  display:grid;
  grid-template-columns:1fr 1.45fr 1fr;
  gap:18px;
  align-items:stretch;
}
.premium-gallery img{
  width:100%;
  height:650px;
  object-fit:cover;
  border-radius:34px;
  border:1px solid var(--line);
  filter:saturate(.85) contrast(1.05);
}
.premium-gallery .landscape{
  height:650px;
}
.references{background:#090909}
.reference-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.reference-grid article,.price-card,.eventfilm,.about-card,.contact-card{
  border:1px solid var(--line);
  background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.025));
  border-radius:30px;
  padding:30px;
  box-shadow:0 30px 90px rgba(0,0,0,.24);
}
.reference-grid p,.price-card li,.eventfilm p,.about-card p,.contact-card p,.small-note{color:var(--muted)}
.offers{background:#040404}
.pricing{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.price-card{min-height:430px}
.price-card.featured{
  border-color:rgba(216,182,120,.68);
  background:linear-gradient(160deg,rgba(216,182,120,.18),rgba(255,255,255,.04));
}
.tag{
  color:var(--gold);
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:12px;
  font-weight:900;
}
.price{
  font-size:50px;
  font-weight:900;
  letter-spacing:-.07em;
  margin:20px 0;
}
.price span{
  font-size:15px;
  color:var(--muted);
  font-weight:600;
}
ul{padding-left:19px}
li{margin:8px 0}
.eventfilm{
  margin-top:18px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:36px;
  align-items:top;
  background:
    linear-gradient(120deg,rgba(216,182,120,.12),rgba(255,255,255,.035)),
    url('assets/DSC07071-2.jpg') center/cover;
  background-blend-mode:normal,darken;
}
.eventfilm h2{margin-bottom:8px}
.event-price{
  font-size:52px;
  font-weight:900;
  letter-spacing:-.07em;
  margin-bottom:10px;
}
.about{
  background:#080808;
}
.about-card{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:40px;
  align-items:start;
}
.about-card p{
  font-size:20px;
}
.contact{
  padding:120px 6vw;
  background:
    linear-gradient(rgba(4,4,4,.76),rgba(4,4,4,.93)),
    url('assets/sport-9.jpg') center/cover;
}
.contact-card{
  max-width:950px;
  margin:0 auto;
  text-align:center;
  padding:56px;
}
footer{
  padding:28px 6vw;
  display:flex;
  justify-content:space-between;
  gap:20px;
  color:var(--muted);
  border-top:1px solid var(--line);
  font-size:13px;
}
.reveal {
  opacity: 0;
  transform: translateY(60px);
  transition:
    opacity 1.2s ease,
    transform 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}

.reveal.active {
  opacity: 1;
  transform: translateY(0);
}
@media(max-width:1050px){
  .statement,.pricing,.reference-grid,.about-card,.eventfilm{
    grid-template-columns:1fr;
  }
  .statement.right .statement-content,
  .statement.left .statement-content,
  .statement.right .statement-image,
  .statement.left .statement-image{
    grid-column:auto;
    grid-row:auto;
  }
  .statement-image{min-height:360px;order:2}
  .statement-content{padding:38px;order:1}
  .premium-gallery{
    grid-template-columns:1fr;
  }
  .premium-gallery img,.premium-gallery .landscape{
    height:540px;
  }
}
@media(max-width:720px){
  .nav{padding:14px 5vw}
  .brand div{display:none}
  .nav nav{gap:13px;font-size:12px}
  .hero{padding:0 5vw 22vw}
  .section,.statement-section,.contact{padding:76px 5vw}
  .statement{min-height:auto;border-radius:26px}
  .statement-content{padding:28px}
  .premium-gallery img,.premium-gallery .landscape{height:430px}
  .contact-card{padding:28px 20px}
  footer{flex-direction:column}
}
