/*
Theme Name: Qatar Tours Custom
Author: Your Name
Description: Мой кастомный лендинг на CSS и PHP
Version: 5.9
*/

/* ─── Visibility Utilities ─────────────────────────────────────────────────── */
.desktop-only {
    display: block;
    /* Ensure desktop items are shown */
}

.mobile-only {
    display: none !important;
    /* Hide mobile-only items perfectly on desktop */
}

/* ─── Base Reset ─────────────────────────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=El+Messiri:wght@400..700&display=swap');

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

img,
video,
svg {
    display: block;
    max-width: 100%;
}

a {
    color: inherit;
    text-decoration: none;
}

@keyframes maskFadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.center {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Masked Heading with targeted animation */
.hero-mask-heading {
    font-size: clamp(2rem, 8vw, 2.5rem);
    line-height: 1.1;
    font-family: 'Arial Black', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: -2px;
    margin-bottom: 2rem;
    display: inline-block;
    background-size: cover;
    background-position: center;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    filter: brightness(0.7);
    /* Fallback */
    opacity: 0;
    animation: maskFadeIn 1.5s ease-out forwards;
}

/* Footer Borders & Animation (3 sides, 2 identical layers) */
#site-footer {
    position: relative;
    /* Rich Blended Background: Gold, Mustard, Yellow + Hint of Maroon */
    background:
        radial-gradient(circle at 10% 10%, rgba(255, 243, 134, 0.08) 10%, transparent 50%),
        radial-gradient(circle at 90% 90%, rgba(255, 232, 162, 0.1) 30%, transparent 50%),
        radial-gradient(circle at 20% 20%, rgba(255, 139, 100, 0.1) 10%, transparent 50%),

        /* Overlay for legibility */
        /* linear-gradient(rgba(253, 249, 241, 0.01), rgba(253, 249, 241, 0.01)), */
        url('assets/img/footer.webp') no-repeat center bottom;

    background-size: cover;
    border-top: 2px solid #7D5136;
    padding-top: 0;
    padding-bottom: 1rem;
    overflow: hidden;
    transform: none !important;
    opacity: 1 !important;
}

#site-footer .container {
    opacity: 1 !important;
    transform: none !important;
    padding-top: 0;
}

.footer-col {
    transition: all 0.3s ease;
}


.bold {
    font-weight: 500;
}

#site-footer .footer-heading {
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.95rem;
    color: var(--brand-purple);
    margin-bottom: 1.5rem;
    font-weight: 700;
}

#site-footer .contact-subheading {
    font-size: 1.05rem;
    color: var(--brand-purple);
    margin-bottom: 0.5rem;
    font-weight: 700;
}

#site-footer .footer-nav a {
    color: var(--brand-purple);
    text-decoration: none;
    font-size: 1.15rem;
    font-weight: 500;
    transition: color 0.3s ease;
}

#site-footer .footer-nav a:hover {
    color: var(--lp-text-sec);
}

#site-footer .map-link {
    color: var(--lp-text-menu);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1.5rem;
    font-weight: 600;
    font-size: 0.95rem;
    transition: opacity 0.3s ease;
}

#site-footer .map-link:hover {
    opacity: 0.8;
}

#site-footer p {
    color: var(--text-primary);
    line-height: 1.8;
    margin: 0;
}

#site-footer .copyright {
    font-size: 0.85rem;
    color: var(--text-dim);
    line-height: 1.5;
}

#site-footer .contact-row {
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
}

#site-footer .contact-row a {
    color: inherit;
    text-decoration: none;
    font-weight: 600;
    transition: color 0.3s ease;
}

#site-footer .contact-row a:hover {
    color: var(--brand-mustard);
}

/* Support Buttons */
.btn-support {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 0.5rem;
    border-radius: 8px;
    font-size: 0.8rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.btn-support.wa {
    background: #7d513618;
    /* Brownish from image */
    color: var(--brand-purple);
    box-shadow: 0 4px 12px rgba(125, 81, 54, 0.2);
}

.btn-support.wa:hover {
    background: #6a442e57;
}

.btn-support.tg {
    background: #7d513618;
    /* Brownish from image */
    color: var(--brand-purple);
    /* More standard blue or matching the image blue */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.btn-support.tg:hover {
    background: #6a442e57;
}

#site-footer::before,
#site-footer::after {
    display: none !important;
}

/* Visibility Helpers */
.desktop-only {
    display: block !important;
}

.mobile-only {
    display: none !important;
}

@media (max-width: 768px) {
    .desktop-only {
        display: none !important;
    }

    .mobile-only {
        display: block !important;
    }

    .header-logo-img {
        max-height: 80px !important;
    }

    .footer-logo-img {
        height: 40px !important;
    }
}

@media (max-width: 1024px) {
    .footer-primary-grid {
        grid-template-columns: 1fr !important;
    }

    .footer-col {
        border-right: none !important;
        border-bottom: 1px solid rgba(114, 47, 55, 0.08);
        padding: 3rem 0 !important;
    }

    .footer-col:last-child {
        border-bottom: none;
    }
}

@media (max-width: 768px) {

    /* ─── Footer Mobile Spacing ─── */

    .footer-logo-img {
        height: 80px !important;
    }

    .footer-section {
        margin-bottom: 1rem !important;
    }

    #site-footer {
        padding-bottom: 1rem !important;
    }

    #site-footer .container {
        padding-top: 0.5rem !important;
    }

    #site-footer p {
        line-height: 1.4 !important;
        margin-bottom: 0.25rem !important;
    }

    #site-footer .footer-col {
        padding: 1rem 0 !important;
        /* ← gap between columns */
        border-bottom: 1px solid rgba(114, 47, 55, 0.08) !important;
    }

    #site-footer .footer-heading {
        margin-bottom: 0.5rem !important;
        /* ← space below heading */
    }

    #site-footer .footer-nav a {
        gap: 0.5rem !important;
        font-size: 0.95rem !important;
        /* ← space between nav links */
    }

    #site-footer .footer-nav {
        gap: 0.1rem !important;
        font-size: 0.95rem !important;
        /* ← space between nav links */
    }

    #site-footer .contact-row {
        gap: 0.3rem !important;
        /* ← space between contact rows */
        margin-bottom: 0.3rem !important;
    }

    #site-footer .grid-12 {
        gap: 0 !important;
        /* ← kills gap between grid cells */
        row-gap: 0 !important;
    }

    /* Force centering for all footer sections and rows */
    #site-footer .footer-col,
    #site-footer .footer-section,
    #site-footer .footer-nav ul,
    #site-footer .contact-row,
    #site-footer .support-btns,
    #site-footer .footer-logo,
    #site-footer .russian-support {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        justify-content: center !important;
    }

    #site-footer .footer-logo-img {
        margin-inline: auto !important;
    }

    #site-footer .contact-row {
        flex-direction: row !important;
        /* Keep icon next to text */
        gap: 0.75rem !important;
    }

    #site-footer .map-link {
        display: inline-flex !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 0.5rem !important;
        width: 100% !important;
    }
}


@keyframes slowFadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.hero-animated-title {
    /* Kept for subtitle animation if needed, but removed from headings in page files */
    animation: slowFadeIn 1.5s ease-in-out forwards;
}




.hero-text-pattern {
    display: inline-block;
    position: relative;
    font-size: clamp(2.4rem, 5.6vw, 4rem);

    background-image:
        url('assets/img/patterns/arabic-pattern.png'),
        linear-gradient(#FCBF0A, #FCBF0A),
        /* gold — tints the pattern */
        linear-gradient(#722F37, #722F37);
    /* brown — base color */

    background-size: 300px auto, 300px auto, cover;
    background-repeat: repeat, repeat, no-repeat;

    background-blend-mode: multiply, normal, normal;

    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;

    opacity: 0;
    transform: translateY(30px);
    animation: heroTextReveal 1.6s cubic-bezier(0.23, 1, 0.32, 1) forwards;
}




/* On dark backgrounds, use the same premium multi-layer pattern as the main header */
.hero-text-pattern.on-dark {
    background-image:
        url('assets/img/patterns/arabic-pattern.png'),
        linear-gradient(#FCBF0A, #FCBF0A),
        /* gold — tints the pattern */
        linear-gradient(#8B3A3A, #8B3A3A);
    /* Slightly brighter maroon for dark backgrounds */

    background-size: 300px auto, 300px auto, cover;
    background-repeat: repeat, repeat, no-repeat;
    background-blend-mode: multiply, normal, normal;
}


@keyframes heroTextReveal {
    0% {
        opacity: 0;
        transform: translateY(40px) scale(0.98);
        filter: blur(5px);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0);
    }
}

/* ─── Home Page Extracted Styles ─────────────────────────────────────────── */
.flow-grid {
    margin-top: 4rem;
    gap: 2rem;
}

.text-center {
    text-align: center !important;
}


#contact-title {
    text-align: center !important;
}


.step-card {
    padding: 2.5rem;
    text-align: left;
    background: linear-gradient(180deg, #FFF9F6 0%, #FEEAE0 100%);
    /* Light pink/orange coral tint */
    border-radius: 20px;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.07);
    transition: box-shadow 0.4s var(--ease-out-expo);
    position: relative;
    z-index: 1;
    overflow: hidden;
    height: 100%;
}

.step-card:hover {
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.12);
}

.step-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('assets/img/patterns/arabic-pattern.png');
    background-size: 150px;
    opacity: 0.1;
    z-index: -1;
    pointer-events: none;
}

.why-card {
    background: #fff;
    padding: 2.5rem;
    border-radius: 20px;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.07);
    transition: box-shadow 0.4s var(--ease-out-expo);
    height: 100%;
}

.why-card:hover {
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.12);
}

.scenario-card {
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.07);
    transition: box-shadow 0.4s var(--ease-out-expo);
    display: flex;
    flex-direction: column;
    height: 100%;
}

.scenario-card:hover {
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.12);
}

.scenario-card .card-image {
    height: 220px;
    overflow: hidden;
}

.scenario-card .card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}



.scenario-card .card-content {
    padding: 2.5rem;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    background: linear-gradient(180deg, #FDF9F1 0%, #FAEFD4 100%);
    position: relative;
    z-index: 1;
}

.scenario-card .card-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('assets/img/patterns/arabic-pattern.png');
    background-size: 150px;
    opacity: 0.08;
    z-index: -1;
    pointer-events: none;
}

.scenario-card .card-content h3 {
    margin-bottom: 1rem;
    color: var(--brand-purple);
}

.scenario-card .card-content p {
    margin-bottom: 1.5rem;
    flex-grow: 1;
}

.scenario-card .card-link {
    font-weight: 700;
    color: var(--brand-mustard);
    text-decoration: none;
    font-size: 1.1rem;
    border-bottom: 2px solid var(--brand-mustard);
    padding-bottom: 0.2rem;
    align-self: flex-start;
    transition: color 0.3s ease, border-color 0.3s ease;
}

.scenario-card .card-link:hover {
    color: var(--brand-purple);
    border-color: var(--brand-purple);
}

.step-number {
    font-size: 2.5rem;
    color: var(--brand-gold);
    font-weight: 900;
    margin-bottom: 1.5rem;
}

.step-card h3 {
    color: var(--brand-purple);
    margin-bottom: 1rem;
}

.cta-section {
    margin-top: 8rem;
    max-width: 900px;
    margin-inline: auto;
}

.cta-subtitle {
    margin-bottom: 3rem;
    color: var(--text-muted);
}

.cta-title {
    font-size: 2.25rem;
    color: var(--brand-purple);
    font-weight: 900;
    margin-bottom: 4rem;
}

.cta-buttons {
    display: flex;
    gap: 1.5rem;
    justify-content: center;
    flex-wrap: wrap;
    align-items: stretch;
}

.cta-btn {
    border-radius: 99px;
    padding: 1.25rem 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex: 1;
    min-width: 250px;
}

.hero-cta {
    display: flex;
    gap: 2rem;
    justify-content: center;
    align-items: stretch;
}

.hero-cta .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

/* ═══════════════════════════════════════════════════════════════════════════
   main.css — Qatar Tours Prestige Theme
   Prestige Palette: Sand, Dark Purple, Mustard, Gold.
   ═══════════════════════════════════════════════════════════════════════════ */



:root {
    /* Colours — Prestige Palette */
    --bg-sand-light: #fff5e1;
    --bg-sand-medium: #ffcf9b;
    --bg-sand-dark: #EDE3D1;

    --brand-purple: #722F37;
    --brand-mustard: #eab226;
    --brand-gold: #ffcd38;
    --brand-yellow: #FFD700;
    --white-soft: #FFFFFF;

    --text-primary: #722F37;
    --text-muted: #5D4D70;
    --text-dim: #7B688E;

    /* Gradient — More prestige depth */
    --grad-prestige: linear-gradient(135deg, var(--brand-purple) 0%, #582233 100%);
    --grad-gold: linear-gradient(135deg, var(--brand-mustard) 0%, var(--brand-yellow) 100%);
    --border-gold: 1px solid rgba(184, 134, 11, 0.08);
    --glass-border: rgba(114, 47, 55, 0.05);

    /* Spacing scale */
    --space-xs: 0.5rem;
    --space-sm: 1rem;
    --space-md: 2rem;
    --space-lg: 4rem;
    --space-xl: 8rem;

    /* Typography */
    --font-body: 'Inter', system-ui, -apple-system, sans-serif;
    --font-display: 'Outfit', 'Inter', system-ui, sans-serif;

    /* Transitions */
    --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
    --transition-smooth: 0.35s var(--ease-out-expo);

    /* Grid */
    --grid-cols: 12;
    --grid-gap: clamp(1rem, 2.5vw, 2rem);
    --container: min(90rem, 100% - 3rem);
}

/* ─── Base ─────────────────────────────────────────────────────────────── */
html {
    font-size: 16px;
    scroll-behavior: smooth;
    overflow-x: hidden;
    width: 100vw;
    max-width: 100vw;
}

body {
    margin: 0;
    padding: 0;
    font-family: var(--font-body);
    background-color: var(--bg-sand-light);
    color: var(--text-primary);
    line-height: 1.7;
    overflow-x: hidden;
    width: 100vw;
    max-width: 100%;
    -webkit-font-smoothing: antialiased;

    /* Flexbox Sticky Footer */
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

main,
#main-content {
    flex: 1;
}

/* ─── Typography ───────────────────────────────────────────────────────── */
h1 {
    font-size: clamp(2rem, 5vw, 2.5rem);
}

h2 {
    font-size: clamp(1.7rem, 4vw, 2.1rem);
}

h3 {
    font-size: clamp(1.4rem, 3vw, 1.7rem);
}

h4 {
    font-size: clamp(1.1rem, 2vw, 1.4rem);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-display);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: var(--brand-purple);
}

.section-title {
    margin-bottom: 2.5rem;
    max-width: 1000px;
    margin-inline: auto;
    text-align: center;
}

.text-center .section-title {
    margin-inline: auto;
}

/* Prestige Heading Styles */
.prestige-kashida-h3 {
    font-family: 'El Messiri', sans-serif;
    color: var(--brand-mustard);
    font-size: 1.3rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 1rem;
}

.prestige-bold-purple {
    font-weight: 900;
    color: var(--brand-purple);
}


p {
    font-size: clamp(1rem, 1.8vw, 1.125rem);
    color: var(--text-muted);
}

.gradient-text {
    background: var(--grad-gold);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ─── Layout ─────────────────────────────────────────────────────────────── */
.container {
    width: var(--container);
    margin-inline: auto;
}

.grid-12 {
    display: grid;
    grid-template-columns: repeat(var(--grid-cols), 1fr);
    gap: var(--grid-gap);
}

.col-span-12 {
    grid-column: span 12;
}

.col-span-8 {
    grid-column: span 8;
}

.col-span-7 {
    grid-column: span 7;
}

.col-span-6 {
    grid-column: span 6;
}

.col-span-5 {
    grid-column: span 5;
}

.col-span-4 {
    grid-column: span 4;
}

.col-span-3 {
    grid-column: span 3;
}

/* ─── Tablet / iPad Layout (<1024px) ────────────────────────────────── */
@media (max-width: 1024px) {

    .col-span-8,
    .col-span-4,
    .col-span-3,
    .col-span-5,
    .col-span-7,
    .col-span-6 {
        grid-column: span 12;
    }

    /* Ensure 3 columns for card grids where possible */
    #scenarios .col-span-4 {
        grid-column: span 4;
    }

    @media (max-width: 768px) {
        #scenarios .col-span-4 {
            grid-column: span 12;
        }
    }
}

/* ─── Prestige Elements ───────────────────────────────────────────────── */
.glass-card {
    background: rgba(255, 255, 255, 0.6);
    border: var(--border-gold);
    border-radius: 24px;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    padding: 2.5rem;
    transition: all var(--transition-smooth);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
    border-color: var(--brand-mustard);
}



.btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    border-radius: 99px;
    padding: 1rem 2.5rem;
    cursor: pointer;
    transition: all var(--transition-smooth);
    text-decoration: none;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 0.05em;
}

.btn-primary {
    background: var(--brand-purple);
    color: #fff !important;
}

.btn-primary:hover {
    background: #502126;
    text-decoration-color: #FCBF0A !important;
    color: #FCBF0A !important;
}


.btn-secondary {
    background: var(--brand-purple);
    color: #ffffff !important;
}

.btn-secondary:hover {
    text-decoration-color: #FCBF0A !important;
    color: #e0b400 !important;
}


.btn-3 {
    background: var(--brand-gold);
    color: var(--brand-purple) !important;
    border-radius: 8px;
    padding: 1rem 2rem;
    font-weight: 600;
}

.btn-3:hover {
    background: #e0b400;
    color: #fff !important;
}

.btn-card {
    color: var(--brand-purple) !important;
    border-radius: 8px;
    padding: 1rem 2rem;
    font-weight: 600;
}

.btn-card:hover {
    background: #e0b400;
    color: var(--brand-mustard) !important;
}

.btn-ghost {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--lp-sans);
    font-size: 15px;
    font-weight: 500;
    background: var(--lp-gold);
    color: #fff;
    padding: 0.85rem 2rem;
    border-radius: 6px;
    text-decoration: none;
    transition: background 0.3s ease;
}



.btn-ghost:hover {
    background: rgba(184, 134, 11, 0.05);
}

/* ─── Site Header ──────────────────────────────────────────────────────── */
#site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    padding-block: 0.5rem;
    background: rgba(253, 249, 241, 0.95);
    /* Solid background for visibility */
    backdrop-filter: blur(15px);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.05);
    border-bottom: 1px solid rgba(184, 134, 11, 0.1);
    transition: all 0.4s var(--ease-out-expo);
}

/* Push header down when WordPress Admin Bar is visible */
.admin-bar #site-header {
    top: 32px;
}

@media screen and (max-width: 782px) {
    .admin-bar #site-header {
        top: 0 !important;
    }

    /* hide WP admin bar on mobile to prevent layout gaps */
    #wpadminbar {
        display: none !important;
    }
}

#site-header.scrolled {
    padding-block: 0.5rem;
    /* Make it slightly thinner when scrolled */
    background: rgba(253, 249, 241, 0.98);
}

.site-nav {
    display: flex;
    gap: 2.5rem;
    align-items: center;
}

.site-nav a {
    position: relative;
    color: var(--brand-purple);
    text-decoration: none;
    font-family: 'El Messiri', serif;
    font-weight: 700;
    font-size: 1.15rem;
    padding-block: 4px;
    margin-inline: 1.2rem;

    /* Simulate 'Kashida' (long horizontal lines) with spacing */
    letter-spacing: 0.05em;

    /* Curvy, fluid transition */
    transition: all 0.3s var(--ease-out-expo);
}



.site-nav a:hover {
    color: var(--brand-mustard);
}


/* ─── Animations ────────────────────────────────────────────────────────── */
.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s var(--ease-out-expo);
}

.reveal.visible {
    opacity: 1;
    transform: translateY(0);
}


/* ─── Prestige Accordion Form Styles ────────────────────────────────────────── */
.prestige-accordion {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.prestige-accordion.active {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    border-color: var(--brand-mustard) !important;
}

.prestige-accordion.active .plus-minus {
    transform: rotate(45deg);
}

.prestige-accordion .accordion-content {
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s ease-in-out;
}

.prestige-accordion.active .accordion-content {
    max-height: 5000px !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* ─── Desktop Header Adjustments ────────────────────────────────────── */
.site-nav a {
    margin-inline: 0.5rem;
    /* Reduced horizontal spacing on desktop */
}

.nav-icon {
    display: none;
    /* Hide icons on desktop */
}

/* ─── Contact Form 7 Checkboxes / Radios ────────────────────────────────── */
.wpcf7-list-item {
    display: flex !important;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1.15rem !important;
    margin-left: 0 !important;
}


.wpcf7-list-item label {
    flex-direction: row !important;
    align-items: center !important;
    gap: 0.5rem !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
}

.wpcf7-list-item input[type="radio"],
.wpcf7-list-item input[type="checkbox"] {
    margin: 0 !important;
    width: 20px !important;
    height: 20px !important;
    margin-right: 8px !important;
    flex-shrink: 0;
    accent-color: var(--brand-purple) !important;
    border-radius: 2px !important;
    align-items: center !important;
    align-content: center !important;
}

.wpcf7-list-item-label {

    line-height: 1.2;
    font-size: 0.95rem;
    color: var(--text-primary);
}


/* --- CF7 SKIN --- */
/* ═══════════════════════════════════════════════════════════════════════════
   cf7-skin.css — Prestige Theme for Contact Form 7
   ═══════════════════════════════════════════════════════════════════════════ */

.wpcf7-form {
    display: flex;
    flex-direction: column;
    max-width: 800px;
    margin-inline: auto;
}



.wpcf7-form p {
    color: var(--brand-purple) !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    margin-bottom: 0.8rem !important;
}

.wpcf7-form>* {
    margin-bottom: 0.5rem;
}

.wpcf7-form label {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    font-family: var(--lp-serif);
    /* Serif font as requested */
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--brand-purple);
    width: 100% !important;
}

/* Increase gap between label and input ONLY on Partners and Corporate pages (handles both <label> and <p> form structures) */
.corporate-form-wrapper .wpcf7-form-control-wrap,
.corporate-form-wrapper .wpcf7-form-control:not(.wpcf7-submit) {
    display: block !important;
    margin-top: 0.5rem !important;
}

.wpcf7-form-control:not(.wpcf7-submit) {
    width: 100% !important;
    padding: 1.25rem 1.5rem !important;
    background: #fdfaf3 !important;
    /* Very light sand/yellow */
    border: 1px solid var(--brand-purple) !important;
    border-radius: 12px !important;
    color: var(--brand-purple) !important;
    font-family: var(--lp-serif) !important;
    /* Serif font as requested */
    font-size: 1.35rem !important;
    /* Increased significantly as requested (~3pt) */
    transition: all 0.3s var(--ease-out-expo) !important;
    box-sizing: border-box !important;
    /* Ensures padding doesn't break alignment */
}


/* Placeholder text styling (pattern examples) */
.wpcf7-form-control::placeholder {
    color: var(--text-dim);
    opacity: 0.7;
    font-family: var(--lp-serif);
    font-size: 0.95rem;
    font-style: italic;
    font-weight: 400;
}

.wpcf7-form-control:not(.wpcf7-submit):focus {
    outline: none;
    border-color: var(--brand-mustard);
    box-shadow: 0 0 0 4px rgba(184, 134, 11, 0.05);
}

/* Checkbox and Radio styling improvements */
.wpcf7-checkbox,
.wpcf7-radio {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 0.5rem;
}

.wpcf7-list-item {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    /* Let the parent gap handle spacing */
}

.wpcf7-list-item input[type="checkbox"],
.wpcf7-list-item input[type="radio"] {
    width: 1.25rem;
    height: 1.25rem;
    accent-color: var(--brand-mustard);
    cursor: pointer;
    margin: 0;
    flex-shrink: 0;
    /* Prevent squishing */
}

.wpcf7-list-item-label {
    font-weight: 500;
    font-size: 0.95rem;
    color: var(--text-primary);
    cursor: pointer;
    line-height: 1.4;
}

/* Submit Button Centering */
/* Standardized Global Submit Button (Matches lp-btn-primary) */
.wpcf7-submit {
    display: block !important;
    margin: 0 auto 0 auto !important;
    /* Move it UP */
    background: var(--lp-gold) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 6px !important;
    width: 210px !important;
    padding: 0.85rem 1rem !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    font-family: var(--lp-sans) !important;
    cursor: pointer;
    transition: all 0.3s ease !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.wpcf7-submit:hover {
    background: var(--lp-maroon-soft) !important;
    color: #fff !important;
}

/* Aggressively move submit button UP to eliminate gap */
.wpcf7-form p:has(.wpcf7-submit) {
    margin-top: -1.5rem !important;
}

/* Prestige dropdown styling */
.wpcf7-select {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23B8860B' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: calc(100% - 20px) 50%;
}

/* ──────────────────────────────────────────────────────────────────────────
   Success/Error Message Styling (Improved Visibility)
   ────────────────────────────────────────────────────────────────────────── */
.wpcf7-response-output {
    order: 90;
    /* High order but lower than submit wrapper */
    border-radius: 12px !important;
    padding: 1.5rem !important;
    margin-top: 1rem !important;
    margin-bottom: 0 !important;
    text-align: center;
    font-weight: 600;
}

.wpcf7-mail-sent-ok {
    border: 2px solid #4CAF50 !important;
    color: #2E7D32 !important;
    background: rgba(76, 175, 80, 0.1);
    animation: cf7SlideUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes cf7SlideUp {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.wpcf7-validation-errors,
.wpcf7-mail-sent-ng {
    border: 2px solid #D32F2F !important;
    color: #B71C1C !important;
    /* Deep red for high visibility */
    background: rgba(211, 47, 47, 0.1);
    /* Soft red background */
    animation: cf7SlideUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Individual field error styling */
.wpcf7-not-valid-tip {
    color: #D32F2F;
    font-size: 0.85rem;
    font-weight: 600;
    margin-top: 0.25rem;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* Add an icon before the error text */
.wpcf7-not-valid-tip::before {
    content: "⚠️";
    font-size: 0.9rem;
}

/* Highlight the actual input field that has an error */
.wpcf7-not-valid {
    border-color: #D32F2F !important;
    background-color: rgba(211, 47, 47, 0.02) !important;
    box-shadow: 0 0 0 3px rgba(211, 47, 47, 0.1) !important;
}

/* ──────────────────────────────────────────────────────────────────────────
   Custom Layout Classes (For use in CF7 Form Editor)
   ────────────────────────────────────────────────────────────────────────── */
.wpcf7-form {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.corporate-form {
    display: contents;
    color: var(--brand-purple);
}

.wpcf7-form hr,
.corporate-form hr {
    display: none !important;
}

/* Remove default browser borders from CF7 hidden fieldset */
.wpcf7-form fieldset {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.corporate-form h3 {
    margin-bottom: 1rem;
    font-size: 1.5rem;
    border-bottom: 1px solid rgba(184, 134, 11, 0.2);
    padding-bottom: 0.5rem;
}

.form-row {
    margin-bottom: 0.5rem;
}

.form-row label {
    display: block;
    font-weight: 600;
    margin-bottom: 0.3rem;
}

.form-row input,
.form-row textarea,
.form-row select {
    width: 100%;
    /* Let the cf7 base styles handle the padding/borders for consistency */
}

/* 2-column flex layout for side-by-side fields */
.flex-2 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 0.5rem;
    align-items: start;
}

.form-note {
    font-size: 0.85rem;
    color: var(--text-dim);
    margin-top: 1rem;
    margin-bottom: 1rem;
    text-align: center;
    transition: opacity 0.3s;
}

.form-submit {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    /* Moves note closer to the button */
    text-align: center;
    margin-top: 2rem;
    color: var(--text-muted);
    font-size: 0.95rem;
    order: 100 !important;
    /* Force to absolute bottom of form */
}

.form-submit .wpcf7-submit {
    margin: 0 auto !important;
    /* Removed massive top margin */
}

/* Robust Positioning Fix */
.form-row:has(.wpcf7-submit),
.wpcf7-form-control-wrap:has(.wpcf7-submit) {
    order: 100 !important;
}

.wpcf7-response-output.wpcf7-validation-errors {
    display: none !important;
    /* Hide global error message as it appears at the top */
}

.wpcf7-response-output.wpcf7-mail-sent-ok {
    display: block !important;
    order: 90 !important;
    border: 2px solid #4CAF50 !important;
    color: #2E7D32 !important;
    background: rgba(76, 175, 80, 0.1);
    border-radius: 12px !important;
    padding: 1.5rem !important;
    margin-top: 1rem !important;
    text-align: center;
}

/* ==========================================================================
   AGRESSIVE HIDE FOR TOP ERROR SUMMARIES
   ========================================================================== */

/* 1. Hide the global validation summary box (usually at top or bottom) */
.wpcf7-response-output:not(.wpcf7-mail-sent-ok) {
    display: none !important;
}

/* 2. Hide any aggregated bulleted lists of errors (specific to some CF7 configs) */
.wpcf7-form ul,
.wpcf7-form .wpcf7-validation-errors {
    display: none !important;
}

/* 3. Ensure individual validation tips BELOW fields remain visible and stylized */
.wpcf7-not-valid-tip {
    display: flex !important;
    color: #D32F2F !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
    margin-top: 0.5rem !important;
    margin-bottom: 1rem !important;
}

/* 4. Ensure the success message remains positioned above the button */
.wpcf7-response-output.wpcf7-mail-sent-ok {
    display: block !important;
    order: 95 !important;
    visibility: visible !important;
}

/* CRITICAL: ERROR HIDING OVERRIDE */
.wpcf7-form ul:not(.wpcf7-checkbox):not(.wpcf7-radio),
.screen-reader-response {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
}

/* Ensure individual field tips remain visible */
.wpcf7-not-valid-tip {
    display: flex !important;
    visibility: visible !important;
    position: relative !important;
    z-index: 10 !important;
    height: auto !important;
    margin-top: 5px !important;
    color: #D32F2F !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
}

/* Force bottom validation tips to be visible */
.wpcf7-form-control-wrap {
    display: block;
    position: relative;
}

/* ==========================================================================
   ULTIMATE FEEDBACK POSITIONING (FORCED TO BOTTOM)
   ========================================================================== */

/* 2. Show response output when sent */
.wpcf7-form.sent .wpcf7-response-output,
.wpcf7-response-output.wpcf7-mail-sent-ok {
    display: block !important;
    margin-top: 2rem !important;
}


/* 3. Ensure individual field tips are exclusively at field level */
.wpcf7-not-valid-tip {
    order: 10 !important;
    /* Low order within its parent wrap */
    display: block !important;
    margin-top: 10px !important;
    padding: 0.5rem !important;
}

/* 4. Hide all pseudoelements or tooltips showing English */
[novalidate] *:invalid,
[novalidate] *::invalid {
    box-shadow: none !important;
}

[novalidate] *:focus:invalid {
    box-shadow: none !important;
}

/* 5. Show global error box ABOVE the button */
.wpcf7-form .wpcf7-response-output {
    display: none !important;
    /* hide by default */
}

/* Only show success and validation errors */
.wpcf7-form .wpcf7-response-output.wpcf7-validation-errors,
.wpcf7-form .wpcf7-response-output.wpcf7-spam-blocked,
.wpcf7-form .wpcf7-response-output.wpcf7-mail-sent-ok {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    margin-top: 1.5rem !important;
    margin-bottom: 0 !important;
    padding: 1rem !important;
    border-radius: 12px !important;
    text-align: center;
    font-weight: 600;
    order: 95 !important;
}

/* Specific error styling */
.wpcf7-form .wpcf7-response-output.wpcf7-validation-errors,
.wpcf7-form .wpcf7-response-output.wpcf7-spam-blocked {
    border: 2px solid #D32F2F !important;
    color: #D32F2F !important;
    background: rgba(211, 47, 47, 0.05) !important;
}

/* 6. Text below the submit button */
.wpcf7-form p:has(.wpcf7-submit),
.wpcf7-form .form-submit,
.wpcf7-form .wpcf7-submit-container {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    order: 100 !important;
}

.wpcf7-form p:has(.wpcf7-submit)::after,
.wpcf7-form .form-submit::after,
.wpcf7-form .wpcf7-submit-container::after {
    display: none !important;
}

/* --- END CF7 SKIN --- */

/* ─── Mobile Navigation (<1200px) ────────────────────────────────────────── */
@media (max-width: 1200px) {
    .nav-toggle {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 6px;
        width: 40px;
        height: 40px;
        background: none;
        border: none;
        cursor: pointer;
        padding: 0;
        z-index: 1002;
    }

    .nav-toggle .toggle-bar {
        display: block;
        width: 30px;
        height: 3px;
        background-color: var(--brand-purple);
        border-radius: 3px;
        transition: all 0.3s ease-in-out;
    }

    .nav-toggle.active .toggle-bar:nth-child(1) {
        transform: translateY(9px) rotate(45deg);
        background-color: var(--brand-mustard);
    }

    .nav-toggle.active .toggle-bar:nth-child(2) {
        opacity: 0;
    }

    .nav-toggle.active .toggle-bar:nth-child(3) {
        transform: translateY(-9px) rotate(-45deg);
        background-color: var(--brand-mustard);
    }

    .desktop-nav {
        display: block !important;
        position: fixed;
        top: 0;
        right: 0;
        width: 100vw;
        height: 100vh;
        background-color: var(--bg-sand-light);
        padding: 8rem 2rem 2rem 2rem;
        box-shadow: -10px 0 30px rgba(0, 0, 0, 0.1);
        z-index: 1001;

        /* Add Arabic Pattern Background with stronger visibility */
        background-image:
            linear-gradient(rgba(253, 249, 241, 0.8), rgba(253, 249, 241, 0.95)),
            url('assets/img/patterns/arabic-pattern.png');
        background-repeat: repeat;
        background-size: cover, 300px;
        background-blend-mode: normal, multiply;

        /* The slide-in from right mechanics */
        transform: translateX(100%);
        transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
    }

    .desktop-nav.open {
        transform: translateX(0);
    }

    .nav-close {
        display: none !important;
    }

    .site-nav {
        flex-direction: column;
        gap: 2rem;
        text-align: center;
        align-items: center;
        margin-top: 2rem;
    }

    .site-nav a {
        font-size: 1.5rem;
        display: flex;
        align-items: center;
        gap: 1rem;
        margin-inline: 0;
    }

    .nav-icon {
        display: none;
    }

    .header-right .btn-primary {
        display: none;
    }
}

@media (max-width: 600px) {
    .header-right {
        display: none;
    }
}




/* ─── Responsive Cards & Headings (<750px) ────────────────────────────────────────── */
@media (max-width: 750px) {

    /* Target the specific flex-direction: row card */
    .glass-card[style*="flex-direction: row"] {
        flex-direction: column !important;
    }

    .glass-card[style*="flex-direction: row"]>div {
        padding: 1rem !important;
        /* Reduce padding on mobile */
        min-height: auto !important;
        /* Remove fixed min-height for image container */
    }

    .glass-card[style*="flex-direction: row"] img {
        height: 300px !important;
        /* Cap image height on mobile */
        border-radius: 12px;
    }

    /* Adjust headings for mobile */
    .glass-card h2,
    .glass-card h3 {
        font-size: 1.5rem !important;
        margin-bottom: 0.8rem !important;
    }

    .glass-card p,
    .glass-card li {
        font-size: 0.9rem !important;
        line-height: 1.5 !important;
        margin-bottom: 0.8rem !important;
        word-break: break-word;
    }

    .glass-card .btn,
    .glass-card a[style*="border-bottom"] {
        font-size: 0.95rem !important;
        padding: 0.8rem 1.5rem !important;
        width: 100%;
        text-align: center;
        justify-content: center;
        margin-top: 1rem;
    }

    /* Force all grid columns to 1 on mobile */
    .col-span-6,
    .col-span-4,
    .col-span-8,
    .col-span-3,
    .col-span-5,
    .col-span-7 {
        grid-column: span 12 !important;
    }

    h1.hero-title {
        font-size: clamp(1.6rem, 5vw, 2rem) !important;
        line-height: 1.3 !important;
    }

    h2.hero-mask-heading,
    h1.hero-mask-heading {
        font-size: clamp(2.5rem, 8vw, 3.5rem) !important;
        line-height: 1.2 !important;
    }

    h2.section-title {
        font-size: clamp(1.5rem, 5vw, 1.8rem) !important;
        line-height: 1.3 !important;
    }

    /* Target huge 3rem headings from inline styles (like on index.php scenarios) */
    h2[style*="clamp(3rem"],
    #contact-forms h2,
    #contact h2 {
        font-size: clamp(1.8rem, 5vw, 2.2rem) !important;
    }

    /* Accordion Headings */
    .accordion-trigger h3 {
        font-size: clamp(1.1rem, 5vw, 1.3rem);
    }



    /* Contact Form 7 Inputs (Fix squeezed padding) */
    .wpcf7-form-control-wrap {
        display: block !important;
        width: 100% !important;
    }



    .wpcf7-form-control.wpcf7-text,
    .wpcf7-form-control.wpcf7-number,
    .wpcf7-form-control.wpcf7-date,
    .wpcf7-form-control.wpcf7-textarea,
    .wpcf7-form-control.wpcf7-select {
        padding: 1rem 1.25rem;
        font-size: 1rem;
        width: 100% !important;
        box-sizing: border-box !important;
        border: 1px solid var(--brand-purple) !important;
        border-radius: 8px !important;
        background: #fff !important;
        color: var(--brand-purple) !important;
    }

    @media (max-width: 750px) {

        /* Reduce glass card padding so mobile forms reach closer to edges */
        .glass-card:not(.prestige-accordion) {
            padding: 15px !important;
        }

        /* Override outer container constraints slightly to give accordion more max-width on mobile */
        #contact .container,
        #contact-forms .container {
            width: 100% !important;
            padding-inline: 1rem;
        }

        .wpcf7-form-control.wpcf7-text,
        .wpcf7-form-control.wpcf7-number,
        .wpcf7-form-control.wpcf7-date,
        .wpcf7-form-control.wpcf7-textarea,
        .wpcf7-form-control.wpcf7-select {
            padding: 1rem 1rem !important;
            font-size: 1rem !important;
            width: 100% !important;
            box-sizing: border-box !important;
            border: 1px solid var(--brand-purple) !important;
            border-radius: 8px !important;
            background: #fff !important;
            color: var(--brand-purple) !important;
        }
    }


    @media (max-width: 768px) {
        .split-card {
            grid-template-columns: 1fr !important;
        }

        .split-card>div.img-container {
            min-height: 300px !important;
        }

        .split-card>div.content-container {
            padding: 2rem !important;
        }

        .purple-format-card {
            padding: 2rem !important;
            border-radius: 24px !important;
            margin-top: 3rem !important;
        }

        .purple-format-card h3 {
            font-size: 1.5rem !important;
            margin-bottom: 1.5rem !important;
        }

        .purple-format-card ul {
            font-size: 1rem !important;
        }

        .purple-format-card .btn {
            width: 100% !important;
            margin-top: 1.5rem !important;
            justify-content: center !important;
        }

        .purple-format-card .grid-12>div {
            text-align: left !important;
        }
    }

    @media (max-width: 750px) {

        .btn,
        a.btn,
        button.btn {
            font-size: 0.75rem !important;
            letter-spacing: 0.03em !important;
            padding: 0.7rem 1.2rem !important;
        }
    }



    .wpcf7-form-control.wpcf7-textarea {
        resize: vertical !important;
        min-height: 120px !important;
    }

    /* Contact Form 7 Button matches /feedback button */
    .wpcf7-submit {
        padding: clamp(1rem, 3vw, 1.25rem) clamp(2rem, 5vw, 4rem) !important;
        font-size: clamp(1rem, 3vw, 1rem) !important;
        background: var(--brand-purple) !important;
        color: #fff !important;
        border: none !important;
        border-radius: 99px !important;
        width: 100% !important;
        max-width: 300px !important;
        margin-inline: auto !important;
        display: block !important;
    }

    @media (max-width: 750px) {

        .wpcf7-submit {
            padding: clamp(0.8rem, 2vw, 0.8rem) clamp(1rem, 3vw, 2rem) !important;
            font-size: 0.85rem !important;
            background: var(--brand-purple) !important;
            color: #fff !important;
            border: none !important;
            border-radius: 99px !important;
            width: 100% !important;
            max-width: 300px !important;
            margin-inline: auto !important;
            display: block !important;
        }
    }


    /* Override fixed inline styles inside CF7 accordions causing squeeze */
    .accordion-trigger[style] {
        padding: 1.5rem 1rem !important;
    }

    @media (max-width: 768px) {
        .accordion-trigger[style] {
            padding: 1.2rem 1rem !important;
            /* ~20% smaller height */
            display: flex !important;
            align-items: center !important;
        }

        .accordion-trigger h3 {
            margin: 0 !important;
            line-height: 1 !important;
            transform: translateY(-2px);
            /* Moved 4px up from original 2px */
        }

        .accordion-trigger .plus-minus {
            line-height: 1 !important;
            font-size: 1.8rem !important;
            margin: 0 !important;
            display: flex;
            align-items: center;
        }

        .accordion-trigger h3,
        .accordion-content h3,
        .accordion-content h4,
        .qatar-form-wrapper h3,
        .qatar-form-wrapper h4,
        .qatar-form-wrapper label,
        .qatar-form-wrapper .wpcf7-list-item-label {
            font-size: 1.2rem !important;
        }
    }

    .accordion-content>div[style] {
        padding: 0 1rem 0.5rem 0.5rem !important;
    }

    /* Target nested text button specifically inside forms */
    #contact-forms .wpcf7-submit,
    .accordion-content .wpcf7-submit {
        font-size: 16pt !important;
    }

    /* Hero Buttons constraints for mobile */
    .hero-cta {
        flex-direction: column;
        gap: 1rem !important;
    }

    .hero-cta .btn {
        width: 100% !important;
        box-sizing: border-box !important;
        justify-content: center;
    }

    .purple-home-card {
        padding: 1.5rem !important;
    }

    /* Adjust Scenarios text sizes */
    #scenarios article>div {
        height: 250px !important;
    }

    #scenarios h3 {
        font-size: 1.6rem !important;
    }

    #scenarios p {
        font-size: 1.05rem !important;
    }

    #scenarios a {
        font-size: 0.95rem !important;
    }

    /* Footer Mobile Adjustments */
    .footer-mobile-hr {
        display: block !important;
    }

    /* Desktop overrides replacing inline styles */
    .partner-format-card .btn {
        padding: 1.4rem 4.5rem !important;
        font-size: 1.15rem !important;
        margin-top: 1rem !important;
    }

    #site-footer .grid-12 {
        row-gap: 1.4rem !important;
    }

    @media (max-width: 768px) {
        .footer-icon-wrapper {
            text-align: center !important;
        }

        .footer-icon-row {
            justify-content: center !important;
        }

        #site-footer .col-span-3,
        #site-footer .col-span-4,
        #site-footer .col-span-5 {
            text-align: center !important;
        }

        #site-footer .col-span-3 ul {
            align-items: center !important;
        }

        #site-footer a.footer-logo {
            margin-inline: auto !important;
            display: inline-block !important;
        }

        #site-footer a.footer-logo img {
            max-height: 64px !important;
            /* 20% smaller than 80px */
        }
    }

    #site-footer .col-span-3 {
        text-align: left;
    }

    #site-footer .col-span-4,
    #site-footer .col-span-5 {
        text-align: center;
    }

    #site-footer .col-span-3 ul {
        align-items: flex-start;
    }

    #site-footer a.footer-logo {
        margin-inline: 0;
    }

    /* Ensure containers don't bleed on mobile viewport */
    .container {
        width: 100% !important;
        max-width: 100vw !important;
        padding-inline: 1rem !important;
        box-sizing: border-box !important;
    }

    .grid-12 {
        grid-template-columns: 1fr !important;
        width: 100% !important;
        max-width: 100vw !important;
        box-sizing: border-box !important;
        gap: 1.5rem !important;
        /* Override inline 4rem gaps on mobile */
    }

    /* Override inline row layout on cards like on page-corporate.php */
    .glass-card[style*="flex-direction: row"],
    .glass-card[style*="flex-direction:row"] {
        flex-direction: column !important;
    }

    /* Force long text to break instead of expanding the container */
    h1,
    h2,
    h3,
    h4,
    p,
    span,
    a,
    div {
        overflow-wrap: break-word !important;
        word-wrap: break-word !important;
        hyphens: auto;
        max-width: 100%;
    }

    img {
        max-width: 100% !important;
        height: auto !important;
        box-sizing: border-box !important;
        display: block;
    }

    /* --- MOBILE VISIBILITY UTILITIES --- */
    .desktop-only {
        display: none !important;
    }

    .mobile-only {
        display: block !important;
        /* Will apply block to list item */
    }

    /* --- MOBILE TYPOGRAPHY & SPACING REFINEMENTS --- */

    /* Shrink Header Logo */
    .site-logo img {
        max-height: 40px !important;
    }

    /* Hero Typography & Buttons */
    .hero-mask-heading,
    h1.hero-mask-heading {
        font-size: 1.8rem !important;
        /* Forces the custom clamp() to shrink */
        line-height: 1.15 !important;
        margin-bottom: 0.5rem !important;
        background-size: cover;
    }

    .hero-subtitle {
        font-size: 0.95rem !important;
        line-height: 1.4 !important;
        margin-bottom: 2rem !important;
        color: var(--brand-purple);
    }

    .hero-cta {
        gap: 0.75rem !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    /* Global Buttons (Hero, Forms, Cards) */
    .btn,
    .wpcf7-submit,
    .hero-cta .btn {
        padding: 0.7rem 1.5rem !important;
        font-size: 0.825rem !important;
        width: auto !important;
        /* Prevents button from stretching to edge of screen */
        min-width: 250px !important;
        max-width: 90% !important;
        box-sizing: border-box !important;
        margin: 0 auto !important;
        display: inline-block !important;
        /* Allows it to respect width and centering */
        text-align: center !important;
    }

    /* Form Overrides For Mobile Space Reduction and Unification */
    .wpcf7-form p,
    .grid-12 .wpcf7-form p,
    .wpcf7-form label,
    .wpcf7-list-item-label {
        font-size: 0.85rem !important;
        margin-bottom: 0.3rem !important;
        line-height: 1.4 !important;
    }

    .wpcf7-form>* {
        margin-bottom: 0.4rem !important;
    }

    .wpcf7-submit {
        margin-top: 0.3rem !important;
    }

    /* Target extracted Call to Action Elements */
    .cta-title {
        font-size: 1.5rem !important;
        margin-bottom: 2rem !important;
    }

    .cta-subtitle {
        font-size: 1rem !important;
        margin-bottom: 1.5rem !important;
    }

    /* Target extracted Flow Cards Elements */
    .step-number {
        font-size: 2rem !important;
        margin-bottom: 1rem !important;
    }

    .step-card {
        padding: 1.5rem !important;
    }

    /* Overall Headings (overriding heavy inline styles from index.php) */
    h2,
    h2[style*="font-size: 4rem"],
    h2[style*="font-size: 2.5rem"],
    .section-title {
        font-size: 2.5rem !important;
        line-height: 1.25 !important;
        margin-bottom: 2.5rem !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }

    /* Specific fix for headings using inline clamp */
    h2[style*="clamp"] {
        font-size: 2rem !important;
    }

    /* Smaller text inside sections and cards */
    .grid-12 h3 {
        font-size: 1.35rem !important;
    }

    .grid-12 p {
        font-size: 0.95rem !important;
        line-height: 1.5 !important;
    }

    .why-trust-section {
        padding-block: var(--space-lg) !important;
    }

    .partner-format-card {
        padding: 2.5rem 1.5rem !important;
    }

    .partner-format-card h2 {
        font-size: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .partner-format-card .btn {
        padding: 0.7rem 1.5rem !important;
        font-size: 0.825rem !important;
        min-width: 240px !important;
        max-width: 90% !important;
    }

    .partner-format-card div[style*="gap"] {
        gap: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .partner-format-card p {
        margin-bottom: 1.5rem !important;
    }
}

/* --- MOVED FROM INDEX.PHP --- */
/* ─── Landing Page Design System ─────────────────────────────────────── */
:root {
    --bg-main: #f7f2ec;
    --bg-section: #f5efe8;
    --bg-section-deep: #f3ece5;
    --card-bg: rgba(255, 255, 255, 0.46);

    --text-head: #6b4a46;
    --text-body: #7b6257;
    --accent: #e49c1f;

    --border-soft: rgba(121, 96, 84, 0.12);

    --shadow-soft: 0 8px 32px rgba(114, 47, 55, 0.08);
    /* restored old value */
    --shadow-hover: 0 12px 48px rgba(114, 47, 55, 0.12);
    /* restored old hover value */
    --shadow-panel: 0 8px 32px rgba(114, 47, 55, 0.06);

    --radius-card: 24px;
    --radius-panel: 32px;

    /* Legacy compatibility for LP classes */
    --lp-bg-main: var(--bg-main);
    --lp-bg-section: var(--bg-section);
    --lp-bg-card: var(--card-bg);
    --lp-maroon-soft: var(--text-head);
    --lp-maroon-deep: #5E333A;
    --lp-text-main: var(--text-body);
    --lp-text-sec: #574d4a;
    --lp-text-menu: #967E77;
    --lp-gold: var(--accent);
    --lp-gold-muted: #D7C2A0;
    --lp-border: var(--border-soft);
    --lp-serif: 'Cormorant Garamond', Georgia, serif;
    --lp-sans: 'Inter', system-ui, sans-serif;
}

/* Paper Texture Overlay (pseudo) */
#main-content::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        linear-gradient(rgba(255, 213, 158, 0.791), rgba(255, 183, 115, 0.825)),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23noise)' opacity='0.06'/%3E%3C/svg%3E");
    pointer-events: none;
    z-index: 0;
}

#main-content>* {
    position: relative;
    z-index: 1;
}

/* Typography */
.lp h1,
.lp h2 {
    font-family: var(--lp-serif);
    color: var(--lp-maroon-soft);
}

.lp h3,
.lp p,
.lp a,
.lp span {
    font-family: var(--lp-sans);
}

/* ─── Hero ─────────────────────────────────────────────────────────────── */
#hero {
    position: relative;
    min-height: 90vh;
    display: flex;
    align-items: center;
    padding-top: 15px;
    overflow: hidden;
}

#hero .hero-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

#hero .hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

.hero-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    z-index: 0;
}

.hero-bg img,
.hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-tint {
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, rgba(242, 221, 204, 0.8) 45%, rgba(243, 237, 232, 0.001) 70%);
    z-index: 1;
}

.hero-inner {
    position: relative;
    z-index: 2;
}

.lp-eyebrow {
    font-family: var(--lp-sans);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--lp-gold);
    margin-bottom: 1.25rem;
    display: block;
}

.lp-eyebrow2 {
    font-family: var(--lp-sans);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--lp-maroon-soft);
    margin-bottom: 1.25rem;
    display: block;
}

.lp-h1 {
    font-family: var(--lp-serif) !important;
    font-size: clamp(3rem, 5.5vw, 3.75rem);
    font-weight: 600;
    line-height: 1.0;
    color: var(--lp-maroon-deep) !important;
    margin-bottom: 1.75rem;
    letter-spacing: -0.01em;
    text-transform: none !important;
}

.lp-hero-sub {
    font-family: var(--lp-sans);
    font-size: 18px;
    line-height: 1.6;
    color: var(--brand-purple);
    max-width: 540px;
    margin-bottom: 3rem;
}

.lp-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--lp-sans);
    font-size: 15px;
    font-weight: 500;
    background: var(--lp-gold);
    color: #fff;
    padding: 0.85rem 1rem;
    width: 210px;
    justify-content: center;
    text-align: center;
    border-radius: 6px;
    text-decoration: none;
    transition: background 0.3s ease;
}

.lp-btn-primary2 {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--lp-sans);
    font-size: 15px;
    font-weight: 500;
    background: var(--lp-gold);
    color: #fff;
    padding: 0.85rem 1.5rem;
    justify-content: center;
    text-align: center;
    border-radius: 6px;
    text-decoration: none;
    transition: background 0.3s ease;
    white-space: nowrap;
    width: fit-content;
}

.lp-btn-primary:hover {
    background: var(--lp-maroon-soft);
}

.lp-btn-outline {
    display: inline-flex;
    align-items: center;
    font-family: var(--lp-sans);
    font-size: 15px;
    font-weight: 500;
    background: transparent;
    color: var(--brand-purple);
    padding: 0.85rem 1rem;
    width: 210px;
    justify-content: center;
    text-align: center;
    border: 1.5px solid var(--brand-purple);
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.lp-btn-outline:hover {
    border-color: var(--brand-purple);
    color: var(--brand-purple);
    background: rgba(114, 47, 55, 0.08);
    /* Lighter brand purple tint */
}


/* ─── Section Base ──────────────────────────────────────────────────────── */
/* ─── Section Base ──────────────────────────────────────────────────────── */
.lp-section {
    position: relative;
    padding-block: 4rem;
    /* Stronger liner effect using 2/3 brand colors */
    background: linear-gradient(145deg, #FAF5F0 0%, #EDE1D6 65%, #FAF5F0 100%) !important;
    z-index: 1;
}

.lp-section::before,
.lp-section.alt::before {
    content: "";
    position: absolute;
    inset: 0;
    /* High contrast granular SVG noise for visible 'corns' */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.6' numOctaves='3' stitchTiles='stitch'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='linear' slope='4' intercept='-1.5'/%3E%3CfeFuncG type='linear' slope='4' intercept='-1.5'/%3E%3CfeFuncB type='linear' slope='4' intercept='-1.5'/%3E%3C/feComponentTransfer%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' fill='%23EDE1D6'/%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");
    background-size: 150px 150px;
    opacity: 0.15;
    mix-blend-mode: soft-light;
    pointer-events: none;
    z-index: -1;
}

/* ─── Sand Texture Card Utility ────────────────────────────────────────── */
.lp-sand-card {
    position: relative;
    background: linear-gradient(145deg, #FAF5F0 0%, #EDE1D6 65%, #FAF5F0 100%) !important;
    overflow: hidden;
    z-index: 1;
}

.lp-sand-card::before {
    content: "";
    position: absolute;
    inset: 0;
    /* High contrast granular SVG noise for visible 'corns' */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.6' numOctaves='3' stitchTiles='stitch'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='linear' slope='4' intercept='-1.5'/%3E%3CfeFuncG type='linear' slope='4' intercept='-1.5'/%3E%3CfeFuncB type='linear' slope='4' intercept='-1.5'/%3E%3C/feComponentTransfer%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' fill='%23EDE1D6'/%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");
    background-size: 150px 150px;
    opacity: 0.15;
    mix-blend-mode: soft-light;
    pointer-events: none;
    z-index: -1;
}

.lp-section.alt {
    background:
        linear-gradient(145deg, #FAF5F0 0%, #EDE1D6 65%, #FAF5F0 100%),
        linear-gradient(35deg, rgba(220, 175, 80, 0.45) 20%, transparent 60%);
}

.lp-section-label {
    font-family: var(--lp-sans);
    font-size: 11px;
    font-weight: 600;

    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--lp-maroon-soft);
    margin-bottom: 1rem;
    display: block;
}

.lp-section-label2 {
    font-family: var(--lp-sans);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--);
    margin-bottom: 1rem;
    display: block;
}


.lp-h2 {
    font-family: var(--lp-serif);
    font-size: clamp(2rem, 3.5vw, 2.75rem);
    font-weight: 600;
    color: var(--lp-maroon-soft);
    line-height: 1.1;
    margin-bottom: 1rem;
}

.lp-section-sub {
    font-family: var(--lp-sans);
    font-size: 17px;
    line-height: 1.7;
    color: var(--lp-text-sec);
    max-width: 680px;
}

/* ─── What We Organise (Format List) ───────────────────────────────────── */
.lp-format-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.lp-format-list2 {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.lp-format-list2 li {
    font-family: var(--lp-sans);
    font-size: 16px;
    font-weight: 500;
    color: var(--lp-maroon-soft);
    padding: 1.25rem 1.75rem;
    display: flex;
    align-items: center;
    gap: 1.25rem;
    max-width: 390px;
}

.lp-format-list2 li strong {
    margin-left: -1rem;
    /* Balanced gap */
    color: var(--lp-maroon-soft);
}


@media screen and (max-width: 782px) {
    .lp-format-list2 li {
        font-size: 13px;
        /* Smaller font to fit one line */
        padding: 0.75rem 1rem;
        /* Compact padding */
        gap: 0.6rem;
        /* Tighter gap */
        max-width: 100%;
        white-space: nowrap;
        /* Force one line */
    }

    .lp-format-list2 li strong {
        color: var(--lp-maroon-soft);
        margin-left: -0.3rem;
        /* Tight margin for mobile */
    }
}




.lp-format-list li {
    font-family: var(--lp-sans);
    font-size: 16px;
    font-weight: 500;
    color: var(--lp-maroon-soft);
    padding: 1.25rem 1.75rem;
    display: flex;
    align-items: center;
    gap: 1.25rem;
    max-width: 350px;
}



/* Standardized Gold Diamond Icon for all lists in cards */
.lp-format-list li::before,
.lp-format-list2 li::before,
.lp-values-list li::before {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    background: linear-gradient(135deg, #DFB98A 0%, #B8860B 100%);
    transform: rotate(45deg);
    border-radius: 2px;
    flex-shrink: 0;
}

.lp-values-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.5rem;
}

.city-format-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: fit-content;
    margin-inline: auto;
}

.city-format-list li {
    font-family: var(--lp-sans);
    font-size: 0.95rem;
    color: var(--lp-text-main);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.75rem;
    line-height: 1.5;
    text-align: left;
}

.lp-values-list li {
    font-family: var(--lp-sans);
    font-size: 15px;
    color: var(--lp-text-main);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    flex: 1 1 40%;
    min-width: 140px;
    gap: 0.75rem;
    line-height: 1.5;
}

.lp-values-list li strong {
    display: block;
    margin-top: 0.2rem;
    color: var(--lp-maroon-soft);
}

/* ─── Scenario Cards ──────────────────────────────────────────────────── */
.lp-scenario-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

.lp-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

@media (max-width: 991px) {
    .lp-grid-3 {
        grid-template-columns: repeat(2, 1fr);
    }

    .lp-scenario-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .lp-grid-2 {
        grid-template-columns: 1fr !important;
        gap: 3rem !important;
    }
}

@media (max-width: 768px) {
    .lp-grid-3 {
        grid-template-columns: 1fr !important;
    }

    .lp-scenario-grid {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
    }
}

/* Premium Unified Card System (Editorial & Tactile) */
.lp-card,
.lp-cta-block,
.lp-accordion,
.lp-why-card,
.lp-step,
.lp-values-card {
    display: flex;
    flex-direction: column;
    background: linear-gradient(135deg, #FAF5F0 0%, #EDE1D6 100%) !important;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-card);
    box-shadow: var(--shadow-soft);
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

/* Enforce Row layout for format list items so icon and text are always on same level */
.lp-format-list li,
.lp-format-list2 li {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    background: var(--card-bg);
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-card);
    box-shadow: var(--shadow-soft);
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}


/* .lp-card:hover,
.lp-cta-block:hover,
.lp-why-card:hover,
.lp-step:hover,
.lp-values-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-hover);
} */

/* Restore the specific, slightly smaller shadow for the list item pseudo-cards */
.lp-format-list li,
.lp-format-list2 li {
    box-shadow: 0 4px 16px rgba(114, 47, 55, 0.04);
    white-space: nowrap !important;
    /* Prevent text wrapping as requested */
}

.lp-format-list li:hover,
.lp-format-list2 li:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(114, 47, 55, 0.08);
    /* slight liftoff matching old style */
}

.lp-card-image {
    height: 220px;
    overflow: hidden;
    position: relative;
    border-radius: calc(var(--radius-card) - 1px) calc(var(--radius-card) - 1px) 0 0;
}

/* Removed the obsolete ::after gradient which caused a hard colored line against the new translucent card bg */

.lp-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: sepia(15%) saturate(0.9) brightness(1.02);
    transition: transform 0.5s ease;
}

.lp-card:hover .lp-card-image img {
    transform: scale(1.03);
}

.lp-card-body {
    padding: 1.5rem 1.75rem 2rem;
    flex-grow: 1;
    background: transparent;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.lp-card-title {
    font-family: var(--lp-serif);
    font-size: 20px;
    font-weight: 600;
    color: var(--lp-maroon-soft);
    margin: 0;
}

.lp-card-text {
    font-family: var(--lp-sans);
    font-size: 14px;
    line-height: 1.65;
    color: var(--lp-text-sec);
    margin: 0;
    flex-grow: 1;
}

.lp-card-link {
    font-family: var(--lp-sans);
    font-size: 13px;
    font-weight: 600;
    color: var(--lp-gold);
    text-decoration: none;
    letter-spacing: 0.06em;
}

.lp-card-link:hover {
    color: var(--lp-maroon-soft);
}

/* ─── Why Trust Cards ──────────────────────────────────────────────────── */
.lp-why-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}


.lp-why-card {
    padding: 1.75rem 2rem;
    display: grid;
    grid-template-columns: auto 1fr;
    row-gap: 1rem;
    column-gap: 1rem;
    max-width: 450px;
    margin-inline: auto;
}

.lp-why-icon {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    background: linear-gradient(135deg, #DFB98A 0%, #B8860B 100%);
    transform: rotate(45deg);
    border-radius: 2px;
    flex-shrink: 0;
    margin: 0;
    grid-column: 1;
    grid-row: 1;
    /* Adjust positioning within the grid card */
    margin-top: 5px;
}

.lp-why-title {
    font-family: var(--lp-serif);
    font-size: 20px;
    font-weight: 600;
    color: var(--lp-maroon-soft);
    margin: 0;
    grid-column: 2;
    grid-row: 1;
    border-bottom: 1px solid rgba(114, 47, 55, 0.1);
    padding-bottom: 0.85rem;
    line-height: 1.35;
}

.lp-why-text {
    font-family: var(--lp-sans);
    font-size: 14px;
    line-height: 1.65;
    color: var(--lp-text-sec);
    margin: 0;
    grid-column: 2;
    grid-row: 2;
}

.lp-why-grid.row2 {
    grid-template-columns: 1fr 1fr;
    max-width: 67%;
}

/* ─── Timeline / Flow ──────────────────────────────────────────────────── */
.lp-timeline {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    position: relative;
}

.lp-timeline::before {
    display: none;
}

.lp-step {
    padding: 1.5rem 1.25rem;
    margin: 0 0.625rem;
    position: relative;
    z-index: 0;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 1rem;
}



.lp-step-num {
    font-family: var(--lp-serif);
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--lp-gold);
    grid-row: 1;
    grid-column: 1;
    margin-bottom: 0 !important;
}

.lp-step-title {
    font-family: var(--lp-sans);
    font-size: 14px;
    font-weight: 600;
    color: var(--lp-maroon-soft);
    grid-row: 1;
    grid-column: 2;
    margin-bottom: 0 !important;
}

.lp-step-text {
    font-family: var(--lp-sans);
    font-size: 13px;
    line-height: 1.6;
    color: var(--lp-text-sec);
    grid-row: 2;
    grid-column: 1 / span 2;
    margin-top: 0.75rem;
}

/* ─── Final CTA ────────────────────────────────────────────────────────── */
.lp-cta-block {
    background: var(--card-bg);
    border: 1px solid var(--border-soft);
    border-radius: 24px;
    padding: 2rem 1.1rem;
    text-align: center;
    box-shadow: var(--shadow-soft);
    max-width: 700px;
    margin-inline: auto;
}


.lp-cta-title {
    font-family: var(--lp-serif);
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    font-weight: 600;
    color: var(--lp-maroon-soft);
    margin-bottom: 1rem;
    line-height: 1.2;
}

.lp-cta-sub {
    font-family: var(--lp-sans);
    font-size: 16px;
    color: var(--lp-text-sec);
    margin-bottom: 3rem;
    line-height: 1.6;
}

/* ─── Accordion ─────────────────────────────────────────────────────────── */
.lp-accordion {
    background: #FDF9F1;
    border: 1px solid rgba(114, 47, 55, 0.12);
    border-radius: 16px;
    overflow: hidden;
    position: relative;
    z-index: 1;
    margin-top: 3rem;
    /* Dark brown shadow on left, right, and lower part */
    box-shadow: 0 12px 40px rgba(71, 35, 23, 0.2),
        -8px 12px 25px rgba(71, 35, 23, 0.1),
        8px 12px 25px rgba(71, 35, 23, 0.1);

    /* Desktop dimensions */
    max-width: 450px;
    margin-inline: auto;
    transition: max-width 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.lp-accordion::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url('assets/img/patterns/arabic-pattern.png');
    background-size: 150px;
    opacity: 0.1;
    pointer-events: none;
    z-index: -1;
}




/* ─── Accordion ─────────────────────────────────────────────────────────── */
.lp-accordionSM {
    background: #FDF9F1;
    border: 1px solid rgba(114, 47, 55, 0.12);
    border-radius: 16px;
    overflow: hidden;
    position: relative;
    z-index: 1;
    margin-top: 1rem;
    /* Dark brown shadow on left, right, and lower part */
    box-shadow: 0 12px 40px rgba(71, 35, 23, 0.2),
        -8px 12px 25px rgba(71, 35, 23, 0.1),
        8px 12px 25px rgba(71, 35, 23, 0.1);

    /* Desktop dimensions */
    max-width: 450px;
    margin-inline: auto;
    transition: max-width 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.lp-accordionSM::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url('assets/img/patterns/arabic-pattern.png');
    background-size: 150px;
    opacity: 0.1;
    pointer-events: none;
    z-index: -1;
}








@media screen and (max-width: 768px) {
    .lp-accordion {
        max-width: 365px;
        margin-inline: 0.5rem;
    }
}

.lp-accordion-trigger {
    width: 100%;
    padding: 0.5rem 1.5rem;
    display: flex;

    justify-content: space-between;
    align-items: center;
    background: none;
    border: none;
    cursor: pointer;
    font-family: var(--lp-serif);
    font-size: 1.3rem;
    font-weight: 600;
    color: var(--lp-maroon-soft);
    text-align: left;
}

.lp-accordion-trigger .accord-icon {
    font-size: 1.5rem;
    color: var(--lp-gold);
    transition: transform 0.3s;
}

.lp-accordion.open .accord-icon,
.lp-accordionSM.open .accord-icon {
    transform: rotate(45deg);
}

.lp-accordion-content {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: all 0.5s ease;
}

.lp-accordion.open .lp-accordion-content,
.lp-accordionSM.open .lp-accordion-content {
    max-height: 4000px;
    /* Safe height for all forms */
    opacity: 1;
}

/* ─── Company Intro ─────────────────────────────────────────────────────── */
.lp-intro-text {
    font-family: var(--lp-sans);
    font-size: 17px;
    line-height: 1.8;
    color: var(--lp-text-main);
}

.lp-values-card {
    padding: 1rem;
    margin-top: 3rem;
    margin-inline: auto;
    text-align: center;
}

.lp-values-title {
    font-family: var(--lp-serif);
    font-size: 24px;
    font-weight: 600;
    color: var(--lp-maroon-soft);
    margin-bottom: 2rem;
}

.lp-values-list {
    list-style: none;
    padding: 0;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 1rem;

}

.lp-values-list li {
    font-family: var(--lp-sans);
    font-size: 15px;
    color: var(--lp-text-main);
    line-height: 1.5;
    padding-left: 1.25rem;
    position: relative;
}

.lp-values-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--lp-gold);
}

.city-capsule {
    padding: 0.85rem 1.25rem;
    border-radius: 12px;
    border: 1px solid rgba(111, 62, 70, 0.08);
    background: linear-gradient(135deg, #FDF9F1 0%, #FAF6F0 50%, rgba(111, 62, 70, 0.04) 100%);
    font-family: var(--lp-sans);
    font-size: 0.88rem;
    color: var(--lp-text-main);
    line-height: 1.4;
    text-align: center;
    white-space: nowrap;
    width: fit-content;
}

.city-format-list li::before {
    content: '';
    width: 16px;
    height: 16px;
    background-image: url('file:///Users/mac/.gemini/antigravity/brain/e4601845-5a98-4a11-82cd-0581cbddbaff/capsule_icon_1775134852190.png');
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
}

/* ─── Form Input / Submit Sizing ───────────────────────────────────────── */
.qatar-form-wrapper {
    padding-inline: 1rem;
    padding-bottom: 2.5rem !important;
    /* Reduced under button space */
}

@media screen and (max-width: 768px) {
    .qatar-form-wrapper {
        padding-inline: 0.4rem;
    }
}

.qatar-form-wrapper .wpcf7-form-control:not([type='submit']),
.qatar-form-wrapper input[type='text'],
.qatar-form-wrapper input[type='email'],
.qatar-form-wrapper input[type='tel'],
.qatar-form-wrapper textarea,
.qatar-form-wrapper select {
    width: 100% !important;
    /* Full within the 650px container */
    max-width: 100% !important;
    box-sizing: border-box;
}

.qatar-form-wrapper textarea {
    width: 100% !important;
    max-width: 100% !important;
}


.qatar-form-wrapper input[type='submit'],
.qatar-form-wrapper .wpcf7-submit {
    display: block !important;
    margin: 2rem auto !important;
    width: auto !important;
    max-width: 60% !important;
    font-size: 20pt !important;
    /* +20% from 0.7rem */
    padding: 0.6rem 1.625rem !important;
    /* +20% height, +30% width from 0.5/1.25 */
    letter-spacing: 0.05em;
    transition: all 0.3s ease;
}

/* ─── Mobile Responsive ─────────────────────────────────────────────────── */
@media (max-width: 768px) {

    .lp-values-card {
        background: linear-gradient(135deg, #FDF9F1 0%, #FAF6F0 50%, rgba(111, 62, 70, 0.07) 100%);
        border: 1px solid rgba(114, 47, 55, 0.08);
        border-radius: 16px;
        padding: 1rem;
        width: 100%;
        max-width: 350px;
        margin-inline: auto;
        box-shadow: 0 8px 32px rgba(114, 47, 55, 0.08);
    }

    .lp-format-list li,
    .lp-format-list2 li {
        width: 100% !important;
        white-space: nowrap !important;
        /* Prevent line breaks as requested */
    }

    .lp-why-card {
        /* background: linear-gradient(135deg, #FDF9F1 0%, #FAF6F0 50%, rgba(111, 62, 70, 0.07) 100%); */
        border: 1px solid rgba(114, 47, 55, 0.05);
        border-radius: 12px;
        padding: 1.75rem 2rem;
        box-shadow: 0 8px 32px rgba(114, 47, 55, 0.08);
        transition: box-shadow 0.3s ease, transform 0.3s ease;
        display: grid;
        grid-template-columns: auto 1fr;
        row-gap: 1rem;
        column-gap: 1rem;
        max-width: 350px;
        margin-inline: auto;
    }

    /* Hero */
    #hero {
        min-height: 80vh !important;
        /* -15% shorter */
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;
        padding-top: 30px;

    }

    #hero .hero-tint {
        position: absolute;
        inset: 0;
        background: linear-gradient(110deg, rgba(242, 221, 204, 0.8) 55%, rgba(243, 237, 232, 0.001) 95%);
        z-index: 1;
    }


    .lp-h1 {
        font-size: clamp(2rem, 8vw, 2.6rem) !important;
        text-align: center !important;
    }

    .lp-hero-sub {
        font-size: 15px;
        margin-inline: auto !important;
        text-align: center !important;
        color: var(--brand-purple);
        max-width: 32 0px;
    }

    .lp-eyebrow {
        text-align: center !important;
        margin-top: 2rem;
    }

    #hero .hero-inner {
        padding-block: 2rem;
    }

    #hero [style*='max-width: 680px'] {
        max-width: 100% !important;
    }

    /* Submit Button Mobile */
    .qatar-form-wrapper input[type='submit'],
    .qatar-form-wrapper .wpcf7-submit {
        display: block !important;
        margin: 2rem auto !important;
        /* Centered */
        width: 70% !important;
        /* Smaller in width by 30% from 100% */
        max-width: 70% !important;
        padding: 0.95rem 1.5rem !important;
        /* Higher for mobile usability */
        font-size: 0.9rem !important;
    }

    /* Company Intro grid → 1 col */
    #company-intro .container>div[style*='grid-template-columns: 1fr 1fr'] {
        grid-template-columns: 1fr !important;
        gap: 2.5rem !important;
    }

    /* Services grid → 1 col */
    #services .container>div[style*='grid-template-columns: 1fr 1fr'] {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }


    /* Scenario cards → 1 col */
    .lp-scenario-grid {
        grid-template-columns: 1fr !important;
    }

    /* Why trust grid → 1 col */
    .lp-why-grid {
        grid-template-columns: 1fr !important;
    }

    /* Row 2 why cards → remove centering constraints */
    #why-us [style*='max-width: 67%'] {
        grid-template-columns: 1fr !important;
        max-width: 100% !important;
    }

    /* Timeline → vertical stack */
    .lp-timeline {
        grid-template-columns: 1fr !important;
    }

    .lp-timeline::before {
        display: none;
    }

    .lp-step {
        margin: 0 0 1rem 0 !important;
    }

    /* CTA block */
    .lp-cta-block {
        padding: 3rem 1.75rem !important;
    }

    .lp-cta-title {
        font-size: 1.5rem !important;
    }

    /* Sections spacing */
    .lp-section {
        padding-block: 4rem !important;
    }


    /* Hero buttons stack */
    #hero [style*='display: flex; gap: 1rem'] {
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
    }

    #hero .lp-btn-primary,
    #hero .lp-btn-outline,
    .lp-btn-primary,
    .lp-btn-outline {
        width: 170px;
        justify-content: center !important;
        text-align: center !important;
        font-size: 13px;
        padding-inline: 0.5rem;
    }

    /* Form inputs full width on mobile */
    .qatar-form-wrapper .wpcf7-form-control:not([type='submit']),
    .qatar-form-wrapper input[type='text'],
    .qatar-form-wrapper input[type='email'],
    .qatar-form-wrapper input[type='tel'],
    .qatar-form-wrapper textarea,
    .qatar-form-wrapper select {
        width: 100% !important;
        max-width: 100% !important;
    }

    .qatar-form-wrapper textarea {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Override inline footer styles for mobile */
    .footer-primary-grid {
        grid-template-columns: 1fr !important;
    }

    .footer-col {
        padding: 1.5rem 0 !important;
        border-right: none !important;
        border-bottom: 1px solid rgba(114, 47, 55, 0.08) !important;
    }
}

/* ─── Partners Page Hero ────────────────────────────────────────────────── */
.lp-partners-hero {
    position: relative;
    height: 90vh;
    min-height: unset;
    /* Premium scale */
    display: flex;
    align-items: center;
    overflow: hidden;
    padding-top: 85px;
}



.lp-partners-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.lp-partners-hero-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: right center;
    display: block;
}

.lp-partners-hero-overlay {
    background: linear-gradient(110deg, rgba(242, 221, 204, 0.94) 35%, rgba(243, 237, 232, 0.12) 55%);
    position: absolute;
    inset: 0;
    position: absolute;
    inset: 0;
}

.lp-partners-hero-container {
    position: relative;
    z-index: 2;
    max-width: 1200px;
    margin: 0 0 0 4rem;
    /* Moved 4rem to the right as requested */
    padding: 4rem 1rem;
}

.lp-partners-hero-content {
    max-width: 620px;
}

.lp-partners-hero-h1 {
    font-family: var(--lp-serif) !important;
    color: var(--lp-maroon-soft) !important;
    margin-bottom: 1.5rem !important;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.8) !important;
}

.lp-partners-hero-sub {
    font-family: var(--lp-sans) !important;
    font-weight: 500 !important;
    font-size: 1.35rem !important;
    color: var(--lp-text) !important;
    margin-bottom: 2rem !important;
    line-height: 1.4 !important;
}

.lp-partners-hero-description {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    margin-bottom: 2.5rem;
}

.lp-partners-hero-description p {
    font-family: var(--lp-sans) !important;
    font-size: 1.1rem !important;
    color: var(--lp-text-sec) !important;
    line-height: 1.6 !important;
    margin-bottom: 0;
    max-width: 500px;
}

.lp-partners-hero-btn {
    padding: 0.5rem 1.2rem !important;
    font-size: 0.75rem !important;
}

/* ─── Sand Effect & Misc Utilities ─────────────────────────────────────── */
.lp-sand-card {
    background: var(--card-bg);
    position: relative;
    overflow: hidden;
    z-index: 1;
    border: 1px solid var(--border-soft) !important;
}

.lp-sand-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('assets/img/patterns/arabic-pattern.png');
    background-size: 150px;
    opacity: 0.1;
    z-index: -1;
    pointer-events: none;
}

@media (min-width: 992px) {
    .lp-nowrap-desktop {
        white-space: nowrap;
    }
}

/* ─── ABOUT PAGE RE-DESIGN (ab- prefix) ───────────────────────── */
.ab-hero {
    position: relative;
    min-height: 90vh;
    /* Match #hero baseline */
    display: flex;
    align-items: center;
    padding-top: 15px;
    overflow: hidden;
}

.ab-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    height: 100%;
}

.ab-hero-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

.ab-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, rgba(242, 221, 204, 0.8) 45%, rgba(243, 237, 232, 0.001) 70%);
    z-index: 1;
}

.ab-hero-container {
    position: relative;
    z-index: 10;
    max-width: 1200px;
    margin: 0 0 0 4rem;
    padding: 4rem 1rem;
}

.ab-hero-content {
    position: relative;
    z-index: 10;
    max-width: 780px;
    margin-left: 0;
    margin-bottom: 0rem;
    display: flex;
    flex-direction: column;
}

.ab-hero-label {
    font-family: var(--lp-sans);
    text-transform: uppercase;
    letter-spacing: 0.22em;
    font-size: 15px;
    font-weight: 600;
    color: var(--lp-gold);
    display: block;
    margin-bottom: 1.5rem;
}

.ab-h1 {
    font-family: var(--lp-serif) !important;
    font-size: clamp(3rem, 5.5vw, 3.75rem);
    /* Matches .lp-h1 */
    font-weight: 600;
    line-height: 1.0;
    color: var(--lp-maroon-deep) !important;
    margin-bottom: 1.75rem;
    letter-spacing: -0.01em;
    text-transform: none !important;
    max-width: 780px;
}

.ab-h2 {
    font-family: var(--lp-serif) !important;
    font-size: clamp(2rem, 3.5vw, 2.75rem);
    font-weight: 600 !important;
    color: var(--lp-maroon-soft) !important;
    margin-bottom: 1.5rem !important;
}

.ab-intro-text {
    font-family: var(--lp-sans) !important;
    font-size: 18px;
    /* Matches .lp-hero-sub */
    line-height: 1.6;
    color: var(--brand-purple) !important;
    max-width: 540px;
    margin: 0;
}


.ab-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    margin-top: 3rem;
}

/* Translucent standard card style from startpage */
.ab-card,
.ab-process-item {
    background: rgba(255, 255, 255, 0.46);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    padding: 2.5rem;
    border-radius: 10px;
    box-shadow: 0 4px 20px rgba(114, 47, 55, 0.05);
    border: 1px solid rgba(114, 47, 55, 0.04);
    transition: transform 220ms ease, box-shadow 220ms ease;
}

.ab-card:hover,
.ab-process-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(114, 47, 55, 0.08);
}

.ab-card-icon {
    margin-bottom: 1.5rem;
    color: var(--lp-gold);
}

.ab-card-title {
    font-family: var(--lp-serif);
    font-size: 20px;
    font-weight: 600;
    color: var(--lp-maroon-soft);
    margin-bottom: 1rem;
}

.ab-card-text {
    font-family: var(--lp-sans);
    font-size: 14px;
    color: var(--lp-text-sec);
    line-height: 1.65;
}

/* Process items */
.ab-process-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.25rem;
    margin-top: 4rem;
}

.ab-process-item {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
    flex: 1 1 30%;
    min-width: 300px;
}

.ab-process-num {
    background: transparent;
    color: var(--lp-gold);
    border: 1.5px solid var(--lp-gold);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-weight: 700;
    font-size: 0.85rem;
}

.ab-process-title {
    font-family: var(--lp-serif);
    font-size: 20px;
    font-weight: 600;
    color: var(--lp-maroon-soft);
    margin-bottom: 0.5rem;
}

.ab-process-desc {
    font-family: var(--lp-sans);
    font-size: 14px;
    color: var(--lp-text-sec);
    line-height: 1.65;
}

/* Status & Approach */
.ab-status-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    /* Equal space to ensure no wrapping */
    gap: 4rem;
    align-items: start;
    max-width: 1250px;
    /* Essential for nowrap text */
    margin-inline: auto;
    justify-content: center;
}







@media (max-width: 1024px) {
    .ab-status-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .ab-card-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    .ab-card-grid {
        grid-template-columns: 1fr;
    }

    .ab-process-item {
        flex: 1 1 100%;
    }

    .ab-hero {
        position: relative;
        min-height: 60vh !important;
        /* -15% shorter */
        padding-top: 20px;
        display: flex;
        overflow: hidden;
    }

    .ab-hero-content {
        justify-content: center;
        align-items: center;
        text-align: center;
        text-orientation: left;
        margin-inline: auto;
    }

    .ab-hero-container {
        position: relative;
        z-index: 10;
        max-width: 330px;
        margin: 1rem 1rem 1rem 1.5rem;
        padding: 4rem 0rem;
        text-orientation: left !important;
    }


    .ab-hero-bg {
        position: absolute;
        inset: 0;
        z-index: 0;
    }

    .ab-hero-overlay {
        position: absolute;
        inset: 0;
        background: linear-gradient(360deg, rgba(242, 221, 204, 0.9) 45%, rgba(255, 247, 241, 0.42) 80%) !important;
        /* Higher tint */
        z-index: 1;
    }

    .ab-h1 {
        font-size: clamp(2rem, 8vw, 2.6rem) !important;
        text-align: center !important;
        margin-inline: auto;
    }

    .ab-intro-text {
        font-size: 15px;
        color: var(--brand-purple) !important;
        margin: 0 auto;
        justify-content: left !important;
        align-items: center;
        max-width: 330px;
    }

    .ab-hero-label {
        text-align: center !important;
    }
}

/* ─── CORPORATE PAGE RE-DESIGN (corp- prefix) ───────────────────────── */
.corp-hero {
    position: relative;
    padding-top: 140px;
    padding-bottom: 120px;
    overflow: hidden;
    min-height: 100vh;
    display: flex;
    align-items: center;
}

.corp-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.corp-hero-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.corp-hero-overlay {
    background: linear-gradient(110deg, rgba(242, 221, 204, 0.92) 35%, rgba(243, 237, 232, 0.1) 65%);
    position: absolute;
    inset: 0;
}

.corp-hero-content {
    position: relative;
    z-index: 10;
    max-width: 780px;
}

.corp-hero-title {
    font-family: var(--lp-serif) !important;
    font-size: clamp(2.5rem, 8vw, 4.5rem);
    color: var(--lp-maroon) !important;
    line-height: 1.1 !important;
    margin-bottom: 2rem !important;
}

.corp-hero-sub {
    font-family: var(--lp-sans) !important;
    font-weight: 500 !important;
    font-size: clamp(1.1rem, 2.5vw, 1.35rem) !important;
    color: var(--lp-text) !important;
    line-height: 1.5 !important;
    margin-bottom: 2.5rem !important;
}

/* Partner types (boxes in a row) */
.corp-partner-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
    margin-block: 2rem;
}

.corp-partner-card {
    background: rgba(247, 241, 229, 0.75);
    /* Sand glass effect */
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    padding: 2rem 1.5rem;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    /* Vertical alignment */
    align-items: center;
    gap: 1.25rem;
    text-align: center;
    transition: all 0.3s ease;
    border: 1px solid rgba(139, 74, 84, 0.1);
}

.corp-partner-card:hover {
    transform: translateY(-5px);
    background: rgba(247, 241, 229, 0.9);
}


/* Step list for education */
.corp-step-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.corp-step-item,
.corp-trust-item {
    display: flex;
    gap: 1.5rem;
    margin-bottom: 2.25rem;
    font-family: var(--lp-sans);
    font-size: 1.15rem;
    color: var(--lp-text);
    white-space: nowrap;
    /* No breaks on desktop */
}


@media (max-width: 1024px) {

    .corp-step-item,
    .corp-trust-item {
        white-space: normal;
        /* Restore wrapping on tablet/mobile */
    }
}

.corp-step-num {
    color: var(--lp-gold);
    font-weight: 700;
    flex-shrink: 0;
}


/* Trust card (light maroon) */
.corp-trust-card {
    background: var(--lp-maroon-soft);
    /* light maroon */
    border-radius: 16px;
    max-width: 650px;
    width: 90%;
    color: #fff;
    box-shadow: 0 10px 40px rgba(139, 74, 84, 0.15);
}


.corp-trust-title {
    font-family: var(--lp-serif);
    font-size: 2.5rem;
    color: #fff;
    margin-bottom: 1rem;
    margin-top: -1rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

@media (max-width: 768px) {
    .corp-trust-title {
        font-size: 1.9rem !important;
    }
}

.corp-trust-list {
    list-style: none;
    padding: 0rem;
    margin: 0;
}

.corp-trust-item {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.25rem;
    font-family: var(--lp-sans);
    line-height: 1.5;
    font-size: 1.05rem;
}

.corp-trust-check {
    color: rgba(184, 134, 11, 0.8);
    flex-shrink: 0;
}

/* Grids for Corporate Sections */
.corp-partner-grid,
.corp-resp-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
    margin-top: 3rem;
}


@media (max-width: 1024px) {

    .corp-partner-grid,
    .corp-resp-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {

    .corp-partner-grid,
    .corp-resp-grid {
        grid-template-columns: 1fr;
    }
}

.corp-trust-card {
    padding: 3.5rem;
}

@media (max-width: 768px) {
    .corp-trust-card {
        padding: 2.5rem 1.5rem;
    }
}


/* Desktop Only Overrides for Company Intro Section */
@media (min-width: 769px) {
    #company-intro .lp-values-card {
        max-width: none;
        width: 56%;
    }

    #company-intro .lp-format-list2 li {
        max-width: none;
        width: 100%;
        white-space: nowrap !important;
        /* No wrapping on desktop either */
        flex-wrap: nowrap;
        flex-direction: row !important;
        align-items: center !important;
        gap: 0.75rem;
    }
}

/* Desktop Only Overrides for Services Section */
@media (min-width: 769px) {
    #services .lp-format-list li {
        flex-direction: row !important;
        align-items: center !important;
        max-width: none;
        width: 50%;
    }
}


#company-intro .lp-format-list2 li strong {
    margin-left: -0.5rem;
}




/* ─── Contact Form Unified Typography — scoped to accordions only ─── */

/* Normalize <p> label text to match <label> — partners form uses <p> */
.lp-accordion .wpcf7-form p,
.lp-accordion .wpcf7-form label {
    font-family: var(--lp-serif) !important;
    font-size: 1.25rem !important;
    font-weight: 600 !important;
    color: var(--brand-purple) !important;
    margin-bottom: 0.3rem !important;
    line-height: 1.4 !important;
}

/* Inputs inside accordions */
.lp-accordion .wpcf7-form-control:not(.wpcf7-submit) {
    font-family: var(--lp-serif) !important;
    font-size: 1.2rem !important;
    padding: 0.85rem 1.25rem !important;
}

/* Checkbox / radio label text inside accordions */
.lp-accordion .wpcf7-list-item label {
    font-family: var(--lp-sans) !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 0.5rem !important;
    margin-bottom: 0 !important;
}

/* Submit button — partners form fix (uses plain [submit] without btn classes) */
.lp-accordion .wpcf7-form [type="submit"],
.lp-accordion .wpcf7-submit {
    display: block !important;
    margin: 1.5rem auto 0 auto !important;
    background: var(--brand-purple) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 99px !important;
    padding: 0.85rem 2.5rem !important;
    font-family: var(--lp-serif) !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: background 0.3s ease !important;
    width: auto !important;
    min-width: 200px !important;
}

.lp-accordion .wpcf7-form [type="submit"]:hover,
.lp-accordion .wpcf7-submit:hover {
    background: #502126 !important;
    color: var(--brand-gold) !important;
}

/* Tighten field spacing inside accordions */
.lp-accordion .wpcf7-form>* {
    margin-bottom: 0.5rem !important;
}

.lp-accordion .wpcf7-form-control-wrap {
    margin-top: 0.2rem !important;
    display: block !important;
}



/* ─── Remove card background from checkbox/radio groups ─── */
.lp-accordion .wpcf7-checkbox.wpcf7-form-control,
.lp-accordion .wpcf7-radio.wpcf7-form-control {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0.25rem 0 !important;
}

/* ─── Unified checkbox/radio size and text across ALL accordion forms ─── */
.lp-accordion .wpcf7-list-item input[type="checkbox"],
.lp-accordion .wpcf7-list-item input[type="radio"] {
    width: 22px !important;
    height: 22px !important;
    margin-right: 10px !important;
    flex-shrink: 0;
    accent-color: var(--brand-purple) !important;
    cursor: pointer;
}

.lp-accordion .wpcf7-list-item label,
.lp-accordion .wpcf7-list-item-label {
    font-family: var(--lp-serif) !important;
    font-size: 1.2rem !important;
    font-weight: 500 !important;
    color: var(--brand-purple) !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 0.5rem !important;
    margin-bottom: 0 !important;
    line-height: 1.3 !important;
}

/* ─── Special Buttons ─────────────────────────────────────────────────── */
.lp-btn-partners-hero {
    width: 260px !important;
    max-width: 260px !important;
    justify-content: center !important;
    text-align: center !important;
}

@media screen and (max-width: 768px) {
    .lp-btn-partners-hero {
        width: 240px !important;
        max-width: 240px !important;
        font-size: 11.5px !important;
        padding-inline: 0.5rem !important;
    }
}

/* ─── Partners Page Accordion Expansion ───────────────────────────────── */
@media screen and (min-width: 992px) {
    #contact-form.lp-accordion.open {
        max-width: 1400px !important;
        width: 1400px !important;
    }

    #contact-form .corporate-form-wrapper form {
        display: grid !important;
        /* Force 3 columns at exactly 350px each (20% wider) */
        grid-template-columns: repeat(3, 350px) !important;
        gap: 1.5rem 3.5rem;
        justify-content: center;
        align-items: start;
    }

    /* Standardize divider colors to match labels */
    #contact-form .corporate-form-wrapper form::before,
    #contact-form .corporate-form-wrapper p:has([data-name="additional-info"]) {
        border-color: rgba(107, 74, 70, 0.4) !important;
        /* Solid label-matching color */
    }

    /* #contact-form .corporate-form-wrapper form>div {
        display: none !important;
        position: absolute;
    } */

    #contact-form .corporate-form-wrapper form p {
        grid-column: span 1;
        margin-bottom: 0;
        display: flex;
        flex-direction: column;
        position: relative;
        padding-left: 2.2rem !important;
        /* Icons moved closer to labels */
    }

    /* ─── Field Icons (Synchronized Start Level) ─── */
    #contact-form .corporate-form-wrapper form p::before {
        content: '';
        position: absolute;
        left: 0 !important;
        /* All icons start at the exact same horizontal position */
        top: 0.15rem !important;
        /* Balanced to match label font-baseline */
        width: 25px;
        height: 25px;
        background-repeat: no-repeat;
        background-size: contain;
        opacity: 1;
    }

    /* Direct mapping of fittable icons with solid maroon fill */
    #contact-form .corporate-form-wrapper p:has([data-name="contact-person"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="your-name"])::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23722F37'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
    }

    #contact-form .corporate-form-wrapper p:has([data-name="your-email"])::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23722F37'%3E%3Cpath d='M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E");
    }

    #contact-form .corporate-form-wrapper p:has([data-name="phone"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="your-phone"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="your-tel"])::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23722F37'%3E%3Cpath d='M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E");
    }

    #contact-form .corporate-form-wrapper p:has([data-name="agency-name"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="company-name"])::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23722F37'%3E%3Cpath d='M12 7V3H2v18h20V7H12zM6 19H4v-2h2v2zm0-4H4v-2h2v2zm0-4H4V9h2v2zm0-4H4V5h2v2zm4 12H8v-2h2v2zm0-4H8v-2h2v2zm0-4H8V9h2v2zm0-4H8V5h2v2zm10 12h-8v-2h2v-2h-2v-2h2v-2h-2V9h8v10zm-2-8h-2v2h2v-2zm0 4h-2v2h2v-2z'/%3E%3C/svg%3E");
    }

    #contact-form .corporate-form-wrapper p:has([data-name="country"])::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23722F37'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z'/%3E%3C/svg%3E");
    }

    #contact-form .corporate-form-wrapper p:has([data-name="your-position"])::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23722F37'%3E%3Cpath d='M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm6 12H6v-1c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1z'/%3E%3C/svg%3E");
    }

    #contact-form .corporate-form-wrapper p:has([data-name="travel-dates"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="visit-dates"])::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23722F37'%3E%3Cpath d='M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z'/%3E%3C/svg%3E");
    }

    #contact-form .corporate-form-wrapper p:has([data-name="guests"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="participants"])::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23722F37'%3E%3Cpath d='M16 11c1.66 0 2.99-1.33 2.99-3S17.66 5 16 5s-3 1.33-3 3 1.34 3 3 3zm-8 0c1.66 0 2.99-1.33 2.99-3S9.66 5 8 5 5 6.33 5 8s1.34 3 3 3zm0 2c-2.33 0-7 1.17-7 3.5V19h14v-2.5c0-2.33-4.67-3.5-7-3.5zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.97 1.97 3.45V19h6v-2.5c0-2.33-4.67-3.5-7-3.5z'/%3E%3C/svg%3E");
    }

    /* Hide icons for trigger-blocks */
    #contact-form .corporate-form-wrapper p:has([data-name="transfer"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="individual-program"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="request-type"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="additional-info"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="your-message"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="visit-format"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="accommodation"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="transport"])::before,
    #contact-form .corporate-form-wrapper p:has([data-name="visitor-tasks"])::before,
    #contact-form .corporate-form-wrapper p:has(input[type="submit"])::before {
        display: none !important;
    }

    /* ABSOLUTE GRID PLACEMENT */
    /* Row 1 */
    #contact-form .corporate-form-wrapper p:has([data-name="contact-person"]),
    #contact-form .corporate-form-wrapper p:has([data-name="your-name"]) {
        grid-row: 1 !important;
        grid-column: 1 !important;
        order: 1;
    }

    #contact-form .corporate-form-wrapper p:has([data-name="your-email"]) {
        grid-row: 1 !important;
        grid-column: 2 !important;
        order: 2;
    }

    #contact-form .corporate-form-wrapper p:has([data-name="phone"]),
    #contact-form .corporate-form-wrapper p:has([data-name="your-phone"]),
    #contact-form .corporate-form-wrapper p:has([data-name="your-tel"]) {
        grid-row: 1 !important;
        grid-column: 3 !important;
        order: 3;
    }

    /* ─── SCOPED GRID MAPPING ─── */

    /* PARTNERS LAYOUT (Default) */
    #contact-form .corporate-form-wrapper:not(.corp-dashboard-wrapper) p:has([data-name="agency-name"]) {
        grid-row: 2 !important;
        grid-column: 1 !important;
        order: 4;
    }

    #contact-form .corporate-form-wrapper:not(.corp-dashboard-wrapper) p:has([data-name="country"]) {
        grid-row: 2 !important;
        grid-column: 2 !important;
        order: 5;
    }

    #contact-form .corporate-form-wrapper:not(.corp-dashboard-wrapper) p:has([data-name="guests"]) {
        grid-row: 2 !important;
        grid-column: 3 !important;
        order: 6;
    }

    #contact-form .corporate-form-wrapper:not(.corp-dashboard-wrapper) p:has([data-name="travel-dates"]) {
        grid-row: 3 !important;
        grid-column: 1 !important;
        order: 7;
    }

    /* CORPORATE LAYOUT (Scoped) */
    #contact-form .corp-dashboard-wrapper p:has([data-name="company-name"]) {
        grid-row: 2 !important;
        grid-column: 1 !important;
        order: 4;
    }

    #contact-form .corp-dashboard-wrapper p:has([data-name="your-position"]) {
        grid-row: 2 !important;
        grid-column: 2 !important;
        order: 5;
    }

    #contact-form .corp-dashboard-wrapper p:has([data-name="visit-dates"]) {
        grid-row: 2 !important;
        grid-column: 3 !important;
        order: 6;
    }

    #contact-form .corp-dashboard-wrapper p:has([data-name="participants"]) {
        grid-row: 3 !important;
        grid-column: 1 !important;
        order: 7;
        padding-bottom: 1rem !important;
    }

    /* Full Width Upper Line */
    #contact-form .corporate-form-wrapper form::before {
        content: '';
        grid-row: 4;
        grid-column: 1 / span 3;
        width: 100%;
        margin: 0 auto;
        border-top: 1px solid rgba(107, 74, 70, 0.4);
        height: 0;
        transform: translateY(-1rem);
    }

    /* Row 4: Program Logistics (Partners Only by default) */
    #contact-form .corporate-form-wrapper p:has([data-name="transfer"]),
    #contact-form .corporate-form-wrapper p:has([data-name="individual-program"]),
    #contact-form .corporate-form-wrapper p:has([data-name="request-type"]) {
        grid-row: 4 !important;
        margin-top: 0.5rem !important;
        padding-bottom: 0.3rem !important;
    }

    /* PARTNERS: Individual columns for Logistics */
    #contact-form .corporate-form-wrapper:not(.corp-dashboard-wrapper) p:has([data-name="transfer"]) {
        grid-column: 1 !important;
        order: 8;
        width: fit-content !important;
    }

    #contact-form .corporate-form-wrapper:not(.corp-dashboard-wrapper) p:has([data-name="individual-program"]) {
        grid-column: 2 !important;
        order: 9;
        width: fit-content !important;
    }

    #contact-form .corporate-form-wrapper:not(.corp-dashboard-wrapper) p:has([data-name="request-type"]) {
        grid-column: 3 !important;
        order: 10;
    }

    /* CORPORATE: Hidden Logistics */
    #contact-form .corp-dashboard-wrapper p:has([data-name="transfer"]),
    #contact-form .corp-dashboard-wrapper p:has([data-name="individual-program"]) {
        opacity: 0;
        pointer-events: none;
        height: 0;
        position: absolute;
    }

    /* Row 5: Master Requirements (Corporate Only) / Additional Info (Partners) */
    #contact-form .corp-dashboard-wrapper p:has([data-name="accommodation"]),
    #contact-form .corp-dashboard-wrapper p:has([data-name="transport"]),
    #contact-form .corp-dashboard-wrapper p:has([data-name="visit-format"]) {
        grid-row: 5 !important;
        margin-top: 0.5rem !important;
    }

    #contact-form .corp-dashboard-wrapper p:has([data-name="accommodation"]) {
        grid-column: 1 !important;
        order: 8;
        width: fit-content !important;
    }

    #contact-form .corp-dashboard-wrapper p:has([data-name="transport"]) {
        grid-column: 2 !important;
        order: 9;
        width: fit-content !important;
    }

    #contact-form .corp-dashboard-wrapper p:has([data-name="visit-format"]) {
        grid-column: 3 !important;
        order: 10;
        width: 100% !important;
    }

    /* PARTNERS: Additional Info centered below requirements */
    #contact-form .corporate-form-wrapper:not(.corp-dashboard-wrapper) p:has([data-name="additional-info"]) {
        grid-row: 5 !important;
        grid-column: span 3 !important;
        order: 11;
        width: 100% !important;
        margin-top: 0.25rem !important;
        padding-top: 1.25rem !important;
        border-top: 1px solid rgba(107, 74, 70, 0.4) !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    /* Row 6: Task Description / Additional Info (Under 2nd Divider) */
    #contact-form .corporate-form-wrapper p:has([data-name="additional-info"]),
    #contact-form .corporate-form-wrapper p:has([data-name="visitor-tasks"]) {
        grid-row: 6 !important;
        grid-column: span 3 !important;
        order: 13;
        width: 100% !important;
        margin-top: 0.25rem !important;
        padding-top: 1.25rem !important;
        border-top: 1px solid rgba(107, 74, 70, 0.4) !important;
        padding-left: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    /* Keep the feedback field compact and centered (50% width) */
    #contact-form .corporate-form-wrapper p:has([data-name="additional-info"])>*,
    #contact-form .corporate-form-wrapper p:has([data-name="visitor-tasks"])>* {
        width: 50% !important;
        max-width: 500px;
        margin-inline: auto !important;
    }

    /* Input Cosmetics */
    #contact-form .corporate-form-wrapper input[type="text"],
    #contact-form .corporate-form-wrapper input[type="email"],
    #contact-form .corporate-form-wrapper input[type="tel"],
    #contact-form .corporate-form-wrapper input[type="number"],
    #contact-form .corporate-form-wrapper textarea {
        width: 100% !important;
        padding: 1.1rem 1.25rem !important;
        font-size: 1rem !important;
    }

    /* Radios & Checkbox Spacing */
    #contact-form .corporate-form-wrapper .wpcf7-list-item {
        width: fit-content !important;
        display: flex !important;
        align-items: center !important;
        gap: 0.75rem !important;
        margin-bottom: 0.75rem !important;
    }

    /* Concluding Sections (Scoped) */
    #contact-form .corp-dashboard-wrapper form p:not(:has(input)):not(:has(textarea)):not(:has(select)):not(:has(span)) {
        grid-row: 7 !important;
        grid-column: span 3 !important;
        order: 90 !important;
        text-align: center !important;
        margin-top: 1.5rem !important;
        font-family: var(--lp-sans);
        font-size: 0.95rem !important;
        color: var(--lp-text-sec);
    }

    #contact-form .corp-dashboard-wrapper form p:has(input[type="submit"]) {
        grid-row: 8 !important;
        grid-column: span 3 !important;
        order: 100 !important;
        display: flex !important;
        justify-content: center !important;
        margin-top: 1rem !important;
    }

    #contact-form .corporate-form-wrapper:not(.corp-dashboard-wrapper) form p:has(input[type="submit"]) {
        grid-row: auto !important;
        grid-column: span 3 !important;
        order: 100 !important;
        display: flex !important;
        justify-content: center !important;
        margin-top: 1.5rem !important;
    }

    #contact-form .corporate-form-wrapper input[type="submit"] {
        font-family: var(--lp-sans) !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        background: var(--lp-gold) !important;
        /* Gold #e49c1f */
        color: #fff !important;
        width: 210px !important;
        padding: 0.85rem 1rem !important;
        border-radius: 6px !important;
        border: none !important;
        text-transform: none !important;
        transition: background 0.3s ease !important;
        cursor: pointer;
    }

    #contact-form .corporate-form-wrapper input[type="submit"]:hover {
        background: var(--lp-maroon-soft) !important;
    }

    /* ─── Confirmation Messages (Visibility Fix) ─── */
    .wpcf7-response-output {
        grid-column: span 3 !important;
        order: 200 !important;
        margin-top: 1.5rem !important;
        padding: 1.25rem 2rem !important;
        border-radius: 12px !important;
        font-family: var(--lp-sans) !important;
        font-size: 1rem !important;
        text-align: center !important;
        border: 1px solid transparent !important;
    }

    /* Success Theme */
    .wpcf7-mail-sent-ok {
        background: rgba(228, 156, 31, 0.1) !important;
        /* Soft gold tint */
        border-color: var(--lp-gold) !important;
        color: var(--lp-maroon-deep) !important;
    }

    /* Error Theme */
    .wpcf7-validation-errors,
    .wpcf7-mail-sent-ng {
        background: rgba(114, 47, 55, 0.05) !important;
        border-color: var(--brand-purple) !important;
        color: var(--brand-purple) !important;
    }
}


/* Mobile Centering & Adaptive Icons */
@media screen and (max-width: 991px) {
    #contact-form.lp-accordion.open {
        max-width: 100% !important;
        width: 100% !important;
    }

    #contact-form .corporate-form-wrapper {
        margin-inline: auto !important;
        padding-inline: 1rem;
        padding-bottom: 3rem !important;
        /* Reduced under button space */
    }

    #contact-form .corporate-form-wrapper form {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    #contact-form .corporate-form-wrapper form p {
        width: 100% !important;
        max-width: 350px;
        /* Matches the 20% desktop increase */
        margin-inline: auto !important;
        padding-left: 0 !important;
        text-align: center !important;
        align-items: center !important;
    }

    #contact-form .corporate-form-wrapper form p::before {
        position: relative !important;
        display: block !important;
        margin: 0 auto 0.75rem !important;
        left: 0 !important;
        top: 0 !important;
    }

    /* Neutralize grid-specific overrides for mobile */
    #contact-form .corporate-form-wrapper form p:has([data-name]) {
        grid-row: auto !important;
        grid-column: auto !important;
    }


    /* Corporate Mobile Hero */
    .corp-hero {
        min-height: 60vh !important;
        padding-top: 5px !important;
        padding-bottom: 2rem !important;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .corp-hero-content {
        text-align: center !important;
        margin-inline: auto;
    }

    /* Partners Mobile Hero */
    .lp-partners-hero {
        min-height: 80vh !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .lp-partners-hero .hero-inner {
        text-align: center !important;
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
    }

    .lp-partners-hero .hero-inner>div {
        margin-inline: auto !important;
    }

    .lp-partners-hero-content {
        text-align: center !important;
        margin-inline: auto;
    }

    .lp-partners-hero-btn {
        margin-inline: auto;
    }
}

/* Remove OS/system orange background from range sliders */
input[type="range"],
input[type="range"]::-webkit-slider-runnable-track,
input[type="range"]::-webkit-slider-thumb,
input[type="range"]::-moz-range-track,
input[type="range"]::-moz-range-thumb,
input[type="range"]::-ms-track,
input[type="range"]::-ms-fill-lower,
input[type="range"]::-ms-fill-upper {
    background: transparent !important;
    border: none !important;
}

input[type="range"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    accent-color: transparent !important;
}

input[type="range"]::-webkit-slider-runnable-track {
    height: 8px;
    background: rgba(255, 255, 255, 0.35) !important;
    border-radius: 999px;
}

input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 0 0 2px rgba(184, 134, 11, 0.16);
}