/*
Theme Name: Oral-B Local Store
Description: Independent Oral-B-inspired WooCommerce and Elementor local prototype.
Version: 0.1.0
Requires PHP: 8.1
Text Domain: oralb-store
*/
/* Keep touch submenus in this component's flow, independent of global hover menus. */
@media(max-width:801px){
  #oralb-mobile-nav .sub-menu{display:none;position:static;inset:auto;min-width:0;width:100%;max-width:100%;box-shadow:none;border:0;border-radius:0}
  #oralb-mobile-nav .is-open>.sub-menu{display:block}
}
:root{--oralb-navy:#002d72;--oralb-blue:#0050ef;--oralb-cyan:#3cc2fb;--oralb-pale:#eef6ff;--oralb-line:#a9d3ff;--oralb-width:1260px}
*{box-sizing:border-box}
body{margin:0;color:var(--oralb-navy);background:#fff;font:400 16px/1.45 "Century Gothic","Trebuchet MS",Arial,sans-serif}
button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}[hidden]{display:none!important}
.oralb-skip{position:absolute;left:-9999px;top:4px;z-index:500;background:#fff;padding:8px}.oralb-skip:focus{left:8px}
.oralb-container{max-width:var(--oralb-width);margin:auto;padding:0 22px}
.oralb-header{position:relative;z-index:100;background:#fff}.oralb-promo{position:absolute;top:5px;left:19%;right:19%;height:45px;background:#f4f4f4;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#444;font-size:12px;text-align:center;padding:0 10px}
.oralb-header-main{height:59px;max-width:1400px;margin:auto;padding:0 36px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--oralb-line)}
.oralb-logo{width:100px;display:flex;align-items:center;flex:none}.oralb-logo img{width:100%;height:auto;display:block}.oralb-tools{display:flex;align-items:center;gap:10px}.oralb-tools>a,.oralb-tools>button{width:40px;height:40px;border:1px solid #84beff;border-radius:7px;background:#fff;display:flex;align-items:center;justify-content:center;position:relative}.oralb-tools svg{width:23px;height:23px;fill:none;stroke:var(--oralb-navy);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.oralb-cart-count{position:absolute;right:-5px;top:-7px;min-width:17px;height:17px;border-radius:50%;background:var(--oralb-blue);color:#fff;font-size:10px;line-height:17px;text-align:center}.oralb-menu-toggle{display:none!important;flex-direction:column;gap:6px}.oralb-menu-toggle span{width:20px;height:1px;background:var(--oralb-navy)}
.oralb-search{position:absolute;top:58px;right:36px;width:min(360px,calc(100vw - 20px));background:#fff;padding:18px;box-shadow:0 10px 30px #0002;z-index:120}.oralb-search label{display:block;font-size:13px;margin-bottom:7px}.oralb-search input[type=search]{width:70%;height:38px;border:1px solid var(--oralb-line)}.oralb-search button{height:38px;background:var(--oralb-blue);color:#fff;border:0;padding:0 9px}
.oralb-desktop-nav{height:55px;max-width:1320px;margin:auto}.oralb-main-menu,.oralb-mobile-menu{list-style:none;margin:0;padding:0}.oralb-main-menu{height:100%;display:flex;align-items:center;justify-content:center}.oralb-main-menu>li{height:100%;display:flex;align-items:center}.oralb-main-menu>li>a{font-size:17px;font-weight:400;padding:16px 30px;white-space:nowrap}.oralb-main-menu>li>a:hover,.oralb-main-menu>li.is-open>a{color:var(--oralb-blue)}.oralb-main-menu .sub-menu{display:none;position:absolute;top:114px;left:0;right:0;min-height:175px;padding:34px max(4%,calc((100vw - 1240px)/2));margin:0;background:#fff;list-style:none;box-shadow:0 18px 28px #0002;border-top:1px solid #d6e8ff}.oralb-main-menu .is-open>.sub-menu{display:flex;gap:30px}.oralb-main-menu .sub-menu a{display:block;padding:14px 20px;background:var(--oralb-pale);border:1px solid var(--oralb-line);border-radius:8px;font-weight:700}.oralb-mobile-nav{display:none}
.oralb-home .elementor-section,.oralb-home .elementor-container,.oralb-home .elementor-column,.oralb-home .elementor-widget-wrap,.oralb-home .elementor-widget-oralb-section{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}.oralb-home .elementor-widget-oralb-section>.elementor-widget-container{margin:0!important;padding:0!important}
.oralb-button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 28px;border:0;border-radius:30px;background:linear-gradient(100deg,var(--oralb-navy),var(--oralb-blue));color:#fff!important;font-size:16px;font-weight:700;text-align:center}.oralb-button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:#0b51d2;color:#fff!important}
.oralb-home-hero{padding:50px 0 70px;background:linear-gradient(180deg,#fff 55%,#f1f8ff)}.oralb-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px}.oralb-hero-copy{text-align:center}.oralb-home-hero h1{font-size:52px;line-height:1.1;letter-spacing:-.035em;margin:0 0 10px;background:linear-gradient(90deg,var(--oralb-navy),var(--oralb-blue));color:transparent;background-clip:text}.oralb-home-hero p{font-size:34px;line-height:1.15;margin:0 0 25px;color:var(--oralb-blue);font-weight:300}.oralb-home-hero img{width:100%;height:420px!important;object-fit:contain;background:#fff;border-radius:20px}
.oralb-featured{padding:65px 0 90px;background:#fff}.oralb-featured h2,.oralb-category-promo h2{font-size:40px;line-height:1.15;margin:0 0 32px;text-align:center;background:linear-gradient(90deg,var(--oralb-navy),var(--oralb-blue));color:transparent;background-clip:text}.oralb-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:880px;margin:auto}.oralb-featured-card{display:block;padding:16px;border-radius:18px;border:1px solid var(--oralb-line);background:var(--oralb-pale)}.oralb-featured-card img{display:block;width:100%;height:330px!important;object-fit:contain;background:#fff;border-radius:13px}.oralb-featured-card strong,.oralb-featured-card span,.oralb-featured-card em{display:block}.oralb-featured-card strong{margin-top:14px;font-size:17px;line-height:1.3;min-height:45px}.oralb-featured-card span{font-weight:700;font-size:20px;margin-top:10px}.oralb-featured-card em{font-style:normal;color:var(--oralb-blue);font-weight:700;margin-top:12px}
.oralb-category-promo{padding:70px 0;background:#f1f7ff}.oralb-category-promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.oralb-category-promo img{width:100%;border-radius:18px}.oralb-category-promo h2{text-align:left;margin-bottom:15px}.oralb-category-promo p{font-size:21px;color:var(--oralb-blue)}
.oralb-footer{background:var(--oralb-navy);color:#fff;padding:50px 0 24px}.oralb-footer img{width:113px}.oralb-footer nav{display:flex;gap:25px;margin:25px 0}.oralb-footer p{font-size:12px;color:#d4e7ff}.oralb-footer a:hover{text-decoration:underline}
.oralb-page{min-height:65vh;padding:40px 0}.oralb-page h1{font-size:38px}.oralb-cart-note{padding:14px 18px;background:var(--oralb-pale);border-left:4px solid var(--oralb-blue);font-size:14px}.woocommerce-cart .wc-block-cart__submit,.woocommerce-cart .wc-proceed-to-checkout{display:none!important}
.oralb-category-intro{text-align:center;padding:52px 0 10px}.oralb-category-intro p{font-size:13px;font-weight:700;letter-spacing:.05em;margin:0 0 10px}.oralb-category-intro h1{font-size:47px;line-height:1.1;margin:0 auto 35px;max-width:900px;background:linear-gradient(90deg,var(--oralb-navy),var(--oralb-blue),var(--oralb-cyan));color:transparent;background-clip:text}.oralb-category-intro img{display:block;width:min(705px,100%);margin:0 auto;border-radius:18px}
.oralb-breadcrumb{padding:35px 0 25px;color:#777;font-size:13px;text-transform:uppercase}.oralb-breadcrumb .oralb-container{display:flex;gap:14px;align-items:center}.oralb-breadcrumb a{text-decoration:underline}.oralb-woo-container{max-width:var(--oralb-width);margin:auto;padding:40px 22px 80px}.oralb-woo-page .woocommerce-products-header{display:none}.oralb-woo-page .woocommerce-result-count{font-size:14px}.oralb-woo-page .woocommerce-ordering select{background:#fff;border:1px solid var(--oralb-line);padding:9px}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;clear:both}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:12px!important;border:1px solid var(--oralb-line);border-radius:15px;background:var(--oralb-pale);min-height:430px}.woocommerce ul.products li.product img{width:100%;height:260px!important;object-fit:contain;background:#fff;border-radius:9px;margin:0 0 12px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px!important;line-height:1.25;color:var(--oralb-navy);font-weight:700}.woocommerce ul.products li.product .price{font-size:18px!important;color:var(--oralb-navy)!important;font-weight:700}.woocommerce ul.products li.product .button{font-size:14px;margin-top:12px;min-height:39px;padding:7px 20px}
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,49%) minmax(0,51%);gap:50px}.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none!important;width:auto!important;margin:0!important}.woocommerce div.product div.images{padding:0 12px}.woocommerce div.product div.images .woocommerce-product-gallery__wrapper img{width:100%;background:#fff;border-radius:18px;box-shadow:0 4px 24px #004b9e1a}.woocommerce div.product div.images .flex-control-thumbs{display:flex!important;gap:10px;margin-top:15px!important}.woocommerce div.product div.images .flex-control-thumbs li{float:none!important;width:85px!important}.woocommerce div.product div.images .flex-control-thumbs img{width:85px!important;height:85px!important;object-fit:cover;border:1px solid var(--oralb-line);border-radius:8px}
.woocommerce div.product .product_title{font-size:44px;line-height:1.12;letter-spacing:-.025em;margin:0 0 18px;background:linear-gradient(100deg,var(--oralb-navy),var(--oralb-blue),var(--oralb-cyan));color:transparent;background-clip:text}.woocommerce div.product .summary .woocommerce-product-details__short-description{font-size:18px;line-height:1.5;margin:0 0 22px}.woocommerce div.product .summary .price{font-size:31px!important;font-weight:700;color:#111!important;margin:0 0 20px}.oralb-colors{margin:20px 0}.oralb-colors p{font-size:14px;font-weight:700;margin:0 0 10px}.oralb-colors a{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--oralb-line);border-radius:18px;padding:8px 12px;margin:0 8px 8px 0;font-size:14px}.oralb-colors a.is-current{border-color:var(--oralb-blue);background:#e6f6ff}.oralb-colors a span{width:18px;height:18px;border-radius:50%;border:1px solid #c7c7c7}.oralb-colors a.is-pink span{background:#ebafc1}.oralb-colors a.is-black span{background:#252525}.oralb-add-on{padding:13px 16px;background:#f3f8ff;border-radius:8px;font-size:14px;margin-bottom:18px}.oralb-add-on p{margin:5px 0 0}.woocommerce div.product form.cart{display:flex;align-items:center;gap:10px}.woocommerce div.product form.cart .quantity input{height:46px;width:68px;border:1px solid var(--oralb-line);border-radius:7px}.woocommerce div.product form.cart .single_add_to_cart_button{min-height:48px}.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related{grid-column:1/-1}.woocommerce div.product .woocommerce-tabs{padding-top:30px}.oralb-mobile-add{display:none}
@media(max-width:801px){.oralb-promo{position:static;height:42px;left:auto;right:auto;border-radius:0}.oralb-header-main{height:72px;padding:0 10px}.oralb-logo{width:113px}.oralb-menu-toggle{display:flex!important}.oralb-desktop-nav{display:none}.oralb-mobile-nav{display:block;position:absolute;top:114px;left:0;right:0;max-height:calc(100vh - 114px);overflow:auto;background:#fff;box-shadow:0 14px 20px #0002}.oralb-mobile-menu>li>a{display:block;padding:18px 24px;border-bottom:1px solid var(--oralb-line);font-weight:700}.oralb-mobile-menu .sub-menu{display:none;list-style:none;margin:0;padding:10px 25px;background:var(--oralb-pale)}.oralb-mobile-menu .is-open>.sub-menu{display:block}.oralb-mobile-menu .sub-menu a{display:block;padding:12px 0}.oralb-search{top:114px;right:10px}.oralb-hero-grid{grid-template-columns:1fr}.oralb-category-promo-grid{grid-template-columns:1fr}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.woocommerce div.product{grid-template-columns:1fr;gap:15px}.woocommerce div.product div.summary{display:contents}.woocommerce div.product .product_title{order:0}.woocommerce div.product .woocommerce-product-details__short-description{order:1}.woocommerce div.product .summary .price{order:2}.woocommerce div.product div.images{order:3}.woocommerce div.product .oralb-colors{order:4}.woocommerce div.product .oralb-add-on{order:5}.woocommerce div.product form.cart{order:6}.woocommerce div.product .product_meta{order:7}.woocommerce div.product .woocommerce-tabs{order:8}.woocommerce div.product .related{order:9}.oralb-mobile-add{display:block;position:fixed;z-index:130;left:10px;bottom:17px;min-width:235px;max-width:calc(100vw - 20px);padding:14px 20px;border:0;border-radius:30px;background:linear-gradient(100deg,var(--oralb-navy),var(--oralb-blue));color:#fff;font-weight:700;box-shadow:0 4px 18px #05166155}}
@media(max-width:551px){.oralb-container{padding:0 18px}.oralb-tools{gap:8px}.oralb-tools>a,.oralb-tools>button{width:40px;height:40px}.oralb-home-hero{padding:20px 0 55px}.oralb-hero-grid{gap:8px}.oralb-home-hero img{order:-1;height:200px!important;object-fit:contain}.oralb-home-hero h1{font-size:36px}.oralb-home-hero p{font-size:26px;max-width:330px;margin:0 auto 18px}.oralb-featured{padding:50px 0}.oralb-featured h2,.oralb-category-promo h2{font-size:31px}.oralb-featured-grid{gap:12px}.oralb-featured-card{padding:8px;border-radius:12px}.oralb-featured-card img{height:165px!important}.oralb-featured-card strong{font-size:12px;min-height:65px}.oralb-featured-card span{font-size:16px}.oralb-featured-card em{font-size:12px}.oralb-category-promo{padding:50px 0}.oralb-category-promo p{font-size:18px}.oralb-footer{padding:45px 0}.oralb-footer nav{display:block}.oralb-footer nav a{display:block;padding:7px 0}.oralb-page{padding:35px 0}.oralb-page h1{font-size:32px}.oralb-category-intro{padding:30px 0 5px}.oralb-category-intro h1{font-size:35px;margin-bottom:25px}.oralb-category-intro img{width:100%}.oralb-woo-container{padding:28px 10px 70px}.woocommerce ul.products{gap:12px}.woocommerce ul.products li.product{min-height:355px;padding:7px!important}.woocommerce ul.products li.product img{height:170px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12px!important}.woocommerce ul.products li.product .price{font-size:16px!important}.woocommerce ul.products li.product .button{font-size:12px;padding:7px 10px}.oralb-breadcrumb{padding:18px 0}.oralb-breadcrumb .oralb-container{gap:8px;white-space:nowrap;overflow:hidden;font-size:11px}.woocommerce div.product .product_title{font-size:29px}.woocommerce div.product .summary .woocommerce-product-details__short-description{font-size:16px}.woocommerce div.product .summary .price{font-size:31px!important}.woocommerce div.product div.images{padding:0}.woocommerce div.product form.cart{margin-bottom:65px}.woocommerce div.product form.cart .single_add_to_cart_button{font-size:14px}}
/* 2026-10-02 parity repair: source promotional carousel above the home hero */
.oralb-promo-hero{position:relative;background:linear-gradient(100deg,var(--oralb-navy),var(--oralb-blue));color:#fff;text-align:center;padding:26px 16px 18px}
.oralb-promo-slides{position:relative;min-height:76px}
.oralb-promo-slide{display:none}
.oralb-promo-slide.is-active{display:block}
.oralb-promo-slide h2{font-size:27px;line-height:1.15;margin:0 0 6px;color:#fff}
.oralb-promo-slide p{font-size:18px;margin:0 0 12px;color:#eaf0ff}
.oralb-promo-slide .oralb-button{background:#fff;color:var(--oralb-navy)!important;min-height:42px}
.oralb-promo-dots{display:flex;gap:8px;justify-content:center;margin-top:14px}
.oralb-promo-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#ffffff66;cursor:pointer}
.oralb-promo-dots button.is-active{background:#fff}
@media(max-width:801px){.oralb-promo-slide h2{font-size:21px}.oralb-promo-slide p{font-size:15px}.oralb-promo-hero{padding:18px 12px 12px}.oralb-promo-slides{min-height:66px}}

/* ---------------------------------------------------------------------------
   2026-10-03 similarity repair - style tokens aligned to the source site
   (https://cdn11.bigcommerce.com/s-2idmiil7bp/stencil/theme-c50028f0-….css):
   @font-face HurmeGeometricSans1-{Light,Regular,SemiBold,Bold}; colors
   #002d72 / #0e1c63 / #0050ef / #3cc2fb / #3d3d41; breakpoints
   375 / 481 / 551 / 801 / 1261; card aspect-ratios 16/7, 4/3, 16/14.
   Font files localized (assets-manifest).
   2026-10-03 re-inspection fix: the @font-face rules for Neutraface2Text-
   {Light,Book,Demi,Bold} were removed - those 4 .woff files never landed
   (BigCommerce WebDAV refused the download) and their missing src caused
   404s. The font-family fallback stacks in :root are kept unchanged.
   New PDP marketing blocks / category banner / filter panel / brand footer.
   All new rules are scoped to the added class names (no global !important).
   --------------------------------------------------------------------------- */
@font-face{font-family:"HurmeGeometricSans1-Light";font-weight:300;font-display:swap;src:url("/wp-content/themes/oralb-store/assets/fonts/HurmeGeometricSans1-Light.otf") format("opentype")}
@font-face{font-family:"HurmeGeometricSans1-Regular";font-weight:400;font-display:swap;src:url("/wp-content/themes/oralb-store/assets/fonts/HurmeGeometricSans1-Regular.otf") format("opentype")}
@font-face{font-family:"HurmeGeometricSans1-SemiBold";font-weight:600;font-display:swap;src:url("/wp-content/themes/oralb-store/assets/fonts/HurmeGeometricSans1-SemiBold.otf") format("opentype")}
@font-face{font-family:"HurmeGeometricSans1-Bold";font-weight:700;font-display:swap;src:url("/wp-content/themes/oralb-store/assets/fonts/HurmeGeometricSans1-Bold.otf") format("opentype")}
:root{--oralb-navy:#002d72;--oralb-navy-deep:#0e1c63;--oralb-blue:#0050ef;--oralb-sky:#3cc2fb;--oralb-ink:#3d3d41;--oralb-font-head:"Neutraface2Text-Demi","Neutraface2Text-Book","HurmeGeometricSans1-SemiBold",Arial,sans-serif;--oralb-font-body:"HurmeGeometricSans1-Regular","HurmeGeometricSans1-Light",Arial,sans-serif}
body{font-family:var(--oralb-font-body);color:var(--oralb-ink)}
h1,h2,h3,h4{font-family:var(--oralb-font-head)}
.oralb-hero-video{position:relative;width:100%;background:var(--oralb-navy-deep);aspect-ratio:16/7;overflow:hidden}
.oralb-hero-video video{display:block;width:100%;height:100%;object-fit:cover}
.oralb-pdp-story{grid-column:1/-1;width:100%;margin:36px auto 0}
.oralb-story-block{padding:56px 0;border-top:1px solid #e2e6f2}
.oralb-story-block:first-child{border-top:0;padding-top:8px}
.oralb-story-block h2{font-family:var(--oralb-font-head);font-size:clamp(28px,3.2vw,42px);color:var(--oralb-navy);margin:0 0 16px}
.oralb-story-block p{font-family:var(--oralb-font-body);font-size:17px;line-height:1.65;margin:0 0 12px;max-width:820px}
.oralb-story-eyebrow{font-family:var(--oralb-font-head);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--oralb-blue);margin:0 0 18px}
.oralb-review-card{margin:22px 0 0;background:#f1f7ff;border-radius:18px;padding:28px 30px;max-width:820px}
.oralb-review-card blockquote{margin:0 0 14px;font-family:var(--oralb-font-head);font-size:24px;color:var(--oralb-navy)}
.oralb-review-card figcaption{font-family:var(--oralb-font-body);font-size:16px;line-height:1.7}
.oralb-story-cta a{font-family:var(--oralb-font-head);color:var(--oralb-blue);text-decoration:underline}
.oralb-also-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:24px}
.oralb-also-card{display:block;background:#fff;border:1px solid #e2e6f2;border-radius:18px;padding:18px;text-align:center;transition:opacity .2s ease,transform .2s ease}
.oralb-also-card:hover{opacity:.88;transform:translateY(-3px)}
.oralb-also-card img{width:100%;aspect-ratio:4/3;object-fit:contain}
.oralb-also-card strong{display:block;margin:12px 0 6px;font-family:var(--oralb-font-head);color:var(--oralb-navy);font-size:15px}
.oralb-also-card span{font-family:var(--oralb-font-body);color:var(--oralb-ink)}
.oralb-faq-item{border-top:1px solid #e2e6f2}
.oralb-faq-item:last-child{border-bottom:1px solid #e2e6f2}
.oralb-faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px;padding:20px 0;font-family:var(--oralb-font-head);font-size:19px;color:var(--oralb-navy)}
.oralb-faq-item summary::-webkit-details-marker{display:none}
.oralb-faq-item summary:after{content:"+";font-size:22px;font-weight:400}
.oralb-faq-item[open] summary:after{content:"–"}
.oralb-faq-item p{padding:0 0 20px;max-width:900px}
.oralb-needs{padding:56px 4%;background:#f1f8ff}
.oralb-needs h2{font-family:var(--oralb-font-head);font-size:clamp(28px,3.2vw,42px);color:var(--oralb-navy);margin:0 0 12px}
.oralb-needs-intro{font-family:var(--oralb-font-body);font-size:18px;margin:0 0 26px}
.oralb-needs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.oralb-need-card{display:block;background:#fff;border-radius:18px;padding:26px 24px;transition:opacity .2s ease,transform .2s ease}
.oralb-need-card:hover{opacity:.88;transform:translateY(-3px)}
.oralb-need-card strong{display:block;font-family:var(--oralb-font-head);font-size:20px;color:var(--oralb-navy)}
.oralb-need-card span{display:block;margin:8px 0 12px;font-family:var(--oralb-font-body);font-size:14px;color:var(--oralb-ink)}
.oralb-need-card em{font-family:var(--oralb-font-head);font-style:normal;color:var(--oralb-blue);font-size:14px}
.oralb-savings{padding:56px 4%}
.oralb-savings h2{font-family:var(--oralb-font-head);font-size:clamp(28px,3.2vw,42px);color:var(--oralb-navy);margin:0 0 12px}
.oralb-savings p{font-family:var(--oralb-font-body);font-size:17px;margin:0 0 22px}
.oralb-compare{padding:56px 4%;background:#fff}
.oralb-compare h2{font-family:var(--oralb-font-head);font-size:clamp(28px,3.2vw,42px);color:var(--oralb-navy);margin:0 0 12px}
.oralb-compare p{font-family:var(--oralb-font-body);font-size:17px;margin:0 0 22px}
.oralb-compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;max-width:1100px}
.oralb-compare-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,2fr);gap:18px;border-top:1px solid #e2e6f2;padding:18px 0}
.oralb-compare-row strong{font-family:var(--oralb-font-head);color:var(--oralb-navy)}
.oralb-compare-row span{font-family:var(--oralb-font-body)}
.oralb-category-banner{background:var(--oralb-navy);color:#fff;border-radius:18px;padding:34px 30px;margin:0 0 28px}
.oralb-category-banner h2{font-family:var(--oralb-font-head);font-size:clamp(22px,2.6vw,34px);margin:0;color:#fff}
.oralb-filter-panel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 26px;border-top:1px solid #e2e6f2;border-bottom:1px solid #e2e6f2;padding:22px 0;margin:0 0 30px}
.oralb-filter-panel>h2{grid-column:1/-1;font-family:var(--oralb-font-head);font-size:24px;color:var(--oralb-navy);margin:0}
.oralb-filter-group h3{font-family:var(--oralb-font-head);font-size:15px;color:var(--oralb-navy);margin:0 0 10px}
.oralb-filter-group ul{list-style:none;margin:0;padding:0}
.oralb-filter-group li{margin:0 0 6px;font-family:var(--oralb-font-body);font-size:14px}
.oralb-filter-group li a{display:flex;justify-content:space-between;gap:10px;transition:opacity .2s ease}
.oralb-filter-group li a:hover{opacity:.75}
.oralb-filter-group li a[aria-current="true"]{font-weight:700}
.oralb-filter-group span{color:#777}
.oralb-price-filter{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}
.oralb-price-filter label{display:flex;flex-direction:column;gap:4px;font-family:var(--oralb-font-body);font-size:12px}
.oralb-price-filter input{width:92px;padding:8px;border:1px solid #c7c7c7;border-radius:8px}
.oralb-filter-clear{display:inline-block;margin-top:10px;font-family:var(--oralb-font-head);color:var(--oralb-blue);text-decoration:underline}
.codex-custom-footer .oralb-brand-footer{background:linear-gradient(180deg,#eef5ff 0%,#f6f2fb 100%);color:var(--oralb-ink);padding:42px 5vw 26px}
.codex-custom-footer .oralb-footer-panel{max-width:1300px;margin:0 auto;background:#fff;border:1px solid #dfe8f7;border-radius:18px;padding:38px 46px}
.codex-custom-footer .oralb-footer-columns{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px 24px}
.codex-custom-footer .oralb-footer-columns h3{font-family:var(--oralb-font-head);font-size:19px;color:#0b2a80;margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid #9ec9ff}
.codex-custom-footer .oralb-footer-columns ul{list-style:none;margin:0;padding:0}
.codex-custom-footer .oralb-footer-columns li{margin:0 0 6px;font-family:var(--oralb-font-body);font-size:17px;line-height:2.1}
.codex-custom-footer .oralb-footer-columns a{color:#3d3d41;transition:color .2s ease}
.codex-custom-footer .oralb-footer-columns a:hover{color:var(--oralb-blue);text-decoration:underline}
.codex-custom-footer .oralb-footer-mid{max-width:1300px;margin:30px auto 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:40px}
.codex-custom-footer .oralb-footer-country{display:flex;align-items:center;gap:8px;font-family:var(--oralb-font-head);font-size:20px;color:var(--oralb-blue);margin:0 0 30px}
.codex-custom-footer .oralb-footer-country:after{content:"\2304";font-size:15px}
.codex-custom-footer .oralb-footer-follow-title{font-family:var(--oralb-font-head);font-size:19px;color:#0b2a80;margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid #9ec9ff}
.codex-custom-footer .oralb-footer-follow{list-style:none;display:flex;gap:30px;margin:0;padding:0}
.codex-custom-footer .oralb-footer-follow a{display:block;font-family:var(--oralb-font-body);font-size:15px;color:var(--oralb-blue);text-align:center}
.codex-custom-footer .oralb-footer-follow a:hover{text-decoration:underline}
.codex-custom-footer .oralb-footer-subscribe-title{font-family:var(--oralb-font-head);font-size:21px;color:#0b2a80;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid #9ec9ff}
.codex-custom-footer .oralb-signup{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.codex-custom-footer .oralb-signup label{display:flex;flex-direction:column;gap:6px;font-family:var(--oralb-font-body);font-size:12px}
.codex-custom-footer .oralb-signup input[type="email"]{min-width:230px;padding:11px 12px;border:1px solid #b9c8e4;border-radius:8px;background:#fff;color:#3d3d41}
.codex-custom-footer .oralb-signup button{min-height:44px;padding:10px 26px;border:0;border-radius:30px;background:linear-gradient(100deg,var(--oralb-navy),var(--oralb-blue));color:#fff;font-family:var(--oralb-font-head);cursor:pointer}
.codex-custom-footer .oralb-footer-terms{margin:16px 0 0;font-family:var(--oralb-font-body);font-size:12.5px;line-height:1.55;color:#585858}
.codex-custom-footer .oralb-footer-terms p{margin:0 0 12px}
.codex-custom-footer .oralb-footer-terms a{color:var(--oralb-blue);text-decoration:underline}
.codex-custom-footer .oralb-footer-legal-row{max-width:1300px;margin:30px auto 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;font-family:var(--oralb-font-body);font-size:12.5px;color:#585858}
.codex-custom-footer .oralb-footer-legal{list-style:none;display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;padding:0}
.codex-custom-footer .oralb-footer-legal a{color:#585858;text-decoration:underline}
.codex-custom-footer .oralb-footer-optout a{color:var(--oralb-blue);text-decoration:underline}
.codex-custom-footer .oralb-footer-privacy-notice{margin:0}
.codex-custom-footer .oralb-copyright{margin:0;font-family:var(--oralb-font-body);font-size:12.5px;color:#585858}
.codex-custom-footer .oralb-footer-promo{display:none;font-family:var(--oralb-font-head);font-size:22px;color:#0b2a80;margin:0 0 10px}
@media(max-width:801px){.oralb-also-grid,.oralb-needs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.oralb-compare-grid{grid-template-columns:1fr}.oralb-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.codex-custom-footer .oralb-footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.codex-custom-footer .oralb-footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:551px){.oralb-hero-video{aspect-ratio:4/3}}
@media(max-width:481px){.oralb-also-grid,.oralb-needs-grid{grid-template-columns:1fr}}
@media(max-width:375px){.oralb-review-card{padding:20px 18px}}
@media(min-width:1261px){.oralb-also-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}


/* ---------------------------------------------------------------------------
   2026-10-04 tail-block parity round (主页差距-统一清单.md Oral-B §1.12):
   the six missing source home page tail blocks rendered by the
   oralb-local-section Elementor widget (brushhead / system / protrust / app /
   science / faq). Copy + imagery verbatim from the 2026-10-04 bsk capture of
   https://www.oralb.com/ (eureka-homepage-* sections); block colours/gradients
   measured from computed styles (gradient text 91deg #0e1c63->#0050ef->#3cc2fb,
   tab pills #a5cbfe->#7dd6fc->#fff, pale band #edf5ff, navy band #0e1c63).
   --------------------------------------------------------------------------- */
.oralb-home .elementor-widget-oralb-local-section{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
.oralb-home .elementor-widget-oralb-local-section>.elementor-widget-container{margin:0!important;padding:0!important}
.oralb-local .oralb-local-title{font-family:var(--oralb-font-head);font-size:clamp(30px,4.2vw,61px);line-height:1.08;letter-spacing:-.02em;margin:0 0 22px;background:linear-gradient(91deg,#0e1c63 1%,#0050ef 50%,#3cc2fb 99%);color:transparent;background-clip:text;-webkit-background-clip:text}
/* brushhead: source eureka-homepage-brush-head-replacement (title + wide artwork + CTA) */
.oralb-brushhead{background:linear-gradient(177deg,#edf5ff 2%,#fff 98%);text-align:center;padding:53px 4% 48px}
.oralb-brushhead .oralb-local-title{text-align:center;margin-bottom:30px}
.oralb-brushhead-media{max-width:980px;margin:0 auto}
.oralb-brushhead-media img{display:block;width:100%;border-radius:22px}
.oralb-brushhead-cta{margin:32px 0 0}
/* system: source eureka-homepage-system-routine (3 tabs x 3 image cards + price row) */
.oralb-system{background:#fff;text-align:center;padding:64px 4% 56px}
.oralb-system-title{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:26px}
.oralb-system-title-light{font-weight:400}
.oralb-system-title-bold{font-size:clamp(32px,4.6vw,69px)}
.oralb-system-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:0 0 36px}
.oralb-system-tab{border:1px solid transparent;border-radius:53px;padding:12px 21px;font-family:var(--oralb-font-head);font-size:16px;font-weight:600;color:#0033a0;background:linear-gradient(91deg,#a5cbfe -0%,#7dd6fc 49%,#fff 99%);cursor:pointer}
.oralb-system-tab.is-active{border-color:#0050ef;box-shadow:0 4px 14px #0050ef22}
.oralb-system-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1260px;margin:0 auto}
.oralb-system-card{position:relative;border-radius:26px;overflow:hidden;background:#0b2a6b}
.oralb-system-card picture{display:block}
.oralb-system-card picture img{display:block;width:100%;aspect-ratio:696/884;object-fit:cover}
.oralb-system-card-name{position:absolute;top:16px;left:22px;right:76px;margin:0;text-align:left;font-family:var(--oralb-font-head);font-size:23px;line-height:1.25;color:#fff}
.oralb-system-card-toggle{position:absolute;top:14px;right:16px;width:46px;height:46px;padding:3px;border:0;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.oralb-system-card-toggle img{width:100%;height:100%}
.oralb-system-card-toggle.is-open{transform:rotate(45deg)}
.oralb-system-card-details{position:absolute;left:0;right:0;bottom:0;background:#fffffff2;padding:18px 22px;text-align:left}
.oralb-system-card-details p{margin:0 0 12px;font-family:var(--oralb-font-body);font-size:14px;line-height:1.5;color:#3d3d41}
.oralb-system-card-details p strong{color:var(--oralb-navy)}
.oralb-system-card-cta{display:inline-block;font-family:var(--oralb-font-head);font-size:15px;color:var(--oralb-blue);text-decoration:underline}
.oralb-system-price{margin:22px 0 0;font-family:var(--oralb-font-head);font-size:18px;color:var(--oralb-navy)}
.oralb-system-price[hidden]{display:none}
.oralb-system-cta{margin:34px 0 0}
.oralb-system-cta .oralb-button{background:#fff;color:var(--oralb-blue)!important;border:2px solid #7dd6fc;min-height:56px;padding:14px 60px;font-size:19px}
.oralb-system-cta .oralb-button:hover{background:#f1f8ff;color:var(--oralb-blue)!important}
/* protrust: source eureka-homepage-pro-trusted (pale band + 2 badges + CTA) */
.oralb-protrust{background:#edf5ff;text-align:center;padding:88px 4% 56px}
.oralb-protrust .oralb-local-title{margin-bottom:36px}
.oralb-protrust-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:40px}
.oralb-protrust-badges img{height:170px;width:auto}
.oralb-protrust-cta{margin:40px 0 0}
/* app: source eureka-homepage-pocket-hygienist (pale gradient + copy + app screens) */
.oralb-app{background:linear-gradient(177deg,#edf5ff 2%,#fff 98%);padding:72px 4%}
.oralb-app-inner{display:flex;align-items:center;gap:53px}
.oralb-app-copy{flex:1 1 38%}
.oralb-app-copy .oralb-local-title{margin-bottom:34px}
.oralb-app-cta{margin:0}
.oralb-app-media{flex:1 1 55%}
.oralb-app-media>picture img{display:block;width:100%}
.oralb-app-carousel{display:none;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory}
.oralb-app-carousel img{flex:0 0 62%;scroll-snap-align:start;border-radius:16px}
/* science: source eureka-homepage-science-wrapper (navy band + article cards) */
.oralb-science{background:#0e1c63;padding:64px 4%}
.oralb-science .oralb-container{display:flex;align-items:flex-start;gap:36px;max-width:1440px}
.oralb-science .oralb-local-title{flex:0 0 clamp(220px,24vw,340px);margin:24px 0 0;background:linear-gradient(91deg,#fff 1%,#beebfe 99%);color:transparent;background-clip:text;-webkit-background-clip:text}
.oralb-science-grid{flex:1;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,360px);gap:22px;overflow-x:auto;padding-bottom:14px}
.oralb-science-card{display:flex;flex-direction:column;background:#eef4ff;border-radius:18px;overflow:hidden}
.oralb-science-card picture img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.oralb-science-card h3{margin:18px 20px 10px;font-family:var(--oralb-font-head);font-size:23px;line-height:1.2;color:var(--oralb-blue)}
.oralb-science-card p{margin:0 20px 18px;font-family:var(--oralb-font-body);font-size:15px;line-height:1.55;color:#3d3d41}
.oralb-science-more{display:inline-flex;align-items:center;justify-content:center;margin:0 20px 22px;min-height:48px;padding:10px 30px;border:1px solid #9ec9ff;border-radius:30px;background:#fff;color:var(--oralb-blue);font-family:var(--oralb-font-head);font-size:17px}
.oralb-science-more:hover{background:#f1f8ff}
/* faq: source eureka-homepage-faq-section (centered title + accordion) */
.oralb-faq-home{background:#fff;text-align:center;padding:64px 4% 40px}
.oralb-faq-home .oralb-local-title{background:linear-gradient(91deg,#0050ef 1%,#3cc2fb 99%);color:transparent;background-clip:text;-webkit-background-clip:text;margin-bottom:16px}
.oralb-faq-home-intro{font-family:var(--oralb-font-body);font-size:21px;color:#3d3d41;margin:0 0 30px}
.oralb-faq-home-item{border-bottom:1px solid #b9d7ff;text-align:left;max-width:1520px;margin:0 auto}
.oralb-faq-home-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px;padding:24px 7px;font-family:var(--oralb-font-head);font-size:19px;letter-spacing:.03em;color:#0140a9}
.oralb-faq-home-item summary::-webkit-details-marker{display:none}
.oralb-faq-home-item summary:after{content:"\2304";font-size:18px;color:#0140a9}
.oralb-faq-home-item[open] summary:after{content:"\2303"}
.oralb-faq-home-item p{margin:0;padding:0 7px 22px;max-width:1100px;font-family:var(--oralb-font-body);font-size:16px;line-height:1.65;color:#3d3d41}
@media(max-width:801px){
  .oralb-system-grid{grid-template-columns:1fr;max-width:420px}
  .oralb-system-title{align-items:flex-start;text-align:left}
  .oralb-app-inner{flex-direction:column;gap:26px;align-items:flex-start}
  .oralb-app-media>picture{display:none}
  .oralb-app-carousel{display:flex;width:100%}
  .oralb-science .oralb-container{flex-direction:column;gap:22px}
  .oralb-science .oralb-local-title{flex:auto;margin:0}
  .oralb-science-grid{width:100%;grid-auto-columns:minmax(240px,80%)}
  .oralb-protrust-badges img{height:120px}
}
@media(max-width:551px){
  .oralb-local .oralb-local-title{font-size:30px}
  .oralb-system-title-bold{font-size:32px}
  .oralb-faq-home-intro{font-size:17px}
}

/* 2026-10-04 P1: orig shows both promos stacked (not one-at-a-time) */
.oralb-promo-slide{display:block!important}
.oralb-promo-slides{min-height:0!important}
.oralb-promo-slide+.oralb-promo-slide{margin-top:16px;border-top:1px solid rgba(255,255,255,.25);padding-top:14px}
.oralb-promo-dots{display:none!important}

/* Keep the native footer signup controls inside their mobile grid column. */
@media(max-width:801px){
.codex-custom-footer .oralb-signup label{min-width:0;max-width:100%}
.codex-custom-footer .oralb-signup input[type="email"]{min-width:0;max-width:100%;width:100%}
}
