/* drhuber.pl - style dla stron budowanych w Elementorze (Start, O mnie, Kontakt) oraz zwykłych stron WP.
   Klasy dh-* nadaje skrypt kod/skrypty/buduj-strony.php; Marcin może je też wpisać ręcznie w Zaawansowane > Klasy CSS. */

/* ===== Zwykła strona WP (polityka) ===== */
.dh-tekst--strona{font-size:16px}
.dh-tekst--strona h2{font-size:26px;margin:1.8em 0 .5em}
.dh-tekst--strona ul{margin:0 0 1.2em 1.2em}
.dh-tekst--strona li{margin-bottom:.4em}

/* ===== Sekcje ===== */
.e-con.dh-sekcja-e{padding-top:72px;padding-bottom:72px}
.e-con.dh-tlo-2{background:var(--dh-tlo-2)}
.e-con.dh-sekcja-cta{padding:0;--content-width:100%;--width:100%}
.e-con.dh-sekcja-cta .elementor-widget-shortcode,.e-con.dh-sekcja-cta .elementor-widget-container{width:100%}
.e-con .elementor-widget{width:100%}
@media (max-width:767px){.e-con.dh-sekcja-e{padding-top:52px;padding-bottom:52px}}

/* ===== Typografia widgetów ===== */
.elementor-widget-heading.dh-etykieta-w .elementor-heading-title{font-family:var(--dh-f-sans);font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--dh-zloto);margin:0 0 14px}
.dh-srodek-w .elementor-heading-title,.dh-srodek-w{text-align:center}
.elementor-widget-heading.dh-naglowek-w .elementor-heading-title{font-family:var(--dh-f-serif);font-size:clamp(30px,3.4vw,46px);line-height:1.15;color:var(--dh-naglowek);margin:0 0 20px}
.elementor-widget-heading.dh-naglowek-h1-w .elementor-heading-title{font-family:var(--dh-f-serif);font-size:clamp(38px,5vw,64px);line-height:1.1;color:var(--dh-naglowek);margin:0 0 20px}
.elementor-widget-text-editor.dh-wstep-w{max-width:780px;margin:0 auto 44px;text-align:center;font-size:18px;line-height:1.75}
.elementor-widget-text-editor.dh-tekst-w{font-size:18px;line-height:1.8}
.elementor-widget-text-editor p:last-child{margin-bottom:0}

/* ===== Przyciski Elementora w stylu motywu ===== */
.elementor-widget-button.dh-przycisk-w{width:auto}
.elementor-widget-button.dh-przycisk-w .elementor-button{background:var(--dh-akcent);color:#fff;border:1px solid var(--dh-akcent);border-radius:40px;padding:16px 32px;font-family:var(--dh-f-sans);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;line-height:1;transition:all .3s ease}
.elementor-widget-button.dh-przycisk-w .elementor-button:hover{background:var(--dh-akcent-ciemny);border-color:var(--dh-akcent-ciemny);transform:translateY(-2px)}
.elementor-widget-button.dh-przycisk-w--obrys .elementor-button{background:transparent;border-color:var(--dh-naglowek);color:var(--dh-naglowek)}
.elementor-widget-button.dh-przycisk-w--obrys .elementor-button:hover{background:var(--dh-akcent);border-color:var(--dh-akcent);color:#fff}
.elementor-widget-button.dh-przycisk-w--maly .elementor-button{padding:12px 22px;font-size:11px}

/* ===== Hero (Start, O mnie) ===== */
.e-con.dh-home-hero{padding-top:36px;padding-bottom:72px}
.elementor-widget-heading.dh-hero-h1 .elementor-heading-title{font-family:var(--dh-f-serif);font-size:clamp(38px,4.6vw,66px);line-height:1.08;color:var(--dh-naglowek);margin:0 0 24px}
.elementor-widget-text-editor.dh-hero-lead{font-size:18px;line-height:1.75;max-width:560px;margin-bottom:30px}
.elementor-widget-text-editor.dh-hero-dowody{margin-top:28px;font-size:13px;letter-spacing:.04em;color:var(--dh-tekst-jasny)}
.elementor-widget-text-editor.dh-hero-dowody strong{color:var(--dh-naglowek)}
.e-con.dh-hero-przyciski{padding:0;flex-direction:row;flex-wrap:wrap;gap:14px}
.e-con.dh-hero-przyciski .elementor-widget-button{width:auto}
.e-con.dh-hero-foto{position:relative}
.e-con.dh-hero-foto::before{content:"";position:absolute;inset:26px -26px -26px 26px;border:1px solid var(--dh-zloto);border-radius:var(--dh-r);z-index:0;opacity:.6}
.elementor-widget-image.dh-hero-obraz{position:relative;z-index:1}
.elementor-widget-image.dh-hero-obraz img{border-radius:var(--dh-r);box-shadow:var(--dh-cien);aspect-ratio:3/4;object-fit:cover;width:100%;max-height:760px}
.elementor-widget-image.dh-portret img{aspect-ratio:4/5}
@media (max-width:1180px){
  .e-con.dh-hero-foto::before{display:none}
  .e-con.dh-home-hero{padding-top:20px}
  .elementor-widget-image.dh-hero-obraz img{max-height:520px}
}

/* ===== Pasek zaufania ===== */
.e-con.dh-home-pasek{padding-top:0;padding-bottom:60px}
.e-con.dh-pasek-el{background:var(--dh-biel);border-radius:var(--dh-r);padding:28px 26px;flex:1 1 220px;box-shadow:0 2px 10px rgba(31,26,23,.04)}
.elementor-widget-heading.dh-pasek-liczba .elementor-heading-title{font-family:var(--dh-f-ozdobny);font-size:28px;letter-spacing:.06em;text-transform:uppercase;color:var(--dh-zloto);margin:0 0 10px}
.e-con.dh-pasek-el .elementor-widget-text-editor{font-size:14px;line-height:1.6}

/* ===== Karty (kwalifikacje, zabiegi) ===== */
.e-con.dh-karta{background:var(--dh-biel);border-radius:var(--dh-r);padding:34px 32px;flex:1 1 300px;box-shadow:0 2px 10px rgba(31,26,23,.04);transition:transform .35s ease,box-shadow .35s ease}
.e-con.dh-karta:hover{transform:translateY(-6px);box-shadow:0 0 0 1px var(--dh-zloto),var(--dh-cien)}
.elementor-widget-heading.dh-karta-tytul .elementor-heading-title{font-family:var(--dh-f-serif);font-size:24px;color:var(--dh-naglowek);margin:0 0 14px}
.e-con.dh-karta ul{margin:0 0 18px 1.1em;padding:0;font-size:15px;line-height:1.6}
.e-con.dh-karta li{margin-bottom:.45em}
.e-con.dh-karta .elementor-widget-button{margin-top:auto}

/* ===== O mnie (zajawka na Start) ===== */
.elementor-widget-image.dh-omnie-foto img{border-radius:var(--dh-r);aspect-ratio:4/5;object-fit:cover;width:100%}

.elementor-widget-image.dh-foto-zabieg img{aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}

/* ===== Opinie ===== */
.e-con.dh-opinia{background:var(--dh-biel);border-radius:var(--dh-r);padding:34px 32px;flex:1 1 300px;position:relative;box-shadow:0 2px 10px rgba(31,26,23,.04)}
.e-con.dh-opinia::before{content:"\201D";position:absolute;top:10px;right:26px;font-family:var(--dh-f-serif);font-size:96px;line-height:1;color:var(--dh-zloto);opacity:.35}
.elementor-widget-text-editor.dh-opinia-tekst{font-family:var(--dh-f-serif);font-size:20px;line-height:1.5;color:var(--dh-naglowek);margin-bottom:18px}
.elementor-widget-text-editor.dh-opinia-podpis{font-size:13px;line-height:1.5;color:var(--dh-tekst-jasny)}
.elementor-widget-text-editor.dh-opinia-podpis strong{color:var(--dh-naglowek)}
.elementor-widget-text-editor.dh-opinie-link{margin-top:30px;text-align:center;font-size:14px}

/* ===== Układ redakcyjny (Start v2) ===== */
.elementor-widget-heading .elementor-heading-title em{font-style:italic;color:var(--dh-zloto);font-weight:400}
.elementor-widget-heading.dh-etykieta-w--kreska .elementor-heading-title{display:flex;align-items:center;gap:14px}
.elementor-widget-heading.dh-etykieta-w--kreska .elementor-heading-title::before{content:"";display:inline-block;width:34px;height:1px;background:var(--dh-zloto)}
.dh-srodek-w.dh-etykieta-w--kreska .elementor-heading-title{justify-content:center}
/* hero pełnoekranowe */
.e-con.dh-hero-e{padding-top:60px;padding-bottom:110px;position:relative;isolation:isolate}
.e-con.dh-hero-e>.e-con-inner{position:relative;z-index:1}
.e-con.dh-hero-e::after{z-index:0}
.e-con.dh-hero-tekst-e{max-width:660px;width:auto}
.e-con.dh-hero-e .dh-hero-h1 .elementor-heading-title{font-size:clamp(38px,4vw,60px);line-height:1.08}
.e-con.dh-hero-e .dh-hero-lead{font-size:18px;line-height:1.7;max-width:520px}
@media (max-width:1180px){.e-con.dh-hero-e{padding-top:32px;padding-bottom:90px}}
@media (max-width:767px){
  .e-con.dh-hero-e{padding-top:20px;padding-bottom:120px;justify-content:flex-end}
  .e-con.dh-hero-e .dh-hero-h1 .elementor-heading-title{font-size:36px}
  .e-con.dh-hero-e .dh-hero-lead{font-size:16px}
}
/* plakietka opinii */
.elementor-widget-html.dh-plakietka-w{position:absolute;right:0;bottom:-40px;width:auto;z-index:2}
.dh-plakietka{display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px 30px;background:var(--dh-biel);border-radius:var(--dh-r);box-shadow:0 18px 40px rgba(31,26,23,.12);color:var(--dh-naglowek);text-align:center;line-height:1.3;transition:transform .3s ease}
.dh-plakietka:hover{transform:translateY(-4px);color:var(--dh-naglowek)}
.dh-plakietka__gwiazdki{color:var(--dh-zloto);font-size:14px;letter-spacing:2px}
.dh-plakietka strong{font-family:var(--dh-f-serif);font-size:20px;font-weight:500}
.dh-plakietka span:last-child{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--dh-tekst-jasny)}
@media (max-width:767px){.elementor-widget-html.dh-plakietka-w{right:auto;left:0;bottom:-30px}.dh-plakietka{padding:14px 20px;flex-direction:row;gap:12px}.dh-plakietka strong{font-size:16px}.dh-plakietka span:last-child{display:none}}
/* pasek zabiegów */
.e-con.dh-pasek-e{background:#2a201b;--content-width:100%;--width:100%;padding:0;margin-top:0}
.e-con.dh-pasek-e .elementor-widget-html,.e-con.dh-pasek-e .elementor-widget-container{width:100%}
.dh-marquee{overflow:hidden;white-space:nowrap;padding:20px 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.dh-marquee__tor{display:inline-flex;align-items:center;gap:36px;padding-right:36px;animation:dh-marquee 40s linear infinite;will-change:transform}
.dh-marquee:hover .dh-marquee__tor{animation-play-state:paused}
.dh-marquee span{font-family:var(--dh-f-serif);font-style:italic;font-size:19px;color:#f1eadf;letter-spacing:.02em}
.dh-marquee i{font-style:normal;color:var(--dh-zloto);font-size:12px}
@keyframes dh-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.dh-marquee__tor{animation:none}}
/* linia kwalifikacji pod tekstem */
.elementor-widget-text-editor.dh-linia-kwalifikacji{margin:22px 0 26px;padding-top:18px;border-top:1px solid var(--dh-ramka);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--dh-zloto);line-height:1.9}
/* kolumny zabiegów (bez kart) */
.e-con.dh-zab-siatka{align-items:stretch}
.e-con.dh-zab-kolumna{flex:1 1 210px;padding:8px 26px 8px 26px;border-left:1px solid var(--dh-ramka)}
.e-con.dh-zab-kolumna:first-child{border-left:0;padding-left:0}
.elementor-widget-heading.dh-zab-tytul .elementor-heading-title{font-family:var(--dh-f-serif);font-size:23px;color:var(--dh-naglowek);margin:0 0 14px;line-height:1.2;min-height:2.4em}
@media (max-width:767px){.elementor-widget-heading.dh-zab-tytul .elementor-heading-title{min-height:0}}
.e-con.dh-zab-kolumna ul{margin:0 0 16px;padding:0;list-style:none;font-size:15px;line-height:1.55}
.e-con.dh-zab-kolumna li{padding:7px 0;border-bottom:1px solid rgba(227,220,210,.7)}
.e-con.dh-zab-kolumna li:last-child{border-bottom:0}
.elementor-widget-button.dh-link-w .elementor-button{background:none;border:0;padding:6px 0;color:var(--dh-zloto);font-size:12px;letter-spacing:.16em;border-radius:0;border-bottom:1px solid var(--dh-zloto)}
.elementor-widget-button.dh-link-w .elementor-button:hover{background:none;color:var(--dh-naglowek);border-color:var(--dh-naglowek);transform:none}
.e-con.dh-zab-kolumna .elementor-widget-button{margin-top:auto}
.elementor-widget-text-editor.dh-zab-stopka{margin-top:40px;font-size:15px;color:var(--dh-tekst-jasny)}
@media (max-width:1180px){.e-con.dh-zab-kolumna{flex-basis:calc(33.33% - 1px)}.e-con.dh-zab-kolumna:nth-child(4){border-left:0;padding-left:0}}
@media (max-width:767px){.e-con.dh-zab-kolumna{flex-basis:100%;border-left:0;padding:0 0 22px;border-bottom:1px solid var(--dh-ramka)}}
/* cytaty bez pudełek */
.elementor-widget-text-editor.dh-cytat-duzy{max-width:820px;margin:10px auto 40px;text-align:center;font-family:var(--dh-f-serif);font-style:italic;font-size:clamp(24px,2.6vw,34px);line-height:1.4;color:var(--dh-naglowek)}
.elementor-widget-text-editor.dh-cytat-maly{flex:1 1 320px;font-family:var(--dh-f-serif);font-style:italic;font-size:20px;line-height:1.5;color:var(--dh-naglowek);padding-left:22px;border-left:2px solid var(--dh-zloto)}
.e-con.dh-cytaty-male{max-width:960px;margin:0 auto}
.dh-cytat-podpis{font-family:var(--dh-f-sans)!important;font-style:normal;font-size:12px!important;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--dh-tekst-jasny)!important;margin-top:14px!important}
/* lista kwalifikacji (O mnie) */
.dh-lista-kwal{margin:0}
.dh-lista-kwal>div{display:grid;grid-template-columns:200px 1fr;gap:8px 28px;padding:20px 0;border-bottom:1px solid var(--dh-ramka)}
.dh-lista-kwal>div:first-child{padding-top:0}
.dh-lista-kwal>div:last-child{border-bottom:0}
.dh-lista-kwal dt{font-family:var(--dh-f-sans);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--dh-zloto);margin:0;padding-top:4px}
.dh-lista-kwal dd{margin:0;font-size:16px;line-height:1.7}
@media (max-width:640px){.dh-lista-kwal>div{grid-template-columns:1fr}}

/* ===== Kontakt ===== */
.e-con.dh-kontakt-naglowek{padding-bottom:20px;text-align:center}
.e-con.dh-kontakt-tresc{padding-top:20px}
.elementor-widget-heading.dh-kontakt-tytul .elementor-heading-title{font-family:var(--dh-f-ozdobny);font-size:26px;letter-spacing:.1em;text-transform:uppercase;color:var(--dh-naglowek);margin:0 0 18px}
.e-con.dh-kontakt-info .elementor-widget-text-editor p{margin:0 0 12px;font-size:16px}
.dh-kontakt-adres{font-size:18px!important;color:var(--dh-naglowek)}
a.dh-kontakt-telefon{font-family:var(--dh-f-serif);font-size:32px;color:var(--dh-naglowek);font-weight:500}
a.dh-kontakt-telefon:hover{color:var(--dh-akcent)}
.dh-mapa{display:block;width:100%;border-radius:var(--dh-r);margin-top:22px;filter:saturate(.7) contrast(1.05)}
