/* ============================================================ SOLID FINISH COATINGS — FUNNEL LANDING PAGE Custom CSS for GHL Funnel Builder Brand: #6ABCE7 (light blue) / #FE7149 (orange) / #3C464C (dark gray) Headings: Oswald / Body: system sans ============================================================ */ /* ---- IMPORT BRAND FONT ---- */ @import url('https://fonts.googleapis.com/css2?family=Oswald:wght@500;600;700&family=Inter:wght@400;500;600&display=swap'); /* ---- ROOT TOKENS ---- */ :root { --sfc-blue: #6ABCE7; --sfc-orange: #FE7149; --sfc-orange-dark: #E85A32; --sfc-charcoal: #3C464C; --sfc-charcoal-deep: #262E33; --sfc-cream: #F7F5F2; --sfc-white: #FFFFFF; --sfc-radius: 14px; --sfc-shadow: 0 8px 30px rgba(60, 70, 76, 0.12); --sfc-shadow-lift: 0 14px 40px rgba(60, 70, 76, 0.18); } /* ---- PAGE BASE ---- */ body { background-color: var(--sfc-cream) !important; font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important; color: var(--sfc-charcoal) !important; } /* GHL wraps sections in .section / .row containers - keep generous breathing room */ .section { padding-top: 64px; padding-bottom: 64px; } @media (max-width: 768px) { .section { padding-top: 40px; padding-bottom: 40px; } } /* ============================================================ HERO / HEADLINE ============================================================ */ .sfc-hero { text-align: center; max-width: 720px; margin: 0 auto; padding: 0 20px; } .sfc-eyebrow { display: inline-flex; align-items: center; gap: 8px; font-family: 'Inter', sans-serif; font-weight: 600; font-size: 13px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--sfc-orange); background: rgba(254, 113, 73, 0.1); padding: 7px 16px; border-radius: 100px; margin-bottom: 22px; } .sfc-eyebrow::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--sfc-orange); display: inline-block; } .sfc-headline { font-family: 'Oswald', sans-serif !important; font-weight: 700 !important; font-size: clamp(34px, 5vw, 56px) !important; line-height: 1.08 !important; letter-spacing: -0.01em; color: var(--sfc-charcoal) !important; text-transform: none; margin-bottom: 18px; } .sfc-headline .sfc-highlight { color: var(--sfc-orange); position: relative; white-space: nowrap; } .sfc-subheadline { font-family: 'Inter', sans-serif !important; font-size: 19px !important; font-weight: 400 !important; line-height: 1.55 !important; color: #5C6770 !important; max-width: 540px; margin: 0 auto; } /* ============================================================ BEFORE / AFTER SLIDER ============================================================ */ .sfc-slider-wrap { position: relative; max-width: 640px; margin: 40px auto 0; border-radius: var(--sfc-radius); overflow: hidden; box-shadow: var(--sfc-shadow-lift); border: 1px solid rgba(60, 70, 76, 0.08); } .sfc-slider-wrap img { display: block; width: 100%; height: auto; } .sfc-slider-tag { position: absolute; top: 16px; font-family: 'Inter', sans-serif; font-weight: 600; font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; padding: 6px 14px; border-radius: 100px; z-index: 5; color: var(--sfc-white); backdrop-filter: blur(4px); } .sfc-slider-tag.before { left: 16px; background: rgba(60, 70, 76, 0.85); } .sfc-slider-tag.after { right: 16px; background: rgba(254, 113, 73, 0.9); } /* Slider handle accent - if GHL's slider element exposes a handle class, this gives it the brand treatment. Safe no-op if unused. */ .sfc-slider-wrap .slider-handle, .sfc-slider-wrap [class*="handle"] { background: var(--sfc-blue) !important; border: 3px solid var(--sfc-white) !important; box-shadow: 0 2px 12px rgba(60, 70, 76, 0.3) !important; } .sfc-slider-caption { text-align: center; font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 500; color: var(--sfc-charcoal); margin-top: 16px; } .sfc-slider-caption span { color: var(--sfc-orange); font-weight: 600; } /* ============================================================ PROOF / TRANSFORMATION GRID (optional secondary section) ============================================================ */ .sfc-proof-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; max-width: 900px; margin: 48px auto 0; padding: 0 20px; } @media (max-width: 768px) { .sfc-proof-grid { grid-template-columns: 1fr; gap: 16px; } } .sfc-proof-card { background: var(--sfc-white); border-radius: var(--sfc-radius); overflow: hidden; box-shadow: var(--sfc-shadow); transition: transform 0.25s ease, box-shadow 0.25s ease; } .sfc-proof-card:hover { transform: translateY(-4px); box-shadow: var(--sfc-shadow-lift); } .sfc-proof-card img { width: 100%; height: 180px; object-fit: cover; display: block; } .sfc-proof-card-label { padding: 14px 16px; font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 500; color: var(--sfc-charcoal); } /* ============================================================ THE FORM — this is the page's whole job, give it weight ============================================================ */ .sfc-form-card { max-width: 460px; margin: 48px auto 0; background: var(--sfc-white); border-radius: var(--sfc-radius); padding: 36px 32px; box-shadow: var(--sfc-shadow-lift); border: 1px solid rgba(60, 70, 76, 0.06); } .sfc-form-title { font-family: 'Oswald', sans-serif !important; font-weight: 600 !important; font-size: 22px !important; color: var(--sfc-charcoal) !important; text-align: center; margin-bottom: 6px; } .sfc-form-subtitle { font-family: 'Inter', sans-serif; font-size: 14px; color: #7A848C; text-align: center; margin-bottom: 24px; } /* GHL form field overrides - targets standard GHL input/select wrappers */ .sfc-form-card input[type="text"], .sfc-form-card input[type="tel"], .sfc-form-card input[type="email"], .sfc-form-card select, form input[type="text"], form input[type="tel"], form input[type="email"] { width: 100% !important; font-family: 'Inter', sans-serif !important; font-size: 16px !important; padding: 14px 16px !important; border: 1.5px solid #E2E6E8 !important; border-radius: 10px !important; background: var(--sfc-cream) !important; color: var(--sfc-charcoal) !important; margin-bottom: 14px !important; transition: border-color 0.2s ease, box-shadow 0.2s ease !important; box-sizing: border-box !important; } .sfc-form-card input::placeholder, form input::placeholder { color: #9BA4AA !important; } .sfc-form-card input:focus, form input:focus { outline: none !important; border-color: var(--sfc-blue) !important; box-shadow: 0 0 0 4px rgba(106, 188, 231, 0.18) !important; background: var(--sfc-white) !important; } /* ---- PRIMARY CTA BUTTON ---- */ .sfc-form-card button, .sfc-form-card input[type="submit"], form button[type="submit"], .hl-button, .elementor-button { display: block !important; width: 100% !important; font-family: 'Inter', sans-serif !important; font-weight: 600 !important; font-size: 17px !important; letter-spacing: 0.01em; color: var(--sfc-white) !important; background: var(--sfc-orange) !important; border: none !important; border-radius: 10px !important; padding: 16px 24px !important; cursor: pointer; transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease !important; box-shadow: 0 4px 14px rgba(254, 113, 73, 0.35) !important; margin-top: 6px !important; } .sfc-form-card button:hover, form button[type="submit"]:hover { background: var(--sfc-orange-dark) !important; transform: translateY(-1px); box-shadow: 0 8px 22px rgba(254, 113, 73, 0.42) !important; } .sfc-form-card button:active, form button[type="submit"]:active { transform: translateY(0); } /* ---- TRUST MICROCOPY UNDER BUTTON ---- */ .sfc-form-trust { text-align: center; font-family: 'Inter', sans-serif; font-size: 12.5px; color: #9BA4AA; margin-top: 14px; } .sfc-form-trust svg { width: 13px; height: 13px; vertical-align: -2px; margin-right: 4px; } /* ============================================================ EARNEST TRUST STRIP — small human-element touch ============================================================ */ .sfc-trust-strip { display: flex; align-items: center; justify-content: center; gap: 12px; margin-top: 28px; flex-wrap: wrap; } .sfc-trust-strip img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; border: 2px solid var(--sfc-white); box-shadow: 0 2px 8px rgba(60, 70, 76, 0.15); } .sfc-trust-strip-text { font-family: 'Inter', sans-serif; font-size: 13.5px; color: var(--sfc-charcoal); font-weight: 500; } .sfc-trust-strip-text strong { color: var(--sfc-orange); } /* ============================================================ MOBILE REFINEMENT ============================================================ */ @media (max-width: 480px) { .sfc-form-card { margin: 36px 16px 0; padding: 28px 22px; } .sfc-headline { font-size: 30px !important; } .sfc-subheadline { font-size: 16px !important; } } /* ============================================================ ACCESSIBILITY — visible focus states, respect reduced motion ============================================================ */ a:focus-visible, button:focus-visible, input:focus-visible { outline: 2px solid var(--sfc-blue) !important; outline-offset: 2px; } @media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }