/* =====================================================================
   BOTANICAL.ART — ADDITIONAL CSS
   Rebuilt 23 July 2026 (mobile header fix)

   CHANGES IN THIS VERSION — all marked [JUL26] below:
   1. Removed  .site-branding { max-width: 68% }  — a WIDTH cap on the logo,
      which let a tall logo grow the header. Replaced with a HEIGHT cap.
   2. Scoped two leaked homepage-only rules back to .home
      (body background:white, and .site-footer background:transparent).
      These were running site-wide and turning every mobile page white.
   3. Added a new mobile-header block at the very bottom.
   4. Flagged two legacy patches for retirement once the header is verified.
   ===================================================================== */


/* Button hover lift effect */
.wp-block-button__link,
.button,
.btn,
input[type="submit"] {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.wp-block-button__link:hover,
.button:hover,
.btn:hover,
input[type="submit"]:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

/* Hide post meta (author names, dates) */
.entry-meta,
.ast-single-post-meta,
.post-meta,
.entry-header .entry-meta {
    display: none !important;
}

/* Remove Astra animations */
[class*="ast-animate"] {
    animation: none !important;
}

/* Responsive images */
.wp-block-image img,
.entry-content img {
    max-width: 100%;
    height: auto;
}

/* Reduce motion for users who prefer it */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation: none !important;
        transition: none !important;
        scroll-behavior: auto !important;
    }
}

/* Desktop-only container width restrictions (769px and above) */
@media (min-width: 769px) {
    /* General container width for ALL pages including single posts */
    .ast-container,
    .single .ast-container,
    .single-post .ast-container {
        max-width: 1400px;
        margin: 0 auto;
    }

    /* Home page specific targeting */
    .home .site,
    .home .ast-container,
    .home .site-content,
    .home .ast-row,
    .home .ast-grid-common-col,
    .home #primary,
    .home .entry-content,
    .home .ast-separate-container .site-content > .ast-container,
    .home .ast-page-builder-template,
    .home .ast-plain-container,
    .home .ast-separate-container .ast-article-single,
    .home body > .site > .ast-container,
    .blog .ast-container,
    .archive .ast-container {
        max-width: 1400px !important;
        margin: 0 auto !important;
    }

    /* Single post specific targeting */
    .single .site,
    .single .ast-container,
    .single .site-content,
    .single .ast-row,
    .single #primary,
    .single .entry-content,
    .single .ast-separate-container .site-content > .ast-container,
    .single .ast-separate-container .ast-article-single,
    .single-post .ast-container,
    .single-post .site-content,
    .single-post #primary {
        max-width: 1400px !important;
        margin: 0 auto !important;
    }

    /* For block editor/Gutenberg content */
    .home .wp-block-group,
    .home .wp-block-columns,
    .home .wp-site-blocks,
    .home .wp-block-post-content,
    .single .wp-block-group,
    .single .wp-block-columns,
    .single .wp-site-blocks,
    .single .wp-block-post-content {
        max-width: 1400px !important;
        margin: 0 auto !important;
    }

    /* If using full-width template */
    .home .ast-full-width-primary #primary,
    .home .ast-full-width-primary .site-content,
    .single .ast-full-width-primary #primary,
    .single .ast-full-width-primary .site-content {
        max-width: 1400px !important;
        margin: 0 auto !important;
    }

    /* HERO/FIRST SECTION ALIGNMENT - Desktop only */
    .home .entry-content > *:first-child,
    .home .wp-block-cover:first-child,
    .home .wp-block-group:first-child,
    .home .entry-content > .wp-block-cover:first-child .wp-block-cover__inner-container,
    .home .entry-content > .wp-block-group:first-child > .wp-block-group__inner-container {
        max-width: 1600px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 40px !important;
        padding-right: 40px !important;
    }

    /* Nested content within first section */
    .home .entry-content > *:first-child .wp-block-columns,
    .home .entry-content > *:first-child .wp-block-column,
    .home .entry-content > *:first-child .wp-block-heading,
    .home .entry-content > *:first-child .wp-block-paragraph,
    .home .entry-content > *:first-child .wp-block-buttons {
        max-width: 100% !important;
    }

    /* Subsequent sections */
    .home .entry-content > *:not(:first-child) {
        max-width: 1400px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    /* Reset containers */
    .home .ast-container,
    .home .site-content,
    .home #primary,
    .home .entry-content,
    .single .ast-container,
    .single .site-content,
    .single #primary,
    .single .entry-content {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 10px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    /* Override Astra responsive styles.
       NOTE: intentionally site-wide — the 0 10px side padding is doing
       useful work on the full-bleed article and collection pages. */
    .ast-separate-container .ast-container,
    .ast-plain-container .ast-container,
    .ast-page-builder-template .ast-container,
    .ast-separate-container .site-content > .ast-container {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 10px !important;
        margin: 0 !important;
    }

    /* Mobile hero/first section */
    .home .entry-content > .wp-block-cover:first-child,
    .home .entry-content > .wp-block-group:first-child,
    .home .wp-block-cover:first-child,
    .home .wp-block-group:first-child {
        min-height: 100vh !important;
        height: 100vh !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background-size: cover !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
        object-fit: cover !important;
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Inner content containers */
    .home .entry-content > .wp-block-cover:first-child .wp-block-cover__inner-container,
    .home .entry-content > .wp-block-group:first-child .wp-block-group__inner-container,
    .home .wp-block-cover:first-child .wp-block-cover__inner-container,
    .home .wp-block-group:first-child .wp-block-group__inner-container {
        width: 100% !important;
        height: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        text-align: center !important;
        padding: 20px !important;
        max-width: none !important;
    }

    /* All blocks fill available width */
    .home .wp-block-group,
    .home .wp-block-group__inner-container,
    .home .wp-block-cover,
    .home .wp-block-cover__inner-container,
    .home .wp-block-columns,
    .home .wp-block-column,
    .home .wp-block-media-text,
    .home .entry-content > * {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    /* Fix blank space between blocks */
    .home .wp-block-spacer {
        height: 20px !important;
        max-height: 20px !important;
    }

    /* Remove excessive margins */
    .home .entry-content > * + * {
        margin-top: 0 !important;
    }

    /* Stack columns vertically */
    .home .wp-block-columns {
        flex-direction: column !important;
        gap: 20px !important;
    }

    .home .wp-block-column {
        width: 100% !important;
        max-width: 100% !important;
        flex-basis: 100% !important;
    }

    /* Images */
    .home img,
    .home .wp-block-image img,
    .home .entry-content img {
        width: auto !important;
        max-width: 100% !important;
        height: auto !important;
        display: block !important;
        margin: 0 auto !important;
    }

    .home .wp-block-image.size-full img,
    .home .wp-block-cover img {
        width: 100% !important;
    }

    /* Typography */
    .home h1,
    .home .wp-block-heading.has-text-align-center {
        font-size: 32px !important;
        line-height: 1.2 !important;
        margin-bottom: 20px !important;
    }

    .home h2 {
        font-size: 26px !important;
        line-height: 1.3 !important;
        margin-bottom: 15px !important;
    }

    .home h3 {
        font-size: 22px !important;
        line-height: 1.3 !important;
        margin-bottom: 15px !important;
    }

    .home p,
    .home .wp-block-paragraph {
        font-size: 16px !important;
        line-height: 1.6 !important;
        margin-bottom: 15px !important;
    }

    .home .wp-block-heading,
    .home .wp-block-paragraph,
    .home .wp-block-buttons {
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
    }

    /* Buttons */
    .home .wp-block-button {
        width: 100% !important;
        margin: 15px 0 !important;
    }

    .home .wp-block-button__link {
        width: 100% !important;
        display: block !important;
        text-align: center !important;
        padding: 12px 20px !important;
        font-size: 16px !important;
    }

    /* Footer and edge cases */
    .home .wp-block-cover:last-child,
    .home .entry-content > *:last-child {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    /* [JUL26] was: .site-footer  — leaked site-wide, now scoped to home */
    .home .site-footer {
        margin-top: 0 !important;
        background: transparent !important;
    }

    .home .wp-block-cover.has-black-background-color,
    .home .wp-block-group.has-black-background-color {
        background-color: transparent !important;
    }

    /* [JUL26] was: body, .site { ... background: white !important; }
       That leaked site-wide and forced every mobile page to white,
       overriding the cream (#FAF7F0) the article pages are designed on.
       Now scoped to the homepage only. */
    body.home,
    .home .site {
        margin: 0 !important;
        padding: 0 !important;
        overflow-x: hidden !important;
        background: white !important;
    }

    /* Keep horizontal-scroll protection site-wide */
    body,
    .site {
        overflow-x: hidden !important;
    }

    html {
        overflow-x: hidden !important;
    }

    /* Gallery */
    .home .wp-block-gallery {
        margin: 0 !important;
    }

    .home .wp-block-gallery .blocks-gallery-item {
        width: calc(50% - 5px) !important;
        margin: 2.5px !important;
    }

    .home figure {
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* Tablet */
@media (min-width: 481px) and (max-width: 768px) {
    .home .ast-container,
    .home .site-content,
    .home #primary,
    .home .entry-content {
        padding: 0 20px !important;
    }

    .home h1 { font-size: 36px !important; }
    .home h2 { font-size: 30px !important; }
}

/* Small mobile */
@media (max-width: 480px) {
    .home .ast-container,
    .home .site-content,
    .home #primary,
    .home .entry-content {
        padding: 0 8px !important;
    }

    .home h1 { font-size: 28px !important; }
    .home h2 { font-size: 24px !important; }

    .home .wp-block-gallery .blocks-gallery-item {
        width: 100% !important;
        margin: 5px 0 !important;
    }
}

/* Very small devices */
@media (max-width: 360px) {
    .home .ast-container,
    .home .site-content,
    .home #primary,
    .home .entry-content {
        padding: 0 5px !important;
    }

    .home h1 { font-size: 26px !important; }
}

/* Navigation */
.main-header-menu .menu-item a,
.main-navigation .menu-item a {
    color: #333333 !important;
    display: inline-block;
    transition: all 0.2s ease;
}

.main-header-menu .menu-item a:hover,
.main-navigation .menu-item a:hover {
    color: #2D5A3D !important;
    transform: scale(1.08);
}

/* Arrow centred across full hero */
.ba-homepage .hero .scroll-indicator {
    left: 50% !important;
    transform: translateX(-50%) !important;
}

/* Push image down so it clears the nav icons */
.ba-homepage .hero-right img {
    top: 80px !important;
    height: calc(100% - 80px) !important;
}

/* =====================================================
   March 2026
   ===================================================== */

/* Reduce white space above post title on single posts */
.single-post .entry-header,
.single .entry-header {
    padding-top: 10px !important;
    margin-top: 0 !important;
}

/* [JUL26 — CANDIDATE FOR REMOVAL]
   This 55vh cap was added to keep the CTA strip visible once the oversized
   mobile header had eaten the screen. With the header fixed it is probably
   no longer needed, and it is currently shrinking article images on phones.
   Test one article with this block deleted before keeping it. */
@media (max-width: 768px) {
    .single-post .wp-block-image img,
    .single .wp-block-image img {
        max-height: 55vh !important;
        width: auto !important;
        object-fit: contain !important;
    }
}

/* CTA strip — solid button, fix scientific name clipping on mobile */
#fiurdelin-cta-strip {
    flex-wrap: wrap !important;
}
#fiurdelin-cta-strip > div:first-child {
    flex: 1 1 160px !important;
    min-width: 0 !important;
}
#fiurdelin-cta-strip p {
    white-space: normal !important;
    overflow: visible !important;
}
#fiurdelin-cta-strip a {
    flex-shrink: 0 !important;
    background: #7A9A7E !important;
    color: #ffffff !important;
    border-color: #5a7a5e !important;
}

/* ═══════════════════════════════════════════════════════
   FIURDELIN LIFESTYLE SECTION
   ═══════════════════════════════════════════════════════ */

/* Hide page titles on lifestyle pages */
.page-id-3747 .entry-title, .page-id-3747 .wp-block-post-title, .page-id-3747 header.entry-header,
.page-id-3749 .entry-title, .page-id-3749 .wp-block-post-title, .page-id-3749 header.entry-header,
.page-id-3755 .entry-title, .page-id-3755 .wp-block-post-title, .page-id-3755 header.entry-header,
.page-id-3756 .entry-title, .page-id-3756 .wp-block-post-title, .page-id-3756 header.entry-header,
.page-id-3757 .entry-title, .page-id-3757 .wp-block-post-title, .page-id-3757 header.entry-header,
.page-id-3758 .entry-title, .page-id-3758 .wp-block-post-title, .page-id-3758 header.entry-header,
.page-id-3759 .entry-title, .page-id-3759 .wp-block-post-title, .page-id-3759 header.entry-header { display: none !important; }

/* [JUL26 — CANDIDATE FOR REMOVAL]
   The -2rem pull was compensating for the oversized header. Check these seven
   pages on a phone after the header fix; if they now sit too high, delete. */
.page-id-3747 .entry-content, .page-id-3749 .entry-content,
.page-id-3755 .entry-content, .page-id-3756 .entry-content,
.page-id-3757 .entry-content, .page-id-3758 .entry-content,
.page-id-3759 .entry-content { margin-top: -2rem; }

/* Collection Pages */
.fl-page { max-width: 1100px; margin: 0 auto; padding: 1rem 1.5rem 3rem; }
.fl-page * { box-sizing: border-box; }
.fl-breadcrumb { font-size: 0.8rem; color: #999; margin-bottom: 1rem; }
.fl-breadcrumb a { color: #5a7a52; text-decoration: none; }
.fl-breadcrumb a:hover { text-decoration: underline; }
.fl-hero { text-align: center; margin-bottom: 2.5rem; padding: 1.5rem 0; }
.fl-hero h1 { font-family: 'EB Garamond', Georgia, serif; font-size: 2.2rem; font-weight: 500; color: #2d2d2d; margin: 0 0 0.4rem; }
.fl-hero .fl-tagline { font-size: 1.05rem; color: #5a7a52; font-style: italic; margin: 0 0 1.5rem; }
.fl-hero .fl-intro { max-width: 680px; margin: 0 auto; font-size: 0.92rem; line-height: 1.75; color: #555; }
.fl-group { margin-bottom: 2.5rem; }
.fl-group h2 { font-family: 'EB Garamond', Georgia, serif; font-size: 1.35rem; font-weight: 500; color: #2d2d2d; margin: 0 0 1rem; padding-bottom: 0.6rem; border-bottom: 1px solid #e8e5dc; }
.fl-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 1.2rem; justify-items: center; }
.fl-card, .fl-card:link, .fl-card:visited, .fl-card:hover, .fl-card:active { text-align: center; text-decoration: none !important; color: #333; display: block; background: #fff; border-radius: 10px; padding: 0.7rem; border: 1px solid #f0ede6; transition: transform 0.2s ease, box-shadow 0.2s ease; width: 100%; max-width: 220px; }
.fl-card:hover { transform: translateY(-3px); box-shadow: 0 6px 18px rgba(0,0,0,0.07); }
.fl-card * { text-decoration: none !important; }
.fl-card img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 6px; background: #f8f8f8; }
.fl-card .fl-label { display: block; margin-top: 0.5rem; font-size: 0.82rem; font-weight: 500; color: #2d2d2d; line-height: 1.3; }
.fl-bottom { text-align: center; margin: 2rem 0 0; padding: 1.5rem; background: #fafaf7; border-radius: 10px; border: 1px solid #e8e5dc; }
.fl-bottom p { font-size: 0.88rem; color: #666; margin: 0 0 0.4rem; line-height: 1.5; }
.fl-bottom a { color: #5a7a52; text-decoration: none; font-weight: 500; }
.fl-bottom a:hover { text-decoration: underline; }
.fl-also { margin: 2.5rem 0 0; text-align: center; }
.fl-also h3 { font-family: 'EB Garamond', Georgia, serif; font-size: 1.2rem; font-weight: 500; color: #2d2d2d; margin: 0 0 1rem; }
.fl-also-grid { display: flex; gap: 1.2rem; justify-content: center; flex-wrap: wrap; }
.fl-also-link, .fl-also-link:link, .fl-also-link:visited, .fl-also-link:hover, .fl-also-link:active { text-decoration: none !important; display: inline-block; padding: 0.7rem 1.5rem; background: #fafaf7; border: 1px solid #e8e5dc; border-radius: 8px; color: #2d2d2d; font-size: 0.85rem; transition: transform 0.2s ease, box-shadow 0.2s ease; }
.fl-also-link:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0,0,0,0.06); }
.fl-also-link * { text-decoration: none !important; }

/* Overview Page */
.fl-overview { max-width: 1100px; margin: 0 auto; padding: 1rem 1.5rem 3rem; }
.fl-ov-hero { text-align: center; margin-bottom: 2.5rem; padding: 2rem 0; }
.fl-ov-hero h1 { font-family: 'EB Garamond', Georgia, serif; font-size: 2.2rem; font-weight: 500; color: #2d2d2d; margin: 0 0 0.8rem; }
.fl-ov-hero p { max-width: 640px; margin: 0 auto; font-size: 0.95rem; color: #555; line-height: 1.75; }
.fl-ov-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 1.8rem; margin-top: 2.5rem; }
.fl-ov-card, .fl-ov-card:link, .fl-ov-card:visited, .fl-ov-card:hover, .fl-ov-card:active { display: block; text-decoration: none !important; color: #333; background: #fafaf7; border-radius: 12px; border: 1px solid #e8e5dc; overflow: hidden; transition: transform 0.2s ease, box-shadow 0.2s ease; }
.fl-ov-card:hover { transform: translateY(-4px); box-shadow: 0 8px 24px rgba(0,0,0,0.08); }
.fl-ov-card * { text-decoration: none !important; }
.fl-ov-card .fl-ov-imgs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; background: #e8e5dc; }
.fl-ov-card .fl-ov-imgs img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.fl-ov-card .fl-ov-body { padding: 1rem 1.3rem 1.2rem; }
.fl-ov-card .fl-ov-body h2 { font-family: 'EB Garamond', Georgia, serif; font-size: 1.25rem; font-weight: 500; margin: 0 0 0.3rem; color: #2d2d2d; }
.fl-ov-card .fl-ov-body p { font-size: 0.82rem; color: #777; margin: 0; line-height: 1.4; }
.fl-ov-card .fl-ov-body .fl-count { display: inline-block; margin-top: 0.5rem; font-size: 0.72rem; color: #5a7a52; font-weight: 500; }

/* Responsive */
@media (max-width: 600px) {
    .fl-grid { grid-template-columns: repeat(2, 1fr); gap: 0.8rem; }
    .fl-ov-grid { grid-template-columns: 1fr; }
}

/* =====================================================
   May 2026 — mobile polish
   ===================================================== */

/* ── (1) Hero brand line ("FIURDELIN — BOTANICAL ART STUDIO") ──
   The mobile rule `.home p { font-size: 16px !important; }` further up
   was inflating the hero tagline and breaking it onto two lines near the
   hamburger. This restores its intended small "eyebrow" size on mobile. */
@media (max-width: 768px) {
    .ba-homepage .hero-tagline {
        font-size: 0.8rem !important;
        line-height: 1.4 !important;
    }
}

/* [JUL26] The old `.site-branding { max-width: 68% }` rule that lived here
   has been REMOVED. Capping the logo by width let a tall logo render 200px+
   high and grow the whole header. The replacement is a HEIGHT cap, in the
   July 2026 block at the bottom of this file. */

/* ── (2) Buttons must never show a text underline — anywhere on the site ── */
.wp-block-button__link,
.btn,
.button,
a.btn,
input[type="submit"] {
    text-decoration: none !important;
}

/* ── (3) Floating third-party widgets (the two blue circles) ──
   Injected by a PLUGIN. Not defined in this file, so the rules below do
   NOTHING until you fill in each widget's real selector. Safe as-is.

   Inspect a blue circle on desktop, read its id/class, replace
   REPLACE-WITH-WIDGET-SELECTOR, then uncomment the block you want. */

/* Option A — hide on mobile only (non-essential widgets ONLY):
@media (max-width: 768px) {
    .REPLACE-WITH-WIDGET-SELECTOR { display: none !important; }
}
*/

/* Option B — keep them, lift them out of the content:
.REPLACE-WITH-WIDGET-SELECTOR {
    bottom: 90px !important;
    opacity: 0.85 !important;
}
*/

/* =====================================================
   May 2026 — full-width homepage on mobile
   ===================================================== */
@media (max-width: 768px) {
    .home .ast-container,
    .home .site-content,
    .home #primary,
    .home .entry-content {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* =====================================================
   Commercial page only — hide Etsy promo, keep legal footer
   ===================================================== */
.page-id-5304 .site-above-footer-wrap {
    display: none !important;
}


/* =====================================================================
   [JUL26] JULY 2026 — MOBILE HEADER
   ---------------------------------------------------------------------
   Fixes the ~235px white band that appeared above the hero on every
   mobile page. Root cause: header row height settings on mobile, plus a
   width-capped logo. This block is the belt-and-braces layer so the band
   cannot return if a theme update or preset reintroduces a height.

   Covers all three Astra header rows (above / primary / below) so it
   works regardless of which row your elements end up in.

   SAFE TO REMOVE: delete this entire block to revert.
   ===================================================================== */
@media (max-width: 768px) {

  /* (1) Stop the header stack reserving height */
  #masthead .ast-builder-grid-row,
  #masthead .ast-builder-grid-row-container,
  #masthead .site-header-section,
  #masthead .ast-mobile-header-wrap,
  #masthead .main-header-bar,
  #masthead .ast-primary-header-bar,
  #masthead .ast-above-header-bar,
  #masthead .ast-below-header-bar,
  #masthead .site-branding,
  #masthead .ast-site-identity {
    min-height: 0 !important;
  }

  #masthead .widget,
  #masthead .ast-builder-html-element {
    margin: 0 !important;
    padding: 0 !important;
  }

  /* (2) The burger dropdown must never be clipped */
  #masthead,
  #masthead .ast-builder-grid-row,
  #masthead .ast-builder-grid-row-container,
  #masthead .site-header-section,
  #masthead .ast-primary-header-bar,
  #masthead .ast-above-header-bar,
  #masthead .ast-below-header-bar {
    overflow: visible !important;
  }

  /* (3) Cap any logo by HEIGHT, never by width.
     A width cap is what let the header grow to 235px. */
  #masthead .custom-logo-link img,
  #masthead .site-logo-img img,
  #masthead .astra-logo-svg {
    max-height: 46px !important;
    width: auto !important;
    height: auto !important;
  }

  /* (4) Keep the text wordmark compact so it cannot collide
     with the burger on a 390px screen */
  .site-title,
  .ast-site-title-wrap .site-title,
  .ast-site-identity .site-title {
    font-size: 0.95rem !important;
    line-height: 1.15 !important;
    margin: 0 !important;
  }

  .site-description,
  .ast-site-identity .site-description {
    font-size: 0.6rem !important;
    letter-spacing: 1.2px !important;
    line-height: 1.2 !important;
    margin: 2px 0 0 !important;
  }

  /* (5) Burger button — 46px tap target (Apple minimum is 44px),
     legible over both light and dark first-blocks */
  #masthead .burger-btn {
    width: 46px !important;
    height: 46px !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,0.82) !important;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    box-shadow: 0 2px 10px rgba(0,0,0,0.12) !important;
    color: #1E3D2F !important;
    font-size: 22px !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  #masthead .burger-btn:focus-visible {
    outline: 2px solid #B08D57 !important;
    outline-offset: 2px !important;
  }

  /* (6) Dropdown sits above everything */
  #masthead .burger-menu-items {
    z-index: 99999 !important;
  }
}