/*
Theme Name: Astra Child
Template: astra
Version: 1.0
*/

/* =========================
   TOKENS
   ========================= */
:root{
  --ulvi-bg: #FCFCFA;

  --ulvi-header-h: 92px;
  --ulvi-header-h-m: 78px;
  --ulvi-logo-h: 56px;
  --ulvi-logo-h-m: 44px;

  --ulvi-content-pad-top: 0px;
  --ulvi-content-pad-top-m: 0px;

  --ulvi-glass-bg: rgba(255,255,255,0.78);
  --ulvi-glass-blur: blur(14px) saturate(1.2);

  --ulvi-r: 14px;

  --ulvi-right-col: 520px;
  --ulvi-gap: 44px;
  --ulvi-left-pad: 150px;
  --ulvi-right-nudge: -38px;

  --ulvi-cta-w-desktop: 420px;
  --ulvi-cta-w-max: 520px;
  --ulvi-cta-h: 36px;
  --ulvi-cta-h-m: 36px;

  --ulvi-cta-smoke-bg: rgba(18,18,18,0.14);
  --ulvi-cta-smoke-border: rgba(0,0,0,0.16);
  --ulvi-cta-smoke-text: rgba(0,0,0,0.72);
  --ulvi-cta-smoke-inset: rgba(255,255,255,0.22);
  --ulvi-cta-smoke-shadow: rgba(0,0,0,0.10);

  --ulvi-oc-w-desktop-min: 520px;
  --ulvi-oc-w-desktop: 40vw;
  --ulvi-oc-w-desktop-max: 720px;
  --ulvi-oc-overlay: rgba(0,0,0,.26);
  --ulvi-oc-panel-bg: rgba(255,255,255,.92);
  --ulvi-oc-border: rgba(0,0,0,.08);
  --ulvi-oc-ease: cubic-bezier(.77,0,.175,1);
  --ulvi-oc-dur: .46s;
}

/* =========================
   SCROLLBAR HIDE
   ========================= */
html,
body,
.ulvi-single .ulvi-strip{
  scrollbar-width: none;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar,
.ulvi-single .ulvi-strip::-webkit-scrollbar{
  width: 0;
  height: 0;
  display: none;
}

/* =========================
   GLOBAL
   ========================= */
html,
body{
  overflow-x: hidden;
  background: var(--ulvi-bg) !important;
}

#page,
#content,
.site,
.site-content,
.site-content > .ast-container,
.ast-container{
  background: transparent !important;
}

.site-content{
  padding-top: var(--ulvi-content-pad-top);
  padding-bottom: 0;
}

@media (max-width: 768px){
  .site-content{
    padding-top: var(--ulvi-content-pad-top-m);
  }
}

.woocommerce .site-content,
.woocommerce-page .site-content{
  padding-bottom: 0;
}

footer#colophon,
.site-footer{
  display: none !important;
}

.site-content > .ast-container{
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(16px, 3vw, 32px);
  padding-right: clamp(16px, 3vw, 32px);
}

.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.woocommerce-page input.input-text,
.woocommerce-page textarea,
.woocommerce-page select{
  background-color: rgba(255,255,255,0.72);
  border: 1px solid rgba(0,0,0,0.08);
}

/* focus visuals OFF everywhere */
a,
button,
input,
select,
textarea,
summary,
[tabindex],
.woocommerce ul.products li.product a,
.site-header-custom a,
.site-header-custom button{
  outline: none !important;
  box-shadow: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

a:focus,
a:focus-visible,
button:focus,
button:focus-visible,
input:focus,
input:focus-visible,
select:focus,
select:focus-visible,
textarea:focus,
textarea:focus-visible,
summary:focus,
summary:focus-visible,
[tabindex]:focus,
[tabindex]:focus-visible,
.woocommerce ul.products li.product a:focus,
.woocommerce ul.products li.product a:focus-visible,
.site-header-custom a:focus,
.site-header-custom a:focus-visible,
.site-header-custom button:focus,
.site-header-custom button:focus-visible{
  outline: none !important;
  box-shadow: none !important;
}

/* ==================================================
   PAGE TOP GAP FIX — ULVI FINAL CLEAN
   Cart / Checkout / Contact
   ================================================== */

/* SITE CONTENT */
body.woocommerce-cart .site-content,
body.woocommerce-checkout .site-content,
body.ulvi-contact .site-content{
  padding-top: 0;
}

/* WRAPPER CHAIN RESET */
body.woocommerce-cart .site-content > .ast-container,
body.woocommerce-checkout .site-content > .ast-container,
body.ulvi-contact .site-content > .ast-container,

body.woocommerce-cart #primary,
body.woocommerce-checkout #primary,
body.ulvi-contact #primary,

body.woocommerce-cart #main,
body.woocommerce-checkout #main,
body.ulvi-contact #main,

body.woocommerce-cart .site-main,
body.woocommerce-checkout .site-main,
body.ulvi-contact .site-main,

body.woocommerce-cart article.page,
body.woocommerce-checkout article.page,
body.ulvi-contact article.page,

body.woocommerce-cart .ast-article-single,
body.woocommerce-checkout .ast-article-single,
body.ulvi-contact .ast-article-single,

body.woocommerce-cart .entry-content,
body.woocommerce-checkout .entry-content,
body.ulvi-contact .entry-content{
  margin-top: 0;
  padding-top: 0;
}

/* ASTRA PSEUDO SPACER FIX */
body.woocommerce-cart .entry-content::before,
body.woocommerce-checkout .entry-content::before,
body.ulvi-contact .entry-content::before{
  content: none;
  display: none;
}

/* PAGE TITLE GAP */
body.woocommerce-cart .entry-content > h1,
body.woocommerce-checkout .entry-content > h1,
body.ulvi-contact .entry-content > h1{
  margin-top: 0;
}