    /* ============ CSS VARIABLES (system fonts, no Google Fonts) ============ */
    :root {
        --taw-font-heading: Georgia, 'Times New Roman', 'Noto Serif', serif;
        --taw-font-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
        --taw-gold: #c89405;
        --taw-gold-light: #d4a829;
        --taw-gold-dark: #a67b04;
        --taw-dark: #1a1a1a;
        --taw-warm-white: #faf8f5;
        --taw-cream: #f5f0e8;
        --taw-muted: #666;
        --taw-shadow: 0 4px 20px rgba(0,0,0,0.06);
        --taw-shadow-hover: 0 8px 30px rgba(0,0,0,0.12);
        --taw-radius-card: 12px;
        --taw-radius-pill: 50px;
        --taw-transition: all 0.3s ease;
    }
    /* ============ LANDING PAGE SPECIFIC STYLES ============ */
    * { box-sizing: border-box; margin: 0; padding: 0; }

    body {
        font-family: var(--taw-font-body);
        font-size: 15px;
        line-height: 1.7;
        color: #333;
        background: var(--taw-warm-white);
        -webkit-font-smoothing: antialiased;
    }

    .container { max-width: 1100px; margin: 0 auto; padding: 0 20px; }

    /* No navigation - landing page strips nav to reduce distractions */
    /* Only a minimal header with logo */
    .lp-header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 100;
        background: rgba(26,26,26,0.95);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        padding: 12px 0;
        transition: all 0.3s;
    }
    .lp-header-inner {
        max-width: 1100px;
        margin: 0 auto;
        padding: 0 20px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .lp-header img { height: 40px; width: auto; }
    .lp-header-cta {
        display: inline-block;
        background: var(--taw-gold);
        color: #fff;
        padding: 10px 24px;
        border-radius: var(--taw-radius-pill);
        font-family: var(--taw-font-body);
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 1.5px;
        text-transform: uppercase;
        text-decoration: none;
        transition: var(--taw-transition);
    }
    .lp-header-cta:hover { background: var(--taw-gold-dark); color: #fff; }

    /* ============ HERO ============ */
    .lp-hero {
        position: relative;
        min-height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        overflow: hidden;
        padding: 80px 20px 60px;
    }
    .lp-hero-bg {
        position: absolute;
        inset: 0;
        z-index: 1;
    }
    .lp-hero-overlay {
        position: absolute;
        inset: 0;
        background: linear-gradient(to bottom, rgba(0,0,0,0.5), rgba(0,0,0,0.7));
        z-index: 2;
    }
    .lp-hero-content {
        position: relative;
        z-index: 3;
        max-width: 800px;
    }
    .lp-hero-badge {
        display: inline-block;
        background: rgba(200,148,5,0.2);
        border: 1px solid rgba(200,148,5,0.4);
        color: var(--taw-gold-light);
        font-family: var(--taw-font-body);
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 2px;
        text-transform: uppercase;
        padding: 8px 20px;
        border-radius: var(--taw-radius-pill);
        margin-bottom: 24px;
    }
    .lp-hero h1 {
        font-family: var(--taw-font-heading);
        font-size: clamp(32px, 5vw, 56px);
        font-weight: 700;
        color: #fff;
        line-height: 1.15;
        margin-bottom: 16px;
    }
    .lp-hero-sub {
        font-size: clamp(15px, 2vw, 18px);
        color: rgba(255,255,255,0.8);
        margin-bottom: 12px;
        line-height: 1.6;
    }
    .lp-hero-price {
        font-family: var(--taw-font-heading);
        font-size: clamp(20px, 3vw, 28px);
        color: var(--taw-gold-light);
        margin-bottom: 32px;
    }
    .lp-hero-ctas { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
    .lp-btn-primary {
        display: inline-block;
        background: var(--taw-gold);
        color: #fff;
        padding: 16px 40px;
        border-radius: var(--taw-radius-pill);
        font-family: var(--taw-font-body);
        font-size: 13px;
        font-weight: 600;
        letter-spacing: 2px;
        text-transform: uppercase;
        text-decoration: none;
        transition: var(--taw-transition);
    }
    .lp-btn-primary:hover { background: var(--taw-gold-dark); transform: translateY(-2px); color: #fff; }
    .lp-btn-secondary {
        display: inline-block;
        background: transparent;
        color: #fff;
        padding: 16px 40px;
        border-radius: var(--taw-radius-pill);
        border: 1px solid rgba(255,255,255,0.4);
        font-family: var(--taw-font-body);
        font-size: 13px;
        font-weight: 600;
        letter-spacing: 2px;
        text-transform: uppercase;
        text-decoration: none;
        transition: var(--taw-transition);
    }
    .lp-btn-secondary:hover { background: rgba(255,255,255,0.1); color: #fff; }
    .lp-hero-trust {
        margin-top: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 24px;
        flex-wrap: wrap;
    }
    .lp-hero-trust span {
        color: rgba(255,255,255,0.7);
        font-size: 13px;
        display: flex;
        align-items: center;
        gap: 6px;
    }
    .lp-hero-trust .stars { color: #ffc107; }

    /* ============ TRUST BAR ============ */
    .lp-trust-bar {
        background: #fff;
        padding: 24px 0;
        border-bottom: 1px solid #eee;
    }
    .lp-trust-bar-inner {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 40px;
        flex-wrap: wrap;
    }
    .lp-trust-bar img {
        height: 45px;
        width: auto;
        opacity: 0.6;
        filter: grayscale(100%);
        transition: var(--taw-transition);
    }
    .lp-trust-bar img:hover { opacity: 0.9; filter: grayscale(0%); }

    /* ============ SECTION BASE ============ */
    .lp-section {
        padding: 80px 0;
    }
    .lp-section-dark {
        background: var(--taw-dark);
        color: #fff;
    }
    .lp-section-cream {
        background: var(--taw-cream);
    }
    .lp-section-title {
        text-align: center;
        margin-bottom: 48px;
    }
    .lp-label {
        display: block;
        font-family: var(--taw-font-body);
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 3px;
        text-transform: uppercase;
        color: var(--taw-gold);
        margin-bottom: 12px;
    }
    .lp-heading {
        font-family: var(--taw-font-heading);
        font-size: clamp(28px, 4vw, 42px);
        font-weight: 700;
        line-height: 1.2;
        margin-bottom: 8px;
    }
    .lp-section-dark .lp-heading { color: #fff; }
    .lp-divider {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        margin: 16px 0 0;
    }
    .lp-divider::before, .lp-divider::after {
        content: '';
        width: 50px;
        height: 1px;
        background: var(--taw-gold);
    }
    .lp-divider-dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--taw-gold);
    }

    /* ============ USP STRIP ============ */
    .lp-usp-strip {
        background: var(--taw-dark);
        padding: 40px 0;
    }
    .lp-usp-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 32px;
        text-align: center;
    }
    .lp-usp-item i {
        font-size: 28px;
        color: var(--taw-gold);
        margin-bottom: 12px;
    }
    .lp-usp-item h3 {
        font-family: var(--taw-font-heading);
        font-size: 18px;
        color: #fff;
        margin-bottom: 4px;
    }
    .lp-usp-item p {
        font-size: 13px;
        color: rgba(255,255,255,0.6);
    }

    /* ============ FREE GIFTS ============ */
    .lp-gifts-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
        text-align: center;
    }
    .lp-gift-card {
        background: #fff;
        border-radius: var(--taw-radius-card);
        padding: 32px 20px;
        box-shadow: var(--taw-shadow);
    }
    .lp-gift-card i {
        font-size: 32px;
        color: var(--taw-gold);
        margin-bottom: 12px;
    }
    .lp-gift-card h4 {
        font-family: var(--taw-font-heading);
        font-size: 18px;
        margin-bottom: 8px;
    }
    .lp-gift-card p { font-size: 13px; color: var(--taw-muted); }

    /* ============ PRICING ============ */
    .lp-pricing-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
        align-items: start;
    }
    .lp-price-card {
        background: #fff;
        border-radius: var(--taw-radius-card);
        overflow: hidden;
        box-shadow: var(--taw-shadow);
        text-align: center;
        position: relative;
        transition: var(--taw-transition);
    }
    .lp-price-card:hover { transform: translateY(-4px); box-shadow: var(--taw-shadow-hover); }
    .lp-price-card.featured {
        border: 2px solid var(--taw-gold);
        transform: scale(1.03);
    }
    .lp-price-card.featured:hover { transform: scale(1.03) translateY(-4px); }
    .lp-price-badge {
        display: inline-block;
        padding: 6px 20px;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 1.5px;
        text-transform: uppercase;
        border-radius: 0 0 8px 8px;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    .lp-price-badge.bestseller { background: var(--taw-gold); color: #fff; }
    .lp-price-badge.popular { background: #333; color: #fff; }
    .lp-price-badge.bestvalue { background: var(--taw-gold); color: #fff; }
    .lp-price-card-body { padding: 48px 24px 32px; }
    .lp-price-card h3 {
        font-family: var(--taw-font-heading);
        font-size: 22px;
        font-weight: 700;
        margin-bottom: 4px;
    }
    .lp-price-card .lp-price-type {
        font-size: 13px;
        color: var(--taw-muted);
        margin-bottom: 20px;
    }
    .lp-price-amount {
        font-family: var(--taw-font-heading);
        font-weight: 400;
        margin-bottom: 4px;
    }
    .lp-price-amount .dollar { font-size: 18px; color: var(--taw-gold); vertical-align: super; }
    .lp-price-amount .amount { font-size: 48px; color: var(--taw-gold); }
    .lp-price-nett { font-size: 13px; color: var(--taw-muted); margin-bottom: 24px; }
    .lp-price-features { list-style: none; padding: 0; margin: 0 0 24px; text-align: left; }
    .lp-price-features li {
        padding: 10px 0;
        border-bottom: 1px solid #f0f0f0;
        font-size: 14px;
        display: flex;
        align-items: center;
        gap: 10px;
    }
    .lp-price-features li:last-child { border-bottom: none; }
    .lp-price-features li i { color: var(--taw-gold); font-size: 14px; flex-shrink: 0; }
    .lp-price-cta {
        display: block;
        background: var(--taw-gold);
        color: #fff;
        padding: 14px;
        border-radius: var(--taw-radius-pill);
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 2px;
        text-transform: uppercase;
        text-decoration: none;
        transition: var(--taw-transition);
        margin: 0 24px 24px;
    }
    .lp-price-cta:hover { background: var(--taw-gold-dark); color: #fff; }

    /* Bonus stack inside pricing cards */
    .lp-bonus-stack {
        background: rgba(200,148,5,0.06);
        border: 1px dashed rgba(200,148,5,0.3);
        border-radius: 8px;
        padding: 16px;
        margin: 4px 0 24px;
    }
    .lp-bonus-label {
        font-size: 12px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 1px;
        color: var(--taw-gold);
        margin-bottom: 10px;
        display: flex;
        align-items: center;
        gap: 6px;
    }
    .lp-bonus-label i { font-size: 14px; }
    .lp-bonus-list {
        list-style: none;
        padding: 0;
        margin: 0;
    }
    .lp-bonus-list li {
        font-size: 13px;
        color: #555;
        padding: 4px 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .lp-bonus-val {
        font-size: 12px;
        font-weight: 600;
        color: var(--taw-gold);
        white-space: nowrap;
    }

    /* ============ VIDEO SECTION ============ */
    .lp-video-wrapper {
        position: relative;
        max-width: 800px;
        margin: 0 auto;
        border-radius: var(--taw-radius-card);
        overflow: hidden;
        box-shadow: 0 8px 40px rgba(0,0,0,0.2);
    }
    .lp-video-wrapper iframe {
        width: 100%;
        aspect-ratio: 16/9;
        display: block;
        border: none;
    }
    /* YouTube facade */
    .yt-facade {
        position: relative;
        width: 100%;
        aspect-ratio: 16/9;
        background: #000;
        cursor: pointer;
        display: block;
    }
    .yt-facade img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        opacity: 0.85;
        transition: opacity 0.2s;
    }
    .yt-facade:hover img { opacity: 0.7; }
    .yt-play-btn {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 72px;
        height: 72px;
        background: rgba(220,38,38,0.92);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: transform 0.2s, background 0.2s;
        box-shadow: 0 4px 20px rgba(0,0,0,0.4);
    }
    .yt-facade:hover .yt-play-btn { transform: translate(-50%,-50%) scale(1.1); background: #dc2626; }
    .yt-play-btn svg { width: 28px; height: 28px; margin-left: 4px; }

    /* ============ PORTFOLIO GRID ============ */
    .lp-portfolio-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 12px;
    }
    .lp-portfolio-item {
        border-radius: 8px;
        overflow: hidden;
        cursor: pointer;
        position: relative;
    }
    .lp-portfolio-item img {
        width: 100%;
        height: 280px;
        object-fit: cover;
        display: block;
        transition: transform 0.4s;
    }
    .lp-portfolio-item:hover img { transform: scale(1.05); }
    .lp-portfolio-overlay {
        position: absolute;
        inset: 0;
        background: rgba(0,0,0,0.3);
        opacity: 0;
        transition: opacity 0.3s;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .lp-portfolio-item:hover .lp-portfolio-overlay { opacity: 1; }
    .lp-portfolio-overlay i { color: #fff; font-size: 24px; }

    /* ============ GOOGLE REVIEWS ============ */
    .lp-reviews-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
    }
    .lp-review-card {
        background: #fff;
        border-radius: var(--taw-radius-card);
        padding: 28px;
        box-shadow: var(--taw-shadow);
    }
    .lp-review-header {
        display: flex;
        align-items: center;
        gap: 12px;
        margin-bottom: 12px;
    }
    .lp-review-avatar {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background: var(--taw-gold);
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 600;
        font-size: 16px;
    }
    .lp-review-name { font-weight: 600; font-size: 14px; }
    .lp-review-date { font-size: 12px; color: var(--taw-muted); }
    .lp-review-stars { color: #ffc107; font-size: 14px; margin-bottom: 12px; }
    .lp-review-text { font-size: 14px; line-height: 1.6; color: #444; }

    /* ============ HOW IT WORKS ============ */
    .lp-steps-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 32px;
        text-align: center;
    }
    .lp-step-card { position: relative; }
    .lp-step-num {
        width: 56px;
        height: 56px;
        border-radius: 50%;
        background: var(--taw-gold);
        color: #fff;
        font-family: var(--taw-font-heading);
        font-size: 24px;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 16px;
    }
    .lp-step-card h3 {
        font-family: var(--taw-font-heading);
        font-size: 20px;
        margin-bottom: 8px;
    }
    .lp-step-card p { font-size: 14px; color: var(--taw-muted); }

    /* ============ FAQ ============ */
    .lp-faq-list { max-width: 700px; margin: 0 auto; }
    .lp-faq-item {
        border-bottom: 1px solid #e0e0e0;
    }
    .lp-faq-question {
        width: 100%;
        background: none;
        border: none;
        padding: 20px 0;
        font-family: var(--taw-font-body);
        font-size: 16px;
        font-weight: 600;
        color: var(--taw-dark);
        text-align: left;
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .lp-faq-question i { color: var(--taw-gold); transition: transform 0.3s; font-size: 14px; }
    .lp-faq-question.active i { transform: rotate(180deg); }
    .lp-faq-answer {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
    }
    .lp-faq-answer p {
        padding: 0 0 20px;
        font-size: 14px;
        line-height: 1.7;
        color: var(--taw-muted);
    }

    /* ============ FINAL CTA ============ */
    .lp-final-cta {
        background: var(--taw-dark);
        padding: 80px 0;
        text-align: center;
        color: #fff;
    }
    .lp-final-cta h2 {
        font-family: var(--taw-font-heading);
        font-size: clamp(28px, 4vw, 42px);
        color: #fff;
        margin-bottom: 16px;
    }
    .lp-final-cta p {
        font-size: 16px;
        color: rgba(255,255,255,0.7);
        margin-bottom: 32px;
        max-width: 500px;
        margin-left: auto;
        margin-right: auto;
    }
    .lp-urgency-tag {
        display: inline-block;
        background: rgba(200,148,5,0.15);
        border: 1px solid rgba(200,148,5,0.3);
        color: var(--taw-gold-light);
        font-size: 13px;
        font-weight: 600;
        padding: 8px 20px;
        border-radius: var(--taw-radius-pill);
        margin-bottom: 24px;
    }

    /* ============ AWARDS ============ */
    .lp-awards-grid {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 32px;
        flex-wrap: wrap;
    }
    .lp-awards-grid img {
        height: 80px;
        width: auto;
        opacity: 0.85;
        transition: var(--taw-transition);
    }
    .lp-awards-grid img:hover { opacity: 1; }

    /* ============ STICKY MOBILE CTA ============ */
    .lp-sticky-cta {
        display: none;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 101;
        background: rgba(26,26,26,0.95);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        padding: 12px 20px;
    }
    .lp-sticky-cta a {
        display: block;
        background: var(--taw-gold);
        color: #fff;
        text-align: center;
        padding: 14px;
        border-radius: var(--taw-radius-pill);
        font-size: 13px;
        font-weight: 600;
        letter-spacing: 2px;
        text-transform: uppercase;
        text-decoration: none;
    }

    /* ============ FOOTER ============ */
    .lp-footer {
        background: var(--taw-dark);
        padding: 24px 0;
        text-align: center;
        color: rgba(255,255,255,0.4);
        font-size: 13px;
        border-top: 1px solid rgba(255,255,255,0.08);
    }

    /* ============ RESPONSIVE ============ */
    @media (max-width: 768px) {
        .lp-usp-grid, .lp-gifts-grid, .lp-pricing-grid, .lp-reviews-grid, .lp-steps-grid {
            grid-template-columns: 1fr;
        }
        .lp-portfolio-grid { grid-template-columns: repeat(2, 1fr); }
        .lp-trust-bar-inner { gap: 20px; }
        .lp-trust-bar img { height: 32px; }
        .lp-awards-grid img { height: 60px; }
        .lp-awards-grid { gap: 20px; }
        .lp-price-card.featured { transform: none; }
        .lp-price-card.featured:hover { transform: translateY(-4px); }
        .lp-sticky-cta { display: block; }
        .lp-hero { min-height: 90vh; }
        .lp-header-cta { padding: 8px 16px; font-size: 11px; }
        .lp-header-phone { display: none; }
        body { padding-bottom: 70px; }
    }

    /* ============ LIGHTBOX ============ */
    .lp-lightbox {
        display: none;
        position: fixed;
        inset: 0;
        z-index: 2000;
        background: rgba(0,0,0,0.92);
        align-items: center;
        justify-content: center;
    }
    .lp-lightbox.open { display: flex; }
    .lp-lightbox-img {
        max-width: 92vw;
        max-height: 88vh;
        object-fit: contain;
        border-radius: 4px;
        box-shadow: 0 8px 40px rgba(0,0,0,0.6);
        display: block;
    }
    .lp-lightbox-close {
        position: absolute;
        top: 20px;
        right: 24px;
        background: none;
        border: none;
        color: #fff;
        font-size: 36px;
        line-height: 1;
        cursor: pointer;
        padding: 4px 10px;
        z-index: 2001;
        opacity: 0.8;
        transition: opacity 0.2s;
    }
    .lp-lightbox-close:hover { opacity: 1; }

    /* ============ INLINE FORM ============ */
    .lp-form-section {
        background: var(--taw-dark);
        padding: 80px 0;
    }
    .lp-form-wrap {
        max-width: 680px;
        margin: 0 auto;
        background: #1e1e1e;
        border-radius: 16px;
        padding: 40px 40px 48px;
        border: 1px solid rgba(200,148,5,0.2);
        box-shadow: 0 8px 48px rgba(0,0,0,0.4);
    }
    @media (max-width: 600px) { .lp-form-wrap { padding: 28px 20px 36px; } }
    .lp-form-progress {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0;
        margin-bottom: 32px;
    }
    .lp-form-step-dot {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        border: 2px solid rgba(200,148,5,0.3);
        color: rgba(255,255,255,0.4);
        font-size: 13px;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.3s;
        flex-shrink: 0;
    }
    .lp-form-step-dot.active { border-color: var(--taw-gold); color: var(--taw-gold); }
    .lp-form-step-dot.done { background: var(--taw-gold); border-color: var(--taw-gold); color: #fff; }
    .lp-form-step-line {
        flex: 1;
        height: 2px;
        background: rgba(200,148,5,0.2);
        max-width: 80px;
        transition: background 0.3s;
    }
    .lp-form-step-line.done { background: var(--taw-gold); }
    .lp-form-step-label {
        text-align: center;
        font-size: 12px;
        color: rgba(255,255,255,0.5);
        margin-bottom: 24px;
        letter-spacing: 0.5px;
    }
    .lp-form-step-label strong { color: var(--taw-gold-light); }
    .lp-form-panel { display: none; }
    .lp-form-panel.active { display: block; }
    .lp-form-group { margin-bottom: 18px; }
    .lp-form-label {
        display: block;
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 1px;
        text-transform: uppercase;
        color: rgba(255,255,255,0.6);
        margin-bottom: 8px;
    }
    .lp-form-input, .lp-form-select {
        width: 100%;
        background: #2a2a2a;
        border: 1px solid rgba(255,255,255,0.12);
        border-radius: 8px;
        color: #fff;
        font-family: var(--taw-font-body);
        font-size: 15px;
        padding: 12px 14px;
        outline: none;
        transition: border-color 0.2s;
        -webkit-appearance: none;
    }
    .lp-form-input:focus, .lp-form-select:focus { border-color: var(--taw-gold); }
    .lp-form-input::placeholder { color: rgba(255,255,255,0.25); }
    .lp-form-select option { background: #2a2a2a; }
    .lp-mobile-row { display: flex; gap: 8px; }
    .lp-mobile-prefix {
        background: #2a2a2a;
        border: 1px solid rgba(255,255,255,0.12);
        border-radius: 8px;
        color: rgba(255,255,255,0.6);
        font-size: 15px;
        padding: 12px 14px;
        white-space: nowrap;
        flex-shrink: 0;
        line-height: 1.4;
    }
    .lp-urgency-msg {
        margin-top: 10px;
        padding: 10px 14px;
        border-radius: 8px;
        font-size: 13px;
        font-weight: 600;
        display: none;
    }
    .lp-urgency-hot { background: rgba(220,38,38,0.15); border: 1px solid rgba(220,38,38,0.3); color: #fca5a5; }
    .lp-urgency-warm { background: rgba(200,148,5,0.12); border: 1px solid rgba(200,148,5,0.25); color: var(--taw-gold-light); }
    .lp-urgency-cool { background: rgba(34,197,94,0.1); border: 1px solid rgba(34,197,94,0.2); color: #86efac; }
    /* Checkbox grid */
    .lp-check-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }
    @media (max-width: 480px) { .lp-check-grid { grid-template-columns: 1fr; } }
    .lp-check-label {
        display: flex;
        align-items: center;
        gap: 10px;
        background: #2a2a2a;
        border: 1px solid rgba(255,255,255,0.1);
        border-radius: 8px;
        padding: 10px 12px;
        cursor: pointer;
        font-size: 14px;
        color: rgba(255,255,255,0.75);
        transition: border-color 0.2s, background 0.2s;
        user-select: none;
    }
    .lp-check-label input { display: none; }
    .lp-check-label .lp-check-box {
        width: 18px;
        height: 18px;
        border: 2px solid rgba(200,148,5,0.4);
        border-radius: 4px;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: background 0.2s, border-color 0.2s;
    }
    .lp-check-label input:checked ~ .lp-check-box { background: var(--taw-gold); border-color: var(--taw-gold); }
    .lp-check-label input:checked ~ .lp-check-box::after { content: '✓'; color: #fff; font-size: 11px; font-weight: 700; }
    .lp-check-label:has(input:checked) { border-color: rgba(200,148,5,0.5); background: rgba(200,148,5,0.07); color: #fff; }
    /* Photo row */
    .lp-photo-row {
        display: flex;
        gap: 8px;
        align-items: flex-start;
        flex-wrap: wrap;
    }
    .lp-photo-check { flex: 1; min-width: 140px; }
    .lp-hours-wrap { flex: 1; min-width: 110px; }
    /* Services */
    .lp-services-row { display: flex; gap: 8px; flex-wrap: wrap; }
    .lp-svc-btn {
        background: #2a2a2a;
        border: 1px solid rgba(255,255,255,0.12);
        border-radius: 8px;
        color: rgba(255,255,255,0.65);
        font-size: 13px;
        font-weight: 500;
        padding: 10px 16px;
        cursor: pointer;
        transition: all 0.2s;
        user-select: none;
    }
    .lp-svc-btn.selected { background: rgba(200,148,5,0.12); border-color: rgba(200,148,5,0.5); color: #fff; }
    /* Navigation buttons */
    .lp-form-nav { display: flex; gap: 12px; margin-top: 28px; }
    .lp-form-btn-next, .lp-form-btn-back {
        flex: 1;
        padding: 14px;
        border-radius: 50px;
        font-family: var(--taw-font-body);
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 1.5px;
        text-transform: uppercase;
        cursor: pointer;
        border: none;
        transition: all 0.2s;
    }
    .lp-form-btn-next { background: var(--taw-gold); color: #fff; }
    .lp-form-btn-next:hover { background: var(--taw-gold-dark); transform: translateY(-1px); }
    .lp-form-btn-back { background: transparent; border: 1px solid rgba(255,255,255,0.2); color: rgba(255,255,255,0.6); }
    .lp-form-btn-back:hover { background: rgba(255,255,255,0.05); color: #fff; }
    .lp-form-btn-submit {
        flex: 2;
        padding: 16px;
        border-radius: 50px;
        font-family: var(--taw-font-body);
        font-size: 14px;
        font-weight: 700;
        letter-spacing: 1.5px;
        text-transform: uppercase;
        cursor: pointer;
        border: none;
        background: var(--taw-gold);
        color: #fff;
        transition: all 0.2s;
    }
    .lp-form-btn-submit:hover { background: var(--taw-gold-dark); transform: translateY(-1px); }
    .lp-form-error {
        color: #fca5a5;
        font-size: 12px;
        margin-top: 6px;
        display: none;
    }

    /* ============ FADE IN ANIMATION ============ */
    .lp-fade-in {
        opacity: 0;
        transform: translateY(20px);
        transition: opacity 0.6s ease, transform 0.6s ease;
    }
    .lp-fade-in.visible {
        opacity: 1;
        transform: translateY(0);
    }

    /* ============ UTILITIES (Bootstrap-equivalent helpers; pages without Bootstrap CDN) ============ */
    .text-center { text-align: center; }
    .text-left   { text-align: left; }
    .text-right  { text-align: right; }
