/* ==========================================================================
   GLOW HOUSE — brand typography + RTL corrections
   Loaded last so it overrides the legacy theme stylesheets.
   ========================================================================== */

/* ---------- Arabic-first webfont (self-hosted, no external requests) ---------- */
@font-face{font-family:'Plex Arabic';src:url('../fonts/IBMPlexSansArabic-400.woff2') format('woff2');
  font-weight:400;font-display:swap;}
@font-face{font-family:'Plex Arabic';src:url('../fonts/IBMPlexSansArabic-500.woff2') format('woff2');
  font-weight:500;font-display:swap;}
@font-face{font-family:'Plex Arabic';src:url('../fonts/IBMPlexSansArabic-600.woff2') format('woff2');
  font-weight:600;font-display:swap;}
@font-face{font-family:'Plex Arabic';src:url('../fonts/IBMPlexSansArabic-700.woff2') format('woff2');
  font-weight:700;font-display:swap;}

:root{
  --gh-ink:#14100E;
  --gh-muted:#6B5F58;
  --gh-accent:#C08552;
  --gh-line:#EDE7E3;
  --gh-bg-soft:#FAF7F5;
  --gh-radius:14px;
}

body,button,input,select,textarea,
.site-header,.navbar,.widget,.card,.btn,h1,h2,h3,h4,h5,h6,p,a,span,div,li,td,th,label{
  font-family:'Plex Arabic',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
/* never override the icon fonts */
[class^="fa-"],[class*=" fa-"],[class^="icon-"],[class*=" icon-"],
.fa,.fas,.far,.fal,.fab,.socicon,[class^="pf-"],[class*=" pf-"]{
  font-family:inherit;
}
.fa,.fas{font-family:"Font Awesome 5 Free"!important;}
.fab{font-family:"Font Awesome 5 Brands"!important;}
.far,.fal{font-family:"Font Awesome 5 Free"!important;}
[class^="icon-"],[class*=" icon-"]{font-family:'feather'!important;}
[class^="socicon-"],[class*=" socicon-"]{font-family:'socicon'!important;}

body{color:var(--gh-ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}

/* ---------- typographic scale ---------- */
h1,h2,h3,h4,h5{font-weight:600;letter-spacing:-.01em;line-height:1.25;color:var(--gh-ink);}
h1{font-size:clamp(1.9rem,4vw,3rem);}
h2{font-size:clamp(1.5rem,3vw,2.15rem);}
h3{font-size:clamp(1.2rem,2.2vw,1.6rem);}
p{line-height:1.8;color:var(--gh-muted);}

/* ==========================================================================
   RTL corrections — beyond direction:rtl
   ========================================================================== */
html[dir="rtl"] body{direction:rtl;text-align:right;}
html[dir="rtl"] .text-left{text-align:right!important;}
html[dir="rtl"] .text-right{text-align:left!important;}

/* padding / margin helpers flip */
html[dir="rtl"] .pl-1,html[dir="rtl"] .pl-2,html[dir="rtl"] .pl-3{padding-left:0!important;}
html[dir="rtl"] .pl-1{padding-right:.25rem!important;}
html[dir="rtl"] .pl-2{padding-right:.5rem!important;}
html[dir="rtl"] .pl-3{padding-right:1rem!important;}
html[dir="rtl"] .pr-1,html[dir="rtl"] .pr-2,html[dir="rtl"] .pr-3{padding-right:0!important;}
html[dir="rtl"] .pr-1{padding-left:.25rem!important;}
html[dir="rtl"] .pr-2{padding-left:.5rem!important;}
html[dir="rtl"] .pr-3{padding-left:1rem!important;}
html[dir="rtl"] .ml-1{margin-left:0!important;margin-right:.25rem!important;}
html[dir="rtl"] .ml-2{margin-left:0!important;margin-right:.5rem!important;}
html[dir="rtl"] .ml-3{margin-left:0!important;margin-right:1rem!important;}
html[dir="rtl"] .mr-1{margin-right:0!important;margin-left:.25rem!important;}
html[dir="rtl"] .mr-2{margin-right:0!important;margin-left:.5rem!important;}
html[dir="rtl"] .mr-3{margin-right:0!important;margin-left:1rem!important;}

/* directional icons must mirror */
html[dir="rtl"] .icon-chevron-right:before{content:"\e93b";}
html[dir="rtl"] .icon-chevron-left:before{content:"\e93c";}
html[dir="rtl"] .fa-chevron-right:before{content:"\f053";}
html[dir="rtl"] .fa-chevron-left:before{content:"\f054";}
html[dir="rtl"] .fa-arrow-right:before{content:"\f060";}
html[dir="rtl"] .fa-arrow-left:before{content:"\f061";}
html[dir="rtl"] .fa-long-arrow-right:before{content:"\f177";}
html[dir="rtl"] .fa-long-arrow-left:before{content:"\f178";}

/* breadcrumbs */
html[dir="rtl"] .breadcrumb{padding-right:0;}
html[dir="rtl"] .breadcrumb-item+.breadcrumb-item{padding-right:.5rem;padding-left:0;}
html[dir="rtl"] .breadcrumb-item+.breadcrumb-item::before{padding-right:0;padding-left:.5rem;float:right;}

/* forms */
html[dir="rtl"] .form-control,html[dir="rtl"] input,html[dir="rtl"] textarea,html[dir="rtl"] select{
  text-align:right;direction:rtl;}
html[dir="rtl"] .custom-control-label{padding-right:1.5rem;padding-left:0;}
html[dir="rtl"] .custom-control{padding-right:1.5rem;padding-left:0;}
html[dir="rtl"] .custom-control-label::before,html[dir="rtl"] .custom-control-label::after{
  right:0;left:auto;}
html[dir="rtl"] .input-group>.input-group-append{margin-right:-1px;margin-left:0;}

/* keep latin/numeric fields readable */
html[dir="rtl"] input[type="email"],html[dir="rtl"] input[type="url"],
html[dir="rtl"] input[type="tel"],html[dir="rtl"] input[type="number"],
html[dir="rtl"] input[type="password"]{direction:ltr;text-align:right;}

/* dropdowns / menus */
html[dir="rtl"] .dropdown-menu{right:0;left:auto;text-align:right;}
html[dir="rtl"] .navbar-nav{padding-right:0;}
html[dir="rtl"] ul{padding-right:0;}

/* carousel arrows swap sides */
html[dir="rtl"] .owl-nav .owl-prev,html[dir="rtl"] .slick-prev{right:auto;left:-6px;}
html[dir="rtl"] .owl-nav .owl-next,html[dir="rtl"] .slick-next{left:auto;right:-6px;}

/* tables */
html[dir="rtl"] table th,html[dir="rtl"] table td{text-align:right;}

/* floats */
html[dir="rtl"] .float-left{float:right!important;}
html[dir="rtl"] .float-right{float:left!important;}

/* prices and numbers stay LTR so currency reads correctly */
.product-price,.price,.gh-price,.cart-total,.amount{direction:ltr;unicode-bidi:isolate;}
html[dir="rtl"] .product-price,html[dir="rtl"] .price{text-align:right;}

/* ==========================================================================
   STEP 4 — homepage redesign: premium, mobile-first cosmetics store
   ========================================================================== */

/* ---------- kill the legacy full-page spinner (delays first paint) ---------- */
#preloader{display:none!important;visibility:hidden!important;opacity:0!important;}

/* ---------- HERO ---------- */
.hero-slider .item,.hero-slider-main .item,.slider-item{
  background-image:
    radial-gradient(110% 120% at 85% 15%, #F6E7DE 0%, rgba(246,231,222,0) 60%),
    radial-gradient(90% 100% at 10% 90%, #EFE3DC 0%, rgba(239,227,220,0) 55%),
    linear-gradient(135deg,#FBF7F5 0%,#F3E9E3 55%,#EADFD8 100%)!important;
  background-size:cover!important;background-position:center!important;
  min-height:clamp(360px,46vw,560px);display:flex;align-items:center;
}
.hero-slider .item-inner,.slider-item .item-inner{padding-block:clamp(2rem,5vw,4.5rem);}
.hero-slider .title,.slider-item .title{
  font-size:clamp(2rem,5vw,3.6rem)!important;font-weight:700!important;
  line-height:1.15!important;color:var(--gh-ink)!important;letter-spacing:-.02em;
  margin-bottom:.75rem;max-width:18ch;
}
.hero-slider .subtitle,.slider-item .subtitle{
  font-size:clamp(1rem,1.7vw,1.25rem)!important;color:var(--gh-muted)!important;
  line-height:1.75!important;max-width:44ch;margin-bottom:1.75rem;
}
html[dir="rtl"] .hero-slider .title,html[dir="rtl"] .hero-slider .subtitle{margin-inline:0 auto;}
.hero-slider .brand-logo{max-height:56px;width:auto;margin-bottom:1.25rem;}

/* primary button */
.btn-primary{
  background:var(--gh-ink)!important;border-color:var(--gh-ink)!important;color:#fff!important;
  border-radius:999px!important;padding:.85rem 2.25rem!important;font-weight:600!important;
  letter-spacing:.01em;box-shadow:0 6px 18px rgba(20,16,14,.14);
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}
.btn-primary:hover{
  background:var(--gh-accent)!important;border-color:var(--gh-accent)!important;
  transform:translateY(-2px);box-shadow:0 10px 26px rgba(192,133,82,.32);
}

/* ---------- section rhythm + titles ---------- */
.service-section,.bannner-section,.selected-product-section,
.flash-sell-new-section,.flash-sell-area,.brand-section{
  margin-top:clamp(2.5rem,5vw,4.5rem)!important;
}
.section-title{margin-bottom:clamp(1.5rem,3vw,2.5rem)!important;}
.section-title h2,.section-title h3,.section-title .title{
  font-weight:600!important;letter-spacing:-.01em;position:relative;display:inline-block;
  padding-bottom:.6rem;
}
.section-title h2::after,.section-title h3::after{
  content:"";position:absolute;bottom:0;inset-inline-start:50%;transform:translateX(-50%);
  width:44px;height:2px;background:var(--gh-accent);border-radius:2px;
}
html[dir="rtl"] .section-title h2::after{transform:translateX(50%);}

/* ---------- service / trust strip ---------- */
.service-section .single-service,.service-section .service-item,.service-section [class*="col-"]>div{
  border:1px solid var(--gh-line);border-radius:var(--gh-radius);background:#fff;
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}
.service-section [class*="col-"]>div:hover{
  border-color:#E2D5CC;box-shadow:0 8px 22px rgba(20,16,14,.06);transform:translateY(-2px);
}

/* ---------- category / banner cards ---------- */
.bannner-section .genius-banner,.bannner-section [class*="col-"]>a,
.bannner-section [class*="col-"]>div{
  border-radius:var(--gh-radius);overflow:hidden;background:var(--gh-bg-soft);
  transition:transform .3s cubic-bezier(.2,.7,.3,1),box-shadow .3s ease;
}
.bannner-section [class*="col-"]>div:hover,.bannner-section .genius-banner:hover{
  transform:translateY(-4px);box-shadow:0 14px 34px rgba(20,16,14,.10);
}

/* ---------- product cards ---------- */
.product-card{
  border:1px solid var(--gh-line)!important;border-radius:var(--gh-radius)!important;
  background:#fff;overflow:hidden;
  transition:transform .28s cubic-bezier(.2,.7,.3,1),box-shadow .28s ease,border-color .28s ease;
}
.product-card:hover{
  transform:translateY(-5px);border-color:#E5D9D1!important;
  box-shadow:0 16px 38px rgba(20,16,14,.11);
}
.product-thumb{background:var(--gh-bg-soft);padding:1rem;}
.product-thumb img{transition:transform .5s cubic-bezier(.2,.7,.3,1);mix-blend-mode:multiply;}
.product-card:hover .product-thumb img{transform:scale(1.06);}
.product-card-body{padding:1rem 1.1rem 1.25rem!important;}
.product-category a{
  font-size:.72rem!important;letter-spacing:.08em;text-transform:uppercase;
  color:var(--gh-accent)!important;font-weight:600;
}
.product-title{margin:.35rem 0 .5rem!important;}
.product-title a{
  font-size:.98rem!important;font-weight:500!important;line-height:1.55!important;
  color:var(--gh-ink)!important;transition:color .2s ease;
}
.product-title a:hover{color:var(--gh-accent)!important;}
.product-price{
  font-size:1.05rem!important;font-weight:700!important;color:var(--gh-ink)!important;
  margin-top:.35rem;
}
.product-price del{color:#B9ADA6!important;font-weight:400!important;font-size:.85em!important;}
.product-badge{border-radius:999px!important;font-size:.68rem!important;letter-spacing:.05em;
  padding:.3rem .7rem!important;font-weight:600!important;}
.product-button-group .product-button{
  border-radius:50%!important;transition:background .2s ease,color .2s ease,transform .2s ease;}
.product-button-group .product-button:hover{background:var(--gh-ink)!important;color:#fff!important;transform:scale(1.08);}

/* ---------- mobile-first refinements ---------- */
@media (max-width:767px){
  .hero-slider .item,.slider-item{min-height:340px;text-align:center;}
  .hero-slider .title{max-width:none;}
  .hero-slider .subtitle{max-width:none;margin-inline:auto;}
  .product-card-body{padding:.85rem .9rem 1rem!important;}
  .product-title a{font-size:.9rem!important;}
  .section-title{margin-bottom:1.25rem!important;}
}

/* respect reduced-motion preferences */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}
}

/* ==========================================================================
   STEP 5 — product page
   ========================================================================== */

/* ---------- gallery ---------- */
.product-gallery{background:var(--gh-bg-soft);border:1px solid var(--gh-line);
  border-radius:var(--gh-radius);padding:clamp(1rem,3vw,2.25rem);}
.product-gallery img{mix-blend-mode:multiply;}
.product-thumbnails.insize{margin-top:1rem;}
.product-thumbnails img,.product-details-slider img{
  border:1px solid var(--gh-line);border-radius:10px;background:#fff;padding:.4rem;
  transition:border-color .2s ease,transform .2s ease;}
.product-thumbnails a:hover img,.product-details-slider .owl-item:hover img{
  border-color:var(--gh-accent);transform:translateY(-2px);}
.product-thumbnails .active img,.product-details-slider .current img{
  border-color:var(--gh-accent);box-shadow:0 0 0 2px rgba(192,133,82,.22);}

/* ---------- price + VAT ---------- */
.price-area{margin-bottom:.35rem!important;}
.main-price{font-size:clamp(1.6rem,3vw,2.15rem)!important;font-weight:700!important;
  color:var(--gh-ink)!important;direction:ltr;unicode-bidi:isolate;display:inline-block;}
.price-area del{color:#B9ADA6!important;font-weight:400!important;}
.gh-vat-note{display:inline-flex;align-items:center;gap:.5rem;margin:0 0 1.1rem;
  padding:.32rem .8rem;border-radius:999px;background:var(--gh-bg-soft);
  border:1px solid var(--gh-line);font-size:.82rem;color:var(--gh-muted);font-weight:500;}
.gh-vat-note i{color:var(--gh-accent);font-size:.85em;}

/* ---------- variant selector as pills ---------- */
.attribute_option{
  appearance:none;-webkit-appearance:none;border:1px solid var(--gh-line)!important;
  border-radius:999px!important;padding:.7rem 2.4rem .7rem 1.1rem!important;height:auto!important;
  background-image:linear-gradient(45deg,transparent 50%,var(--gh-muted) 50%),
                   linear-gradient(135deg,var(--gh-muted) 50%,transparent 50%);
  background-position:calc(100% - 18px) calc(1em + 2px),calc(100% - 13px) calc(1em + 2px);
  background-size:5px 5px,5px 5px;background-repeat:no-repeat;
  font-weight:500;color:var(--gh-ink)!important;cursor:pointer;
  transition:border-color .2s ease,box-shadow .2s ease;}
html[dir="rtl"] .attribute_option{padding:.7rem 1.1rem .7rem 2.4rem!important;
  background-position:18px calc(1em + 2px),23px calc(1em + 2px);}
.attribute_option:focus{border-color:var(--gh-accent)!important;
  box-shadow:0 0 0 3px rgba(192,133,82,.16)!important;outline:none;}
.form-group label{font-weight:600;font-size:.86rem;color:var(--gh-muted);
  letter-spacing:.02em;margin-bottom:.45rem;}

/* ---------- quantity ---------- */
.qtySelector{border:1px solid var(--gh-line);border-radius:999px;overflow:hidden;
  display:inline-flex;align-items:center;background:#fff;}
.qtySelector .decreaseQty,.qtySelector .increaseQty{
  padding:.6rem .95rem;cursor:pointer;color:var(--gh-muted);transition:background .18s ease,color .18s ease;}
.qtySelector .decreaseQty:hover,.qtySelector .increaseQty:hover{background:var(--gh-bg-soft);color:var(--gh-ink);}
.qtySelector .qtyValue{border:0;width:48px;text-align:center;font-weight:600;background:transparent;}

/* ---------- add-to-cart success feedback ---------- */
#add_to_cart{position:relative;transition:background .25s ease,transform .18s ease;}
#add_to_cart.gh-added{background:#2E7D5B!important;border-color:#2E7D5B!important;}
#add_to_cart.gh-added i:before{content:"\f00c";font-family:"Font Awesome 5 Free";font-weight:900;}
@keyframes ghCartBump{0%{transform:scale(1)}35%{transform:scale(1.28)}100%{transform:scale(1)}}
.gh-cart-bump{animation:ghCartBump .45s cubic-bezier(.2,.7,.3,1);}

/* ---------- trust badges ---------- */
.gh-trust{list-style:none;padding:1.1rem 0 0;margin:.25rem 0 0;border-top:1px solid var(--gh-line);
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1.25rem;}
.gh-trust li{display:flex;align-items:center;gap:.6rem;font-size:.87rem;
  color:var(--gh-muted);font-weight:500;line-height:1.45;}
.gh-trust i{flex:0 0 34px;height:34px;width:34px;display:inline-flex;align-items:center;
  justify-content:center;border-radius:50%;background:var(--gh-bg-soft);
  color:var(--gh-accent);font-size:.85rem;}
@media (max-width:575px){.gh-trust{grid-template-columns:1fr;}}

/* ---------- reviews + related ---------- */
.review-area{background:var(--gh-bg-soft);border-radius:var(--gh-radius);
  padding:clamp(1.25rem,3vw,2.25rem);margin-top:clamp(2rem,4vw,3rem);}
.single-review{background:#fff;border:1px solid var(--gh-line);border-radius:12px;
  padding:1.1rem 1.25rem;margin-bottom:.85rem;}
.relatedproduct-section{margin-top:clamp(2.5rem,5vw,4rem);}
