
:root{
  --ink:#111827;
  --ink2:#1f2937;
  --muted:#6b7280;
  --line:#e5e7eb;
  --paper:#ffffff;
  --wash:#f7f4ee;
  --sand:#d4a056;
  --sand2:#b88746;
  --navy:#0f172a;
  --green:#215348;
  --danger:#7f1d1d;
  --shadow:0 24px 60px rgba(17,24,39,.13);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.55;
}
a{color:inherit}
img{max-width:100%}
.container{width:min(1160px, calc(100% - 40px)); margin-inline:auto}
.skip{position:absolute; left:-999px; top:auto; width:1px; height:1px; overflow:hidden}
.skip:focus{left:20px; top:20px; width:auto; height:auto; background:#fff; padding:12px 16px; z-index:999}
header.site-header{
  position:sticky; top:0; z-index:50;
  backdrop-filter:blur(16px);
  background:rgba(255,255,255,.88);
  border-bottom:1px solid rgba(229,231,235,.7);
}
.nav{display:flex; align-items:center; justify-content:space-between; min-height:78px; gap:24px}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none; font-weight:850; letter-spacing:.04em}
.brand img{height:58px; width:auto; max-width:140px; object-fit:contain}
.brand span small{display:block; font-size:11px; color:var(--muted); letter-spacing:.13em; font-weight:700}
.menu{display:flex; align-items:center; gap:22px; font-size:14px; font-weight:700}
.menu a{text-decoration:none; color:#374151}
.menu a:hover{color:var(--sand2)}
.nav-actions{display:flex; align-items:center; gap:12px}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid transparent;
  border-radius:999px;
  padding:13px 18px;
  font-weight:800;
  text-decoration:none;
  transition:.18s ease;
  cursor:pointer;
}
.btn.primary{background:var(--ink); color:#fff}
.btn.primary:hover{transform:translateY(-1px); box-shadow:0 10px 22px rgba(17,24,39,.2)}
.btn.gold{background:var(--sand); color:#111827}
.btn.gold:hover{background:#e6b46d}
.btn.ghost{border-color:var(--line); background:#fff; color:var(--ink)}
.btn.ghost:hover{border-color:var(--sand); color:var(--sand2)}
.mobile-toggle{display:none; border:0; background:#fff; font-size:26px}
.hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 10%, rgba(212,160,86,.28), transparent 36%),
    linear-gradient(135deg, #111827 0%, #1f2937 52%, #31423e 100%);
  color:#fff;
}
.hero .container{display:grid; grid-template-columns:1.08fr .92fr; gap:48px; align-items:center; min-height:690px; padding:68px 0}
.eyebrow{color:#f7c57c; font-weight:900; letter-spacing:.14em; text-transform:uppercase; font-size:12px}
h1,h2,h3{line-height:1.05; margin:0 0 18px}
h1{font-size:clamp(42px, 6.2vw, 82px); letter-spacing:-.055em}
h2{font-size:clamp(32px, 4vw, 54px); letter-spacing:-.045em}
h3{font-size:24px; letter-spacing:-.025em}
.hero p.lead{font-size:clamp(18px,2vw,23px); color:#e5e7eb; max-width:760px; margin:0 0 28px}
.hero-card{
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.16);
  border-radius:var(--radius);
  padding:28px;
  box-shadow:var(--shadow);
}
.hero-card .panel{
  background:#fff; color:var(--ink);
  border-radius:18px;
  padding:24px;
  margin-top:16px;
}
.stat-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:28px}
.stat{border:1px solid rgba(255,255,255,.18); border-radius:16px; padding:16px}
.stat strong{display:block; font-size:23px; color:#fff}
.stat span{font-size:13px; color:#d1d5db}
.hero-ctas{display:flex; flex-wrap:wrap; gap:12px; margin:26px 0 10px}
.notice{font-size:13px; color:#d1d5db; margin-top:18px}
.band{background:#0b1220; color:#fff; padding:18px 0; font-weight:800}
.band .container{display:flex; gap:28px; justify-content:center; flex-wrap:wrap; color:#e5e7eb; font-size:14px}
.section{padding:86px 0}
.section.wash{background:var(--wash)}
.section.dark{background:#111827; color:#fff}
.section-head{max-width:860px; margin-bottom:38px}
.section-head p{font-size:19px; color:var(--muted); margin:0}
.dark .section-head p{color:#d1d5db}
.grid{display:grid; gap:22px}
.grid.three{grid-template-columns:repeat(3,1fr)}
.grid.two{grid-template-columns:repeat(2,1fr)}
.card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:28px;
  box-shadow:0 10px 28px rgba(17,24,39,.05);
}
.card.dark-card{background:#172033; border-color:#263247; color:#fff}
.card p{color:#4b5563; margin:0 0 16px}
.dark-card p{color:#d1d5db}
.kicker{font-size:12px; color:var(--sand2); text-transform:uppercase; font-weight:900; letter-spacing:.12em; margin-bottom:12px}
.list{padding-left:0; margin:16px 0 0; list-style:none}
.list li{position:relative; padding-left:24px; margin:10px 0}
.list li:before{content:""; width:8px; height:8px; background:var(--sand); border-radius:50%; position:absolute; left:0; top:.65em}
.service-card{display:flex; flex-direction:column; min-height:100%}
.service-card .btn{margin-top:auto; align-self:flex-start}
.split{display:grid; grid-template-columns:1fr 1fr; gap:54px; align-items:center}
.feature-box{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:32px; box-shadow:var(--shadow)
}
.steps{counter-reset:item; display:grid; gap:14px}
.step{counter-increment:item; display:flex; gap:16px; padding:18px; border-radius:16px; background:#fff; border:1px solid var(--line)}
.step:before{content:counter(item); flex:0 0 36px; width:36px; height:36px; border-radius:50%; background:var(--ink); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:900}
.quote{font-size:28px; line-height:1.25; font-weight:850; letter-spacing:-.03em; color:#fff; margin:0}
.pricing{display:grid; grid-template-columns:repeat(3,1fr); gap:22px}
.price-card{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:30px; position:relative}
.price-card.featured{border:2px solid var(--sand); transform:translateY(-8px); box-shadow:var(--shadow)}
.price{font-size:42px; font-weight:950; letter-spacing:-.05em; margin:14px 0}
.price small{font-size:14px; color:var(--muted); font-weight:700}
.form-wrap{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:30px; box-shadow:var(--shadow)}
form{display:grid; gap:14px}
label{font-weight:800; font-size:14px}
input,select,textarea{
  width:100%;
  padding:13px 14px;
  border:1px solid #d1d5db;
  border-radius:12px;
  font:inherit;
  background:#fff;
}
textarea{min-height:130px}
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:14px}
.small{font-size:13px; color:var(--muted)}
.footer{
  background:#070b13; color:#d1d5db; padding:54px 0 28px
}
.footer-grid{display:grid; grid-template-columns:1.3fr .7fr .7fr .7fr; gap:26px}
.footer a{color:#d1d5db; text-decoration:none}
.footer a:hover{color:#f7c57c}
.footer h4{color:#fff; margin:0 0 14px}
.footer ul{list-style:none; padding:0; margin:0}
.footer li{margin:9px 0}
.copyright{border-top:1px solid rgba(255,255,255,.12); margin-top:32px; padding-top:18px; font-size:13px; color:#9ca3af}
.page-hero{background:linear-gradient(135deg,#111827,#1f2937); color:#fff; padding:86px 0 60px}
.page-hero p{font-size:20px; color:#d1d5db; max-width:850px}
.breadcrumb{font-size:13px; color:#f7c57c; font-weight:800; margin-bottom:18px}
.resource-card a{font-weight:900; color:var(--ink); text-decoration:none}
.resource-card a:hover{color:var(--sand2)}
.badge-row{display:flex; flex-wrap:wrap; gap:10px; margin:22px 0}
.badge{background:rgba(212,160,86,.14); color:#4a341b; border:1px solid rgba(212,160,86,.35); padding:8px 11px; border-radius:999px; font-size:13px; font-weight:800}
.dark .badge{color:#f7c57c}
@media (max-width:940px){
  .hero .container,.split{grid-template-columns:1fr}
  .hero .container{min-height:auto; padding:58px 0}
  .grid.three,.pricing,.footer-grid{grid-template-columns:1fr}
  .grid.two{grid-template-columns:1fr}
  .menu{display:none; position:absolute; top:78px; left:0; right:0; background:#fff; flex-direction:column; align-items:flex-start; padding:20px; border-bottom:1px solid var(--line)}
  .menu.open{display:flex}
  .mobile-toggle{display:block}
  .nav-actions .btn.ghost{display:none}
  .stat-grid{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
}

.brand.logo-only span{display:none}
.footer .brand img{height:96px; max-width:180px}
.hero-logo{
  width:min(310px, 90%);
  height:auto;
  display:block;
  margin:0 auto 18px;
  filter:drop-shadow(0 18px 30px rgba(0,0,0,.35));
}
@media (max-width:940px){
  .brand img{height:50px; max-width:120px}
  .footer .brand img{height:82px}
}
