/*
Theme Name: SAGOL CosmetoReg Stable
Author: SAGOL
Version: 2.1.0
Text Domain: sagol-cosmetoreg
*/

/* =========================
   GLOBAL
========================= */

:root{
  --bg:#000000;
  --text:#f8f4ea;
  --muted:#d8ccb1;
  --gold:#dfb86b;
  --gold2:#cb8e33;
  --line:rgba(223,184,107,.25);
  --max:1240px;
}

*{ box-sizing:border-box; }

html, body{
  margin:0;
  padding:0;
  min-height:100%;
}

html{
  scroll-behavior:smooth;
  background:
    linear-gradient(rgba(10,10,10,.72), rgba(10,10,10,.72)),
    url('https://cosmetoreg.com/wp-content/uploads/2026/04/tlov5.png') center center / cover fixed no-repeat !important;
}

body{
  font-family:Inter, Arial, sans-serif;
  color:var(--text);
  line-height:1.6;
  background:transparent !important;
}

#page, .site, .site-content, .sagol-page-content,
.elementor, .elementor-location-single, .elementor-location-archive,
.elementor-section, .elementor-container, .elementor-column, .elementor-widget-wrap{
  background:transparent !important;
}

a{
  color:var(--gold);
  text-decoration:none;
  transition:.3s;
}

a:hover{ opacity:.85; }

img{
  max-width:100%;
  height:auto;
  display:block;
}

.sagol-container{
  width:min(calc(100% - 32px), var(--max));
  margin:0 auto;
}

.sagol-page-content{ min-height:60vh; }

#o-nas, #uslugi, #formularz, #kontakt{
  scroll-margin-top:140px;
}

/* =========================
   HEADER FINAL
========================= */

.site-header{
  position:sticky !important;
  top:0 !important;
  z-index:99999 !important;
  width:100% !important;
  background:rgba(0,0,0,.90) !important;
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(223,184,107,.18);
  transition:.35s ease;
}

.sagol-header-inner{
  min-height:130px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:0 !important;
  padding:12px 0 !important;
  transition:.35s ease;
}

.sagol-branding{
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
}

.sagol-branding img{
  height:100px !important;
  width:auto !important;
  max-height:none !important;
  transition:.35s ease;
}

.sagol-brand-title, .sagol-brand-sub{
  display:none !important;
}

.sagol-header-actions{
  margin-left:auto !important;
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
}

.sagol-nav{
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
}

.sagol-menu{
  list-style:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:18px !important;
  margin:0 !important;
  padding:0 !important;
}

.sagol-menu li{
  margin:0 !important;
  padding:0 !important;
}

.sagol-menu a{
  color:#dfb86b !important;
  font-size:16px !important;
  font-weight:600 !important;
  line-height:1 !important;
}

.sagol-menu a:hover{ color:#f7ddb0 !important; }

.sagol-header-cta{
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:46px !important;
  padding:14px 28px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#f6dda5,#cb8e33) !important;
  color:#111 !important;
  font-weight:700 !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 0 24px rgba(223,184,107,.20) !important;
  white-space:nowrap !important;
  transition:.35s ease;
}

.sagol-header-cta:hover{
  transform:translateY(-2px);
  opacity:1;
}

.sagol-lang-text{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  margin-left:4px !important;
  background:none !important;
  border:none !important;
  box-shadow:none !important;
}

.sagol-lang-text a, .sagol-lang-text span{
  color:#dfb86b !important;
  font-weight:700 !important;
  font-size:14px !important;
  letter-spacing:.08em !important;
  text-decoration:none !important;
}

.sagol-lang-text a:hover{ color:#f7ddb0 !important; }

.sagol-mobile-toggle{ display:none; }

.site-header.scrolled{
  background:rgba(0,0,0,.96) !important;
  box-shadow:0 12px 35px rgba(0,0,0,.38);
}

.site-header.scrolled .sagol-header-inner{
  min-height:105px !important;
  padding:8px 0 !important;
}

.site-header.scrolled .sagol-branding img{ height:78px !important; }

/* =========================
   PREMIUM TITLE
========================= */

.sagol-title{
  position:relative;
  text-align:center;
  margin:55px auto 35px;
}

.sagol-title .elementor-heading-title{
  position:relative;
  display:inline-block;
  color:#f6dfb2 !important;
  font-family:"Cormorant Garamond", serif !important;
  font-size:72px !important;
  font-weight:600 !important;
  line-height:1 !important;
  letter-spacing:2px;
  text-transform:none;
  padding:0 38px;
  text-shadow:0 0 18px rgba(223,184,107,.12);
}

.sagol-title::before, .sagol-title::after{
  content:"";
  position:absolute;
  top:50%;
  width:280px;
  height:1px;
  transform:translateY(-50%);
}

.sagol-title::before{
  right:50%;
  margin-right:155px;
  background:linear-gradient(90deg, transparent, rgba(223,184,107,.9), rgba(223,184,107,.9));
}

.sagol-title::after{
  left:50%;
  margin-left:155px;
  background:linear-gradient(90deg, rgba(223,184,107,.9), rgba(223,184,107,.9), transparent);
}

/* =========================
   KARTY USŁUG
========================= */

.sagol-card{
  background:rgba(17,20,29,.55);
  border:1px solid rgba(223,184,107,.35);
  border-radius:22px;
  padding:22px;
  backdrop-filter:blur(10px);
  box-shadow:0 0 30px rgba(0,0,0,.35);
}

.usluga-karta{
  position:relative !important;
  border:none !important;
  border-radius:32px !important;
  overflow:hidden !important;
  background:linear-gradient(180deg, rgba(18,18,18,.82), rgba(5,5,5,.72)) !important;
  backdrop-filter:blur(14px);
  box-shadow:
    inset 0 0 0 1px rgba(223,184,107,.18),
    0 20px 45px rgba(0,0,0,.45);
  transition:.35s ease;
}

.usluga-karta::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:32px;
  background:linear-gradient(135deg, rgba(255,230,170,.22), transparent 30%, transparent 70%, rgba(223,184,107,.10));
  pointer-events:none;
  z-index:0;
}

.usluga-karta::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:32px;
  box-shadow:inset 0 0 90px rgba(223,184,107,.04);
  pointer-events:none;
  z-index:0;
}

.usluga-karta > *,
.usluga-karta .elementor-widget,
.usluga-karta .elementor-widget-container,
.usluga-karta .elementor-heading-title,
.usluga-karta .elementor-icon,
.usluga-karta img,
.usluga-karta svg{
  position:relative !important;
  z-index:5 !important;
  opacity:1 !important;
  visibility:visible !important;
}

.usluga-karta .elementor-heading-title,
.usluga-karta h1, .usluga-karta h2, .usluga-karta h3, .usluga-karta h4,
.usluga-karta p, .usluga-karta span{
  color:#f7ddb0 !important;
  opacity:1 !important;
  visibility:visible !important;
}

.usluga-karta .elementor-widget-html{
  max-height:0 !important;
  overflow:hidden !important;
  opacity:0 !important;
  visibility:hidden !important;
}

.usluga-karta:hover{
  transform:translateY(-10px);
  box-shadow:
    inset 0 0 0 1px rgba(223,184,107,.55),
    0 0 35px rgba(223,184,107,.12),
    0 35px 70px rgba(0,0,0,.60);
}

.usluga-karta .elementor-button{
  position:relative !important;
  z-index:10 !important;
  border-radius:999px !important;
  background:rgba(0,0,0,.22) !important;
  border:1px solid rgba(223,184,107,.45) !important;
  color:#f7ddb0 !important;
  transition:.3s;
}

.usluga-karta .elementor-button:hover{
  background:#dfb86b !important;
  color:#111 !important;
  box-shadow:0 0 25px rgba(223,184,107,.35);
}

/* =========================
   POPUP USŁUG
========================= */

body.popup-open{ overflow:hidden !important; }

.popup-box{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:100vw !important;
  height:100vh !important;
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(0,0,0,.82) !important;
  backdrop-filter:blur(8px);
  z-index:2147483647 !important;
  padding:24px !important;
  overflow:hidden !important;
  transform:none !important;
}

.popup-box.active{ display:flex !important; }

.popup-content{
  position:relative !important;
  width:min(92vw,760px) !important;
  max-height:82vh !important;
  overflow-y:auto !important;
  background:rgba(8,8,8,.97) !important;
  border:1px solid rgba(223,184,107,.45) !important;
  border-radius:28px !important;
  padding:46px !important;
  color:#f8f4ea !important;
  box-shadow:
    0 0 60px rgba(0,0,0,.75),
    0 0 35px rgba(223,184,107,.12) !important;
}

.popup-content h2{
  color:#f7ddb0 !important;
  font-family:"Cormorant Garamond", serif !important;
  font-size:46px !important;
  line-height:1.1 !important;
  margin:0 0 22px !important;
}

.popup-content p,
.popup-content li,
.popup-content span{
  color:#e7dcc4 !important;
  font-size:18px !important;
  line-height:1.8 !important;
}

.popup-close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  width:44px !important;
  height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#111 !important;
  border:1px solid rgba(223,184,107,.45) !important;
  border-radius:50% !important;
  color:#f7ddb0 !important;
  font-size:30px !important;
  line-height:1 !important;
  cursor:pointer !important;
  z-index:10 !important;
  transition:.3s;
}

.popup-close:hover{
  background:#dfb86b !important;
  color:#111 !important;
}

/* =========================
   O NAS — PREMIUM CARDS
========================= */

.onas-card{
  position:relative !important;
  overflow:hidden !important;
  background:linear-gradient(180deg, rgba(18,18,18,.72), rgba(5,5,5,.58)) !important;
  border:none !important;
  border-radius:28px !important;
  padding:34px !important;
  backdrop-filter:blur(12px);
  box-shadow:
    inset 0 0 0 1px rgba(223,184,107,.22),
    inset 0 0 80px rgba(223,184,107,.035),
    0 22px 50px rgba(0,0,0,.45);
  transition:.35s ease;
}

.onas-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:2px;
  background:linear-gradient(90deg, transparent, rgba(223,184,107,.85), transparent);
  z-index:0;
}

.onas-card > *,
.onas-card .elementor-widget,
.onas-card .elementor-widget-container{
  position:relative !important;
  z-index:5 !important;
  opacity:1 !important;
  visibility:visible !important;
}

.onas-card:hover{
  transform:translateY(-6px);
  box-shadow:
    inset 0 0 0 1px rgba(223,184,107,.45),
    inset 0 0 90px rgba(223,184,107,.05),
    0 28px 65px rgba(0,0,0,.55);
}

.onas-card p,
.onas-card span,
.onas-card h1,
.onas-card h2,
.onas-card h3,
.onas-card h4{
  color:#f3e7c8 !important;
  opacity:1 !important;
  visibility:visible !important;
}

.onas-card p{
  font-size:18px;
  line-height:1.8;
}

.onas-card strong{ color:#f7ddb0; }

/* =========================
   KAFELKI PREMIUM HERO
========================= */

.premium-box-row{
  width:100% !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:flex !important;
  justify-content:center !important;
  gap:24px !important;
}

.premium-box{
  position:relative !important;
  flex:1 1 0 !important;
  min-width:320px !important;
  max-width:none !important;
  min-height:190px !important;
  height:190px !important;
  padding:20px 18px !important;
  overflow:hidden !important;
  background:linear-gradient(180deg, rgba(12,12,12,.85), rgba(6,6,6,.92)) !important;
  border:1px solid rgba(223,184,107,.18) !important;
  border-radius:28px !important;
  transition:.35s ease;
  box-shadow:
    0 0 30px rgba(223,184,107,.08),
    inset 0 0 50px rgba(223,184,107,.03);
}

.premium-box::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(223,184,107,.7), transparent);
  z-index:0;
}

.premium-box::after{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:120px;
  height:2px;
  background:linear-gradient(90deg, transparent, #dfb86b, transparent);
  z-index:0;
}

.premium-box > *,
.premium-box .elementor-widget,
.premium-box .elementor-widget-container,
.premium-box .elementor-heading-title,
.premium-box .elementor-icon,
.premium-box img,
.premium-box svg{
  position:relative !important;
  z-index:5 !important;
  opacity:1 !important;
  visibility:visible !important;
}

.premium-box h1,
.premium-box h2,
.premium-box h3,
.premium-box h4,
.premium-box p,
.premium-box span,
.premium-box .elementor-heading-title{
  color:#f7ddb0 !important;
  opacity:1 !important;
  visibility:visible !important;
}

.premium-box .elementor-widget-wrap,
.premium-box .e-con-inner{
  min-height:190px !important;
  height:190px !important;
}

.premium-box:hover{
  transform:translateY(-8px);
  border-color:rgba(223,184,107,.45) !important;
  box-shadow:
    0 0 40px rgba(223,184,107,.15),
    0 20px 40px rgba(0,0,0,.45);
}

/* =========================
   DYMKI - STARSZE POMOCNICZE
========================= */

.dymek-wrap{
  position:relative;
  display:inline-block;
}

.dymek-btn{
  background:#c62828;
  color:#fff;
  border:none;
  padding:12px 20px;
  border-radius:8px;
  cursor:pointer;
}

.dymek-box{
  display:none;
  position:absolute;
  top:55px;
  left:0;
  width:260px;
  background:#fff;
  color:#222;
  padding:14px;
  border-radius:12px;
  box-shadow:0 10px 30px rgba(0,0,0,.15);
  z-index:999;
}

.dymek-box.show{ display:block; }

.dymek-box::before{
  content:"";
  position:absolute;
  top:-10px;
  left:20px;
  border-left:10px solid transparent;
  border-right:10px solid transparent;
  border-bottom:10px solid #fff;
}

/* =========================
   FOOTER
========================= */

.site-footer{
  margin-top:72px;
  border-top:1px solid var(--line);
  background:rgba(6,8,13,.92);
  padding:56px 0 28px;
  backdrop-filter:blur(12px);
}

.sagol-footer-grid{
  display:grid;
  grid-template-columns:1.3fr 1fr 1fr 1fr;
  gap:28px;
}

.site-footer h3,
.site-footer h4{
  margin:0 0 14px;
  color:#f7ddb0;
  font-family:"Cormorant Garamond", serif;
}

.sagol-footer-links{
  list-style:none;
  margin:0;
  padding:0;
}

.sagol-footer-links li{ margin:0 0 8px; }

.sagol-footer-bottom{
  margin-top:28px;
  padding-top:18px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:14px;
  text-align:center;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width:980px){
  .sagol-header-inner{
    min-height:110px !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    padding:12px 0 !important;
  }

  .sagol-branding img{ height:82px !important; }

  .sagol-header-actions{ gap:14px !important; }

  .sagol-menu{
    flex-wrap:wrap;
    justify-content:center !important;
    gap:14px !important;
  }

  .sagol-footer-grid{ grid-template-columns:1fr 1fr; }

  .sagol-title::before, .sagol-title::after{ width:180px; }
}

@media (max-width:768px){
  .site-header{ top:0 !important; }

  .sagol-header-inner{
    min-height:82px !important;
    padding:8px 16px !important;
    justify-content:space-between !important;
    flex-wrap:wrap !important;
  }

  .sagol-branding img{ height:58px !important; }

  .sagol-mobile-toggle{
    display:flex !important;
    flex-direction:column;
    justify-content:center;
    gap:6px;
    width:46px;
    height:46px;
    background:rgba(0,0,0,.35);
    border:1px solid rgba(223,184,107,.35);
    border-radius:12px;
    cursor:pointer;
  }

  .sagol-mobile-toggle span{
    display:block;
    width:22px;
    height:2px;
    margin:0 auto;
    background:#dfb86b;
    border-radius:2px;
  }

  .sagol-header-actions{
    display:none !important;
    width:100% !important;
    margin-left:0 !important;
    padding-top:16px !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:16px !important;
  }

  .site-header.mobile-open .sagol-header-actions{
    display:flex !important;
  }

  .site-header.mobile-open .sagol-nav{
    width:100% !important;
    justify-content:center !important;
  }

  .site-header.mobile-open .sagol-menu{
    width:100% !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:14px !important;
  }

  .site-header.mobile-open .sagol-header-cta{
    width:auto !important;
    margin:0 !important;
  }

  .sagol-lang-text{
    margin-top:4px !important;
    padding:8px 14px !important;
    border:1px solid rgba(223,184,107,.35) !important;
    border-radius:999px !important;
    background:rgba(0,0,0,.35) !important;
  }

  .sagol-lang-text a,
  .sagol-lang-text span{
    font-family:Inter, Arial, sans-serif !important;
    font-size:15px !important;
    font-weight:700 !important;
    letter-spacing:.12em !important;
    color:#dfb86b !important;
  }

  .sagol-title .elementor-heading-title{
    font-size:42px !important;
    padding:0 20px;
  }

  .sagol-title::before,
  .sagol-title::after{
    width:90px;
  }

  .sagol-title::before{ margin-right:95px; }

  .sagol-title::after{ margin-left:95px; }

  .premium-box-row{
    flex-direction:column !important;
    align-items:center !important;
  }

  .premium-box{
    width:100% !important;
    min-width:0 !important;
  }
}

@media (max-width:640px){
  .sagol-footer-grid{ grid-template-columns:1fr; }

  .sagol-branding img{ height:58px !important; }

  .sagol-header-inner{ min-height:82px !important; }

  .sagol-menu a{ font-size:15px !important; }

  .sagol-header-cta{
    padding:12px 18px !important;
    font-size:14px !important;
  }

  .elementor-heading-title{
    font-size:46px !important;
    line-height:1.05 !important;
  }

  .hero-title .elementor-heading-title{
    font-size:44px !important;
    line-height:1.05 !important;
  }

  .sagol-title .elementor-heading-title{
    font-size:34px !important;
    letter-spacing:3px;
    padding:0 20px;
  }

  .sagol-title::before,
  .sagol-title::after{
    width:70px;
    top:58%;
  }

  .sagol-title::before{ margin-right:85px; }

  .sagol-title::after{ margin-left:85px; }

  .popup-content{
    padding:34px 24px !important;
    max-height:84vh !important;
  }

  .popup-content h2{ font-size:34px !important; }

  .popup-content p,
  .popup-content li,
  .popup-content span{
    font-size:16px !important;
  }
}

/* MOBILE FIX — kafelki hero pełna szerokość */

@media (max-width:768px){

  .premium-box-row,
  .premium-box-row.elementor-section,
  .premium-box-row .elementor-container,
  .premium-box-row.e-con,
  .premium-box-row .e-con-inner{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
  }

  .premium-box-row .elementor-column,
  .premium-box-row .elementor-widget-wrap,
  .premium-box-row .e-con,
  .premium-box-row .elementor-element{
    width:100% !important;
    max-width:360px !important;
    flex:0 0 auto !important;
  }

  .premium-box{
    width:100% !important;
    max-width:360px !important;
    min-width:0 !important;
    height:auto !important;
    min-height:145px !important;
    padding:22px 16px !important;
  }
}

/* NAPRAWA WIDOCZNOŚCI NAGŁÓWKÓW SEKCJI */

.elementor-widget-heading,
.elementor-widget-heading .elementor-widget-container,
.elementor-widget-heading .elementor-heading-title{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  position:relative !important;
  z-index:20 !important;
}

.elementor-heading-title,
h1.elementor-heading-title,
h2.elementor-heading-title,
h3.elementor-heading-title{
  color:#f6dfb2 !important;
  opacity:1 !important;
  visibility:visible !important;
}

.sagol-title,
.sagol-title .elementor-heading-title{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  position:relative !important;
  z-index:30 !important;
}

.hero-title,
.hero-title .elementor-heading-title{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  color:#f6dfb2 !important;
  position:relative !important;
  z-index:30 !important;
}