/*
Theme Name: RH Detailing Studio (Divi Child)
Theme URI: https://rhdetailing.sk
Description: Divi child téma pre RH Detailing Studio — čierno-zlatá identita, hex-LED motív, štýlovanie natívnych Divi modulov (slider, blurby, countery, galéria, formulár). Návrh: Michal Ochránek.
Author: Michal Ochránek
Author URI: https://michalochranek.sk
Template: Divi
Version: 2.3.0
License: Private
Text Domain: rhdetailing-divi
*/

/* ============================================================
   Design tokeny — čierna + zlatá podľa loga · hex-LED motív
   ============================================================ */
:root{
  --bg:#0a0a0d; --bg2:#0e0e13; --panel:#14141a; --panel2:#101016;
  --line:rgba(255,255,255,.08); --line2:rgba(255,255,255,.15);
  --gold:#d4af4e; --gold2:#e8cc74; --gold-d:#a8842f;
  --ink:#f2f0ea; --mut:#a9a599; --mut2:#736f66;
  --r:16px; --rs:11px; --shadow:0 22px 54px rgba(0,0,0,.5);
  --ease:cubic-bezier(.22,.61,.36,1);
  --grad:linear-gradient(110deg,var(--gold),var(--gold2));
}

/* ============================================================
   Základ — tmavý web, typografia
   ============================================================ */
body{
  background-color:var(--bg) !important;
  color:var(--ink);
  font-family:'Inter',system-ui,Segoe UI,Roboto,sans-serif !important;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
#page-container{ background-color:var(--bg); }

h1,h2,h3,h4,
.et_pb_module h1,.et_pb_module h2,.et_pb_module h3,.et_pb_module h4,
.et_pb_slide_title{
  font-family:'Oswald',system-ui,sans-serif !important;
  line-height:1.12; font-weight:600 !important;
  letter-spacing:.02em; text-transform:uppercase;
  color:var(--ink);
}
.et_pb_text h1{ font-size:clamp(2rem,4.4vw,3.2rem); margin:.3em 0 .2em; }
.et_pb_text h2{ font-size:clamp(1.8rem,3.4vw,2.7rem); margin:.35em 0 .35em; }
.et_pb_text p{ color:var(--mut); line-height:1.7; }
.et_pb_text a{ color:var(--gold2); }

/* pomocné triedy v text moduloch */
.rh-eyebrow{ display:inline-flex; align-items:center; gap:10px; font-family:'Oswald',sans-serif !important; font-size:.76rem !important; font-weight:500; letter-spacing:.3em; text-transform:uppercase; color:var(--gold) !important; margin-bottom:4px; }
.rh-eyebrow::before{ content:""; width:26px; height:2px; background:var(--grad); border-radius:2px; }
.rh-center{ text-align:center; }
.rh-center .rh-eyebrow::before{ display:none; }
.rh-sub{ font-size:1.03rem !important; }
.rh-sechead{ max-width:700px; margin-bottom:26px; }
.rh-center.rh-sechead{ margin-inline:auto; }
.rh-h2s{ font-size:clamp(1.7rem,3.2vw,2.4rem) !important; }
.crumb{ font-size:.85rem !important; color:var(--mut2) !important; }
.crumb a{ color:var(--mut2) !important; } .crumb a:hover{ color:var(--gold2) !important; }
.rh-pnote{ color:var(--mut2) !important; font-size:.85rem !important; }
.rh-pnote b{ color:var(--mut); }

/* hex-LED motív — sekcie s triedou rh-hex */
.rh-hex{ position:relative; }
.rh-hex::before{ content:""; position:absolute; inset:0; pointer-events:none; opacity:.05; z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='97' viewBox='0 0 56 97'%3E%3Cpath d='M28 2L52 16v28L28 58 4 44V16zM28 60l24 14v21H4V74z' fill='none' stroke='%23d4af4e' stroke-width='2'/%3E%3C/svg%3E");
  background-size:56px 97px; }
.rh-hex > .et_pb_row{ position:relative; z-index:2; }
.rh-line{ border-top:1px solid var(--line); border-bottom:1px solid var(--line); }

/* progress bar */
#rh-progress{ position:fixed; top:0; left:0; height:3px; width:0; background:var(--grad); z-index:100000; box-shadow:0 0 10px rgba(212,175,78,.7); }

/* ============================================================
   Tlačidlá — zlatý default + varianty cez module_class
   ============================================================ */
.et_pb_button{
  font-family:'Oswald',sans-serif !important; font-weight:600 !important;
  letter-spacing:.05em !important; font-size:.94rem !important;
  text-transform:uppercase !important; padding:13px 26px !important;
  border-radius:11px !important; border:1px solid transparent !important;
  background:linear-gradient(110deg,#d4af4e,#e8cc74) !important;
  color:#151004 !important; box-shadow:0 10px 28px rgba(212,175,78,.28);
  transition:.25s var(--ease) !important;
}
.et_pb_button:hover{ transform:translateY(-2px); box-shadow:0 16px 38px rgba(212,175,78,.42); color:#151004 !important; padding:13px 26px !important; }
.et_pb_button::after{ display:none !important; }
.et_pb_button.rh-btn-ghost, .rh-btn-ghost .et_pb_button{
  background:rgba(255,255,255,.03) !important; color:var(--ink) !important;
  border:1px solid var(--line2) !important; box-shadow:none; font-weight:500 !important;
}
.et_pb_button.rh-btn-ghost:hover, .rh-btn-ghost .et_pb_button:hover{ border-color:var(--gold) !important; color:var(--gold2) !important; }
.et_pb_button.rh-btn-white, .rh-btn-white .et_pb_button{
  background:#fff !important; color:#111 !important; box-shadow:none;
}
.et_pb_button.rh-btn-white:hover, .rh-btn-white .et_pb_button:hover{ box-shadow:0 14px 30px rgba(0,0,0,.4); color:#111 !important; }
.rh-btn-inline{ display:inline-block; margin:0 7px 10px !important; }

/* ============================================================
   HERO — Divi Fullwidth Slider (module_class rh-hero)
   ============================================================ */
.rh-hero.et_pb_slider{ background:var(--bg); }
.rh-hero .et_pb_slide{ position:relative; min-height:88vh; background-size:cover; background-position:center 55%; }
.rh-hero .et_pb_slide::before{ content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg,rgba(8,8,11,.93) 0%,rgba(8,8,11,.72) 36%,rgba(8,8,11,.24) 68%,rgba(8,8,11,.28) 100%),
             linear-gradient(0deg,rgba(8,8,11,.72) 0%,transparent 34%); }
.rh-hero .et_pb_container{ position:relative; z-index:2; max-width:1200px !important; width:90% !important; display:flex; align-items:center; min-height:88vh; }
.rh-hero .et_pb_slide_description{
  text-align:left !important; max-width:640px; width:100%;
  margin:0 !important; padding:110px 0 120px !important; float:none;
}
.rh-hero .et_pb_slide_title{
  font-size:clamp(2.2rem,4.3vw,3.6rem) !important; color:#fff !important;
  line-height:1.08 !important; margin-bottom:.3em;
}
.rh-hero .et_pb_slide_title small{
  display:block; font-size:.76rem; font-weight:500; letter-spacing:.3em;
  color:var(--gold2); margin-bottom:18px;
}
.rh-hero .et_pb_slide_title small::before{ content:""; display:inline-block; width:26px; height:2px; background:var(--grad); border-radius:2px; vertical-align:middle; margin-right:10px; }
.rh-hero .et_pb_slide_title span{ color:transparent; background:var(--grad); -webkit-background-clip:text; background-clip:text; }
.rh-hero .et_pb_slide_content{ font-size:clamp(.98rem,1.4vw,1.12rem); color:rgba(242,240,234,.85); max-width:520px; }
.rh-hero .et_pb_slide_content .lead{ color:rgba(242,240,234,.85); }
.rh-hero .et_pb_more_button{ margin-top:22px; }
/* CTA odkazy v obsahu slidu (zlatý + ghost/biely) */
.rh-slide-links{ margin-top:26px !important; display:flex; gap:14px; flex-wrap:wrap; }
.rh-gold{ display:inline-flex; align-items:center; gap:9px; font-family:'Oswald',sans-serif; font-weight:600; letter-spacing:.05em; font-size:.94rem; text-transform:uppercase; padding:13px 24px; border-radius:11px; border:1px solid transparent; background:var(--grad); color:#151004 !important; box-shadow:0 10px 28px rgba(212,175,78,.28); transition:.25s var(--ease); }
.rh-gold:hover{ transform:translateY(-2px); box-shadow:0 16px 38px rgba(212,175,78,.42); color:#151004 !important; }
.rh-ghost{ display:inline-flex; align-items:center; gap:9px; font-family:'Oswald',sans-serif; font-weight:500; letter-spacing:.05em; font-size:.94rem; text-transform:uppercase; padding:13px 24px; border-radius:11px; border:1px solid var(--line2); color:var(--ink) !important; background:rgba(255,255,255,.03); transition:.25s var(--ease); }
.rh-ghost:hover{ border-color:var(--gold); color:var(--gold2) !important; transform:translateY(-2px); }
.rh-ghost-w{ background:#fff; color:#111 !important; border-color:#fff; }
.rh-ghost-w:hover{ color:#111 !important; border-color:#fff; box-shadow:0 14px 30px rgba(0,0,0,.4); }
.rh-hero .hmini{ margin-top:26px; padding-top:16px; border-top:1px solid rgba(255,255,255,.22); color:rgba(242,240,234,.72); font-size:.92rem; }
.rh-hero .hmini b{ font-family:'Oswald',sans-serif; color:var(--gold2); font-weight:600; font-size:1.05rem; }
/* ovládanie slidera — pásiky namiesto bodiek */
.rh-hero .et-pb-controllers{ bottom:26px; text-align:left; padding-left:5%; }
.rh-hero .et-pb-controllers a{ width:64px; height:4px; border-radius:99px; background:rgba(255,255,255,.22); text-indent:-9999px; margin-right:10px; }
.rh-hero .et-pb-controllers a.et-pb-active-control{ background:var(--grad); }
.rh-hero .et-pb-slider-arrows a{ width:46px; height:46px; border-radius:50%; border:1px solid rgba(255,255,255,.3); background:rgba(255,255,255,.06); color:#fff; }
.rh-hero .et-pb-arrow-prev{ left:22px; } .rh-hero .et-pb-arrow-next{ right:22px; }

/* ============================================================
   Trust pás — blurby rh-ti
   ============================================================ */
.rh-ti.et_pb_blurb{ margin-bottom:0 !important; }
.rh-ti .et-pb-icon{ color:var(--gold) !important; font-size:26px !important; }
.rh-ti .et_pb_module_header{ font-size:.92rem !important; letter-spacing:.03em; margin-bottom:2px; }
.rh-ti .et_pb_blurb_description{ color:var(--mut); font-size:.9rem; line-height:1.5; }
/* rovnaký :empty fallback ako pri rh-ci — hodiny, náradie, hviezda, pin */
.rh-ti .et-pb-icon:empty::before{ font-family:'ETmodules' !important; font-weight:400; font-style:normal; }
.rh-ti:nth-of-type(1) .et-pb-icon:empty::before{ content:"\7d"; }
.rh-ti:nth-of-type(2) .et-pb-icon:empty::before{ content:"\e035"; }
.rh-ti:nth-of-type(3) .et-pb-icon:empty::before{ content:"\e031"; }
.rh-ti:nth-of-type(4) .et-pb-icon:empty::before{ content:"\e01d"; }

/* ============================================================
   Služby — blurb karty rh-svc
   ============================================================ */
.rh-svc.et_pb_blurb{
  background:var(--panel); border:1px solid var(--line); border-radius:var(--r);
  overflow:hidden; transition:.32s var(--ease); height:100%; margin-bottom:0 !important;
}
.rh-svc.et_pb_blurb:hover{ transform:translateY(-6px); box-shadow:var(--shadow); border-color:rgba(212,175,78,.4); }
.rh-svc .et_pb_main_blurb_image{ margin-bottom:0 !important; display:block; line-height:0; overflow:hidden; }
.rh-svc .et_pb_main_blurb_image img{ width:100% !important; aspect-ratio:16/10; object-fit:cover; border-radius:0 !important; transition:.6s var(--ease); }
.rh-svc.et_pb_blurb:hover .et_pb_main_blurb_image img{ transform:scale(1.06); }
.rh-svc .et_pb_blurb_container{ padding:20px 22px 24px; text-align:left; }
.rh-svc .et_pb_module_header{ font-size:1.05rem !important; letter-spacing:.04em; margin-bottom:6px; }
.rh-svc .et_pb_blurb_description{ color:var(--mut); font-size:.9rem; line-height:1.6; }
.rh-svc .price{ display:inline-block; margin-top:12px; font-family:'Oswald',sans-serif; font-weight:600; color:var(--gold2); font-size:1rem; letter-spacing:.04em; }
/* stĺpce so službami — rovnaká výška */
.rh-svc.et_pb_blurb, .rh-svc .et_pb_blurb_content{ height:100%; }

/* ============================================================
   O nás — obrázok, feature list, number countery
   ============================================================ */
.rh-media img{ border-radius:var(--r) !important; border:1px solid var(--line); box-shadow:var(--shadow); width:100%; }
.rh-flist ul.flist{ list-style:none; margin:24px 0 0 !important; padding:0 !important; display:grid; gap:15px; }
.rh-flist .flist li{ display:flex; gap:13px; align-items:flex-start; }
.rh-flist .fic{ flex-shrink:0; width:40px; height:40px; border-radius:11px; background:rgba(212,175,78,.1); border:1px solid rgba(212,175,78,.3); display:flex; align-items:center; justify-content:center; }
.rh-flist .fic svg{ width:19px; height:19px; stroke:var(--gold); fill:none; stroke-width:1.8; }
.rh-flist .flist h4{ font-size:.98rem !important; margin:0 0 2px !important; letter-spacing:.04em; }
.rh-flist .flist p{ color:var(--mut); font-size:.92rem; margin:0 !important; }
/* number countery */
.rh-num .percent{ line-height:1 !important; }
.rh-num .percent p, .rh-num .percent-value{
  font-family:'Oswald',sans-serif !important; font-size:2.4rem !important; font-weight:600 !important;
  color:transparent !important; background:var(--grad); -webkit-background-clip:text; background-clip:text;
}
.rh-plus .percent-value::after{ content:"+"; }
.rh-num .title{ font-size:.84rem !important; color:var(--mut) !important; font-family:'Inter',sans-serif !important; text-transform:none; }
.rh-num.et_pb_number_counter{ text-align:left; margin-bottom:0 !important; opacity:1 !important; animation:none !important; }
.rh-num .percent, .rh-num .title{ text-align:left !important; }

/* ============================================================
   Cenníkové tabuľky — text moduly rh-ptable
   ============================================================ */
.rh-ptable{ background:var(--panel); border:1px solid var(--line); border-radius:var(--r); overflow:hidden; }
.rh-ptable .ph{ display:flex; align-items:center; justify-content:space-between; gap:14px; padding:18px 24px; border-bottom:1px solid var(--line); background:rgba(212,175,78,.05); }
.rh-ptable .ph h3{ font-size:1.15rem !important; letter-spacing:.06em; margin:0 !important; }
.rh-ptable .ph span{ font-family:'Oswald',sans-serif; font-size:.78rem; letter-spacing:.14em; color:var(--gold); text-transform:uppercase; }
.rh-ptable .prow{ display:flex; align-items:baseline; justify-content:space-between; gap:18px; padding:15px 24px; border-bottom:1px solid var(--line); }
.rh-ptable .prow:last-child{ border-bottom:0; }
.rh-ptable .prow .n{ color:var(--ink); font-size:.97rem; }
.rh-ptable .prow .n small{ display:block; color:var(--mut2); font-size:.8rem; }
.rh-ptable .prow .c{ font-family:'Oswald',sans-serif; font-weight:600; color:var(--gold2); white-space:nowrap; font-size:1.02rem; letter-spacing:.03em; }
.rh-ptable .prow .c small{ color:var(--mut2); font-weight:400; font-family:'Inter'; font-size:.78rem; }

/* ============================================================
   Galéria — natívny Divi gallery modul (rh-gal) + Supreme Pro
   ============================================================ */
.rh-gal .et_pb_gallery_items,
.dsm_gallery_wrapper, .dsm_filterable_grid{
  display:grid !important; grid-template-columns:repeat(3,1fr) !important;
  gap:14px !important; width:100% !important;
}
.rh-gal .et_pb_gallery_item, .dsm_gallery_item{
  border-radius:var(--rs) !important; overflow:hidden !important;
  border:1px solid var(--line) !important; background:var(--panel) !important;
  margin:0 !important; width:100% !important; float:none !important; padding:0 !important;
  transition:transform .3s ease, box-shadow .3s ease !important;
}
.rh-gal .et_pb_gallery_item:hover{ box-shadow:var(--shadow) !important; border-color:rgba(212,175,78,.4) !important; }
.rh-gal .et_pb_gallery_image{ display:block; line-height:0; }
.rh-gal .et_pb_gallery_image img, .dsm_gallery_item img{
  width:100% !important; height:100% !important; object-fit:cover !important;
  aspect-ratio:4/3 !important; display:block !important; transition:transform .55s var(--ease) !important;
}
.rh-gal .et_pb_gallery_item:hover .et_pb_gallery_image img{ transform:scale(1.07); }
.rh-gal .et_pb_gallery_title, .rh-gal .et_pb_gallery_caption{ display:none !important; }
.rh-gal .et_pb_gallery_image a::before{ display:none; }
@media (max-width:980px){ .rh-gal .et_pb_gallery_items{ grid-template-columns:repeat(2,1fr) !important; } }
@media (max-width:600px){ .rh-gal .et_pb_gallery_items{ grid-template-columns:1fr !important; } }
/* lightbox pozadie */
.mfp-bg{ background:rgba(5,5,8,.94) !important; }

/* ============================================================
   CTA pás — sekcia rh-cta (background_image + overlay blend)
   ============================================================ */
.rh-cta{ text-align:center; }
.rh-cta .rh-cta-txt h2{ color:#fff !important; font-size:clamp(1.9rem,3.8vw,2.8rem) !important; margin-bottom:14px; }
.rh-cta .rh-cta-txt{ max-width:660px; margin-inline:auto; }
.rh-cta .rh-cta-txt p{ color:rgba(242,240,234,.82) !important; font-size:1.05rem !important; }
.rh-cta .et_pb_button_module_wrapper{ display:inline-block; }

/* ============================================================
   Podstránkový hero — sekcia rh-phero
   Jednotný odstup 60px hore aj dole (prepíše inline custom_padding).
   ============================================================ */
.rh-phero{ border-bottom:1px solid var(--line); padding-top:60px !important; padding-bottom:60px !important; }
.rh-phero-txt p.rh-sub{ max-width:640px; }
/* Podstránkový hero s fotkou (trieda rh-phero-photo) — pozadie sa nastavuje
   na sekcii (background_image), tu len overlay a odstupy. Žiadne natvrdo
   zadané URL — obrázky dodá obsahový plugin z lokálnej Media knižnice. */
.rh-phero-photo{ position:relative; background-size:cover !important; background-position:center 42% !important; border-bottom:0 !important; }
.rh-phero-photo::before{ display:none !important; } /* hex vzor by rušil fotku */
.rh-phero-photo::after{ content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg,rgba(10,10,13,.9) 0%,rgba(10,10,13,.72) 42%,rgba(10,10,13,.4) 100%); }
.rh-phero > .et_pb_row, .rh-phero-photo > .et_pb_row{ position:relative; z-index:2; }

/* ============================================================
   Servisné podstránky (Čistenie, Ochrana laku, …)
   ============================================================ */
.rh-svchead h3{ font-size:clamp(1.3rem,2.4vw,1.7rem) !important; margin:0 0 .3em !important; }
.rh-svchead .rh-hod{ display:inline-flex; align-items:center; gap:8px; font-family:'Oswald',sans-serif; font-size:.8rem; letter-spacing:.12em; text-transform:uppercase; color:var(--gold2); border:1px solid rgba(212,175,78,.35); border-radius:99px; padding:6px 14px; margin-bottom:12px; }
/* cenové karty podľa veľkosti auta */
.rh-sizes .szgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.rh-sizes .sz{ background:var(--panel); border:1px solid var(--line); border-radius:var(--rs); padding:18px 20px; text-align:center; }
.rh-sizes .sz h5{ font-family:'Oswald',sans-serif !important; font-size:.9rem !important; letter-spacing:.08em; margin:0 0 2px !important; color:var(--ink); text-transform:uppercase; }
.rh-sizes .sz small{ display:block; color:var(--mut2); font-size:.78rem; min-height:2.2em; }
.rh-sizes .sz b{ display:block; font-family:'Oswald',sans-serif; font-weight:600; font-size:1.35rem; margin-top:8px; color:transparent; background:var(--grad); -webkit-background-clip:text; background-clip:text; }
@media (max-width:720px){ .rh-sizes .szgrid{ grid-template-columns:1fr; } }
/* checklist panely (čo balík obsahuje) */
.rh-checkpanel{ background:var(--panel); border:1px solid var(--line); border-radius:var(--r); padding:26px 28px !important; height:100%; }
.rh-checkpanel h4{ font-size:1rem !important; letter-spacing:.08em; margin:0 0 14px !important; padding-bottom:12px; border-bottom:1px solid var(--line); }
.rh-checkpanel h5{ font-family:'Oswald',sans-serif !important; font-size:.86rem !important; letter-spacing:.1em; text-transform:uppercase; color:var(--gold2); margin:18px 0 8px !important; }
.rh-checkpanel h5:first-of-type{ margin-top:0 !important; }
.rh-checkpanel ul{ list-style:none !important; margin:0 !important; padding:0 !important; display:grid; gap:8px; }
.rh-checkpanel li{ position:relative; padding-left:26px; color:var(--mut); font-size:.92rem; line-height:1.5; }
.rh-checkpanel li::before{ content:""; position:absolute; left:0; top:.42em; width:13px; height:7px; border-left:2px solid var(--gold); border-bottom:2px solid var(--gold); transform:rotate(-45deg); }

/* FAQ akordeón (Divi accordion) */
.rh-faq .et_pb_toggle{ background:var(--panel) !important; border:1px solid var(--line) !important; border-radius:var(--rs) !important; margin-bottom:12px !important; padding:20px 24px !important; }
.rh-faq .et_pb_toggle_title{ font-family:'Oswald',sans-serif !important; font-size:1rem !important; letter-spacing:.05em; color:var(--ink) !important; text-transform:uppercase; }
.rh-faq .et_pb_toggle_open .et_pb_toggle_title{ color:var(--gold2) !important; }
.rh-faq .et_pb_toggle_content{ color:var(--mut) !important; padding-top:12px !important; }
.rh-faq .et_pb_toggle .et_pb_toggle_title:before{ color:var(--gold) !important; }
/* PPF porovnávacia tabuľka */
.rh-ppftable table{ width:100%; border-collapse:collapse; background:var(--panel); border:1px solid var(--line) !important; border-radius:var(--r); overflow:hidden; }
.rh-ppftable th, .rh-ppftable td{ padding:12px 16px !important; border:0 !important; border-bottom:1px solid var(--line) !important; font-size:.93rem; text-align:center; color:var(--mut); }
.rh-ppftable th{ font-family:'Oswald',sans-serif; text-transform:uppercase; letter-spacing:.08em; font-size:.85rem; color:var(--ink); background:rgba(212,175,78,.06); }
.rh-ppftable td:first-child, .rh-ppftable th:first-child{ text-align:left; color:var(--ink); }
.rh-ppftable .y{ color:var(--gold2); font-weight:700; }
.rh-ppftable .n{ color:var(--mut2); }
.rh-ppftable tr:last-child td{ border-bottom:0 !important; }
.rh-ppftable{ overflow-x:auto; }

/* ============================================================
   Kontakt — blurby rh-ci, hodiny rh-hours, formulár rh-form
   ============================================================ */
.rh-ci.et_pb_blurb{ padding:15px 0; border-bottom:1px solid var(--line); margin-bottom:0 !important; }
.rh-ci .et-pb-icon{
  background:linear-gradient(110deg,#d4af4e,#e8cc74); color:#151004 !important;
  width:46px !important; height:46px !important; line-height:1 !important;
  font-size:20px !important; border-radius:12px;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  text-align:center !important;
}
.rh-ci .et_pb_module_header{
  font-size:.74rem !important; letter-spacing:.18em; color:var(--mut2) !important; margin-bottom:3px;
}
.rh-ci .et_pb_blurb_description{ font-size:1.02rem; color:var(--ink); font-weight:500; }
.rh-ci .et_pb_blurb_description a{ color:var(--ink) !important; }
.rh-ci .et_pb_blurb_description a:hover{ color:var(--gold2) !important; }
.rh-ci .et_pb_blurb_description small{ display:block; color:var(--mut); font-size:.86rem; font-weight:400; }
/* Fallback: ak import/builder stratí font_icon (prázdny span), doplň glyf cez CSS.
   :empty → nikdy nespôsobí dvojitú ikonu; poradie = telefón, e-mail, pin, budova.
   Zároveň vypni Divi waypoint animáciu — nechávala ikony neviditeľné (opacity 0). */
.rh-ci .et-pb-icon, .rh-ti .et-pb-icon{ opacity:1 !important; transform:none !important; animation:none !important; visibility:visible !important; }
.rh-ci .et-pb-icon:empty::before{ font-family:'ETmodules' !important; font-weight:400; font-style:normal; }
.rh-ci:nth-of-type(1) .et-pb-icon:empty::before{ content:"\e00b"; }
.rh-ci:nth-of-type(2) .et-pb-icon:empty::before{ content:"\e010"; }
.rh-ci:nth-of-type(3) .et-pb-icon:empty::before{ content:"\e01d"; }
.rh-ci:nth-of-type(4) .et-pb-icon:empty::before{ content:"\e009"; }

.rh-hours{ background:var(--panel); border:1px solid var(--line); border-radius:var(--r); padding:26px 30px !important; margin-top:22px !important; }
.rh-hours h3{ margin:0 0 12px !important; font-size:1.05rem !important; letter-spacing:.05em; }
.rh-hours table{ width:100%; border-collapse:collapse; font-size:.94rem; border:0 !important; }
.rh-hours td{ padding:8px 0 !important; border:0 !important; border-bottom:1px solid var(--line) !important; color:var(--mut); }
.rh-hours td:last-child{ text-align:right; color:var(--ink); font-weight:600; font-family:'Oswald',sans-serif; letter-spacing:.04em; }
.rh-hours tr:last-child td{ border-bottom:0 !important; }
.rh-hours .rh-hnote{ color:var(--mut2) !important; font-size:.85rem; text-align:left !important; font-family:'Inter',sans-serif !important; font-weight:400 !important; }

/* Divi Contact Form — tmavý */
.rh-form.et_pb_contact_form_container{
  background:var(--panel); border:1px solid var(--line); border-radius:var(--r);
  padding:30px !important; box-shadow:var(--shadow);
}
.rh-form .et_pb_contact_field{ margin-bottom:3%; }
.rh-form input, .rh-form textarea{
  background-color:var(--bg) !important; border:1px solid var(--line2) !important;
  border-radius:10px !important; padding:13px 15px !important;
  color:var(--ink) !important; font-family:'Inter',sans-serif !important; font-size:.95rem !important;
  width:100%; color-scheme:dark;
}
.rh-form input:focus, .rh-form textarea:focus{ outline:none; border-color:var(--gold) !important; box-shadow:0 0 0 3px rgba(212,175,78,.15); }
.rh-form ::placeholder{ color:var(--mut2); }
.rh-form .et_pb_contact_submit{ width:100%; margin-top:8px; }
.rh-form .et_pb_contact_right p, .rh-form .et_pb_contact_captcha_question{ color:var(--ink) !important; }
.rh-form .et_pb_contact_captcha{ background:var(--bg) !important; border:1px solid var(--line2) !important; color:var(--ink) !important; border-radius:10px !important; }
.et-pb-contact-message{ color:var(--gold2) !important; }

/* mapa */
.rh-map .mapwrap{ border-radius:var(--r); overflow:hidden; border:1px solid var(--line); filter:grayscale(.35) contrast(1.05) brightness(.85); margin-top:20px; }
.rh-map .mapwrap iframe{ width:100%; height:330px; border:0; display:block; }

/* ============================================================
   DIVI HLAVIČKA / MENU — tmavá, zladená
   ============================================================ */
#main-header{ background-color:rgba(10,10,13,.86) !important; backdrop-filter:blur(10px); box-shadow:none !important; border-bottom:1px solid var(--line); }
.et-fixed-header#main-header{ background-color:rgba(10,10,13,.97) !important; box-shadow:0 10px 30px rgba(0,0,0,.5) !important; }
#logo{ max-height:46px; }
#top-menu li a{ font-family:'Inter',sans-serif; font-size:.93rem; color:var(--mut) !important; text-transform:none; }
#top-menu li a:hover, #top-menu li.current-menu-item > a{ color:var(--ink) !important; opacity:1; }
#top-menu li.rh-menu-cta a{ background:var(--grad) !important; color:#151004 !important; font-family:'Oswald',sans-serif; font-weight:600 !important; text-transform:uppercase !important; letter-spacing:.05em; padding:11px 20px !important; border-radius:11px; box-shadow:0 10px 28px rgba(212,175,78,.28); transition:.25s; }
#top-menu li.rh-menu-cta a:hover{ transform:translateY(-2px); color:#151004 !important; }
#top-menu li.rh-menu-tel a{ font-family:'Oswald',sans-serif; color:var(--ink) !important; letter-spacing:.03em; }
/* dropdown submenu (Služby) — tmavé, zlatý pásik namiesto Divi modrej */
#top-menu li ul, .nav li ul{
  background-color:var(--bg2) !important;
  border-top:2px solid var(--gold) !important; border-color:var(--gold) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.55) !important;
  border-radius:0 0 12px 12px; padding:12px 0 !important; width:230px !important;
}
#top-menu li li a{
  color:var(--mut) !important; font-size:.9rem !important; width:190px !important;
  padding:9px 20px !important; opacity:1 !important; transition:.2s;
}
#top-menu li li a:hover{ color:var(--gold2) !important; background:rgba(212,175,78,.07); }
#top-menu li li.current-menu-item > a{ color:var(--ink) !important; }
#et_mobile_nav_menu .mobile_menu_bar:before{ color:var(--gold); }
.et_mobile_menu{ background-color:var(--bg2) !important; border-top:2px solid var(--gold) !important; }
.et_mobile_menu li a{ color:var(--ink) !important; border-bottom:1px solid var(--line); }
.et_mobile_menu li a:hover{ color:var(--gold2) !important; }

/* ============================================================
   PÄTA — Theme Builder má vlastnú; default widgety skryť
   ============================================================ */
#main-footer #footer-widgets{ display:none !important; }
#main-footer{ background-color:#08080b !important; border-top:1px solid var(--line); }
#footer-bottom{ background-color:#08080b !important; }
.et-l--footer{ background-color:#08080b; }

/* ============================================================
   Responsive dolaďovačky
   ============================================================ */
@media (max-width:980px){
  .rh-hero .et_pb_slide, .rh-hero .et_pb_container{ min-height:80vh; }
  .rh-num .percent p, .rh-num .percent-value{ font-size:2rem !important; }
}
@media (max-width:720px){
  .rh-hero .et_pb_slide_description{ padding:90px 0 100px !important; }
  .rh-hero .et-pb-slider-arrows{ display:none; }
  .rh-ptable .prow{ flex-direction:column; gap:4px; align-items:flex-start; }
  .rh-ci.et_pb_blurb{ padding:12px 0; }
}
