@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;1,400&family=Cormorant+Garamond:ital,wght@0,400;0,600;1,400&display=swap');

:root { --panel: rgba(31,22,19,.82); --gold: #d2ae70; --gold-soft: #b99660; --bronze: #806642; --line: rgba(210,174,112,.25); --text: #c9b38d; }
* { margin: 0; padding: 0; box-sizing: border-box; }
form { display: contents; }
html { color-scheme: dark; }
a { color: var(--gold-soft); text-decoration-color: rgba(185,150,96,.55); text-decoration-thickness: .07em; text-underline-offset: .18em; transition: color .25s,text-decoration-color .25s; }
a:visited { color: var(--gold-soft); }
a:hover { color: var(--gold); text-decoration-color: currentColor; }
a:active { color: #ead7b4; }
a:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; border-radius: 2px; }
body {
  min-height: 100vh; padding: clamp(1rem,4vw,4rem); color: var(--text);
  font-family: 'Cormorant Garamond', Georgia, serif; line-height: 1.65;
  background: radial-gradient(circle at 16% 12%,rgba(177,122,81,.14),transparent 28rem), radial-gradient(circle at 86% 76%,rgba(128,102,66,.13),transparent 32rem), linear-gradient(135deg,#110d0c,#211713 52%,#130f0e);
}
body::before {
  content: ''; position: fixed; inset: 0; pointer-events: none; opacity: .22;
  background-image: linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size: 80px 80px; mask-image: radial-gradient(circle at center,black,transparent 78%);
}
.container {
  width: min(100%,1100px); min-height: calc(100vh - clamp(2rem,8vw,8rem)); margin: 0 auto;
  padding: clamp(2.5rem,7vw,6rem) clamp(1.25rem,6vw,5rem) clamp(2rem,5vw,4rem); position: relative; overflow: hidden;
  border: 1px solid var(--line); border-radius: 2px 42px 2px 42px;
  background: linear-gradient(145deg,rgba(255,255,255,.025),transparent 42%),var(--panel);
  box-shadow: 0 32px 90px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.04); backdrop-filter: blur(14px);
}
.container::before,.container::after { content: ''; position: absolute; width: 340px; height: 340px; border: 1px solid rgba(210,174,112,.09); border-radius: 50%; }
.container::before { top: -230px; right: -120px; } .container::after { bottom: -250px; left: -130px; }
.corner-tl,.corner-br { position: absolute; width: 54px; height: 54px; border-color: rgba(210,174,112,.55); border-style: solid; }
.corner-tl { top: 18px; left: 18px; border-width: 1px 0 0 1px; } .corner-br { right: 18px; bottom: 18px; border-width: 0 1px 1px 0; }
.ornament { text-align: center; color: var(--bronze); font-size: 1rem; letter-spacing: .65em; margin-bottom: 1.5rem; }
.sigil { width: 72px; height: 72px; margin: 0 auto 1.5rem; display: grid; place-items: center; color: var(--gold); border: 1px solid var(--line); border-radius: 50%; transform: rotate(45deg); box-shadow: 0 0 40px rgba(210,174,112,.08); }
.sigil span { font: 400 2rem/1 'Playfair Display',serif; transform: rotate(-45deg); }
h1 { color: var(--gold); font: 400 clamp(3rem,8vw,6.2rem)/1 'Playfair Display',Georgia,serif; text-align: center; letter-spacing: .08em; text-shadow: 0 8px 36px rgba(0,0,0,.45); }
.title-zero { display: inline-block; margin-left: .03em; color: inherit; font-size: 1.04em; font-variant-numeric: lining-nums; font-feature-settings: 'lnum' 1; }
.tagline { margin-top: 1rem; color: var(--bronze); font-size: clamp(1.05rem,2vw,1.4rem); font-style: italic; letter-spacing: .09em; text-align: center; }
.hero-art { width: min(100%,920px); margin: clamp(1.25rem,3vw,2.25rem) auto 0; padding: clamp(5px,1vw,10px); position: relative; isolation: isolate; overflow: hidden; border: 1px solid rgba(210,174,112,.38); border-radius: 30px 5px 30px 5px; background: linear-gradient(135deg,rgba(210,174,112,.13),rgba(17,13,12,.78)); box-shadow: 0 28px 70px rgba(0,0,0,.48),0 0 45px rgba(210,174,112,.07),inset 0 1px rgba(255,255,255,.08); }
.hero-art::before { content: ''; position: absolute; inset: -45% 20%; z-index: -1; transform: rotate(22deg); background: linear-gradient(90deg,transparent,rgba(210,174,112,.16),transparent); }
.hero-art img { display: block; width: 100%; height: auto; border-radius: 22px 2px 22px 2px; filter: saturate(.9) contrast(1.03); }
.divider { display: flex; align-items: center; gap: 1.2rem; width: min(100%,560px); margin: clamp(1.25rem,3vw,2.25rem) auto; color: var(--bronze); }
.divider::before,.divider::after { content: ''; height: 1px; flex: 1; background: linear-gradient(90deg,transparent,var(--line)); } .divider::after { transform: scaleX(-1); }
.content { width: min(100%,760px); margin: 0 auto; color: var(--text); font-size: clamp(1.2rem,2.2vw,1.55rem); text-align: center; }
.content p + p { margin-top: 1rem; } .content em { color: var(--gold); }
.facets { width: min(100%,900px); margin: clamp(2.5rem,6vw,5rem) auto 0; display: grid; grid-template-columns: repeat(3,1fr); border-block: 1px solid var(--line); }
.facets > div { padding: 1.8rem 1.5rem; text-align: center; } .facets > div + div { border-left: 1px solid var(--line); }
.facets span { display: block; color: var(--bronze); font-size: .86rem; letter-spacing: .18em; }
.facets strong { display: block; margin: .1rem 0; color: var(--gold); font: 400 1.8rem 'Playfair Display',serif; }
.facets small { color: #927956; font-size: 1.1rem; font-style: italic; }
.plans { width: min(100%,980px); margin: 0 auto; }
.plans h2 { margin-bottom: 1.4rem; color: var(--gold); font: 400 clamp(1.7rem,3vw,2.35rem) 'Playfair Display',serif; letter-spacing: .05em; text-align: center; }
.feature-table-wrap { width: 100%; overflow-x: auto; border: 1px solid var(--line); border-radius: 22px 3px 22px 3px; background: rgba(17,13,12,.34); box-shadow: 0 20px 55px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.025); }
.feature-table { width: 100%; min-width: 0; table-layout: fixed; border-collapse: collapse; text-align: center; font-size: 1.25rem; line-height: 1.5; }
.feature-table th,.feature-table td { padding: .85rem 1.1rem; border-bottom: 1px solid rgba(210,174,112,.12); }
.feature-table th,.feature-table td { overflow-wrap: anywhere; }
.feature-table th { border-right: 1px solid rgba(210,174,112,.18); }
.feature-table thead th { color: #1a120f; background: linear-gradient(135deg,#d2ae70,#9f7d4b); font: 600 1.08rem 'Playfair Display',serif; letter-spacing: .1em; text-transform: uppercase; }
.feature-table thead th:first-child,.feature-table tbody th { text-align: left; }
.feature-table thead th:last-child { border-right: 0; }
.feature-table tbody th { width: 23%; color: #d0ad73; font-size: 1.28rem; font-weight: 600; }
.feature-table tbody td { color: #d0bea0; }
.feature-table tbody tr:nth-child(even) { background: rgba(210,174,112,.025); }
.feature-table tbody tr:hover { background: rgba(210,174,112,.065); }
.feature-table tbody tr:last-child th,.feature-table tbody tr:last-child td { border-bottom: 0; }
.feature-table td small { color: #aa916d; font-size: .9em; font-style: italic; }
.feature-table .table-cta th,.feature-table .table-cta td { color: var(--gold); background: rgba(210,174,112,.075); font-weight: 600; }
.project-invite { width: min(100%,820px); margin: clamp(2rem,5vw,3.5rem) auto 0; color: var(--text); font-size: clamp(1.25rem,2.4vw,1.65rem); line-height: 1.55; text-align: center; }
.coming-soon-wrap { text-align: center; }
.coming-soon { display: inline-block; margin-top: clamp(2.5rem,6vw,5rem); padding: .9rem 2.5rem; color: var(--gold-soft); border: 1px solid var(--bronze); font: 400 .82rem 'Playfair Display',serif; letter-spacing: .22em; text-decoration: none; text-transform: uppercase; transition: color .3s,border-color .3s,box-shadow .3s,transform .3s; }
.coming-soon:visited { color: var(--gold-soft); }
.coming-soon:hover { color: var(--gold); border-color: var(--gold); box-shadow: 0 0 38px rgba(210,174,112,.1); }
.coming-soon:focus-visible { outline: 2px solid var(--gold); outline-offset: 5px; }
.footer { margin-top: clamp(3rem,7vw,5rem); color: #6e5a3f; font-size: .9rem; letter-spacing: .12em; text-align: center; }
@media (max-width: 680px) { body { padding: 0; } .container { min-height: 100vh; border: 0; border-radius: 0; } h1 { letter-spacing: .035em; } .hero-art { border-radius: 18px 3px 18px 3px; } .hero-art img { border-radius: 13px 2px 13px 2px; } .content br { display: none; } .facets { grid-template-columns: 1fr; } .facets > div + div { border-left: 0; border-top: 1px solid var(--line); } }
@media (max-width: 900px) { .feature-table { min-width: 860px; table-layout: auto; } }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior: auto !important; transition: none !important; } }
