/* ===== Premium luxury v8 (black/gray/white + darker gold) ===== */
:root{
  --bg:#070709;
  --bg2:#0f1013;
  --panel:#12141a;
  --text:#f5f7fb;
  --muted:#a0a6b3;
  --accent:#b88a2a;
  --accent2:#8f6a1f;
  --radius:22px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth; scroll-padding-top:90px}
body{
  margin:0;
  font-family:'Inter',system-ui,sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.7;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
code{background:rgba(255,255,255,.06);padding:.15rem .35rem;border-radius:8px}
::selection{background:rgba(184,138,42,.35)}

.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
.link{color:var(--accent); text-decoration:underline; text-underline-offset:3px}
.muted{color:var(--muted); max-width:80ch}

/* Better scrolling feel (subtle snap, not aggressive) */
@media (prefers-reduced-motion: no-preference){
  body{scroll-snap-type:y proximity;}
  .snap{scroll-snap-align:start;}
}

/* NAV */
.nav{
  position:fixed; top:0; left:0; right:0;
  z-index:100;
  background:rgba(7,7,9,.72);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(255,255,255,.06);
  transition: transform 280ms ease, background 280ms ease;
}
.nav.nav--hidden{ transform: translateY(-110%); }
.nav.nav--solid{ background:rgba(7,7,9,.92); }
.nav-inner{
  max-width:1200px;
  margin:0 auto;
  padding:1rem 2rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}
.brand{display:flex;align-items:center}
.brand-img{height:80px;width:auto;opacity:.98}
.menu{display:flex;align-items:center;gap:1.1rem}
.menu-link{opacity:.85}
.menu-link:hover{opacity:1}

.menu-toggle{
  display:none;
  background:none; border:1px solid rgba(255,255,255,.18);
  color:var(--text);
  border-radius:999px;
  padding:.45rem .75rem;
  font-size:1.1rem;
}

/* HERO slideshow */
.hero{
  height:100vh;
  position:relative;
  overflow:hidden;
  padding-top:84px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.hero-slides{position:absolute; inset:0; z-index:0}
.hero-slide{
  position:absolute; inset:0;
  background-size:cover;
  background-position:center;
  filter:saturate(0.9) contrast(1.08) brightness(0.56);
  transform:scale(1.02) translate3d(0,0,0);
  opacity:0;
  transition: opacity 900ms ease, transform 12000ms ease;
  will-change: opacity, transform;
}
.hero-slide.is-active{opacity:1; transform:scale(1.08) translate3d(0,0,0);}
.hero-overlay{
  position:absolute; inset:0;
  background:
    radial-gradient(900px 480px at 20% 10%, rgba(184,138,42,.16), transparent 60%),
    radial-gradient(1200px 700px at 70% 60%, rgba(255,255,255,.05), transparent 55%),
    linear-gradient(to bottom, rgba(0,0,0,.32), rgba(0,0,0,.68));
  z-index:1;
}
.hero-content{
  position:relative;
  z-index:2;
  max-width:920px;
  padding:0 2rem;
  text-align:center;
}
.hero-eyebrow{
  color:var(--accent);
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:.78rem;
}
.hero h1{font-size:clamp(2.3rem,5vw,4.8rem);margin:1rem 0}
.hero p{color:var(--muted);max-width:620px;margin:0 auto}
.hero-actions{margin-top:2rem;display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.hero-meta{
  display:inline-flex;gap:.65rem;align-items:center;margin-top:1.75rem;
  color:rgba(245,247,251,.78);font-size:.95rem;
}
.hero-meta .dot{
  width:7px;height:7px;border-radius:999px;background:var(--accent);
  box-shadow:0 0 0 4px rgba(184,138,42,.18);
}

.btn{
  padding:.85rem 1.5rem;
  border-radius:999px;
  font-weight:600;
  cursor:pointer;
  border:1px solid transparent;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
}
.btn.primary{background:var(--accent);color:#0a0a0c}
.btn.ghost{background:transparent;border-color:rgba(184,138,42,.9);color:var(--text)}
.btn:hover{transform:translateY(-1px)}
.full{width:100%}

/* SECTIONS */
.section{padding:6.3rem 0}
.section.alt{
  background:
    radial-gradient(900px 420px at 10% 0%, rgba(184,138,42,.07), transparent 60%),
    var(--bg2);
}
.container{max-width:1200px;margin:0 auto;padding:0 2rem}
.container.narrow{max-width:760px}

/* ABOUT: text left, photo right */
.about-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:start;margin-top:1.25rem;}
.about-media{display:flex;justify-content:flex-end;}
.about-photo{width:min(320px, 100%);border-radius:22px;border:1px solid rgba(255,255,255,.10);box-shadow:0 30px 90px rgba(0,0,0,.60);}
@media (max-width: 900px){
  .about-layout{grid-template-columns:1fr;}
  .about-media{justify-content:flex-start;}
}

h2{font-size:2.2rem;margin:0 0 1.25rem}
.lux-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}
.lux-card{
  padding:2rem;
  border-radius:var(--radius);
  background:linear-gradient(145deg,#141622,#0c0d12);
  border:1px solid rgba(255,255,255,.07);
  box-shadow:0 24px 60px rgba(0,0,0,.45);
  transition:transform .35s ease, box-shadow .35s ease;
}
.lux-card:hover{transform:translateY(-6px);box-shadow:0 34px 90px rgba(0,0,0,.55)}
.lux-card img{
  border-radius:16px;
  margin-bottom:1.05rem;
  width:100%;
  height:170px;
  object-fit:cover;
}
.lux-label{color:var(--accent);font-size:.75rem;letter-spacing:.22em;text-transform:uppercase}

.logo-strip{margin-top:2.25rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap;opacity:.95}
.logo-strip-img{height:64px;width:auto;filter:drop-shadow(0 12px 24px rgba(0,0,0,.45));opacity:.92}
.logo-strip-img:hover{opacity:1}

/* VALUES */
.values{list-style:none;padding:0;margin:1.5rem 0 0}
.values li{padding:.65rem 0;border-bottom:1px solid rgba(255,255,255,.09);color:var(--muted)}

/* FORM */
.lux-form{display:grid;gap:1rem;margin-top:1.25rem}
input,textarea{
  width:100%;
  background:#0b0c10;
  border:1px solid rgba(255,255,255,.14);
  color:var(--text);
  padding:.95rem 1rem;
  border-radius:14px;
  outline:none;
}
input:focus,textarea:focus{border-color:rgba(184,138,42,.7);box-shadow:0 0 0 4px rgba(184,138,42,.12)}
textarea{min-height:150px;resize:vertical}
.form-note{margin:.25rem 0 0; color:var(--muted); font-size:.92rem}
.form-fallback{margin:0; color:var(--muted); font-size:.92rem}

/* CONTACT SOCIAL BUTTONS */
.contact-social{
  margin-top:1.25rem;
  display:flex;
  gap:.75rem;
  flex-wrap:wrap;
}
.social-btn{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  padding:.75rem 1rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.03);
  color:var(--text);
  opacity:.95;
}
.social-btn:hover{border-color:rgba(184,138,42,.45); background:rgba(184,138,42,.08)}
.social-btn .svg{width:18px;height:18px; fill:none; stroke:var(--accent); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round}

/* GALLERY */
.gallery-grid{margin-top:2rem;display:grid;grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));gap:1rem}
.gallery-item{
  position:relative;border-radius:18px;overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  cursor:pointer;
}
.gallery-item img{
  width:100%;height:150px;object-fit:cover;
  transform:scale(1.02);
  transition: transform 450ms ease, filter 450ms ease;
  filter:saturate(.9) contrast(1.05);
}
.gallery-item:hover img{transform:scale(1.06)}
.gallery-cap{
  position:absolute;left:0;right:0;bottom:0;
  padding:.65rem .8rem;
  background:linear-gradient(to top, rgba(0,0,0,.75), rgba(0,0,0,0));
  color:rgba(245,247,251,.92);
  font-size:.9rem;
}

/* FOOTER */
.footer{
  border-top:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(900px 420px at 20% 0%, rgba(184,138,42,.08), transparent 60%),
    linear-gradient(to top, #070709, #0f1013);
  padding:4rem 2rem 2rem;
}
.footer-inner{
  max-width:1200px;margin:0 auto;
  display:grid;grid-template-columns:1fr auto;gap:3rem;
}
.footer-brand{letter-spacing:.28em;text-transform:uppercase;font-weight:700;margin-bottom:.75rem}
.footer-about p{max-width:520px;color:var(--muted);font-size:.95rem;margin:0}
.footer-social{display:flex;flex-direction:column;gap:.75rem;align-items:flex-end}
.footer-social-link{color:var(--accent);font-size:.98rem;display:inline-flex;gap:.55rem;align-items:center}
.footer-social-link:hover{opacity:.9}
.footer-bottom{text-align:center;margin-top:3rem;font-size:.85rem;color:var(--muted)}
.ic .svg{width:18px;height:18px; fill:none; stroke:var(--accent); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round}

/* Reveal */
.reveal{opacity:0;transform:translateY(28px);transition:900ms cubic-bezier(.2,.7,.2,1)}
.reveal.active{opacity:1;transform:none}

/* Language button */
.translate-btn{
  background:transparent;
  border:1px solid rgba(184,138,42,.55);
  color:var(--text);
  padding:.55rem 1rem;
  border-radius:999px;
  opacity:.9;
}
.translate-btn:hover{opacity:1}

/* MOBILE MENU */
@media (max-width: 860px){
  .menu-toggle{display:inline-flex}
  .menu{
    position:absolute;top:100%;right:0;left:0;
    display:none;flex-direction:column;align-items:flex-start;gap:1rem;
    padding:1rem 2rem 1.25rem;
    background:rgba(7,7,9,.92);
    backdrop-filter:blur(16px);
    border-bottom:1px solid rgba(255,255,255,.06);
  }
  .menu.open{display:flex}
  .menu-link{padding:.35rem 0}
  .footer-inner{grid-template-columns:1fr}
  .footer-social{align-items:flex-start}
  .brand-img{height:32px}
}

/* MODAL */
.modal[hidden]{display:none}
.modal{position:fixed; inset:0; z-index:220;}
.modal-backdrop{position:absolute; inset:0; background:rgba(0,0,0,.72);}
.modal-panel{
  position:relative;
  width:min(860px, calc(100% - 2rem));
  margin:6vh auto 0;
  background:radial-gradient(1200px 500px at 10% 0%, rgba(184,138,42,.10), transparent 60%),
             linear-gradient(145deg,#141622,#0c0d12);
  border:1px solid rgba(255,255,255,.10);
  border-radius:26px;
  box-shadow:0 40px 120px rgba(0,0,0,.70);
  padding:1.25rem 1.25rem 1.5rem;
}
.modal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.modal-title{letter-spacing:.22em;text-transform:uppercase;font-size:.85rem;color:var(--accent)}
.modal-sub{color:var(--muted);margin:.75rem 0 1rem;max-width:70ch}
.modal-close{
  border:1px solid rgba(255,255,255,.16);
  background:transparent;color:var(--text);
  border-radius:999px;padding:.35rem .65rem;cursor:pointer;
}

.lang-toolbar.onecol{display:flex;gap:.75rem;align-items:center;margin:0 0 1rem;}
.lang-search{
  flex:1;background:#0b0c10;border:1px solid rgba(255,255,255,.14);
  border-radius:999px;padding:.8rem 1rem;color:var(--text);outline:none;
}
.lang-search:focus{border-color:rgba(184,138,42,.7);box-shadow:0 0 0 4px rgba(184,138,42,.12)}
.lang-reset{
  background:transparent;color:var(--text);
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;padding:.75rem 1rem;cursor:pointer;white-space:nowrap;
}
.lang-reset:hover{border-color:rgba(184,138,42,.45)}

.lang-save{
  background:linear-gradient(180deg, var(--accent), var(--accent2));
  color:#0a0a0c;
  border:0;
  border-radius:999px;
  padding:.75rem 1.15rem;
  cursor:pointer;
  font-weight:700;
  white-space:nowrap;
}
.lang-save:hover{filter:brightness(1.03)}

.lang-col.single{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  border-radius:20px;overflow:hidden;
}
.lang-col-title{
  padding:.9rem 1rem;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--accent);border-bottom:1px solid rgba(255,255,255,.08);
}
.lang-list{max-height:48vh;overflow:auto;padding:.35rem;}
.lang-item{
  width:100%;text-align:left;background:transparent;border:0;color:var(--text);
  padding:.75rem .85rem;border-radius:14px;cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;opacity:.92;
}
.lang-item:hover{background:rgba(184,138,42,.10); opacity:1}
.lang-item.is-selected{background:rgba(184,138,42,.18); border:1px solid rgba(184,138,42,.28);}
.lang-item small{color:var(--muted); font-size:.82rem}
.lang-status{margin-top:1rem;color:var(--muted);font-size:.95rem}

.gt-hidden{position:fixed;left:-9999px;width:1px;height:1px;overflow:hidden;}

/* Lightbox */
.lightbox[hidden]{display:none}
.lightbox{position:fixed; inset:0; z-index:240;}
.lightbox-backdrop{position:absolute; inset:0; background:rgba(0,0,0,.82);}
.lightbox-figure{
  position:relative;width:min(1100px, calc(100% - 2rem));
  margin:6vh auto 0;border-radius:22px;overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(145deg,#141622,#0c0d12);
  box-shadow:0 40px 140px rgba(0,0,0,.75);
}
.lightbox-figure img{width:100%; max-height:72vh; object-fit:contain; background:#070709}
.lightbox-figure figcaption{padding:1rem 1.25rem;color:var(--muted);font-size:.95rem}
.lightbox-close{
  position:absolute;top:.75rem;right:.75rem;border:1px solid rgba(255,255,255,.16);
  background:rgba(0,0,0,.25);color:var(--text);
  border-radius:999px;padding:.35rem .65rem;cursor:pointer;
}

/* Hide GT banners (best-effort) */
iframe.goog-te-banner-frame,
.goog-te-banner-frame,
.goog-te-balloon-frame,
#goog-gt-tt,
body > .skiptranslate,
html > .skiptranslate,
.VIpgJd-ZVi9od-ORHb-OEVmcd,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf-ti6hGc{
  display:none !important;
}
html, body { top:0 !important; margin-top:0 !important; }

/* THANKS PAGE */
.thanks{background:var(--bg);}
.thanks-main{min-height:100vh; display:grid; place-items:center; padding:2rem;}
.thanks-card{
  width:min(560px, 100%);
  border-radius:26px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(145deg,#141622,#0c0d12);
  padding:2rem;
  box-shadow:0 40px 120px rgba(0,0,0,.7);
}
.thanks-card h1{margin:0 0 .5rem}
.thanks-card p{color:var(--muted); margin:0 0 1.5rem}
