/* Phone Shop Bristol responsive design patch — scoped, reversible. */
/* Mobile product purchase bar: keep clear of bottom navigation and simplify pricing. */
@media(max-width:767px){
 body.single-product .psb-at-product-sticky{box-sizing:border-box!important;bottom:calc(64px + env(safe-area-inset-bottom,0px))!important;left:0!important;right:0!important;max-width:100%!important;display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:10px!important;align-items:center!important;padding:10px 14px!important;z-index:9890!important;box-shadow:0 -5px 18px rgba(0,0,0,.07)!important}
 body.single-product .psb-at-product-sticky>span{min-width:0!important;display:flex!important;flex-direction:column!important;gap:2px!important;overflow:hidden!important}
 body.single-product .psb-at-product-sticky>span small{font-size:11px!important;line-height:1.2!important}
 body.single-product .psb-at-product-sticky>span strong{font-size:clamp(17px,4.5vw,23px)!important;line-height:1.2!important;white-space:nowrap!important}
 body.single-product .psb-at-product-sticky .psb-btn{min-width:0!important;width:100%!important;min-height:46px!important;font-size:13px!important;line-height:1.2!important;padding:10px!important;white-space:normal!important}
 body.single-product{padding-bottom:110px!important}
}


/* Commerce usability: visual-only, does not alter checkout logic. */
body.woocommerce-cart .psb-generic-featured,body.woocommerce-checkout .psb-generic-featured{display:none!important}
body.woocommerce-cart .psb-content-narrow,body.woocommerce-checkout .psb-content-narrow{width:min(100% - 32px,1160px)!important;max-width:1160px!important;margin-inline:auto}
body.woocommerce-cart .psb-entry-head,body.woocommerce-checkout .psb-entry-head{margin-bottom:20px}
body.woocommerce-cart .woocommerce,body.woocommerce-checkout .woocommerce{max-width:100%;min-width:0}
body.woocommerce-cart .woocommerce table.shop_table,body.woocommerce-checkout .woocommerce table.shop_table{width:100%;max-width:100%}
body.woocommerce-checkout .woocommerce form .form-row input.input-text,body.woocommerce-checkout .woocommerce form .form-row textarea,body.woocommerce-checkout .woocommerce form .form-row select{box-sizing:border-box;max-width:100%;min-height:44px;border-radius:10px}
body.woocommerce-checkout .woocommerce form .form-row label{line-height:1.5}
body.woocommerce-checkout #place_order,body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{min-height:48px;border-radius:12px;line-height:1.4;white-space:normal}
body.woocommerce-checkout .psb-checkout-choice{padding:18px;border:1px solid #e1e5e9;border-radius:14px;margin:18px 0}
body.woocommerce-checkout .psb-checkout-choice .woocommerce-input-wrapper label{display:inline-block;line-height:1.5}
body.woocommerce-cart .cart-collaterals,body.woocommerce-checkout #customer_details,body.woocommerce-checkout #order_review{min-width:0}
body.woocommerce-cart .woocommerce-message,body.woocommerce-checkout .woocommerce-error,body.woocommerce-checkout .woocommerce-info{max-width:100%;box-sizing:border-box}
@media(max-width:767px){
 body.woocommerce-cart .psb-content-narrow,body.woocommerce-checkout .psb-content-narrow{width:100%!important;padding-inline:16px!important}
 body.woocommerce-cart .woocommerce table.shop_table_responsive,body.woocommerce-checkout .woocommerce table.shop_table_responsive{max-width:100%}
 body.woocommerce-cart .woocommerce table.shop_table_responsive td,body.woocommerce-checkout .woocommerce table.shop_table_responsive td{overflow-wrap:anywhere}
 body.woocommerce-checkout .woocommerce .col2-set .col-1,body.woocommerce-checkout .woocommerce .col2-set .col-2{float:none!important;width:100%!important;max-width:100%!important}
 body.woocommerce-checkout #order_review,body.woocommerce-checkout #order_review_heading{width:100%!important;max-width:100%!important}
 body.woocommerce-checkout .woocommerce form .form-row-first,body.woocommerce-checkout .woocommerce form .form-row-last{float:none!important;width:100%!important}
 body.woocommerce-cart .psb-cart-progress,body.woocommerce-checkout .psb-cart-progress{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding-block:10px}
 body.woocommerce-cart .psb-cart-progress span,body.woocommerce-checkout .psb-cart-progress span{flex:0 0 auto}
 body.woocommerce-cart .woocommerce-cart-form__cart-item .product-thumbnail img{max-width:76px;height:auto;object-fit:contain}
 body.woocommerce-checkout #place_order,body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;display:block;text-align:center}
}


/* Standard WordPress pages and Bristol repair/service landing pages. */
body.page .psb-page-hero-grid,body.page .psb-page-hero-grid>*,body.page .psb-container,body.page .psb-entry-content{min-width:0;max-width:100%;box-sizing:border-box}
body.page .psb-page-hero-grid>img,body.page .psb-context-image,body.page .psb-page-hero-media img{display:block;max-width:100%;height:auto;object-fit:contain}
body.page .psb-entry-content img,body.page .entry-content img,body.page .wp-block-image img,body.page .wp-block-cover img{max-width:100%;height:auto}
body.page .psb-entry-content figure,body.page .entry-content figure{max-width:100%;box-sizing:border-box}
@media(max-width:767px){
 body.page .psb-page-hero-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:20px!important;align-items:start!important}
 body.page .psb-page-hero-grid>img,body.page .psb-page-hero-grid .psb-context-image{display:block!important;position:static!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:320px!important;min-height:0!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;transform:none!important;margin-left:auto!important;margin-right:auto!important}
 body.page .psb-page-hero-media{overflow:hidden}
 body.page .psb-page-hero-grid h1{overflow-wrap:anywhere}
 body.page .psb-entry-content img,body.page .entry-content img{width:auto;max-width:100%!important;height:auto!important;object-fit:contain!important}
 body.page .psb-entry-content iframe,body.page .entry-content iframe{max-width:100%!important}
}

html,body{max-width:100%;overflow-x:clip}
.psb-container,.psbr-wide,.psb-content-narrow{box-sizing:border-box;min-width:0}
.psb-post-grid .psb-post-card{min-width:0;overflow:hidden}
.psb-post-grid .psb-post-card>a:first-child{display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;overflow:hidden;background:#f6f7f9}
.psb-post-grid .psb-post-card>a:first-child img{display:block;position:static;width:100%;max-width:100%;height:220px;object-fit:contain;object-position:center;transform:none}
body.single-post .psb-content-narrow,body.single-post .psb-content-narrow article,body.single-post .psb-featured{box-sizing:border-box;min-width:0;max-width:100%}
body.single-post .psb-featured{width:100%;overflow:hidden}
body.single-post .psb-featured img,body.single-post .psb-entry-content img{display:block;max-width:100%;height:auto;object-fit:contain}
body.single-post .psb-entry-content iframe,body.single-post .psb-entry-content video{max-width:100%}
@media(max-width:767px){
 body .psb-post-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
 body .psb-post-grid article.psb-post-card{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
 body .psb-post-grid article.psb-post-card>a:first-child{width:100%!important;height:190px!important;max-height:190px!important;aspect-ratio:auto!important;overflow:hidden!important}
 body .psb-post-grid article.psb-post-card>a:first-child img{width:100%!important;max-width:100%!important;height:190px!important;max-height:190px!important;object-fit:contain!important;transform:none!important}
 body.single-post .psb-content-narrow{width:100%!important;max-width:100%!important;min-width:0!important;padding-left:16px!important;padding-right:16px!important}
 body.single-post .psb-featured{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;margin-left:0!important;margin-right:0!important;overflow:hidden!important}
 body.single-post .psb-featured img{display:block!important;position:static!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;min-width:0!important;aspect-ratio:auto!important;object-fit:contain!important;transform:none!important}
 body.single-post .psb-breadcrumbs{overflow:hidden!important;white-space:normal!important;overflow-wrap:anywhere!important}
 body.single-post .psb-entry-head h1{font-size:clamp(29px,8vw,42px)!important;line-height:1.15!important;overflow-wrap:anywhere}
 body .psb-entry-content table{display:block;max-width:100%;overflow-x:auto}
 body .psbr-hero-grid,body .psbr-category-grid{min-width:0}
}

/* 2026-10 mobile width hardening: contain wide header content without changing desktop. */
@media(max-width:767px){
 html,body{width:100%;max-width:100%;overflow-x:hidden!important}
 .psbr-header,.psbr-main-header,.psbr-topline,.psbr-proof-bar,main,.psb-main,.psbr-hero,.psbr-category-section,.psbr-feature-section,.psbr-values{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
 .psbr-wide,.psb-container{width:calc(100% - 32px)!important;max-width:100%!important;min-width:0!important;margin-left:auto!important;margin-right:auto!important}
 .psbr-top-inner{min-width:0!important;max-width:100%;overflow:hidden;justify-content:center}
 .psbr-top-inner>span{max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .psbr-top-inner>span:nth-child(2){display:none!important}
 .psbr-main-inner,.psbr-proof-inner,.psbr-hero-grid,.psbr-category-grid,.psbr-promo-grid,.psbr-values-grid{max-width:100%;min-width:0}
 .psbr-main-inner>*{min-width:0}
 .psbr-hero-grid{grid-template-columns:minmax(0,1fr)!important}
 .psbr-hero-art,.psbr-hero-content{max-width:100%;min-width:0}
 img,video,iframe{max-width:100%}
}

