.elementor-4325 .elementor-element.elementor-element-8957950{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-4325 .elementor-element.elementor-element-b4233ad{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-4325 .elementor-element.elementor-element-b4233ad.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-4325 .elementor-element.elementor-element-fe11269{width:var( --container-widget-width, 101.812% );max-width:101.812%;--container-widget-width:101.812%;--container-widget-flex-grow:0;}.elementor-4325 .elementor-element.elementor-element-fe11269.elementor-element{--flex-grow:0;--flex-shrink:0;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-4325 .elementor-element.elementor-element-b4233ad{--width:98.257%;}}/* Start custom CSS for html, class: .elementor-element-fe11269 */@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Montserrat:wght@300;400;500;600&display=swap');

:root {
  --gold: #b89a6a;
  --gold-light: #d4b896;
  --gold-pale: #f0e8db;
  --dark: #1a1712;
  --charcoal: #2e2b27;
  --mid: #6b6459;
  --cream: #faf7f3;
  --white: #ffffff;
}

.page-wrapper {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
  font-family: 'Montserrat', sans-serif;
  background: var(--cream);
  color: var(--dark);
  overflow-x: hidden;
}

/* HEADER */
header { position: relative; padding: 0; overflow: hidden; }

.header-bg {
  background: linear-gradient(135deg, #2e2923 0%, #4a4438 40%, #6b5c46 75%, #52493c 100%);
  padding: 54px 60px 48px;
  position: relative;
  overflow: hidden;
}
.header-bg::before {
  content: '';
  position: absolute;
  top: -60%; left: -20%;
  width: 140%; height: 240%;
  background: radial-gradient(ellipse at 60% 40%, rgba(184,154,106,0.18) 0%, transparent 65%);
  pointer-events: none;
}
.header-bg::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
}

.corner { position: absolute; width: 40px; height: 40px; }
.corner--tl { top: 20px; left: 20px; border-top: 1px solid rgba(184,154,106,0.5); border-left: 1px solid rgba(184,154,106,0.5); }
.corner--tr { top: 20px; right: 20px; border-top: 1px solid rgba(184,154,106,0.5); border-right: 1px solid rgba(184,154,106,0.5); }
.corner--bl { bottom: 20px; left: 20px; border-bottom: 1px solid rgba(184,154,106,0.5); border-left: 1px solid rgba(184,154,106,0.5); }
.corner--br { bottom: 20px; right: 20px; border-bottom: 1px solid rgba(184,154,106,0.5); border-right: 1px solid rgba(184,154,106,0.5); }

.header-inner { text-align: center; position: relative; z-index: 1; }

.header-eyebrow { display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 18px; }
.eyebrow-line { width: 50px; height: 1px; background: linear-gradient(90deg, transparent, var(--gold-light)); }
.eyebrow-line.right { background: linear-gradient(90deg, var(--gold-light), transparent); }
.eyebrow-text { font-size: 10px; font-weight: 500; letter-spacing: 0.35em; color: var(--gold-light); text-transform: uppercase; }

.brand-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(2.4rem, 5vw, 3.8rem);
  font-weight: 300;
  letter-spacing: 0.22em;
  color: var(--white);
  text-transform: uppercase;
  line-height: 1;
  margin-bottom: 10px;
  animation: fadeDown 0.8s ease both;
}
.brand-subtitle {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1rem;
  font-style: italic;
  font-weight: 300;
  letter-spacing: 0.12em;
  color: var(--gold-light);
  animation: fadeDown 0.8s 0.15s ease both;
}

/* MAIN */
main { flex: 1; display: flex; align-items: center; justify-content: center; padding: 80px 40px; }

.card { max-width: 680px; width: 100%; text-align: center; animation: fadeUp 0.9s 0.3s ease both; }

.ornament { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 44px; }
.ornament-bar { width: 60px; height: 1px; background: linear-gradient(90deg, transparent, var(--gold)); }
.ornament-bar.right { background: linear-gradient(90deg, var(--gold), transparent); }
.ornament-diamond { width: 6px; height: 6px; background: var(--gold); transform: rotate(45deg); }
.ornament-dot { width: 3px; height: 3px; background: var(--gold-light); border-radius: 50%; }

.access-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(1.5rem, 3vw, 2.1rem);
  font-weight: 300;
  letter-spacing: 0.06em;
  color: var(--charcoal);
  margin-bottom: 22px;
  line-height: 1.3;
}
.access-title em { font-style: italic; color: var(--gold); }

.access-description {
  font-size: 0.82rem;
  font-weight: 300;
  letter-spacing: 0.04em;
  color: var(--mid);
  line-height: 1.9;
  max-width: 480px;
  margin: 0 auto 52px;
}

/* BUTTONS */
.btn-group { display: flex; gap: 18px; justify-content: center; flex-wrap: wrap; }

.btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 18px 42px;
  font-family: 'Montserrat', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  border: none;
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  overflow: hidden;
}

.btn--primary { background: linear-gradient(135deg, #2e2923 0%, #4a4438 100%); color: var(--gold-light); border: 1px solid rgba(184,154,106,0.3); }
.btn--primary::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%); opacity: 0; transition: opacity 0.4s ease; }
.btn--primary:hover::before { opacity: 1; }
.btn--primary:hover { color: var(--dark); border-color: transparent; transform: translateY(-2px); box-shadow: 0 12px 40px rgba(184,154,106,0.35); }
.btn--primary span { position: relative; z-index: 1; }

.btn--secondary { background: transparent; color: var(--charcoal); border: 1px solid rgba(46,41,35,0.25); }
.btn--secondary::before { content: ''; position: absolute; inset: 0; background: var(--dark); transform: scaleX(0); transform-origin: left; transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.btn--secondary:hover::before { transform: scaleX(1); }
.btn--secondary:hover { color: var(--gold-light); border-color: var(--dark); transform: translateY(-2px); box-shadow: 0 12px 40px rgba(30,26,20,0.2); }
.btn--secondary span { position: relative; z-index: 1; }

.btn-arrow { position: relative; z-index: 1; width: 14px; height: 1px; background: currentColor; transition: width 0.3s ease; }
.btn-arrow::after { content: ''; position: absolute; right: 0; top: -3px; width: 7px; height: 7px; border-right: 1px solid currentColor; border-top: 1px solid currentColor; transform: rotate(45deg); }
.btn:hover .btn-arrow { width: 20px; }

/* FOOTER */
footer { padding: 28px 40px; text-align: center; border-top: 1px solid rgba(184,154,106,0.15); }
.footer-text { font-size: 9px; letter-spacing: 0.25em; color: rgba(107,100,89,0.6); text-transform: uppercase; }

/* ANIMATIONS */
@keyframes fadeDown { from { opacity: 0; transform: translateY(-16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fadeUp   { from { opacity: 0; transform: translateY(24px);  } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 560px) {
  .header-bg { padding: 44px 30px 40px; }
  .btn-group { flex-direction: column; align-items: center; }
  .btn { width: 100%; max-width: 320px; justify-content: center; }
  main { padding: 60px 24px; }
}/* End custom CSS */