:root{
  --black:#0b0c0d;
  --ink:#111214;
  --paper:#f7f5f1;
  --paper-2:#ffffff;
  --gold:#c7a05a;
  --muted:#666;
  --line:#dedbd5;
  --max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}

body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;
}

button,input,textarea,select{font:inherit}
button{cursor:pointer}
.wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}

.hero{
  min-height:690px;
  color:#fff;
  background:
    radial-gradient(circle at 53% 35%,rgba(255,255,255,.035),transparent 32%),
    linear-gradient(135deg,#070809,#111214 58%,#08090a);
}

.hero-inner{
  text-align:center;
  padding:92px 0 72px;
}

.hero h1{
  margin:0;
  font-weight:300;
  line-height:.9;
  letter-spacing:-.055em;
  font-size:clamp(110px,18vw,220px);
}

.hero h1 span{font-weight:300}
.hero h1 strong{font-weight:300;color:#d1aa62}

.gold-rule{
  height:1px;
  width:86px;
  background:var(--gold);
  margin:46px auto 34px;
}

.eyebrow{
  font-size:clamp(20px,2.6vw,31px);
  letter-spacing:.23em;
  margin:0 0 8px;
}

.sub-eyebrow{
  font-size:clamp(13px,1.45vw,18px);
  letter-spacing:.23em;
  margin:0 0 10px;
  color:#f1f1f1;
}

.tagline{
  margin:0;
  color:#d6b065;
  font-size:22px;
  letter-spacing:.04em;
}

.cta{
  border:0;
  border-radius:4px;
  letter-spacing:.14em;
  font-size:15px;
  padding:20px 29px;
  transition:.18s ease;
}

.cta:hover{transform:translateY(-1px)}

.cta-outline{
  margin:38px 0 23px;
  min-width:min(450px,90vw);
  color:#d8b568;
  background:transparent;
  border:1px solid #d0aa5f;
}

.cta-outline span{
  float:right;
  font-size:24px;
  line-height:18px;
}

.confidential{
  font-size:12px;
  letter-spacing:.13em;
  color:#ececec;
}

.features{
  background:#faf9f7;
  border-bottom:1px solid var(--line);
}

.feature-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  padding:60px 0 58px;
}

.feature-grid article{
  text-align:center;
  padding:0 32px;
  border-right:1px solid var(--line);
}

.feature-grid article:last-child{border-right:0}

.feature-icon{
  height:58px;
  color:var(--gold);
  font-size:44px;
  line-height:1;
}

.feature-grid h2{
  font-size:17px;
  letter-spacing:.12em;
  margin:14px 0;
}

.mini-rule{
  width:38px;
  height:1px;
  background:var(--gold);
  margin:18px auto 21px;
}

.feature-grid p{
  margin:0;
  font-size:15px;
}

.about-contact{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  background:var(--paper-2);
}

.about,.contact-summary{
  padding:58px 58px 62px;
}

.about{
  border-right:1px solid var(--line);
}

.section-label{
  color:#b98f48;
  letter-spacing:.1em;
  font-size:12px;
  margin:0 0 16px;
}

.about-contact h2,
.contact-form h2{
  font-size:27px;
  line-height:1.25;
  margin:0 0 23px;
  font-weight:600;
}

.about-contact p:not(.section-label){
  font-size:16px;
}

.cta-dark{
  background:#0b0c0d;
  color:#d8b568;
  margin-top:9px;
}

.muted{color:#555}

footer{
  background:#090a0b;
  color:#eee;
  text-align:center;
  padding:18px;
  font-size:13px;
}

.contact-dialog{
  width:min(760px,calc(100% - 30px));
  border:0;
  border-radius:10px;
  padding:0;
  background:#fbfaf7;
  box-shadow:0 30px 90px rgba(0,0,0,.4);
}

.contact-dialog::backdrop{
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(3px);
}

.contact-form{
  padding:42px;
  position:relative;
}

.close{
  position:absolute;
  right:22px;
  top:15px;
  border:0;
  background:none;
  font-size:34px;
  font-weight:200;
  color:#555;
}

.form-intro{
  color:#555;
  margin-top:-8px;
}

.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin:28px 0 22px;
}

.form-grid label{
  display:grid;
  gap:7px;
}

.form-grid .full{
  grid-column:1/-1;
}

.form-grid span{
  font-size:13px;
  font-weight:600;
  letter-spacing:.03em;
}

input,textarea,select{
  width:100%;
  border:1px solid #d6d1c8;
  background:#fff;
  border-radius:4px;
  padding:13px 14px;
  outline:none;
}

input:focus,
textarea:focus,
select:focus{
  border-color:#b88b3e;
  box-shadow:0 0 0 3px rgba(184,139,62,.12);
}

textarea{resize:vertical}
.submit{width:100%;margin-top:18px}

.form-status{
  min-height:24px;
  margin:13px 0 0;
  text-align:center;
  font-size:14px;
}

.hp{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}

@media(max-width:760px){
  .wrap{width:min(100% - 28px,var(--max))}
  .hero{min-height:auto}
  .hero-inner{padding:72px 0 50px}
  .hero h1{font-size:clamp(92px,33vw,145px)}
  .eyebrow{font-size:17px;letter-spacing:.15em}
  .sub-eyebrow{font-size:12px;letter-spacing:.16em}
  .tagline{font-size:18px}

  .feature-grid{
    grid-template-columns:1fr 1fr;
    padding:18px 0;
  }

  .feature-grid article{
    padding:32px 20px;
    border-bottom:1px solid var(--line);
  }

  .feature-grid article:nth-child(2){border-right:0}
  .feature-grid article:nth-child(3),
  .feature-grid article:nth-child(4){border-bottom:0}

  .about-contact{grid-template-columns:1fr}

  .about,.contact-summary{
    padding:42px 25px;
  }

  .about{
    border-right:0;
    border-bottom:1px solid var(--line);
  }

  .form-grid{grid-template-columns:1fr}
  .form-grid .full{grid-column:auto}
  .contact-form{padding:34px 22px}
}

@media(max-width:430px){
  .feature-grid{grid-template-columns:1fr}

  .feature-grid article{
    border-right:0!important;
    border-bottom:1px solid var(--line)!important;
  }

  .feature-grid article:last-child{
    border-bottom:0!important;
  }
}
