:root{
  --black:#090909;
  --red:#c80016;
  --text:#151515;
  --muted:#666;
  --line:#e5e5e5;
  --soft:#fafafa;
  --white:#fff;
  --shell:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:#fff}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.shell{width:min(calc(100% - 48px),var(--shell));margin:auto}
.section{padding:76px 0}
.eyebrow{font-size:12px;letter-spacing:.26em;text-transform:uppercase;font-weight:700;color:#e54b55}
.eyebrow.red{color:var(--red)}
h1,h2{font-family:"Playfair Display",Georgia,serif;margin:0}
h2{font-size:44px;line-height:1.08}
.red-rule,.mini-rule{height:2px;background:var(--red);width:38px;margin:20px 0}
.site-header{position:absolute;z-index:10;top:0;left:0;right:0;height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;color:#fff}
.brand img{width:235px;filter:drop-shadow(0 2px 8px rgba(0,0,0,.25))}
.main-nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:600;text-transform:uppercase}
.main-nav a{padding:12px 0;border-bottom:2px solid transparent}
.main-nav a.active{border-bottom-color:var(--red)}
.main-nav .login{border:1px solid var(--red);padding:15px 20px}
.menu-toggle{display:none;background:none;border:1px solid rgba(255,255,255,.4);color:#fff;padding:10px 14px}
.hero{position:relative;min-height:720px;background:url("hero-temp.jpg") center/cover no-repeat;color:#fff;display:flex;align-items:center}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.38) 42%,rgba(0,0,0,.10) 75%)}
.hero-content{position:relative;padding-top:90px}
.hero h1{font-size:78px;line-height:.98;max-width:700px}
.hero-copy{font-size:20px;line-height:1.5;margin:0 0 30px}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 24px;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.03em}
.btn-red{background:var(--red);color:#fff}
.btn-black{background:#111;color:#fff;border:0}
.about{min-height:345px;display:flex;align-items:center}
.narrow-left{max-width:1080px}
.body-copy{max-width:470px;line-height:1.75;color:#333;font-size:16px}
.soft{background:var(--soft);border-top:1px solid #f1f1f1;border-bottom:1px solid #f1f1f1}
.center-head{text-align:center}
.center-head h2{font-size:35px}
.services{display:grid;grid-template-columns:repeat(3,1fr);margin-top:44px}
.services article{text-align:center;padding:10px 50px;border-right:1px solid var(--line)}
.services article:last-child{border-right:0}
.icon{font-size:48px;line-height:1}
.services h3{text-transform:uppercase;font-size:16px;letter-spacing:.04em;margin:13px 0 0}
.mini-rule{width:30px;margin:12px auto}
.services p{font-size:14px;line-height:1.6;color:#333}
.invest{display:grid;grid-template-columns:1.05fr 1fr;min-height:410px;background:var(--black);color:#fff}
.invest-copy{display:flex;align-items:center;background:radial-gradient(circle at 15% 50%,#1d1d1d 0,#0b0b0b 48%,#050505 100%)}
.invest-inner{padding:70px max(6vw,48px)}
.invest h2{font-size:48px}
.invest p{max-width:520px;line-height:1.65}
.invest-image{background:url("invest-temp.jpg") center/cover no-repeat}
.contact-grid{display:grid;grid-template-columns:.8fr 1.5fr;gap:80px;align-items:start}
.contact h2{font-size:42px}
.contact-meta{margin-top:30px;color:#333}
.contact-form{display:grid;gap:10px}
.contact-form .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
input,textarea{width:100%;padding:14px;border:1px solid #dcdcdc;font:inherit;background:#fff}
textarea{min-height:120px;resize:vertical}
.contact-form button{justify-self:start}
.footer{background:#050505;color:#fff;padding:28px 0}
.footer-grid{display:grid;grid-template-columns:250px 1fr auto;align-items:center;gap:36px}
.footer img{width:200px;filter:brightness(0) invert(1)}
.footer p{font-size:13px;line-height:1.5;color:#ddd}
.footer-links{display:flex;gap:28px;font-size:12px}
@media(max-width:900px){
  .site-header{height:82px}
  .brand img{width:190px}
  .menu-toggle{display:block}
  .main-nav{position:absolute;top:82px;left:20px;right:20px;display:none;flex-direction:column;align-items:stretch;background:#0b0b0b;padding:20px}
  .main-nav.open{display:flex}
  .hero{min-height:640px}
  .hero h1{font-size:58px}
  .services{grid-template-columns:1fr}
  .services article{border-right:0;border-bottom:1px solid var(--line);padding:28px 20px}
  .services article:last-child{border-bottom:0}
  .invest{grid-template-columns:1fr}
  .invest-image{min-height:300px}
  .contact-grid{grid-template-columns:1fr;gap:40px}
  .footer-grid{grid-template-columns:1fr}
  .footer-links{flex-wrap:wrap}
}
@media(max-width:600px){
  .shell{width:min(calc(100% - 32px),var(--shell))}
  .section{padding:56px 0}
  .hero{min-height:600px}
  .hero-content{padding-top:70px}
  .hero h1{font-size:48px}
  .hero-copy{font-size:17px}
  h2{font-size:36px}
  .center-head h2{font-size:30px}
  .invest h2{font-size:40px}
  .invest-inner{padding:56px 24px}
  .contact-form .two{grid-template-columns:1fr}
}
