.home-landing {
    --home-bg: #f7f9f5;
    --home-surface: #fff;
    --home-text: #123c36;
    --home-muted: #536b65;
    --home-border: #deE7e1;
    --home-accent: #14756d;
    --home-accent-hover: #0b524c;
    --home-teal: #4ecdc4;
    --home-yellow: #fed026;
    --home-shadow: 0 16px 48px #06282512;
    --home-shadow-sm: 0 4px 20px #06282508;
    font-family: 'Manrope', sans-serif;
    color: var(--home-text);
    background: var(--home-bg);
    overflow: clip;
}
.home-landing [id] { scroll-margin-top: 100px; }
.home-landing [hidden] { display: none !important; }
.home-landing h1, .home-landing h2, .home-landing h4 { font-family: 'Bricolage Grotesque', sans-serif; }
.home-landing a, .home-landing button { -webkit-tap-highlight-color: transparent; }
.home-landing :is(a, button):focus-visible { outline: 3px solid #d4ab00; outline-offset: 5px; }
.home-landing .text-muted { color: var(--home-muted) !important; }
.home-landing .home-strip-alt { background: #edf2ec; }
.home-prose-narrow { max-width: 640px; }
.home-skip-link { position: fixed; top: -100px; left: 16px; z-index: 1100; padding: 12px 20px; background: #fed026; color: #062825; }
.home-skip-link:focus { top: 12px; }
.home-landing .home-nav {
    min-height: 84px;
    background: #062825;
    border-bottom: 1px solid #ffffff16;
    padding: 14px 0;
    transition: box-shadow .2s ease;
}
.home-landing .home-nav--scrolled { box-shadow: 0 8px 24px #001c2533; }
.home-nav .navbar-brand { margin: 0; padding: 0 !important; }
.home-nav .navbar-brand img { width: 175px; height: auto; display: block; }
.home-landing .home-nav .nav-link { color: #dbeae5; font-size: 14px; font-weight: 600; padding: 10px 16px; }
.home-landing .home-nav .nav-link:hover { color: #fed026; }
.home-landing .home-nav .navbar-toggler { border-color: #ffffff42; padding: 8px 10px; }
.home-landing .btn-home-cta {
    display: inline-flex; align-items: center; justify-content: center; gap: 18px;
    background: var(--home-teal); border: 1px solid var(--home-teal); color: #062825 !important;
    font-size: 14px; font-weight: 800; border-radius: 8px; padding: 13px 22px;
    transition: background .2s, transform .2s;
}
.home-landing .btn-home-cta:hover { background: #74ddd3; border-color: #74ddd3; transform: translateY(-2px); }
.home-landing .btn-home-cta.btn-lg { padding: 16px 24px; font-size: 15px; }
.home-landing .home-nav .btn-home-cta { margin-left: 14px; padding: 11px 21px; }
.home-hero {
    position: relative; isolation: isolate; padding: 132px 0 54px;
    background: radial-gradient(ellipse at 75% 35%, #14756d80, transparent 55%), linear-gradient(145deg, #062825 12%, #0b3d3a 65%, #125c54);
    color: #f4fff8;
}
.home-hero::before {
    content: ''; position: absolute; inset: 0; z-index: -1;
    background: url('../images/landing/brand-waves.svg') center bottom / 100% auto no-repeat;
    pointer-events: none;
}
.home-hero > .container { width: 100%; max-width: 1440px; padding-left: 40px; padding-right: 40px; }
.home-hero-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.25fr); align-items: center; gap: 48px; }
.home-hero-copy { padding: 0; }
.home-hero h1 { font-size: clamp(40px, 4vw, 60px); letter-spacing: -.045em; line-height: 1.04; font-weight: 700; color: #f4fff8; margin: 0 0 25px; }
.home-hero h1 span { color: #6edacf; }
.home-hero-lead { color: #c2dad1; font-size: 16px; line-height: 1.8; max-width: 445px; margin-bottom: 30px; }
.home-hero-actions { display: flex; align-items: center; gap: 25px; flex-wrap: wrap; }
.home-hero .btn-home-cta { background: var(--home-yellow); border-color: var(--home-yellow); }
.home-hero .btn-home-cta:hover { background: #ffe270; border-color: #ffe270; }
.home-hero-secondary { display: inline-flex; gap: 10px; align-items: center; color: #f4fff8; font-size: 13px; font-weight: 700; text-decoration: none; padding: 12px 0; }
.home-hero-secondary:hover { color: #fed026; }
.home-hero-benefits { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 30px; color: #c2dad1; font-size: 11px; }
.home-hero-benefits i { color: #6edacf; margin-right: 5px; }
.home-product-showcase { width: 100%; max-width: 520px; margin: 0; justify-self: end; }
.home-product-image { position: relative; aspect-ratio: 1.77; overflow: hidden; }
.home-product-image img { position: absolute; width: 178.6%; max-width: none; height: auto; left: -46.8%; top: -27.6%; }
.home-product-showcase figcaption { color: #536b65; font-size: 12px; text-align: center; margin-top: 12px; }
.home-business-showcase { min-width: 0; }
.home-slide-count { font-variant-numeric: tabular-nums; color: #89bcb0; margin-left: auto; }
.home-hero-slider { display: grid; overflow: hidden; border: 1px solid #ffffff25; border-radius: 18px; background: #092e29; box-shadow: 0 24px 60px #001b2433; }
.home-hero-slide { grid-area: 1 / 1; margin: 0; min-width: 0; visibility: hidden; opacity: 0; transition: opacity .65s ease, visibility .65s; }
.home-hero-slide.active { visibility: visible; opacity: 1; z-index: 1; }
.home-hero-slide img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.home-hero-slide figcaption { padding: 21px 24px 23px; background: #f5f7ef; min-height: 120px; }
.home-sector-label { display: block; color: #14756d; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; font-weight: 800; margin-bottom: 8px; }
.home-hero-slide h2 { color: #123c36; font-size: 23px; line-height: 1.15; margin: 0 0 8px; font-weight: 700; letter-spacing: -.025em; }
.home-hero-slide p { color: #536b65; font-size: 12px; line-height: 1.6; margin: 0; }
.home-carousel-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 9px; padding-left: 3px; color: #b4cec4; font-size: 10px; }
.home-carousel-toggle { width: 36px; height: 36px; flex: 0 0 auto; border: 1px solid #ffffff40; border-radius: 50%; color: #f4fff8; background: #ffffff08; font-size: 17px; }
.home-carousel-toggle:hover { background: #ffffff20; }
.home-landing section.py-5 { padding-top: 80px !important; padding-bottom: 80px !important; }
.home-section-title { font-size: clamp(28px, 3vw, 42px); letter-spacing: -.035em; }
.home-section-kicker { font-size: 10px; font-weight: 800; letter-spacing: .15em; margin-bottom: 12px !important; }
.home-feature-card { border-radius: 13px; padding: 28px 20px; }
.home-feature-card h5 { font-size: 15px; font-weight: 800; }
.home-feature-card p { font-size: 13px; line-height: 1.7; }
.home-blog-card .card-img-top { height: auto; }
.home-landing .home-brand-section {
    background: url('../images/landing/brand-waves.svg') center bottom / cover no-repeat, linear-gradient(140deg, #062825, #0b3d3a 55%, #14756d);
}
.home-brand-section .home-section-title { color: #f4fff8; }
.home-brand-section .home-section-kicker { color: #77dcd0; }
.home-brand-section .home-shot { border-color: #ffffff28; }
.home-brand-section .home-testimonial-card { background: #ffffff08; border-color: #ffffff25; box-shadow: none; }
.home-brand-section .home-testimonial-card p { color: #d1e7df; }
.home-brand-section .home-testimonial-card h6 { color: #f4fff8; }
.home-landing .home-btn-outline-accent { color: #14756d; border: 1px solid #14756d; font-weight: 700; padding: 13px 16px; }
.home-landing .home-btn-outline-accent:hover { background: #14756d; color: #fff; }
.home-landing .home-plan-badge { background: #fed026 !important; border-color: #fed026 !important; color: #062825 !important; }
.home-pricing-card--featured { border-color: #14756d !important; box-shadow: 0 16px 48px #14756d18; }
.home-closing-cta { background: #e4eee3; padding: 64px 0; }
.home-closing-inner { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 48px; }
.home-closing-cta h2 { font-size: clamp(32px, 3vw, 44px); letter-spacing: -.04em; color: #123c36; font-weight: 700; }
.home-closing-description { margin: 12px 0 26px; color: #536b65; font-size: 14px; line-height: 1.7; }
.home-closing-cta .btn-home-cta { flex-shrink: 0; background: #123c36; border-color: #123c36; color: #fff !important; }
.home-closing-cta .btn-home-cta:hover { background: #14756d; }
.home-footer { background: #062825; color: #d1e7df; border-top: 1px solid #ffffff12; }
.home-footer .home-footer-brand { background: none; padding: 0 !important; }
.home-footer-brand img { width: 178px; height: auto; }
.home-footer h6 { color: #f4fff8; font-size: 12px; font-weight: 800; margin-bottom: 20px; }
.home-footer a { text-decoration: none; color: #b6d0c5; font-size: 13px; }
.home-footer a:hover { color: #fed026; }
.home-footer p { color: #b6d0c5; font-size: 13px; line-height: 1.8; max-width: 260px; }
.home-footer .home-footer-divider { border-color: #ffffff20 !important; }
.home-footer .home-footer-divider p { max-width: none; color: #adc9bf !important; font-size: 11px; }
@media (min-width: 1400px) { .home-landing .container { max-width: 1240px; } }
@media (max-width: 1199.98px) {
    .home-hero-grid { gap: 35px; }
    .home-hero h1 { font-size: 49px; }
}
@media (max-width: 991.98px) {
    .home-landing .home-nav { min-height: 76px; }
    .home-nav .navbar-brand img { width: 153px; }
    .home-nav .navbar-collapse { margin-top: 14px; padding: 14px 0; border-top: 1px solid #ffffff20; }
    .home-landing .home-nav .btn-home-cta { margin: 10px 0 0; }
    .home-hero { padding-top: 117px; }
    .home-hero-grid { grid-template-columns: 1fr; gap: 28px; }
    .home-hero-copy { max-width: 660px; }
    .home-hero h1 { font-size: clamp(42px, 7vw, 64px); }
    .home-hero-lead { max-width: 560px; }
    .home-business-showcase { width: 100%; max-width: 640px; }
    .home-closing-inner { grid-template-columns: 1fr; gap: 36px; }
    .home-product-showcase { justify-self: center; }
}
@media (max-width: 575.98px) {
    .home-landing .container { padding-left: 22px; padding-right: 22px; }
    .home-hero { padding-top: 110px; }
    .home-hero h1 { font-size: clamp(36px, 9.4vw, 48px); }
    .home-hero-lead { font-size: 14px; margin-bottom: 24px; }
    .home-hero-actions { gap: 12px; }
    .home-hero-secondary { font-size: 12px; }
    .home-hero-benefits { gap: 12px; font-size: 10px; margin-top: 24px; }
    .home-hero-slide figcaption { padding: 19px; min-height: 144px; }
    .home-hero-slide h2 { font-size: 22px; }
    .home-landing section.py-5 { padding-top: 56px !important; padding-bottom: 56px !important; }
    .home-closing-cta { padding: 48px 0; }
}
@media (prefers-reduced-motion: reduce) {
    .home-landing *, .home-landing *::before, .home-landing *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
    .home-landing :is(.home-feature-card, .home-shot, .home-pricing-card, .home-blog-card, .btn-home-cta):hover { transform: none; }
}
