/* Banners Printed: shop pages (category, product, basket, checkout, help, account, search) in the party-bunting look.
   Loaded after fp-shop.css; palette and fonts already follow through the tokens re-pointed in bnr.css, this sheet
   changes shape: ink outlines, hard drop shadows, rounded cards, pill buttons. */

body.bn-site:not(.bn-front){background:var(--page)}
body.bn-site:not(.bn-front) h1,body.bn-site:not(.bn-front) h2,body.bn-site:not(.bn-front) h3{font-family:var(--display);font-weight:700;letter-spacing:-.005em}
body.bn-site:not(.bn-front) .fp-wrap{max-width:var(--bn-max)}

/* no mascots on this shop: their empty frames go too */
.fp-cathead-blob,.fp-accdash-art,.fp-acc-peek,.fp-arthead-art,.fp-getcard-art,.fp-fill-pet,.fp-side-price-m,.fph-pair,.fp-loading-pug,.fp-askcard-m,.fp-empty-m{display:none!important}

/* ---------------- head bands: cream with dots and bunting, not a navy slab ---------------- */
.fp-cathead,.fp-arthead{background:var(--dots),var(--page)!important;color:var(--ink);border-bottom:3px solid var(--ink);position:relative;overflow:hidden}
.fp-cathead::before,.fp-arthead::before{content:""!important;position:absolute!important;inset:0 0 auto 0!important;height:34px!important;width:auto!important;background:var(--bunting) repeat-x 0 0/160px 34px!important;-webkit-mask-image:none!important;mask-image:none!important;opacity:1!important;border-radius:0!important}
.fp-cathead::after,.fp-arthead::after{content:"";position:absolute;right:-140px;bottom:-200px;width:420px;height:420px;border-radius:50%;background:var(--sun-t);border:3px solid var(--ink);pointer-events:none;z-index:0}
.fp-arthead::after{width:300px;height:300px;right:-110px;bottom:-170px;background:var(--teal-t)}
.fp-cathead-in,.fp-arthead-in{position:relative;z-index:1;padding-top:44px!important}
.fp-cathead h1,.fp-arthead h1{color:var(--ink)!important;text-shadow:none!important;font-weight:700!important}
.fp-cathead .crumbs li,.fp-arthead .crumbs li,.fp-cathead .crumbs [aria-current],.fp-arthead .crumbs [aria-current]{color:var(--mute)!important}
.fp-cathead .crumbs a,.fp-arthead .crumbs a{color:var(--ink)!important;text-decoration-color:var(--coral)!important}
.fp-cathead .fp-answer,.fp-cathead-lede,.fp-cathead-lede p,.fp-arthead-sum,.fp-arthead-meta,.fp-arthead p{color:var(--ink2)!important}
.fp-arthead-meta .fp-ui{color:var(--coral-d)!important}
.fp-eyebrow{color:var(--coral-d)!important;font-family:var(--display)!important;font-weight:600!important}
.fp-fact{background:#fff!important;color:var(--ink)!important;border:2px solid var(--ink)!important;border-radius:999px!important;box-shadow:0 2px 0 var(--ink)}
.fp-fact .fp-ui{color:var(--coral-d)!important}
.fp-fact--price{background:var(--sun)!important;font-family:var(--display)!important;font-weight:700!important}
/* category head art: real product photos on a bunting string */
.bn-cathead-art{position:relative;align-self:center;justify-self:end;width:360px;height:250px;margin:10px 0 24px;background:none!important}
.bn-cat-string{position:absolute;left:0;right:0;top:8px;height:40px;border-bottom:3px solid var(--ink);border-radius:0 0 50% 50%/0 0 100% 100%}
.bn-cat-ph{position:absolute;width:150px;background:#fff;border:3px solid var(--ink);border-radius:12px;padding:6px;box-shadow:0 5px 0 var(--ink);margin:0}
.bn-cat-ph img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:7px;border:2px solid var(--ink)}
.bn-cat-ph .bn-peg{position:absolute;left:50%;top:-14px;width:14px;height:24px;margin-left:-7px;border-radius:5px;background:var(--coral);border:2px solid var(--ink);z-index:2}
.bn-cat-ph--1{left:0;top:40px;transform:rotate(-6deg)}
.bn-cat-ph--2{left:110px;top:58px;transform:rotate(3deg);z-index:2}
.bn-cat-ph--3{right:0;top:36px;transform:rotate(7deg)}
@media (max-width:1023px){.bn-cathead-art{display:none}}

/* chips + anchor bars */
.fp-chip{border:2px solid var(--ink)!important;background:#fff!important;color:var(--ink)!important;border-radius:999px!important;font-family:var(--display)!important;font-weight:600!important}
.fp-chip.is-on,.fp-chip:hover{background:var(--ink)!important;color:#fff!important}
.fp-chip small{opacity:.8}
.fp-anchors{background:var(--ink)!important;border-bottom:3px solid var(--ink)}
.fp-anchors a{font-family:var(--display)!important;font-weight:600!important;color:#eae6f3!important}
.fp-anchors a.is-on,.fp-anchors a:hover{color:#fff!important;border-bottom-color:var(--coral)!important}

/* section heads */
.fp-sec-h h2{color:var(--ink)!important;text-shadow:none!important}
.fp-link{color:var(--coral-d)!important;font-family:var(--display);font-weight:600}

/* product cards: white, ink outline, hard shadow, coloured price pill */
.fp-pcard{background:#fff!important;border:3px solid var(--ink)!important;border-radius:20px!important;box-shadow:var(--sh)!important;overflow:hidden;transition:transform .15s,box-shadow .15s}
.fp-pcard:hover{transform:translateY(3px);box-shadow:0 3px 0 var(--ink)!important}
.fp-pcard img{border-radius:0!important}
.fp-from{background:var(--coral)!important;color:var(--ink)!important;font-family:var(--display)!important;font-weight:700!important;border:2px solid var(--ink)!important;border-radius:999px!important}
.fp-pgrid>:nth-child(4n+2) .fp-from,.fp-pgrid>.fp-pcard:nth-child(4n+2) .fp-from{background:var(--teal)!important}
.fp-pgrid>:nth-child(4n+3) .fp-from,.fp-pgrid>.fp-pcard:nth-child(4n+3) .fp-from{background:var(--sun)!important}
.fp-pgrid>:nth-child(4n) .fp-from,.fp-pgrid>.fp-pcard:nth-child(4n) .fp-from{background:var(--violet)!important}
.fp-pcard-t{font-family:var(--display)!important;font-weight:700!important;color:var(--ink)!important}
.fp-pcard-hint{color:var(--mute)!important}
.fp-fill{border:3px dashed var(--ink)!important;box-shadow:none!important;border-radius:20px!important}
.fp-fill--navy{background:var(--ink)!important}.fp-fill--sky{background:var(--teal-d)!important}.fp-fill--red{background:var(--coral-d)!important}

/* buttons on shop pages: fat pills with ink outline and hard shadow */
.fp-btn{border-radius:999px!important;font-family:var(--display)!important;font-weight:600!important;border:3px solid var(--ink)!important;box-shadow:var(--sh-xs)!important;transition:transform .12s,box-shadow .12s}
.fp-btn:hover{transform:translateY(2px);box-shadow:0 1px 0 var(--ink)!important}
.fp-btn--red,.single_add_to_cart_button,.checkout-button,#place_order,.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--coral)!important;border:3px solid var(--ink)!important;color:var(--ink)!important;font-family:var(--display)!important;font-weight:700!important;border-radius:999px!important;box-shadow:var(--sh-s)!important}
.single_add_to_cart_button:hover,.checkout-button:hover,#place_order:hover{transform:translateY(2px);box-shadow:0 2px 0 var(--ink)!important;background:var(--coral)!important;color:var(--ink)!important}
.fp-btn--line{background:#fff!important;color:var(--ink)!important}

/* ---------------- product page ---------------- */
.fp-buy{background:#fff!important;border:3px solid var(--ink)!important;border-radius:26px!important;box-shadow:0 8px 0 var(--ink)!important;overflow:hidden}
.fp-buy-fam{font-family:var(--display)!important;font-weight:600!important;color:var(--coral-d)!important}
.fp-buy-head{background:var(--ink)!important;position:relative}
.fp-buy-head::after{content:""!important;position:absolute!important;left:0!important;right:0!important;top:0!important;width:auto!important;height:30px!important;background:var(--bunting) repeat-x 0 -4px/120px 30px!important;border-radius:0!important;opacity:.9!important}
.fp-buy-head>*{position:relative;z-index:1}
.fp-buy-head{padding-top:36px!important}
.fp-buy-head h1,.fp-buy-head .product_title{color:#fff!important;text-shadow:none!important;font-weight:700!important}
.fp-buy-head .fp-buy-fam{color:var(--sun)!important}
.fp-buy-head .fp-answer,.fp-buy-head .fp-buy-short,.fp-buy-head .fp-buy-short p{color:#e8e4f2!important}
.fp-buy-head .pdp-more{color:var(--sun)!important}
.fp-buy-head .pdp-price{background:var(--sun)!important;color:var(--ink)!important;border:2px solid #fff;border-radius:999px!important}
.fp-buy-head .pdp-price small{color:var(--ink)!important}
.fp-buy-head .pdp-price__amt{color:var(--ink)!important}
.pdp-price__amt,.fp-total-p{font-family:var(--display)!important;font-weight:700!important}
.fp-total-p{color:var(--coral-d)!important}
.bn-ptrust{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:0!important;margin:16px 0 0!important;list-style:none}
.bn-ptrust li{display:flex!important;align-items:flex-start;gap:9px;padding:10px 11px!important;border:2px solid var(--ink);border-radius:14px;background:var(--page);font-size:14px;line-height:1.3;margin:0!important;color:var(--ink)}
.bn-ptrust .fp-ui{width:28px;height:28px;padding:5px;border-radius:50%;background:var(--coral);color:var(--ink);flex:none}
.bn-ptrust .t2 .fp-ui{background:var(--teal)}.bn-ptrust .t3 .fp-ui{background:var(--sun)}.bn-ptrust .t4 .fp-ui{background:var(--violet)}
.bn-ptrust b{font-family:var(--display);font-weight:600}
.bn-days{display:flex;align-items:flex-start;gap:8px;margin:12px 0 0;font-size:14.5px;line-height:1.4;color:var(--mute)}
.bn-days .fp-ui{width:18px;height:18px;color:var(--coral-d);flex:none;margin-top:1px}
.fp-gal-stage{border:3px solid var(--ink)!important;background:#fff!important;border-radius:24px!important;box-shadow:var(--sh)!important;overflow:hidden}
.fp-gal-thumbs button{border:2px solid var(--ink)!important;border-radius:12px!important;overflow:hidden}
.fp-gal-thumbs button.is-on{box-shadow:0 3px 0 var(--coral)!important}
.fp-getcard{background:#fff!important;border:3px solid var(--ink)!important;border-radius:22px!important;box-shadow:var(--sh-s)!important}
.fp-getcard .fp-ui{color:var(--coral-d)!important}
/* how big is it: the person + the banner */
.bn-pscale{background:var(--dots),#fff!important;border:3px solid var(--ink)!important;border-radius:22px!important;box-shadow:var(--sh-s)!important}
.bn-pscale .fp-scale-stage{border-bottom:4px solid var(--ink)!important}
.bn-pscale .fp-scale-benny{opacity:.9}
.bn-pscale .fp-scale-rect{background:var(--coral)!important;border:3px solid var(--ink)!important;border-radius:6px!important}
.bn-pscale .fp-scale-lbl{background:#fff!important;color:var(--ink)!important;font:600 13px/1 var(--display)!important;padding:5px 9px!important;border:2px solid var(--ink)!important;border-radius:999px!important;box-shadow:none!important}
/* configurator */
.ib-cfg .ib-opt,.ib-cfg label,.ib-cfg legend{font-family:var(--body)}
.fp-mbar{background:#fff!important;border-top:3px solid var(--ink)!important}
.fp-mbar-p b{font-family:var(--display)!important;font-weight:700!important;color:var(--coral-d)!important}

/* specs + questions */
.fp-specs dt,.fp-specs th{font-family:var(--display)!important;font-weight:600!important;color:var(--ink)!important}
.fp-faq details,.ib-faq details,#faq details{background:#fff;border:2px solid var(--ink)!important;border-radius:16px!important;margin-bottom:10px!important;overflow:hidden}
.fp-faq summary,#faq details summary{font-family:var(--display)!important;font-weight:600!important;color:var(--ink)!important}
.fp-faq details[open] summary,#faq details[open]>summary{background:var(--sun)!important;color:var(--ink)!important}

/* basket + checkout */
.fp-freebar{background:#fff!important;border:3px solid var(--ink)!important;border-radius:18px!important;box-shadow:var(--sh-xs)!important}
.fp-freebar-track i{background:var(--coral)!important}
.fp-askcard{background:#fff!important;border:3px solid var(--ink)!important;border-radius:22px!important;box-shadow:var(--sh)!important}
.fp-steps li{background:#fff!important;border:2px solid var(--ink);border-radius:999px!important;color:var(--mute)!important}
.fp-steps li.is-on{color:var(--ink)!important;box-shadow:0 3px 0 var(--ink)}
.fp-steps b{background:var(--ink)!important;color:#fff!important;border-radius:50%!important}
.fp-steps li.is-on b{background:var(--coral)!important;color:var(--ink)!important}
.fp-arthead--slim::after{display:none}
.fp-buybox .ib-price,.fp-buybox .ib-amt,.fp-buybox .ib-total .amount{font-family:var(--display)!important;font-weight:700!important;color:var(--coral-d)!important}
.fp-side-price{background:var(--ink)!important;border-radius:22px!important}
.fp-side-price::before{display:none!important}
.woocommerce-cart-form,.cart_totals,.woocommerce-checkout-review-order,#customer_details>div{border-radius:20px}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:16px!important;border:2px solid var(--ink)!important}
@media (max-width:759px){.fp-cathead::after,.fp-arthead::after{width:200px;height:200px;right:-110px;bottom:-130px}.fp-cathead-in,.fp-arthead-in{padding-top:40px!important}.bn-ptrust{grid-template-columns:1fr!important}}

/* final QA 5 Nov 2026: space between "Deliver to a different address?" and "Additional information" on checkout */
.woocommerce-checkout .woocommerce-shipping-fields{margin-bottom:28px}.woocommerce-checkout .woocommerce-additional-fields>h3{margin-top:12px}
/* final QA 5 Nov 2026: the ask card is white here (engine styles it navy), so its text must be dark (was white on white) */
.fp-askcard,.fp-askcard h2{color:var(--ink)!important}.fp-askcard p{color:var(--muted)!important}.fp-askcard .fp-btn--line{color:var(--ink)!important;border-color:var(--ink)!important}.fp-askcard .fp-btn--line:hover{background:rgba(27,21,48,.06)!important}
