/* Shared "Booth Options" section (BoothOptionsSection) — infinite-loop
   carousel of booth-type cards. Used by index.blade.php and
   city_landing.blade.php via front.partials._booth_options; only content
   differs. JS: initSharedBoothOptions() in shared_booth_options.js.
   Self-contained — see shared_about.css's docblock for why that matters
   and why this used to be one section of a single bundled
   shared_sections.css. */

:root {
    --hp-dark: #0c2e16;
    --hp-lime: #cfff7f;
}

/* Clears the site-wide fixed "Get your 3 quotes now" tab. */
.shared_booth_options .container {
    padding: 0 30px;
}
@media (min-width: 768px) {
    .shared_booth_options .container {
        padding: 0 45px;
    }
}

.shared_booth_options {
    padding: 48px 0 56px;
    background: linear-gradient(135deg, #0c2e16 0%, #1a4a2a 100%);
    position: relative;
    overflow: hidden;
}
.shared_booth_options-glow {
    position: absolute;
    width: 320px;
    height: 320px;
    border-radius: 999px;
    background: var(--hp-lime);
    filter: blur(64px);
    pointer-events: none;
}
.shared_booth_options-glow--1 { top: -80px; right: -80px; opacity: 0.2; }
.shared_booth_options-glow--2 { bottom: -80px; left: -80px; opacity: 0.1; }
.shared_booth_options .container {
    max-width: 1280px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}
.shared_booth_options-head {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 32px;
}
.shared_booth_options-head .eyebrow {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: var(--hp-lime);
    margin-bottom: 10px;
}
.shared_booth_options-head h2 {
    font-size: 2.1rem;
    font-weight: 700;
    color: #fff;
    margin-bottom: 14px;
}
.shared_booth_options-head .subtitle {
    font-size: 15px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.7);
    margin: 0;
}
.shared_booth_options-carousel { position: relative; }
.shared_booth_options-viewport {
    overflow: hidden;
    padding: 56px 12px 16px;
}
.shared_booth_options-track {
    display: flex;
    gap: 24px;
}
.shared_booth_option-card {
    flex: 0 0 80%;
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 40px -12px rgba(12, 46, 22, 0.28);
    transition: transform 0.3s, box-shadow 0.3s;
}
.shared_booth_option-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 55px -15px rgba(12, 46, 22, 0.42);
}
@media (min-width: 640px) {
    .shared_booth_option-card { flex-basis: 42%; }
}
@media (min-width: 1024px) {
    .shared_booth_option-card { flex-basis: calc((100% - 48px) / 3); }
}
.shared_booth_option-card.active {
    transform: scale(1.03);
    transform-origin: bottom;
    box-shadow: 0 25px 60px -15px rgba(12, 46, 22, 0.45);
    outline: 1px solid rgba(207, 255, 127, 0.8);
    outline-offset: -1px;
    z-index: 1;
}
.shared_booth_option-img {
    position: relative;
    height: 224px;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(135deg, #0c2e16 0%, #1a4a2a 50%, var(--hp-lime) 100%);
}
.shared_booth_option-img img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.shared_booth_option-img::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, #0c2e16 0%, rgba(12, 46, 22, 0.35) 55%, transparent 100%);
}
.shared_booth_option-badge {
    position: absolute;
    left: 16px;
    top: 16px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--hp-lime);
    color: var(--hp-dark);
    padding: 4px 12px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}
.shared_booth_option-badge svg { width: 12px; height: 12px; }
.shared_booth_option-num {
    position: absolute;
    right: 16px;
    top: 12px;
    z-index: 1;
    font-size: 48px;
    font-weight: 900;
    line-height: 1;
    color: rgba(255, 255, 255, 0.25);
}
.shared_booth_option-img-foot {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    padding: 20px;
}
.shared_booth_option-bar {
    display: inline-block;
    width: 40px;
    height: 3px;
    border-radius: 999px;
    background: var(--hp-lime);
    margin-bottom: 8px;
}
.shared_booth_option-img-foot h3 {
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    line-height: 1.25;
    margin: 0;
}
.shared_booth_option-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 24px;
}
.shared_booth_option-highlights-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}
.shared_booth_option-highlights-head .dot {
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: var(--hp-lime);
}
.shared_booth_option-highlights-head p {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    color: var(--hp-dark);
    margin: 0;
}
.shared_booth_option-highlights {
    list-style: none;
    margin: 0 0 auto;
    padding: 0;
}
.shared_booth_option-highlights li {
    display: flex;
    gap: 10px;
    font-size: 13px;
    line-height: 1.6;
    color: #374151;
    margin-bottom: 8px;
}
.shared_booth_option-highlights li svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    margin-top: 2px;
}
.shared_booth_option-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 20px 0;
}
.shared_booth_option-divider span { flex: 1; height: 1px; background: #e5e7eb; }
.shared_booth_option-divider i {
    width: 6px;
    height: 6px;
    background: var(--hp-lime);
    transform: rotate(45deg);
    flex-shrink: 0;
}
.shared_booth_option-best {
    margin-top: auto;
    background: linear-gradient(135deg, #f7fee7 0%, #ecfccb 100%);
    border: 1px solid rgba(207, 255, 127, 0.4);
    border-radius: 16px;
    padding: 16px;
}
.shared_booth_option-best-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
}
.shared_booth_option-best-head svg { width: 14px; height: 14px; color: var(--hp-dark); }
.shared_booth_option-best-head p {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    color: var(--hp-dark);
    margin: 0;
}
.shared_booth_option-best-text {
    font-size: 13px;
    line-height: 1.6;
    color: rgba(12, 46, 22, 0.8);
}
.shared_booth_options-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 8px;
}
.shared_booth_options-nav-btn {
    width: 40px;
    height: 40px;
    border-radius: 999px;
    background: var(--hp-dark);
    color: #fff;
    border: 1px solid rgba(207, 255, 127, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
}
.shared_booth_options-nav-btn:hover { background: var(--hp-lime); color: var(--hp-dark); }
.shared_booth_options-nav-btn svg { width: 20px; height: 20px; }
.shared_booth_options-cta { text-align: center; margin-top: 32px; }
.shared_booth_options-cta a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--hp-lime);
    color: var(--hp-dark);
    padding: 12px 28px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    transition: transform 0.2s, box-shadow 0.2s;
}
.shared_booth_options-cta a:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.25);
}
