:root{
  --bg: #2F476C;
  --panel: #121823;
  --fg: #F2F4F7;
  --muted: #A8B0BC;
  --line: rgba(242,244,247,.10);
  --shadow: 0 22px 60px rgba(0,0,0,.40);
  --gold: #B49353;
  --gold2: #CAB47C;
  --radius: 18px;
  --container: 1120px;
  --sans: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  --serif: "Cormorant Garamond", "Playfair Display", Georgia, serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--sans);line-height:1.6}
img{max-width:100%;display:block}
.container{width:min(var(--container), calc(100% - 40px));margin:0 auto}
a{color:inherit}
.muted{color:var(--muted)}
.tiny{font-size:12px}
.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:-999px;top:10px;background:#000;color:#fff;padding:10px 12px;border-radius:12px;z-index:9999}
.skip:focus{left:10px}
.header{position:sticky;top:0;z-index:50;background:rgba(14,17,22,.72);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header__inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0}
.brand{display:flex;align-items:center;gap:12px;min-width:220px}
.brand__mark{width:36px;height:36px;border-radius:10px;border:1px solid rgba(200,164,93,.35);box-shadow:0 0 0 4px rgba(200,164,93,.12);background:rgba(255,255,255,.06)}
.brand__name{font-family:var(--serif);text-decoration:none;font-size:18px;letter-spacing:.2px;color:var(--gold2)}
.nav{display:flex;align-items:center;position:relative}
.nav__toggle{display:none;background:transparent;border:1px solid var(--line);color:var(--fg);border-radius:12px;padding:10px 12px}
.nav__icon{display:block;width:18px;height:12px;background:linear-gradient(var(--fg),var(--fg)) 0 0/100% 2px,linear-gradient(var(--fg),var(--fg)) 0 50%/100% 2px,linear-gradient(var(--fg),var(--fg)) 0 100%/100% 2px;background-repeat:no-repeat;opacity:.85}
.nav__links{display:flex;align-items:center;gap:18px}
.nav__links a{text-decoration:none;font-size:14px;color:rgba(242,244,247,.88)}
.nav__links a:hover{color:var(--gold2)}
.lang{display:flex;gap:8px;align-items:center}
.lang__btn{background:transparent;color:rgba(242,244,247,.88);border:1px solid var(--line);border-radius:999px;padding:8px 10px;font-size:12px;cursor:pointer}
.lang__btn[aria-pressed="true"]{border-color:rgba(200,164,93,.55);box-shadow:0 0 0 4px rgba(200,164,93,.12);color:var(--gold2)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg, rgba(200,164,93,.95), rgba(225,201,138,.90));border:1px solid rgba(200,164,93,.55);color:#0B0F14;text-decoration:none;padding:12px 16px;border-radius:999px;font-weight:600;font-size:14px;box-shadow:0 18px 44px rgba(200,164,93,.18)}
.btn:hover{filter:brightness(1.02);transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.btn--small{padding:9px 12px;font-size:13px}
.btn--ghost{background:transparent;color:rgba(242,244,247,.92);border:1px solid var(--line);box-shadow:none}
.btn--ghost:hover{border-color:rgba(200,164,93,.45);color:var(--gold2)}
.hero{position:relative;min-height:78vh;display:flex;align-items:center;background-image:var(--hero-image);background-size:cover;background-position:center}
.hero__overlay{position:absolute;inset:0;background:radial-gradient(900px 520px at 20% 28%, rgba(14,17,22,.70), rgba(14,17,22,.35) 55%, rgba(14,17,22,.12) 100%),linear-gradient(to bottom, rgba(14,17,22,.35), rgba(14,17,22,.78))}
.hero__inner{position:relative;padding:64px 0}
.hero__card{width:min(620px,100%);background:rgba(18,24,35,.74);border:1px solid rgba(200,164,93,.22);border-radius:calc(var(--radius) + 6px);padding:26px 24px;box-shadow:var(--shadow)}
.eyebrow{margin:0 0 8px;color:rgba(242,244,247,.78);font-size:13px;letter-spacing:.18em;text-transform:uppercase}
.hero__title{margin:0 0 10px;font-family:var(--serif);font-weight:600;font-size:clamp(38px,5vw,64px);line-height:1.02;color:var(--gold2)}
.hero__lead{margin:0 0 18px;color:rgba(242,244,247,.88);font-size:16px}
.hero__actions{display:flex;flex-wrap:wrap;gap:10px}
.section{padding:64px 0}
.section--alt{background:rgba(255,255,255,.03);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}
.section__head h2{margin:0;font-family:var(--serif);font-size:30px;font-weight:600;color:var(--gold2)}
.prose{max-width:780px}
.prose p{margin:0 0 12px;color:rgba(242,244,247,.86);font-size:16px}
.featured{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.work{border:1px solid rgba(242,244,247,.10);background:rgba(18,24,35,.55);border-radius:var(--radius);overflow:hidden;padding:0;cursor:pointer;text-align:left;box-shadow:0 16px 44px rgba(0,0,0,.30);transition:transform .15s ease,border-color .15s ease}
.work:hover{transform:translateY(-2px);border-color:rgba(200,164,93,.35)}
.work img{width:100%;aspect-ratio:4/3;object-fit:cover}
.work__meta{padding:14px 14px 16px}
.work__title{font-family:var(--serif);font-size:20px;color:var(--gold2)}
.work__sub{font-size:13px;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(12, 1fr);gap:14px}
.gcard{grid-column:span 4;border-radius:var(--radius);overflow:hidden;border:1px solid rgba(242,244,247,.10);background:rgba(18,24,35,.45);cursor:pointer;box-shadow:0 14px 40px rgba(0,0,0,.30);transition:transform .15s ease,border-color .15s ease}
.gcard:hover{transform:translateY(-2px);border-color:rgba(200,164,93,.35)}
.gcard img{width:100%;aspect-ratio:4/3;object-fit:cover}
.gcard__body{padding:12px 12px 14px}
.gcard__title{margin:0 0 4px;font-weight:600;font-size:14px;color:rgba(242,244,247,.92)}
.gcard__meta{margin:0;font-size:13px;color:var(--muted)}
.about{display:grid;grid-template-columns:1.05fr 1fr;gap:22px;align-items:start}
.about__media{border-radius:var(--radius);overflow:hidden;border:1px solid rgba(242,244,247,.10);box-shadow:var(--shadow)}
.about__media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:18px;align-items:start}
.card,.form{border:1px solid rgba(242,244,247,.10);border-radius:var(--radius);background:rgba(18,24,35,.45);padding:18px 16px;box-shadow:0 14px 40px rgba(0,0,0,.30)}
.card h3{margin:0 0 10px;font-size:16px;color:var(--gold2)}
.card a{color:var(--gold2);text-decoration:none}
.card a:hover{text-decoration:underline}
label{display:block;margin-bottom:12px}
label span{display:block;font-size:13px;color:rgba(242,244,247,.80);margin-bottom:6px}
input,textarea{width:100%;border:1px solid rgba(242,244,247,.12);border-radius:12px;padding:12px 12px;font-family:var(--sans);font-size:14px;background:rgba(14,17,22,.65);color:var(--fg);outline:none}
input:focus,textarea:focus{border-color:rgba(200,164,93,.55);box-shadow:0 0 0 4px rgba(200,164,93,.12)}
.footer{border-top:1px solid var(--line);padding:22px 0}
.footer__inner{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}
.footer a{text-decoration:none}
.footer a:hover{color:var(--gold2)}
.lightbox{position:fixed;inset:0;display:none;z-index:100}
.lightbox[aria-hidden="false"]{display:block}
.lightbox__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72)}
.lightbox__dialog{position:relative;width:min(980px, calc(100% - 30px));margin:26px auto;background:#0B0F14;border-radius:var(--radius);overflow:hidden;border:1px solid rgba(200,164,93,.22);box-shadow:0 30px 90px rgba(0,0,0,.55)}
.lightbox__dialog img{width:100%;max-height:72vh;object-fit:contain;background:#0B0F14}
.lightbox__meta{padding:14px 14px 18px}
.lightbox__meta h3{margin:0 0 6px;font-size:16px;color:var(--gold2)}
.lightbox__close{position:absolute;top:10px;right:10px;width:40px;height:40px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.35);color:#fff;cursor:pointer}
@media (max-width:900px){
  .featured{grid-template-columns:1fr}
  .gcard{grid-column:span 6}
  .about{grid-template-columns:1fr}
  .contact{grid-template-columns:1fr}
}
@media (max-width:720px){
  .brand{min-width:auto}
  .nav__toggle{display:inline-flex;align-items:center;justify-content:center}
  .nav__links{
    position:absolute;right:20px;top:64px;
    background:rgba(14,17,22,.92);
    border:1px solid rgba(200,164,93,.18);
    border-radius:16px;
    padding:10px;
    box-shadow:var(--shadow);
    display:none;
    flex-direction:column;
    min-width:220px;
    gap:10px;
  }
  .nav__links.open{display:flex}
  .nav__links a{padding:8px 10px;border-radius:12px}
  .nav__links a:hover{background:rgba(255,255,255,.05)}
  .hero{min-height:72vh}
  .hero__card{padding:20px 18px}
  .gcard{grid-column:span 12}
}


/* Media section */
.media-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:22px;
}
@media (max-width: 820px){
  .media-grid{ grid-template-columns:1fr; }
}
.media-card{
  display:block;
  padding:18px 18px 16px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:rgba(255,255,255,.04);
  text-decoration:none;
  transition:transform .12s ease, border-color .12s ease, background .12s ease;
}
.media-card:hover{
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.06);
}
.media-title{
  font-weight:700;
  letter-spacing:.2px;
  line-height:1.25;
}
.media-desc{
  margin-top:10px;
  opacity:.86;
  line-height:1.45;
}
.media-meta{
  margin-top:14px;
  font-size:.92rem;
  color:var(--gold);
  display:flex;
  align-items:center;
  gap:8px;
}
