/* City landing pages only. Loaded only on Houston, Dallas, Austin, and San Antonio routes. Keep selectors scoped under .houston-page, .dallas-page, or .austin-page. */

/* Houston city landing page - scoped to .houston-page */
.houston-page {
            --houston-red: #BE1532;
            --houston-blue: #1A4D8F;
            --houston-ink: #14213D;
            --houston-muted: #637083;
            --houston-soft: #F7F9FC;
            --houston-line: rgba(20, 33, 61, .1);
            --houston-shadow: 0 18px 40px rgba(20, 33, 61, .12);
            color: var(--houston-ink);
            background: #fff;
            overflow-x: hidden;
        }

        .houston-page h1,
        .houston-page h2,
        .houston-page h3,
        .houston-page h4,
        .houston-page h5 {
            color: var(--houston-ink);
            letter-spacing: 0;
        }

        .houston-page p {
            color: var(--houston-muted);
            line-height: 1.72;
        }

        .houston-page .houston-section {
            padding: 72px 0;
        }

        .houston-page .houston-eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 7px 12px;
            border: 1px solid rgba(190, 21, 50, .2);
            border-radius: 8px;
            background: rgba(190, 21, 50, .06);
            color: var(--houston-red);
            font-size: 12px;
            font-weight: 800;
            text-transform: uppercase;
        }

        .houston-page .houston-btn-primary,
        .houston-page .houston-btn-secondary {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 46px;
            border-radius: 8px !important;
            font-weight: 800;
            text-transform: none;
            transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, border-color .2s ease;
        }

        .houston-page .houston-btn-primary {
            border-color: var(--houston-red) !important;
            background: var(--houston-red) !important;
            color: #fff !important;
            box-shadow: 0 14px 28px rgba(190, 21, 50, .22);
        }

        .houston-page .houston-btn-secondary {
            border: 1px solid rgba(26, 77, 143, .18) !important;
            background: #fff !important;
            color: var(--houston-blue) !important;
        }

        .houston-page .houston-btn-primary:hover,
        .houston-page .houston-btn-primary:focus,
        .houston-page .houston-btn-secondary:hover,
        .houston-page .houston-btn-secondary:focus {
            transform: translateY(-2px);
            box-shadow: var(--houston-shadow);
        }

        .houston-page .houston-hero {
            position: relative;
            min-height: 640px;
            display: flex;
            align-items: center;
            padding: 88px 0;
            isolation: isolate;
            background:
                linear-gradient(90deg, rgba(255, 255, 255, .98) 0%, rgba(255, 255, 255, .92) 46%, rgba(255, 255, 255, .68) 68%, rgba(255, 255, 255, .22) 100%),
                linear-gradient(135deg, rgba(26, 77, 143, .12), rgba(190, 21, 50, .12)),
                url("../img/about/ab-2.jpg") center right / cover no-repeat;
        }

        .houston-page .houston-hero::after {
            content: "";
            position: absolute;
            inset: auto 0 0;
            height: 8px;
            background: linear-gradient(90deg, var(--houston-red), var(--houston-blue));
            z-index: -1;
        }

        .houston-page .houston-hero-content {
            width: 100%;
            max-width: 760px;
        }

        .houston-page .houston-hero h1 {
            margin-bottom: 22px;
            font-size: 44px;
            line-height: 1.07;
            overflow-wrap: break-word;
        }

        .houston-page .houston-hero-content p {
            max-width: 100%;
            overflow-wrap: break-word;
        }

        .houston-page .houston-hero h1 mark {
            color: var(--houston-red) !important;
        }

        .houston-page .houston-hero-proof {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            margin-top: 26px;
        }

        .houston-page .houston-hero-proof span {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 10px 12px;
            border: 1px solid var(--houston-line);
            border-radius: 8px;
            background: rgba(255, 255, 255, .9);
            color: var(--houston-ink);
            font-size: 13px;
            font-weight: 800;
        }

        .houston-page .houston-product-float {
            position: absolute;
            right: 7%;
            bottom: 48px;
            display: flex;
            align-items: end;
            gap: 14px;
            z-index: -1;
        }

        .houston-page .houston-product-float a {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 132px;
            height: 154px;
            padding: 14px;
            border: 1px solid rgba(255, 255, 255, .75);
            border-radius: 8px;
            background: rgba(255, 255, 255, .88);
            box-shadow: 0 18px 40px rgba(20, 33, 61, .16);
        }

        .houston-page .houston-product-float a:nth-child(2) {
            transform: translateY(-34px);
        }

        .houston-page .houston-product-float img {
            max-width: 100%;
            max-height: 126px;
            object-fit: contain;
        }

        .houston-page .houston-quick-panel {
            margin-top: -36px;
            position: relative;
            z-index: 1;
        }

        .houston-page .houston-quick-card {
            height: 100%;
            padding: 22px;
            border: 1px solid var(--houston-line);
            border-radius: 8px;
            background: #fff;
            box-shadow: 0 16px 34px rgba(20, 33, 61, .08);
        }

        .houston-page .houston-quick-card i {
            color: var(--houston-red);
            font-size: 22px;
        }

        .houston-page .houston-quick-card strong {
            display: block;
            margin-top: 12px;
            color: var(--houston-ink);
            font-size: 16px;
        }

        .houston-page .houston-quick-card span {
            display: block;
            margin-top: 6px;
            color: var(--houston-muted);
            font-size: 13px;
            line-height: 1.5;
        }

        .houston-page .houston-shelf {
            background: var(--houston-soft);
        }

        .houston-page .houston-shelf-card {
            display: grid;
            grid-template-columns: 92px minmax(0, 1fr);
            gap: 16px;
            height: 100%;
            padding: 18px;
            border: 1px solid var(--houston-line);
            border-radius: 8px;
            background: #fff;
            text-decoration: none;
            transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
        }

        .houston-page .houston-shelf-card:hover,
        .houston-page .houston-shelf-card:focus {
            transform: translateY(-4px);
            border-color: rgba(190, 21, 50, .28);
            box-shadow: var(--houston-shadow);
        }

        .houston-page .houston-shelf-img {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 92px;
            height: 92px;
            border-radius: 8px;
            background: #FBEFF2;
            overflow: hidden;
        }

        .houston-page .houston-shelf-img img {
            max-width: 78px;
            max-height: 78px;
            object-fit: contain;
        }

        .houston-page .houston-shelf-card small {
            color: var(--houston-red);
            font-weight: 900;
            text-transform: uppercase;
        }

        .houston-page .houston-shelf-card h3 {
            margin: 6px 0 8px;
            font-size: 18px;
            line-height: 1.25;
        }

        .houston-page .houston-shelf-card p {
            margin: 0;
            font-size: 13px;
        }

        .houston-page .houston-discovery {
            background: #fff;
        }

        .houston-page .houston-box-builder {
            display: grid;
            grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr);
            gap: 26px;
            align-items: stretch;
        }

        .houston-page .houston-builder-main,
        .houston-page .houston-builder-side,
        .houston-page .houston-delivery-panel,
        .houston-page .houston-faq-panel {
            border: 1px solid var(--houston-line);
            border-radius: 8px;
            background: #fff;
            box-shadow: 0 16px 34px rgba(20, 33, 61, .08);
        }

        .houston-page .houston-builder-main {
            padding: 34px;
            background:
                linear-gradient(135deg, rgba(26, 77, 143, .06), rgba(190, 21, 50, .05)),
                #fff;
        }

        .houston-page .houston-builder-side {
            padding: 24px;
        }

        .houston-page .houston-step {
            display: grid;
            grid-template-columns: 42px minmax(0, 1fr);
            gap: 16px;
            padding: 18px 0;
            border-top: 1px solid var(--houston-line);
        }

        .houston-page .houston-step:first-of-type {
            border-top: 0;
        }

        .houston-page .houston-step span {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 42px;
            height: 42px;
            border-radius: 8px;
            background: var(--houston-blue);
            color: #fff;
            font-weight: 900;
        }

        .houston-page .houston-step h3 {
            margin-bottom: 4px;
            font-size: 18px;
        }

        .houston-page .houston-search-chip {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            padding: 12px 14px;
            border: 1px solid var(--houston-line);
            border-radius: 8px;
            color: var(--houston-ink);
            font-weight: 800;
            text-decoration: none;
        }

        .houston-page .houston-search-chip + .houston-page .houston-search-chip {
            margin-top: 10px;
        }

        .houston-page .houston-search-chip i {
            color: var(--houston-red);
        }

        .houston-page .houston-products {
            background: var(--houston-soft);
        }

        .houston-page .houston-product-shell {
            height: 100%;
            border: 1px solid var(--houston-line);
            border-radius: 8px;
            background: #fff;
            box-shadow: 0 12px 28px rgba(20, 33, 61, .07);
            overflow: hidden;
            transition: transform .2s ease, box-shadow .2s ease;
        }

        .houston-page .houston-product-shell:hover,
        .houston-page .houston-product-shell:focus-within {
            transform: translateY(-4px);
            box-shadow: var(--houston-shadow);
        }

        .houston-page .houston-product-shell .vertical-product-card {
            height: 100%;
            border: 0 !important;
            box-shadow: none !important;
            background: transparent !important;
        }

        .houston-page .houston-product-shell .thumbnail {
            background: #F8FAFE !important;
            border-radius: 8px !important;
        }

        .houston-page .houston-product-shell .add-cart,
        .houston-page .houston-product-shell a.btn.btn-secondary,
        .houston-page .houston-product-shell .verified-badge {
            border-color: var(--houston-blue) !important;
            background: var(--houston-blue) !important;
            color: #fff !important;
        }

        .houston-page .houston-product-shell .price,
        .houston-page .houston-product-shell .cro-product-current-price {
            color: var(--houston-red) !important;
        }

        .houston-page .houston-delivery {
            background: #fff;
        }

        .houston-page .houston-delivery-panel {
            padding: 30px;
        }

        .houston-page .houston-delivery-map {
            position: relative;
            min-height: 100%;
            padding: 34px;
            border-radius: 8px;
            overflow: hidden;
            background:
                linear-gradient(135deg, rgba(7, 31, 65, .95), rgba(26, 77, 143, .86)),
                repeating-linear-gradient(135deg, rgba(255, 255, 255, .13) 0 1px, transparent 1px 14px);
            box-shadow: 0 18px 38px rgba(20, 33, 61, .16);
            color: #fff;
        }

        .houston-page .houston-delivery-map::after {
            content: "";
            position: absolute;
            inset: auto 0 0;
            height: 6px;
            background: linear-gradient(90deg, var(--houston-red), #fff, var(--houston-blue));
        }

        .houston-page .houston-delivery-map .houston-page .houston-eyebrow {
            position: relative;
            z-index: 1;
            background: #fff !important;
            color: var(--houston-red);
            box-shadow: 0 10px 24px rgba(20, 33, 61, .16);
        }

        .houston-page .houston-delivery-map h2,
        .houston-page .houston-delivery-map p {
            position: relative;
            z-index: 1;
            color: #fff;
        }

        .houston-page .houston-delivery-map h2 {
            max-width: 520px;
            font-size: 34px;
            line-height: 1.18;
        }

        .houston-page .houston-delivery-map p {
            max-width: 560px;
            color: rgba(255, 255, 255, .9);
            font-size: 16px;
            font-weight: 500;
        }

        .houston-page .houston-area-list {
            position: relative;
            z-index: 1;
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            margin-top: 24px;
        }

        .houston-page .houston-area-list span {
            display: inline-flex;
            align-items: center;
            min-height: 34px;
            padding: 8px 12px;
            border: 1px solid rgba(255, 255, 255, .34);
            border-radius: 8px;
            background: rgba(255, 255, 255, .16);
            color: #fff;
            font-size: 12px;
            font-weight: 800;
            line-height: 1.2;
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18);
        }

        .houston-page .houston-trust-list {
            display: grid;
            gap: 14px;
        }

        .houston-page .houston-trust-item {
            display: grid;
            grid-template-columns: 42px minmax(0, 1fr);
            gap: 14px;
            align-items: start;
            padding: 14px;
            border: 1px solid var(--houston-line);
            border-radius: 8px;
            background: #fff;
        }

        .houston-page .houston-trust-item i {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 42px;
            height: 42px;
            border-radius: 8px;
            background: rgba(190, 21, 50, .08);
            color: var(--houston-red);
        }

        .houston-page .houston-feature {
            background:
                linear-gradient(180deg, rgba(247, 249, 252, .72), #fff);
        }

        .houston-page .houston-feature-panel {
            overflow: hidden;
            border: 1px solid var(--houston-line);
            border-radius: 8px;
            background: #fff;
            box-shadow: var(--houston-shadow);
        }

        .houston-page .houston-feature-media {
            min-height: 100%;
            background: #F8FAFE;
        }

        .houston-page .houston-feature-media img {
            width: 100%;
            height: 100%;
            min-height: 340px;
            object-fit: cover;
        }

        .houston-page .houston-feature-copy {
            padding: 40px;
        }

        .houston-page .houston-faq {
            background: var(--houston-soft);
        }

        .houston-page .houston-faq-panel {
            padding: 24px;
        }

        .houston-page .houston-faq .accordion-item {
            border: 1px solid var(--houston-line);
            border-radius: 8px !important;
            overflow: hidden;
        }

        .houston-page .houston-faq .accordion-item + .accordion-item {
            margin-top: 12px;
        }

        .houston-page .houston-faq .accordion-button {
            color: var(--houston-ink);
            font-weight: 800;
            box-shadow: none;
        }

        .houston-page .houston-faq .accordion-button:not(.collapsed) {
            background: #fff5f7;
            color: var(--houston-red);
        }

        .houston-page .houston-link-grid a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 12px 0;
            border-bottom: 1px solid var(--houston-line);
            color: var(--houston-ink);
            font-weight: 800;
            text-decoration: none;
        }

        .houston-page .houston-link-grid a:last-child {
            border-bottom: 0;
        }

        .houston-page .houston-link-grid i {
            color: var(--houston-red);
        }

        .houston-page .houston-final-cta {
            padding: 54px 0;
            background:
                repeating-linear-gradient(90deg, rgba(255, 255, 255, .08) 0 2px, transparent 2px 18px),
                var(--houston-red);
            color: #fff;
        }

        .houston-page .houston-final-cta h2,
        .houston-page .houston-final-cta p {
            color: #fff;
        }

        @media (min-width: 768px) {
            .houston-page .houston-hero h1 {
                font-size: 58px;
            }
        }

        @media (min-width: 1200px) {
            .houston-page .houston-hero h1 {
                font-size: 68px;
            }
        }

        @media (max-width: 1199.98px) {
            .houston-page .houston-product-float {
                opacity: .42;
                right: 2%;
            }
        }

        @media (max-width: 991.98px) {
            .houston-page .houston-hero {
                min-height: auto;
                padding: 64px 0 76px;
                background:
                    linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(255, 255, 255, .86)),
                    url("../img/about/ab-2.jpg") center / cover no-repeat;
            }

            .houston-page .houston-product-float {
                display: none;
            }

            .houston-page .houston-box-builder {
                grid-template-columns: 1fr;
            }

            .houston-page .houston-feature-copy {
                padding: 28px;
            }
        }

        @media (max-width: 767.98px) {
            .houston-page .houston-section {
                padding: 52px 0;
            }

            .houston-page .houston-hero {
                overflow: hidden;
            }

            .houston-page .houston-hero .container {
                max-width: 100%;
                overflow: hidden;
                padding-left: 12px;
                padding-right: 12px;
            }

            .houston-page .houston-hero-content {
                max-width: calc(100vw - 24px) !important;
                min-width: 0;
            }

            .houston-page .houston-hero-content,
            .houston-page .houston-hero-content * {
                min-width: 0;
            }

            .houston-page .houston-hero h1 {
                width: 100% !important;
                max-width: calc(100vw - 24px) !important;
                font-size: 40px;
                white-space: normal !important;
            }

            .houston-page .houston-hero-content p.fs-5 {
                display: block !important;
                width: 100% !important;
                max-width: calc(100vw - 24px) !important;
                font-size: 17px !important;
                line-height: 1.62;
                white-space: normal !important;
                overflow-wrap: anywhere;
            }

            .houston-page .houston-hero .houston-page .houston-btn-primary,
            .houston-page .houston-hero .houston-page .houston-btn-secondary {
                max-width: calc(100vw - 24px);
                white-space: normal;
                text-align: center;
            }

            .houston-page .houston-quick-panel {
                margin-top: 0;
                padding-top: 22px;
            }

            .houston-page .houston-shelf-card {
                grid-template-columns: 76px minmax(0, 1fr);
                padding: 14px;
            }

            .houston-page .houston-shelf-img {
                width: 76px;
                height: 76px;
            }

            .houston-page .houston-builder-main,
            .houston-page .houston-delivery-panel,
            .houston-page .houston-faq-panel {
                padding: 20px;
            }
        }

        @media (max-width: 374.98px) {
            .houston-page .houston-hero h1 {
                font-size: 34px;
            }
        }

/* Dallas city landing page - scoped to .dallas-page */
.dallas-page {
            --dallas-red: #BE1532;
            --dallas-blue: #1A4D8F;
            --dallas-ink: #14213D;
            --dallas-muted: #657286;
            --dallas-soft: #F7F9FC;
            --dallas-warm: #FFF6F7;
            --dallas-line: rgba(20, 33, 61, .11);
            --dallas-shadow: 0 18px 42px rgba(20, 33, 61, .12);
            background: #fff;
            color: var(--dallas-ink);
            overflow-x: hidden;
        }

        .dallas-page h1,
        .dallas-page h2,
        .dallas-page h3,
        .dallas-page h4,
        .dallas-page h5 {
            color: var(--dallas-ink);
            letter-spacing: 0;
        }

        .dallas-page p {
            color: var(--dallas-muted);
            line-height: 1.72;
        }

        .dallas-page .dallas-section {
            padding: 74px 0;
        }

        .dallas-page .dallas-kicker {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            min-height: 34px;
            padding: 7px 12px;
            border: 1px solid rgba(190, 21, 50, .22);
            border-radius: 8px;
            background: #fff;
            color: var(--dallas-red);
            font-size: 12px;
            font-weight: 900;
            text-transform: uppercase;
        }

        .dallas-page .dallas-btn-primary,
        .dallas-page .dallas-btn-secondary {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 46px;
            border-radius: 8px !important;
            font-weight: 800;
            text-transform: none;
            transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
        }

        .dallas-page .dallas-btn-primary {
            border-color: var(--dallas-red) !important;
            background: var(--dallas-red) !important;
            color: #fff !important;
            box-shadow: 0 14px 28px rgba(190, 21, 50, .24);
        }

        .dallas-page .dallas-btn-secondary {
            border: 1px solid rgba(26, 77, 143, .18) !important;
            background: #fff !important;
            color: var(--dallas-blue) !important;
        }

        .dallas-page .dallas-btn-primary:hover,
        .dallas-page .dallas-btn-primary:focus,
        .dallas-page .dallas-btn-secondary:hover,
        .dallas-page .dallas-btn-secondary:focus {
            transform: translateY(-2px);
            box-shadow: var(--dallas-shadow);
        }

        .dallas-page .dallas-hero {
            position: relative;
            padding: 72px 0 42px;
            background:
                linear-gradient(180deg, #fff 0%, #F7F9FC 100%);
        }

        .dallas-page .dallas-hero-board {
            position: relative;
            isolation: isolate;
            overflow: hidden;
            border: 1px solid rgba(26, 77, 143, .12);
            border-radius: 8px;
            background:
                radial-gradient(circle at 86% 18%, rgba(190, 21, 50, .12), transparent 30%),
                radial-gradient(circle at 62% 90%, rgba(26, 77, 143, .13), transparent 32%),
                repeating-linear-gradient(135deg, rgba(26, 77, 143, .045) 0 2px, transparent 2px 18px),
                linear-gradient(135deg, #fff 0%, #fff 48%, #F4F8FD 100%);
            box-shadow: 0 22px 55px rgba(20, 33, 61, .12);
        }

        .dallas-page .dallas-hero-board::before {
            content: "";
            position: absolute;
            inset: 0 auto 0 0;
            z-index: 2;
            width: 8px;
            background: linear-gradient(180deg, var(--dallas-red), var(--dallas-blue));
        }

        .dallas-page .dallas-hero-board::after {
            content: "DALLAS";
            position: absolute;
            right: 28px;
            bottom: 18px;
            z-index: 0;
            color: rgba(26, 77, 143, .055);
            font-size: 142px;
            font-weight: 900;
            line-height: .78;
            letter-spacing: 0;
            pointer-events: none;
        }

        .dallas-page .dallas-hero-board > .row {
            position: relative;
            z-index: 1;
        }

        .dallas-page .dallas-hero-copy {
            padding: 54px 44px 54px 52px;
        }

        .dallas-page .dallas-hero h1 {
            margin-bottom: 22px;
            font-size: 44px;
            line-height: 1.07;
            overflow-wrap: break-word;
        }

        .dallas-page .dallas-hero h1 mark {
            color: var(--dallas-red) !important;
        }

        .dallas-page .dallas-hero p {
            max-width: 680px;
            font-size: 18px;
            color: #5C6879;
        }

        .dallas-page .dallas-ticket-wrap {
            position: relative;
            height: 100%;
            padding: 28px;
            border-left: 1px solid rgba(26, 77, 143, .1);
            background:
                linear-gradient(180deg, rgba(255, 255, 255, .58), rgba(247, 249, 252, .88));
        }

        .dallas-page .dallas-ticket {
            height: 100%;
            padding: 26px;
            border: 1px solid rgba(26, 77, 143, .13);
            border-radius: 8px;
            background: rgba(255, 255, 255, .96);
            box-shadow: 0 18px 38px rgba(20, 33, 61, .12);
        }

        .dallas-page .dallas-ticket-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            padding-bottom: 16px;
            border-bottom: 1px dashed rgba(20, 33, 61, .22);
        }

        .dallas-page .dallas-ticket-code {
            display: inline-flex;
            align-items: center;
            padding: 7px 10px;
            border-radius: 8px;
            background: var(--dallas-blue);
            color: #fff;
            font-size: 12px;
            font-weight: 900;
        }

        .dallas-page .dallas-ticket-list {
            display: grid;
            gap: 12px;
            margin: 18px 0 22px;
            padding: 0;
            list-style: none;
        }

        .dallas-page .dallas-ticket-list li {
            display: grid;
            grid-template-columns: 28px minmax(0, 1fr);
            gap: 10px;
            align-items: start;
            color: var(--dallas-ink);
            font-size: 14px;
            font-weight: 700;
        }

        .dallas-page .dallas-ticket-list i {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 28px;
            height: 28px;
            border-radius: 8px;
            background: rgba(190, 21, 50, .08);
            color: var(--dallas-red);
        }

        .dallas-page .dallas-mini-products {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 10px;
            margin-top: 18px;
        }

        .dallas-page .dallas-mini-products a {
            display: flex;
            align-items: center;
            justify-content: center;
            height: 112px;
            padding: 10px;
            border: 1px solid var(--dallas-line);
            border-radius: 8px;
            background: #F8FAFE;
        }

        .dallas-page .dallas-mini-products img {
            max-width: 100%;
            max-height: 92px;
            object-fit: contain;
        }

        .dallas-page .dallas-scout-bar {
            margin-top: 18px;
        }

        .dallas-page .dallas-scout-card {
            height: 100%;
            padding: 18px;
            border: 1px solid var(--dallas-line);
            border-radius: 8px;
            background: #fff;
            box-shadow: 0 12px 28px rgba(20, 33, 61, .07);
        }

        .dallas-page .dallas-scout-card strong {
            display: block;
            margin-bottom: 4px;
            color: var(--dallas-ink);
        }

        .dallas-page .dallas-scout-card span {
            color: var(--dallas-muted);
            font-size: 13px;
            line-height: 1.5;
        }

        .dallas-page .dallas-route-section {
            background: #fff;
        }

        .dallas-page .dallas-route-shell {
            display: grid;
            grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr);
            gap: 24px;
            align-items: start;
        }

        .dallas-page .dallas-route-note {
            position: sticky;
            top: 110px;
            padding: 26px;
            border: 1px solid var(--dallas-line);
            border-radius: 8px;
            background:
                linear-gradient(135deg, rgba(190, 21, 50, .06), rgba(26, 77, 143, .08)),
                #fff;
            box-shadow: 0 16px 34px rgba(20, 33, 61, .08);
        }

        .dallas-page .dallas-route-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 14px;
        }

        .dallas-page .dallas-route-card {
            display: grid;
            grid-template-columns: 74px minmax(0, 1fr);
            gap: 14px;
            align-items: center;
            min-height: 132px;
            padding: 16px;
            border: 1px solid var(--dallas-line);
            border-radius: 8px;
            background: #fff;
            text-decoration: none;
            transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
        }

        .dallas-page .dallas-route-card:hover,
        .dallas-page .dallas-route-card:focus {
            transform: translateY(-4px);
            border-color: rgba(190, 21, 50, .3);
            box-shadow: var(--dallas-shadow);
        }

        .dallas-page .dallas-route-img {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 74px;
            height: 74px;
            border-radius: 8px;
            background: var(--dallas-warm);
        }

        .dallas-page .dallas-route-img img {
            max-width: 62px;
            max-height: 62px;
            object-fit: contain;
        }

        .dallas-page .dallas-route-card small {
            color: var(--dallas-red);
            font-weight: 900;
            text-transform: uppercase;
        }

        .dallas-page .dallas-route-card h3 {
            margin: 5px 0 0;
            font-size: 18px;
            line-height: 1.25;
        }

        .dallas-page .dallas-moments {
            background: var(--dallas-soft);
        }

        .dallas-page .dallas-moment-card {
            display: flex;
            flex-direction: column;
            height: 100%;
            min-height: 224px;
            padding: 22px;
            border: 1px solid var(--dallas-line);
            border-radius: 8px;
            background: #fff;
            box-shadow: 0 12px 28px rgba(20, 33, 61, .07);
            transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
        }

        .dallas-page .dallas-moment-card:hover,
        .dallas-page .dallas-moment-card:focus-within {
            transform: translateY(-4px);
            border-color: rgba(26, 77, 143, .18);
            box-shadow: var(--dallas-shadow);
        }

        .dallas-page .dallas-moment-card > i {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex: 0 0 42px;
            width: 42px;
            height: 42px;
            margin-bottom: 16px;
            border-radius: 8px;
            background: var(--dallas-blue);
            color: #fff;
            font-size: 17px;
        }

        .dallas-page .dallas-moment-card h3 {
            margin-bottom: 8px !important;
            font-size: 18px;
            line-height: 1.25;
        }

        .dallas-page .dallas-moment-card p {
            flex: 1 1 auto;
            margin-bottom: 18px;
            font-size: 14px;
            line-height: 1.65;
        }

        .dallas-page .dallas-moment-card a {
            display: inline-flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            width: 100%;
            min-height: 42px;
            margin-top: auto;
            padding: 8px 8px 8px 12px;
            border: 1px solid rgba(190, 21, 50, .16);
            border-radius: 8px;
            background: var(--dallas-warm);
            color: var(--dallas-red);
            font-weight: 900;
            text-decoration: none;
            transition: background-color .2s ease, border-color .2s ease;
        }

        .dallas-page .dallas-moment-card a:hover,
        .dallas-page .dallas-moment-card a:focus {
            border-color: rgba(190, 21, 50, .28);
            background: #fff;
        }

        .dallas-page .dallas-moment-card a i {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex: 0 0 32px;
            width: 32px;
            height: 32px;
            border-radius: 8px;
            background: var(--dallas-blue);
            color: #fff;
            font-size: 12px;
        }

        .dallas-page .dallas-counter {
            background: #fff;
        }

        .dallas-page .dallas-counter-layout {
            display: grid;
            grid-template-columns: minmax(280px, .32fr) minmax(0, .68fr);
            gap: 26px;
            align-items: start;
        }

        .dallas-page .dallas-counter-copy {
            position: sticky;
            top: 110px;
            padding: 30px;
            border: 1px solid rgba(26, 77, 143, .16);
            border-radius: 8px;
            background:
                radial-gradient(circle at 100% 0, rgba(255, 255, 255, .12), transparent 34%),
                linear-gradient(135deg, var(--dallas-blue), #0f315d);
            color: #fff;
            box-shadow: 0 18px 42px rgba(20, 33, 61, .16);
        }

        .dallas-page .dallas-counter-copy h2,
        .dallas-page .dallas-counter-copy p {
            color: #fff;
        }

        .dallas-page .dallas-counter-copy .dallas-page .dallas-kicker {
            border-color: rgba(255, 255, 255, .28);
        }

        .dallas-page .dallas-product-panel {
            padding: 18px;
            border: 1px solid rgba(26, 77, 143, .1);
            border-radius: 8px;
            background:
                linear-gradient(180deg, #fff 0%, #F7F9FC 100%);
            box-shadow: 0 14px 34px rgba(20, 33, 61, .08);
        }

        .dallas-page .dallas-product-panel-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            margin-bottom: 16px;
            padding: 2px 2px 14px;
            border-bottom: 1px solid rgba(20, 33, 61, .08);
        }

        .dallas-page .dallas-product-panel-head h3 {
            margin: 0;
            font-size: 22px;
            line-height: 1.25;
        }

        .dallas-page .dallas-product-panel-head span {
            display: inline-flex;
            align-items: center;
            gap: 7px;
            margin-bottom: 6px;
            color: var(--dallas-red);
            font-size: 12px;
            font-weight: 900;
            text-transform: uppercase;
        }

        .dallas-page .dallas-product-panel-head a {
            flex: 0 0 auto;
            color: var(--dallas-blue);
            font-weight: 900;
            text-decoration: none;
        }

        .dallas-page .dallas-product-lane {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 16px;
            overflow: visible;
            padding: 0;
        }

        .dallas-page .dallas-product-shell {
            height: 100%;
            min-width: 0;
            border: 1px solid var(--dallas-line);
            border-radius: 8px;
            background: #fff;
            box-shadow: 0 10px 24px rgba(20, 33, 61, .07);
            overflow: hidden;
            transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
        }

        .dallas-page .dallas-product-shell:hover,
        .dallas-page .dallas-product-shell:focus-within {
            transform: translateY(-4px);
            border-color: rgba(26, 77, 143, .18);
            box-shadow: var(--dallas-shadow);
        }

        .dallas-page .dallas-product-shell .vertical-product-card {
            display: flex;
            flex-direction: column;
            height: 100%;
            padding: 10px;
            border: 0 !important;
            box-shadow: none !important;
            background: transparent !important;
        }

        .dallas-page .dallas-product-shell .thumbnail {
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 154px;
            margin: 0 0 12px !important;
            padding: 12px;
            border-radius: 8px !important;
            background: #F8FAFE !important;
        }

        .dallas-page .dallas-product-shell .thumbnail > a {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            min-height: 130px;
        }

        .dallas-page .dallas-product-shell .thumbnail > a img {
            max-height: 130px;
            object-fit: contain;
        }

        .dallas-page .dallas-product-shell .product-btns {
            top: 10px !important;
            right: 10px !important;
            z-index: 3;
            align-items: center !important;
            gap: 8px !important;
        }

        .dallas-page .dallas-product-shell .product-btns .rounded-btn {
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            flex: 0 0 34px !important;
            width: 34px !important;
            min-width: 34px !important;
            max-width: 34px !important;
            height: 34px !important;
            min-height: 34px !important;
            max-height: 34px !important;
            padding: 0 !important;
            border: 1px solid rgba(26, 77, 143, .18) !important;
            border-radius: 50% !important;
            background: #fff !important;
            color: var(--dallas-blue) !important;
            font-size: 14px !important;
            line-height: 1 !important;
            box-shadow: 0 8px 18px rgba(20, 33, 61, .09);
        }

        .dallas-page .dallas-product-shell .product-btns .rounded-btn:hover,
        .dallas-page .dallas-product-shell .product-btns .rounded-btn:focus,
        .dallas-page .dallas-product-shell .product-btns .rounded-btn.active {
            border-color: var(--dallas-red) !important;
            color: var(--dallas-red) !important;
            transform: translateY(-1px);
        }

        .dallas-page .dallas-product-shell .product-btns .rounded-btn i {
            display: block;
            margin: 0 !important;
            line-height: 1 !important;
        }

        .dallas-page .dallas-product-shell .card-content {
            display: flex;
            flex: 1 1 auto;
            flex-direction: column;
            padding: 0 !important;
        }

        .dallas-page .dallas-product-shell .card-content > a.fs-xxs {
            margin-bottom: 7px !important;
            color: #1A7D5C !important;
            font-size: 11px !important;
            line-height: 1.25;
        }

        .dallas-page .dallas-product-shell .card-title {
            min-height: 42px;
            margin-bottom: 9px !important;
            color: var(--dallas-ink) !important;
            font-size: 14px;
            line-height: 1.35;
        }

        .dallas-page .dallas-product-shell .cro-product-price-row {
            display: flex;
            align-items: baseline;
            flex-wrap: wrap;
            gap: 6px;
            min-height: 30px;
            margin-bottom: 10px;
        }

        .dallas-page .dallas-product-shell .deleted,
        .dallas-page .dallas-product-shell .cro-product-old-price {
            color: #7A8798 !important;
            font-size: 12px;
        }

        .dallas-page .dallas-product-shell .price,
        .dallas-page .dallas-product-shell .cro-product-current-price {
            margin: 0;
            color: var(--dallas-red) !important;
            font-size: 18px;
            line-height: 1.2;
        }

        .dallas-page .dallas-product-shell .detail-info {
            margin-top: auto;
            margin-bottom: 0 !important;
        }

        .dallas-page .dallas-product-shell .product-qty {
            height: 36px;
            overflow: hidden;
            border: 1px solid rgba(26, 77, 143, .1);
            border-radius: 8px;
            background: #F7F9FC;
        }

        .dallas-page .dallas-product-shell .change-qty,
        .dallas-page .dallas-product-shell .qty-val {
            height: 34px !important;
            border: 0 !important;
            background: transparent !important;
        }

        .dallas-page .dallas-product-shell .change-qty {
            color: var(--dallas-blue) !important;
            font-weight: 900;
        }

        .dallas-page .dallas-product-shell .qty-val {
            color: var(--dallas-ink) !important;
            font-weight: 900;
            text-align: center;
        }

        .dallas-page .dallas-product-shell .add-cart,
        .dallas-page .dallas-product-shell a.btn.btn-secondary,
        .dallas-page .dallas-product-shell .verified-badge {
            border-color: var(--dallas-blue) !important;
            background: var(--dallas-blue) !important;
            color: #fff !important;
        }

        .dallas-page .dallas-product-shell .add-cart,
        .dallas-page .dallas-product-shell a.btn.btn-secondary {
            min-height: 38px;
            border-radius: 8px !important;
            font-weight: 900;
        }

        .dallas-page .dallas-delivery-board {
            background: var(--dallas-soft);
        }

        .dallas-page .dallas-delivery-grid {
            display: grid;
            grid-template-columns: minmax(0, 1fr) minmax(280px, .86fr);
            gap: 24px;
        }

        .dallas-page .dallas-delivery-card,
        .dallas-page .dallas-neighborhood-card,
        .dallas-page .dallas-faq-card,
        .dallas-page .dallas-link-card {
            border: 1px solid var(--dallas-line);
            border-radius: 8px;
            background: #fff;
            box-shadow: 0 12px 28px rgba(20, 33, 61, .07);
        }

        .dallas-page .dallas-delivery-card {
            padding: 28px;
        }

        .dallas-page .dallas-delivery-step {
            display: grid;
            grid-template-columns: 44px minmax(0, 1fr);
            gap: 14px;
            padding: 18px 0;
            border-top: 1px solid var(--dallas-line);
        }

        .dallas-page .dallas-delivery-step:first-of-type {
            border-top: 0;
        }

        .dallas-page .dallas-delivery-step span {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 44px;
            height: 44px;
            border-radius: 8px;
            background: var(--dallas-red);
            color: #fff;
            font-weight: 900;
        }

        .dallas-page .dallas-neighborhood-card {
            padding: 24px;
            background:
                linear-gradient(180deg, #fff, #F8FAFE);
        }

        .dallas-page .dallas-neighborhood-list {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            margin-top: 18px;
        }

        .dallas-page .dallas-neighborhood-list span {
            display: inline-flex;
            align-items: center;
            min-height: 34px;
            padding: 8px 11px;
            border: 1px solid rgba(26, 77, 143, .16);
            border-radius: 8px;
            background: #fff;
            color: var(--dallas-blue);
            font-size: 12px;
            font-weight: 900;
        }

        .dallas-page .dallas-smarties-strip {
            background:
                linear-gradient(180deg, #fff 0%, #F7F9FC 100%);
        }

        .dallas-page .dallas-strip-inner {
            position: relative;
            isolation: isolate;
            border: 1px solid rgba(26, 77, 143, .12);
            border-radius: 8px;
            background:
                radial-gradient(circle at 10% 16%, rgba(190, 21, 50, .13), transparent 28%),
                radial-gradient(circle at 94% 78%, rgba(26, 77, 143, .12), transparent 30%),
                linear-gradient(135deg, #fff 0%, #fff 52%, #F7F9FC 100%);
            box-shadow: 0 22px 55px rgba(20, 33, 61, .12);
            overflow: hidden;
        }

        .dallas-page .dallas-strip-inner::before {
            content: "";
            position: absolute;
            inset: 22px 50% 22px auto;
            width: 1px;
            background: linear-gradient(180deg, transparent, rgba(26, 77, 143, .16), transparent);
            pointer-events: none;
        }

        .dallas-page .dallas-strip-inner::after {
            content: "SMARTIES";
            position: absolute;
            right: 28px;
            bottom: 12px;
            z-index: -1;
            color: rgba(26, 77, 143, .05);
            font-size: clamp(3.8rem, 10vw, 8.5rem);
            font-weight: 900;
            line-height: .8;
            letter-spacing: 0;
            pointer-events: none;
        }

        .dallas-page .dallas-strip-media {
            position: relative;
            display: block;
            height: 100%;
            min-height: 390px;
            padding: 24px;
            background:
                linear-gradient(135deg, rgba(26, 77, 143, .1), rgba(190, 21, 50, .08)),
                #F8FAFE;
            text-decoration: none;
        }

        .dallas-page .dallas-strip-media::before {
            content: "";
            position: absolute;
            inset: 24px;
            border: 1px solid rgba(255, 255, 255, .58);
            border-radius: 8px;
            pointer-events: none;
            z-index: 2;
        }

        .dallas-page .dallas-strip-media img {
            position: relative;
            z-index: 1;
            width: 100%;
            height: 100%;
            min-height: 342px;
            border-radius: 8px;
            object-fit: cover;
            box-shadow: 0 18px 40px rgba(20, 33, 61, .18);
        }

        .dallas-page .dallas-strip-badge {
            position: absolute;
            left: 40px;
            top: 40px;
            z-index: 3;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            min-height: 34px;
            padding: 7px 12px;
            border-radius: 8px;
            background: #fff;
            color: var(--dallas-red);
            font-size: 12px;
            font-weight: 900;
            text-transform: uppercase;
            box-shadow: 0 12px 26px rgba(20, 33, 61, .16);
        }

        .dallas-page .dallas-strip-copy {
            position: relative;
            z-index: 1;
            padding: 46px 48px;
        }

        .dallas-page .dallas-strip-copy h2 {
            max-width: 620px;
            font-size: clamp(30px, 3.2vw, 42px);
            line-height: 1.1;
        }

        .dallas-page .dallas-strip-copy p {
            max-width: 650px;
            color: #5C6879;
            font-size: 16px;
        }

        .dallas-page .dallas-smarties-points {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 10px;
            margin: 0 0 26px;
            padding: 0;
            list-style: none;
        }

        .dallas-page .dallas-smarties-points li {
            display: flex;
            align-items: center;
            gap: 9px;
            min-height: 42px;
            padding: 10px 12px;
            border: 1px solid rgba(26, 77, 143, .11);
            border-radius: 8px;
            background: rgba(255, 255, 255, .82);
            color: var(--dallas-ink);
            font-size: 13px;
            font-weight: 900;
        }

        .dallas-page .dallas-smarties-points i {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex: 0 0 22px;
            width: 22px;
            height: 22px;
            border-radius: 8px;
            background: rgba(190, 21, 50, .1);
            color: var(--dallas-red);
            font-size: 11px;
        }

        .dallas-page .dallas-strip-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
        }

        .dallas-page .dallas-faq-links {
            background: var(--dallas-soft);
        }

        .dallas-page .dallas-faq-card {
            padding: 24px;
        }

        .dallas-page .dallas-faq-links .accordion-item {
            border: 1px solid var(--dallas-line);
            border-radius: 8px !important;
            overflow: hidden;
        }

        .dallas-page .dallas-faq-links .accordion-item + .accordion-item {
            margin-top: 12px;
        }

        .dallas-page .dallas-faq-links .accordion-button {
            color: var(--dallas-ink);
            font-weight: 900;
            box-shadow: none;
        }

        .dallas-page .dallas-faq-links .accordion-button:not(.collapsed) {
            background: #fff5f7;
            color: var(--dallas-red);
        }

        .dallas-page .dallas-link-card {
            padding: 24px;
        }

        .dallas-page .dallas-link-card a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            padding: 12px 0;
            border-bottom: 1px solid var(--dallas-line);
            color: var(--dallas-ink);
            font-weight: 900;
            text-decoration: none;
        }

        .dallas-page .dallas-link-card a:last-child {
            border-bottom: 0;
        }

        .dallas-page .dallas-link-card i {
            color: var(--dallas-red);
        }

        .dallas-page .dallas-final {
            padding: 56px 0;
            background: var(--dallas-red);
            color: #fff;
        }

        .dallas-page .dallas-final h2,
        .dallas-page .dallas-final p {
            color: #fff;
        }

        @media (min-width: 768px) {
            .dallas-page .dallas-hero h1 {
                font-size: 58px;
            }
        }

        @media (max-width: 1199.98px) {
            .dallas-page .dallas-route-shell,
            .dallas-page .dallas-counter-layout,
            .dallas-page .dallas-delivery-grid {
                grid-template-columns: 1fr;
            }

            .dallas-page .dallas-counter-copy,
            .dallas-page .dallas-route-note {
                position: static;
            }

            .dallas-page .dallas-product-lane {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }
        }

        @media (max-width: 991.98px) {
            .dallas-page .dallas-hero-copy {
                padding: 40px 30px 20px;
            }

            .dallas-page .dallas-ticket-wrap {
                padding: 0 30px 34px;
                background: transparent;
            }

            .dallas-page .dallas-route-grid {
                grid-template-columns: 1fr;
            }

            .dallas-page .dallas-product-lane {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }

        @media (max-width: 767.98px) {
            .dallas-page .dallas-section {
                padding: 54px 0;
            }

            .dallas-page .dallas-hero {
                padding-top: 38px;
            }

            .dallas-page .dallas-hero-copy {
                padding: 34px 20px 18px 26px;
            }

            .dallas-page .dallas-hero h1 {
                font-size: 38px;
            }

            .dallas-page .dallas-hero p {
                font-size: 16px;
            }

            .dallas-page .dallas-ticket-wrap {
                padding: 0 16px 26px 22px;
            }

            .dallas-page .dallas-ticket {
                padding: 20px;
            }

            .dallas-page .dallas-mini-products {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

            .dallas-page .dallas-mini-products a {
                height: 88px;
            }

            .dallas-page .dallas-route-card {
                grid-template-columns: 62px minmax(0, 1fr);
                min-height: 110px;
                padding: 14px;
            }

            .dallas-page .dallas-route-img {
                width: 62px;
                height: 62px;
            }

            .dallas-page .dallas-product-panel {
                padding: 12px;
            }

            .dallas-page .dallas-product-panel-head {
                align-items: flex-start;
                flex-direction: column;
            }

            .dallas-page .dallas-product-panel-head h3 {
                font-size: 19px;
            }

            .dallas-page .dallas-product-lane {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 12px;
            }

            .dallas-page .dallas-product-shell .vertical-product-card {
                padding: 8px;
            }

            .dallas-page .dallas-product-shell .thumbnail {
                min-height: 128px;
                padding: 10px;
            }

            .dallas-page .dallas-product-shell .thumbnail > a {
                min-height: 108px;
            }

            .dallas-page .dallas-product-shell .thumbnail > a img {
                max-height: 108px;
            }

            .dallas-page .dallas-product-shell .card-title {
                min-height: 40px;
                font-size: 13px;
            }

            .dallas-page .dallas-strip-inner::before {
                display: none;
            }

            .dallas-page .dallas-strip-media {
                min-height: 290px;
                padding: 14px;
            }

            .dallas-page .dallas-strip-media::before {
                inset: 14px;
            }

            .dallas-page .dallas-strip-media img {
                min-height: 260px;
            }

            .dallas-page .dallas-strip-badge {
                left: 26px;
                top: 26px;
            }

            .dallas-page .dallas-strip-copy,
            .dallas-page .dallas-delivery-card,
            .dallas-page .dallas-neighborhood-card,
            .dallas-page .dallas-faq-card,
            .dallas-page .dallas-link-card {
                padding: 20px;
            }

            .dallas-page .dallas-smarties-points {
                grid-template-columns: 1fr;
            }
        }

        @media (max-width: 429.98px) {
            .dallas-page .dallas-product-lane {
                grid-template-columns: 1fr;
            }
        }

/* Austin city landing page - scoped to .austin-page */
.austin-page{--red:#BE1532;--blue:#1A4D8F;--ink:#14213D;--muted:#647386;--soft:#F6F8FB;--warm:#FFF5F7;--line:rgba(20,33,61,.12);--shadow:0 18px 42px rgba(20,33,61,.12);background:#fff;color:var(--ink);overflow-x:hidden}.austin-page h1,.austin-page h2,.austin-page h3,.austin-page h4,.austin-page h5{color:var(--ink);letter-spacing:0}.austin-page p{color:var(--muted);line-height:1.72}.austin-page .austin-section{padding:76px 0}.austin-page .austin-kicker{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:7px 12px;border:1px solid rgba(190,21,50,.22);border-radius:8px;background:#fff;color:var(--red);font-size:12px;font-weight:900;text-transform:uppercase}.austin-page .austin-btn-primary, .austin-page .austin-btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border-radius:8px!important;font-weight:900;text-transform:none;transition:transform .2s ease,box-shadow .2s ease}.austin-page .austin-btn-primary{border-color:var(--red)!important;background:var(--red)!important;color:#fff!important;box-shadow:0 14px 28px rgba(190,21,50,.24)}.austin-page .austin-btn-secondary{border:1px solid rgba(26,77,143,.2)!important;background:#fff!important;color:var(--blue)!important}.austin-page .austin-btn-primary:hover, .austin-page .austin-btn-primary:focus, .austin-page .austin-btn-secondary:hover, .austin-page .austin-btn-secondary:focus{transform:translateY(-2px);box-shadow:var(--shadow)}
        .austin-page .austin-hero{padding:64px 0 42px;background:linear-gradient(180deg,#fff 0%,#F8FAFE 100%)}.austin-page .austin-hero-shell{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.72fr);min-height:520px;border:1px solid rgba(26,77,143,.12);border-radius:8px;overflow:hidden;background:radial-gradient(circle at 6% 12%,rgba(190,21,50,.12),transparent 30%),radial-gradient(circle at 86% 88%,rgba(26,77,143,.14),transparent 34%),linear-gradient(135deg,#fff 0%,#fff 50%,#F3F7FC 100%);box-shadow:var(--shadow)}.austin-page .austin-hero-shell:before{content:"ATX";position:absolute;right:clamp(18px,5vw,70px);top:24px;z-index:-1;color:rgba(26,77,143,.055);font-size:clamp(4.6rem,12vw,11rem);font-weight:900;line-height:.8;letter-spacing:0}.austin-page .austin-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(32px,5vw,62px)}.austin-page .austin-hero h1{max-width:780px;margin-bottom:22px;font-size:clamp(42px,5.2vw,72px);line-height:1.02;overflow-wrap:break-word}.austin-page .austin-hero h1 mark{padding:0;background:transparent!important;color:var(--red)!important}.austin-page .austin-hero-copy p{max-width:680px;font-size:18px}.austin-page .austin-hero-actions, .austin-page .austin-strip-actions{display:flex;flex-wrap:wrap;gap:12px}.austin-page .austin-quick-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.austin-page .austin-quick-tags a{display:inline-flex;align-items:center;min-height:34px;padding:8px 11px;border:1px solid rgba(26,77,143,.13);border-radius:8px;background:#fff;color:var(--blue);font-size:12px;font-weight:900;text-decoration:none}
        .austin-page .austin-finder{display:flex;flex-direction:column;justify-content:center;min-height:100%;padding:clamp(24px,4vw,42px);border-left:1px solid rgba(26,77,143,.12);background:linear-gradient(180deg,rgba(255,255,255,.68),rgba(246,248,251,.92))}.austin-page .austin-finder-card{padding:24px;border:1px solid rgba(20,33,61,.11);border-radius:8px;background:#fff;box-shadow:0 16px 34px rgba(20,33,61,.1)}.austin-page .austin-finder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px dashed rgba(20,33,61,.2)}.austin-page .austin-finder-head span{color:var(--red);font-size:12px;font-weight:900;text-transform:uppercase}.austin-page .austin-finder-step{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;padding:16px 0;border-bottom:1px solid rgba(20,33,61,.08)}.austin-page .austin-finder-step:last-of-type{border-bottom:0}.austin-page .austin-finder-step b{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:8px;background:var(--blue);color:#fff;font-size:13px}.austin-page .austin-finder-step h3{margin:0 0 4px;font-size:17px}.austin-page .austin-finder-step p{margin:0;font-size:13px;line-height:1.55}.austin-page .austin-hero-products{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.austin-page .austin-hero-products a{display:flex;align-items:center;justify-content:center;height:94px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#F8FAFE}.austin-page .austin-hero-products img{max-width:100%;max-height:74px;object-fit:contain}
        .austin-page .austin-lab-grid, .austin-page .austin-aisle-shell, .austin-page .austin-gift-shell, .austin-page .austin-faq-layout{display:grid;grid-template-columns:minmax(280px,.4fr) minmax(0,.6fr);gap:24px;align-items:stretch}.austin-page .austin-lab-note{padding:30px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,var(--blue),#0f315d);color:#fff;box-shadow:0 16px 34px rgba(20,33,61,.12)}.austin-page .austin-lab-note h2, .austin-page .austin-lab-note p{color:#fff}.austin-page .austin-lab-note .austin-page .austin-kicker{border-color:rgba(255,255,255,.26)}.austin-page .austin-taste-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.austin-page .austin-taste-card{position:relative;min-height:204px;padding:22px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(20,33,61,.07);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.austin-page .austin-taste-card:hover, .austin-page .austin-taste-card:focus-within{transform:translateY(-4px);border-color:rgba(190,21,50,.24);box-shadow:var(--shadow)}.austin-page .austin-taste-card i{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:16px;border-radius:8px;background:var(--warm);color:var(--red)}.austin-page .austin-taste-card h3{font-size:20px}.austin-page .austin-taste-card p{margin-bottom:16px;font-size:14px}.austin-page .austin-taste-card a{color:var(--blue);font-weight:900;text-decoration:none}        .austin-page .austin-aisle-index, .austin-page .austin-buying-guide, .austin-page .austin-faq-section{background:var(--soft)}.austin-page .austin-aisle-list{display:grid;gap:12px}.austin-page .austin-aisle-row{display:grid;grid-template-columns:58px minmax(0,1fr) 42px;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;text-decoration:none;box-shadow:0 10px 24px rgba(20,33,61,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.austin-page .austin-aisle-row:hover, .austin-page .austin-aisle-row:focus{transform:translateX(4px);border-color:rgba(26,77,143,.2);box-shadow:var(--shadow)}.austin-page .austin-aisle-icon, .austin-page .austin-aisle-row b{display:inline-flex;align-items:center;justify-content:center;border-radius:8px}.austin-page .austin-aisle-icon{width:58px;height:58px;background:var(--warm);color:var(--red);font-size:20px}.austin-page .austin-aisle-row small{color:var(--red);font-size:11px;font-weight:900;text-transform:uppercase}.austin-page .austin-aisle-row h3{margin:4px 0 0;font-size:18px}.austin-page .austin-aisle-row b{width:42px;height:42px;background:var(--blue);color:#fff}.austin-page .austin-aisle-note{position:sticky;top:110px;align-self:start;padding:26px;border:1px solid rgba(26,77,143,.12);border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(20,33,61,.07)}.austin-page .austin-aisle-note ul{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none}.austin-page .austin-aisle-note li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;color:var(--ink);font-size:14px;font-weight:800}.austin-page .austin-aisle-note li i{color:var(--red);line-height:1.7}
        .austin-page .austin-cart-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end;margin-bottom:24px}.austin-page .austin-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.austin-page .austin-product-card{height:100%;min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 24px rgba(20,33,61,.07);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.austin-page .austin-product-card:hover, .austin-page .austin-product-card:focus-within{transform:translateY(-4px);border-color:rgba(26,77,143,.18);box-shadow:var(--shadow)}.austin-page .austin-product-card .vertical-product-card{display:flex;flex-direction:column;height:100%;padding:10px;border:0!important;box-shadow:none!important;background:transparent!important}.austin-page .austin-product-card .thumbnail{display:flex;align-items:center;justify-content:center;min-height:176px;margin:0 0 12px!important;padding:4px;border-radius:8px!important;background:#F8FAFE!important;overflow:hidden}.austin-page .austin-product-card .thumbnail>a{display:flex;align-items:center;justify-content:center;width:100%;min-height:166px}.austin-page .austin-product-card .thumbnail>a img{width:auto;max-width:100%;max-height:80%;object-fit:contain;transform:scale(1.2);transform-origin:center}.austin-page .austin-product-card .product-btns{top:10px!important;right:10px!important;z-index:3;align-items:center!important;gap:8px!important}.austin-page .austin-product-card .product-btns .rounded-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 34px!important;width:34px!important;min-width:34px!important;max-width:34px!important;height:34px!important;min-height:34px!important;max-height:34px!important;padding:0!important;border:1px solid rgba(26,77,143,.18)!important;border-radius:50%!important;background:#fff!important;color:var(--blue)!important;font-size:14px!important;line-height:1!important;box-shadow:0 8px 18px rgba(20,33,61,.09)}.austin-page .austin-product-card .product-btns .rounded-btn:hover, .austin-page .austin-product-card .product-btns .rounded-btn:focus, .austin-page .austin-product-card .product-btns .rounded-btn.active{border-color:var(--red)!important;color:var(--red)!important}.austin-page .austin-product-card .product-btns .rounded-btn i{display:block;margin:0!important;line-height:1!important}.austin-page .austin-product-card .card-content{display:flex;flex:1 1 auto;flex-direction:column;padding:0!important}.austin-page .austin-product-card .card-content>a.fs-xxs{margin-bottom:7px!important;color:#1A7D5C!important;font-size:11px!important;line-height:1.25}.austin-page .austin-product-card .card-title{min-height:42px;margin-bottom:9px!important;color:var(--ink)!important;font-size:14px;line-height:1.35}.austin-page .austin-product-card .cro-product-price-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;min-height:30px;margin-bottom:10px}.austin-page .austin-product-card .deleted, .austin-page .austin-product-card .cro-product-old-price{color:#7A8798!important;font-size:12px}.austin-page .austin-product-card .price, .austin-page .austin-product-card .cro-product-current-price{margin:0;color:var(--red)!important;font-size:18px;line-height:1.2}.austin-page .austin-product-card .detail-info{margin-top:auto;margin-bottom:0!important}.austin-page .austin-product-card .product-qty{height:36px;overflow:hidden;border:1px solid rgba(26,77,143,.1);border-radius:8px;background:#F7F9FC}.austin-page .austin-product-card .change-qty, .austin-page .austin-product-card .qty-val{height:34px!important;border:0!important;background:transparent!important}.austin-page .austin-product-card .change-qty{color:var(--blue)!important;font-weight:900}.austin-page .austin-product-card .qty-val{color:var(--ink)!important;font-weight:900;text-align:center}.austin-page .austin-product-card .add-cart, .austin-page .austin-product-card a.btn.btn-secondary, .austin-page .austin-product-card .verified-badge{border-color:var(--blue)!important;background:var(--blue)!important;color:#fff!important}.austin-page .austin-product-card .add-cart, .austin-page .austin-product-card a.btn.btn-secondary{min-height:38px;border-radius:8px!important;font-weight:900}
        .austin-page .austin-guide-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.austin-page .austin-guide-card, .austin-page .austin-link-panel, .austin-page .austin-faq-note, .austin-page .austin-faq-card, .austin-page .austin-blog-card{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 24px rgba(20,33,61,.06)}.austin-page .austin-guide-card{padding:20px}.austin-page .austin-guide-card span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:14px;border-radius:8px;background:var(--blue);color:#fff;font-weight:900}.austin-page .austin-guide-card h3{font-size:18px}.austin-page .austin-guide-card p{margin-bottom:0;font-size:14px}.austin-page .austin-gift-panel{position:relative;overflow:hidden;padding:32px;border:1px solid rgba(26,77,143,.12);border-radius:8px;background:radial-gradient(circle at 90% 8%,rgba(190,21,50,.12),transparent 30%),linear-gradient(135deg,#fff 0%,#F8FAFE 100%);box-shadow:var(--shadow)}.austin-page .austin-gift-ideas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}.austin-page .austin-gift-ideas a{display:flex;flex-direction:column;justify-content:space-between;min-height:128px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);text-decoration:none}.austin-page .austin-gift-ideas small{color:var(--red);font-size:11px;font-weight:900;text-transform:uppercase}.austin-page .austin-gift-ideas b{margin-top:8px;font-size:16px;line-height:1.3}.austin-page .austin-link-panel, .austin-page .austin-faq-note, .austin-page .austin-faq-card{padding:24px}.austin-page .austin-link-panel a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink);font-weight:900;text-decoration:none}.austin-page .austin-link-panel a:last-child{border-bottom:0}.austin-page .austin-link-panel i{color:var(--red)}.austin-page .austin-faq-card .accordion-item{border:1px solid var(--line);border-radius:8px!important;overflow:hidden}.austin-page .austin-faq-card .accordion-item+.accordion-item{margin-top:12px}.austin-page .austin-faq-card .accordion-button{color:var(--ink);font-weight:900;box-shadow:none}.austin-page .austin-faq-card .accordion-button:not(.collapsed){background:var(--warm);color:var(--red)}.austin-page .austin-blog-card{height:100%;overflow:hidden}.austin-page .austin-blog-card img{width:100%;height:170px;object-fit:cover;background:#F8FAFE}.austin-page .austin-blog-body{padding:18px}.austin-page .austin-blog-card small{color:var(--red);font-weight:900;text-transform:uppercase}.austin-page .austin-final{padding:58px 0;background:var(--red);color:#fff}.austin-page .austin-final h2, .austin-page .austin-final p{color:#fff}
        @media (max-width:1199.98px){.austin-page .austin-hero-shell, .austin-page .austin-lab-grid, .austin-page .austin-aisle-shell, .austin-page .austin-gift-shell, .austin-page .austin-faq-layout{grid-template-columns:1fr}.austin-page .austin-finder{border-left:0;border-top:1px solid rgba(26,77,143,.12)}.austin-page .austin-aisle-note{position:static}.austin-page .austin-product-grid, .austin-page .austin-guide-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:991.98px){.austin-page .austin-taste-grid, .austin-page .austin-gift-ideas{grid-template-columns:1fr}}@media (max-width:767.98px){.austin-page .austin-section{padding:54px 0}.austin-page .austin-hero{padding-top:34px}.austin-page .austin-hero-copy, .austin-page .austin-finder{padding:22px}.austin-page .austin-hero h1{font-size:40px}.austin-page .austin-hero-copy p{font-size:16px}.austin-page .austin-hero-actions .btn, .austin-page .austin-strip-actions .btn{width:100%}.austin-page .austin-cart-head{grid-template-columns:1fr}.austin-page .austin-product-grid, .austin-page .austin-guide-strip{grid-template-columns:1fr}.austin-page .austin-product-card .thumbnail{min-height:158px;padding:4px}.austin-page .austin-product-card .thumbnail>a{min-height:148px}.austin-page .austin-product-card .thumbnail>a img{max-height:146px;max-width:100%;transform:scale(1.16)}.austin-page .austin-aisle-row{grid-template-columns:50px minmax(0,1fr) 38px;padding:14px}.austin-page .austin-aisle-icon{width:50px;height:50px}.austin-page .austin-lab-note, .austin-page .austin-gift-panel, .austin-page .austin-link-panel, .austin-page .austin-faq-note, .austin-page .austin-faq-card{padding:20px}}
        .austin-page .austin-aisle-shell{grid-template-columns:minmax(340px,.72fr) minmax(420px,1fr);align-items:stretch}.austin-page .austin-aisle-note{height:100%;min-height:430px;display:flex;flex-direction:column;justify-content:space-between;padding:28px;background:radial-gradient(circle at 92% 10%,rgba(190,21,50,.1),transparent 30%),linear-gradient(135deg,#fff 0%,#F8FAFE 100%)}.austin-page .austin-aisle-note-head{padding-bottom:18px;border-bottom:1px solid rgba(20,33,61,.1)}.austin-page .austin-aisle-note-head p{max-width:620px}.austin-page .austin-aisle-mix-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.austin-page .austin-aisle-mix{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:center;min-height:86px;padding:14px;border:1px solid rgba(26,77,143,.11);border-radius:8px;background:#fff;box-shadow:0 8px 18px rgba(20,33,61,.05)}.austin-page .austin-aisle-mix i{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:8px;background:var(--warm);color:var(--red)}.austin-page .austin-aisle-mix small{display:block;margin-bottom:2px;color:var(--red);font-size:11px;font-weight:900;text-transform:uppercase}.austin-page .austin-aisle-mix b{display:block;color:var(--ink);font-size:14px;line-height:1.25}.austin-page .austin-aisle-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:18px;border-top:1px solid rgba(20,33,61,.1)}.austin-page .austin-aisle-cta p{margin:0;font-size:14px;line-height:1.55}@media (max-width:1199.98px){.austin-page .austin-aisle-shell{grid-template-columns:1fr}.austin-page .austin-aisle-note{min-height:0}}@media (max-width:767.98px){.austin-page .austin-aisle-mix-grid{grid-template-columns:1fr}.austin-page .austin-aisle-cta{align-items:flex-start;flex-direction:column}.austin-page .austin-aisle-cta .btn{width:100%}}

/* San Antonio city landing page - scoped to .sanantonio-page */
.sanantonio-page {
    --san-red: #BE1532;
    --san-blue: #1A4D8F;
    --san-ink: #14213D;
    --san-muted: #637083;
    --san-soft: #F7F9FC;
    --san-warm: #FFF4E5;
    --san-line: rgba(20, 33, 61, .1);
    --san-shadow: 0 18px 42px rgba(20, 33, 61, .12);
    color: var(--san-ink);
    background: #fff;
    overflow-x: hidden;
}

.sanantonio-page h1,
.sanantonio-page h2,
.sanantonio-page h3,
.sanantonio-page h4,
.sanantonio-page h5 {
    color: var(--san-ink);
    letter-spacing: 0;
}

.sanantonio-page p {
    color: var(--san-muted);
    line-height: 1.68;
}

.sanantonio-page .san-section {
    padding: 70px 0;
}

.sanantonio-page .san-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 7px 12px;
    border: 1px solid rgba(190, 21, 50, .18);
    border-radius: 8px;
    background: #fff;
    color: var(--san-red);
    font-size: 12px;
    font-weight: 900;
    line-height: 1.1;
    text-transform: uppercase;
}

.sanantonio-page .san-btn-primary,
.sanantonio-page .san-btn-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    border-radius: 8px !important;
    font-weight: 900;
    text-transform: none;
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, border-color .2s ease;
}

.sanantonio-page .san-btn-primary {
    border-color: var(--san-red) !important;
    background: var(--san-red) !important;
    color: #fff !important;
    box-shadow: 0 14px 26px rgba(190, 21, 50, .22);
}

.sanantonio-page .san-btn-secondary {
    border: 1px solid rgba(26, 77, 143, .18) !important;
    background: #fff !important;
    color: var(--san-blue) !important;
}

.sanantonio-page .san-btn-primary:hover,
.sanantonio-page .san-btn-primary:focus,
.sanantonio-page .san-btn-secondary:hover,
.sanantonio-page .san-btn-secondary:focus {
    transform: translateY(-2px);
    box-shadow: var(--san-shadow);
}

.sanantonio-page .san-hero {
    position: relative;
    padding: 48px 0 54px;
    background:
        radial-gradient(circle at 12% 16%, rgba(255, 244, 229, .95), transparent 30%),
        radial-gradient(circle at 88% 10%, rgba(26, 77, 143, .12), transparent 34%),
        linear-gradient(180deg, #fff 0%, #F7F9FC 100%);
}

.sanantonio-page .san-hero::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: var(--san-line);
}

.sanantonio-page .san-hero-board {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(280px, .62fr);
    grid-template-areas:
        "copy picks"
        "products picks";
    gap: 18px;
    align-items: stretch;
}

.sanantonio-page .san-hero-copy {
    grid-area: copy;
    padding: 34px;
    border: 1px solid var(--san-line);
    border-radius: 12px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(255, 255, 255, .84)),
        url("../img/shapes/texture-overlay.png") center / cover no-repeat;
    box-shadow: var(--san-shadow);
}

.sanantonio-page .san-hero-copy h1 {
    max-width: 760px;
    margin-bottom: 18px;
    font-size: clamp(34px, 5vw, 62px);
    line-height: 1.03;
}

.sanantonio-page .san-hero-copy p {
    max-width: 760px;
    margin-bottom: 26px;
    font-size: 17px;
}

.sanantonio-page .san-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.sanantonio-page .san-hero-picks {
    grid-area: picks;
    display: grid;
    gap: 12px;
    align-content: stretch;
    padding: 18px;
    border: 1px solid rgba(26, 77, 143, .16);
    border-radius: 12px;
    background: var(--san-blue);
    box-shadow: var(--san-shadow);
}

.sanantonio-page .san-pick-note {
    padding: 18px;
    border-radius: 10px;
    background: rgba(255, 255, 255, .12);
    color: #fff;
}

.sanantonio-page .san-pick-note small {
    display: block;
    margin-bottom: 6px;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.sanantonio-page .san-pick-note strong {
    display: block;
    color: #fff;
    font-size: 18px;
    line-height: 1.25;
}

.sanantonio-page .san-hero-picks a {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    min-height: 64px;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 10px;
    color: #fff;
    font-weight: 900;
    text-decoration: none;
    transition: background-color .2s ease, transform .2s ease;
}

.sanantonio-page .san-hero-picks a i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 8px;
    background: rgba(255, 255, 255, .16);
    color: #fff;
}

.sanantonio-page .san-hero-picks a:hover,
.sanantonio-page .san-hero-picks a:focus {
    background: rgba(255, 255, 255, .12);
    transform: translateX(3px);
}

.sanantonio-page .san-hero-products {
    grid-area: products;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.sanantonio-page .san-hero-product {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 142px;
    padding: 12px;
    border: 1px solid var(--san-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 26px rgba(20, 33, 61, .08);
}

.sanantonio-page .san-hero-product img {
    max-width: 100%;
    max-height: 118px;
    object-fit: contain;
}

.sanantonio-page .san-section-head {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(280px, .45fr);
    gap: 24px;
    align-items: end;
    margin-bottom: 26px;
}

.sanantonio-page .san-section-head h2 {
    margin: 0;
    font-size: clamp(28px, 3.4vw, 44px);
    line-height: 1.08;
}

.sanantonio-page .san-section-head p {
    margin: 0;
}

.sanantonio-page .san-market-section {
    background: #fff;
}

.sanantonio-page .san-market-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.sanantonio-page .san-market-card {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) 38px;
    gap: 14px;
    align-items: center;
    min-height: 138px;
    padding: 18px;
    border: 1px solid var(--san-line);
    border-radius: 12px;
    background: #fff;
    color: var(--san-ink);
    text-decoration: none;
    box-shadow: 0 10px 24px rgba(20, 33, 61, .06);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.sanantonio-page .san-market-card:hover,
.sanantonio-page .san-market-card:focus {
    border-color: rgba(190, 21, 50, .26);
    transform: translateY(-4px);
    box-shadow: var(--san-shadow);
}

.sanantonio-page .san-market-icon,
.sanantonio-page .san-market-card b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
}

.sanantonio-page .san-market-icon {
    width: 52px;
    height: 52px;
    background: var(--san-warm);
    color: var(--san-red);
}

.sanantonio-page .san-market-copy small {
    display: block;
    margin-bottom: 4px;
    color: var(--san-red);
    font-size: 11px;
    font-style: normal;
    font-weight: 900;
    text-transform: uppercase;
}

.sanantonio-page .san-market-copy strong {
    display: block;
    margin-bottom: 5px;
    color: var(--san-ink);
    font-size: 18px;
    line-height: 1.2;
}

.sanantonio-page .san-market-copy em {
    display: block;
    color: var(--san-muted);
    font-size: 14px;
    font-style: normal;
    line-height: 1.5;
}

.sanantonio-page .san-market-card b {
    width: 38px;
    height: 38px;
    background: var(--san-blue);
    color: #fff;
}

.sanantonio-page .san-box-section {
    background: linear-gradient(180deg, #F7F9FC 0%, #fff 100%);
}

.sanantonio-page .san-box-layout {
    display: grid;
    grid-template-columns: minmax(280px, .45fr) minmax(0, .8fr);
    gap: 20px;
    align-items: stretch;
}

.sanantonio-page .san-box-intro,
.sanantonio-page .san-box-plan {
    border: 1px solid var(--san-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(20, 33, 61, .07);
}

.sanantonio-page .san-box-intro {
    padding: 28px;
}

.sanantonio-page .san-box-intro h2 {
    margin-bottom: 14px;
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.08;
}

.sanantonio-page .san-box-plans {
    display: grid;
    gap: 14px;
}

.sanantonio-page .san-box-plan {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
    padding: 20px;
}

.sanantonio-page .san-box-plan > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 12px;
    background: var(--san-blue);
    color: #fff;
    font-size: 18px;
    font-weight: 900;
}

.sanantonio-page .san-box-plan h3 {
    margin-bottom: 7px;
    font-size: 21px;
}

.sanantonio-page .san-box-plan p {
    margin-bottom: 10px;
}

.sanantonio-page .san-box-plan a {
    color: var(--san-red);
    font-weight: 900;
    text-decoration: none;
}

.sanantonio-page .san-shelf-section {
    background: #fff;
}

.sanantonio-page .san-shelf-top {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    margin-bottom: 24px;
}

.sanantonio-page .san-shelf-top h2 {
    max-width: 780px;
    margin-bottom: 8px;
    font-size: clamp(28px, 3.4vw, 44px);
    line-height: 1.08;
}

.sanantonio-page .san-shelf-top p {
    max-width: 760px;
    margin-bottom: 0;
}

.sanantonio-page .san-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.sanantonio-page .san-product-card .product-box {
    height: 100%;
    border: 1px solid var(--san-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 10px 22px rgba(20, 33, 61, .07);
    overflow: hidden;
}

.sanantonio-page .san-product-card .thumbnail {
    min-height: 190px;
    padding: 6px;
    border-radius: 10px;
    background: #F8FAFE;
}

.sanantonio-page .san-product-card .thumbnail > a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 178px;
}

.sanantonio-page .san-product-card .thumbnail > a img {
    width: auto;
    max-width: 100%;
    max-height: 172px;
    object-fit: contain;
}

.sanantonio-page .san-product-card .product-btns {
    top: 12px;
    right: 10px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: auto;
}

.sanantonio-page .san-product-card .product-btns .rounded-btn,
.sanantonio-page .san-product-card .product-btns a,
.sanantonio-page .san-product-card .product-btns button {
    position: static !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    border-radius: 50% !important;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(20, 33, 61, .14);
}

.sanantonio-page .san-delivery-section {
    background: var(--san-soft);
}

.sanantonio-page .san-delivery-panel {
    display: grid;
    grid-template-columns: minmax(280px, .55fr) minmax(0, .75fr);
    gap: 22px;
    align-items: stretch;
    padding: 24px;
    border: 1px solid var(--san-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: var(--san-shadow);
}

.sanantonio-page .san-delivery-copy {
    padding: 10px;
}

.sanantonio-page .san-delivery-copy h2 {
    margin-bottom: 12px;
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.08;
}

.sanantonio-page .san-checklist {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.sanantonio-page .san-checklist div {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    padding: 16px;
    border: 1px solid rgba(26, 77, 143, .12);
    border-radius: 10px;
    background: linear-gradient(135deg, #fff 0%, #F8FAFE 100%);
    color: var(--san-ink);
    font-weight: 800;
}

.sanantonio-page .san-checklist i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(190, 21, 50, .08);
    color: var(--san-red);
}

.sanantonio-page .san-link-section {
    background: #fff;
}

.sanantonio-page .san-link-rack {
    display: grid;
    grid-template-columns: minmax(260px, .42fr) minmax(0, .85fr);
    gap: 24px;
    align-items: start;
}

.sanantonio-page .san-link-title {
    position: sticky;
    top: 110px;
}

.sanantonio-page .san-link-title h2 {
    font-size: clamp(26px, 3vw, 40px);
    line-height: 1.1;
}

.sanantonio-page .san-link-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.sanantonio-page .san-link-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 66px;
    padding: 16px;
    border: 1px solid var(--san-line);
    border-radius: 10px;
    background: #fff;
    color: var(--san-blue);
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(20, 33, 61, .05);
}

.sanantonio-page .san-link-list a:hover,
.sanantonio-page .san-link-list a:focus {
    border-color: rgba(190, 21, 50, .24);
    color: var(--san-red);
}

.sanantonio-page .san-read-section {
    background: linear-gradient(180deg, #F7F9FC 0%, #fff 100%);
}

.sanantonio-page .san-read-layout {
    display: grid;
    grid-template-columns: minmax(260px, .4fr) minmax(0, .9fr);
    gap: 22px;
    align-items: stretch;
}

.sanantonio-page .san-read-intro {
    padding: 24px;
    border: 1px solid var(--san-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(20, 33, 61, .07);
}

.sanantonio-page .san-read-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.sanantonio-page .san-read-card {
    overflow: hidden;
    border: 1px solid var(--san-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(20, 33, 61, .07);
}

.sanantonio-page .san-read-card img {
    width: 100%;
    height: 160px;
    object-fit: cover;
    background: #F8FAFE;
}

.sanantonio-page .san-read-card div {
    padding: 16px;
}

.sanantonio-page .san-read-card small {
    color: var(--san-red);
    font-weight: 900;
    text-transform: uppercase;
}

.sanantonio-page .san-read-card h3 {
    margin: 8px 0 0;
    font-size: 18px;
    line-height: 1.3;
}

.sanantonio-page .san-read-card h3 a {
    color: var(--san-ink);
    text-decoration: none;
}

.sanantonio-page .san-faq-section {
    background: #fff;
}

.sanantonio-page .san-faq-grid {
    display: grid;
    grid-template-columns: minmax(260px, .42fr) minmax(0, .8fr);
    gap: 22px;
    align-items: start;
}

.sanantonio-page .san-faq-intro {
    padding: 26px;
    border-radius: 12px;
    background: var(--san-blue);
    color: #fff;
    position: sticky;
    top: 110px;
}

.sanantonio-page .san-faq-intro h2,
.sanantonio-page .san-faq-intro p {
    color: #fff;
}

.sanantonio-page .san-faq-card {
    overflow: hidden;
    border: 1px solid var(--san-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(20, 33, 61, .07);
}

.sanantonio-page .san-faq-card .accordion-item {
    border-color: var(--san-line);
}

.sanantonio-page .san-faq-card .accordion-button {
    color: var(--san-ink);
    font-size: 16px;
    font-weight: 900;
    box-shadow: none;
}

.sanantonio-page .san-faq-card .accordion-button:not(.collapsed) {
    background: rgba(26, 77, 143, .06);
    color: var(--san-blue);
}

.sanantonio-page .san-final {
    padding: 42px 0 76px;
    background: linear-gradient(180deg, #fff 0%, #F7F9FC 100%);
}

.sanantonio-page .san-final-panel {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 28px;
    border-radius: 12px;
    background: var(--san-ink);
    box-shadow: var(--san-shadow);
}

.sanantonio-page .san-final-panel h2,
.sanantonio-page .san-final-panel p {
    color: #fff;
}

.sanantonio-page .san-final-panel p {
    margin-bottom: 0;
    opacity: .86;
}

@media (max-width: 1199.98px) {
    .sanantonio-page .san-market-grid,
    .sanantonio-page .san-product-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .sanantonio-page .san-section-head,
    .sanantonio-page .san-box-layout,
    .sanantonio-page .san-delivery-panel,
    .sanantonio-page .san-link-rack,
    .sanantonio-page .san-read-layout,
    .sanantonio-page .san-faq-grid {
        grid-template-columns: 1fr;
    }

    .sanantonio-page .san-link-title,
    .sanantonio-page .san-faq-intro {
        position: static;
    }
}

@media (max-width: 991.98px) {
    .sanantonio-page .san-hero-board {
        grid-template-columns: 1fr;
        grid-template-areas:
            "copy"
            "picks"
            "products";
    }

    .sanantonio-page .san-market-grid,
    .sanantonio-page .san-product-grid,
    .sanantonio-page .san-read-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .sanantonio-page .san-section {
        padding: 50px 0;
    }

    .sanantonio-page .san-hero {
        padding: 28px 0 42px;
    }

    .sanantonio-page .san-hero-copy,
    .sanantonio-page .san-box-intro,
    .sanantonio-page .san-delivery-panel,
    .sanantonio-page .san-final-panel {
        padding: 20px;
    }

    .sanantonio-page .san-hero-actions .btn,
    .sanantonio-page .san-shelf-top .btn,
    .sanantonio-page .san-final-panel .btn {
        width: 100%;
    }

    .sanantonio-page .san-hero-products,
    .sanantonio-page .san-market-grid,
    .sanantonio-page .san-product-grid,
    .sanantonio-page .san-checklist,
    .sanantonio-page .san-link-list,
    .sanantonio-page .san-read-cards {
        grid-template-columns: 1fr;
    }

    .sanantonio-page .san-market-card {
        grid-template-columns: 48px minmax(0, 1fr) 34px;
        min-height: 126px;
        padding: 14px;
    }

    .sanantonio-page .san-box-plan {
        grid-template-columns: 52px minmax(0, 1fr);
        gap: 14px;
        padding: 16px;
    }

    .sanantonio-page .san-box-plan > span {
        width: 46px;
        height: 46px;
        border-radius: 10px;
        font-size: 15px;
    }

    .sanantonio-page .san-shelf-top,
    .sanantonio-page .san-final-panel {
        align-items: flex-start;
        flex-direction: column;
    }

    .sanantonio-page .san-product-card .thumbnail {
        min-height: 168px;
        padding: 5px;
    }

    .sanantonio-page .san-product-card .thumbnail > a {
        min-height: 158px;
    }

    .sanantonio-page .san-product-card .thumbnail > a img {
        max-height: 152px;
    }
}
/* Jacksonville city landing page - scoped to .jacksonville-page */
.jacksonville-page{--red:#006778;--blue:#101820;--ink:#14213D;--muted:#647386;--soft:#F6F8FB;--warm:#E9F5F6;--line:rgba(20,33,61,.12);--shadow:0 18px 42px rgba(20,33,61,.12);background:#fff;color:var(--ink);overflow-x:hidden}.jacksonville-page h1,.jacksonville-page h2,.jacksonville-page h3,.jacksonville-page h4,.jacksonville-page h5{color:var(--ink);letter-spacing:0}.jacksonville-page p{color:var(--muted);line-height:1.72}.jacksonville-page .jacksonville-section{padding:76px 0}.jacksonville-page .jacksonville-kicker{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:7px 12px;border:1px solid rgba(0,103,120,.22);border-radius:8px;background:#fff;color:var(--red);font-size:12px;font-weight:900;text-transform:uppercase}.jacksonville-page .jacksonville-btn-primary, .jacksonville-page .jacksonville-btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border-radius:8px!important;font-weight:900;text-transform:none;transition:transform .2s ease,box-shadow .2s ease}.jacksonville-page .jacksonville-btn-primary{border-color:var(--red)!important;background:var(--red)!important;color:#fff!important;box-shadow:0 14px 28px rgba(0,103,120,.24)}.jacksonville-page .jacksonville-btn-secondary{border:1px solid rgba(16,24,32,.2)!important;background:#fff!important;color:var(--blue)!important}.jacksonville-page .jacksonville-btn-primary:hover, .jacksonville-page .jacksonville-btn-primary:focus, .jacksonville-page .jacksonville-btn-secondary:hover, .jacksonville-page .jacksonville-btn-secondary:focus{transform:translateY(-2px);box-shadow:var(--shadow)}
        .jacksonville-page .jacksonville-hero{padding:64px 0 42px;background:linear-gradient(180deg,#fff 0%,#F8FAFE 100%)}.jacksonville-page .jacksonville-hero-shell{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.72fr);min-height:520px;border:1px solid rgba(16,24,32,.12);border-radius:8px;overflow:hidden;background:radial-gradient(circle at 6% 12%,rgba(0,103,120,.12),transparent 30%),radial-gradient(circle at 86% 88%,rgba(16,24,32,.14),transparent 34%),linear-gradient(135deg,#fff 0%,#fff 50%,#F3F7FC 100%);box-shadow:var(--shadow)}.jacksonville-page .jacksonville-hero-shell:before{content:"JAX";position:absolute;right:clamp(18px,5vw,70px);top:24px;z-index:-1;color:rgba(16,24,32,.055);font-size:clamp(4.6rem,12vw,11rem);font-weight:900;line-height:.8;letter-spacing:0}.jacksonville-page .jacksonville-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(32px,5vw,62px)}.jacksonville-page .jacksonville-hero h1{max-width:780px;margin-bottom:22px;font-size:clamp(42px,5.2vw,72px);line-height:1.02;overflow-wrap:break-word}.jacksonville-page .jacksonville-hero h1 mark{padding:0;background:transparent!important;color:var(--red)!important}.jacksonville-page .jacksonville-hero-copy p{max-width:680px;font-size:18px}.jacksonville-page .jacksonville-hero-actions, .jacksonville-page .jacksonville-strip-actions{display:flex;flex-wrap:wrap;gap:12px}.jacksonville-page .jacksonville-quick-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.jacksonville-page .jacksonville-quick-tags a{display:inline-flex;align-items:center;min-height:34px;padding:8px 11px;border:1px solid rgba(16,24,32,.13);border-radius:8px;background:#fff;color:var(--blue);font-size:12px;font-weight:900;text-decoration:none}
        .jacksonville-page .jacksonville-finder{display:flex;flex-direction:column;justify-content:center;min-height:100%;padding:clamp(24px,4vw,42px);border-left:1px solid rgba(16,24,32,.12);background:linear-gradient(180deg,rgba(255,255,255,.68),rgba(246,248,251,.92))}.jacksonville-page .jacksonville-finder-card{padding:24px;border:1px solid rgba(20,33,61,.11);border-radius:8px;background:#fff;box-shadow:0 16px 34px rgba(20,33,61,.1)}.jacksonville-page .jacksonville-finder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px dashed rgba(20,33,61,.2)}.jacksonville-page .jacksonville-finder-head span{color:var(--red);font-size:12px;font-weight:900;text-transform:uppercase}.jacksonville-page .jacksonville-finder-step{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;padding:16px 0;border-bottom:1px solid rgba(20,33,61,.08)}.jacksonville-page .jacksonville-finder-step:last-of-type{border-bottom:0}.jacksonville-page .jacksonville-finder-step b{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:8px;background:var(--blue);color:#fff;font-size:13px}.jacksonville-page .jacksonville-finder-step h3{margin:0 0 4px;font-size:17px}.jacksonville-page .jacksonville-finder-step p{margin:0;font-size:13px;line-height:1.55}.jacksonville-page .jacksonville-hero-products{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.jacksonville-page .jacksonville-hero-products a{display:flex;align-items:center;justify-content:center;height:94px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#F8FAFE}.jacksonville-page .jacksonville-hero-products img{max-width:100%;max-height:74px;object-fit:contain}
        .jacksonville-page .jacksonville-lab-grid, .jacksonville-page .jacksonville-aisle-shell, .jacksonville-page .jacksonville-gift-shell, .jacksonville-page .jacksonville-faq-layout{display:grid;grid-template-columns:minmax(280px,.4fr) minmax(0,.6fr);gap:24px;align-items:stretch}.jacksonville-page .jacksonville-lab-note{padding:30px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,var(--blue),#000000);color:#fff;box-shadow:0 16px 34px rgba(20,33,61,.12)}.jacksonville-page .jacksonville-lab-note h2, .jacksonville-page .jacksonville-lab-note p{color:#fff}.jacksonville-page .jacksonville-lab-note .jacksonville-page .jacksonville-kicker{border-color:rgba(255,255,255,.26)}.jacksonville-page .jacksonville-taste-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.jacksonville-page .jacksonville-taste-card{position:relative;min-height:204px;padding:22px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(20,33,61,.07);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.jacksonville-page .jacksonville-taste-card:hover, .jacksonville-page .jacksonville-taste-card:focus-within{transform:translateY(-4px);border-color:rgba(0,103,120,.24);box-shadow:var(--shadow)}.jacksonville-page .jacksonville-taste-card i{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:16px;border-radius:8px;background:var(--warm);color:var(--red)}.jacksonville-page .jacksonville-taste-card h3{font-size:20px}.jacksonville-page .jacksonville-taste-card p{margin-bottom:16px;font-size:14px}.jacksonville-page .jacksonville-taste-card a{color:var(--blue);font-weight:900;text-decoration:none}        .jacksonville-page .jacksonville-aisle-index, .jacksonville-page .jacksonville-buying-guide, .jacksonville-page .jacksonville-faq-section{background:var(--soft)}.jacksonville-page .jacksonville-aisle-list{display:grid;gap:12px}.jacksonville-page .jacksonville-aisle-row{display:grid;grid-template-columns:58px minmax(0,1fr) 42px;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;text-decoration:none;box-shadow:0 10px 24px rgba(20,33,61,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.jacksonville-page .jacksonville-aisle-row:hover, .jacksonville-page .jacksonville-aisle-row:focus{transform:translateX(4px);border-color:rgba(16,24,32,.2);box-shadow:var(--shadow)}.jacksonville-page .jacksonville-aisle-icon, .jacksonville-page .jacksonville-aisle-row b{display:inline-flex;align-items:center;justify-content:center;border-radius:8px}.jacksonville-page .jacksonville-aisle-icon{width:58px;height:58px;background:var(--warm);color:var(--red);font-size:20px}.jacksonville-page .jacksonville-aisle-row small{color:var(--red);font-size:11px;font-weight:900;text-transform:uppercase}.jacksonville-page .jacksonville-aisle-row h3{margin:4px 0 0;font-size:18px}.jacksonville-page .jacksonville-aisle-row b{width:42px;height:42px;background:var(--blue);color:#fff}.jacksonville-page .jacksonville-aisle-note{position:sticky;top:110px;align-self:start;padding:26px;border:1px solid rgba(16,24,32,.12);border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(20,33,61,.07)}.jacksonville-page .jacksonville-aisle-note ul{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none}.jacksonville-page .jacksonville-aisle-note li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;color:var(--ink);font-size:14px;font-weight:800}.jacksonville-page .jacksonville-aisle-note li i{color:var(--red);line-height:1.7}
        .jacksonville-page .jacksonville-cart-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end;margin-bottom:24px}.jacksonville-page .jacksonville-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.jacksonville-page .jacksonville-product-card{height:100%;min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 24px rgba(20,33,61,.07);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.jacksonville-page .jacksonville-product-card:hover, .jacksonville-page .jacksonville-product-card:focus-within{transform:translateY(-4px);border-color:rgba(16,24,32,.18);box-shadow:var(--shadow)}.jacksonville-page .jacksonville-product-card .vertical-product-card{display:flex;flex-direction:column;height:100%;padding:10px;border:0!important;box-shadow:none!important;background:transparent!important}.jacksonville-page .jacksonville-product-card .thumbnail{display:flex;align-items:center;justify-content:center;min-height:176px;margin:0 0 12px!important;padding:4px;border-radius:8px!important;background:#F8FAFE!important;overflow:hidden}.jacksonville-page .jacksonville-product-card .thumbnail>a{display:flex;align-items:center;justify-content:center;width:100%;min-height:166px}.jacksonville-page .jacksonville-product-card .thumbnail>a img{width:auto;max-width:100%;max-height:80%;object-fit:contain;transform:scale(1.2);transform-origin:center}.jacksonville-page .jacksonville-product-card .product-btns{top:10px!important;right:10px!important;z-index:3;align-items:center!important;gap:8px!important}.jacksonville-page .jacksonville-product-card .product-btns .rounded-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 34px!important;width:34px!important;min-width:34px!important;max-width:34px!important;height:34px!important;min-height:34px!important;max-height:34px!important;padding:0!important;border:1px solid rgba(16,24,32,.18)!important;border-radius:50%!important;background:#fff!important;color:var(--blue)!important;font-size:14px!important;line-height:1!important;box-shadow:0 8px 18px rgba(20,33,61,.09)}.jacksonville-page .jacksonville-product-card .product-btns .rounded-btn:hover, .jacksonville-page .jacksonville-product-card .product-btns .rounded-btn:focus, .jacksonville-page .jacksonville-product-card .product-btns .rounded-btn.active{border-color:var(--red)!important;color:var(--red)!important}.jacksonville-page .jacksonville-product-card .product-btns .rounded-btn i{display:block;margin:0!important;line-height:1!important}.jacksonville-page .jacksonville-product-card .card-content{display:flex;flex:1 1 auto;flex-direction:column;padding:0!important}.jacksonville-page .jacksonville-product-card .card-content>a.fs-xxs{margin-bottom:7px!important;color:#1A7D5C!important;font-size:11px!important;line-height:1.25}.jacksonville-page .jacksonville-product-card .card-title{min-height:42px;margin-bottom:9px!important;color:var(--ink)!important;font-size:14px;line-height:1.35}.jacksonville-page .jacksonville-product-card .cro-product-price-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;min-height:30px;margin-bottom:10px}.jacksonville-page .jacksonville-product-card .deleted, .jacksonville-page .jacksonville-product-card .cro-product-old-price{color:#7A8798!important;font-size:12px}.jacksonville-page .jacksonville-product-card .price, .jacksonville-page .jacksonville-product-card .cro-product-current-price{margin:0;color:var(--red)!important;font-size:18px;line-height:1.2}.jacksonville-page .jacksonville-product-card .detail-info{margin-top:auto;margin-bottom:0!important}.jacksonville-page .jacksonville-product-card .product-qty{height:36px;overflow:hidden;border:1px solid rgba(16,24,32,.1);border-radius:8px;background:#F7F9FC}.jacksonville-page .jacksonville-product-card .change-qty, .jacksonville-page .jacksonville-product-card .qty-val{height:34px!important;border:0!important;background:transparent!important}.jacksonville-page .jacksonville-product-card .change-qty{color:var(--blue)!important;font-weight:900}.jacksonville-page .jacksonville-product-card .qty-val{color:var(--ink)!important;font-weight:900;text-align:center}.jacksonville-page .jacksonville-product-card .add-cart, .jacksonville-page .jacksonville-product-card a.btn.btn-secondary, .jacksonville-page .jacksonville-product-card .verified-badge{border-color:var(--blue)!important;background:var(--blue)!important;color:#fff!important}.jacksonville-page .jacksonville-product-card .add-cart, .jacksonville-page .jacksonville-product-card a.btn.btn-secondary{min-height:38px;border-radius:8px!important;font-weight:900}
        .jacksonville-page .jacksonville-guide-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.jacksonville-page .jacksonville-guide-card, .jacksonville-page .jacksonville-link-panel, .jacksonville-page .jacksonville-faq-note, .jacksonville-page .jacksonville-faq-card, .jacksonville-page .jacksonville-blog-card{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 24px rgba(20,33,61,.06)}.jacksonville-page .jacksonville-guide-card{padding:20px}.jacksonville-page .jacksonville-guide-card span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:14px;border-radius:8px;background:var(--blue);color:#fff;font-weight:900}.jacksonville-page .jacksonville-guide-card h3{font-size:18px}.jacksonville-page .jacksonville-guide-card p{margin-bottom:0;font-size:14px}.jacksonville-page .jacksonville-gift-panel{position:relative;overflow:hidden;padding:32px;border:1px solid rgba(16,24,32,.12);border-radius:8px;background:radial-gradient(circle at 90% 8%,rgba(0,103,120,.12),transparent 30%),linear-gradient(135deg,#fff 0%,#F8FAFE 100%);box-shadow:var(--shadow)}.jacksonville-page .jacksonville-gift-ideas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}.jacksonville-page .jacksonville-gift-ideas a{display:flex;flex-direction:column;justify-content:space-between;min-height:128px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);text-decoration:none}.jacksonville-page .jacksonville-gift-ideas small{color:var(--red);font-size:11px;font-weight:900;text-transform:uppercase}.jacksonville-page .jacksonville-gift-ideas b{margin-top:8px;font-size:16px;line-height:1.3}.jacksonville-page .jacksonville-link-panel, .jacksonville-page .jacksonville-faq-note, .jacksonville-page .jacksonville-faq-card{padding:24px}.jacksonville-page .jacksonville-link-panel a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink);font-weight:900;text-decoration:none}.jacksonville-page .jacksonville-link-panel a:last-child{border-bottom:0}.jacksonville-page .jacksonville-link-panel i{color:var(--red)}.jacksonville-page .jacksonville-faq-card .accordion-item{border:1px solid var(--line);border-radius:8px!important;overflow:hidden}.jacksonville-page .jacksonville-faq-card .accordion-item+.accordion-item{margin-top:12px}.jacksonville-page .jacksonville-faq-card .accordion-button{color:var(--ink);font-weight:900;box-shadow:none}.jacksonville-page .jacksonville-faq-card .accordion-button:not(.collapsed){background:var(--warm);color:var(--red)}.jacksonville-page .jacksonville-blog-card{height:100%;overflow:hidden}.jacksonville-page .jacksonville-blog-card img{width:100%;height:170px;object-fit:cover;background:#F8FAFE}.jacksonville-page .jacksonville-blog-body{padding:18px}.jacksonville-page .jacksonville-blog-card small{color:var(--red);font-weight:900;text-transform:uppercase}.jacksonville-page .jacksonville-final{padding:58px 0;background:var(--red);color:#fff}.jacksonville-page .jacksonville-final h2, .jacksonville-page .jacksonville-final p{color:#fff}
        @media (max-width:1199.98px){.jacksonville-page .jacksonville-hero-shell, .jacksonville-page .jacksonville-lab-grid, .jacksonville-page .jacksonville-aisle-shell, .jacksonville-page .jacksonville-gift-shell, .jacksonville-page .jacksonville-faq-layout{grid-template-columns:1fr}.jacksonville-page .jacksonville-finder{border-left:0;border-top:1px solid rgba(16,24,32,.12)}.jacksonville-page .jacksonville-aisle-note{position:static}.jacksonville-page .jacksonville-product-grid, .jacksonville-page .jacksonville-guide-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:991.98px){.jacksonville-page .jacksonville-taste-grid, .jacksonville-page .jacksonville-gift-ideas{grid-template-columns:1fr}}@media (max-width:767.98px){.jacksonville-page .jacksonville-section{padding:54px 0}.jacksonville-page .jacksonville-hero{padding-top:34px}.jacksonville-page .jacksonville-hero-copy, .jacksonville-page .jacksonville-finder{padding:22px}.jacksonville-page .jacksonville-hero h1{font-size:40px}.jacksonville-page .jacksonville-hero-copy p{font-size:16px}.jacksonville-page .jacksonville-hero-actions .btn, .jacksonville-page .jacksonville-strip-actions .btn{width:100%}.jacksonville-page .jacksonville-cart-head{grid-template-columns:1fr}.jacksonville-page .jacksonville-product-grid, .jacksonville-page .jacksonville-guide-strip{grid-template-columns:1fr}.jacksonville-page .jacksonville-product-card .thumbnail{min-height:158px;padding:4px}.jacksonville-page .jacksonville-product-card .thumbnail>a{min-height:148px}.jacksonville-page .jacksonville-product-card .thumbnail>a img{max-height:146px;max-width:100%;transform:scale(1.16)}.jacksonville-page .jacksonville-aisle-row{grid-template-columns:50px minmax(0,1fr) 38px;padding:14px}.jacksonville-page .jacksonville-aisle-icon{width:50px;height:50px}.jacksonville-page .jacksonville-lab-note, .jacksonville-page .jacksonville-gift-panel, .jacksonville-page .jacksonville-link-panel, .jacksonville-page .jacksonville-faq-note, .jacksonville-page .jacksonville-faq-card{padding:20px}}
        .jacksonville-page .jacksonville-aisle-shell{grid-template-columns:minmax(340px,.72fr) minmax(420px,1fr);align-items:stretch}.jacksonville-page .jacksonville-aisle-note{height:100%;min-height:430px;display:flex;flex-direction:column;justify-content:space-between;padding:28px;background:radial-gradient(circle at 92% 10%,rgba(0,103,120,.1),transparent 30%),linear-gradient(135deg,#fff 0%,#F8FAFE 100%)}.jacksonville-page .jacksonville-aisle-note-head{padding-bottom:18px;border-bottom:1px solid rgba(20,33,61,.1)}.jacksonville-page .jacksonville-aisle-note-head p{max-width:620px}.jacksonville-page .jacksonville-aisle-mix-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.jacksonville-page .jacksonville-aisle-mix{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:center;min-height:86px;padding:14px;border:1px solid rgba(16,24,32,.11);border-radius:8px;background:#fff;box-shadow:0 8px 18px rgba(20,33,61,.05)}.jacksonville-page .jacksonville-aisle-mix i{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:8px;background:var(--warm);color:var(--red)}.jacksonville-page .jacksonville-aisle-mix small{display:block;margin-bottom:2px;color:var(--red);font-size:11px;font-weight:900;text-transform:uppercase}.jacksonville-page .jacksonville-aisle-mix b{display:block;color:var(--ink);font-size:14px;line-height:1.25}.jacksonville-page .jacksonville-aisle-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:18px;border-top:1px solid rgba(20,33,61,.1)}.jacksonville-page .jacksonville-aisle-cta p{margin:0;font-size:14px;line-height:1.55}@media (max-width:1199.98px){.jacksonville-page .jacksonville-aisle-shell{grid-template-columns:1fr}.jacksonville-page .jacksonville-aisle-note{min-height:0}}@media (max-width:767.98px){.jacksonville-page .jacksonville-aisle-mix-grid{grid-template-columns:1fr}.jacksonville-page .jacksonville-aisle-cta{align-items:flex-start;flex-direction:column}.jacksonville-page .jacksonville-aisle-cta .btn{width:100%}}

/* Jacksonville override: fix inherited Austin watermark text in hero */
.jax-city .austin-hero-shell:before { content: "JAX" !important; }

/* Jacksonville: hover-lift polish for the 2-per-row info cards */
.jax-city .austin-lab-note { transition: transform .2s ease, box-shadow .2s ease; }
.jax-city .austin-lab-note:hover { transform: translateY(-4px); box-shadow: 0 22px 46px rgba(16,24,32,.18); }

/* Fix: links inside the final red CTA band were invisible (inherited default link color against red bg) */
.dallas-page .dallas-final a { color: #fff; text-decoration: underline; }
.dallas-page .dallas-final a:hover { color: #fff; opacity: .85; }
