:root{
--bg-primary:#080a0f;
--bg-secondary:#10141d;
--bg-tertiary:#171c27;
--bg-warm:#201713;
--accent-ruby:#b72c47;
--accent-ruby-dark:#8f1f36;
--accent-gold:#d9b36c;
--accent-ice:#75b6a5;
--text-primary:#f7f2e8;
--text-secondary:#aaaeb8;
--border-architectural:rgba(237,61,107,.45);
--border-soft:rgba(247,242,232,.12);
--surface-overlay:rgba(255,255,255,.035);
--shadow-glow:0 24px 80px rgba(0,0,0,.38);

--font-heading:'Cormorant Garamond','Georgia',serif;
--font-body:'Manrope','Segoe UI','Helvetica Neue',Arial,sans-serif;

--fs-1:clamp(3.15rem,8vw,6.8rem);
--fs-2:clamp(2.25rem,4.7vw,4.5rem);
--fs-3:clamp(1.45rem,2.5vw,2rem);
--fs-4:1.2rem;
--fs-5:1rem;
--fs-6:.79rem;

--space-0:0;
--space-1:.5rem;
--space-2:1rem;
--space-3:2rem;
--space-4:3.25rem;
--space-5:5.5rem;
--space-6:8.5rem;

--radius-0:0;
--radius-1:8px;
--radius-2:16px;
--container-max:1240px;
--container-narrow:900px;
--gutter:clamp(1.15rem,4vw,3rem);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--bg-primary)}
body{
min-height:100vh;
overflow-x:hidden;
background:
linear-gradient(120deg,rgba(199, 150, 129, 0.58),transparent 44%),
linear-gradient(180deg,#b8907d 0%,#b8907d 48%,#b8907d 100%);
color:var(--text-primary);
font-family:var(--font-body);
font-size:var(--fs-5);
line-height:1.75;
text-rendering:optimizeLegibility;
}
body::before{
content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.15;
background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
background-size:64px 64px;
mask-image:linear-gradient(to bottom,black,transparent 75%);
}

img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}
input,button,textarea,select{font:inherit;color:inherit;background:none;border:none;outline:none}
button{cursor:pointer}
a{color:var(--accent-ruby);text-decoration:none;transition:color .2s ease,opacity .2s ease}
a:hover{color:#ff7095}
:focus-visible{outline:2px solid var(--accent-gold);outline-offset:4px}

h1,h2,h3,h4,h5,h6{
font-family:var(--font-heading);line-height:.98;letter-spacing:0;margin-bottom:var(--space-2);font-weight:600;text-wrap:balance;
}
h1{font-size:var(--fs-1);font-weight:500}
h2{font-size:var(--fs-2);font-weight:500}
h3{font-size:var(--fs-3)}
h4{font-size:var(--fs-4)}
h5{font-size:var(--fs-5)}
h6{font-size:var(--fs-6)}
p{margin-bottom:var(--space-2);color:var(--text-primary)}
small{font-size:var(--fs-6);color:var(--text-secondary)}
ul,ol{margin-bottom:var(--space-2);padding-left:1.25rem}
li{margin-bottom:.5rem}
blockquote{margin-bottom:var(--space-3);padding-left:var(--space-2);border-left:1px solid var(--accent-gold);color:var(--text-secondary)}

main{isolation:isolate}
section{position:relative;margin-bottom:var(--space-6)}
main > section:first-child{padding-top:clamp(3rem,7vw,7rem)}
section h2 + p{max-width:720px;color:var(--text-secondary)}
.container,.container-narrow{width:100%;margin-inline:auto;padding-inline:var(--gutter)}
.container{max-width:var(--container-max)}
.container-narrow{max-width:var(--container-narrow)}

.panel{
position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--border-soft);border-radius:var(--radius-1);box-shadow:var(--shadow-glow);
}
.panel::after{content:"";position:absolute;left:0;top:20%;bottom:20%;width:2px;background:linear-gradient(var(--accent-ruby),var(--accent-gold))}
.card{
background:linear-gradient(155deg,rgba(30,35,48,.96),rgba(15,18,27,.92));padding:clamp(1.45rem,3vw,2.35rem);
border:1px solid var(--border-soft);border-radius:var(--radius-1);position:relative;overflow:hidden;box-shadow:0 16px 50px rgba(0,0,0,.18);
transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.card::before{content:"";position:absolute;width:110px;height:110px;right:-50px;top:-55px;border:1px solid var(--border-architectural);border-radius:50%;pointer-events:none}
.card:hover{transform:translateY(-6px);border-color:rgba(237,61,107,.48);box-shadow:0 26px 70px rgba(0,0,0,.3)}
.card h3,.panel h3{color:#fff}

.button{
display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:50px;padding:.75rem 1.45rem;
background:linear-gradient(135deg,var(--accent-ruby),#9f1e46);color:#fff;text-transform:uppercase;font-size:var(--fs-6);
font-weight:700;letter-spacing:.12em;border:1px solid rgba(255,255,255,.14);border-radius:999px;box-shadow:0 10px 32px rgba(237,61,107,.2);
transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.button::after{content:"\2197";font-size:1rem;line-height:1}
.button:hover{color:#fff;transform:translateY(-2px);box-shadow:0 15px 40px rgba(237,61,107,.33)}
.button:focus-visible{outline:2px solid var(--accent-gold);outline-offset:3px}

.input,textarea,select{
width:100%;padding:.85rem 1rem;background:rgba(255,255,255,.04);border:1px solid var(--border-soft);border-radius:8px;color:var(--text-primary);
}
.input:focus,textarea:focus,select:focus{border-color:var(--accent-ruby);box-shadow:0 0 0 3px rgba(237,61,107,.1)}
label{display:block;margin-bottom:.5rem;font-size:var(--fs-6);color:var(--text-secondary);letter-spacing:.04em}
.form-group{margin-bottom:var(--space-3)}
hr{border:none;border-top:1px solid var(--border-soft);margin-block:var(--space-4)}
img.frame{border:1px solid var(--border-soft);border-radius:var(--radius-2);box-shadow:var(--shadow-glow)}

.eyebrow,.section-kicker{
display:inline-flex;align-items:center;gap:.65rem;margin-bottom:1.25rem;color:var(--accent-gold);font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;
}
.eyebrow::before,.section-kicker::before{content:"";width:28px;height:1px;background:currentColor}
.stat-strip{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--border-soft)}
.stat-strip > div{padding:1.4rem;border-right:1px solid var(--border-soft)}
.stat-strip > div:last-child{border-right:0}
.stat-strip strong{display:block;font-family:var(--font-heading);font-size:2rem;color:var(--accent-gold);line-height:1}
.stat-strip span{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em}
.quote-band{padding-block:var(--space-4);border-block:1px solid var(--border-soft);text-align:center}
.quote-band p{max-width:950px;margin:auto;font-family:var(--font-heading);font-size:clamp(1.8rem,4vw,3.8rem);line-height:1.08;color:var(--text-primary)}
.split-feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.number-list{counter-reset:item;display:grid;gap:0;margin:0;padding:0;list-style:none!important}
.number-list li{counter-increment:item;display:grid;grid-template-columns:52px 1fr;gap:1rem;padding:1.35rem 0;border-bottom:1px solid var(--border-soft);margin:0}
.number-list li::before{content:counter(item,decimal-leading-zero);font-family:var(--font-heading);font-size:1.65rem;color:var(--accent-ruby)}
.tag-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem}
.tag{padding:.45rem .8rem;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}

.flex{display:flex;gap:var(--space-2);min-width:0}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.justify-between{justify-content:space-between}.align-center{align-items:center}
.text-secondary{color:var(--text-secondary)}.bg-secondary{background:var(--bg-secondary)}.bg-tertiary{background:var(--bg-tertiary)}.border-accent{border:1px solid var(--border-architectural)}.no-last-margin>*:last-child{margin-bottom:0}

@media(max-width:800px){
:root{--space-5:4rem;--space-6:5.5rem}
.split-feature{grid-template-columns:1fr}.stat-strip{grid-template-columns:1fr}.stat-strip>div{border-right:0;border-bottom:1px solid var(--border-soft)}.stat-strip>div:last-child{border-bottom:0}
}
@media(max-width:520px){h1{font-size:clamp(3rem,16vw,4.7rem)}.button{width:100%}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
ul{list-style:none!important}
