/*
Theme Name: Hello Elementor Child - CholiCholi
Template: hello-elementor
Version: 2.0.0
Description: Child theme pro CholiCholi MnamMnam - retro styl
*/

/* Stuha (ribbon) s useknutymi konci */
.choli-ribbon .elementor-heading-title {
	display: inline-block;
	padding: 8px 28px;
	position: relative;
}
.choli-ribbon {
	clip-path: polygon(12px 0, calc(100% - 12px) 0, 100% 50%, calc(100% - 12px) 100%, 12px 100%, 0 50%);
	display: inline-block;
	width: auto !important;
}

/* Kulata produktova fotka */
.choli-circle img {
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	width: 240px;
	max-width: 80%;
	border: 8px solid rgba(192, 106, 60, 0.28);
	box-shadow: 0 0 0 3px #C06A3C;
}

/* Foto v "papirovem" ramecku */
.choli-frame img {
	border: 10px solid #F5EEDF;
	box-shadow: 0 6px 22px rgba(43, 33, 26, 0.28);
}

/* Sloupce (Elementor width na inner containerech negeneruje CSS) */
.e-con.choli-col-52 { width: 52%; }
.e-con.choli-col-40 { width: 40%; }
.e-con.choli-col-47 { width: 47%; }
.e-con.choli-col-31 { width: 31%; }
@media (max-width: 1024px) {
	.e-con.choli-col-31 { width: 48%; }
}
@media (max-width: 767px) {
	.e-con.choli-col-52, .e-con.choli-col-40,
	.e-con.choli-col-47, .e-con.choli-col-31 { width: 100%; }
}

/* Ribbon nesmi byt pres celou sirku */
.elementor-element.choli-ribbon { width: auto !important; max-width: 100%; }

/* Header menu na jeden radek */
.elementor-location-header .elementor-widget-nav-menu {
	width: auto !important;
	flex-shrink: 0;
}
.elementor-location-header ul.elementor-nav-menu--layout-horizontal {
	flex-wrap: nowrap;
	white-space: nowrap;
}

/* ===== v3: verna replika dema ===== */

/* Nakloneni stuh a foto ramecku (jako v demu) */
.choli-tilt { transform: rotate(-2.5deg); }
.choli-frame-tilt img { transform: rotate(2deg); }

/* Hero badge (SVG emblem) */
.choli-badge { width: 100%; }
.choli-badge svg { width: 100%; height: auto; display: block;
	filter: drop-shadow(0 4px 14px rgba(0,0,0,0.35)); }

/* EST krouzky po stranach badge */
.choli-est {
	width: 92px; height: 92px; border-radius: 50%;
	border: 2px solid rgba(201,188,156,0.75);
	outline: 1px dashed rgba(201,188,156,0.5); outline-offset: -8px;
	display: flex; flex-direction: column; align-items: center;
	justify-content: center; gap: 2px;
	color: #E8DFC9; font-family: "Barlow Condensed", sans-serif;
	font-size: 20px; font-weight: 700; letter-spacing: 2px;
}
.choli-est em { color: #C06A3C; font-style: normal; font-size: 12px; }
@media (max-width: 900px) { .choli-est { display: none; } }

/* Kulate produktove fotky - carkovany prstenec jako halftone kruh dema */
.choli-circle img { outline: 2px dashed rgba(192,106,60,0.55); outline-offset: 7px; }

/* ===== Tlacitka: presna replika .cws_custom_button z dema ===== */
.choli-btn .elementor-button {
	background: transparent !important;
	border-style: solid !important;
	border-width: 4px 0 !important;
	border-radius: 0 !important;
	color: #7f3a2d;
	border-color: #7f3a2d;
	font-family: "Barlow Condensed", sans-serif !important;
	font-weight: 700 !important;
	font-size: 27px !important;
	line-height: 1 !important;
	letter-spacing: 1px;
	text-transform: uppercase;
	padding: 5px 27px 8px !important;
	position: relative;
	transition: color .2s ease, border-color .2s ease;
}
.choli-btn .elementor-button:before,
.choli-btn .elementor-button:after {
	content: "";
	position: absolute;
	top: 50%;
	width: 7px; height: 7px;
	border-radius: 50%;
	background-color: #7f3a2d;
	transform: translateY(-50%);
	transition: background-color .2s ease;
}
.choli-btn .elementor-button:before { left: 0; }
.choli-btn .elementor-button:after { right: 0; }
.choli-btn .elementor-button:hover { color: #281e1a; border-color: #281e1a; }
.choli-btn .elementor-button:hover:before,
.choli-btn .elementor-button:hover:after { background-color: #281e1a; }

/* varianta na tmavem / oranzovem pozadi */
.choli-btn-light .elementor-button { color: #F4EDDE; border-color: #F4EDDE; }
.choli-btn-light .elementor-button:before,
.choli-btn-light .elementor-button:after { background-color: #F4EDDE; }
.choli-btn-light .elementor-button:hover { color: #2B211A; border-color: #2B211A; }
.choli-btn-light .elementor-button:hover:before,
.choli-btn-light .elementor-button:hover:after { background-color: #2B211A; }

@media (max-width: 767px) {
	.choli-btn .elementor-button { font-size: 21px !important; }
}

/* ===== v4: 1:1 hlavicky sekci (replika cws_textmodule) ===== */
.choli-sechead { --sh-color: #281E1A; text-align: center; width: 100%; }
.choli-sechead.light { --sh-color: #F4EDDE; }
.choli-sechead.is-left { text-align: left; }
.choli-sh-row { display: flex; align-items: center; justify-content: space-between; }
.choli-sh-row h4 {
	margin: 0; flex-shrink: 0;
	font-family: "Barlow Condensed", sans-serif;
	font-size: 30px; font-weight: 700; letter-spacing: .7px;
	text-transform: uppercase; color: var(--sh-color); padding: 0 20px;
}
.choli-sh-row.is-left h4 { padding: 0; }
.choli-sh-line { width: 100%; position: relative; height: 3px; display: inline-block;
	background: var(--sh-color); }
.choli-sh-line:before, .choli-sh-line:after { content: ""; position: absolute;
	left: 0; width: 100%; height: 1px; background: var(--sh-color); }
.choli-sh-line:before { top: -4px; }
.choli-sh-line:after { bottom: -4px; }
.choli-sh-dots { position: relative; height: 11px; width: 11px; margin: 0 13px;
	border-radius: 50%; background: var(--sh-color); flex-shrink: 0; }
.choli-sh-dots:before, .choli-sh-dots:after { content: ""; position: absolute;
	top: 2px; width: 7px; height: 7px; border-radius: 50%;
	background: var(--sh-color); }
.choli-sh-dots:before { left: -13px; }
.choli-sh-dots:after { right: -13px; }
.choli-sh-icon { color: #C06A3C; font-size: 24px; margin-top: 12px; }
.choli-bigtitle {
	font-family: "Barlow Condensed", sans-serif; font-weight: 600;
	font-size: clamp(44px, 10vw, var(--sh-size, 150px));
	line-height: .95; letter-spacing: .7px; text-transform: uppercase;
	color: var(--sh-color); margin: 8px 0 0;
	text-shadow: 5px 4px 0 rgba(192, 106, 60, .38);
}
.choli-sechead.light .choli-bigtitle { text-shadow: 5px 4px 0 rgba(43, 33, 26, .35); }

/* highlight podtitul (susirna) */
.choli-highlight span {
	background: #EDE5D4; color: #281E1A; padding: 4px 12px;
	font-family: "Barlow Condensed", sans-serif; font-weight: 700;
	font-size: 26px; text-transform: uppercase; letter-spacing: 1px;
	line-height: 1.5; box-decoration-break: clone; -webkit-box-decoration-break: clone;
}

/* worldwide-style radek */
.choli-worldwide { border-top: 1px solid rgba(244,237,222,.7);
	padding-top: 14px; }
.choli-worldwide .ww-main {
	font-family: "Barlow Condensed", sans-serif; font-weight: 700;
	font-size: 30px; text-transform: uppercase; color: #2B211A;
	letter-spacing: 1px; }
.choli-worldwide .ww-sub {
	font-family: "Barlow Condensed", sans-serif; font-weight: 600;
	font-size: 15px; text-transform: uppercase; letter-spacing: 6px;
	color: rgba(43,33,26,.65); }

/* script ribbon (Estb styl) */
.choli-ribbon-script .elementor-heading-title {
	font-family: "Courgette", cursive !important;
	text-transform: none !important; font-size: 38px !important;
	font-weight: 400 !important; letter-spacing: 0 !important;
}

/* hvezdicky mezi polozkami menu (jako demo) */
.elementor-location-header ul.elementor-nav-menu--layout-horizontal > li:not(:last-child):after {
	content: "\2605"; font-size: 9px; color: #281E1A;
	display: inline-block; vertical-align: middle; margin: 0 3px;
}

/* fix: kit h2/h4 barva nesmi prebit sechead */
.choli-sechead .choli-bigtitle { color: var(--sh-color) !important; }
.choli-sechead .choli-sh-row h4 { color: var(--sh-color) !important; }

/* ===== TasteHub fix: fotky orezavat, ne roztahovat ===== */
.elementor-widget-image img { object-fit: cover !important; }
/* produktove/galerie karty - vyplnit slot */
.elementor-widget-image a, .elementor-widget-image figure { height: 100%; display: block; }

/* ===== Normální věty místo Title Case (jkit nadpisy + countery) ===== */
.heading-title,
.heading-title .style-color,
.elementor-counter-title { text-transform: none !important; }

/* Menu položky: jen první písmeno velké (ne Title Case) */
.jkit-menu a, .jkit-nav-menu a, .elementor-location-header .jkit-menu li a { text-transform: none !important; }

/* Galerie fotky - jednotny pomer + oriznuti */
.choli-galimg img { aspect-ratio: 4/3; object-fit: cover; width: 100%; border-radius: 8px;
	box-shadow: 0 6px 20px rgba(40,30,26,.14); }

/* Víc řádkování u velkých Anton titulků (řádky se dotýkaly) */
.elementor-heading-title { line-height: 1.18 !important; }
.heading-title { line-height: 1.18 !important; }
.choli-bigtitle { line-height: 1.12 !important; }

/* ===== Vše o mase — TasteHub grid + karty (v4.6.0) ===== */
.choli-mcards > .e-con-inner  { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:26px; width:100%; }
.choli-mcards2 > .e-con-inner { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:26px; width:100%; }
.choli-mcards3 > .e-con-inner { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:22px; width:100%; }
.choli-mcards  > .e-con-inner > .elementor-element,
.choli-mcards2 > .e-con-inner > .elementor-element {
	background:#fff; border:1px solid #e8e0d2; border-radius:14px; padding:30px 26px;
	box-shadow:0 6px 22px rgba(60,40,20,.05); }
.choli-hcenter, .choli-hcenter * { text-align:center !important; }
.choli-lead { max-width:770px; margin-left:auto; margin-right:auto; }
.choli-lead, .choli-lead * { text-align:center; }

/* Vše o mase — karta jako WIDGET trida (container _css_classes se nerenderuje) v4.6.1 */
.choli-mcard { background:#fff; border:1px solid #e8e0d2; border-radius:14px; padding:30px 26px !important;
	box-shadow:0 6px 22px rgba(60,40,20,.05); }

/* ===== Právní podstránky (GDPR / obchodní podmínky) v4.7.0 ===== */
.choli-legal { max-width:880px; margin-left:auto; margin-right:auto; color:#3a2f28; }
.choli-legal h2 { font-size:30px; line-height:1.25; margin:40px 0 14px; }
.choli-legal h3 { font-size:21px; line-height:1.3; margin:26px 0 8px; }
.choli-legal p, .choli-legal li { line-height:1.7; margin-bottom:12px; }
.choli-legal ul { padding-left:22px; margin-bottom:16px; }
.choli-legal .choli-fill { background:#fbe9c9; padding:1px 7px; border-radius:4px; font-weight:600; white-space:nowrap; }

/* legal max-width override (v4.7.1) */
.choli-legal, .choli-legal > .elementor-widget-container { max-width:880px !important; margin-left:auto !important; margin-right:auto !important; }

/* Hero split — pravý text srovnat na boxed obsah 1280px (ne rozlezlé do full-width) v4.7.3 */
@media (min-width:1025px){
  .elementor-element-5c4a53bb { padding-right: max(60px, calc((100vw - 1280px) / 2)) !important; }
}

/* Header 8 položek — kompaktní, nezalamovat, mezera od loga (v4.7.4) */
@media (min-width:1025px){
  .elementor-location-header .jkit-nav-menu .jkit-menu > .menu-item > a{
    white-space:nowrap !important; font-size:15px !important;
    padding-left:10px !important; padding-right:10px !important;
  }
  .elementor-location-header .jkit-nav-menu{ margin-left:20px; }
}
