:root {
  --ink: #f2ede3;
  --cream: #0d0f0e;
  --gold: #b89a63;
  --gold-light: #d7bd88;
  --gold-dark: #765c32;
  --surface: #141716;
  --surface-raised: #1a1e1c;
  --border-gold: rgba(196, 164, 103, .34);
  --muted: rgba(242, 237, 227, .66);
}

html { background: #090b0a; }
body { background: #0d0f0e; color: #f2ede3; }

.header,
.inner-header {
  background: linear-gradient(180deg, rgba(6, 8, 7, .96), rgba(10, 12, 11, .78));
  border-bottom-color: rgba(196, 164, 103, .28);
  backdrop-filter: blur(10px);
}
.brand-en, .header-call { color: #f4ead7; }
.brand-ko, .header nav a, .top-menu { color: rgba(255,255,255,.78); }
.header nav a:hover, .top-menu:hover, .top-menu[aria-expanded=true] { color: #d7bd88; }
.global-submenu { background: rgba(8,10,9,.98); border-color: rgba(196,164,103,.25); }

.hero-shade {
  background: linear-gradient(90deg,rgba(3,5,4,.9) 0%,rgba(5,7,6,.6) 42%,rgba(5,7,6,.18) 74%),
              linear-gradient(0deg,rgba(3,5,4,.72),transparent 55%);
}
.eyebrow, .eyebrow.dark, .section-title>p, .content-head small { color: #c8a96f; }
.hero em, .section-title em, .community em { color: #d7bd88; }
.lead { color: rgba(255,255,255,.82); }

.btn, .submit, .reservation-submit, .price-actions a, .modelhouse-open a {
  border: 1px solid rgba(232,210,168,.42);
  background: linear-gradient(135deg,#b79a65 0%,#876a3b 100%);
  color: #fff;
  box-shadow: 0 12px 28px rgba(0,0,0,.25), inset 0 1px rgba(255,255,255,.2);
}
.ghost { background: rgba(7,9,8,.48); border-color: rgba(215,189,136,.58); }

.section, .answer { background: #0d0f0e; }
.premium, .visit { background: linear-gradient(145deg,#111412,#080a09); }
.section-title h2, .community h2, .content-head h2, .facts dd,
.facts>p, .community-copy>p:not(.eyebrow), .answer h3, .answer p {
  color: #eee8dd;
}
.facts>p, .community-copy>p:not(.eyebrow), .answer p, .content-head p { color: var(--muted); }
.facts dl div, .community ul, .community li, .answer-grid, .answer article {
  border-color: var(--border-gold);
}
.facts dt { color: #c0a16a; }
.view-card, .community-art, .official-sheet, .reservation-panel, .feature-cards article,
.contact-cards a, .image-gallery figure, .interior-stack figure, .notice {
  border: 1px solid var(--border-gold);
  background: linear-gradient(145deg,#1a1e1c,#111412);
  box-shadow: 0 24px 65px rgba(0,0,0,.38);
}
.community-art { background: radial-gradient(circle at 50% 38%,#2a2f2b,#0b0d0c 72%); }
.community li { color: #ddd5c7; }
.premium-grid { border-color: var(--border-gold); }
.premium article { border-color: var(--border-gold); }
.premium article p { color: rgba(255,255,255,.62); }

.reserve-form, .reservation-panel {
  background: linear-gradient(145deg,#1b1f1d,#111412);
  color: #f3ede1;
  border: 1px solid var(--border-gold);
}
.reserve-form>label, .reserve-form fieldset, .reservation-panel>label,
.reservation-panel fieldset { color: #c4a66f; border-color: rgba(196,164,103,.3); }
.reserve-form input:not([type=checkbox]), .reservation-panel input:not([type=radio]) { color: #fff; }
.reserve-form input::placeholder, .reservation-panel input::placeholder { color: rgba(255,255,255,.38); }
.chips span, .reservation-types span { color: #d9d1c3; background: #101311; border-color: rgba(196,164,103,.38); }
.chips input:checked+span, .reservation-types input:checked+span {
  background: linear-gradient(135deg,#b79a65,#765c32); color:#fff; border-color:#c7aa73;
}
.reserve-form .agree, .reservation-panel .agree, .form-note, .reservation-status { color: rgba(255,255,255,.6); }

.sub-hero { border-bottom: 1px solid var(--border-gold); }
.sub-nav { background:#111412; border-color:var(--border-gold); }
.sub-nav a { color:rgba(255,255,255,.62); }
.sub-nav a.active { color:#d7bd88; }
.content { color:#eee8dd; }
.info-table { border-top-color:#b99a61; }
.info-table div { border-color:var(--border-gold); }
.info-table dt, .unit-list span, .feature-cards b { color:#c8a96f; }
.info-table dd, .feature-cards p, .image-gallery figcaption, .wide-image figcaption,
.price-help, .visit-side p { color:var(--muted); }
.feature-cards h3, .interior-stack figcaption, .contact-cards strong, .visit-side h2 { color:#f1eadf; }
.unit-list a, .menu-grid a, .video-card {
  background:linear-gradient(145deg,#1a1e1c,#0c0f0d); border:1px solid var(--border-gold);
}
.unit-tabs a { background:#131614; color:#ddd5c7; border-color:var(--border-gold); }
.unit-tabs a.active { background:linear-gradient(135deg,#b79a65,#765c32); color:#fff; border-color:#c7aa73; }
.unit-section { border-color:var(--border-gold); }
.notice { color:rgba(255,255,255,.66); }
.modelhouse-frame { border-color:var(--border-gold); background:#080a09; }

dialog { background:#171a18; color:#eee8dd; border:1px solid var(--border-gold); }
dialog::backdrop { background:rgba(0,0,0,.82); }
dialog>button { color:#fff; }
footer { background:#070908; border-top:1px solid rgba(196,164,103,.25); }
.footer-brand strong { color:#d7bd88; }

@media(max-width:820px){
  .header.open { background:#090b0a; }
  .header.open nav { align-items:stretch; }
  .top-menu { position:relative; padding:17px 34px 17px 0; }
  .top-menu::after { content:'+'; position:absolute; right:5px; top:50%; transform:translateY(-50%); color:#c8a96f; font-size:21px; font-weight:300; }
  .top-menu[aria-expanded=true]::after { content:'−'; }
  .header nav .global-submenu { position:static; order:initial; width:100%; min-height:0; padding:7px 14px 13px; display:none; flex-direction:column; align-items:stretch; justify-content:flex-start; gap:0; background:#151916; border-top:1px solid rgba(196,164,103,.24); box-shadow:inset 3px 0 #9e814e; }
  .header nav .global-submenu.open { display:flex; }
  .header nav .global-submenu a { padding:12px 9px; color:#e8dfd0; border-bottom:1px solid rgba(255,255,255,.08); font-size:14px; }
  .section-title h2, .content-head h2, .visit-side h2 { word-break:keep-all; }
  .premium article:nth-child(-n+2) { border-bottom-color:var(--border-gold); }
}
