/*
 * AL SAHL Store Core — Single Product
 * Migrated from the tested WPCode V3 snippet.
 */

@font-face{
  font-family:"Bahij TheSansArabic";
  src:url("/wp-content/uploads/fonts/Bahij-TheSansArabic-Light.ttf") format("truetype");
  font-weight:300;
  font-style:normal;
  font-display:swap;
}

@font-face{
  font-family:"Bahij TheSansArabic";
  src:url("/wp-content/uploads/fonts/Bahij-TheSansArabic-Plain.ttf") format("truetype");
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

@font-face{
  font-family:"Bahij TheSansArabic";
  src:url("/wp-content/uploads/fonts/Bahij-TheSansArabic-SemiBold.ttf") format("truetype");
  font-weight:600;
  font-style:normal;
  font-display:swap;
}

@font-face{
  font-family:"Bahij TheSansArabic";
  src:url("/wp-content/uploads/fonts/Bahij-TheSansArabic-Bold.ttf") format("truetype");
  font-weight:700;
  font-style:normal;
  font-display:swap;
}

@font-face{
  font-family:"Bahij TheSansArabic";
  src:url("/wp-content/uploads/fonts/Bahij-TheSansArabic-ExtraBold.ttf") format("truetype");
  font-weight:800;
  font-style:normal;
  font-display:swap;
}


/* ROOT */

body.single-product{
  --as-cream:#F4ECD9;
  --as-gold:#E6BC70;
  --as-olive-gold:#928648;
  --as-olive:#585939;
  --as-dark:#33310A;
  --as-card:#F8F2E4;
  --as-card-soft:#EEE4CA;
  --as-muted:#817A61;
  --as-border:rgba(146,134,72,.23);
  --as-container:1260px;

  margin:0!important;

  color:var(--as-dark);
  background:var(--as-cream)!important;

  font-family:
    "Bahij TheSansArabic",
    Tahoma,
    Arial,
    sans-serif!important;
}

body.single-product *,
body.single-product *::before,
body.single-product *::after{
  box-sizing:border-box;
}

body.single-product a{
  text-decoration:none;
}

body.single-product button,
body.single-product input,
body.single-product textarea,
body.single-product select{
  font-family:inherit;
}

body.single-product header.site-header,
body.single-product footer.site-footer,
body.single-product #masthead,
body.single-product #colophon,
body.single-product #site-header,
body.single-product #site-footer{
  display:none!important;
}

body.single-product .site-main,
body.single-product .site-content,
body.single-product #content,
body.single-product .ast-container,
body.single-product #primary,
body.single-product .content-area{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}

body.single-product #secondary{
  display:none!important;
}

body.single-product .woocommerce-breadcrumb{
  display:none!important;
}

body.single-product #ast-scroll-top{
  display:none!important;
}

body.as-sp-no-scroll{
  overflow:hidden!important;
}

.as-sp-container{
  width:min(calc(100% - 48px),var(--as-container));
  margin-inline:auto;
}


/* HEADER */

.as-sp-header{
  position:sticky;
  top:0;
  z-index:1800;

  height:94px;

  display:flex;
  align-items:center;

  background:rgba(244,236,217,.96);

  border-bottom:1px solid rgba(51,49,10,.09);

  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);

  transition:
    background .25s ease,
    box-shadow .25s ease;
}

body.admin-bar .as-sp-header{
  top:32px;
}

.as-sp-header.is-scrolled{
  background:rgba(244,236,217,.99);
  box-shadow:0 10px 34px rgba(51,49,10,.06);
}

.as-sp-header__inner{
  height:100%;

  display:flex;
  align-items:center;

  gap:30px;
}

.as-sp-logo{
  width:94px;
  flex:0 0 94px;

  display:flex;
  align-items:center;
}

.as-sp-logo img{
  width:100%;
  height:66px;

  display:block;
  object-fit:contain;
}

.as-sp-nav{
  flex:1;

  display:flex;
  align-items:center;
  justify-content:center;

  gap:29px;
}

.as-sp-nav a{
  position:relative;

  padding:34px 0 31px;

  color:var(--as-dark);

  font-size:14px;
  font-weight:500;

  white-space:nowrap;
}

.as-sp-nav a::after{
  content:"";

  position:absolute;
  right:0;
  bottom:22px;

  width:0;
  height:1.5px;

  background:var(--as-gold);

  transition:width .2s ease;
}

.as-sp-nav a:hover{
  color:var(--as-olive-gold);
}

.as-sp-nav a:hover::after{
  width:100%;
}

.as-sp-header__actions{
  display:flex;
  align-items:center;

  gap:10px;

  direction:ltr;
}

.as-sp-cart{
  position:relative;

  width:42px;
  height:42px;

  display:flex;
  align-items:center;
  justify-content:center;

  color:var(--as-dark);
}

.as-sp-cart:hover{
  background:rgba(51,49,10,.05);
}

.as-sp-cart svg{
  width:21px;
  height:21px;

  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linejoin:round;
}

.as-sp-cart__count{
  position:absolute;

  top:-2px;
  right:-3px;

  min-width:18px;
  height:18px;

  padding:0 5px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:20px;

  background:var(--as-gold);
  color:var(--as-dark);

  font-family:Arial,sans-serif;
  font-size:10px;
  font-weight:700;
}

.as-sp-shop-link{
  min-height:44px;

  padding:0 19px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:var(--as-dark);
  color:#fff!important;

  border-radius:2px;

  font-size:13px;
  font-weight:600;
}

.as-sp-shop-link:hover{
  background:#262406;
}

.as-sp-menu-button{
  display:none;

  width:42px;
  height:42px;

  padding:0;

  border:1px solid var(--as-border);

  background:transparent;
}

.as-sp-menu-button span{
  display:block;

  width:19px;
  height:1.5px;

  margin:4px auto;

  background:var(--as-dark);
}


/* MOBILE MENU */

.as-sp-mobile-menu{
  position:fixed;
  inset:0;

  z-index:2600;

  visibility:hidden;
  opacity:0;

  pointer-events:none;

  transition:
    opacity .25s ease,
    visibility .25s ease;
}

.as-sp-mobile-menu.active{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
}

.as-sp-mobile-menu__backdrop{
  position:absolute;
  inset:0;

  background:rgba(28,27,8,.44);

  backdrop-filter:blur(3px);
}

.as-sp-mobile-menu__panel{
  position:absolute;

  top:0;
  right:0;
  bottom:0;

  width:min(86vw,360px);

  padding:22px;

  overflow-y:auto;

  background:var(--as-cream);

  transform:translateX(105%);

  transition:transform .3s ease;
}

.as-sp-mobile-menu.active
.as-sp-mobile-menu__panel{
  transform:translateX(0);
}

.as-sp-mobile-menu__head{
  padding-bottom:20px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  border-bottom:1px solid var(--as-border);
}

.as-sp-mobile-menu__head img{
  width:84px;
  height:54px;

  object-fit:contain;
}

.as-sp-mobile-menu__head button{
  width:40px;
  height:40px;

  border:1px solid var(--as-border);

  background:transparent;
  color:var(--as-dark);

  font-size:26px;
}

.as-sp-mobile-menu nav{
  padding-top:18px;

  display:flex;
  flex-direction:column;
}

.as-sp-mobile-menu nav a{
  padding:14px 3px;

  border-bottom:1px solid rgba(146,134,72,.13);

  color:var(--as-dark);

  font-size:15px;
  font-weight:500;
}

.as-sp-mobile-menu__cta{
  width:100%;
  min-height:49px;

  margin-top:23px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:var(--as-dark);
  color:#fff!important;

  font-size:14px;
  font-weight:600;
}


/* BREADCRUMB */

.as-sp-breadcrumb-wrap{
  padding:25px 0 0;

  background:var(--as-cream);
}

.as-sp-breadcrumb{
  display:flex;
  align-items:center;
  flex-wrap:wrap;

  gap:7px;

  color:#908867;

  font-size:11px;
}

.as-sp-breadcrumb a{
  color:#7C755D;
}

.as-sp-breadcrumb a:hover{
  color:var(--as-olive-gold);
}


/* PRODUCT GRID */

body.single-product div.product{
  width:min(calc(100% - 48px),var(--as-container))!important;
  max-width:var(--as-container)!important;

  margin:31px auto 0!important;

  display:grid!important;

  grid-template-columns:
    minmax(0,1.03fr)
    minmax(0,.97fr);

  column-gap:clamp(42px,6vw,86px);

  align-items:start;

  direction:ltr;
}

body.single-product
div.product
> .woocommerce-product-gallery{
  grid-column:1;
  direction:ltr;
}

body.single-product
div.product
> .summary{
  grid-column:2;
  direction:rtl;
}

body.single-product
.woocommerce-product-gallery{
  width:100%!important;

  float:none!important;

  overflow:hidden;

  margin:0!important;

  border:1px solid rgba(146,134,72,.14);
  border-radius:5px;

  background:var(--as-card-soft);
}

body.single-product
.woocommerce-product-gallery__wrapper{
  margin:0!important;
}

body.single-product
.woocommerce-product-gallery__image{
  display:flex!important;
  align-items:center;
  justify-content:center;

  min-height:570px;

  padding:40px;

  background:var(--as-card-soft);
}

body.single-product
.woocommerce-product-gallery__image img{
  width:auto!important;
  max-width:88%!important;
  max-height:500px!important;

  margin:0 auto!important;

  display:block;

  object-fit:contain;
}

body.single-product
.flex-control-thumbs{
  padding:14px!important;
  margin:0!important;

  display:flex!important;

  gap:10px;

  background:var(--as-card);
}

body.single-product
.flex-control-thumbs li{
  width:74px!important;

  float:none!important;
}

body.single-product
.flex-control-thumbs img{
  width:74px!important;
  height:74px!important;

  padding:7px;

  object-fit:contain;

  border:1px solid transparent;

  background:var(--as-card-soft);

  opacity:.65!important;
}

body.single-product
.flex-control-thumbs img.flex-active{
  border-color:var(--as-gold);

  opacity:1!important;
}

body.single-product
.woocommerce-product-gallery__trigger{
  top:16px!important;
  right:16px!important;
  left:auto!important;

  width:40px!important;
  height:40px!important;

  border-radius:50%!important;

  background:rgba(244,236,217,.94)!important;
}


/* SUMMARY */

body.single-product .summary{
  width:auto!important;

  float:none!important;

  margin:0!important;

  padding-top:8px;
}

.as-sp-top-labels{
  display:flex;
  align-items:center;

  gap:9px;

  flex-wrap:wrap;

  margin-bottom:18px;
}

.as-sp-eyebrow{
  display:inline-flex;
  align-items:center;

  gap:11px;

  color:var(--as-olive-gold);

  font-size:12px;
  font-weight:600;
}

.as-sp-eyebrow i{
  width:28px;
  height:1px;

  display:block;

  background:currentColor;
}

.as-sp-badge{
  padding:5px 9px;

  border:1px solid rgba(146,134,72,.30);

  color:#817444;

  font-size:10px;
  font-weight:600;
}

body.single-product
.summary
.product_title{
  margin:0 0 8px!important;

  color:var(--as-dark)!important;

  font-size:
    clamp(
      38px,
      3.8vw,
      56px
    )!important;

  font-weight:800!important;

  line-height:1.22!important;

  letter-spacing:-.35px;
}

.as-sp-subtitle{
  margin-bottom:18px;

  color:var(--as-olive-gold);

  font-size:13px;
}

body.single-product
.summary
.price{
  margin:0 0 15px!important;

  padding:16px 0;

  display:flex;
  align-items:baseline;

  gap:10px;

  border-top:1px solid rgba(146,134,72,.17);
  border-bottom:1px solid rgba(146,134,72,.17);

  color:var(--as-dark)!important;

  background:transparent!important;
}

body.single-product
.summary
.price
> .amount,
body.single-product
.summary
.price
ins
.amount{
  color:var(--as-dark)!important;

  font-size:34px!important;
  font-weight:700!important;
}

body.single-product
.summary
.price ins{
  text-decoration:none!important;
  background:none!important;
}

body.single-product
.summary
.price del{
  color:#AAA183!important;

  opacity:1!important;

  font-size:14px!important;
}

body.single-product
.summary
.price
.woocommerce-Price-currencySymbol{
  font-size:13px!important;
  font-weight:600!important;
}

.as-sp-value-block{
  margin-bottom:16px;

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:7px;
}

.as-sp-value-item{
  min-height:65px;

  padding:11px 12px;

  border:1px solid rgba(146,134,72,.19);

  background:rgba(255,255,255,.16);
}

.as-sp-value-item span{
  display:block;

  margin-bottom:3px;

  color:#877F64;

  font-size:9px;
}

.as-sp-value-item strong{
  display:block;

  color:var(--as-dark);

  font-size:11px;
  font-weight:600;

  line-height:1.5;
}

.as-sp-value-item--saving{
  background:rgba(230,188,112,.12);

  border-color:rgba(230,188,112,.45);
}

body.single-product
.summary
.woocommerce-product-details__short-description{
  margin:0 0 16px!important;

  color:#736D57;

  font-size:13px;

  line-height:1.9;
}

body.single-product
.summary
.woocommerce-product-details__short-description p{
  margin:0;
}

.as-sp-stock-row{
  margin-bottom:17px;

  padding:12px 0;

  display:flex;
  align-items:center;

  gap:17px;

  flex-wrap:wrap;

  border-top:1px solid rgba(146,134,72,.15);
  border-bottom:1px solid rgba(146,134,72,.15);
}

.as-sp-stock-status,
.as-sp-delivery-status{
  display:flex;
  align-items:center;

  gap:6px;

  color:#746D56;

  font-size:11px;
}

.as-sp-stock-status i{
  width:7px;
  height:7px;

  display:block;

  border-radius:50%;

  background:#65864A;
}

.as-sp-stock-status.is-out-of-stock i{
  background:#A85B4B;
}

.as-sp-delivery-status{
  color:var(--as-olive-gold);
}

.as-sp-delivery-status svg{
  width:16px;
  height:16px;

  fill:none;
  stroke:currentColor;
  stroke-width:1.55;
  stroke-linejoin:round;
}


/* CART */

/*
 * The hook rebuild above is the primary duplication fix.
 * Keep native Woo form layout deterministic and centered.
 */
body.single-product
.summary
form.cart{
  width:100%!important;

  margin:0!important;
  padding:0!important;

  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;

  gap:11px!important;

  clear:both;
}

.as-sp-quantity-control{
  width:135px;

  min-height:53px;

  margin:0 auto!important;

  display:grid;

  grid-template-columns:
    38px
    1fr
    38px;

  align-items:center;

  border:1px solid rgba(146,134,72,.30);

  background:rgba(255,255,255,.20);
}

.as-sp-qty-btn{
  width:38px;
  height:100%;

  padding:0;

  border:0;

  background:transparent;

  color:var(--as-dark);

  font-size:20px;
  font-weight:400;
}

.as-sp-qty-btn:hover{
  background:rgba(51,49,10,.05);
}

body.single-product
.summary
form.cart
.quantity{
  width:auto!important;

  float:none!important;

  margin:0!important;
}

body.single-product
.summary
form.cart
.quantity
.qty{
  width:100%!important;
  height:51px!important;

  padding:0!important;

  border:0!important;

  outline:0!important;

  background:transparent!important;

  color:var(--as-dark)!important;

  text-align:center!important;

  font-family:Arial,sans-serif!important;

  font-size:14px!important;
  font-weight:700!important;

  box-shadow:none!important;
}

body.single-product
.summary
.single_add_to_cart_button{
  width:min(100%,260px)!important;

  min-height:53px!important;

  margin:0 auto!important;
  padding:0 24px!important;

  float:none!important;
  align-self:center!important;

  border:0!important;
  border-radius:2px!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  background:var(--as-dark)!important;

  color:#fff!important;

  font-size:15px!important;
  font-weight:600!important;

  line-height:1!important;

  box-shadow:none!important;
}

body.single-product
.summary
.single_add_to_cart_button:hover{
  background:#262406!important;
}

body.single-product
.summary
.single_add_to_cart_button.disabled{
  opacity:.55!important;
}


/* VARIABLE PRODUCTS */

body.single-product
.summary
.variations_form.cart{
  display:block!important;
}

body.single-product
.summary
.variations{
  width:100%!important;

  margin-bottom:15px!important;
}

body.single-product
.summary
.variations th,
body.single-product
.summary
.variations td{
  display:block!important;

  padding:0!important;
}

body.single-product
.summary
.variations label{
  display:block;

  margin-bottom:6px;

  color:var(--as-dark);

  font-size:12px;
  font-weight:600;
}

body.single-product
.summary
.variations select{
  width:100%!important;

  min-height:48px;

  padding:0 13px;

  border:1px solid var(--as-border);

  background:rgba(255,255,255,.22);

  color:var(--as-dark);
}

body.single-product
.summary
.single_variation_wrap
.woocommerce-variation-add-to-cart{
  width:100%!important;

  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;

  gap:11px!important;
}

body.single-product
.summary
.single_variation
.woocommerce-variation-price{
  margin-bottom:12px;
}

body.single-product
.summary
.reset_variations{
  display:inline-block;

  margin-top:7px;

  color:var(--as-olive-gold)!important;

  font-size:10px;
}


/* TRUST */

.as-sp-trust{
  margin-top:17px;

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:7px;
}

.as-sp-trust article{
  min-height:77px;

  padding:11px;

  display:flex;
  align-items:flex-start;

  gap:8px;

  border:1px solid rgba(146,134,72,.17);

  background:rgba(255,255,255,.13);
}

.as-sp-trust svg{
  width:18px;
  height:18px;

  margin-top:1px;

  flex:0 0 auto;

  fill:none;
  stroke:var(--as-gold);
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.as-sp-trust strong{
  display:block;

  color:var(--as-dark);

  font-size:11px;
  font-weight:600;
}

.as-sp-trust span{
  display:block;

  margin-top:2px;

  color:#867E64;

  font-size:9px;

  line-height:1.5;
}

.as-sp-inspect-note{
  margin-top:8px;

  padding:13px 14px;

  display:flex;
  align-items:flex-start;

  gap:10px;

  border:1px solid rgba(230,188,112,.39);

  background:rgba(230,188,112,.09);
}

.as-sp-inspect-note > svg{
  width:19px;
  height:19px;

  flex:0 0 auto;

  fill:none;
  stroke:var(--as-olive-gold);
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.as-sp-inspect-note strong{
  display:block;

  color:var(--as-dark);

  font-size:11px;
  font-weight:600;
}

.as-sp-inspect-note p{
  margin:2px 0 0!important;

  color:#7A725A;

  font-size:9.5px;

  line-height:1.6;
}


/* NOTICES */

body.single-product
.woocommerce-notices-wrapper{
  width:min(calc(100% - 48px),var(--as-container));

  margin:17px auto 0!important;
}

body.single-product
.woocommerce-message,
body.single-product
.woocommerce-error,
body.single-product
.woocommerce-info{
  margin:0!important;

  padding:13px 16px 13px 48px!important;

  border:1px solid var(--as-border)!important;
  border-top:1px solid var(--as-border)!important;

  background:#F8F2E4!important;

  color:var(--as-dark)!important;

  font-size:12px!important;
}

body.single-product
.woocommerce-message::before{
  color:var(--as-olive)!important;
}


/* META CLEANUP */

body.single-product .product_meta{
  display:none!important;
}


/* TABS */

body.single-product
.woocommerce-tabs{
  grid-column:1 / -1;

  width:100%!important;

  margin:78px 0 0!important;

  direction:rtl;
}

body.single-product
.woocommerce-tabs
ul.tabs{
  margin:0!important;
  padding:0!important;

  display:flex!important;

  gap:0;

  border-bottom:1px solid var(--as-border);
}

body.single-product
.woocommerce-tabs
ul.tabs::before,
body.single-product
.woocommerce-tabs
ul.tabs::after{
  display:none!important;
}

body.single-product
.woocommerce-tabs
ul.tabs
li{
  margin:0!important;
  padding:0!important;

  border:0!important;
  border-radius:0!important;

  background:transparent!important;
}

body.single-product
.woocommerce-tabs
ul.tabs
li::before,
body.single-product
.woocommerce-tabs
ul.tabs
li::after{
  display:none!important;
}

body.single-product
.woocommerce-tabs
ul.tabs
li a{
  padding:14px 20px!important;

  color:#777058!important;

  font-size:12px!important;
  font-weight:500!important;
}

body.single-product
.woocommerce-tabs
ul.tabs
li.active a{
  color:var(--as-dark)!important;

  border-bottom:2px solid var(--as-gold);
}

body.single-product
.woocommerce-Tabs-panel{
  margin:0!important;

  padding:27px 0 0!important;

  color:#6F6954;

  font-size:13px;

  line-height:2;
}

body.single-product
.woocommerce-Tabs-panel h2{
  margin:0 0 14px!important;

  color:var(--as-dark);

  font-size:24px!important;
  font-weight:700!important;
}


/* RELATED PRODUCTS */

body.single-product
.related.products{
  grid-column:1 / -1;

  width:100%!important;

  margin:72px 0 88px!important;

  direction:rtl;
}

body.single-product
.related.products > h2{
  margin:0 0 30px!important;

  color:var(--as-dark)!important;

  font-size:34px!important;
  font-weight:700!important;

  text-align:right!important;
}

body.single-product
.related.products
ul.products{
  display:grid!important;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:20px;

  margin:0!important;
  padding:0!important;
}

body.single-product
.related.products
li.product{
  width:auto!important;

  float:none!important;

  margin:0!important;
  padding:0 0 18px!important;

  overflow:hidden;

  border:1px solid rgba(146,134,72,.14);

  border-radius:4px;

  background:#F9F4E9;

  text-align:right!important;
}

body.single-product
.related.products
li.product
img{
  width:100%!important;
  height:270px!important;

  margin:0 0 18px!important;
  padding:24px;

  object-fit:contain;

  background:var(--as-card-soft);
}

body.single-product
.related.products
li.product
.woocommerce-loop-product__title{
  padding:0 17px!important;
  margin:0 0 8px!important;

  color:var(--as-dark)!important;

  font-size:15px!important;
  font-weight:600!important;
}

body.single-product
.related.products
li.product
.price{
  padding:0 17px;

  color:var(--as-dark)!important;

  font-size:18px!important;
  font-weight:700!important;
}

body.single-product
.related.products
li.product
.button{
  min-height:42px;

  margin:14px 17px 0!important;
  padding:0 15px!important;

  display:flex!important;
  align-items:center;
  justify-content:center;

  border-radius:2px!important;

  background:var(--as-dark)!important;

  color:#fff!important;

  font-size:12px!important;
  font-weight:600!important;
}


/* FOOTER */

.as-sp-footer{
  padding:65px 0 24px;

  background:var(--as-dark);

  color:rgba(255,255,255,.63);
}

.as-sp-footer__grid{
  display:grid;

  grid-template-columns:
    1.55fr 1fr 1fr 1fr;

  gap:68px;

  padding-bottom:47px;
}

.as-sp-footer__brand img{
  width:108px;
  height:68px;

  margin-bottom:17px;

  display:block;

  object-fit:contain;
  object-position:right center;

  filter:brightness(0) invert(1);

  opacity:.94;
}

.as-sp-footer__brand p{
  max-width:335px;

  margin:0 0 16px;

  color:rgba(255,255,255,.58);

  font-size:12px;

  line-height:2;
}

.as-sp-footer__brand > a{
  color:var(--as-gold)!important;

  font-size:11px;
}

.as-sp-footer__column{
  display:flex;
  flex-direction:column;

  align-items:flex-start;

  gap:9px;
}

.as-sp-footer__column h3{
  position:relative;

  margin:0 0 11px;

  padding-left:34px;

  color:var(--as-gold);

  font-size:14px;
  font-weight:600;
}

.as-sp-footer__column h3::after{
  content:"";

  position:absolute;

  left:0;
  top:50%;

  width:26px;
  height:1px;

  background:rgba(230,188,112,.50);
}

.as-sp-footer__column > a{
  color:rgba(255,255,255,.61)!important;

  font-size:12px;
}

.as-sp-footer__column > a:hover{
  color:var(--as-gold)!important;
}

.as-sp-footer__bottom{
  padding-top:19px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:20px;

  border-top:1px solid rgba(255,255,255,.08);

  color:rgba(255,255,255,.34);

  font-size:10px;
}


/* TABLET */

@media(max-width:1100px){

  .as-sp-nav{
    gap:18px;
  }

  .as-sp-nav a{
    font-size:12px;
  }

  body.single-product div.product{
    column-gap:35px;
  }

  body.single-product
  .woocommerce-product-gallery__image{
    min-height:480px;
  }

  body.single-product
  .woocommerce-product-gallery__image img{
    max-height:420px!important;
  }

  .as-sp-footer__grid{
    gap:34px;
  }
}


/* MOBILE / TABLET */

@media(max-width:900px){

  body.admin-bar .as-sp-header{
    top:46px;
  }

  .as-sp-container{
    width:calc(100% - 32px);
  }

  .as-sp-header{
    height:72px;
  }

  .as-sp-logo{
    width:78px;
    flex-basis:78px;
  }

  .as-sp-logo img{
    height:54px;
  }

  .as-sp-nav,
  .as-sp-shop-link{
    display:none;
  }

  .as-sp-header__actions{
    margin-right:auto;
  }

  .as-sp-menu-button{
    display:block;
  }

  body.single-product div.product{
    width:calc(100% - 32px)!important;

    margin-top:24px!important;

    grid-template-columns:1fr;

    row-gap:30px;
  }

  body.single-product
  div.product
  > .woocommerce-product-gallery,
  body.single-product
  div.product
  > .summary{
    grid-column:1;
  }

  body.single-product
  .woocommerce-product-gallery__image{
    min-height:500px;
  }

  body.single-product
  .summary
  .product_title{
    font-size:clamp(38px,9vw,50px)!important;
  }

  body.single-product
  .woocommerce-tabs{
    margin-top:55px!important;
  }

  .as-sp-footer__grid{
    grid-template-columns:1fr 1fr;

    gap:40px 30px;
  }
}


/* MOBILE */

@media(max-width:600px){

  .as-sp-container{
    width:calc(100% - 28px);
  }

  .as-sp-header__inner{
    gap:10px;
  }

  body.single-product div.product{
    width:calc(100% - 28px)!important;
  }

  body.single-product
  .woocommerce-product-gallery__image{
    min-height:360px;

    padding:25px;
  }

  body.single-product
  .woocommerce-product-gallery__image img{
    max-height:320px!important;
  }

  body.single-product
  .flex-control-thumbs li,
  body.single-product
  .flex-control-thumbs img{
    width:58px!important;
    height:58px!important;
  }

  body.single-product
  .summary
  .product_title{
    font-size:36px!important;
  }

  body.single-product
  .summary
  .price
  > .amount,
  body.single-product
  .summary
  .price
  ins
  .amount{
    font-size:29px!important;
  }

  .as-sp-value-block{
    grid-template-columns:1fr 1fr;
  }

  body.single-product
  .summary
  form.cart{
    width:100%!important;

    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
  }

  .as-sp-quantity-control{
    width:135px;
    max-width:100%;
  }

  body.single-product
  .summary
  .single_add_to_cart_button{
    width:min(100%,260px)!important;
  }

  body.single-product
  .summary
  .single_variation_wrap
  .woocommerce-variation-add-to-cart{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
  }

  .as-sp-trust{
    grid-template-columns:1fr;
  }

  .as-sp-trust article{
    min-height:64px;
  }

  body.single-product
  .related.products
  ul.products{
    grid-template-columns:1fr;
  }

  body.single-product
  .related.products
  li.product
  img{
    height:300px!important;
  }

  body.single-product
  .woocommerce-tabs
  ul.tabs{
    overflow-x:auto;

    white-space:nowrap;
  }

  body.single-product
  .woocommerce-tabs
  ul.tabs
  li a{
    padding:12px 14px!important;
  }

  .as-sp-footer{
    padding-top:48px;
  }

  .as-sp-footer__grid{
    grid-template-columns:1fr;

    gap:32px;
  }

  .as-sp-footer__bottom{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* ==========================================================
   FINAL CART LAYOUT OVERRIDE
   Kept at the end of this stylesheet so it wins over the
   earlier Single Product cart rules.
========================================================== */

body.single-product
    div.product
    .summary
    form.cart,
    body.single-product
    div.product
    .summary
    form.cart:not(.variations_form){
        width:100%!important;

        margin:0!important;
        padding:0!important;

        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;

        gap:12px!important;

        float:none!important;
        clear:both!important;
    }


    body.single-product
    div.product
    .summary
    form.cart
    .as-sp-quantity-control{
        width:135px!important;
        max-width:135px!important;

        margin:0 auto!important;

        flex:0 0 auto!important;
        align-self:center!important;
    }


    body.single-product
    div.product
    .summary
    form.cart
    .quantity{
        width:auto!important;

        margin:0!important;

        float:none!important;
    }


    body.single-product
    div.product
    .summary
    form.cart
    button.single_add_to_cart_button,
    body.single-product
    div.product
    .summary
    form.cart
    .single_add_to_cart_button{
        width:260px!important;
        max-width:100%!important;

        min-height:53px!important;

        margin:0 auto!important;

        float:none!important;

        display:flex!important;
        align-items:center!important;
        justify-content:center!important;

        align-self:center!important;

        position:static!important;
        inset:auto!important;

        transform:none!important;
    }


    body.single-product
    div.product
    .summary
    .single_variation_wrap
    .woocommerce-variation-add-to-cart{
        width:100%!important;

        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;

        gap:12px!important;
    }


    @media(max-width:600px){

        body.single-product
        div.product
        .summary
        form.cart
        button.single_add_to_cart_button,
        body.single-product
        div.product
        .summary
        form.cart
        .single_add_to_cart_button{
            width:min(100%,260px)!important;
        }
    }
