/* Original landing-page campaigns: keep property photos independent of form height. */
.classic-campaign { --brand-dark: var(--brand-green); }
.classic-campaign .lp-hero {
    background: #f8f3eb;
    color: var(--brand-green);
    min-height: 0;
    padding-top: 130px;
    padding-bottom: 60px;
}
.classic-campaign--snow .lp-hero { background: #f2f7f3; }
.classic-campaign .lp-hero .overlay { display: none; }
.classic-campaign .lp-hero .row { align-items: flex-start !important; }
.classic-campaign .lp-hero .row > div { min-width: 0 !important; }
.classic-campaign .classic-campaign-label { color: var(--brand-green); font-size: 1rem; font-weight: 600; margin-bottom: 12px; }
.classic-campaign .lp-hero h1 {
    color: var(--brand-green) !important;
    text-shadow: none !important;
    font-size: clamp(2.5rem, 4.2vw, 3.5rem) !important;
}
.classic-campaign .lp-hero h1 + p {
    color: #354b3c !important;
    text-shadow: none !important;
    font-size: 1.25rem !important;
    margin-bottom: 20px !important;
}
.classic-campaign .trust-badges { flex-wrap: wrap; row-gap: 8px !important; }
.classic-campaign .trust-badges i { color: var(--brand-green) !important; text-shadow: none !important; }
.classic-campaign .classic-campaign-cta { margin-top: 22px; }
.classic-campaign #contact { scroll-margin-top: 105px; }
.classic-campaign a:focus-visible { outline: 3px solid var(--brand-orange); outline-offset: 4px; }
.classic-campaign-photo { margin: 26px 0 0; overflow: hidden; border-radius: 8px; }
.classic-campaign-photo__image { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.classic-campaign .lp-form-wrapper { border: 1px solid #dce5de; box-shadow: 0 10px 30px rgba(26,47,35,.08); }
.classic-campaign .lp-form-wrapper iframe { width: 100%; border: 0; }
.classic-campaign .lp-features-grid > div { min-width: 0; }
@media (max-width: 768px) {
    .classic-campaign .container { padding-inline: 20px; }
    .classic-campaign .lp-hero { padding-top: 110px; padding-bottom: 35px; }
    .classic-campaign .lp-hero .row { flex-direction: column; gap: 26px; align-items: stretch !important; }
    .classic-campaign .lp-hero .row > div { flex: auto !important; width: 100%; padding-right: 0 !important; }
    .classic-campaign .lp-hero h1 { font-size: clamp(2rem, 8.5vw, 2.6rem) !important; margin-bottom: 14px !important; }
    .classic-campaign .lp-hero h1 + p { font-size: 1.125rem !important; margin-bottom: 16px !important; }
    .classic-campaign .classic-campaign-label { margin-bottom: 10px; }
    .classic-campaign .classic-campaign-cta { margin-top: 18px; }
    .classic-campaign-photo { margin-top: 22px; }
    .classic-campaign .lp-form-wrapper { padding: 20px; }
    .classic-campaign .lp-features-grid { flex-direction: column; }
    .classic-campaign .navbar .container { gap: 14px; padding-inline: 20px; }
    .classic-campaign .navbar .logo img { height: auto !important; width: 150px; }
    .classic-campaign .lp-contact .btn { padding: 10px 12px !important; font-size: 14px; line-height: 1.4; white-space: normal; }
    .classic-campaign .lp-contact .fas { display: none; }
}
@media (max-width: 380px) {
    .classic-campaign .navbar .container { gap: 10px; padding-inline: 16px; }
    .classic-campaign .navbar .logo img { width: 120px; }
    .classic-campaign .lp-contact .btn { font-size: 13px; padding: 9px !important; }
    .classic-campaign .lp-form-wrapper { padding: 16px; }
}

.classic-campaign .lp-form-intro, .classic-campaign .lp-form-phone { color: #354b3c; font-size: 1rem; line-height: 1.6; margin-bottom: 12px; }
.classic-campaign .lp-form-phone { margin-bottom: 18px; }
.classic-campaign .lp-form-phone a { color: var(--brand-green); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.classic-campaign .reviews-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); }
