:root{--navy:#0D1B2A;--ivory:#F6F0E6;--gold:#B79052;--magenta:#B23469;--ink:#263340;--white:#FFFCF7;--line:#D9CDBD}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:Montserrat,Arial,sans-serif;line-height:1.64}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:500;line-height:1.08;margin:0;color:var(--navy)}
p{margin:0 0 1rem}
.wrap{width:min(1160px,calc(100% - 48px));margin:auto}
.eyebrow{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--magenta);font-weight:800}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:2px;text-decoration:none;font-weight:800;font-size:.87rem}
.btn-primary{background:var(--magenta);color:white}
.btn-secondary{border:1px solid var(--navy);color:var(--navy)}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.topbar{background:var(--navy);color:white;text-align:center;padding:8px 20px;font-size:.8rem}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(13,27,42,.13)}
.brand{font-family:Georgia,serif;font-size:1.5rem;color:var(--navy);text-decoration:none}
.brand small{display:block;font:600 .58rem Montserrat,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--magenta)}
.menu{display:flex;gap:25px;align-items:center}
.menu a{color:var(--navy);text-decoration:none;font-size:.86rem}
.menu a.active{color:var(--magenta);font-weight:800}
section{padding:92px 0}
.hero{position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;width:660px;height:660px;border:1px solid rgba(183,144,82,.24);border-radius:50%;right:-300px;top:-310px}
.hero-grid{min-height:610px;display:grid;grid-template-columns:1.06fr .94fr;gap:75px;align-items:center;padding:68px 0 82px}
.hero h1{font-size:clamp(3.4rem,6vw,5.6rem);margin:17px 0 24px}
.hero h1 em{font-style:normal;color:var(--magenta)}
.lead{font-size:1.1rem;max-width:690px}
.number-stage{min-height:480px;background:var(--navy);display:grid;place-items:center;position:relative;overflow:hidden}
.number-stage:before,.number-stage:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(230,200,153,.32)}
.number-stage:before{width:390px;height:390px}
.number-stage:after{width:265px;height:265px;border-color:rgba(178,52,105,.5)}
.number{font:7.8rem Georgia,serif;color:#E6C899;position:relative;z-index:1}
.number-stage span{position:absolute;color:white;font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800}
.n1{top:48px;left:45px}
.n2{right:36px;top:50%}
.n3{bottom:50px;left:55px}
.intro{background:var(--white)}
.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:78px}
.intro h2,.split h2,.portrait h2,.approach h2{font-size:3.1rem;margin:12px 0 20px}
.quote{border-left:3px solid var(--magenta);padding-left:28px;font:1.45rem/1.48 Georgia,serif;color:var(--navy);margin-top:26px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px;grid-column:1/-1}
.feature{border:1px solid var(--line);background:var(--ivory);padding:28px}
.feature-no{font:1.8rem Georgia,serif;color:var(--gold)}
.feature h3{font-size:1.45rem;margin:17px 0 10px}
.feature p{font-size:.86rem;margin:0}
.split{background:#ECE3D8}
.split-head{max-width:790px;margin-bottom:42px}
.dual{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.panel{padding:46px;background:var(--white);border-top:3px solid var(--gold)}
.panel.business{background:var(--navy);color:#DFE4E9;border-top-color:var(--magenta)}
.panel.business h3{color:white}
.panel h3{font-size:2.15rem;margin:10px 0 19px}
.checklist{list-style:none;padding:0;margin:23px 0 0}
.checklist li{position:relative;padding:9px 0 9px 27px}
.checklist li:before{content:"✓";position:absolute;left:0;color:var(--magenta);font-weight:900}
.panel.business .checklist li:before{color:#E6C899}
.portrait{background:var(--ivory)}
.portrait-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:72px;align-items:start}
.portrait-card{background:var(--navy);color:white;padding:48px;position:relative;overflow:hidden}
.portrait-card:after{content:"01 02 03 04";position:absolute;right:-18px;bottom:-24px;font:4.5rem Georgia,serif;color:rgba(255,255,255,.05)}
.portrait-card h3{color:white;font-size:2.4rem;margin:12px 0 22px}
.portrait-card p{color:#D7DDE4}
.steps{border-top:1px solid var(--gold)}
.step{display:grid;grid-template-columns:54px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}
.step-no{font:1.7rem Georgia,serif;color:var(--magenta)}
.step h3{font-size:1.35rem;margin:0 0 7px}
.step p{font-size:.86rem;margin:0}
.approach{background:var(--white)}
.approach-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px}
.manifesto{background:var(--ivory);border:1px solid var(--line);padding:38px;font:1.35rem/1.5 Georgia,serif;color:var(--navy)}
.notice{margin-top:25px;padding:20px 22px;background:#F0E6DA;font-size:.78rem}
.final{background:var(--navy);color:#E1E6EB;text-align:center}
.final h2{color:white;font-size:3.4rem;max-width:820px;margin:0 auto 18px}
.final p{max-width:710px;margin:0 auto 26px}
.final .eyebrow{color:#DCA0BB}
.final .btn-secondary{border-color:white;color:white}
footer{background:var(--navy);color:#CFC8BE;padding:42px 0 28px;border-top:1px solid rgba(255,255,255,.13)}
.footer-row{display:flex;justify-content:space-between;align-items:center;gap:25px}
.footer-row a{color:#D8D2C8;text-decoration:none;font-size:.82rem}
.footer-links{display:flex;gap:22px;flex-wrap:wrap}
.copyright{margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.13);font-size:.72rem}
.back-to-top{position:fixed;right:22px;bottom:22px;z-index:30;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:white;text-decoration:none;border:1px solid rgba(183,144,82,.75);box-shadow:0 10px 28px rgba(13,27,42,.22);font-size:1.25rem;transition:.2s}
.back-to-top:hover{transform:translateY(-3px);background:var(--magenta)}
@media(max-width:860px){.wrap{width:min(100% - 32px,680px)}
.menu a:not(.active){display:none}
.nav{height:68px}
.hero-grid,.intro-grid,.portrait-grid,.approach-grid{grid-template-columns:1fr;gap:38px}
.hero-grid{padding:48px 0 65px}
.hero h1{font-size:3.25rem}
.number-stage{min-height:400px}
.feature-grid{grid-template-columns:1fr}
.dual{grid-template-columns:1fr}
.intro h2,.split h2,.portrait h2,.approach h2,.final h2{font-size:2.45rem}
section{padding:68px 0}
.panel,.portrait-card{padding:36px 30px}
.footer-row{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){.brand{font-size:1.25rem}
.hero h1{font-size:2.75rem}
.actions{flex-direction:column}
.actions .btn{width:100%}
.number-stage{min-height:330px}
.number-stage:before{width:270px;height:270px}
.number-stage:after{width:185px;height:185px}
.number{font-size:6.2rem}
.intro h2,.split h2,.portrait h2,.approach h2,.final h2{font-size:2.15rem}
.panel{padding:32px 24px}
.footer-links{flex-direction:column;gap:9px}
}
