/* XBAT theme and preserved local workflows on one Bootstrap 5 framework. */
:root { --bs-primary:#4ba8bd; --bs-danger:#cc5229; --bs-link-color:#337ab7; --bs-link-hover-color:#23527c; }
body { font-size:16px; line-height:1.42857143; color:#333; }
h1,h2,h3,h4,h5,h6 { font-weight:500; }
.btn { --bs-btn-font-size:1rem; }
.btn-primary { --bs-btn-bg:#4ba8bd; --bs-btn-border-color:#409aaf; --bs-btn-hover-bg:#398a9c; --bs-btn-hover-border-color:#307382; }
.btn-danger { --bs-btn-bg:#cc5229; --bs-btn-border-color:#b74925; --bs-btn-hover-bg:#a24120; --bs-btn-hover-border-color:#84351a; }
.form-control,.form-select { font-size:1rem; }
.site-header .navbar { --bs-navbar-padding-y:0; }
.site-header .navbar-nav>li>a { text-decoration:none; }
.site-header .dropdown-menu.show { display:block; }
.site-header .dropdown-menu-end { right:0; left:auto; }
.site-footer .site-footer__links-list.show-footer-links { display:block!important; }
.site-footer h3 { cursor:pointer; }
.content { padding-top:30px; padding-bottom:30px; }
.content_products .breadcrumb,.xbat-checkout-breadcrumbs .breadcrumb { font-family:ProximaNovaCondensed,'Arial Narrow',sans-serif; }
.breadcrumb-item+.breadcrumb-item { padding-left:.5rem; }
.xbat-checkout { font-family:ProximaNovaCondensed,'Arial Narrow',sans-serif; }
.xbat-checkout .btn,.xbat-checkout .form-control,.xbat-checkout .form-select { font-family:inherit; }
.xbat-checkout .product_option,.xbat-viewcart .product_option { width:auto; padding-inline:0; }
.xbat-shipping-dialog .form-group { display:block; }
.xbat-shipping-dialog .form-group>label { width:auto; }
.xbat-viewcart .xbat-cart-item>.col-sm-7>.row,.xbat-viewcart .xbat-cart-item>.col-sm-5>.row { --bs-gutter-x:0; }
.xbat-viewcart .xbat-cart-item>.col-sm-7>.row>div,.xbat-viewcart .xbat-cart-item>.col-sm-5>.row>div { max-width:none; }
.xbat-viewcart .product_option { display:table-row; }
.xbat-cart-tools .btn,.xbat-cart-card .btn { border-radius:0; }
.xbat-checkout-breadcrumbs { padding-top:25px; }
/* Flag-based groups keep their original model membership and selection handlers. */
.check-list_tabs>ul { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:10px; }
.check-list_tabs>ul>li { float:none; width:auto!important; margin:0; min-width:0; }
.check-list_tabs .btn { border-radius:4px; background-image:none; background-color:#f7f7f7; padding:10px 7px; white-space:normal; height:100%; display:flex; align-items:center; gap:5px; justify-content:center; }
.check-list_tabs .btn:hover,.check-list_tabs .btn:focus { background-image:none; background-color:#eee; color:#333; }
.check-list_tabs .btn:has(input:checked) { background:#84391f; color:#fff; border-color:#84391f; text-shadow:none; }
.butts_tabs_contein { padding:25px 18px 18px; border:1px solid #e3e3e3; border-radius:5px; }
@media(max-width:767px) { .check-list_tabs>ul { grid-template-columns:repeat(2,minmax(0,1fr)); } .site-header .navbar-header { width:100%; justify-content:center; } .site-footer .site-footer__links-list { margin-bottom:20px!important; } }

.modal-header .btn-close { order:2; margin-left:auto; }
.modal-header .modal-title { order:1; }
.carousel-indicators li { list-style:none; }
.carousel-indicators [data-bs-target] { width:20px; height:4px; }

#xbat-image-preview img { max-width:100%; max-height:75vh; object-fit:contain; }

.banerhelp_mobile a[href^="tel:"] { color:#fff; }

/* Keep the header clean on pointer focus; keyboard focus uses an underline. */
.site-header .navbar-nav > li > a:focus,
.site-header .navbar-nav > li > a:hover { outline:0; box-shadow:none; }
.site-header .navbar-nav > li > a:focus-visible { text-decoration:underline; text-underline-offset:.2em; }

/* Restore the live homepage's 30px gutters and compact signup row. */
.transparent-banner > .container,
.subscribe_baner > .container { --bs-gutter-x:30px; }
.transparent-banner > .container > .row,
.subscribe_baner > .container > .row { --bs-gutter-x:30px; }
.subscribe_baner { line-height:1.5; }
.subscribe_baner .form-group { display:inline-block; margin-bottom:0!important; vertical-align:middle; }
.subscribe_baner .form-control { display:inline-block; height:34px; padding:6px 12px; font-size:14px; line-height:20px; border-radius:4px; vertical-align:middle; }
.subscribe_baner .btn { font-weight:400; line-height:1.42857143; vertical-align:middle; }

/* Match the configurator reference spacing with compact, square step badges. */
.xbat-configurator { line-height:1.5; }
.xbat-configurator > .container,
.xbat-configurator .row { --bs-gutter-x:30px; }
.xbat-configurator h2,
.xbat-configurator h3 { line-height:1.1; }
.xbat-configurator .configurator-desc h2 { margin:20px 0 10px; }
.xbat-configurator .configurator-desc h3 { margin:20px 0 10px; }
.xbat-configurator .side-menu h3 { margin:10px 0; }
.xbat-configurator .step1,
.xbat-configurator .step2 { margin:10px 0; line-height:1.1; }
.xbat-configurator .step3 { margin:10px 0 -10px; font-size:18px; line-height:1.1; }
.xbat-configurator .step1 b,
.xbat-configurator .step2 b,
.xbat-configurator .step3 b { display:inline-block; border-radius:0; padding:6px 8px; width:auto; font-size:16px; line-height:1; vertical-align:middle; margin:0 3px 0 -11px; }
.xbat-configurator .step3 b { margin-left:0; }
.xbat-configurator .configurator-choises { margin-bottom:10px; }
.xbat-configurator .configurator-choises > li h2::before { display:inline-block; width:16px; font-family:Arial,sans-serif; font-weight:700; font-size:24px; line-height:23.1px; text-align:center; }
@media(min-width:768px) and (max-width:991px) { .xbat-configurator > .container { max-width:750px; } }
@media(min-width:992px) and (max-width:1199px) { .xbat-configurator > .container { max-width:970px; } }
@media(min-width:1200px) { .xbat-configurator > .container { max-width:1170px; } }

/* Match the original intro height, which sets the middle banner's position. */
.first-text h1 { line-height:1.1; }
.first-text p.h5 { font-size:22px; line-height:1.1; margin-bottom:20px!important; }
.disc-line { line-height:1.5; }
.subscribe_baner .btn { border:0; }
.xbat-configurator .configurator-desc h3 { font-size:24px; }
.xbat-configurator .side-menu .start-here { display:flex; align-items:center; gap:8px; }

.xbat-configurator .configurator-choises > li.close-choise h2::before,
.xbat-configurator .configurator-choises > li.open-choise h2::before { font-family:"Font Awesome 6 Free"; font-weight:900; font-size:16px; line-height:23.1px; }
.xbat-configurator .configurator-choises > li.close-choise h2::before { content:"\f067"; }
.xbat-configurator .configurator-choises > li.open-choise h2::before { content:"\f068"; }

/* Homepage best sellers retain the live site's complete white cards. */
.choose-background-wrapper > .container { --bs-gutter-x:30px; }
.choose-background-wrapper > .container > .row { --bs-gutter-x:30px; }
.choose-background-wrapper section > h3.text-center { font-size:30px; line-height:1.1; margin:20px 0 15px; }
.choose-background-wrapper section > ul { margin-bottom:0; }
.choose-background-wrapper .product-link { display:block; max-width:100%; padding-bottom:10px; }
.choose-background-wrapper .product-link picture,
.choose-background-wrapper .product-link img,
.choose-background-wrapper .product-link span { display:block; }
.choose-background-wrapper .product-link img { width:100%; height:auto; max-width:100%; }
.choose-background-wrapper .product-link span { margin:0; }
@media(min-width:992px) {
  .choose-background-wrapper .choose__baseball > h3.text-center,
  .choose-background-wrapper .choose__baseball > ul { padding-right:70px; }
  .choose-background-wrapper .choose__softball > h3.text-center,
  .choose-background-wrapper .choose__softball > ul { padding-left:70px; }
}
/* Desktop: the panel collapses inside its own clip, leaving only its arrow on screen. */
.banerhelp { transform:none; }
@media(min-width:992px) {
  .banerhelp { width:var(--xbat-help-width,auto); transition:width .3s ease-in-out; }
  .banerhelp__content { overflow:hidden; width:100%; }
  .banerhelp__links { width:var(--xbat-help-width,max-content); }
  .banerhelp.is-collapsed { width:0; }
  .banerhelp.is-collapsed .banerhelp__toggle i { transform:scaleX(-1); }
}
@media(prefers-reduced-motion:reduce) { .banerhelp { transition:none; } }
/* Mobile: full-width static panel, no collapse; the homepage uses .banerhelp_mobile instead (as on live). */
@media(max-width:991px) {
  .banerhelp__toggle { display:none; }
  .banerhelp_index { display:none; }
}

/* Align the panel links and best-seller headings at the live sizes. */
.choose-background-wrapper .panel-body > ul { margin-bottom:10px; }
.choose-background-wrapper .panel .btn { border:0; line-height:1.42857143; padding:6px 30px 6px 12px; }
@media(min-width:768px) {
  .choose-background-wrapper section { display:flex; flex-direction:column; }
  .choose-background-wrapper .choose__softball > .panel { margin-bottom:auto; }
}
@media(min-width:992px) {
  .choose-background-wrapper .choose__baseball .panel-title,
  .choose-background-wrapper .choose__baseball .panel-body > ul { padding-right:70px; }
  .choose-background-wrapper .choose__softball .panel-title,
  .choose-background-wrapper .choose__softball .panel-body > ul { padding-left:70px; }
}
/* Bat categories use full-width groups and full-width model rows, as on live. */
.xbat-bat-category,
.xbat-bat-category-banner { line-height:1.5; }
.xbat-bat-category > .container,
.xbat-bat-category-banner > .container,
.xbat-bat-category .row { --bs-gutter-x:30px; }
.xbat-bat-category .bats-list { display:block; }
.xbat-bat-category .group-header .group-title { font-size:30px; line-height:1.1; }
.xbat-bat-category .group-header h2.main_title { line-height:1.1; }
.xbat-bat-category .all-bats .item { width:100%; }
.xbat-bat-category .all-bats .box-options select { max-width:100%; }
@media(min-width:768px) and (max-width:991px) {
  .xbat-bat-category > .container,.xbat-bat-category-banner > .container { max-width:750px; }
}
@media(min-width:992px) and (max-width:1199px) {
  .xbat-bat-category > .container,.xbat-bat-category-banner > .container { max-width:970px; }
}
@media(min-width:1200px) {
  .xbat-bat-category > .container,.xbat-bat-category-banner > .container { max-width:1170px; }
}

@media(min-width:768px) {
  /* Flex items do not collapse adjoining margins like the live block layout. */
  .choose-background-wrapper section > h3.text-center { margin-top:0; }
}
.xbat-bat-category .bats-group { display:flow-root; }

.xbat-bat-category { padding:45px 0 74px; }
.xbat-bat-category.content_products_soft_base { padding-top:16px; }
.xbat-bat-category .product-list > .item { padding-inline:15px; }
.xbat-bat-category .two-column-bats-list { padding:0; }
.xbat-bat-category .two-column-bats-list .product-list { display:flow-root; }
@media(min-width:768px) {
  .xbat-bat-category .two-column-bats-list .product-list > .item { width:50%; float:left; padding-inline:25px; }
}

/* Restore the existing live tile styles omitted from the draft CSS imports. */
.xbat-bat-category .left-menu-intop .cat-desc { padding:15px; margin-bottom:20px; }
.cat-img-wrapp {
  text-align: center;
  position: relative;
}

.cat-img {
  text-shadow: 0 1px 0 #292727;
  border-color: #7e7e7e;
  color: #fff;
  font-weight: 600;
  border-radius: 6px;
  margin: 0 auto;
}

.cat-img-wrapp span {
  position: absolute;
  top: 3%;
  left: 14%;
  padding-right: 33%;
  font-size: 40px;
  color: #fff;
  text-align: left;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

.cat-img-wrapp span.title {
  top: 30px;
  left: 40px;
  line-height: 1.1;
  padding-right: 20%;
}

@media (max-width: 768px) {
  .cat-img-wrapp span.title {
    top: 10px;
    text-align: center;
    padding-right: 0;
    width: 100%;
    font-size: 25px;
    left: 0;
  }

  .left-menu-intop .cat-desc {
    padding: 0;
    margin-bottom: 24px;
  }

  .cat-img-wrapp {
    padding: 0;
    margin: 5px 20px;
    height: 47px;
    overflow: hidden;
    border-radius: 6px;
    width: 95%;
  }

  .intop_baseball-new .row:nth-child(2) {
    margin-bottom: -28px;
  }

  .cat-img {
    width: 100%;
  }
}

@media (min-width: 769px) and (max-width: 991px) {
  .cat-img-wrapp span.title {
    top: 17px;
    font-size: 30px;
  }
}

.cat-img-wrapp.col-sm-3 span {
  font-size: 33px;
  line-height: 127%;
}

@media (max-width: 767px) {
  .cat-img-wrapp.col-sm-3 span {
    top: 10px;
    text-align: center;
    padding-right: 0;
    width: 100%;
    font-size: 25px;
    left: 0;
  }

  .cat-img-wrapp.col-sm-3 img {
    /*max-height: 278%;*/
    max-width: 100%;
    margin-top: -106px;
  }
}


.cat-img { display:block; }

/* Product detail and catalog controls retain the live layout with Bootstrap 5 fields. */
.xbat-product-detail .configurator-title { margin:20px 0 7px; line-height:1.1; }
.xbat-product-detail .configurator-choises > li h2.clearfix { min-height:30.4px; }
.xbat-product-detail .configurator-choises > li.open-choise h2.clearfix { min-height:42.2px; }
.xbat-product-detail .form-list fieldset { display:flex; flex-wrap:wrap; align-items:center; }
.xbat-product-detail .form-list fieldset::after { display:none; }
.xbat-product-detail .form-list fieldset > [class*="col-"] { min-width:0; }
.xbat-product-detail .left-menu-cart { min-width:0; align-self:flex-start; }
.xbat-product-detail #open-close-menu { margin:20px 0 10px; line-height:40px; }
.xbat-product-detail #open-close-menu .fa-cart-shopping { font-size:18px; }
.xbat-product-detail #open-close-menu small { position:relative; width:18px; height:22px; }
.xbat-product-detail #open-close-menu small > span { position:absolute; inset:0; }
.xbat-product-detail .summary .btn-submit { background:#398db8; border-color:#398db8; }
.xbat-product-detail .embed-responsive { position:relative; width:100%; aspect-ratio:4 / 3; }
.xbat-product-detail .embed-responsive iframe { display:block; width:100%; height:100%; position:absolute; inset:0; }
.xbat-product-detail .prod_pic img.img-fluid { display:block; margin-inline:auto; }
.xbat-bat-category .xbat-product-controls { align-items:center; }
.xbat-bat-category .xbat-product-controls > .desc { margin-top:15px; }
.xbat-bat-category .xbat-product-actions { align-items:flex-start!important; }
.xbat-bat-category .xbat-product-actions .box-options > div { display:flex; align-items:center; justify-content:flex-end; gap:8px; margin-bottom:8px; }
.xbat-bat-category .xbat-product-actions .box-options strong { flex:0 1 auto; }
.xbat-bat-category .xbat-product-actions .box-options .form-select { width:auto; min-width:80px; max-width:100%; margin:0; flex:0 1 auto; }
.xbat-bat-category .xbat-product-actions .box-options .form-control { width:90px; max-width:100%; margin:0; }
.xbat-bat-category .xbat-product-controls form .price.center { text-align:center!important; }
@media(max-width:767px) {
  .xbat-product-detail .left-menu-cart { width:100%; }
  .xbat-product-detail .form-list fieldset { row-gap:8px; }
  .xbat-bat-category .xbat-product-actions > .col-6 { width:100%; text-align:center!important; }
  .xbat-bat-category .xbat-product-actions .box-options > div { justify-content:center; flex-wrap:wrap; }
  .xbat-bat-category .xbat-product-actions .box-options .form-select { max-width:min(100%,300px); }
  .xbat-bat-category .xbat-product-controls .price,
  .xbat-bat-category .xbat-product-controls .add-to-btn { text-align:center!important; }
}

.xbat-bat-category .xbat-product-actions .box-options .xbat-stock-warranty { flex-wrap:wrap; gap:5px; }
.xbat-bat-category .xbat-stock-warranty label { font-weight:400; margin:0; }
.xbat-bat-category .xbat-stock-warranty input[type="checkbox"] { margin:0; flex-shrink:0; }

/* Standard stock-bat detail pages share the same live 1170px content width. */
.xbat-product-detail { line-height:1.5; }
.xbat-product-detail > .container,
.xbat-product-detail .row { --bs-gutter-x:30px; }
.xbat-product-detail #need-assistance { text-align:center; padding:15px; background:#dff0d8!important; }
.xbat-product-detail #need-assistance h3 { margin:20px 0 10px; font-size:18px; line-height:1.1; }
.xbat-product-detail .white-background { background:#fff; margin-top:17px; padding:1px 15px 19px; }
.xbat-product-detail .smaller-title { font-size:30px; line-height:1.1; margin:13px 0 10px; }
.xbat-product-detail .white-background .prod_pic { margin-top:15px; }
.xbat-product-detail .white-background .prod_pic { text-align:left!important; }
.xbat-product-detail .prod-info { margin-top:25px; line-height:21px; }
.xbat-product-detail .prod-info iframe { max-width:100%; }
.xbat-product-detail .prod-info-list { background:#eee; border-radius:6px; padding:5px 12px; line-height:30px; margin:30px 0 10px; }
.xbat-product-detail .prod-info-list .form-select { display:inline-block; width:auto; max-width:100%; }
.xbat-product-detail .carousel-indicators { bottom:-10px; gap:3px; margin-bottom:0; }
.xbat-product-detail .carousel-indicators [data-bs-target] { box-sizing:border-box; width:18px; height:18px; border:1px solid #555; border-radius:50%; background:#555; opacity:1; margin:0; padding:0; }
.xbat-product-detail .carousel-indicators .active { background:#fff; }
@media(min-width:768px) and (max-width:991px) { .xbat-product-detail > .container { max-width:750px; } }
@media(min-width:992px) and (max-width:1199px) { .xbat-product-detail > .container { max-width:970px; } }
@media(min-width:1200px) { .xbat-product-detail > .container { max-width:1170px; } }

.xbat-product-detail .prod-info-list > li > div:has(> input[type="checkbox"]) > strong { display:none; }
.xbat-product-detail .prod-info-list input[type="checkbox"] + label { margin-left:6px; font-weight:400; }

/* Center expanded bat cards like the draft, keeping the existing flag filters. */
.xbat-bat-category .bats-list .group-title,
.xbat-bat-category .bats-list .item h2,
.xbat-bat-category .bats-list .item .desc { text-align:center; }
.xbat-bat-category .bats-list .xbat-group-controls { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px 16px; }
.xbat-bat-category .bats-list .xbat-group-controls > .col-md-6 { width:auto; padding:0; text-align:center!important; }
.xbat-bat-category .bats-list .xbat-group-controls > .desc { width:100%; }
.xbat-category-photos { gap:2px; padding:0; }
.xbat-category-photos > li { flex:0 1 auto; min-width:0; }
.xbat-category-photos img { display:block; max-width:100%; height:auto; }

/* Keep all eight youth type filters on one desktop row, as on the draft. */
@media(min-width:992px) {
  .check-list_tabs.has-8-buttons > ul { grid-template-columns:repeat(8,minmax(0,1fr)); gap:6px; }
  .check-list_tabs.has-8-buttons .btn { padding-inline:4px; gap:4px; font-size:14px; }
}

/* Complete the category card conversion without altering model/option data. */
.xbat-bat-category .btn-sm { --bs-btn-font-size:14px; }
.xbat-bat-category .product-list .xbat-product-controls > .desc { margin-top:8px; }
.xbat-bat-category .product-list .xbat-product-controls:has(> .add-to-btn) { justify-content:center; gap:8px 16px; }
.xbat-bat-category .product-list .xbat-product-controls:has(> .add-to-btn) > .col-md-6 { width:auto; padding-inline:0; text-align:center!important; }
.xbat-bat-category .two-column-bats-list .product-list { display:grid; grid-template-columns:minmax(0,1fr); gap:25px 30px; margin:0; }
.xbat-bat-category .two-column-bats-list .product-list > .item { display:flex; float:none; width:auto; padding:0; margin:0; min-width:0; }
.xbat-bat-category .two-column-bats-list .white-back { flex:1; min-width:0; height:auto!important; }
.xbat-bat-category-intro { --bs-gutter-x:30px; }
.xbat-bat-category-intro .row { --bs-gutter-x:30px; }
.xbat-bat-category-intro .text-with-figure .row { align-items:center; }
.xbat-bat-category-intro .text-with-figure h2 { font-size:24px; line-height:1.2; margin:0 0 15px; }
.xbat-bat-category-intro .text-with-figure img { display:block; width:100%; height:auto; }
@media(min-width:768px) {
  .xbat-bat-category .two-column-bats-list .product-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(min-width:768px) and (max-width:991px) { .xbat-bat-category-intro { max-width:750px; } }
@media(min-width:992px) and (max-width:1199px) { .xbat-bat-category-intro { max-width:970px; } }
@media(min-width:1200px) { .xbat-bat-category-intro { max-width:1170px; } }

/* Seven- and eight-type categories stay on one row throughout desktop widths. */
.xbat-bat-category .check-list_tabs .btn { font-size:14px; }
.xbat-bat-category .check-list_tabs input[type="checkbox"] { flex-shrink:0; }
@media(min-width:992px) {
  .check-list_tabs.has-7-buttons > ul { grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; }
  .check-list_tabs.has-7-buttons .btn { padding-inline:4px; gap:4px; }
}

/* Keep fixed-width video embeds inside the standard product column. */
.xbat-product-detail .xbat-product-video iframe { width:100%; height:100%; }
.xbat-product-detail .form-list input[type="file"].form-control { width:100%; }

/* Product preview: keep "Write Review" left-aligned as on live (the parent column centers text). */
.pk_preview_knob .pk_nav { text-align:left; }
