:root{
  --black:#050505;--deep:#0b0b0d;--gold:#ae8067;--gold-light:#d7b49b;--gold-deep:#7d5745;
  --white:#fff;--muted:rgba(255,255,255,.72);--line:rgba(255,255,255,.16);
  --font-serif:'Cormorant Garamond',serif;--font-sans:'Noto Sans KR',sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:var(--font-sans);word-break:keep-all;overflow-x:hidden}
a{color:inherit;text-decoration:none}img,video{max-width:100%;display:block}button,input,select{font:inherit}
.section{position:relative;min-height:100vh;padding:120px 7vw;overflow:hidden}.eyebrow{color:var(--gold-light);letter-spacing:.22em;font-size:12px;text-transform:uppercase}
.btn{display:inline-flex;align-items:center;justify-content:center;min-width:150px;height:48px;padding:0 24px;border:1px solid var(--line);font-size:14px;letter-spacing:.04em;transition:.35s ease}
.btn--gold{background:linear-gradient(135deg,var(--gold-light),var(--gold),var(--gold-deep));border-color:var(--gold);color:#111;box-shadow:0 10px 28px rgba(174,128,103,.22)}.btn--ghost{background:rgba(0,0,0,.2);backdrop-filter:blur(6px)}.btn:hover{transform:translateY(-3px)}
.intro{position:fixed;inset:0;z-index:100;background:#020202;display:grid;place-items:center;transition:opacity 1s ease,visibility 1s ease}.intro.is-hidden{opacity:0;visibility:hidden}.intro__inner{text-align:center}.intro__logo{width:170px;margin:0 auto 28px}.intro h1{font-family:var(--font-serif);font-size:clamp(56px,10vw,150px);line-height:.9;margin:18px 0;font-weight:500}.text-btn{border:0;background:transparent;color:var(--gold-light);letter-spacing:.2em;cursor:pointer}
.popup{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.56);display:grid;place-items:center;padding:24px}.popup.is-hidden{display:none}.popup__card{position:relative;width:min(460px,100%);padding:42px 34px;background:linear-gradient(145deg,#111,#050505);border:1px solid var(--line);box-shadow:0 30px 80px rgba(0,0,0,.55);text-align:center}.popup__card h2{font-family:var(--font-serif);font-size:42px;line-height:1.05;margin:12px 0}.popup__card p{color:var(--muted);line-height:1.8}.popup__close{position:absolute;right:16px;top:12px;border:0;background:transparent;color:#fff;font-size:32px;cursor:pointer}.popup__actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:24px 0}.popup__check{font-size:13px;color:var(--muted)}
.site-header{position:fixed;left:0;right:0;top:0;z-index:50;height:82px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid transparent;transition:.35s}.site-header.is-scrolled{height:70px;background:rgba(0,0,0,.72);backdrop-filter:blur(14px);border-bottom-color:var(--line)}.logo img{width:132px}.desktop-nav{display:flex;gap:28px;font-size:13px;letter-spacing:.08em}.desktop-nav a{color:rgba(255,255,255,.82)}.desktop-nav a:hover{color:var(--gold-light)}.open-badge{color:var(--gold-light);font-size:12px;letter-spacing:.18em;border:1px solid rgba(174,128,103,.42);padding:8px 14px;background:rgba(174,128,103,.08)}.call{color:var(--gold-light);font-weight:700}.mobile-call{margin-top:20px;color:var(--gold-light);font-weight:800;letter-spacing:.08em}.menu-btn{display:none;background:transparent;border:0;width:36px;height:28px;position:relative}.menu-btn span{display:block;height:1px;background:#fff;margin:8px 0}.mobile-panel{position:fixed;inset:0 0 0 auto;width:min(360px,82vw);z-index:45;background:#070707;padding:110px 36px;transform:translateX(100%);transition:.4s;display:flex;flex-direction:column;gap:26px}.mobile-panel.is-open{transform:translateX(0)}
.hero{display:grid;align-items:center}.hero__bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.05);animation:slowZoom 12s ease forwards}.hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.16),rgba(0,0,0,.74))}.hero__content{position:relative;max-width:780px}.hero h1{font-family:var(--font-serif);font-size:clamp(58px,9vw,138px);font-weight:500;line-height:.92;margin:18px 0}.hero__label{display:inline-flex;margin:-4px 0 18px;padding:9px 16px;border:1px solid rgba(174,128,103,.48);color:var(--gold-light);letter-spacing:.12em;font-weight:500;background:rgba(0,0,0,.22)}.hero p:not(.eyebrow){color:var(--muted);font-size:clamp(16px,2vw,22px);line-height:1.8}.hero__buttons{display:flex;gap:14px;margin-top:34px}.scroll{position:absolute;right:5vw;bottom:44px;color:var(--muted);font-size:11px;letter-spacing:.25em;writing-mode:vertical-rl}
.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:center;background:radial-gradient(circle at 20% 20%,#1a1710,#050505 48%)}.split h2,.section-title h2,.promo h2,.register h2,.gallery h2{font-family:var(--font-serif);font-size:clamp(44px,6vw,92px);line-height:1.02;font-weight:500;margin:16px 0}.split p,.section-title p,.promo p,.register p,.gallery p{color:var(--muted);line-height:1.9}.split__visual img{width:100%;height:min(70vh,680px);object-fit:cover;border:1px solid var(--line)}
.image-copy{display:grid;place-items:center;text-align:center}.image-copy__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.64}.image-copy:after{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(0,0,0,.1),rgba(0,0,0,.76))}.image-copy__content{position:relative;z-index:1}.image-copy h2{font-family:var(--font-serif);font-size:clamp(48px,8vw,120px);font-weight:500;margin:14px 0}

.visual-story__inner,.visual-banner__inner,.media-wide,.info-card,.way-card__image,.location__overview,.gallery__item{position:relative;overflow:hidden}
.visual-story__inner img,.visual-banner__inner img,.media-wide img,.info-card img,.way-card__image img,.location__overview img,.gallery__item img{transition:transform 1.4s cubic-bezier(.2,.8,.2,1),filter 1.4s ease;will-change:transform;filter:saturate(.9) contrast(1.02)}
.visual-story__inner:hover img,.visual-banner__inner:hover img,.media-wide:hover img,.info-card:hover img,.way-card__image:hover img,.location__overview:hover img,.gallery__item:hover img{transform:scale(1.045);filter:saturate(1.02) contrast(1.06)}
.visual-story__inner:after,.visual-banner__inner:after,.media-wide:after,.way-card__image:after,.location__overview:after,.gallery__item:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 20%,rgba(215,180,155,.18) 45%,transparent 68%);transform:translateX(-120%);transition:transform 1.5s ease;pointer-events:none}
.reveal.is-visible.visual-story__inner:after,.reveal.is-visible.visual-banner__inner:after,.reveal.is-visible.media-wide:after,.reveal.is-visible .way-card__image:after,.reveal.is-visible.location__overview:after,.reveal.is-visible.gallery__item:after{transform:translateX(120%)}
.media-wide img{width:100%;height:min(58vh,620px);object-fit:cover;border:1px solid var(--line)}
.visual-story__inner img,.visual-banner__inner img,.location__overview img{width:100%;height:min(78vh,760px);object-fit:cover;border:1px solid var(--line);box-shadow:0 28px 90px rgba(0,0,0,.45)}
.visual-story,.visual-banner{display:grid;place-items:center;background:#050505}
.media-stack{display:grid;gap:28px;margin-bottom:34px}
.card-grid--compact{margin-top:24px}

.cards{background:#080808}.section-title{text-align:center;max-width:920px;margin:0 auto 56px}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.info-card{background:#101010;border:1px solid var(--line);padding:18px 18px 26px}.info-card img{width:100%;height:320px;object-fit:cover;filter:saturate(.9)}.info-card h3{font-family:var(--font-serif);font-size:34px;margin:24px 0 8px}.info-card p{color:var(--muted);line-height:1.75}
.promo{background:linear-gradient(180deg,#050505,#111 50%,#050505);display:grid;grid-template-columns:.7fr 1.3fr;gap:5vw;align-items:center}.video-frame{border:1px solid rgba(174,128,103,.48);padding:12px;background:#000;box-shadow:0 30px 90px rgba(0,0,0,.55)}.video-frame video{width:100%;aspect-ratio:16/9;object-fit:cover;background:#000}
.location{background:#060606}.location__grid{display:grid;grid-template-columns:1.2fr .8fr;gap:5vw;align-items:center}.location__grid img{width:100%;max-height:620px;object-fit:cover;border:1px solid var(--line)}.location__list{display:flex;flex-direction:column;gap:18px;border-left:1px solid var(--gold);padding-left:34px}.location__list strong{font-family:var(--font-serif);font-size:42px}.location__list span{color:var(--muted)}
.gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;align-items:center;background:#0c0c0c}.gallery__item img{width:100%;height:62vh;object-fit:cover}.gallery__copy{padding:30px}
.register{display:grid;place-items:center;background:linear-gradient(rgba(0,0,0,.75),rgba(0,0,0,.88)),url('../assets/images/ocean-band.png') center/cover}.register__inner{width:min(720px,100%);text-align:center}.register-card{margin:34px auto 0;padding:34px;border:1px solid rgba(174,128,103,.42);background:rgba(5,5,5,.62);box-shadow:0 24px 70px rgba(0,0,0,.5);backdrop-filter:blur(8px)}.register-card span{display:block;color:var(--gold-light);letter-spacing:.2em;font-size:12px}.register-card strong{display:block;margin:10px 0 14px;font-family:var(--font-serif);font-size:clamp(34px,5vw,58px);font-weight:500}.register-card .btn{margin-top:14px;width:min(320px,100%);height:58px}
.footer{padding:54px 7vw;text-align:center;background:#020202;color:var(--muted);border-top:1px solid var(--line)}.footer img{width:140px;margin:0 auto 22px}
.reveal{opacity:0;transform:translateY(42px);transition:opacity .9s ease,transform .9s ease}.reveal.is-visible{opacity:1;transform:none}.delay{transition-delay:.16s}.delay-2{transition-delay:.32s}
@keyframes slowZoom{to{transform:scale(1)}}
@media(max-width:980px){.desktop-nav,.call,.open-badge{display:none}.menu-btn{display:block}.section{padding:96px 6vw}.split,.promo,.location__grid,.gallery{grid-template-columns:1fr}.card-grid{grid-template-columns:1fr}.info-card img{height:260px}.gallery__item img{height:360px}.hero__buttons{flex-direction:column;align-items:flex-start}}
@media(max-width:560px){.site-header{height:68px}.logo img{width:112px}.hero h1{font-size:54px}.hero__buttons,.popup__actions{width:100%}.btn{width:100%}.popup__card{padding:34px 22px}.popup__card h2{font-size:34px}.split h2,.section-title h2,.promo h2,.register h2,.gallery h2{font-size:44px}.location__list{padding-left:20px}.section{min-height:auto}.hero{min-height:100vh}}


/* v3 refinements */
.visual-story,
.visual-banner{
  display:grid;
  place-items:center;
  background:#f7f4ee;
  padding:0;
  min-height:auto;
}
.visual-story__inner,
.visual-banner__inner{
  width:100%;
}
.visual-story img,
.visual-banner img{
  width:100%;
  height:auto;
}
.visual-banner{
  background:#0b0b0d;
}
.media-stack{
  display:grid;
  gap:28px;
  margin:0 auto 42px;
  max-width:1180px;
}
.media-wide{
  margin:0;
  background:#f7f4ee;
  border:1px solid rgba(255,255,255,.12);
  overflow:hidden;
}
.media-wide img{
  width:100%;
  height:auto;
}
.card-grid--compact{
  margin-top:28px;
}
.location__overview{
  max-width:1180px;
  margin:0 auto 44px;
  background:#f7f4ee;
  padding:14px;
  border:1px solid rgba(255,255,255,.14);
}
.location__overview img{
  width:100%;
  height:auto;
}
.way-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:28px;
  max-width:1180px;
  margin:0 auto;
}
.way-card{
  background:#101010;
  border:1px solid var(--line);
  overflow:hidden;
}
.way-card__image{
  background:#f7f4ee;
}
.way-card__image img{
  width:100%;
  height:auto;
}
.way-card__body{
  padding:34px;
}
.way-card__body h3{
  font-family:var(--font-serif);
  font-size:42px;
  margin:8px 0 14px;
  font-weight:500;
}
.address{
  color:rgba(255,255,255,.82);
  line-height:1.8;
  min-height:64px;
  margin-bottom:24px;
}
@media(max-width:980px){
  .way-grid{grid-template-columns:1fr}
  .way-card__body{padding:28px 22px}
  .address{min-height:auto}
}


/* Runway cinematic background videos - v4 fixed integration */
.hero.hero--video {
  background: #000;
}

.hero__video,
.cinematic__video,
.register__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  transform: scale(1.04);
  animation: cinematicSlowZoom 18s ease-in-out infinite alternate;
}

.hero.hero--video .hero__bg {
  opacity: 0;
  z-index: 0;
}

.hero.hero--video .hero__shade {
  z-index: 1;
  background:
    radial-gradient(circle at 50% 45%, rgba(200,167,106,.12), transparent 34%),
    linear-gradient(90deg, rgba(0,0,0,.72), rgba(0,0,0,.36), rgba(0,0,0,.72));
}

.hero.hero--video .hero__content,
.hero.hero--video .scroll {
  position: relative;
  z-index: 2;
}

.cinematic {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #000;
}

.cinematic__shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 50% 50%, rgba(200,167,106,.18), transparent 32%),
    linear-gradient(180deg, rgba(0,0,0,.74), rgba(0,0,0,.42), rgba(0,0,0,.78));
}

.cinematic__copy {
  position: relative;
  z-index: 2;
  max-width: 920px;
  padding: 0 24px;
}

.cinematic__copy h2 {
  margin: 18px 0;
  font-family: var(--serif);
  font-size: clamp(42px, 7vw, 94px);
  font-weight: 500;
  color: var(--gold);
  letter-spacing: -.04em;
  text-shadow: 0 0 30px rgba(200,167,106,.28);
}

.cinematic__copy p:last-child {
  color: rgba(255,255,255,.82);
  line-height: 1.9;
}

.register.register--video {
  position: relative;
  overflow: hidden;
  background: #000;
}

.register__shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at 50% 42%, rgba(200,167,106,.18), transparent 34%),
    linear-gradient(180deg, rgba(0,0,0,.56), rgba(0,0,0,.74));
}

.register.register--video .register__inner {
  position: relative;
  z-index: 2;
}

.register.register--video .register-card {
  background: rgba(8,8,8,.58);
  border-color: rgba(200,167,106,.34);
  backdrop-filter: blur(14px);
  box-shadow: 0 30px 90px rgba(0,0,0,.36);
}

@keyframes cinematicSlowZoom {
  from { transform: scale(1.06); }
  to { transform: scale(1.01); }
}

@media (max-width: 768px) {
  .hero__video,
  .cinematic__video,
  .register__video {
    transform: scale(1.12);
  }

  .cinematic {
    min-height: 86vh;
  }
}


/* Final CTA simplification and footer update */
.register__inner--simple {
  min-height: 82vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 120px 24px;
}

.register-final {
  position: relative;
  z-index: 3;
  max-width: 780px;
  margin: 0 auto;
  text-align: center;
  padding: clamp(36px, 6vw, 72px) clamp(24px, 5vw, 64px);
  border: 1px solid rgba(200, 167, 106, .34);
  background: rgba(0,0,0,.42);
  backdrop-filter: blur(12px);
  box-shadow: 0 30px 100px rgba(0,0,0,.42);
}

.register-final h2 {
  margin: 16px 0 18px;
  font-family: var(--serif);
  font-size: clamp(42px, 7vw, 88px);
  font-weight: 500;
  color: var(--gold);
  letter-spacing: -.04em;
}

.register-final p:not(.eyebrow) {
  color: rgba(255,255,255,.86);
  line-height: 1.85;
  margin-bottom: 34px;
}

.register-final .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.footer {
  position: relative;
  background: #050505;
  color: rgba(255,255,255,.72);
  border-top: 1px solid rgba(200,167,106,.18);
  padding: 76px 24px 64px;
}

.footer__inner {
  width: min(1180px, 100%);
  margin: 0 auto;
}

.footer__brand {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 34px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.footer__logo {
  color: var(--gold);
  font-family: var(--serif);
  font-size: clamp(26px, 4vw, 46px);
  font-weight: 500;
  letter-spacing: .08em;
}

.footer__phone {
  color: #fff;
  text-decoration: none;
  font-size: clamp(22px, 3vw, 36px);
  letter-spacing: .08em;
}

.footer__notice {
  display: grid;
  gap: 8px;
  margin: 32px 0 28px;
  font-size: 13px;
  line-height: 1.75;
  color: rgba(255,255,255,.55);
}

.footer__info dl {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin: 0;
}

.footer__info div {
  padding: 18px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.025);
}

.footer__info dt {
  color: var(--gold);
  font-size: 12px;
  letter-spacing: .16em;
  margin-bottom: 8px;
}

.footer__info dd {
  margin: 0;
  color: rgba(255,255,255,.82);
}

.footer__copy {
  margin-top: 34px;
  color: rgba(255,255,255,.36);
  font-size: 12px;
}

.to-top {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 50;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid rgba(200,167,106,.55);
  background: rgba(0,0,0,.58);
  color: var(--gold);
  font-size: 22px;
  cursor: pointer;
  backdrop-filter: blur(10px);
  opacity: 0;
  pointer-events: none;
  transform: translateY(10px);
  transition: .35s ease;
}

.to-top.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.to-top:hover {
  background: var(--gold);
  color: #000;
}

@media (max-width: 768px) {
  .register__inner--simple {
    min-height: 78vh;
    padding: 96px 18px;
  }

  .footer {
    padding: 64px 18px 56px;
  }

  .footer__brand {
    align-items: flex-start;
    flex-direction: column;
  }

  .footer__info dl {
    grid-template-columns: 1fr;
  }

  .to-top {
    right: 16px;
    bottom: 16px;
    width: 44px;
    height: 44px;
  }
}


/* Pearl CTA refinement */
.register.register--video .register__shade{
  background:
    linear-gradient(180deg, rgba(0,0,0,.28), rgba(0,0,0,.42));
}

.register__video{
  object-position:center center;
}

.register-final{
  max-width:520px;
  margin-left:auto;
  margin-right:8%;
  background:rgba(0,0,0,.28);
  border:1px solid rgba(200,167,106,.24);
  backdrop-filter:blur(10px);
}

.register-final h2{
  font-size:clamp(38px,5vw,72px);
}

.register-final p{
  font-size:15px;
}

.register-final .btn{
  min-width:240px;
}

/* Footer official style */
.footer{
  background:#040404;
  border-top:1px solid rgba(200,167,106,.14);
}

.footer__top{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:40px;
  padding-bottom:40px;
  margin-bottom:40px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.footer__logo{
  display:block;
  font-size:clamp(34px,4vw,54px);
  font-family:var(--serif);
  color:#c8a76a;
  letter-spacing:.08em;
  margin-bottom:12px;
}

.footer__summary{
  color:rgba(255,255,255,.65);
  font-size:14px;
  letter-spacing:.08em;
}

.footer__call a{
  font-size:clamp(28px,4vw,48px);
  color:#fff;
  text-decoration:none;
  letter-spacing:.12em;
}

.footer__company{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  margin-bottom:36px;
}

.footer__company-item{
  padding:24px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.02);
}

.footer__company-item h4{
  color:#c8a76a;
  margin-bottom:14px;
  font-size:13px;
  letter-spacing:.18em;
}

.footer__company-item p{
  color:rgba(255,255,255,.62);
  line-height:1.8;
  font-size:13px;
}

.footer__notice{
  border-top:1px solid rgba(255,255,255,.06);
  padding-top:28px;
}

.footer__notice p{
  color:rgba(255,255,255,.38);
  font-size:12px;
  line-height:1.8;
}

@media(max-width:768px){

  .register-final{
    margin:0 auto;
    max-width:92%;
  }

  .footer__top{
    flex-direction:column;
    align-items:flex-start;
  }

  .footer__company{
    grid-template-columns:1fr;
  }

}


/* Pearl reveal focus refinement */
.register.register--video{
  min-height:100vh;
}

.register__video{
  object-fit:cover;
  object-position:center center;
  transform:scale(1.02);
}

.register__shade{
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,.08) 0%,
      rgba(0,0,0,.18) 35%,
      rgba(0,0,0,.45) 70%,
      rgba(0,0,0,.62) 100%
    ) !important;
}

.register__inner--simple{
  justify-content:flex-end;
  align-items:center;
  padding-right:min(7vw,120px);
}

.register-final{
  width:min(440px,92%);
  margin:0;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(200,167,106,.18);
  backdrop-filter:blur(8px);
  box-shadow:0 24px 60px rgba(0,0,0,.28);
}

.register-final h2{
  font-size:clamp(34px,4vw,60px);
  margin-bottom:16px;
}

.register-final p{
  font-size:14px;
  line-height:1.8;
}

.register-final .btn{
  width:100%;
  min-width:auto;
}

.footer__logo{
  font-family:var(--serif);
  color:#c8a76a;
  letter-spacing:.08em;
}

@media(max-width:768px){

  .register__shade{
    background:
      linear-gradient(
        180deg,
        rgba(0,0,0,.08) 0%,
        rgba(0,0,0,.22) 45%,
        rgba(0,0,0,.58) 100%
      ) !important;
  }

  .register__inner--simple{
    justify-content:flex-end;
    align-items:flex-end;
    padding:0 20px 54px;
  }

  .register-final{
    width:100%;
    max-width:none;
  }

}


/* Footer logo sync with header */
.footer__logo-wrap{
  display:flex;
  align-items:center;
}

.footer__logo-wrap .header__logo{
  display:inline-flex;
  align-items:center;
  color:#c8a76a;
  text-decoration:none;
}

.footer__company{
  grid-template-columns:repeat(2,1fr);
}

@media(max-width:768px){
  .footer__company{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   FINAL HYPER-END TUNING
   - Typography restraint
   - Gold ratio control
   - Slower motion
   - More breathable spacing
   - Refined CTA and footer
========================================================= */

:root{
  --gold:#c6a66b;
  --gold-soft:#b99558;
  --ink:#050505;
}

body.final-tuned{
  background:#030303;
  letter-spacing:-.015em;
}

body.final-tuned .header{
  backdrop-filter: blur(10px);
  background:linear-gradient(to bottom, rgba(0,0,0,.42), rgba(0,0,0,0));
}

body.final-tuned .header__phone,
body.final-tuned .header a[href^="tel"]{
  letter-spacing:.12em;
  font-size:14px;
}

/* Hero refinement */
body.final-tuned .hero__content{
  max-width:880px;
}

body.final-tuned .hero__content .eyebrow,
body.final-tuned .eyebrow{
  color:var(--gold);
  letter-spacing:.28em;
  font-size:clamp(10px, .9vw, 13px);
  font-weight:500;
}

body.final-tuned .hero h1,
body.final-tuned .hero__content h1{
  font-size:clamp(48px, 6.7vw, 96px);
  line-height:1.06;
  letter-spacing:-.055em;
  font-weight:500;
  text-shadow:0 0 28px rgba(0,0,0,.48);
}

body.final-tuned .hero p,
body.final-tuned .hero__content p{
  line-height:1.9;
}

body.final-tuned .hero__shade{
  background:
    radial-gradient(circle at 50% 48%, rgba(198,166,107,.10), transparent 36%),
    linear-gradient(90deg, rgba(0,0,0,.68), rgba(0,0,0,.30), rgba(0,0,0,.68)) !important;
}

/* General section spacing and copy hierarchy */
body.final-tuned .section{
  scroll-margin-top:80px;
}

body.final-tuned .intro,
body.final-tuned .cards,
body.final-tuned .location,
body.final-tuned .gallery,
body.final-tuned .promo{
  padding-top:clamp(120px, 12vw, 190px);
  padding-bottom:clamp(120px, 12vw, 190px);
}

body.final-tuned h2{
  letter-spacing:-.045em;
  line-height:1.12;
}

body.final-tuned .section-title,
body.final-tuned .intro h2,
body.final-tuned .cards h2,
body.final-tuned .location h2,
body.final-tuned .promo h2{
  font-size:clamp(36px, 5vw, 72px);
  font-weight:500;
}

body.final-tuned .lead,
body.final-tuned .intro p,
body.final-tuned .cards p,
body.final-tuned .location p{
  color:rgba(255,255,255,.72);
  line-height:1.9;
  font-size:clamp(15px, 1.1vw, 17px);
}

/* Gold should feel like jewelry, not paint */
body.final-tuned .gold,
body.final-tuned .accent,
body.final-tuned strong,
body.final-tuned .cinematic__copy h2,
body.final-tuned .register-final h2{
  color:var(--gold);
}

body.final-tuned .btn,
body.final-tuned .cta,
body.final-tuned .btn--gold{
  min-height:48px;
  padding:0 28px;
  border:1px solid rgba(198,166,107,.64);
  background:rgba(0,0,0,.18);
  color:#fff;
  letter-spacing:.12em;
  font-size:13px;
  transition:background .55s ease, color .55s ease, border-color .55s ease, transform .55s ease;
}

body.final-tuned .btn:hover,
body.final-tuned .cta:hover,
body.final-tuned .btn--gold:hover{
  background:var(--gold);
  color:#050505;
  transform:translateY(-2px);
}

/* Slower luxury motion */
body.final-tuned .reveal,
body.final-tuned .fade-up{
  transition-duration:1.45s !important;
  transition-timing-function:cubic-bezier(.16,1,.3,1) !important;
}

body.final-tuned .delay{
  transition-delay:.22s !important;
}

body.final-tuned .delay-2{
  transition-delay:.42s !important;
}

body.final-tuned .hero__video,
body.final-tuned .cinematic__video,
body.final-tuned .register__video,
body.final-tuned .bg-video{
  animation-duration:24s !important;
  transform:scale(1.035);
}

/* Cinematic bridge section */
body.final-tuned .cinematic__copy{
  max-width:760px;
}

body.final-tuned .cinematic__copy h2{
  font-size:clamp(42px, 6vw, 84px);
  letter-spacing:-.055em;
}

body.final-tuned .cinematic__copy p:last-child{
  max-width:560px;
  margin:0 auto;
  color:rgba(255,255,255,.72);
}

/* Pearl CTA: pearl must be the hero, CTA must be the guide */
body.final-tuned .register.register--video{
  min-height:100vh;
}

body.final-tuned .register__video{
  object-position:center center;
  transform:scale(1.01);
}

body.final-tuned .register__shade{
  background:
    linear-gradient(90deg,
      rgba(0,0,0,.05) 0%,
      rgba(0,0,0,.12) 38%,
      rgba(0,0,0,.36) 70%,
      rgba(0,0,0,.58) 100%) !important;
}

body.final-tuned .register__inner--simple{
  min-height:100vh;
  justify-content:flex-end;
  align-items:center;
  padding:120px min(7vw,110px) 120px 24px;
}

body.final-tuned .register-final{
  width:min(420px, 92vw);
  margin:0;
  padding:clamp(30px, 4vw, 48px);
  background:rgba(0,0,0,.20);
  border:1px solid rgba(198,166,107,.20);
  backdrop-filter:blur(8px);
  box-shadow:0 20px 70px rgba(0,0,0,.30);
}

body.final-tuned .register-final h2{
  font-size:clamp(34px, 4.2vw, 58px);
  line-height:1.1;
  margin:14px 0 16px;
  letter-spacing:-.055em;
}

body.final-tuned .register-final p:not(.eyebrow){
  font-size:14px;
  line-height:1.85;
  color:rgba(255,255,255,.76);
  margin-bottom:28px;
}

/* Footer final polish */
body.final-tuned .footer{
  padding-top:72px;
  background:#030303;
}

body.final-tuned .footer__top{
  padding-bottom:34px;
  margin-bottom:34px;
}

body.final-tuned .footer__summary{
  color:rgba(255,255,255,.50);
}

body.final-tuned .footer__call a,
body.final-tuned .footer__phone{
  font-size:clamp(26px, 3.4vw, 42px);
  letter-spacing:.14em;
}

body.final-tuned .footer__company{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

body.final-tuned .footer__company-item{
  padding:22px;
  background:rgba(255,255,255,.018);
  border-color:rgba(255,255,255,.055);
}

body.final-tuned .footer__company-item h4{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.18em;
}

body.final-tuned .footer__company-item p,
body.final-tuned .footer__notice p{
  color:rgba(255,255,255,.46);
}

body.final-tuned .to-top{
  width:46px;
  height:46px;
  background:rgba(0,0,0,.46);
  border-color:rgba(198,166,107,.44);
}

/* Mobile balance */
@media(max-width:768px){

  body.final-tuned .hero h1,
  body.final-tuned .hero__content h1{
    font-size:clamp(40px, 11vw, 58px);
    line-height:1.1;
  }

  body.final-tuned .hero__shade{
    background:
      radial-gradient(circle at 50% 45%, rgba(198,166,107,.10), transparent 34%),
      linear-gradient(180deg, rgba(0,0,0,.54), rgba(0,0,0,.30), rgba(0,0,0,.66)) !important;
  }

  body.final-tuned .intro,
  body.final-tuned .cards,
  body.final-tuned .location,
  body.final-tuned .gallery,
  body.final-tuned .promo{
    padding-top:96px;
    padding-bottom:96px;
  }

  body.final-tuned .register__shade{
    background:
      linear-gradient(180deg,
        rgba(0,0,0,.02) 0%,
        rgba(0,0,0,.14) 44%,
        rgba(0,0,0,.62) 100%) !important;
  }

  body.final-tuned .register__inner--simple{
    justify-content:flex-end;
    align-items:flex-end;
    padding:0 18px 46px;
  }

  body.final-tuned .register-final{
    width:100%;
    padding:28px 22px;
  }

  body.final-tuned .footer__top{
    align-items:flex-start;
    flex-direction:column;
  }

  body.final-tuned .footer__company{
    grid-template-columns:1fr;
  }
}
