* { box-sizing: border-box; }
html { min-height: 100%; background: var(--color-bg); }
body {
    min-height: 100vh;
    margin: 0;
    color: var(--color-text);
    background:
        radial-gradient(circle at 80% 15%, rgba(212,175,55,.07), transparent 28rem),
        var(--color-bg);
    font-family: var(--font-body);
    -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }

.container { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }

.brand { display: inline-flex; align-items: center; gap: 13px; }
.brand-mark {
    display: grid; place-items: center; width: 42px; height: 42px;
    border: 1px solid var(--color-border); border-radius: 50%;
    color: var(--color-gold-bright); background: rgba(212,175,55,.05);
    font-family: var(--font-display); font-size: 25px;
}
.brand-copy { display: grid; gap: 1px; }
.brand-copy strong { letter-spacing: .21em; font-size: 14px; }
.brand-copy small { color: var(--color-muted); font-size: 8px; letter-spacing: .28em; }

.text-link { color: var(--color-text-soft); font-size: 13px; transition: color var(--transition); }
.text-link:hover { color: var(--color-gold-bright); }

.public-shell { position: relative; overflow-x: hidden; }
.public-header {
    width: min(calc(100% - 40px), var(--container)); margin: 0 auto;
    min-height: 92px; display: flex; align-items: center; justify-content: space-between;
    border-bottom: 1px solid var(--color-border-soft);
}
.public-footer {
    width: min(calc(100% - 40px), var(--container)); margin: 64px auto 0;
    min-height: 90px; display: flex; align-items: center; gap: 12px;
    border-top: 1px solid var(--color-border-soft); color: var(--color-muted); font-size: 12px;
}
.footer-dot { width: 3px; height: 3px; border-radius: 50%; background: var(--color-gold); }
.ambient { position: fixed; pointer-events: none; border-radius: 50%; filter: blur(2px); opacity: .7; }
.ambient-one { width: 420px; height: 420px; right: -220px; top: 160px; background: radial-gradient(circle, rgba(212,175,55,.11), transparent 68%); }
.ambient-two { width: 300px; height: 300px; left: -190px; top: 480px; background: radial-gradient(circle, rgba(240,223,181,.05), transparent 68%); }

.hero {
    min-height: 680px; padding: 86px 0 72px; display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr); gap: 70px; align-items: center;
}
.eyebrow, .panel-kicker, .topbar-kicker {
    color: var(--color-gold-bright); font-size: 10px; font-weight: 800;
    letter-spacing: .25em; text-transform: uppercase;
}
.hero h1, .page-heading h1 {
    margin: 18px 0; max-width: 760px; font-family: var(--font-display);
    font-weight: 400; letter-spacing: -.035em; line-height: .96;
}
.hero h1 { font-size: clamp(58px, 7vw, 102px); }
.hero-lead { max-width: 650px; margin: 28px 0 0; color: var(--color-text-soft); font-size: 17px; line-height: 1.8; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.button {
    min-height: 48px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid transparent; border-radius: 999px; font-size: 13px; font-weight: 750;
    letter-spacing: .02em; transition: transform var(--transition), background var(--transition), border-color var(--transition);
}
.button:hover { transform: translateY(-1px); }
.button-primary { color: #171208; background: linear-gradient(135deg, var(--color-gold-bright), var(--color-gold)); }
.button-secondary { border-color: var(--color-border); background: rgba(255,255,255,.02); color: var(--color-champagne); }
.foundation-pills { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 38px; }
.foundation-pills span {
    padding: 8px 12px; border: 1px solid var(--color-border-soft); border-radius: 999px;
    color: var(--color-muted); font-size: 11px;
}

.hero-card {
    position: relative; min-height: 510px; padding: 36px;
    border: 1px solid var(--color-border); border-radius: var(--radius-xl);
    background: linear-gradient(160deg, rgba(255,255,255,.055), rgba(255,255,255,.015));
    box-shadow: var(--shadow-gold); overflow: hidden;
}
.hero-card::after {
    content: ""; position: absolute; inset: auto -30% -48% 20%; height: 320px;
    background: radial-gradient(circle, rgba(212,175,55,.13), transparent 67%); pointer-events: none;
}
.hero-card-topline { display: flex; align-items: center; gap: 8px; color: var(--color-muted); font-size: 9px; letter-spacing: .22em; }
.status-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--color-success); box-shadow: 0 0 18px rgba(85,199,154,.65); }
.crown-art { height: 94px; margin: 62px 0 12px; display: flex; align-items: end; justify-content: center; gap: 8px; transform: skewX(-7deg); }
.crown-art span { width: 54px; border: 1px solid var(--color-border); border-bottom: 0; background: linear-gradient(to top, rgba(212,175,55,.12), rgba(212,175,55,.015)); }
.crown-art span:nth-child(1), .crown-art span:nth-child(3) { height: 52px; }
.crown-art span:nth-child(2) { height: 87px; }
.card-kicker { margin: 28px 0 8px; color: var(--color-gold-bright); font-size: 9px; letter-spacing: .25em; }
.hero-card h2 { margin: 0; font-family: var(--font-display); font-size: 48px; line-height: .95; font-weight: 400; }
.card-copy { max-width: 350px; color: var(--color-muted); font-size: 13px; line-height: 1.7; }
.card-metric-row { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 34px; }
.card-metric-row > div { padding: 15px; border-top: 1px solid var(--color-border-soft); }
.metric-label { display: block; color: var(--color-muted); font-size: 9px; letter-spacing: .18em; margin-bottom: 6px; }
.card-metric-row strong { color: var(--color-champagne); font-size: 14px; }

.feature-strip { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--color-border-soft); border-bottom: 1px solid var(--color-border-soft); }
.feature-strip article { padding: 34px 32px; border-right: 1px solid var(--color-border-soft); }
.feature-strip article:first-child { padding-left: 0; }
.feature-strip article:last-child { border-right: 0; }
.feature-index { color: var(--color-gold); font-size: 10px; letter-spacing: .18em; }
.feature-strip h3 { margin: 14px 0 8px; font-size: 15px; }
.feature-strip p { margin: 0; color: var(--color-muted); font-size: 13px; line-height: 1.7; }

@media (max-width: 900px) {
    .hero { min-height: auto; grid-template-columns: 1fr; gap: 44px; padding-top: 60px; }
    .hero-card { min-height: 440px; }
    .feature-strip { grid-template-columns: 1fr; }
    .feature-strip article, .feature-strip article:first-child { padding: 26px 0; border-right: 0; border-bottom: 1px solid var(--color-border-soft); }
    .feature-strip article:last-child { border-bottom: 0; }
}
@media (max-width: 560px) {
    .container, .public-header, .public-footer { width: min(calc(100% - 28px), var(--container)); }
    .public-header { min-height: 76px; }
    .public-header .text-link { display: none; }
    .hero { padding-top: 46px; }
    .hero h1 { font-size: 54px; }
    .hero-lead { font-size: 15px; }
    .hero-card { min-height: 410px; padding: 28px; border-radius: 26px; }
    .hero-card h2 { font-size: 42px; }
    .hero-actions .button { width: 100%; }
}
