/* Home Page */
.overflow-hidden {
    overflow: hidden;
}

.overflow-hidden-col-content .fl-col-content.fl-node-content{
    overflow: hidden;
}

.hh-home-walkplaywag-section img {
    max-width: 180px !important;
}

/* About us Page */
.hh-aboutus-img-collection {
    overflow: hidden !important;
}

/* Shop page */
.custom-products-by-category {
    width: 100%;
}

.product-category-heading {
    margin: 80px 0 40px;
    text-align: center;
    font-size: 24px !important;
    text-transform: uppercase;
}

.product-card-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 15px;
}

.product-card {
    display: block;
    text-decoration: none;
    transition: 0.3s ease;
    height: 100%;
    text-align: center;
    font-family: 'FantabularMVB Reg';
    color: #11359D !important;
}

a.product-card:hover {
    text-decoration: none !important;
}

.product-card-image img {
    width: 100%;
    display: block;
    height: auto;
}

.product-card-content {
    padding: 16px;
}

.product-card-title {
    font-size: 12px !important;
    font-family: 'FantabularMVB Med' !important;
    font-weight: normal !important;
    margin: 0 0 8px;
    text-transform: uppercase;
}

.product-card-image {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}

.product-card-image.product-soldout::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.5);
    pointer-events: none;
    z-index: 9;
}

.product-soldout-label {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    font-size: 10px;
    text-transform: lowercase;
    padding: 5px 10px;
    border-radius: 5px;
    z-index: 99;
}

/* Shop page filter */
.collection-filter {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 25px;
    text-align: center;
}

.collection-filter a.collection-filter__btn {
    font-family: 'FantabularMVB Med';
    text-transform: uppercase;
    color: rgb(17, 53, 157, 0.5);
    font-size: 12px;
    line-height: 1;
    letter-spacing: 1.2px;
    cursor: pointer;
}

.collection-filter a.collection-filter__btn.is-active {
    color: rgb(17, 53, 157, 1);
}

.collection-loader {
    position: fixed;
    inset: 0;
    /* top/right/bottom/left: 0 */
    background: rgba(255, 255, 255, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
}

.collection-loader.is-visible {
    opacity: 1;
    visibility: visible;
}

.collection-loader__spinner {
    width: 48px;
    height: 48px;
    border: 4px solid rgba(0, 0, 0, 0.15);
    border-top-color: #000;
    /* spinner accent color */
    border-radius: 50%;
    animation: collection-spin 0.8s linear infinite;
}

@keyframes collection-spin {
    to {
        transform: rotate(360deg);
    }
}

.collection-hidden {
    display: none !important;
}

/* ------- */
/* Responsive design */
@media screen and (max-width:768px) {
    .product-category-heading {
        margin: 5px 0 20px;
        font-size: 18px !important;

    }
}

@media (max-width: 992px) {
    .product-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Contact Us form */
.hh-contactus-form {
    margin-left: 100px;
    margin-right: 100px;
}

.hh-contactus-form .gfield input,
.hh-contactus-form .gfield textarea.large {
    border-radius: 15px !important;
    border: 1px solid #11359D !important;
    color: rgba(17, 53, 157, 0.50);
    color: #000;
    text-transform: uppercase;

    ;
}

.hh-contactus-form .gfield-choice-input {
    border-radius: 100% !important;
    border: 1px solid #11359D !important;
}

.hh-contactus-form #gform_submit_button_1,
.hh-contactus-form #gform_submit_button_2 {
    border-radius: 10px;
    background: #11359D;
    font-family: 'FantabularMVB Med';
    text-transform: uppercase;
    font-size: 10px;
    padding: 12px 16px;
    letter-spacing: 1px;
}

.hh-contactus-form #gform_submit_button_2 {
    margin: auto;
}

.hh-contactus-form .gfield input::placeholder,
.hh-contactus-form .gfield textarea.larg::placeholder,
.gform-theme--framework .gform-field-label--type-inline {
    font-family: 'FantabularMVB Med';
    color: #11359D80 !important;
}

.hh-contactus-form .gform-theme--foundation .gform_fields {
    row-gap: 12px;
}

.hh-contactus-form #gform_fields_2 .gfield input {
    font-family: 'FantabularMVB Med';
    color: #11359D;
    max-width: 320px !important;
    margin: auto;
    font-size: 12px;
}

.fl-accordion-button .fl-accordion-button-icon-left,
.fl-accordion-button .fl-accordion-button-icon-right {
    outline: none !important;
}

.fl-accordion-button-label {
    font-family: 'Helvetica Neue' !important;
}

.faq-nav a {
    opacity: 0.4;
    transition: color 0.2s ease;
}

.faq-nav a.active {
    opacity: 1;
}

.faq-nav a:hover {
    color: #333333;
}

@media screen and (min-width: 993px) {
    .home-bitofhooray-section .fl-row-content-wrap {
        height: 420px;
    }
}

@media screen and (min-width: 769px) and (max-width: 992px) {
    .home-bitofhooray-section .fl-row-content-wrap {
        height: 300px;
    }
}

@media screen and (min-width: 769px) {
    .hh-home-book-image img {
        transform: rotate(5deg);
    }

    .faq-nav {
        position: sticky;
        top: 50px;
        align-self: flex-start;
    }
}

@media screen and (max-width: 992px) {
    .hh-home-walkplaywag-section img {
        max-width: 140px !important;
    }
}

@media (max-width: 768px) {
    .hh-home-walkplaywag-slide {
        overflow: hidden !important;
    }

    .hh-home-walkplaywag-slide .fl-content-slider,
    .hh-home-walkplaywag-slide .bx-wrapper,
    .hh-home-walkplaywag-slide .bx-viewport {
        overflow: visible !important;
    }

    .hh-home-walkplaywag-slide .fl-content-slider {
        max-width: 100% !important;
    }

    .hh-home-walkplaywag-slide .fl-slide {
        width: calc(100vw - 120px) !important;
        margin-right: 10px !important;
        margin-left: 10px !important;
    }

    .hh-home-walkplaywag-slide .fl-slide .fl-slide-content {
        padding: 10px !important;
    }

    .hh-home-walkplaywag-slide .fl-slide .fl-slide-text,
    .hh-home-walkplaywag-slide .fl-slide .fl-slide-text p {
        color: #11359D !important;
    }

    .hh-home-walkplaywag-slide .fl-slide .fl-slide-title {
        margin-top: 10px !important;
        color: #11359D !important;
        margin-bottom: 0px !important;
        text-align: start !important;
        font-weight: bold;
        font-style: normal;
        text-transform: uppercase;
        font-size: 19px;
        letter-spacing: 1px;
    }

    /* .hh-home-walkplaywag-slide ul.fl-content-slider-wrapper::before {
        content: "";
        position: absolute;
        left: -20px;
        top: 0;
        width: 80px;
        height: 100%;
        background-image: url(https://hoorayhousepets.com/wp-content/uploads/2026/04/img-book-shelf.png);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: top;
        z-index: 2;
    } */

    .hh-home-walkplaywag-slide .fl-slide-0::before {
        content: "";
        position: absolute;
        left: -190px;
        top: 0;
        width: 180px;
        height: 100%;
        background-image: url(https://hoorayhousepets.com/wp-content/uploads/2026/04/img-book-shelf.png);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: left top;
        z-index: 5;
        pointer-events: none;
    }

    .hh-home-walkplaywag-slide .fl-slide-0 {
        margin-left: 60px !important;
    }

    .hh-home-walkplaywag-slide .fl-slide-mobile-photo img {
        max-width: 240px !important;
        border-radius: 15px;
    }

    .hh-home-walkplaywag-slide .fl-slide-2::after {
        content: "";
        position: absolute;
        right: -190px;
        top: 0;
        width: 180px;
        height: 100%;
        background-image: url(http://hoorayhousepets.com/wp-content/uploads/2026/04/img-plant-stand.png);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: right top;
        z-index: 5;
        pointer-events: none;
    }

    .hh-home-walkplaywag-slide button.fl-content-ui-button {
        outline: none !important;
        ;
    }

    .hh-home-walkplaywag-slide button.fl-content-ui-button svg {
        outline: none !important;
        background: rgb(0 0 0 / 70%) !important;
        border-radius: 100% !important;
        padding: 5px !important;
    }

    .product-card-grid {
        gap: 10px;
    }

    .product-card-title,
    .product-card-size {
        font-size: 10px !important;
    }

    .hh-contactus-form #gform_submit_button_1,
    .hh-contactus-form #gform_submit_button_2 {
        margin: auto;
    }

    .row-full-bg .fl-row-content-wrap {
        background-size: 100% !important;
    }

    /* Club Collection Home Page Slide */
    .hh-home-shop-club-slide {
        overflow: hidden !important;
    }

    .hh-home-shop-club-slide .fl-content-slider,
    .hh-home-shop-club-slide .bx-wrapper,
    .hh-home-shop-club-slide .bx-viewport {
        overflow: visible !important;
    }

    .hh-home-shop-club-slide .fl-content-slider {
        max-width: 100% !important;
    }

    .hh-home-shop-club-slide .fl-slide {
        width: calc(100vw - 120px) !important;
        margin-right: 10px !important;
        margin-left: 10px !important;
    }


    .hh-home-shop-club-slide .fl-slide-mobile-photo {
        border-radius: 20px;
        overflow: hidden;
    }

    .hh-home-shop-club-slide .fl-slide-content-wrap {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100% !important;
    }

    .hh-home-shop-club-slide .fl-content-slider .fl-slide {
        padding: 0px;
    }

    .hh-home-shop-club-slide .fl-content-slider .fl-slide-content {
        background-color: transparent;
        padding: 0 !important;
    }

    .hh-home-shop-club-slide .fl-content-slider .fl-slide-content a.slide-cta {
        background: #87a9e3;
        padding: 10px 20px;
        text-decoration: none;
        text-transform: uppercase;
        /* font-weight: bold; */
        font-family: 'FantabularMVB Med';
        line-height: 1.2;
        font-size: 11px;
        letter-spacing: 1.2px;
        text-transform: uppercase;
        border-radius: 10px;
    }

    /* Touch fix: the centered content overlay holds a no-href "Shop X" button
       (a.slide-cta) that is given a real href in custom/script.js. Let the
       overlay pass clicks through to the linked slide image beneath, but keep
       the CTA button itself interactive so it works as the primary tap target.
       (No hover on touch, so the desktop hover-reveal does not apply here.) */
    .hh-home-shop-club-slide .fl-content-slider .fl-slide-content-wrap {
        pointer-events: none;
    }

    .hh-home-shop-club-slide .fl-content-slider .fl-slide-content-wrap a.slide-cta {
        pointer-events: auto;
        cursor: pointer;
    }

}

@media screen and (max-width:350px) {
    .hh-contactus-form #gform_fields_2 .gfield input {
        max-width: 260px !important;
    }
}

@media screen and (min-width: 1201px) {
    .home-page-hero-image img {
        transform: scale(1.13);
    }
}

@media screen and (min-width: 769px) and (max-width: 1200px) {
    .home-page-hero-image img {
        transform: scale(1.2);
    }
}

/* --- Sticky desktop header (7/24: mobile already has its own sticky bar) --- */
@media (min-width: 769px) {
    header.fl-builder-content-392 {
        position: sticky;
        top: 0;
        z-index: 1000;
        transition: box-shadow 0.25s ease;
    }

    header.fl-builder-content-392.hh-header-stuck {
        box-shadow: 0 3px 14px rgba(0, 0, 0, 0.18);
    }
}


/* --- Celebrate the Walk: periwinkle band (match @hoorayhousepets) + intro line --- */
.fl-node-8amrzuce1s0k .fl-row-content-wrap,
.fl-node-urgl60xe7dsq .fl-row-content-wrap {
    background-color: #87a9e3 !important;
}
.hh-walk-intro {
    display: block;
    color: #ffffff;
    font-size: 0.3em;
    line-height: 1.1;
    margin-bottom: 2px;
}


/* Celebrate the Walk: sticky tile buttons (no hover-reveal) in blue, darker on hover */
.fl-node-8amrzuce1s0k a.fl-button,
.fl-node-urgl60xe7dsq a.fl-button {
    background-color: #11359D !important;
    background: #11359D !important;
    border-color: #11359D !important;
    transition: background-color .2s ease, border-color .2s ease !important;
}
.fl-node-8amrzuce1s0k a.fl-button:hover,
.fl-node-urgl60xe7dsq a.fl-button:hover {
    background-color: #0D2A78 !important;
    background: #0D2A78 !important;
    border-color: #0D2A78 !important;
}
/* Celebrate the Walk: force tile CTA buttons always visible (remove hover-reveal) */
.fl-node-8amrzuce1s0k .fl-button-wrap,
.fl-node-8amrzuce1s0k .fl-module-button,
.fl-node-8amrzuce1s0k a.fl-button,
.fl-node-urgl60xe7dsq .fl-button-wrap,
.fl-node-urgl60xe7dsq .fl-module-button,
.fl-node-urgl60xe7dsq a.fl-button {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
}


/* Celebrate the Walk intro line — beat BB heading typography */
.fl-node-6hgnd387ureq .hh-walk-intro,
.fl-node-nfib5czgl76v .hh-walk-intro {
    font-family: "FantabularMVB Med" !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    display: block !important;
    color: #11359D !important;
    font-size: 0.4em !important;
    line-height: 1.1 !important;
    margin-bottom: 35px !important;
}

/* ===== Walk /shop rework 2026-07-26 ===== */
/* Walk hero: contained card, no border, light neutral bg */
.fl-node-wl0b04c68953 .fl-row-content-wrap,
.fl-node-wlee303b6e86 .fl-row-content-wrap { background-color: transparent !important; }
.fl-node-wl0b04c68953 .fl-row-content,
.fl-node-wlee303b6e86 .fl-row-content { background-color:#EEEDEB; border-radius:20px; border:none; overflow:hidden; }
/* remove the cloned Country-Club green column border */
.fl-node-wl0b04c68953 .fl-col-content, .fl-node-wlee303b6e86 .fl-col-content { border:none !important; }
/* hero body text + Target callout in brand blue, centered */
.fl-node-wl0b04c68953 .fl-rich-text, .fl-node-wl0b04c68953 .fl-rich-text *,
.fl-node-wlee303b6e86 .fl-rich-text, .fl-node-wlee303b6e86 .fl-rich-text * { color:#11359D !important; }
.fl-node-wl0b04c68953 .fl-rich-text, .fl-node-wlee303b6e86 .fl-rich-text { text-align:center !important; }
.fl-node-wl5d68f14a49 .fl-photo-content, .fl-node-wl5d68f14a49 .fl-photo-img,
.fl-node-wlcd12f5b487 .fl-photo-content, .fl-node-wlcd12f5b487 .fl-photo-img { width:200px !important; margin-left:auto !important; margin-right:auto !important; }
.fl-node-wl5d68f14a49, .fl-node-wlcd12f5b487 { margin-top:40px !important; }
/* space below the Target callout */
.fl-node-wl397fb96531, .fl-node-wl6c3c68d2d6 { margin-bottom:40px !important; }
/* Walk hero image: fill the column responsively (override BB's fixed 500px) */
.fl-node-wl69e0bb200a .fl-photo-content, .fl-node-wl69e0bb200a .fl-photo-img,
.fl-node-wl44202f1b58 .fl-photo-content, .fl-node-wl44202f1b58 .fl-photo-img { width:100% !important; max-width:100% !important; }
/* pugs image scales up to fill the card, reaching the top (desktop) */
@media (min-width:769px){
  .fl-node-wl0b04c68953 .fl-photo-content { display:block; }
  .fl-node-wl0b04c68953 img[src*="pugs-on-leash-2"]{ height:100%; width:100%; max-width:none; margin:0; object-fit:contain; object-position:center top; }
}

/* ===== Walk category pages 2026-07-26 ===== */
.walk-cat-hero{max-width:1280px;margin:90px auto 0;background:#EEEDEB;border-radius:20px;display:flex;align-items:stretch;overflow:hidden;min-height:420px;}
.walk-cat-hero__text{flex:1;padding:56px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#11359D;}
.walk-cat-hero__logo{width:210px;max-width:70%;height:auto;margin:0 auto 28px;}
.walk-cat-hero__subhead{color:#11359D !important;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:17px !important;margin:0 0 6px !important;line-height:1.3;}
.walk-cat-hero__tagline{color:#11359D !important;font-size:15px;line-height:1.7;margin:0 auto;max-width:380px;}
.walk-cat-hero__img{flex:1;}
.walk-cat-hero__img img{width:100%;height:100%;object-fit:cover;display:block;}
.walk-cat-crosslinks{max-width:1280px;margin:64px auto;display:flex;justify-content:center;gap:44px;flex-wrap:wrap;padding:0 20px;}
.walk-cat-crosslinks a{color:#11359D;font-family:"FantabularMVB Med" !important;font-weight:500 !important;letter-spacing:.06em;text-transform:uppercase;font-size:14px;text-decoration:none;transition:color .15s ease;}
.walk-cat-crosslinks a:hover{color:#889BCD !important;}
@media(max-width:781px){.walk-cat-hero{flex-direction:column;}.walk-cat-hero__img img{height:280px;}.walk-cat-hero__text{padding:36px 28px;}}

/* ===== Homepage Walk announcement banner (above header) ===== */
.hh-walk-banner{background:#EDE8A3;width:100%;}
/* no background hover on the bar/button — text-only hover instead */
.hh-walk-banner__inner:hover,
.hh-walk-banner__inner:focus,
.hh-walk-banner__inner:focus-visible,
.hh-walk-banner__inner:active{background:transparent !important;outline:none !important;box-shadow:none !important;border:none !important;}
.hh-walk-banner__msg,.hh-walk-banner__msg *{transition:color .2s ease;}
.hh-walk-banner__inner:hover .hh-walk-banner__msg,
.hh-walk-banner__inner:hover .hh-walk-banner__msg *{color:#889BCD !important;}
.hh-walk-banner__inner{max-width:1240px;width:100%;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:22px;padding:9px 28px;text-decoration:none;border:none;background:transparent;cursor:pointer;font:inherit;color:inherit;}
.hh-walk-banner__icons{flex:0 0 auto;height:22px;width:auto;display:block;}
.hh-walk-banner__msg{flex:0 1 auto;text-align:center;color:#11359D;text-transform:uppercase;letter-spacing:.08em;font-size:13px;line-height:1;}
.hh-walk-banner__lead{font-family:"FantabularMVB Bold";}
.hh-walk-banner__sub{font-family:"FantabularMVB Reg";}
.hh-walk-banner__cta{flex:0 0 auto;color:#11359D;font-family:"Homemade Apple",cursive;font-size:22px;line-height:1;text-transform:none;letter-spacing:0;}
.hh-walk-banner__inner:hover,
.hh-walk-banner__inner:hover .hh-walk-banner__msg,
.hh-walk-banner__inner:hover .hh-walk-banner__cta{text-decoration:none !important;}
@media(max-width:700px){
  .hh-walk-banner__inner{flex-wrap:wrap;justify-content:center;gap:8px 16px;padding:8px 16px;}
  .hh-walk-banner__icons{order:1;height:18px;}
  .hh-walk-banner__cta{order:2;font-size:18px;}
  .hh-walk-banner__msg{order:3;flex:1 1 100%;font-size:12px;}
}

/* ===== Homepage email signup pop-up ("Join the house of love & lunacy") ===== */
.hhp-emailpop{
  position:fixed; inset:0; z-index:100050;
  display:flex; align-items:center; justify-content:center; padding:20px;
  background:rgba(30,40,35,.55);
  opacity:0; visibility:hidden; transition:opacity .35s ease, visibility .35s ease;
}
.hhp-emailpop.is-open{ opacity:1; visibility:visible; }
.hhp-emailpop[hidden]{ display:none; }
.hhp-emailpop__dialog{
  position:relative; width:min(92vw, 550px); aspect-ratio:623 / 710; max-height:92vh;
  overflow:hidden;                 /* masks the cart as it slides in / out */
  border-radius:6px; box-shadow:0 24px 60px rgba(20,30,25,.35);
  transform:translateY(14px) scale(.98); transition:transform .35s cubic-bezier(.2,.8,.25,1);
}
.hhp-emailpop.is-open .hhp-emailpop__dialog{ transform:none; }
.hhp-emailpop__bg{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  display:block; z-index:0; pointer-events:none; user-select:none;
}
/* golf-cart drives left -> right along the grass, clipped by the dialog */
.hhp-emailpop__cart{
  position:absolute; bottom:1.5%; left:-64%; width:60%; height:auto; z-index:4;
  pointer-events:none; user-select:none; will-change:left;
  animation:none !important; display:none !important; /* animated cart sequence disabled per client */
}
@keyframes hhp-cart-drive{ 0%{ left:-64%; } 100%{ left:106%; } }
@media (prefers-reduced-motion:reduce){ .hhp-emailpop__cart{ animation:none; left:2%; } }
.hhp-emailpop__content{
  position:absolute; left:20%; right:20%; top:18%; z-index:3; text-align:center; color:#3c5244;
}
.hhp-emailpop__title{
  font-family:'Homemade Apple', cursive; color:#11359D; font-weight:400;
  font-size:18px; line-height:1.3; margin:0 20px 1em;
}
.hhp-emailpop__body{
  font-family:"Courier New", Courier, monospace; color:#11359D; box-sizing:border-box;
  font-size:clamp(11px, 2.3vw, 14px); line-height:1.6; margin:0 0 1.25em; padding:0 6%; letter-spacing:.01em;
}
.hhp-emailpop .hhp-emailpop__input{
  width:80% !important; max-width:80% !important; box-sizing:border-box; padding:12px 15px; margin:0 auto 16px; display:block;
  border:1px solid #11359D; border-radius:3px; background:#fff;
  font-family:"Courier New", Courier, monospace; font-size:15px; color:#11359D; letter-spacing:.03em;
}
.hhp-emailpop__input::placeholder{ color:#11359D; opacity:.75; }
.hhp-emailpop__input:focus{ outline:2px solid #11359D; outline-offset:1px; }
.hhp-emailpop__submit{
  display:inline-block; border:none; cursor:pointer; background:#11359D; color:#fdfbf4;
  font-family:"Courier New", Courier, monospace; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; font-size:15px; padding:13px 34px; border-radius:26px;
  transition:background .2s ease, transform .1s ease;
}
.hhp-emailpop__submit:hover{ background:#0D2A78; }
.hhp-emailpop__submit:active{ transform:translateY(1px); }
.hhp-emailpop__submit[disabled]{ opacity:.6; cursor:default; }
.hhp-emailpop__msg{
  min-height:1em; margin:12px 0 0; font-family:"Courier New", Courier, monospace;
  font-size:13px; letter-spacing:.02em; color:#3c5244;
}
.hhp-emailpop__msg.is-error{ color:#b23b3b; }
.hhp-emailpop__legal{
  position:absolute; left:6%; right:6%; bottom:2.4%; z-index:3; margin:0; text-align:center;
  font-family:"Courier New", Courier, monospace; font-size:clamp(9px, 1.9vw, 11px);
  letter-spacing:.02em; color:#3c5244; opacity:.9;
}
/* clickable close over the drawn X (top-right of the art) */
.hhp-emailpop .hhp-emailpop__close{
  position:absolute !important; top:1% !important; right:6% !important; left:auto !important; bottom:auto !important;
  z-index:5; width:12%; height:9%; min-height:0; padding:0; margin:0;
  background:transparent !important; border:none !important; box-shadow:none !important;
  cursor:pointer; font-size:0; color:transparent; line-height:0;
}
.hhp-emailpop__close:focus-visible{ outline:2px solid #3c5244; border-radius:4px; }
body.hhp-emailpop-open{ overflow:hidden; }
@media (max-width:520px){
  .hhp-emailpop__content{ top:15%; }
  .hhp-emailpop__submit{ padding:12px 26px; }
}

/* ===== 9/4 launch: Homepage hero → Walk (blue #11359D) ===== */
.fl-node-yd6ovwn5p178 .fl-rich-text, .fl-node-yd6ovwn5p178 .fl-rich-text *,
.fl-node-4prjv7u2g98c .fl-rich-text, .fl-node-4prjv7u2g98c .fl-rich-text * {
  color: #11359D !important;
}
.fl-node-4s1whtv0u2bj a.fl-button, .fl-node-4s1whtv0u2bj a.fl-button:hover,
.fl-node-e4uv2jz86loi a.fl-button, .fl-node-e4uv2jz86loi a.fl-button:hover {
  background: #11359D !important;
  background-color: #11359D !important;
  border-color: #11359D !important;
}

/* Hero photo tucks up under the sticky blue header (top hidden BEHIND the header).
   The hero row ships with overflow:hidden, which clips the photo at the row's top
   edge; we open the whole chain so the photo can slide up behind the opaque header
   (z-index 1000), which then clips it. Only the photo moves. Desktop only. */
@media (min-width: 769px) {
  .fl-node-yd6ovwn5p178,
  .fl-node-yd6ovwn5p178 .fl-row-content-wrap,
  .fl-node-yd6ovwn5p178 .fl-row-content,
  .fl-node-yd6ovwn5p178 .fl-col,
  .fl-node-yd6ovwn5p178 .fl-col-content { overflow: visible !important; }
  /* Hero photo ~15% larger via real width (grows its height too, so the row
     gets taller and the left-column text gains breathing room from the waves),
     centered in its column, and tucked up under the sticky header which clips
     its top. */
  .fl-node-3q58o2ducfex .fl-photo-img {
    width: 115% !important; max-width: none !important; margin-left: -7.5% !important;
  }
  .fl-node-3q58o2ducfex { margin-top: 0px !important; }
}

/* ===== 9/4 launch: Meet the Creators (replaces Season-for-Sport) — centered, blue ===== */
.fl-node-evcu7bahwdpy .fl-col-content,
.fl-node-wnfgx2bh1eip .fl-col-content { text-align: center; }
.fl-node-evcu7bahwdpy .fl-heading, .fl-node-evcu7bahwdpy .fl-heading *,
.fl-node-evcu7bahwdpy .fl-rich-text, .fl-node-evcu7bahwdpy .fl-rich-text *,
.fl-node-wnfgx2bh1eip .fl-heading, .fl-node-wnfgx2bh1eip .fl-heading *,
.fl-node-wnfgx2bh1eip .fl-rich-text, .fl-node-wnfgx2bh1eip .fl-rich-text * { color: #11359D !important; }
/* creators image full-width, centered */
.fl-node-gdhay6587ru9 .fl-photo-content, .fl-node-gdhay6587ru9 .fl-photo-img,
.fl-node-5hgjk9pn0yao .fl-photo-content, .fl-node-5hgjk9pn0yao .fl-photo-img {
  width: 100% !important; max-width: 1100px !important; margin: 0 auto !important;
}
.fl-node-gdhay6587ru9 .fl-photo, .fl-node-5hgjk9pn0yao .fl-photo { text-align: center; }
/* MEET THE PETS button in navy */
.fl-node-6bxz3u7ng05i a.fl-button, .fl-node-6bxz3u7ng05i a.fl-button:hover,
.fl-node-5r9y7z83fvod a.fl-button, .fl-node-5r9y7z83fvod a.fl-button:hover {
  background: #11359D !important; background-color: #11359D !important; border-color: #11359D !important;
}

/* ===== 9/4 launch refinements (round 2) ===== */
/* Celebrate the Walk title -> blue (node IS the heading element) */
.fl-node-6hgnd387ureq, .fl-node-6hgnd387ureq *,
.fl-node-nfib5czgl76v, .fl-node-nfib5czgl76v * { color: #11359D !important; }
/* Meet the Creators headline on one line (desktop) */
@media (min-width: 769px) {
  .fl-node-evcu7bahwdpy .fl-heading-text { white-space: nowrap; }
}
/* Designed for a life with pets: center tile paragraph text */
.fl-node-0tklf3ac4huo, .fl-node-0tklf3ac4huo .fl-rich-text, .fl-node-0tklf3ac4huo .fl-rich-text *,
.fl-node-0ilu6nkq3hvg, .fl-node-0ilu6nkq3hvg .fl-rich-text, .fl-node-0ilu6nkq3hvg .fl-rich-text *,
.fl-node-q81on0mu2sbj, .fl-node-q81on0mu2sbj .fl-rich-text, .fl-node-q81on0mu2sbj .fl-rich-text * { text-align: center !important; }

/* ===== 9/4 launch refinements (round 3) ===== */
/* Meet the Creators: constrain body copy to ~title width so it breaks to a new line
   (the node itself carries .fl-rich-text) */
@media (min-width: 769px) {
  .fl-node-nlhv9cbj5281.fl-rich-text { max-width: 580px !important; margin-left: auto !important; margin-right: auto !important; }
}
/* Stylish goods: more breathing room above the "Shop Hooray House at Target" button */
.fl-node-a0twkxvmhu5q.fl-module { margin-top: 34px !important; }

/* Homepage mobile "designed for a life with pets" slider: the per-slide heading
   was left-aligned by a theme rule (.hh-home-walkplaywag-slide ... .fl-slide-title
   { text-align:start !important }) — override it with a more specific selector so
   the heading centers with the (already centered) image + body text. */
.fl-node-e8zo4kt20gxv .fl-slide .fl-slide-content .fl-slide-title { text-align: center !important; }
/* the mobile slide image was left-aligned in its content area (left 60 / right 75)
   while the heading + text center — center the image so the whole block lines up */
.fl-node-e8zo4kt20gxv .fl-slide .fl-slide-mobile-photo { text-align: center !important; }
.fl-node-e8zo4kt20gxv .fl-slide .fl-slide-mobile-photo-img { display: block !important; margin-left: auto !important; margin-right: auto !important; float: none !important; }

/* ===== About Us — "The Pets of Hooray House" BB Content Slider card ===== */
/* Each slide becomes a white rounded card: illustration on top, name + caption
   below. Text is already brand-blue in the module; the white card makes it read. */
.fl-node-jfm6wpki972r { position: relative; }
.fl-node-jfm6wpki972r .fl-slide-foreground {
  background: #ffffff;
  border-radius: 22px;
  padding: 26px 26px 32px;
  max-width: 440px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  box-shadow: 0 22px 50px rgba(0,0,0,.20);
}
/* illustration on top, name + caption below */
.fl-node-jfm6wpki972r .fl-slide-photo-wrap { order: 1; margin: 0 0 4px !important; padding: 0 !important; }
.fl-node-jfm6wpki972r .fl-slide-content-wrap { order: 2; margin: 0 !important; padding: 0 !important; }
/* the module puts 60px margins/padding around the photo + content per slide — remove
   them so the card is compact (card spacing comes from .fl-slide-foreground padding) */
.fl-node-jfm6wpki972r .fl-slide-content { margin: 0 !important; padding: 0 !important; }
.fl-node-jfm6wpki972r .fl-slide-photo { text-align: center; margin: 0 !important; padding: 0 !important; }
/* On mobile BB swaps to .fl-slide-mobile-photo, which sits OUTSIDE the white card
   (.fl-slide-foreground) so the image spills onto the blue. Hide it and keep the
   in-card photo shown on every viewport so the image stays contained in the card. */
.fl-node-jfm6wpki972r .fl-slide-mobile-photo { display: none !important; }
.fl-node-jfm6wpki972r .fl-slide-photo-wrap { display: block !important; }
.fl-node-jfm6wpki972r .fl-slide-photo-img {
  display: block; margin: 0 auto; width: auto; max-width: 100%; height: auto;
  max-height: 430px; object-fit: contain;
}
/* Mobile: shrink the in-card illustration so it has more left/right padding */
@media (max-width: 768px) {
  .fl-node-jfm6wpki972r .fl-slide-photo-img { max-width: 76% !important; }
}
/* let only the white card show — clear any module/slide backgrounds */
.fl-node-jfm6wpki972r .fl-slide,
.fl-node-jfm6wpki972r .fl-slide-content-wrap,
.fl-node-jfm6wpki972r .fl-slide-content { background: transparent !important; }
/* name -> Homemade Apple script, brand blue, centered */
.fl-node-jfm6wpki972r .fl-slide-title {
  font-family: "Homemade Apple", cursive !important;
  color: #11359D !important;
  font-weight: 400;
  text-align: center;
  font-size: 30px; line-height: 1.15;
  margin: 8px 0 12px;
}
/* caption -> brand blue, centered */
.fl-node-jfm6wpki972r .fl-slide-text,
.fl-node-jfm6wpki972r .fl-slide-text * {
  color: #11359D !important;
  text-align: center;
}
.fl-node-jfm6wpki972r .fl-slide-text { font-size: 14px; line-height: 1.6; }

/* Arrows: keep BB's NATIVE nav positioning/behavior untouched (no position
   overrides = no hover jump). Only restyle the graphic into a thin white chevron
   by hiding BB's SVG and drawing a chevron with the button's ::before. */
/* move the arrows up so they sit vertically with the card/content block */
.fl-node-jfm6wpki972r .fl-content-slider-navigation { margin-top: -72px !important; }
.fl-node-jfm6wpki972r .fl-content-slider-svg-container { width: 60px !important; height: 120px !important; }
.fl-node-jfm6wpki972r .fl-content-slider-svg-container svg { display: none !important; }
.fl-node-jfm6wpki972r .slider-prev::before,
.fl-node-jfm6wpki972r .slider-next::before {
  content: ""; position: absolute; top: 50%; left: 50%;
  width: 54px; height: 54px; margin: -27px 0 0 -27px;
  background-repeat: no-repeat; background-position: center; background-size: contain;
  background-image: url("/wp-content/themes/bb-theme-child/custom/images/scratched-arrow.webp");
}
/* asset (scratched circle chevron) points right = next; rotate 180deg for prev */
.fl-node-jfm6wpki972r .slider-prev::before { transform: rotate(180deg); }
/* Arrows: full opacity at rest, dim on hover (reverse of BB's default 0.7/1.0) */
.fl-node-jfm6wpki972r .fl-content-slider-navigation .slider-prev,
.fl-node-jfm6wpki972r .fl-content-slider-navigation .slider-next {
  opacity: 1 !important; transition: opacity .2s ease !important;
}
.fl-node-jfm6wpki972r .fl-content-slider-navigation .slider-prev:hover,
.fl-node-jfm6wpki972r .fl-content-slider-navigation .slider-next:hover {
  opacity: .7 !important;
}
/* Mobile: inset the white card with L/R margin; hide nav arrows (slider auto-runs) */
@media (max-width: 768px) {
  .fl-node-jfm6wpki972r .fl-content-slider-navigation { display: none !important; }
  .fl-node-jfm6wpki972r .fl-slide-foreground {
    margin-left: 18px !important; margin-right: 18px !important;
  }
}
