.z-home {
--z-primary: #0f5a43;
--z-primary-700: #0a4634;
--z-accent: #f4b63f;
--z-soft: #f6f8f7;
--z-text: #1d2b24;
--z-radius: 12px;
color: var(--z-text);
font-family: inherit;
}
.z-home .container {
width: min(1120px, 92%);
margin: 0 auto;
}
.z-hero {
background: linear-gradient(135deg, #0f5a43 0%, #1f7a5b 100%);
color: #fff;
padding: 72px 0;
}
.z-hero-grid {
display: grid;
grid-template-columns: 1.25fr 0.75fr;
gap: 28px;
align-items: center;
}
.z-hero h1 {
font-size: clamp(32px, 4vw, 52px);
line-height: 1.1;
margin: 0 0 14px;
}
.z-hero p {
max-width: 58ch;
opacity: 0.95;
}
.z-hero-card {
background: rgba(255, 255, 255, 0.12);
border: 1px solid rgba(255,255,255,.2);
border-radius: var(--z-radius);
padding: 24px;
}
.z-cta-row {
display: flex;
gap: 10px;
flex-wrap: wrap;
margin: 22px 0 14px;
}
.z-btn {
display: inline-block;
padding: 12px 18px;
border-radius: 999px;
text-decoration: none !important;
font-weight: 700;
border: 1px solid transparent;
}
.z-btn-primary {
background: var(--z-primary);
color: #fff !important;
}
.z-btn-primary:hover { background: var(--z-primary-700); }
.z-btn-secondary {
background: #fff;
color: var(--z-primary) !important;
border-color: #d9e5df;
}
.z-btn-accent {
background: var(--z-accent);
color: #1f2a1f !important;
}
.z-trust-mini {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.z-trust-mini span {
background: rgba(255,255,255,.18);
border: 1px solid rgba(255,255,255,.3);
border-radius: 999px;
padding: 6px 10px;
font-size: 13px;
}
.z-trust {
background: var(--z-soft);
padding: 18px 0;
}
.z-trust-grid {
display: grid;
gap: 10px;
grid-template-columns: repeat(4, 1fr);
}
.z-pill {
background: #fff;
border: 1px solid #e3ebe7;
border-radius: 999px;
padding: 10px 14px;
text-align: center;
font-weight: 600;
}
.z-section { padding: 64px 0; }
.z-soft { background: var(--z-soft); }
.z-section h2 {
font-size: clamp(28px, 3vw, 40px);
margin-bottom: 8px;
}
.z-sub {
color: #4a5f55;
margin-bottom: 24px;
}
.z-cards {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}
.z-card {
background: #fff;
border: 1px solid #e3ebe7;
border-radius: var(--z-radius);
padding: 20px;
position: relative;
}
.z-card-featured {
border: 2px solid var(--z-primary);
box-shadow: 0 8px 24px rgba(15, 90, 67, 0.1);
}
.z-badge {
position: absolute;
top: 10px;
right: 10px;
background: var(--z-accent);
border-radius: 999px;
padding: 6px 10px;
font-size: 12px;
font-weight: 700;
}
.z-price {
font-size: 22px;
font-weight: 800;
margin: 8px 0;
}
.z-note {
border: 1px dashed #bfd0c8;
padding: 14px;
border-radius: 10px;
color: #4a5f55;
}
.z-steps {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 14px;
}
.z-steps > div {
background: #fff;
border: 1px solid #e3ebe7;
border-radius: var(--z-radius);
padding: 18px;
text-align: center;
}
.z-steps span {
width: 34px; height: 34px;
border-radius: 50%;
display: inline-grid;
place-items: center;
background: var(--z-primary);
color: #fff;
font-weight: 700;
margin-bottom: 10px;
}
.z-faq details {
background: #fff;
border: 1px solid #e3ebe7;
border-radius: 10px;
padding: 12px 14px;
margin-bottom: 10px;
}
.z-faq summary {
cursor: pointer;
font-weight: 700;
}
.z-final-cta {
background: linear-gradient(135deg, #0f5a43 0%, #0a4634 100%);
color: #fff;
text-align: center;
padding: 64px 0;
}
.z-final-cta p { opacity: .95; margin-bottom: 16px; }
@media (max-width: 992px) {
.z-hero-grid, .z-cards, .z-steps, .z-trust-grid {
grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 640px) {
.z-hero-grid, .z-cards, .z-steps, .z-trust-grid {
grid-template-columns: 1fr;
}
.z-btn { width: 100%; text-align: center; }
}