.page-hero,.blog-layout,.article-layout{width:956px;margin:26px auto}.page-hero h1,.article-shell h1{font:normal 38px/1.08 Georgia,serif;margin:8px 0}.page-hero h1 span{color:#b88429}.blog-layout{display:block}.section-block{margin-top:18px}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.product-card{min-width:0}.card-media{display:block;height:170px;overflow:hidden;border-radius:7px;position:relative;background:#f5f2ed}.card-media img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;left:8px;bottom:8px;background:#d3a239;padding:5px 7px;border-radius:3px;font-size:8px;font-weight:bold}.card-body h2{font:normal 18px/1.15 Georgia,serif;margin:10px 0 5px}.meta{font-size:10px;color:#777}.excerpt{font-size:11px;line-height:1.45}.article-layout{max-width:956px}.article-shell{max-width:700px;margin:auto}.article-shell h1{font-size:44px}.cover{width:100%;max-height:460px;object-fit:cover;border-radius:8px;margin:16px 0}.article-content{font:16px/1.7 Georgia,serif}.article-content h2{font-size:26px;margin-top:28px}.article-content img{max-width:100%;height:auto}.back{font-size:10px;color:#98681c}.empty-state{padding:28px 0}.pager{margin:24px 0}@media(max-width:800px){.page-hero,.blog-layout,.article-layout{width:auto;margin:22px 18px}.card-grid{grid-template-columns:repeat(2,1fr)}.article-shell h1{font-size:34px}}@media(max-width:480px){.card-grid{grid-template-columns:1fr}.card-media{height:220px}}

/* Keep the main visual assets inside their intended panels. */
.image-panel > img,
.pod-cover > img,
.avatar > img,
.story-image > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.hero-copy .hero-podcast-link,
.hero-copy .hero-more-link {
    display: inline-block;
    font-size: 9px;
    padding: 12px 16px;
    border-radius: 4px;
}

.hero-copy .hero-podcast-link {
    background: linear-gradient(135deg, #b17c23, #d2a84e);
    margin-right: 10px;
}

.hero-copy .hero-more-link {
    border: 1px solid #eee;
}

.pod-cover > a {
    display: block;
    width: 100%;
    height: 100%;
}

.pod-actions a {
    font-size: 8px;
    border: 1px solid #b88631;
    border-radius: 3px;
    padding: 9px 13px;
}

.pod-exclusive {
    margin-top: 9px !important;
    color: #98681c;
    font-size: 8px !important;
}

.story-deal-grid-secondary,
.story-deal-grid + .story-deal-grid {
    margin-top: 24px;
}

.deal-story .deal-image {
    background: #f5f2ed;
}

.deal-story > a {
    display: block;
    position: relative;
}

.deal-story .deal-ad-overline,
.highlighted-deals .deal-ad-overline {
    display: block;
    margin: 0;
    color: #777;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .5px;
}

.deal-story .deal-ad-overline {
    position: absolute;
    top: -12px;
    left: 0;
}

.deal-story .deal-byline {
    display: flex;
    align-items: baseline;
    gap: 7px;
    font-size: 9px;
}

.deal-story .deal-byline del {
    color: #888;
}

.deal-story .deal-byline strong {
    color: #9a6a19;
    font-size: 12px;
}

.deal-story .deal-byline span {
    margin-left: auto;
    color: #777;
    font-size: 7px;
    font-weight: 700;
}
.page-shell {
    display: flex;
    flex-direction: column;
}

.page-shell > .lead-grid,
.page-shell > .signup-card {
    order: 0;
}

.page-shell > .utility-grid {
    order: 1;
}

.page-shell > .stories {
    order: 2;
}

/* Split the story section around the three editorial/community panels. */
.page-shell > .stories {
    display: contents;
}

.stories > .section-title {
    order: 1;
    margin-top: 15px;
    margin-bottom: 16px;
}

.stories > .story-deal-grid:not(.story-deal-grid-secondary) {
    order: 2;
}

.page-shell > .utility-grid {
    order: 3;
}

.stories > .story-deal-grid-secondary {
    order: 4;
}

.post-deals {
    margin-top: 42px;
    padding-top: 24px;
    border-top: 1px solid #e6e1db;
}

.post-deals-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.post-deals-label {
    display: inline-block;
    color: #777;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.2px;
    margin-bottom: 7px;
}

.post-deals-header h2 {
    font: normal 24px/1.1 Georgia, serif;
    margin: 0 0 7px;
}

.post-deals-header p {
    color: #666;
    font-size: 11px;
    margin: 0;
}

.post-deals-header > a {
    color: #8f621b;
    font-size: 10px;
    white-space: nowrap;
}

.post-deals-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.post-deal-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e5e0d9;
    border-radius: 7px;
    background: #faf8f5;
}

.post-deal-media {
    display: block;
    height: 150px;
    position: relative;
    overflow: hidden;
    background: #eee9e1;
}

.post-deal-media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.post-deal-ad-label {
    display: block;
    padding: 11px 14px 5px;
    color: #777;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .8px;
}

.post-deal-body {
    padding: 13px 14px 14px;
}

.post-deal-body > small {
    color: #8f621b;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .6px;
}

.post-deal-body h3 {
    font-size: 16px;
    line-height: 1.18;
    margin: 7px 0 6px;
}

.post-deal-body p {
    color: #444;
    font-size: 10px;
    line-height: 1.45;
    margin: 0 0 10px;
}

.post-deal-price {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 11px;
}

.post-deal-price del {
    color: #888;
    font-size: 10px;
}

.post-deal-price strong {
    color: #98681c;
    font-size: 15px;
}

.post-deal-link {
    display: inline-block;
    padding: 8px 10px;
    border: 1px solid #b78328;
    border-radius: 3px;
    color: #30230f;
    font-size: 9px;
    font-weight: 700;
}

.post-deal-note {
    display: block;
    color: #777;
    font-size: 8px;
    margin-top: 9px;
}

@media (max-width: 560px) {
    .post-deals-header {
        display: block;
    }

    .post-deals-header > a {
        display: inline-block;
        margin-top: 10px;
    }

    .post-deals-grid {
        grid-template-columns: 1fr;
    }
}

/* Dedicated styling for the public deals catalogue. */
.page-hero {
    padding: 28px 34px 30px;
    border: 1px solid #e6e1db;
    border-radius: 9px;
    background: linear-gradient(120deg, #faf8f4, #fff);
}

.page-hero .eyebrow {
    color: #98681c;
    letter-spacing: 1.2px;
}

.page-hero > p:not(.eyebrow) {
    color: #555;
    font-size: 12px;
    margin: 10px 0 0;
}

.deal-search {
    margin-top: 22px;
}

.deal-search .search-row {
    display: flex;
    width: min(100%, 620px);
    max-width: none;
    overflow: hidden;
    border: 1px solid #ded8d0;
    border-radius: 5px;
    background: #fff;
    box-shadow: 0 5px 16px rgba(30, 22, 12, .07);
}

.deal-search .search-row input {
    height: 45px;
    flex: 1;
    min-width: 0;
    padding: 0 14px;
    border: 0;
    outline: 0;
    color: #222;
    font-size: 12px;
}

.deal-search .search-row button {
    width: 48px;
    height: 45px;
    display: grid;
    place-items: center;
    border: 0;
    background: #c49338;
    color: #fff;
    cursor: pointer;
}

.deal-search .search-row button svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.deal-search .clear-link {
    display: inline-block;
    margin-top: 8px;
}

.category-list {
    display: flex;
    width: 956px;
    gap: 10px;
    margin: 22px auto 28px;
    padding: 0 0 4px;
    overflow-x: auto;
}

.category-list a {
    min-width: 112px;
    min-height: 72px;
    display: inline-flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 10px 13px;
    border: 1px solid #e2ddd6;
    border-radius: 7px;
    background: #fff;
    color: #222;
    text-align: center;
    font-size: 10px;
    font-weight: 700;
    box-shadow: 0 3px 10px rgba(30, 22, 12, .04);
}

.category-list a.active {
    border-color: #b78328;
    background: #b78328;
    color: #fff;
}

.category-list .category-icon {
    width: 24px;
    height: 24px;
    margin-bottom: 6px;
    padding: 4px;
    color: #a36e1b;
    border: 1px solid currentColor;
    border-radius: 5px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.category-list .category-mark {
    display: grid;
    place-items: center;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
}

.category-list a.active .category-icon {
    color: #fff;
}

.category-list a span {
    margin-top: 4px;
    color: #777;
    font-size: 9px;
}

.category-list a.active span {
    color: rgba(255, 255, 255, .8);
}

.deal-category {
    width: 956px;
    margin-top: 0;
    margin-right: auto;
    margin-left: auto;
}

.deal-category .section-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 14px;
}

.deal-category .section-heading h2 {
    margin: 0;
    font-size: 17px;
    letter-spacing: .4px;
}

.deal-category .section-heading a {
    color: #98681c;
    font-size: 10px;
}

.deal-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.deal-grid .deal-card {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e5e0d9;
    border-radius: 7px;
    background: #faf8f5;
    box-shadow: 0 4px 14px rgba(30, 22, 12, .05);
}

.deal-grid .deal-card > img {
    display: block;
    width: 100%;
    height: 174px;
    object-fit: cover;
}

.deal-ad-label {
    display: block;
    padding: 11px 15px 5px;
    color: #777;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .8px;
}

.deal-grid .deal-card > p,
.deal-grid .deal-card > h3,
.deal-grid .deal-card > .price,
.deal-grid .deal-card > .deal-ad-note {
    margin-right: 15px;
    margin-left: 15px;
}

.deal-grid .deal-card > p:first-of-type {
    margin-top: 12px;
    margin-bottom: 8px;
}

.deal-grid .deal-card .badge {
    position: static;
    display: inline-flex;
    padding: 5px 7px;
    border-radius: 3px;
    background: #d3a239;
    color: #17130d;
    font-size: 8px;
}

.deal-grid .deal-card h3 {
    margin-top: 0;
    margin-bottom: 7px;
    font-size: 16px;
    line-height: 1.18;
}

.deal-grid .deal-card .meta {
    color: #777;
    font-size: 9px;
    line-height: 1.4;
}

.deal-grid .deal-card p:not(.meta):not(:first-of-type) {
    color: #444;
    font-size: 10px;
    line-height: 1.45;
}

.deal-grid .deal-card .price {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-top: 12px;
    margin-bottom: 13px;
}

.deal-grid .deal-card .price del {
    color: #888;
    font-size: 10px;
}

.deal-grid .deal-card .price span {
    color: #98681c;
    font-size: 16px;
    font-weight: 700;
}

.deal-grid .deal-card .button-link {
    display: inline-block;
    padding: 8px 10px;
    border: 1px solid #b78328;
    border-radius: 3px;
    color: #30230f;
    font-size: 9px;
    font-weight: 700;
}

.deal-grid .deal-card > p:last-of-type {
    margin-bottom: 14px;
}

.deal-ad-note {
    display: block;
    padding-bottom: 14px;
    color: #777;
    font-size: 8px;
}

@media (max-width: 800px) {
    .page-hero {
        padding: 24px 20px 25px;
    }

    .deal-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .category-list,
    .deal-category {
        width: auto;
        margin-right: 18px;
        margin-left: 18px;
    }
}

@media (max-width: 520px) {
    .deal-grid {
        grid-template-columns: 1fr;
    }

    .deal-category .section-heading {
        display: block;
    }

    .deal-category .section-heading a {
        display: inline-block;
        margin-top: 7px;
    }
}

/* CMS public shell and Trip & Treat homepage data states. */
.site-main {
    flex: 1 0 auto;
}

.content-page,
.trip-treat-home {
    width: 100%;
}

.newsletter-hp {
    position: absolute;
    left: -10000px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.signup-form .notice {
    margin: 0 0 6px;
    padding: 5px 8px;
    font-size: 8px;
}

.recommended-feature {
    display: block;
}

.recommended-feature img {
    display: block;
    width: 256px;
    height: 94px;
    object-fit: cover;
    border-radius: 4px;
}

.recommended-feature h3 {
    margin-bottom: 5px;
}

.recommended-links {
    display: flex;
    gap: 10px;
    margin-top: 8px;
    overflow: hidden;
    white-space: nowrap;
}

.recommended-links a {
    color: #98681c;
    font-size: 8px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.guides > a.guide {
    display: flex;
    width: auto;
    margin-top: 0;
    text-align: left;
    font-size: 9px;
}

.newsletter-thanks {
    width: min(620px, calc(100% - 36px));
    margin: 72px auto 90px;
    padding: 42px 48px;
    border: 1px solid #e6e1db;
    border-radius: 9px;
    background: linear-gradient(120deg, #faf8f4, #fff);
    text-align: center;
}

.newsletter-thanks h1 {
    font: normal 36px/1.1 Georgia, serif;
    margin: 0 0 14px;
}

.newsletter-thanks p:not(.back) {
    color: #555;
    font-size: 13px;
}

.newsletter-thanks .back {
    margin-top: 28px;
}

@media (max-width: 800px) {
    .recommended-feature img {
        width: 100%;
        height: auto;
        aspect-ratio: 256 / 94;
    }
}

.blog-layout .section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.blog-layout .section-heading h2 {
    margin: 0;
    font-size: 12px;
    letter-spacing: .7px;
}

.blog-layout .section-heading a {
    color: #8f621b;
    font-size: 10px;
    white-space: nowrap;
}

.visual-fallback {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    background: radial-gradient(circle at 30% 20%, #d6b66d, #26221d 72%);
    color: #fff;
    font: normal 56px Georgia, serif;
}

@media (max-width: 520px) {
    .blog-layout .section-heading {
        display: block;
    }

    .blog-layout .section-heading a {
        display: inline-block;
        margin-top: 7px;
    }
}

.pager{margin:34px 0 8px}
.site-pager{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;padding-top:20px;border-top:1px solid #ece7de}
.site-pager .pagination{list-style:none;display:flex;align-items:center;gap:4px;margin:0;padding:0}
.site-pager .pagination a,.site-pager-step{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:32px;min-width:32px;padding:0 10px;border:1px solid #e3ddd2;border-radius:999px;background:#fff;color:#4a453d;font-size:11px;line-height:1;letter-spacing:.02em;transition:background .15s,border-color .15s,color .15s}
.site-pager .pagination a:hover,.site-pager-step:hover{border-color:var(--gold,#b88429);color:var(--gold,#b88429);background:#fdfaf4}
.site-pager .pagination a.active{background:var(--gold,#b88429);border-color:var(--gold,#b88429);color:#fff;font-weight:bold}
.site-pager .pagination a.active:hover{background:var(--gold,#b88429);color:#fff}
.site-pager-step{font-weight:bold;text-transform:uppercase;font-size:10px;letter-spacing:.06em}
.site-pager-step.is-disabled{color:#c3bcb0;border-color:#efeae1;background:#fbf9f6}
@media(max-width:480px){.site-pager{gap:6px}.site-pager-step{padding:0 8px}}

/* Responsive layout foundation. Keep the editorial canvas fluid between the
   desktop and phone breakpoints instead of allowing fixed-width children to
   create horizontal overflow. */
html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

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

.header-inner,
.page-shell,
.footer-inner,
.top-ad-wide,
.category-list,
.deal-category,
.page-hero,
.blog-layout,
.article-layout {
    width: min(956px, calc(100% - 32px));
}

.header-inner,
.footer-inner {
    min-width: 0;
}

.top-ad-wide {
    margin-inline: auto;
}

.category-list,
.deal-category {
    max-width: 956px;
}

.page-hero,
.blog-layout,
.article-layout {
    max-width: 956px;
}

.story,
.product-card,
.deal-card,
.utility,
.post-deal-card,
.signup-copy,
.signup-form {
    min-width: 0;
}

.card-body h2,
.story h3,
.deal-card h3,
.post-deal-body h3,
.article-shell h1 {
    overflow-wrap: anywhere;
}

@media (max-width: 980px) {
    .header-inner {
        gap: 18px;
    }

    .header-inner nav {
        gap: 20px;
    }

    .lead-grid {
        grid-template-columns: minmax(0, 1.7fr) minmax(260px, 1fr);
        height: auto;
    }

    .hero-panel,
    .podcast-panel {
        min-height: 384px;
    }

    .story-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) 170px;
        gap: 10px;
    }

    .utility-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
    }

    .utility {
        height: auto;
        min-height: 240px;
    }

    .partner > img,
    .recommended-feature img {
        width: 100%;
    }
}

@media (max-width: 800px) {
    .site-header {
        height: auto;
    }

    .header-inner {
        width: 100%;
        height: auto;
        min-height: 67px;
        padding: 10px 16px 0;
        flex-wrap: wrap;
        align-content: center;
        gap: 10px;
    }

    .header-inner .brand {
        width: auto;
        flex: 0 1 auto;
    }

    .header-inner nav {
        order: 3;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        justify-content: flex-start;
        gap: 22px;
        padding: 10px 0 9px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .header-inner nav a {
        white-space: nowrap;
    }

    .header-inner nav::-webkit-scrollbar {
        display: none;
    }

    .newsletter-btn {
        margin-left: auto;
        flex: 0 0 auto;
    }

    .search {
        display: none;
    }

    .ad-strip {
        height: auto;
        padding: 10px 16px;
    }

    .page-shell {
        width: calc(100% - 24px);
        margin: 12px auto 0;
    }

    .lead-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .hero-panel {
        min-height: 320px;
        aspect-ratio: auto;
    }

    .podcast-panel {
        min-height: 0;
        aspect-ratio: auto;
    }

    .hero-copy {
        right: 18px;
        left: clamp(18px, 6vw, 33px);
        top: clamp(24px, 8vw, 44px);
    }

    .hero-copy h1 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .signup-card {
        height: auto;
        min-height: 111px;
        padding: 15px;
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
    }

    .signup-copy {
        align-items: flex-start;
    }

    .signup-copy > div:last-child {
        min-width: 0;
    }

    .signup-copy span {
        display: block;
    }

    .signup-form {
        width: 100%;
    }

    .signup-form button,
    .dark-signup button {
        padding-inline: 12px;
        white-space: nowrap;
    }

    .story-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 12px;
    }

    .story-image {
        height: auto;
        aspect-ratio: 1.4;
    }

    .utility-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .utility {
        min-height: 0;
    }

    .ask {
        min-height: 240px;
    }

    .ask-copy {
        width: auto;
        flex: 1 1 auto;
        min-width: 0;
    }

    .ask-image {
        width: auto;
        height: auto;
        min-height: 240px;
        flex: 0 0 38%;
    }

    .ask-image img {
        width: 100%;
        height: 100%;
    }

    .bottom-ad {
        width: calc(100% - 24px);
        height: auto;
        aspect-ratio: 730 / 74;
    }

    .dark-signup {
        height: auto;
    }

    .dark-inner {
        width: 100%;
        height: auto;
        padding: 16px;
        flex-wrap: wrap;
    }

    .dark-inner > div:nth-child(2) {
        min-width: 0;
        flex: 1;
    }

    .dark-inner form {
        width: 100%;
        order: 4;
    }

    .reader-note,
    .faces {
        display: none;
    }

    footer {
        height: auto;
    }

    .footer-inner {
        width: 100%;
        padding: 22px 20px 35px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .footer-brand,
    .podcast-follow {
        grid-column: 1 / -1;
    }

    .page-hero,
    .blog-layout,
    .article-layout {
        width: calc(100% - 36px);
        margin: 22px auto;
    }

    .page-hero {
        padding: 24px 20px 25px;
    }

    .deal-category,
    .category-list {
        width: calc(100% - 36px);
        margin-right: auto;
        margin-left: auto;
    }

    .deal-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .article-shell h1 {
        font-size: clamp(32px, 7vw, 44px);
    }

    .article-content {
        overflow-wrap: anywhere;
    }
}

@media (max-width: 560px) {
    .hero-panel {
        min-height: 300px;
    }

    .hero-copy p br {
        display: none;
    }

    .hero-copy p {
        max-width: 28em;
        margin-bottom: 18px;
    }

    .hero-copy .hero-podcast-link,
    .hero-copy .hero-more-link {
        padding: 10px 11px;
        margin: 0;
    }

    .pod-main {
        grid-template-columns: minmax(112px, 42%) minmax(0, 1fr);
    }

    .post-deals-header,
    .deal-category .section-heading {
        display: block;
    }

    .post-deals-header > a,
    .deal-category .section-heading a {
        display: inline-block;
        margin-top: 10px;
    }

    .post-deals-grid,
    .deal-grid {
        grid-template-columns: 1fr;
    }

    .category-list {
        margin-bottom: 22px;
    }

    .newsletter-thanks {
        width: calc(100% - 32px);
        margin: 40px auto 60px;
        padding: 30px 20px;
    }

    .newsletter-thanks h1 {
        font-size: 30px;
    }
}

@media (max-width: 480px) {
    .header-inner {
        padding-inline: 12px;
    }

    .header-inner .brand span {
        font-size: 24px;
    }

    .newsletter-btn {
        padding-inline: 9px;
    }

    .signup-copy .avatar {
        display: none;
    }

    .signup-copy h2 {
        font-size: 18px;
    }

    .story-grid {
        grid-template-columns: 1fr;
    }

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

    .card-media {
        height: auto;
        aspect-ratio: 1.4;
    }

    .footer-inner {
        grid-template-columns: 1fr;
    }

    .footer-brand,
    .podcast-follow {
        grid-column: auto;
    }

    .top-ad-wide {
        grid-template-columns: 31% minmax(0, 1fr);
    }

    .top-ad-copy p,
    .top-ad-copy span {
        display: none;
    }

    .top-ad-copy h2 {
        font-size: 14px;
    }

    .site-pager {
        gap: 6px;
    }

    .site-pager-step {
        padding-inline: 8px;
    }
}

@media (max-width: 360px) {
    .signup-form > div:not(.newsletter-hp),
    .dark-inner form {
        height: auto;
        flex-wrap: wrap;
    }

    .signup-form > div:not(.newsletter-hp) input,
    .dark-inner form > input[type="email"] {
        flex: 1 1 100%;
        width: 100%;
        height: 38px;
        border-radius: 4px;
    }

    .signup-form > div:not(.newsletter-hp) button,
    .dark-inner form > button {
        width: 100%;
        height: 38px;
        border-radius: 4px;
    }
}

/* Compact mobile navigation. The desktop navigation remains inline; on
   phones it becomes an explicit, keyboard-accessible disclosure menu. */
.menu-toggle {
    display: none;
    width: 38px;
    height: 36px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 4px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    cursor: pointer;
}

.menu-toggle-icon {
    display: flex;
    width: 18px;
    flex-direction: column;
    gap: 4px;
}

.menu-toggle-icon i {
    display: block;
    width: 18px;
    height: 2px;
    border-radius: 2px;
    background: currentColor;
    transition: transform .2s ease, opacity .2s ease;
}

.menu-toggle:focus-visible {
    outline: 2px solid #d6a346;
    outline-offset: 2px;
}

.header-inner.menu-open .menu-toggle-icon i:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
}

.header-inner.menu-open .menu-toggle-icon i:nth-child(2) {
    opacity: 0;
}

.header-inner.menu-open .menu-toggle-icon i:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
}

@media (max-width: 800px) {
    .header-inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto auto;
        align-items: center;
        column-gap: 10px;
        row-gap: 0;
        padding: 10px 16px;
    }

    .header-inner .brand {
        grid-column: 1;
        grid-row: 1;
    }

    .header-inner .newsletter-btn {
        grid-column: 2;
        grid-row: 1;
        margin-left: 0;
    }

    .header-inner .menu-toggle {
        display: inline-flex;
        grid-column: 3;
        grid-row: 1;
    }

    .header-inner nav {
        display: flex;
        grid-column: 1 / -1;
        grid-row: 2;
        order: initial;
        width: auto;
        max-width: none;
        padding: 10px 0 2px;
        border-top: 1px solid rgba(255, 255, 255, .12);
        overflow: visible;
    }

    html.js .header-inner nav {
        display: none;
    }

    html.js .header-inner.menu-open nav {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
    }

    .header-inner.menu-open nav a {
        padding: 11px 2px;
        border-bottom: 1px solid rgba(255, 255, 255, .1);
        font-size: 11px;
    }

    .header-inner.menu-open nav a:last-child {
        border-bottom: 0;
    }

    .header-inner .newsletter-btn span:first-child {
        margin-right: 0;
    }
}

@media (max-width: 360px) {
    .header-inner {
        padding-inline: 12px;
    }

    .newsletter-btn {
        padding-inline: 9px;
    }
}
