{
box-sizing: border-box;
}

{
font-family:
Inter,
ui-sans-serif,
-apple-system,
BlinkMacSystemFont,
"Segoe UI",
Roboto,
Helvetica,
Arial,
sans-serif;

color: #171717;
background: #f7f7f5;
line-height: 1.6;
}

html {
scroll-behavior: smooth;
}

body {
margin: 0;
min-width: 320px;
}

a {
color: inherit;
}

/* --------------------------------
Header / Navigation
-------------------------------- */

.site-header {
border-bottom: 1px solid #deded9;
background: rgba(247, 247, 245, 0.94);

position: sticky;
top: 0;
z-index: 10;

backdrop-filter: blur(12px);
}

.nav {
max-width: 1120px;
margin: 0 auto;

padding: 22px 28px;

display: flex;
align-items: center;
justify-content: space-between;

gap: 24px;
}

.logo {
font-size: 1rem;
font-weight: 650;
letter-spacing: -0.02em;
text-decoration: none;
}

.nav-links {
display: flex;
gap: 26px;

font-size: 0.9rem;
}

.nav-links a {
text-decoration: none;
color: #5d5d58;
}

.nav-links a {
color: #171717;
}

/* --------------------------------
Main content
-------------------------------- */

main {
max-width: 1120px;
margin: 0 auto;

padding: 0 28px;
}

/* --------------------------------
Hero
-------------------------------- */

.hero {
min-height: 55vh;

display: flex;
flex-direction: column;
justify-content: center;

padding: 90px 0 100px;

max-width: 800px;
}

.eyebrow,
.card-number {
margin: 0 0 18px;

color: #777770;

font-size: 0.76rem;
font-weight: 650;

letter-spacing: 0.12em;
text-transform: uppercase;
}

h1 {
margin: 0;

font-size: clamp(3.6rem, 9vw, 7.5rem);

line-height: 0.95;
letter-spacing: -0.065em;

font-weight: 650;
}

.intro {
max-width: 610px;

margin: 34px 0 0;

font-size: clamp(1.15rem, 2vw, 1.45rem);

line-height: 1.55;

color: #5d5d58;
}

/* --------------------------------
Content cards
-------------------------------- */

.cards {
display: grid;

grid-template-columns: repeat(3, 1fr);

gap: 1px;

background: #deded9;

border: 1px solid #deded9;
}

.card {
min-height: 330px;

padding: 34px;

background: #f7f7f5;

display: flex;
flex-direction: column;
}

.card-number {
margin-bottom: auto;
}

h2 {
margin: 40px 0 12px;

font-size: 1.45rem;

letter-spacing: -0.025em;
}

.card p(.card-number) {
margin: 0;

color: #686862;

font-size: 0.98rem;
}

/* --------------------------------
Links / Coming soon
-------------------------------- */

.card-link,
.coming-soon {
margin-top: 26px;

font-size: 0.9rem;
font-weight: 650;
}

.card-link {
text-decoration: none;
}

.card-link {
text-decoration: underline;
text-underline-offset: 4px;
}

.coming-soon {
color: #898982;
}

/* --------------------------------
Footer
-------------------------------- */

.site-footer {
max-width: 1120px;

margin: 0 auto;

padding: 70px 28px 40px;

color: #85857e;

font-size: 0.82rem;
}

/* --------------------------------
Mobile layout
-------------------------------- */

@media (max-width: 760px) {

.nav {
padding: 18px 20px;
}

.nav-links {
gap: 15px;

font-size: 0.82rem;

}

main {
padding: 0 20px;
}

.hero {
min-height: 58vh;

padding: 70px 0;

}

h1 {
font-size: clamp(3.2rem, 17vw, 5.5rem);
}

.cards {
grid-template-columns: 1fr;
}

.card {
min-height: 270px;
}

.site-footer {
padding-left: 20px;
padding-right: 20px;
}
}
