/* GP v9: scoped repairs on v8. Content and WooCommerce logic are unchanged. */
:root{--gp-v9-navy:#023659;--gp-v9-gold:#ac8d42;--gp-v9-gold-dark:#927329;--gp-v9-muted:#dadada;--gp-v9-cream:#f3f0e8;}
/* Native Gutenberg two-column cards: do not depend on page-id, which was insufficient in v7/v8. */
html body:not(.home) .gp-gb-row.simple-page-block .wp-block-columns{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row!important;align-items:start!important;justify-content:stretch!important;gap:clamp(24px,3.3vw,50px)!important;flex:none!important;flex-direction:unset!important;flex-wrap:unset!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
html body:not(.home) .gp-gb-row.simple-page-block .wp-block-columns>.wp-block-column{display:block!important;grid-column:auto!important;float:none!important;clear:none!important;flex:none!important;flex-basis:auto!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
html body:not(.home) .gp-gb-row.simple-page-block .wp-block-columns>.wp-block-column>*{min-width:0;max-width:100%;}
html body:not(.home) .gp-gb-row.simple-page-block .wp-block-columns .wp-block-shortcode{width:100%!important;max-width:none!important;}
html body:not(.home) .gp-gb-row.simple-page-block .wp-block-columns>.wp-block-column h2{margin-top:0!important;}
/* Contact form: semantic form and details columns; no resizing of validation fields or captcha logic. */
html body .gp-gb-row.simple-page-block:has(.nf-form-cont)>.wp-block-columns,html body .gp-gb-row.simple-page-block:has(.nf-form-cont)>.wp-block-group__inner-container>.wp-block-columns{display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important;align-items:start!important;gap:clamp(25px,3.5vw,52px)!important;}
html body .gp-gb-row.simple-page-block:has(.nf-form-cont) .wp-block-columns>.wp-block-column:nth-child(2){box-sizing:border-box!important;background:#f9f7f1!important;border:1px solid #e8dfcb!important;border-radius:14px!important;padding:clamp(20px,2.4vw,32px)!important;}
html body .gp-gb-row.simple-page-block:has(.nf-form-cont) .wp-block-columns>.wp-block-column:nth-child(2) p{line-height:1.85!important;overflow-wrap:anywhere;}
html body .gp-gb-row.simple-page-block:has(.nf-form-cont) .nf-form-cont,html body .gp-gb-row.simple-page-block:has(.nf-form-cont) .nf-form-content{box-sizing:border-box!important;width:100%!important;max-width:100%!important;}
html body .gp-gb-row.simple-page-block:has(.nf-form-cont) .nf-field-element :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),textarea,select){box-sizing:border-box!important;width:100%!important;max-width:100%!important;}
html body .gp-gb-row.simple-page-block:has(.nf-form-cont) .nf-field-element textarea{min-height:140px!important;}
/* Price filtering: plugin keeps control over price data, handles, inputs, and AJAX requests. */
html body .woo-all-bg .woosidebar .bapf_sfilter:has(input[type=range]) .bapf_body{max-height:none!important;overflow:visible!important;padding:5px 1px 8px!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter input[type=range]{-webkit-appearance:none!important;appearance:none!important;display:block!important;width:100%!important;max-width:100%!important;height:6px!important;min-height:6px!important;margin:16px 0!important;padding:0!important;border:0!important;border-radius:99px!important;background:var(--gp-v9-muted)!important;box-shadow:none!important;outline-offset:7px!important;accent-color:var(--gp-v9-gold)!important;cursor:pointer!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter input[type=range]::-webkit-slider-runnable-track{height:6px!important;border:0!important;border-radius:99px!important;background:var(--gp-v9-muted)!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter input[type=range]::-moz-range-track{height:6px!important;border:0!important;border-radius:99px!important;background:var(--gp-v9-muted)!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter input[type=range]::-webkit-slider-thumb{-webkit-appearance:none!important;appearance:none!important;width:18px!important;height:18px!important;margin-top:-6px!important;border:3px solid #fff!important;border-radius:50%!important;background:var(--gp-v9-gold)!important;box-shadow:0 0 0 1px var(--gp-v9-gold),0 2px 5px #0002!important;cursor:grab!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter input[type=range]::-moz-range-thumb{width:13px!important;height:13px!important;border:3px solid #fff!important;border-radius:50%!important;background:var(--gp-v9-gold)!important;box-shadow:0 0 0 1px var(--gp-v9-gold)!important;cursor:grab!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter :is(.ui-slider,.bapf_slidr_main){height:7px!important;border-radius:99px!important;background:var(--gp-v9-muted)!important;box-shadow:none!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter :is(.ui-slider-range,.bapf_slidr_range){background:var(--gp-v9-gold)!important;border-radius:99px!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter .ui-slider .ui-slider-handle{top:-.43em!important;width:18px!important;height:18px!important;border:3px solid #fff!important;border-radius:50%!important;background:var(--gp-v9-gold)!important;box-shadow:0 0 0 1px var(--gp-v9-gold),0 2px 5px #0002!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter :is(.bapf_slidr_all,.bapf_slidr_all .bapf_body,.bapf_slidr_all .bapf_slidr_main){box-sizing:border-box!important;max-width:100%!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter :is(input[type=text],input[type=number]){box-sizing:border-box!important;max-width:100%!important;min-width:0!important;height:39px!important;padding:7px 10px!important;background:#fff!important;color:var(--gp-v9-navy)!important;border:1px solid #d9d7d1!important;border-radius:8px!important;box-shadow:none!important;font-size:14px!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter :is(input[type=text],input[type=number]):focus{outline:2px solid #ac8d4260!important;outline-offset:1px!important;border-color:var(--gp-v9-gold)!important;}
html body .woo-all-bg .woosidebar .bapf_sfilter :is(.bapf_slidr_change,.bapf_slidr_change input,.bapf_slidr_change label){box-sizing:border-box;max-width:100%;}
html body .woo-all-bg .woosidebar .bapf_sfilter .bapf_body :is(.bapf_slidr_min,.bapf_slidr_max){max-width:calc(50% - 7px)!important;}
/* Checkout: shipping checkbox and notes cannot inherit 50% floating address-field sizing. */
html body .gp-commerce-wrap--checkout .woocommerce form.checkout #customer_details>.col-2{box-sizing:border-box!important;display:block!important;float:none!important;width:100%!important;max-width:100%!important;min-width:0!important;clear:both!important;}
html body .gp-commerce-wrap--checkout .woocommerce form.checkout #customer_details .woocommerce-shipping-fields,html body .gp-commerce-wrap--checkout .woocommerce form.checkout #customer_details .woocommerce-additional-fields{box-sizing:border-box!important;display:block!important;float:none!important;clear:both!important;width:100%!important;max-width:100%!important;min-width:0!important;}
html body .gp-commerce-wrap--checkout #ship-to-different-address{box-sizing:border-box!important;display:block!important;float:none!important;clear:both!important;width:100%!important;max-width:100%!important;margin:0 0 22px!important;padding:0!important;font-size:16px!important;line-height:1.5!important;}
html body .gp-commerce-wrap--checkout #ship-to-different-address label{display:inline-flex!important;align-items:flex-start!important;gap:10px!important;width:auto!important;max-width:100%!important;margin:0!important;padding:0!important;float:none!important;white-space:normal!important;cursor:pointer!important;line-height:1.5!important;}
html body .gp-commerce-wrap--checkout #ship-to-different-address input[type=checkbox]{position:static!important;flex:none!important;width:17px!important;height:17px!important;min-width:17px!important;margin:3px 0 0!important;float:none!important;accent-color:var(--gp-v9-navy)!important;}
html body .gp-commerce-wrap--checkout #ship-to-different-address label span{display:inline!important;flex:1 1 auto!important;min-width:0!important;white-space:normal!important;overflow-wrap:break-word!important;}
html body .gp-commerce-wrap--checkout .woocommerce-shipping-fields__field-wrapper,html body .gp-commerce-wrap--checkout .woocommerce-additional-fields__field-wrapper{display:flow-root!important;box-sizing:border-box!important;clear:both!important;width:100%!important;max-width:100%!important;min-width:0!important;}
html body .gp-commerce-wrap--checkout #order_comments_field,html body .gp-commerce-wrap--checkout .woocommerce-additional-fields__field-wrapper>.form-row{display:block!important;float:none!important;clear:both!important;width:100%!important;max-width:100%!important;margin:0 0 15px!important;padding:0!important;}
html body .gp-commerce-wrap--checkout #order_comments_field label{display:block!important;float:none!important;width:100%!important;line-height:1.5!important;margin:0 0 9px!important;}
html body .gp-commerce-wrap--checkout #order_comments_field .woocommerce-input-wrapper{display:block!important;float:none!important;width:100%!important;max-width:100%!important;}
html body .gp-commerce-wrap--checkout #order_comments_field textarea{box-sizing:border-box!important;display:block!important;float:none!important;clear:both!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:105px!important;margin:0!important;padding:12px!important;}
/* Single-product detail panels disabled via WooCommerce hook; fallback styles avoid empty panels. */
html body.single-product .woocommerce div.product .woocommerce-tabs:empty{display:none!important;}
/* Shop loop: consistent label typography while retaining real WooCommerce click/selection behavior. */
html body .woocommerce ul.products li.product :is(a.button,button.button){box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-transform:none!important;font-variant:normal!important;letter-spacing:0!important;font-size:14px!important;font-weight:600!important;line-height:1.35!important;white-space:normal!important;text-align:center!important;color:#fff!important;background:var(--gp-v9-navy)!important;background-image:none!important;border:1px solid var(--gp-v9-navy)!important;border-radius:8px!important;min-height:44px!important;}
html body .woocommerce ul.products li.product :is(a.button,button.button)::before{content:none!important;display:none!important;}
html body .woocommerce ul.products li.product :is(a.button,button.button):hover{background:#07527b!important;border-color:#07527b!important;color:#fff!important;}
html body .woocommerce ul.products li.product a.button:focus-visible{outline:3px solid var(--gp-v9-gold)!important;outline-offset:3px!important;}
html body .woocommerce ul.products li.product a.button:after{margin-left:8px!important;}
/* Home motion: opt-in JS observer; no invisible content when JS fails. */
@keyframes gp-v9-static-safety{to{opacity:1;transform:none;}}
html body.home :is(#section-1,#section-2,#section-3,#section-4) .gp-gb-inner :is(.wp-block-column,.woocommerce ul.products li.product){animation:none!important;animation-timeline:auto!important;}
html.gp-v9-motion body.home .gp-v9-reveal{opacity:0;transform:translate3d(0,23px,0);transition:opacity .75s ease,transform .75s cubic-bezier(.21,.7,.3,1)!important;will-change:opacity,transform;}
html.gp-v9-motion body.home .gp-v9-reveal.gp-v9-visible{opacity:1;transform:translate3d(0,0,0);will-change:auto;}
html body.home :is(#section-1,#section-2,#section-3,#section-4) .gp-gb-cta .main-btn{transition:background .2s ease,transform .2s ease,box-shadow .2s ease!important;}
@media(max-width:781px){html body:not(.home) .gp-gb-row.simple-page-block .wp-block-columns,html body .gp-gb-row.simple-page-block:has(.nf-form-cont)>.wp-block-columns,html body .gp-gb-row.simple-page-block:has(.nf-form-cont)>.wp-block-group__inner-container>.wp-block-columns{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:26px!important;}html body:not(.home) .gp-gb-row.simple-page-block .wp-block-columns>.wp-block-column{grid-column:1!important;width:100%!important;max-width:100%!important;}html body .gp-gb-row.simple-page-block:has(.nf-form-cont) .wp-block-columns>.wp-block-column:nth-child(2){padding:20px!important;}html body .gp-commerce-wrap--checkout #ship-to-different-address{margin-bottom:16px!important;}}
@media(prefers-reduced-motion:reduce){html.gp-v9-motion body.home .gp-v9-reveal{opacity:1!important;transform:none!important;transition:none!important;animation:none!important;}}

/* GP_MICH_V11_CSS_ONLY_START: related section, product prices, Ninja Forms honeypot. */
html body.single-product .woocommerce div.product{display:flow-root!important;}
html body.single-product .woocommerce div.product:after{content:"";display:table;clear:both;}
html body.single-product .woocommerce div.product section.related,html body.single-product .woocommerce div.product .related.products,html body.single-product .woocommerce section.related,html body.single-product .woocommerce .related.products{box-sizing:border-box!important;display:block!important;float:none!important;clear:both!important;position:relative!important;grid-column:1/-1!important;flex-basis:100%!important;max-width:100%!important;width:100%!important;margin:42px auto 0!important;padding:25px 0 16px!important;text-align:initial!important;}
html body.single-product .woocommerce div.product section.related>h2,html body.single-product .woocommerce div.product .related.products>h2,html body.single-product .woocommerce section.related>h2,html body.single-product .woocommerce .related.products>h2{display:block!important;float:none!important;clear:both!important;max-width:100%!important;width:100%!important;margin:0 auto 26px!important;padding:0!important;text-align:center!important;color:#023659!important;line-height:1.3!important;}
html body.single-product .woocommerce section.related>ul.products,html body.single-product .woocommerce .related.products>ul.products{box-sizing:border-box!important;width:100%!important;max-width:100%!important;clear:both!important;}
html body.single-product .woocommerce div.product .summary p.price,html body.single-product .woocommerce div.product .summary span.price,html body.single-product .woocommerce div.product .summary .price :is(.amount,.woocommerce-Price-amount,bdi,.woocommerce-Price-currencySymbol){font-size:20px!important;line-height:1.35!important;}
html body .woocommerce ul.products li.product .price,html body .woocommerce ul.products li.product .price :is(.amount,.woocommerce-Price-amount,bdi,.woocommerce-Price-currencySymbol),html body.single-product .woocommerce .related ul.products li.product .price,html body.single-product .woocommerce .related ul.products li.product .price :is(.amount,.woocommerce-Price-amount,bdi,.woocommerce-Price-currencySymbol){font-size:17px!important;line-height:1.4!important;}
html body.page-id-22 .nf-form-cont .nf-form-hp,html body.page-id-22 .nf-form-cont .nf-form-hp *{visibility:hidden!important;}
html body.page-id-22 .nf-form-cont .nf-form-hp{position:absolute!important;width:1px!important;height:1px!important;max-width:1px!important;max-height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none!important;}
@media(max-width:767px){html body.single-product .woocommerce section.related,html body.single-product .woocommerce .related.products{margin-top:28px!important;padding-top:18px!important;}}
/* GP_MICH_V11_CSS_ONLY_END */

/* GP GUTENBERG BUTTONS V15 — only homepage native Buttons blocks. */
body.home :is(#section-1,#section-2,#section-3,#section-4) .gp-gb-cta .wp-block-button__link{display:inline-flex!important;align-items:center!important;justify-content:center!important;max-width:100%!important;min-width:190px;padding:14px 28px!important;margin:0!important;background:#ac8d42!important;color:#fff!important;border:0!important;border-radius:0!important;font-size:16px!important;line-height:24px!important;text-decoration:none!important;position:relative!important;box-shadow:none!important;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease!important;}
body.home :is(#section-1,#section-2,#section-3,#section-4) .gp-gb-cta .wp-block-button__link::before{content:none!important;display:none!important;}
body.home :is(#section-1,#section-2,#section-3,#section-4) .gp-gb-cta .wp-block-button__link:hover{background:#947531!important;color:#fff!important;transform:translateY(-2px)!important;box-shadow:0 8px 18px rgba(2,54,89,.12)!important;}
body.home :is(#section-1,#section-2,#section-3,#section-4) .gp-gb-cta .wp-block-button__link:focus-visible{outline:2px solid #023659!important;outline-offset:3px!important;}
@media(max-width:520px){body.home :is(#section-1,#section-2,#section-3,#section-4) .gp-gb-cta .wp-block-button__link{min-width:150px;padding:12px 20px!important;}}
@media(prefers-reduced-motion:reduce){body.home :is(#section-1,#section-2,#section-3,#section-4) .gp-gb-cta .wp-block-button__link{transition:none!important;transform:none!important;}}
