/*! Volt theme for OpenCart 4 (Bootstrap 5.3): framework layer. Restyles the core markup of the pages Volt
 * keeps (cart, checkout, account, information, search, specials, compare, wishlist) with the preset tokens of
 * volt.css: square fields, hairlines, tracked capitals on buttons. */
.vo{--bs-body-bg:var(--vo-bg);--bs-body-color:var(--vo-text);--bs-emphasis-color:var(--vo-ink);--bs-border-color:var(--vo-line);--bs-link-color:var(--vo-ink);--bs-link-color-rgb:43,36,32;--bs-link-hover-color:var(--vo-accentText);--bs-border-radius:var(--vo-rb);--bs-border-radius-sm:var(--vo-rb);--bs-border-radius-lg:var(--vo-r);--bs-font-sans-serif:Inter,"Helvetica Neue",Arial,sans-serif;--bs-body-font-family:Inter,"Helvetica Neue",Arial,sans-serif;--bs-secondary-color:var(--vo-muted);--bs-tertiary-bg:var(--vo-alt);--bs-heading-color:var(--vo-ink)}
.vo .container{max-width:1360px;padding-left:40px;padding-right:40px}
.vo main>.container,.vo main>div>.container{padding-top:8px;padding-bottom:56px}
.vo main h1{margin:22px 0 26px;font-size:clamp(40px,4.6vw,68px)}
.vo main h2{font-size:22px}
.vo main h3,.vo main h4{font-size:17px}
.vo main legend{float:none;width:100%;margin-bottom:18px;padding-bottom:10px;border-bottom:1px solid var(--vo-line);font:600 13.5px/1.2 Inter,sans-serif;color:var(--vo-muted)}
.vo a{text-underline-offset:3px}
.vo #content :is(p,td,li,label,.form-text,.help-block)>a:not(.btn):not(.vo-btn):not(.vo-more):not(.vo-sub):not(.vo-chip):not(.vo-card__qv){text-decoration:underline;text-decoration-color:var(--vo-line)}
.vo #content .vo-card a,.vo #content .vo-pp a,.vo #content .vo-cath a,.vo #content .vo-grid a,.vo #content .vo-bar a,.vo #content .pagination a{text-decoration:none!important}

/* breadcrumbs: slash trail */
.vo .breadcrumb{display:flex;flex-wrap:wrap;margin:0 0 4px;padding:22px 0 0;border:0;background:none;font:500 13px Inter,sans-serif;color:var(--vo-muted)}
.vo .breadcrumb a{color:var(--vo-muted);text-decoration:none}
.vo .breadcrumb a:hover{color:var(--vo-ink)}
.vo .breadcrumb i{font-size:12px}
.vo .breadcrumb-item+.breadcrumb-item:before{content:"/";padding:0 10px;color:var(--vo-muted);opacity:.5}
.vo .breadcrumb>li{padding:0;text-shadow:none}
.vo .breadcrumb>li:after{display:none}

/* buttons */
.vo .btn{--bs-btn-font-family:Inter,sans-serif;--bs-btn-font-weight:600;--bs-btn-font-size:15px;--bs-btn-border-radius:var(--vo-rb);--bs-btn-padding-x:22px;--bs-btn-padding-y:12px;}
.vo .btn-lg{--bs-btn-padding-y:15px;--bs-btn-padding-x:30px;--bs-btn-font-size:13px}
.vo .btn-sm{--bs-btn-padding-y:7px;--bs-btn-padding-x:12px;--bs-btn-font-size:11px}
.vo .btn-primary,.vo .btn-dark,.vo .btn-info{--bs-btn-bg:var(--vo-btn);--bs-btn-border-color:var(--vo-btn);--bs-btn-color:var(--vo-btnText);--bs-btn-hover-bg:var(--vo-btnHover);--bs-btn-hover-border-color:var(--vo-btnHover);--bs-btn-hover-color:var(--vo-btnText);--bs-btn-active-bg:var(--vo-btnHover);--bs-btn-active-border-color:var(--vo-btnHover);--bs-btn-active-color:var(--vo-btnText);--bs-btn-disabled-bg:var(--vo-btn);--bs-btn-disabled-border-color:var(--vo-btn);--bs-btn-disabled-color:var(--vo-btnText)}
[data-vo-dark] .btn-primary{--bs-btn-hover-color:#15100d;--bs-btn-active-color:#15100d}
.vo .btn-light,.vo .btn-secondary,.vo .btn-outline-secondary,.vo .btn-outline-primary,.vo .btn-default{--bs-btn-bg:transparent;--bs-btn-border-color:var(--vo-ink);--bs-btn-color:var(--vo-ink);--bs-btn-hover-bg:var(--vo-ink);--bs-btn-hover-border-color:var(--vo-ink);--bs-btn-hover-color:var(--vo-bg);--bs-btn-active-bg:var(--vo-ink);--bs-btn-active-color:var(--vo-bg);--bs-btn-active-border-color:var(--vo-ink)}
.vo .btn-danger{--bs-btn-bg:var(--vo-sale);--bs-btn-border-color:var(--vo-sale);--bs-btn-color:#fff;--bs-btn-hover-bg:var(--vo-ink);--bs-btn-hover-border-color:var(--vo-ink);--bs-btn-hover-color:var(--vo-bg)}
.vo .btn-link{--bs-btn-color:var(--vo-ink);--bs-btn-hover-color:var(--vo-accentText);text-transform:none;letter-spacing:0}
.vo a.btn{color:var(--bs-btn-color);text-decoration:none!important}
.vo a.btn:hover{color:var(--bs-btn-hover-color)}

/* forms: square 50 px fields on the surface, ink focus */
.vo .form-control,.vo .form-select{min-height:50px;border:1px solid var(--vo-line);border-radius:var(--vo-rf);background-color:var(--vo-surface);font:500 15px Inter,sans-serif;color:var(--vo-ink);box-shadow:none}
.vo textarea.form-control{min-height:120px}
.vo .form-select-sm,.vo .form-control-sm{min-height:40px;font-size:14px}
.vo .form-control:focus,.vo .form-select:focus{border-color:var(--vo-ink);box-shadow:inset 0 0 0 1px var(--vo-ink);background-color:var(--vo-surface);color:var(--vo-ink)}
.vo .form-control::placeholder{color:var(--vo-muted);opacity:.8}
.vo .form-control.is-invalid,.vo .form-select.is-invalid{border-color:var(--vo-sale);box-shadow:inset 0 0 0 1px var(--vo-sale);background-image:none}
.vo .form-label,.vo .col-form-label{font:600 13.5px/1.3 Inter,sans-serif;color:var(--vo-muted)}
.vo .col-form-label{padding-top:16px}
.vo .form-check-input{width:1.15em;height:1.15em;border-color:var(--vo-muted);border-radius:var(--vo-rf);background-color:var(--vo-surface)}
.vo .form-check-input[type=radio]{border-radius:50%}
.vo .form-check-input:checked{background-color:var(--vo-ink);border-color:var(--vo-ink)}
[data-vo-dark] .form-check-input:checked{--bs-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%2315100d' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}
.vo .form-check-input:focus{box-shadow:0 0 0 3px var(--vo-accentSoft);border-color:var(--vo-ink)}
.vo .form-switch .form-check-input{border-radius:2em}
.vo .input-group-text{border:1px solid var(--vo-line);border-radius:var(--vo-rf);background:var(--vo-alt);color:var(--vo-muted);font:700 12px Inter,sans-serif}
.vo .invalid-feedback,.vo .text-danger{color:var(--vo-sale)!important;font-weight:600}
.vo .required .col-form-label:before,.vo .required .form-label:before{color:var(--vo-sale)}
.vo .form-text{color:var(--vo-muted)}

/* surfaces */
.vo .card{border:1px solid var(--vo-line);border-radius:var(--vo-rf);background:var(--vo-surface);color:var(--vo-text)}
.vo .card-header{border-bottom:1px solid var(--vo-line);border-radius:var(--vo-rf)!important;background:transparent;font:600 13.5px/1.3 Inter,sans-serif;color:var(--vo-ink)}
.vo .card-body{padding:24px}
.vo .list-group{--bs-list-group-border-color:var(--vo-line);--bs-list-group-bg:transparent;--bs-list-group-color:var(--vo-muted);--bs-list-group-action-hover-bg:transparent;--bs-list-group-action-hover-color:var(--vo-ink);--bs-list-group-active-bg:transparent;--bs-list-group-active-color:var(--vo-ink);--bs-list-group-active-border-color:var(--vo-line);--bs-list-group-border-radius:var(--vo-rf)}
.vo .list-group-item{padding:11px 0;border-width:0 0 1px;font:600 14px Inter,sans-serif}
.vo .list-group-item.active{box-shadow:inset 3px 0 0 var(--vo-accent);padding-left:14px}
.vo .table{--bs-table-bg:transparent;--bs-table-color:var(--vo-text);--bs-table-border-color:var(--vo-line);--bs-table-striped-bg:var(--vo-alt);--bs-table-hover-bg:var(--vo-alt);--bs-table-striped-color:var(--vo-text);--bs-table-hover-color:var(--vo-text);font-size:14px}
.vo .table>:not(caption)>*>*{padding:14px 12px;vertical-align:middle;background-color:transparent;color:var(--vo-text)}
.vo .table thead td,.vo .table thead th{padding-top:10px;padding-bottom:10px;border-bottom:1px solid var(--vo-ink);font:600 13.5px/1.2 Inter,sans-serif;color:var(--vo-muted)}
.vo .table-bordered>:not(caption)>*>*{border-width:0 0 1px}
.vo .table-bordered{border:0}
.vo .img-thumbnail{border:0;border-radius:var(--vo-rf);background:var(--vo-well1);padding:0}
.vo .alert{border:0;border-left:3px solid var(--vo-accent);border-radius:var(--vo-rf);background:var(--vo-surface);color:var(--vo-ink);font-weight:600;font-size:14px;box-shadow:var(--vo-shadow)}
.vo .alert-success{border-left-color:#3d7a4b}
.vo .alert-danger{border-left-color:var(--vo-sale);color:var(--vo-ink)}
.vo .alert a{color:inherit;font-weight:800;text-decoration:underline}
.vo .alert .btn-close{filter:none;opacity:.6}
[data-vo-dark] .btn-close{filter:invert(1)}
.vo .nav-tabs{gap:24px;margin-bottom:22px;border-bottom:1px solid var(--vo-line)}
.vo .nav-tabs .nav-link{margin:0;padding:12px 0;border:0;border-radius:var(--vo-rf);background:transparent;font:700 12px/1 Inter,sans-serif;color:var(--vo-muted)}
.vo .nav-tabs .nav-link.active{color:var(--vo-ink);box-shadow:inset 0 -2px 0 var(--vo-accent)}
.vo .pagination{--bs-pagination-color:var(--vo-ink);--bs-pagination-bg:transparent;--bs-pagination-border-color:var(--vo-line);--bs-pagination-hover-bg:var(--vo-alt);--bs-pagination-hover-color:var(--vo-ink);--bs-pagination-hover-border-color:var(--vo-ink);--bs-pagination-active-bg:var(--vo-ink);--bs-pagination-active-border-color:var(--vo-ink);--bs-pagination-active-color:var(--vo-bg);--bs-pagination-focus-box-shadow:none;--bs-pagination-border-radius:var(--vo-rf);gap:6px;margin:0}
.vo .pagination .page-link{min-width:42px;height:42px;display:grid;place-items:center;border-radius:var(--vo-rf)!important;font-weight:700;margin:0!important}
.vo .dropdown-menu{--bs-dropdown-bg:var(--vo-surface);--bs-dropdown-color:var(--vo-ink);--bs-dropdown-border-color:var(--vo-line);--bs-dropdown-link-color:var(--vo-ink);--bs-dropdown-link-hover-bg:var(--vo-alt);--bs-dropdown-link-hover-color:var(--vo-ink);--bs-dropdown-link-active-bg:var(--vo-ink);--bs-dropdown-link-active-color:var(--vo-bg);--bs-dropdown-border-radius:var(--vo-rf);--bs-dropdown-divider-bg:var(--vo-line);font:600 14px Inter,sans-serif;padding:8px;box-shadow:var(--vo-shadow)}
.vo .dropdown-item{padding:9px 12px}
.vo .modal-content{border:0;border-radius:var(--vo-rf);background:var(--vo-surface);color:var(--vo-text)}
.vo hr{border-color:var(--vo-line);opacity:1}
.vo .badge.bg-primary,.vo .bg-primary{background-color:var(--vo-ink)!important;color:var(--vo-bg)!important}
.vo .text-muted{color:var(--vo-muted)!important}
.vo .tooltip{--bs-tooltip-bg:var(--vo-ink);--bs-tooltip-color:var(--vo-bg)}
.vo #cookie{border-radius:var(--vo-rf);background:var(--vo-ink)!important;color:var(--vo-bg)}
.vo #cookie .btn{--bs-btn-border-color:var(--vo-bg);--bs-btn-color:var(--vo-bg)}

/* core lists (search, specials, brands, related) use product/thumb: lay the core grid out like Volt's */
.vo #product-list.row:not(.product-list){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:44px 24px;margin:0}
.vo #product-list.row:not(.product-list)>*{width:auto;max-width:none;padding:0;margin:0}
@media (max-width:1199px){.vo #product-list.row:not(.product-list){grid-template-columns:repeat(3,minmax(0,1fr))}}
.vo #product-list.row>.col{margin-bottom:0!important}
.vo #product-list .product-thumb{height:100%}
.vo #product-search .row>.col-lg-3>.mb-3,.vo #product-special .row>.col-lg-3>.mb-3{margin:0}
.vo #product-search #input-search{min-height:50px}
.vo .vo-related #product-list.row,.vo .vo-related .row{--bs-gutter-x:24px;row-gap:40px}

/* cart, checkout, account, information */
.vo #checkout-cart .table img,.vo #shopping-cart img{width:72px;height:96px;object-fit:cover;background:var(--vo-well1)}
.vo #checkout-cart .table td,.vo #shopping-cart td{font-weight:600;color:var(--vo-ink)}
.vo #checkout-cart .input-group{flex-wrap:nowrap;max-width:200px}
.vo #checkout-cart .input-group .form-control{max-width:64px;min-height:44px;text-align:center}
.vo #checkout-cart .input-group .btn{min-height:44px}
.vo #checkout-cart #checkout-total,.vo #checkout-cart .table-bordered:last-of-type{font-size:15px}
.vo #checkout-cart .accordion{--bs-accordion-bg:transparent;--bs-accordion-border-color:var(--vo-line);--bs-accordion-border-radius:var(--vo-rf);--bs-accordion-inner-border-radius:var(--vo-rf);--bs-accordion-btn-color:var(--vo-ink);--bs-accordion-active-bg:var(--vo-alt);--bs-accordion-active-color:var(--vo-ink);--bs-accordion-btn-focus-box-shadow:none}
.vo #checkout-cart .accordion-button{font:600 13.5px/1.2 Inter,sans-serif;}
.vo #checkout-checkout .card,.vo #checkout-checkout fieldset{margin-bottom:22px}
.vo #checkout-checkout #checkout-confirm .table,.vo #checkout-confirm .table{font-size:14px}
.vo #checkout-confirm .table tfoot td{border-bottom:0;font-weight:700;color:var(--vo-ink)}
.vo #checkout-confirm .table tfoot tr:last-child td{padding-top:16px;font:600 20px Sora,serif}
.vo #checkout-checkout #button-confirm,.vo #button-confirm{min-height:52px;width:100%}
.vo #account-login .col-md-6>.border,.vo #account-login .border.rounded,.vo #account-login .card{border:1px solid var(--vo-line)!important;border-radius:var(--vo-rf)!important;background:var(--vo-surface);padding:32px!important}
.vo #account-login h2,.vo #content>.row>.col-md-6>h2{margin-bottom:12px;font:var(--vo-weight) 32px/1.1 Sora,serif;color:var(--vo-ink)}
.vo #account-account #content h2{margin:28px 0 12px;font:600 13.5px/1.2 Inter,sans-serif;color:var(--vo-muted)}
.vo #account-account #content .list-unstyled,.vo #account-account #content ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 24px;padding:0;list-style:none}
.vo #account-account #content li a{display:block;padding:12px 0;border-bottom:1px solid var(--vo-line);font-weight:600;text-decoration:none!important}
.vo #account-account #content li a:hover{color:var(--vo-accentText)}
.vo #column-left .list-group,.vo #column-right .list-group{margin-bottom:22px;border-top:1px solid var(--vo-line)}
.vo #column-left .card,.vo #column-right .card{border:0;background:transparent}
.vo #column-left .card-header,.vo #column-right .card-header{padding:0 0 10px;border-bottom:1px solid var(--vo-line)}
.vo #column-left .card-body,.vo #column-right .card-body{padding:14px 0}
.vo #information-information #content,.vo #information-contact #content{max-width:860px}
.vo #information-information #content p,.vo #information-information #content li{font-size:16px;line-height:1.75}
.vo #error-not-found #content h1:after{content:"";display:block}
.vo .product-thumb{border:0;margin-bottom:0}
.vo #content:empty{min-height:0}
.vo #content-main{padding-bottom:0}
.vo footer.vo-ft{position:static;bottom:auto;margin:0;border:0}

@media (max-width:1199px){.vo .container{padding-left:32px;padding-right:32px}}
@media (max-width:767px){
  .vo .container{padding-left:20px;padding-right:20px}
  .vo main h1{font-size:40px}
  .vo .table>:not(caption)>*>*{padding:10px 8px}
  .vo #product-list.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 12px;margin:0}
  .vo #product-list.row>*{width:auto;max-width:none;padding:0;margin:0}
  .vo #checkout-cart .table img{width:56px;height:75px}
  .vo #checkout-cart .table-responsive{border:0}
}
/* core sticky-footer padding off (#content padding-bottom 400/730 px in the core stylesheet) */
.vo #content,.vo #column-left,.vo #column-right{padding-bottom:56px}
.vo .vo-catmain#content,.vo #common-home #content{padding-bottom:0}
.vo .form-switch .form-check-input{width:2.2em;height:1.2em;border-radius:2em;background-color:var(--vo-alt);border-color:var(--vo-line)}
.vo .form-switch .form-check-input:checked{background-color:var(--vo-ink);border-color:var(--vo-ink)}
#checkout-cart>h1,#checkout-cart h1{margin:10px 0 22px}
#checkout-cart .table-responsive{margin-bottom:8px}
#checkout-cart #content>h2{margin-top:32px;margin-bottom:6px}
