/* ============== Hidden ==============*/

#InfoTab.tabbable.mb-4{
    display:none;    
}
#bill_address {
    display:none;
}
.billing_address_label.mb-0 {
    display: none;
}
#payment_option .custom-radio .custom-control-label {
    display: none !important;
}
#additionaloptionid {
    display:none;
}
.additionaloptions ul li, .short-disc ul li:not(:first-child) {
    display: none;
}
#country.selectpicker form-control input-valid {
    display:none;
}
#toggle.moreless-button {
    display:none;
}
.text-secondary {
    display:none;
}
.billing_address_label.border-bottom.pb-2 {
    display: none;
}
.cicon.cicon-quotes {
    display: none;
}
#paymenttitle30 {
  display: none !important;
}
#paymenttitle29 {
  display: none !important;
}
.fa-shopping-cart::before {
  /*display: none;*/
}
/*#handlingCostSummery {*/
/*    display:none;*/
/*}*/
/*.shipprice {*/
/*    display:none;*/
/*}*/
.custom_acc_menu{
/*display: none !important;*/   
}
.prduct_option {
/* display: none;*/
}
/* ============== Base ============== */
body{
  color:#141928;
  background-color:#ffffff;
  font-family:Arial, Helvetica, sans-serif !important;
}
body input, body button, body select, body optgroup, body textarea{
  font-family:Arial, Helvetica, sans-serif !important;
}
a{
  color:#ffffff;
  text-decoration:none;
  background-color:rgba(0,0,0,0);
}
a:hover{ color:#ff0037; }
a:visited{
  color:#FFFFFF;
  text-decoration-color:hotpink;
}
p{ margin-top:0; margin-bottom:.2rem; }
ol, ul, dl{ margin-top:0; margin-bottom:1rem; line-height:120%; }
label, .label{
  display:inline-block;
  margin-bottom:.5rem;
  font-size:.65rem;
}

a[href*="terms_of_use"] {
  color: #000000;
  text-decoration: none; /* optional */
}

a[href*="terms_of_use"]:hover {
  color: #ff0000;
}

/* ============== Layout / Containers ============== */
.container{ max-width:80%; }
.home_page_body .body-container{
  width:60%;
  max-width:100%;
  margin-top:0;
  margin-bottom:0;
}
.mt-4{ margin-top:0px; }
.col-xl-12{ max-width:95%; }

.col-lg-8{
  -ms-flex:0 0 66.666667%;
  flex:0 0 55%;
  max-width:55%;
}
.col-lg-4{
  -ms-flex:0 0 33.333333%;
  flex:0 0 40%;
  max-width:40%;
}

.loginwrapper{
  width:50%;
  margin-left:auto;
  margin-right:auto;
}

/* Middle Content Container */

.row.align-items-center{
  position: relative;
  padding: 40px;
}

.row.align-items-center::before{
  content: "";
  position: absolute;
  inset: 0;
 
  border-radius: 20px;
  box-shadow: 0 10px 24px rgba(0,0,0,0.00);
  z-index: -1;
}


/* Apply ONLY to <nav class="container body-container mt-4"> */
body.row-offcanvas-left{ background-color:#FFFFFF !important; }

nav.container.body-container.mt-4{
  background-color:#FFFFFF !important;
  padding:20px;
  border-radius:60px; /* optional */
}

/* ============== Navbar ============== */
/* Navbar background */
.navbar{
    z-index: 800;
    background-color: #e90038;
}

/* Nav links */
.navbar .navbar-nav .nav-item .nav-link{
  color:#FFFFFF;
  margin: 8px 32px;
  font-size: 20px;
  transition: background-color .2s ease, color .2s ease;
}

/* Hover / active states */
.navbar .navbar-nav .nav-item.active .nav-link,
.navbar .navbar-nav .nav-item.show .nav-link,
.navbar .navbar-nav .nav-item:hover .nav-link{
  background-color:#e90038;
  color:#FFFFFF;
}

/* Dropdown menu stays white */
.navbar .navbar-nav .nav-item .dropdown-menu{
  background:#ffffff;
}
.navbar .navbar-nav .nav-item.show > a{
  background:#ffffff;
  color:#FFFFFF;
}

.navbar .navbar-nav .nav-item .dropdown-menu{
  background:#ffffff;
  border:1px solid #000000;
  box-shadow:0 8px 24px rgba(0,0,0,0.22);
  z-index:9999;
  position:absolute;
 
}

.navbar .navbar-nav .nav-item .dropdown-menu li > .dropdown-item{
  background:#ffffff;
  border-color:#ffffff;
  color:#000000 !important;
}

.navbar .navbar-nav .nav-item .dropdown-menu li:hover > .dropdown-item{
  background:#ffffff;
  border-color:#ffffff;
  color:#e90038 !important;
}

.navbar-text{
  font-size:24px;
  color:#FFFFFF;
}

/* Base tab styling */
.nav-tabs .nav-link {
  color: #000000;               /* visible text */
  background-color: #f1f1f1;    /* light gray background */
  border: 1px solid #dee2e6;
  margin-right: 4px;
}

/* Hover state */
.nav-tabs .nav-link:hover {
  color: #000000;
  background-color: #e2e2e2;
  border-color: #ced4da;
}

/* Active tab */
.nav-tabs .nav-link.active {
  color: #000000;
  background-color: #ffffff;   /* white active tab */
  border-bottom-color: #ffffff; /* blends into content */
  font-weight: 600;
}
/* ============== Header / Page Title ============== */
.page-header{
  color:#FFF;
  background-color:#000;
}
.page-header h1{
  margin:0;
  padding-left:20px;
  padding-bottom:.5rem;
  padding-top:.625rem;
}
.page-header h1 small{ color:#000000 !important; }

/* ============== Text Helpers ============== */
.text-info{
  color:#141928 !important;
  font-size:16px;
}
.text-primary{ color:#141928 !important; }
.text-danger{ color:Orange !important; }

/* ============== Buttons ============== */
.btn:not(:disabled):not(.disabled){
  cursor:pointer;
  border-radius:10px;
}
.btn-sm, .btn-group-sm > .btn{
  padding:.25rem 1rem;
  font-size:.875rem;
  line-height:1.5;
  border-radius:.2rem;
  text-align:left;
}

.btn-primary,
a.btn-primary.btn.btn-sm{
  background:#ff0037;
  border-color:#ff0037;
  color:#ffffff;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active:focus{
  background:#ff0037;
  border-color:#ff0037;
  color:#000000;
}
a.btn-primary.btn.btn-sm:hover{ color:#000000; }

.btn-info{
  background:#ff0037;
  border-color:#ff0037;
  color:#fff;
}

.btn-success,
.btn-success.disabled{
  background:#ff0037;
  border-color:#ff0037;
  color:#000000;
}
.btn-success:hover,
.btn-success:focus,
.btn-success:not(:disabled):not(.disabled):active,
.btn-success:not(:disabled):not(.disabled).active,
.btn-success:not(:disabled):not(.disabled):active:focus{
  background:#ffffff;
  border-color:#ff0037;
  color:#ff0037;
}

.btn.btn-outline-secondary.btn-sm.mr-2{
  background-color:#ff0037;
  color:#ffffff;
  font-weight:bolder;
}

/* ============== Checkout / Shipping Buttons ============== */
#order_continue:hover{
  background:#ff0037;
  border-color:#ff0037;
  color:#000000;
}
#calculate_shipping{
  width:200px;
  padding:.375rem .75rem;
  font-size:1rem;
  text-align:center;
  background:#ff0037;
}
#calculate_shipping:hover{
  background:#000000;
  color:#ffffff;
}
#shipping_continue:hover{
  background:#ff0037;
  border-color:#ff0037;
  color:#000000;
}
.splitshipmentbtn button#order_continue{ display:contents; }

/* ============== Forms ============== */
.form-control{
  display:block;
  width:100%;
  height:calc(1.5em + 0.75rem + 2px);
  padding:0.375rem 0.75rem;
  font-size:0.875rem;
  font-weight:400;
  line-height:1.5;
  color:#495057;
  background-color:#fff;
  background-clip:padding-box;
  border:1px solid #ced4da;
  border-radius:5px;
  transition:border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.input-group{
  position:relative;
  display:-ms-flexbox;
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  width:100%;
}
.search-toggle{ right:0; width:300px; }
.search-toggle .form-control{ height:44px; }

#Curr_Pass, #Change_Pass, #Conf_Pass{ width:50%; }

#payment_option .custom-radio .custom-control-label{ display:none !important; }
#bill_address{ display:none; }

/* NOTE: This selector was invalid and had no effect in your original CSS:
   #country.selectpicker form-control input-valid { Display:none; }
   Leaving it out preserves current behavior (no change).
*/

/* ============== Cards / Lists ============== */
.card{
    border: 0px solid rgba(0,0,0,.125);
    border-radius: 1rem;
    box-shadow: 0 12px 16px rgba(0,0,0,0.50);
    padding: 40px;
    text-align: center;
}
.card-body{
  min-height:1px;
  padding:10px;
  text-align:left;
  background-color:#ffffff !important;
}

.card-title {
  font-size: 14px; /* adjust as needed */
}
.list-inline-item:not(:last-child){ margin-right:2rem; }

.mb-md-4, .my-md-4{
  margin-bottom:1.5rem !important;
  border-radius:25px;
}
.p-md-4{
  padding:1.5rem !important;
  border-radius:25px;
}

.media-box img{
  max-width:100%;
  padding:10px;
  transform:translate3D(0,0,0);
}

.media-filter li a{
  border:1px solid rgba(0,0,0,.125);
  padding:0.5rem 1rem;
  display:block;
  margin:0 0 0.5rem;
  border-radius:25px;
  cursor:pointer;
}
.media-filter li a.selected{
  background-color:#141928;
  color:#fff;
}
.media-filter li a:hover{
  color:#ff0037 !important;
  background:#141928;
}

/* ============== Product / Images ============== */
#top-banner picture,
#product_images picture,
.kit_product_info picture,
.product-box picture{
  display:block;
  max-height:25%;
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.w-100{ width:100% !important; }

.product-box picture img{
  width:90%;
  object-fit:contain;
  padding-top:20px;
  border-radius:20px;
}
.product-box .thumbnail{
  max-height:250px;
  object-fit:contain;
}
.product-box .text-info{
  color:var(--darker-gray) !important;
  text-align:center;
}

/* Slider tweaks */
.slick-track{
  position:relative;
  top:0;
  left:0;
  display:block;
  margin-left:0px;
}
.slick-next:before{ content:"View More →" !important; }
.slick-prev:before, .slick-next:before{
  font-family:"slick";
  font-size:20px;
  font-weight:900;
  color:#ff0037 !important;
}

/* whats new section slider for home page start */
.newProductSection .slick-slide img{
  max-height:200px;
  max-width:100%;
  object-fit:contain;
}
.newProductSection .slick-slide .card{ min-height:450px; }

.product-box.slick-slide img{
  max-height:300px;
  max-width:100%;
  object-fit:contain;
}
.product-box.slick-slide .card{
  min-height:350px;
  border:0px solid rgba(0,0,0,.125);
  border-radius:.25rem;
}
/* whats new section slider for home page end */

/* ============== Badges / Icons ============== */
.badge-primary{
  background:#ffffff;
  border:.5px solid #000000;
  color:#ff0037;
}
.fal{
  font-family:"Font Awesome 6 Pro";
  font-weight:300;
  color:hsl(225, 33.3%, 11.8%);
}
.fa-lg{
  font-size:1.25em;
  line-height:.05em;
  vertical-align:-0.075em;
  color:#FFFFFF;
}
.fa-download:before{
  content:"Download Your File " !important;
  color:#999999;
  font-weight:900;
}

/* ============== Misc UI ============== */
.carousel-control-prev,
.carousel-control-next{
  position:absolute;
  top:0;
  bottom:0;
  height: auto;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#000;
  text-align:center;
  opacity:.5;
  transition:opacity .15s ease;
}

#top-banner .carousel-item,
#top-banner .banner{
  background-color:#131927;
}

.h1{
  margin-bottom:0;
  padding-bottom:.5rem;
  padding-top:.625rem;
  padding-left:.125rem;
  text-align:center;
}

small, .small{
  font-size:100%;
  font-weight:800;
}

.mb-0, .my-0{
  margin-bottom:0 !important;
  font-size:16px;
  color:#000000;
}

.pb-2, .py-2{
  padding:.5rem !important;
  background-color:#FFFFFF;
  color:#000000; /* keeping as-is, even though it makes text invisible on white */
}

/* Top header only */
.top-header{
  background-color: rgb(20, 25, 40) !important; /* choose any color */
}

.bg-light{
    background-color: #e90038 !important;
}

.border-top{ border-top:0px solid #dee2e6 !important; }

.border-bottom.pb-2.d-flex.align-items-center.justify-content-between{
  background-color:#ff0037;
}

.sticky-top{
  position:relative;
  background-color:#ff0037;
}
#shopping-cart .checkoutRightSide .sticky-top{
  z-index:500 !important;
  border-radius:25px;
}

/* Checkout steps bar */
.steps {
  background-color: #000000;
}

/* Step text + links */
.steps a,
.steps .step_title,
.steps .orderstep {
  color: #ffffff !important;
}

/* Optional: border color for step circles */
.steps .orderstep.border {
  border-color: #ffffff !important;
}

/* Keep active step readable */
.steps .orderstep.bg-primary {
  color: #ffffff !important;
}

/* ============== Toggles / Hidden Blocks ============== */
#InfoTab.tabbable.mb-4{ /*display:none;*/ }

#toggle.moreless-button{ display:none; }
.text-secondary{ display:none; }

.additionaloptions ul li,
.short-disc ul li:not(:first-child){
  display:none;
}

#additionaloptionid{ /*display:none;*/ }
.show_additional_option #additionaloptionid{ display:block; }

.billing_address_label.mb-0{ display:none; }
.billing_address_label.border-bottom.pb-2{ display:none; }

.fa-kit.fa-quotes{ display:none; }

#templates_listing_area .card .card-body{ border:none !important; }
#templates_listing_area .card .card-body h5{ font-size:1rem; }

/* ============== Accounts / Login / Alerts ============== */
#corporate_login{ background-color:#141928; }

.custom_acc_menu{
  /*display:none !important;*/
}

.m-0{
  margin:0 !important;
  background-color:#ffffff !important;
}
.ml-3, .mx-3,
.pl-3, .px-3{
  background-color:#ffffff !important;
}
.justify-content-md-start{
  -ms-flex-pack:start !important;
  justify-content:flex-start !important;
  background-color:#ffffff;
}
.mb-md-3, .my-md-3{
  margin-bottom:1rem !important;
  background-color:#ffffff !important;
}

.alert-danger{
  color:yellow;
  background-color:red;
  border-color:red;
  font-weight:900;
  font-size:large;
}
.error-block span{
  margin:auto;
  max-width:300px;
  border:1px solid red;
  background:#fff;
  font-size:1.5rem;
  padding:0 .5rem;
  font-weight:900;
  z-index:12;
  position:relative;
  display:block;
  color:red;
}

/* ============== Footer ============== */
.footer-content{ background-color:#141928; }
.footerwrap{
  height:120px;
  width:100%;
  padding-bottom:0px;
  text-align:right;
  color:#ffffff;
}
.power{
  font-weight:900;
  color:#FFFFFF;
}

/* ============== Misc Content Rules ============== */
.productspecs{
  font-size:.65em;
  font-weight:900;
}
.studio-type-block .studio-top .product-name-size{ width:190px; }

.order_detail_summary .row:last-of-type{
  border-bottom:0 !important;
  padding-bottom:0 !important;
  background-color:#ffffff;
}

a.text-primary:hover,
a.text-primary:focus{
  background-color:#ffffff;
  color:#ff0037;
}

/* Forgot Password Text */
a.p-0.mt-1.float-right{
 color: #FF0034;
}