:root{

--black:#111111;
--red:#c1121f;
--white:#ffffff;
--light:#f5f5f5;
--gray:#707070;
--border:#e5e5e5;
--radius:18px;
--shadow:0 18px 45px rgba(0,0,0,.12);
--max:1200px;

}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'Inter',sans-serif;
background:var(--white);
color:var(--black);
line-height:1.6;

}

.container{

width:min(92%,var(--max));
margin:auto;

}

.site-header{

position:sticky;
top:0;
background:rgba(255,255,255,.96);
backdrop-filter:blur(10px);
border-bottom:1px solid var(--border);
z-index:1000;

}

.nav{

display:flex;
justify-content:space-between;
align-items:center;
padding:20px 0;

}

.logo{

display:flex;
align-items:center;
gap:14px;
text-decoration:none;
color:var(--black);

}

.logo-mark{

font-size:2rem;
color:var(--red);

}

.logo-text{

display:flex;
flex-direction:column;
line-height:1.1;

}

.logo-text strong{

letter-spacing:.12em;

}

.logo-text small{

color:var(--gray);

}

nav{

display:flex;
gap:34px;

}

nav a{

text-decoration:none;
color:var(--black);
font-weight:600;

}

nav a:hover{

color:var(--red);

}

.btn{

display:inline-block;
padding:15px 28px;
border-radius:999px;
text-decoration:none;
font-weight:700;
transition:.25s;

}

.btn-primary{

background:var(--red);
color:white;

}

.btn-primary:hover{

transform:translateY(-2px);

}

.btn-secondary{

border:2px solid var(--black);
color:var(--black);

}

.btn-secondary:hover{

background:var(--black);
color:white;

}

.hero{

padding:100px 0;

}

.hero-grid{

display:grid;
grid-template-columns:1.2fr .8fr;
gap:60px;
align-items:center;

}

.eyebrow{

color:var(--red);
font-weight:700;
letter-spacing:.2em;
margin-bottom:20px;

}

.hero h1{

font-size:clamp(3rem,7vw,5rem);
line-height:1;
margin-bottom:25px;

}

.hero p{

font-size:1.2rem;
color:var(--gray);
max-width:640px;
margin-bottom:35px;

}

.hero-buttons{

display:flex;
gap:18px;
flex-wrap:wrap;

}

.panel-card{

background:var(--black);
color:white;
padding:40px;
border-radius:var(--radius);
box-shadow:var(--shadow);

display:grid;
gap:18px;

}

.section{

padding:110px 0;

}

.section h2{

font-size:2.6rem;
margin-bottom:15px;

}

.section-intro{

color:var(--gray);
margin-bottom:45px;

}

.process-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:24px;

}

.step{

background:white;
padding:30px;
border-radius:var(--radius);
box-shadow:var(--shadow);

}

.step h3{

font-size:2rem;
color:var(--red);

}

.step h4{

margin:15px 0;

}

.dark{

background:var(--black);
color:white;

}

.services{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:28px;
margin-top:45px;

}

.services article{

background:#1c1c1c;
padding:35px;
border-radius:var(--radius);

}

.services p{

margin-top:15px;
color:#cfcfcf;

}

.cta{

padding:110px 0;
background:var(--light);
text-align:center;

}

.cta h2{

font-size:3rem;
margin-bottom:20px;

}

.cta p{

margin-bottom:35px;
font-size:1.15rem;

}

footer{

background:var(--black);
color:white;
text-align:center;
padding:40px 0;

}

@media (max-width:900px){

.hero-grid{

grid-template-columns:1fr;

}

nav{

display:none;

}

.hero{

padding:70px 0;

}

.hero h1{

font-size:3rem;

}

}