/* ==========================================================================
Encore theme styles.
Section markup keeps the design's inline styles (identical output to the
source). This file holds what inline styles can't express: global base,
hover/focus states, breakpoint rules and interactive states.
Breakpoints mirror the source JS: 640 / 900 / 1000 / 1080 / 1100 / 1280.
========================================================================== */

/* ---------- Base (from source <helmet>) ---------- */
html{scroll-behavior:smooth}
body{margin:0;background:#F7F1E6;color:#1A1714;font-family:'Kreon',serif;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
a{color:#7A5A1F;text-decoration:none}
a:hover{color:#C9A044}
img,video{display:block}
button,input,select,textarea{font-family:inherit}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.enc-skip:focus{position:fixed!important;left:12px;top:12px;width:auto;height:auto;clip:auto;z-index:999;background:#0B0A08;color:#E9C46A;padding:12px 18px;border-radius:8px;font-family:'Poppins',sans-serif;font-size:14px}

.eh1:hover{background:#E9C46A !important;color:#0B0A08 !important}
.eh2:hover{border-color:#C9A044 !important;color:#E9C46A !important}
.eh3:hover{color:#E9C46A !important}
.eh4:hover{background:#16130F !important}
.eh5:hover{background:#C9A044 !important;color:#0B0A08 !important}
.eh6:hover{transform:scale(1.06) !important}
.ef7:focus{border-color:#C9A044 !important;box-shadow:0 0 0 4px rgba(201,160,68,0.18) !important}
.eh8:hover{background:#2A2218 !important;color:#E9C46A !important}
.eh9:hover{background:#0B0A08 !important;color:#E9C46A !important}
.eh10:hover{transform:translateY(-4px) !important;border-color:#C9A044 !important;color:#1A1714 !important}
.eh11:hover{background:#0B0A08 !important;color:#E9C46A !important;border-color:#0B0A08 !important}
.eh12:hover{transform:scale(1.07) !important}
.eh13:hover{background:#FCFAF5 !important;color:#7A5A1F !important}
.eh14:hover{background:#F3EAD8 !important;color:#7A5A1F !important}
.eh15:hover{color: #C9A044 !important;}
.eh16:hover{transform:translateY(-5px) !important;box-shadow:0 22px 40px rgba(26,23,20,0.10) !important;border-color:#C9A044 !important}
.eh17:hover{transform:translateY(-6px) !important;box-shadow:0 26px 48px rgba(26,23,20,0.12) !important;border-color:#C9A044 !important}
.eh18:hover{background:#C9A044 !important;color:#0B0A08 !important;border-color:#C9A044 !important}
.eh19:hover{transform:translateY(-5px) !important;box-shadow:0 22px 40px rgba(26,23,20,0.10) !important}

/* ---------- Visibility (header/footer switch at 1080 like the source) ---------- */
@media (max-width:1079.98px){.enc-desk{display:none!important}}
@media (min-width:1080px){.enc-mob{display:none!important}}
@media (max-width:1279.98px){.enc-wide{display:none!important}}
/* Section Settings → Hide on */
@media (min-width:1080px){.enc-hide-desktop{display:none!important}}
@media (min-width:640px) and (max-width:1079.98px){.enc-hide-tablet{display:none!important}}
@media (max-width:639.98px){.enc-hide-mobile{display:none!important}}

/* ---------- Header ---------- */
.enc-hdr{transform:translateY(0px)}
.enc-hdr header{box-shadow:none}
.enc-hdr.is-scrolled{transform:translateY(-36px)}
.enc-hdr.is-scrolled header{box-shadow:0 10px 30px rgba(26,23,20,0.08)}
.enc-drawer{display:none!important}
.enc-drawer.is-open{display:flex!important}
body.enc-lock{overflow:hidden}

/* ---------- Footer ---------- */
.enc-foot{padding-bottom:0px}
@media (max-width:1079.98px){.enc-foot{padding-bottom:78px}}
.enc-top{opacity:0;transform:translateY(12px);pointer-events:none}
.enc-top.is-on{opacity:1;transform:translateY(0px);pointer-events:auto}
.enc-cookie{left:84px;right:auto;bottom:22px}
@media (max-width:1079.98px){.enc-cookie{left:10px;right:10px;bottom:78px}}
.enc-cookie[hidden]{display:none!important}

/* ---------- Home hero ---------- */
.enc-hero{min-height:min(86vh, 760px)}
.enc-hero video{object-position:center 38%}
.enc-hero-veil{background:linear-gradient(90deg,rgba(247,241,230,0.95) 0%,rgba(247,241,230,0.84) 36%,rgba(247,241,230,0.12) 64%,rgba(247,241,230,0) 100%)}
@media (max-width:899.98px){.enc-hero{min-height:600px}.enc-hero video{object-position:64% 40%}}
@media (max-width:639.98px){.enc-hero-veil{background:linear-gradient(180deg,rgba(247,241,230,0.9) 0%,rgba(247,241,230,0.78) 100%)}}

/* ---------- Home service cards (hover state was JS in the source) ---------- */
.enc-svc-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1099.98px){.enc-svc-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:639.98px){.enc-svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:482px){.enc-svc-grid{grid-template-columns:repeat(1,minmax(0,1fr))}}
.enc-svc{border-color:#E3D6BD;transform:translateY(0px);box-shadow:0 0 0 rgba(0,0,0,0)}
.enc-svc:hover{border-color:#C9A044;transform:translateY(-8px);box-shadow:0 24px 44px rgba(26,23,20,0.14)}
.enc-svc .enc-svc-img{transform:scale(1)}
.enc-svc:hover .enc-svc-img{transform:scale(1.09)}
.enc-svc .enc-svc-arrow{opacity:0;transform:translateY(8px)}
.enc-svc:hover .enc-svc-arrow{opacity:1;transform:translateY(0px)}
.enc-svc .price{color:#6E655A}
.enc-svc:hover .price{color:#7A5A1F}

/* ---------- Home treatments carousel ---------- */
.enc-tr-track::-webkit-scrollbar{display:none}
.enc-tr-card{flex: 0 0 clamp(240px, 19vw, 300px);}
@media (max-width:899.98px){.enc-tr-card{flex:0 0 42%}}
@media (max-width:639.98px){.enc-tr-card{flex:0 0 74%}}
@media (max-width:482px){.enc-tr-card{flex:0 0 100%}}

/* ---------- Home gallery preview mosaic ---------- */
.enc-gp{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:230px}
.enc-gp > :nth-child(1){grid-column:span 2;grid-row:span 2}
.enc-gp > :nth-child(2){grid-column:span 1;grid-row:span 1}
.enc-gp > :nth-child(3){grid-column:span 1;grid-row:span 2}
.enc-gp > :nth-child(4){grid-column:span 1;grid-row:span 1}
.enc-gp > :nth-child(5){grid-column:span 2;grid-row:span 1}
.enc-gp > :nth-child(6){grid-column:span 2;grid-row:span 1}
@media (max-width:899.98px){
	.enc-gp{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:170px}
	.enc-gp > *{grid-column:span 1!important;grid-row:span 1!important}
	.enc-gp > :nth-child(1),.enc-gp > :nth-child(6){grid-column:span 2!important}
}

/* ---------- Reviews slider (3 per view, 1 below 900) ---------- */
.enc-revs{grid-template-columns:repeat(3,minmax(0,1fr))}
.enc-revs > :nth-child(n+4){display:none!important}
@media (max-width:899.98px){.enc-revs{grid-template-columns:repeat(1,minmax(0,1fr))}.enc-revs > :nth-child(n+2){display:none!important}}
.enc-revs > *{opacity:1;transform:translateY(0px)}
.enc-revs.is-fading > *{opacity:0;transform:translateY(12px)}

/* ---------- Featured review ---------- */
.enc-feat.is-fading .enc-feat-q{opacity:0;transform:translateY(14px)}
.enc-feat.is-fading .enc-feat-by{opacity:0}

/* ---------- Single service ---------- */
.enc-subnav::-webkit-scrollbar{display:none}
.enc-ptable{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:899.98px){.enc-ptable{grid-template-columns:minmax(0,1fr)}}
.enc-exp{grid-template-columns:minmax(0,0.9fr) minmax(0,1fr) minmax(0,1fr)}
@media (max-width:1099.98px){.enc-exp{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}}
.enc-pgroup[hidden]{display:none!important}

/* ---------- Gallery grid ---------- */
.enc-gal{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:240px}
@media (max-width:1099.98px){.enc-gal{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:639.98px){.enc-gal{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:160px}}
.enc-gal > [hidden]{display:none!important}
.enc-lb{display:none!important}
.enc-lb.is-open{display:flex!important}

/* ---------- Appointment ---------- */
.enc-appt{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.enc-appt aside{position:sticky}
@media (max-width:999.98px){.enc-appt{grid-template-columns:minmax(0,1fr)}.enc-appt aside{position:static}}
.enc-appt [hidden],.enc-form [hidden]{display:none!important}
button[disabled]{cursor:default}

/* ---------- Text rendered from the editor in banners ---------- */
.enc-legal a{color:#7A5A1F;text-decoration:underline}

/* ---------- Contact Form 7 inside Encore sections (matches the built-in form) ----------
Two fields side by side: wrap them in <div class="enc-cf7-row">…</div> in the CF7 form editor. */
.enc-cf7 { margin-top:22px; }
.enc-appointment-form__form.enc-cf7 { margin-top:0; }
.enc-cf7 form > p, .enc-cf7 .enc-cf7-row > p { margin:0 0 16px; }
/* CF7 wraps both fields of a row in one <p>, so that <p> is the two-column grid. */
.enc-cf7 .enc-cf7-row > p { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:16px; }
.enc-cf7 .enc-cf7-row > p > br { display:none; }
.enc-cf7 label { display:flex; flex-direction:column; gap:7px; font-family:'Poppins',sans-serif; font-size:12.5px; font-weight:500; color:#2A2218; }
.enc-cf7 label br { display:none; }
.enc-cf7 .wpcf7-form-control-wrap { display:block; }
.enc-cf7 input:not([type=submit]):not([type=checkbox]):not([type=radio]), .enc-cf7 select {
	width:100%; height:54px; border-radius:10px; border:1px solid #E3D6BD; background:#F7F1E6; padding:0 14px;
	font-family:'Kreon',serif; font-size:14.5px; color:#1A1714; outline:none; box-sizing:border-box;
}
.enc-cf7 textarea {
	width:100%; min-height:130px; border-radius:10px; border:1px solid #E3D6BD; background:#F7F1E6; padding:14px;
	font-family:'Kreon',serif; font-size:14.5px; color:#1A1714; outline:none; resize:vertical; box-sizing:border-box;
}
.enc-cf7 input:focus, .enc-cf7 select:focus, .enc-cf7 textarea:focus { border-color:#C9A044; box-shadow:0 0 0 4px rgba(201,160,68,0.18); }
.enc-cf7 .wpcf7-not-valid { border-color:#B5452F !important; }
.enc-cf7 .wpcf7-not-valid-tip { font-family:'Poppins',sans-serif; font-size:12.5px; font-weight:400; color:#B5452F; margin-top:6px; }
.enc-cf7 input[type=submit], .enc-cf7 .wpcf7-submit {
	width:100%; height:56px; border:0; border-radius:10px; background:#0B0A08; color:#E9C46A;
	font-family:'Poppins',sans-serif; font-size:15px; font-weight:500; cursor:pointer; transition:background .3s,color .3s;
}
.enc-cf7 input[type=submit]:hover { background:#C9A044; color:#0B0A08; }
.enc-cf7 .wpcf7-spinner { display:block; margin:10px auto 0; }
.enc-cf7 .wpcf7 form .wpcf7-response-output {
	margin:14px 0 0; padding:12px 16px; border-radius:10px; font-family:'Poppins',sans-serif; font-size:13px; line-height:1.6;
}
.enc-cf7 .wpcf7 form.sent .wpcf7-response-output { border-color:#3E8E5A; background:#F1F7F2; color:#2A2218; }
.enc-cf7 .wpcf7 form.invalid .wpcf7-response-output, .enc-cf7 .wpcf7 form.failed .wpcf7-response-output { border-color:#B5452F; background:#FBF1EE; color:#2A2218; }
.enc-svc__link-5:hover {
	color: #fff;
}


@media(max-width:482px){
	.service-price .enc-svc__text-5 {/* display: none; */}
	.service-price .enc-svc__box-10 {flex-wrap:wrap;}
	.service-price .enc-svc__box-10 .enc-svc__info{width:100%;}
		.service-price .enc-svc__box-10 .enc-svc__info .enc-svc__desc{margin-bottom:0;}
}
@media(max-width:640px){
	.custom-service {flex-wrap: wrap;justify-content: center;padding:10px;}
	.custom-service  a{padding:10px;}
}
.enc-hdr__box-3.enc-marquee {
	display: block;        /* flex/center override, taaki text pure bar me ghume */
	width: 100%;
	overflow: hidden;
	white-space: nowrap;
	background: #000;
	/* color: #fff; */
	padding: 10px 0 10px;
	border-bottom: 1px solid #ececec38;
}
.enc-marquee__inner {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	white-space: nowrap;
	animation: enc-marquee 38s linear infinite;
	will-change: transform;
}
.enc-hdr__box-3.enc-marquee:hover .enc-marquee__inner { animation-play-state: paused; }

/* left -> right, pure screen par */
@keyframes enc-marquee {
	from { transform: translateX(100vw); }
	to   { transform: translateX(-100%); }
}

@media (prefers-reduced-motion: reduce) {
	.enc-marquee__inner { animation: none; }
	.enc-hdr__box-3.enc-marquee { text-align: center; }
}
.enc-mob.enc-row-gap-8 a.enc-hdr__link-5 {
	color:#dcb218;
}