
/* ROOP COUTURE — LUXURY POLISH
   Designed for Astra Free + Elementor Free.
*/

/* ---------- GLOBAL ---------- */
:root{
  --roop-ink:#171417;
  --roop-paper:#f7f3ef;
  --roop-pink:#c51e73;
  --roop-serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --roop-sans:"Inter",Arial,sans-serif;
}
html{scroll-behavior:smooth}
body{background:var(--roop-paper);color:var(--roop-ink)}
body,button,input,textarea,select{font-family:var(--roop-sans)}
h1,h2,h3,h4,h5,h6,.entry-title{font-family:var(--roop-serif);font-weight:400}

/* ---------- ASTRA HEADER ---------- */
.ast-builder-grid-row-container.ast-builder-grid-row-tablet-full .ast-builder-grid-row,
.ast-builder-grid-row-container.ast-builder-grid-row-mobile-full .ast-builder-grid-row,
.ast-builder-grid-row-container.ast-builder-grid-row-full .ast-builder-grid-row{
  padding-left:32px;
  padding-right:32px;
}
.site-header-primary-section-left,
.site-header-primary-section-right{
  min-width:0;
}
.site-header-primary-section-left{
  align-items:center;
}
.site-branding{
  margin:0!important;
  padding:0!important;
}
.site-logo-img,
.custom-logo{
  width:auto!important;
  max-width:170px!important;
  max-height:86px!important;
  object-fit:contain;
}
.ast-builder-menu-1 .menu-item > .menu-link{
  font-family:var(--roop-sans);
  font-size:11px!important;
  font-weight:400!important;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding-left:13px!important;
  padding-right:13px!important;
  color:#211c20;
}
.ast-builder-menu-1 .menu-item > .menu-link:hover,
.ast-builder-menu-1 .current-menu-item > .menu-link{
  color:var(--roop-pink)!important;
}
.ast-header-button-1 .ast-custom-button{
  background:var(--roop-pink)!important;
  color:#fff!important;
  border-radius:0!important;
  padding:12px 18px!important;
  font-size:10px!important;
  letter-spacing:.14em;
  text-transform:uppercase;
}

/* Keep the desktop header compact so the navigation doesn't wrap. */
.ast-primary-header-bar .site-primary-header-wrap{
  min-height:96px!important;
}
.ast-primary-header-bar .ast-builder-grid-row{
  column-gap:24px;
}

/* ---------- MAIN PAGE ---------- */
.site-content{
  overflow:hidden;
}
.elementor-page .site-content{
  margin:0;
}
.elementor-page .ast-container{
  max-width:none!important;
  padding-left:0!important;
  padding-right:0!important;
}
.elementor-page .entry-content{
  margin:0!important;
}
.elementor-page .elementor-section-wrap{
  overflow:hidden;
}

/* ---------- LUXURY BUTTONS ---------- */
.elementor-widget-button .elementor-button{
  border-radius:0!important;
  font-family:var(--roop-sans)!important;
  font-size:10px!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  padding:15px 23px!important;
  transition:all .25s ease;
}
.elementor-widget-button .elementor-button:hover{
  transform:translateY(-2px);
  filter:brightness(1.05);
}

/* ---------- PRODUCT GRID ---------- */
.roop-product-grid{
  width:100%;
}
.roop-product-image{
  background:#e7dfd8!important;
}
.roop-product-meta h3{
  color:inherit!important;
}

/* ---------- MOBILE ---------- */
@media(max-width:921px){
  .ast-builder-grid-row-container.ast-builder-grid-row-tablet-full .ast-builder-grid-row{
    padding-left:20px!important;
    padding-right:20px!important;
  }
  .site-logo-img,.custom-logo{
    max-width:130px!important;
    max-height:72px!important;
  }
}
@media(max-width:767px){
  .ast-primary-header-bar .site-primary-header-wrap{
    min-height:76px!important;
  }
  .elementor-widget-heading h1,
  .elementor-widget-heading h2,
  .elementor-widget-heading h3{
    word-break:normal!important;
  }
}

/* ---------- OPTIONAL DARK HEADER MODE ----------
   Add class "roop-dark-header" to body if later desired.
*/
body.roop-dark-header .ast-primary-header-bar{
  background:rgba(20,16,18,.94)!important;
}
body.roop-dark-header .ast-builder-menu-1 .menu-item > .menu-link{
  color:#fff!important;
}
body.roop-dark-header .site-title a,
body.roop-dark-header .ast-site-identity a{
  color:#fff!important;
}
