/*
Theme Name: Quiet Ink Studio
Theme URI: https://www.quietinkstudio.com/
Template: siteorigin-corp
Author: Digital Movement
Author URI: https://www.digitalmovement.com.au/
Description: Quiet Ink Studio is a creative digital agency website focused on branding, web design, content creation, digital marketing, and business growth solutions.
Tags: one-column,two-columns,left-sidebar,right-sidebar,grid-layout,custom-background,custom-colors,custom-menu,custom-logo,featured-images,footer-widgets,full-width-template,post-formats,rtl-language-support,sticky-post,theme-options,threaded-comments,translation-ready,blog,e-commerce
Version: 1.19.12.1679469971
Updated: 2023-03-22 07:26:11

*/

a {
	transition: all 0.4s linear !important;
}

/* ---------- TOKENS & VARIABLES (from v5) ---------- */
:root {
  --black:       #111111;
  --dark:        #222222;
  --gunmetal:    #444444;
  --grey:        #888888;
  --silver:      #aaaaaa;
  --light:       #555555;
  --white:       #f0f0f0;
  --pure-white:  #ffffff;
  --off-white:   #f8f8f8;
  --light-grey:  #f0f0f0;
  --mid-grey:    #e2e2e2;
  --accent:      #111111;
  --accent-dim:  #444444;

  --font-primary:'Inter', sans-serif;--font-display:'Oswald', sans-serif;

  --container:   112.5rem; /* 1800px */
  --section-pad: 7rem 0;
  --radius:      0.25rem; /* 4px */
  --transition:  0.38s cubic-bezier(.25,.8,.25,1);
}



/* ---------- RESET & BASE ELEMENTS (from v5) ---------- */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; overflow-x: hidden; width: 100%; }
@media (min-width:1191px){
	html {font-size: calc(12px + (18 - 12)*((100vw - 1200px)/(1920 - 1200)));} 
}
body {
  font-family: var(--font-primary);
  color: var(--black);
  background: var(--pure-white);
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { text-decoration: none; color: inherit; }
ul { list-style: none; }
button { cursor: pointer; border: none; background: none; font: inherit; }

/* ---------- CONTAINER & SECTION PADDING ---------- */
.container , .corp-container {
  width: min(var(--container), 96vw);
  margin-inline: auto;
  padding-inline: 2rem;
}
.section-pad { padding: var(--section-pad); }

.our-process-single-service {
	background: transparent;
}
.our-process-single-service .section-title, .our-process-single-service p {
	color: #000 !important;
}
.our-process-single-service .section-label {
	color:var(--silver);
}
.our-process-single-service .creativity-image::after {
display: none ;
}
.privacy-policy .entry-content {
	padding-top: 2rem;
}.privacy-policy .entry-content p {
	padding-bottom: 10px;
}
.creativity.our-process-single-service .container {
	gap: 10rem;
}
.creativity.our-process-single-service .section-text {
	max-width: 100%;
}
.creativity.our-process-single-service .creativity-image img {
	box-shadow: none;
}
.creativity.section-pad.our-process.our-process-single-service {
	padding-bottom: 0;
}
.text-center { text-align: center; }
.section-eyebrow  , .artistry-content p.section-eyebrow {
  font-family: var(--font-sans);
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .22em;
  color: var(--silver);
  text-transform: uppercase;
  margin-bottom: 1rem;
}
.section-sub {
  font-size: 1rem;
  color: var(--grey);
  max-width: 37.5rem; /* 600px */
  margin-inline: auto;
  line-height: 1.7;
  margin-bottom: 3rem;
}

/* ---------- BUTTONS (from v5) ---------- */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .85rem 2.2rem;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  border-radius: 0.125rem; /* 2px */
  border: none;
  cursor: pointer;
  transition: background var(--transition), color var(--transition), border-color var(--transition), transform var(--transition), box-shadow var(--transition);
}
.btn svg {
  width: 1rem; /* 16px */
  height: 1rem; /* 16px */
  transition: transform .3s;
}
.btn:hover svg {
  transform: translateX(0.25rem); /* 4px */
}

.btn-primary, .established_sec .custom_btn_2 {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .85rem 2.2rem;
  background: var(--black);
  color: var(--pure-white);
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  border-radius: 0.125rem; /* 2px */
  transition: background var(--transition), transform var(--transition), box-shadow var(--transition);
  border: 0.09375rem solid var(--white); /* 1.5px */
  box-shadow: none;
}
.btn-primary:hover, .established_sec .custom_btn_2:hover {
  background: var(--dark);
  color: var(--pure-white) !important;
  transform: translateY(-0.125rem); /* -2px */
  box-shadow: 0 0.75rem 1.875rem rgba(17,17,17,.18); /* 12px 30px */
}
.btn-ghost {
  display: inline-flex;
  align-items: center;
  padding: .85rem 2.2rem;
  background: transparent;
  color: #ffffff;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  border-radius: 0.125rem; /* 2px */
  border: 0.09375rem solid #ffffff; /* 1.5px */
  transition: background var(--transition), color var(--transition), transform var(--transition);
}
.btn-ghost:hover {
  background: var(--black);
  color: var(--pure-white);
  transform: translateY(-0.125rem); /* -2px */
}
.btn-outline {
  display: inline-flex;
  align-items: center;
  padding: .85rem 2.2rem;
  background: transparent;
  color: var(--black);
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  border-radius: 0.125rem; /* 2px */
  border: 0.09375rem solid var(--mid-grey); /* 1.5px */
  transition: border-color var(--transition), color var(--transition), transform var(--transition);
}
.btn-outline:hover {
  border-color: var(--black);
  transform: translateY(-0.125rem); /* -2px */
  color: #000;
}
.btn-link {
  display: inline-flex;
  align-items: center;
  color: var(--grey);
  font-size: .8rem;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
  transition: color var(--transition);
  text-decoration: underline;
  text-underline-offset: 0.25rem; /* 4px */
}
.btn-link:hover { color: var(--black); }

/* ---------- REVEAL ANIMATIONS (from v5) ---------- */
.reveal-up {
  opacity: 0;
  transform: translateY(2.5rem); /* 40px */
  transition: opacity .7s ease, transform .7s ease;
}
.reveal-up.visible {
  opacity: 1;
  transform: translateY(0);
}
.reveal-left {
  opacity: 0;
  transform: translateX(-3.125rem); /* -50px */
  transition: opacity .8s ease, transform .8s ease;
}
.reveal-left.visible { opacity: 1; transform: translateX(0); }
.reveal-right {
  opacity: 0;
  transform: translateX(3.125rem); /* 50px */
  transition: opacity .8s ease, transform .8s ease;
}
.reveal-right.visible { opacity: 1; transform: translateX(0); }

.delay-1 { transition-delay: .12s !important; }
.delay-2 { transition-delay: .24s !important; }
.delay-3 { transition-delay: .36s !important; }
.delay-4 { transition-delay: .48s !important; }
.delay-5 { transition-delay: .6s !important; }

/* ============================================================
   PAGE LAYOUTS & COMPONENT SPECIFICS (from style.css)
   ============================================================ */

.established_sec .widget-title {
	padding-bottom: 2rem;
}
.page.page-id-1232 .entry-content {
	padding-top: 2rem;
}
.home .section-title  {font-family:var(--font-display);font-size:clamp(1.6rem, 4vw, 3.8rem);margin-bottom:1.25rem; /* 20px */line-height:1.2;font-weight:600}
.established_sec .vc_custom_heading , .established_sec .widget-title , .section-title {
  font-family: var(--font-display);
  font-size: clamp(2rem,4vw,3rem);
  margin-bottom: 1.25rem; /* 20px */
  line-height: 1.2;
  font-weight: 600;
}
.section-text{color:var(--light);font-size:1.05rem;max-width:90%;line-height:1.8}

.hygiene-image img {
	width: 85%;
}
.about-image.fade-up.visible {
	z-index: 1;
}
.established_sec p {
	color: var(--gunmetal);
	line-height: 1.8;
	margin-bottom: 0.625rem; /* 10px */
	font-size: 1rem;
}
.established_sec , .tab_sec {
	padding-top: 8rem;
}
body .established_sec {
	padding-top: 5rem;
	display: flex;
	gap: 6rem;
    margin: 0;
    align-items: center;
}
.established_sec .vc_col-sm-6 {
	width: 100%;
}
.established_sec::before  , .established_sec::after  , .established_sec .vc_column-inner::after {
  display: none !important;
}
.established_sec .wpb_wrapper.vc_figure , .established_sec .wpb_wrapper.vc_figure .vc_single_image-wrapper.vc_box_border_grey , .established_sec .wpb_wrapper.vc_figure .vc_single_image-wrapper.vc_box_border_grey img {
	width: 100%;
}
body.page.page-id-89 .about div.about-content {
	margin-bottom: 2rem;
}
.established_sec .vc_column-inner {
	padding: 0;
}
.vc_row.wpb_row.vc_row-fluid.established_sec .established_content  , .established_sec .wpb_single_image.wpb_content_element.vc_align_left {
	margin: 0;
}
.page.page-id-11 .gallery.section-pad.light-section {
	padding-bottom: 0 !important;
}
.about-content .section-text a {
	color: #9d8f8f;
	font-weight: 500;
	text-decoration: underline;
}

/* Light Section utility overrides (from style.css) */
.light-section{background:#FFFFFF !important;color:var(--black) !important}
.light-section .section-title{color:var(--black)}
.light-section .section-text{color:var(--gunmetal)}
.light-section .section-label{color:var(--silver);}
.light-section.trust-bar{border-color:rgba(0,0,0,.1)}
.light-section .trust-item{color:var(--black)}
.light-section .review-card{background:var(--pure-white);border-color:rgba(0,0,0,.05)}
.light-section .review-card blockquote, .light-section .review-name{color:var(--black)}
.light-section .tab-btn{background:rgba(0,0,0,0.05);color:var(--black);border-color:rgba(0,0,0,.1)}
.light-section .tab-btn:hover, .light-section .tab-btn.active{background:var(--accent);color:var(--black);border-color:var(--accent)}
.light-section .dot{background:var(--light)}
.light-section .faq-item{border-color:rgba(0,0,0,.1)}
.light-section .faq-question{color:var(--black)}
.light-section .faq-answer p{color:var(--gunmetal)}
.light-section .dot.active{background:var(--accent)}
.light-section .contact-form h3{color:var(--black)}
.light-section .contact-form>p{color:var(--gunmetal)}
.light-section .form-group label{color:var(--gunmetal)}
.light-section .form-group input, .light-section .form-group textarea, .light-section .form-group select{background:#f5f6f8;border-color:rgba(0,0,0,.1);color:var(--black)}
.light-section .checklist-item{color:var(--gunmetal)}
.light-section .checklist-item svg{color:var(--accent)}
.light-section .service-card{background:var(--white);border-color:rgba(0,0,0,.06)}
.light-section .service-card h3{color:var(--black)}
.light-section .service-card p{color:var(--gunmetal)}

/* ===== CREATIVITY SECTION ===== */
.creativity .container{display:grid;grid-template-columns:1fr 1fr;gap: 0;align-items:center;  gap: 4rem;}
.creativity-content .section-text{margin-bottom:1.5rem} /* 24px */
.creativity-image{position:relative}
.creativity-image img{border-radius:0.25rem; /* 4px */aspect-ratio:4/5;object-fit:cover;/* 20px 50px */ width: 100%;}
.creativity-image::after{content:'';position:absolute;inset:-1.25rem; /* -20px */border:0.0625rem solid var(--silver); /* 1px */z-index:-1;border-radius:0.25rem} /* 4px */

/* ===== THE STUDIO EXPERIENCE ===== */
.stud-exp {padding-bottom: 0 !important; }
.about.section-pad.custom-section { padding-top: 0;}
.custom-section .about-content {padding: 6.25rem 0; }
.creativity-content .section-text p { margin-bottom: 1.25rem; } /* 20px */
.creativity .section-label { color: var(--silver); }

/* ===== PARALLAX BANNER ===== */
.parallax-banner{position:relative;height:31.25rem; /* 500px */display:flex;align-items:center;justify-content:center;text-align:center;background-attachment:fixed;background-position:center;background-size:cover;background-image:url('images/gallery-682x1024.jpg');overflow:hidden}
.parallax-banner::before{content:'';position:absolute;inset:0;background:rgba(10,10,10,.7)}
.parallax-content{position:relative;z-index:2;max-width:50rem; /* 800px */padding:0 1.5rem} /* 24px */
.parallax-content h2{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4rem);color:var(--pure-white);line-height:1.2;margin-bottom:1.25rem} /* 20px */
.parallax-content p{color:var(--light);font-size:1.1rem;margin-bottom:2rem} /* 32px */

/* ===== IG FEED ===== */
.ig-feed{background:#0e0e10;padding:5rem 0} /* 80px */
.ig-header{text-align:center;margin-bottom:2.5rem} /* 40px */
.ig-header h2{font-family:var(--font-display);font-size:2.5rem;color:var(--pure-white);margin-bottom:0.75rem} /* 12px */
.ig-header p{color:var(--silver);font-size:1rem}
.ig-header a{color:var(--accent);font-weight:600}
.ig-header a:hover{text-decoration:underline}
.ig-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem; /* 16px */padding:0 1.5rem} /* 24px */
.ig-item{position:relative;aspect-ratio:1;border-radius:0.25rem; /* 4px */overflow:hidden;display:block}
.ig-item img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}
.ig-item .ig-overlay{position:absolute;inset:0;background:rgba(212,175,55,.8);display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition)}
.ig-item .ig-overlay svg{width:2.25rem; /* 36px */height:2.25rem;color:var(--black)}
.ig-item:hover img{transform:scale(1.05)}
.ig-item:hover .ig-overlay{opacity:1}

/* ===== ABOUT PAGE SPECIFICS ===== */
#about-section{background: #FFFFFF !important; color:var(--black)}
.about .about-content{background: linear-gradient(rgba(255,255,255,0.8), rgba(255,255,255,0.8)), url('images/Background.png') !important; background-size: cover !important; background-position: center !important; padding: 2.5rem; /* 40px */border-radius: 0.5rem;} /* 8px */
.about .container{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:center}
.about .section-title{color:var(--black)}
.about .section-text{color:var(--gunmetal)}
.about .section-label{color:var(--silver);}
.about-image{position:relative}
.about-image img{border-radius:0.25rem; /* 4px */aspect-ratio:4/5;object-fit:cover}
.about-image .exp-badge{position:absolute;bottom:-1.25rem; /* -20px */right:1.25rem; /* 20px */background:var(--silver);color:var(--black);padding:1.5rem; /* 24px */text-align:center;border-radius:0.25rem} /* 4px */
.exp-badge .number{font-family:var(--font-display);font-size:2.2rem;font-weight:700;line-height:1}
.exp-badge .text{font-size:.65rem;letter-spacing:0.125rem; /* 2px */text-transform:uppercase;font-weight:700;margin-top:0.25rem} /* 4px */
.about-content .section-text{margin-bottom:2rem} /* 32px */

/* ===== SERVICES PAGE SPECIFICS ===== */
.services{background:#f4f4f6 !important;color:var(--black)}
.services .section-title{color:var(--black)}
.services .section-text{color:var(--gunmetal)}
.services .section-label{color:var(--silver);}
.services .header-wrap{text-align:center;margin-bottom:3.75rem} /* 60px */
.services .header-wrap .section-text{margin:0 auto}
.services.section-pad.light-section .services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem; /* 32px */background: transparent; border: 0;}
.services.section-pad.light-section .service-card{background:var(--white);border:0.0625rem solid rgba(0,0,0,.06); /* 1px */border-radius:0.25rem; /* 4px */transition:var(--transition);position:relative;overflow:hidden;display:flex;flex-direction:column}
.services.section-pad.light-section .service-image{width:100%;height:17.5rem; /* 280px */overflow:hidden}
.services.section-pad.light-section .service-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}
.services.section-pad.light-section .service-card:hover .service-image img{transform:scale(1.08)}
.services.section-pad.light-section .service-info{padding:2rem; /* 32px */flex-grow:1;position:relative}
.services.section-pad.light-section .service-info::before{content:'';position:absolute;top:0;left:0;width:100%;height:0.125rem; /* 2px */background:var(--silver);transform:scaleX(0);transition:var(--transition)}
.services.section-pad.light-section .service-card:hover .service-info::before{transform:scaleX(1)}
.services.section-pad.light-section .service-card:hover{border-color:rgba(212,175,55,.2);transform:translateY(-0.5rem); /* -8px */box-shadow:0 0.9375rem 2.5rem rgba(0,0,0,.4)} /* 15px 40px */
.services.section-pad.light-section .service-icon{width:2.5rem; /* 40px */height:2.5rem;display:flex;align-items:center;justify-content:center;background:rgba(212,175,55,.1);border-radius:50%;margin-bottom:1.25rem} /* 20px */
.services.section-pad.light-section .service-icon svg{width:1.25rem; /* 20px */height:1.25rem;color:#000;}
.services.section-pad.light-section .service-card h3{font-family:var(--font-display);font-size:1.35rem;color:var(--black);margin-bottom:0.75rem} /* 12px */
.services.section-pad.light-section .service-card p{color:var(--gunmetal);font-size:.9rem;line-height:1.7}
.home .services-grid svg {
	width: 1.75rem; /* 28px */
	height: 1.75rem;
	margin-bottom: .9rem;
	color: var(--silver);
}

/* ===== GALLERY PAGE SPECIFICS ===== */
.gallery{background:#FFFFFF;color:var(--black)}
.gallery .section-title{color:var(--black)}
.gallery .section-text{color:var(--gunmetal)}
.gallery .header-wrap{text-align:center;margin-bottom:3.75rem} /* 60px */
.gallery .header-wrap .section-text{margin:0 auto}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0.5rem} /* 8px */
.gallery-item{position:relative;overflow:hidden;border-radius:0.25rem; /* 4px */aspect-ratio:3/4}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.gallery-item:hover img{transform:scale(1.08)}
.gallery-item .overlay{position:absolute;inset:0;background:rgba(0,0,0,.6);opacity:0;transition:var(--transition);display:flex;align-items:center;justify-content:center}
.gallery-item:hover .overlay{opacity:1}
.gallery-item .overlay svg{width:2rem; /* 32px */height:2rem;color:var(--pure-white)}
.gallery-cta{text-align:center;margin-top:3rem} /* 48px */

/* ===== HYGIENE PAGE SPECIFICS ===== */
#hygiene-section{background: #f4f4f6 !important; color:var(--black)}
.hygiene .section-title{color:var(--black)}
.hygiene .section-text{color:var(--gunmetal)}
.hygiene .section-label{color:var(--accent-dim)}
.hygiene .container{display:grid;grid-template-columns:1fr 1fr;gap:5rem; /* 80px */align-items:center}
.hygiene-content .checklist{margin:1.75rem 0 2.25rem; /* 28px 36px */display:flex;flex-direction:column;gap:1rem} /* 16px */
.hygiene .checklist-item{display:flex;align-items:flex-start;gap:0.875rem; /* 14px */color:var(--gunmetal);font-size:.95rem;font-weight:500}
.hygiene .checklist-item svg{width:1.25rem; /* 20px */height:1.25rem;color:var(--accent);flex-shrink:0;margin-top:0.1875rem} /* 3px */
.hygiene-image img{border-radius:0.25rem; /* 4px */aspect-ratio:1;object-fit:cover}
.two-grid .container {gap: 1.875rem; } /* 30px */

/* ===== FAQ PAGE SPECIFICS ===== */
#faq-section{background: #f4f4f6 !important; color:var(--black)}
.faq-left{background: linear-gradient(rgba(244,244,246,0.8), rgba(244,244,246,0.8)), url('images/Background3.png') !important; background-size: cover !important; background-position: center !important; padding: 2.5rem; /* 40px */border-radius: 0.75rem;} /* 12px */
.faq .section-title{color:var(--black)}
.faq .section-text{color:var(--gunmetal)}
.faq .section-label{color:var(--accent-dim)}
.faq .container{display:grid;grid-template-columns:1fr 1fr;gap:5rem; /* 80px */align-items:start}
.faq-list{display:flex;flex-direction:column;gap:0.75rem} /* 12px */
.faq-item{border-radius:0.25rem; /* 4px */overflow:hidden;transition:var(--transition)}
.faq-item.active{border-color:var(--accent)}
.faq-question{padding:1.25rem 1.5rem; /* 20px 24px */display:flex;justify-content:space-between;align-items:center;cursor:pointer;color:var(--black);font-size:.95rem;font-weight:500;transition:var(--transition)}
.faq-question:hover{color:var(--accent)}
.faq-question svg{width:1.125rem; /* 18px */height:1.125rem;color:var(--accent);transition:transform .3s;flex-shrink:0}
.faq-item.active .faq-question svg{transform:rotate(180deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq-answer p{padding:0 1.5rem 1.25rem; /* 24px 20px */color:var(--gunmetal);font-size:.9rem;line-height:1.8}

/* ===== INSTAGRAM CTA ===== */
.insta-cta{position:relative;padding:6.25rem 0; /* 100px */text-align:center;overflow:hidden}
.insta-cta .bg{position:absolute;inset:0;background:linear-gradient(135deg,var(--gunmetal),var(--black))}
.insta-cta .container{position:relative;z-index:2}
.insta-cta h2{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);color:var(--pure-white);margin-bottom:1rem} /* 16px */
.insta-cta p{color:var(--silver);margin-bottom:2.25rem; /* 36px */font-size:1rem}
.insta-cta .btn{margin:0 0.5rem} /* 8px */

/* ===== CONTACT FORM ===== */
#contact-section{background: #FFFFFF !important; color:var(--black)}
.contact-form{background: linear-gradient(rgba(255,255,255,0.8), rgba(255,255,255,0.8)), url('images/Background.png') !important; background-size: cover !important; background-position: center !important; padding: 2.5rem !important; /* 40px */border-radius: 0.5rem;} /* 8px */
.contact .section-title{color:var(--black)}
.contact .section-text{color:var(--gunmetal)}
.contact .section-label{color:var(--silver);}
.contact .container svg {
	color: #000 !important;
}
.contact .container{display:grid;grid-template-columns:1fr 1fr;gap:5rem; /* 80px */align-items:center}
.contact-image{position:relative;border-radius:0.25rem; /* 4px */overflow:hidden;aspect-ratio:4/3;height: 100%; width: 100%;}
.contact-image img{width:100%;height:100%;object-fit:cover}
.contact-form h3{font-family:var(--font-display);font-size:1.8rem;color:var(--black);margin-bottom:0.5rem} /* 8px */
.contact-form>p{color:var(--gunmetal);font-size:.9rem;margin-bottom:1.75rem} /* 28px */
.form-group{margin-bottom:1.125rem} /* 18px */
.form-group label{display:block;font-size:.75rem;letter-spacing:0.125rem; /* 2px */text-transform:uppercase;color:var(--gunmetal);margin-bottom:0.375rem; /* 6px */font-weight:500}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:0.875rem 1rem; /* 14px 16px */background:var(--white);border:0.0625rem solid rgba(0,0,0,.1); /* 1px */color:var(--black);font-family:var(--font-primary);font-size:.9rem;border-radius:0.125rem; /* 2px */transition:var(--transition);outline:none}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent);background:#fff}
.form-group textarea{height:6.25rem; /* 100px */resize:vertical}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.125rem} /* 18px */
.contact-form .btn{width:100%;justify-content:center;margin-top:0.5rem; /* 8px */background: #000; color: #fff;}
.form-row br , .form-group br { display: none; }
.form-group .wpcf7-spinner { position: absolute; }
body .wpcf7-response-output { margin: 0 !important; text-align: center; font-weight: bold; }

/* ===== STICKY CTA ===== */
.sticky-cta{position:fixed;bottom:1.5rem; /* 24px */right:1.5rem;z-index:900;display:flex;flex-direction:column;gap:0.75rem} /* 12px */
.sticky-btn{width:3.25rem; /* 52px */height:3.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);border:none;box-shadow:0 0.25rem 1.25rem rgba(0,0,0,.4)} /* 4px 20px */
.sticky-btn.whatsapp{background:#25d366;color:#fff}.sticky-btn.whatsapp:hover{transform:scale(1.1)}
.sticky-btn.phone{background:var(--accent);color:var(--black)}.sticky-btn.phone:hover{transform:scale(1.1)}
.sticky-btn svg{width:1.5rem; /* 24px */height:1.5rem}

/* ===== MAP SECTION ===== */
.map-section{width:100%;height:37.5rem; /* 600px */background:var(--black);overflow:hidden}
.map-section iframe{filter:grayscale(1) invert(1) opacity(0.7);-webkit-filter:grayscale(1) invert(1) opacity(0.7);transition:var(--transition)}
.map-section:hover iframe{opacity:1;filter:grayscale(0) invert(0)}

.entry-thumbnail , .entry-header  { display: none; }
.qi-default-template .instagram-section.section-pad { margin-top: 8rem; }

/* ===== INNER PAGES HELPER CLASSES ===== */
.inner-hero {
  position: relative;
  min-height: 28.125rem; /* 450px */
  display: flex;
  align-items: center;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  padding: 4rem 0;
}
.inner-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 50%, rgba(22,22,26,.85) 0%, rgba(14,14,16,.95) 100%);
  z-index: 1;
}
.inner-hero .container {
  position: relative;
  z-index: 2;
  text-align: center;
  width: 100%;
}
.inner-hero h1 {
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 6vw, 4rem);
  color: var(--pure-white);
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.125rem; /* 2px */
  margin-bottom: 0.75rem; /* 12px */
}
.inner-hero h1 span { color:var(--silver); }
.inner-hero .hero-cta-row {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.btn.btn-primary.btn-moderate-yellow {
	background:#111111;
	border-color:#111111;
	color: #fff;
}
.breadcrumbs {
  display: inline-flex;
  gap: 0.5rem; /* 8px */
  align-items: center;
  font-size: 0.8rem;
  letter-spacing: 0.125rem; /* 2px */
  text-transform: uppercase;
  color: var(--silver);
  margin-top: 1rem; /* 16px */
}
.breadcrumbs a { color: var(--silver); }
.breadcrumbs span { color:var(--silver); }

/* Artist Grid Styles */
.artists-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); /* 320px */
  gap: 1.875rem; /* 30px */
}
.artist-card {
  background: var(--dark);
  border: 0.0625rem solid rgba(255,255,255,.05); /* 1px */
  border-radius: 0.25rem; /* 4px */
  overflow: hidden;
  transition: var(--transition);
}
.artist-card:hover {
  border-color: rgba(212,175,55,.3);
  transform: translateY(-0.3125rem); /* -5px */
  box-shadow: 0 0.9375rem 1.875rem rgba(0,0,0,.5); /* 15px 30px */
}
.artist-img {
  width: 100%;
  height: 23.75rem; /* 380px */
  overflow: hidden;
  position: relative;
}
.artist-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--transition);
}
.artist-card:hover .artist-img img { transform: scale(1.05); }
.artist-info { padding: 1.5rem; /* 24px */text-align: center; }
.artist-info h3 {
  font-family: var(--font-display);
  font-size: 1.5rem;
  color: var(--pure-white);
  margin-bottom: 0.375rem; /* 6px */
  letter-spacing: 0.0625rem; /* 1px */
}
.artist-specialty {
  color:var(--silver);
  font-size: 0.8rem;
  letter-spacing: 0.125rem; /* 2px */
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 0.75rem; /* 12px */
}
.artist-bio { font-size: 0.9rem; color: var(--silver); line-height: 1.6; }

/* Hygiene Step Timeline */
.hygiene-timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.875rem; /* 30px */
}
.timeline-step {
  background: var(--dark);
  border: 0.0625rem solid rgba(255,255,255,.05); /* 1px */
  padding: 2.5rem 1.875rem; /* 40px 30px */
  border-radius: 0.25rem; /* 4px */
  position: relative;
  transition: var(--transition);
}
body .timeline-step:hover {
  border-color:var(--silver);
  transform: translateY(-0.3125rem); /* -5px */
}
.step-num {
  font-family: var(--font-display);
  font-size: 3rem;
  color: rgba(212,175,55,0.15);
  position: absolute;
  top: 0.9375rem; /* 15px */
  right: 1.5625rem; /* 25px */
  font-weight: 700;
  line-height: 1;
}
.timeline-step h3 {
  font-family: var(--font-display);
  font-size: 1.3rem;
  color: var(--pure-white);
  margin-bottom: 0.75rem; /* 12px */
  letter-spacing: 0.0625rem; /* 1px */
}
.timeline-step p {
  font-size: 0.9rem;
  color: var(--silver);
  line-height: 1.6;
}

/* Light Section Adaptations for Hygiene */
.light-section .timeline-step {
  background: var(--white);
  border-color: rgba(0,0,0,.06);
}
.light-section .timeline-step h3 { color: var(--black); }
.light-section .timeline-step p { color: var(--gunmetal); }
.light-section .step-num { color: rgba(179,147,46,0.1); }

/* Portfolio Filters */
.portfolio-filters {
  display: flex;
  justify-content: center;
  gap: 0.75rem; /* 12px */
  margin-bottom: 2.5rem; /* 40px */
  flex-wrap: wrap;
}
.portfolio-filter-btn  , .tab_sec .vc_tta-color-white.vc_tta-style-classic .vc_tta-tab > a {
  padding: 0.75rem 1.5rem; /* 12px 24px */
  background: var(--dark);
  color: var(--silver);
  border: 0.0625rem solid rgba(255,255,255,0.05); /* 1px */
  border-radius: 0.25rem; /* 4px */
  cursor: pointer;
  font-size: 0.85rem;
  letter-spacing: 0.0625rem; /* 1px */
  text-transform: uppercase;
  font-weight: 600;
  transition: var(--transition);
}
.portfolio-filter-btn:hover , .tab_sec .vc_tta-color-white.vc_tta-style-classic .vc_tta-tab > a:hover {
  background: var(--grey);
  color: var(--white);
}
.portfolio-filter-btn.active  , .tab_sec .vc_tta-color-white.vc_tta-style-classic  li.vc_active a {
  background: var(--silver);
  color: #000;
  border-color: var(--silver);
}
body .tab_sec .vc_tta-tabs-container { margin-bottom: 1.875rem !important; } /* 30px */
body .tab_sec .vc_tta-tabs-container .vc_tta-tabs-list { display: flex; justify-content: center; gap: 0.75rem; } /* 12px */
body .tab_sec .vc_tta-color-white.vc_tta-style-classic li.vc_active a::before  , body .tab_sec .vc_tta-color-white.vc_tta-style-classic li.vc_active a::after{
  display: none !important;
}

/* ── Our Work Page Filter Buttons ─────────────────────────────────────────────
   Mirrors .portfolio-filter-btn exactly so tabs look identical to Shop Gallery.
   Categories: ALL | REALISM | BLACK AND GREY | JAPANESE | FINE LINE
   ─────────────────────────────────────────────────────────────────────────── */
.ourwork-filters {
  display: flex;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 2.5rem;
  flex-wrap: wrap;
}
.ourwork-filter-btn {
  padding: 0.75rem 1.5rem;
  background: var(--dark);
  color: var(--silver);
  border: 0.0625rem solid rgba(255,255,255,0.05);
  border-radius: 0.25rem;
  cursor: pointer;
  font-size: 0.85rem;
  letter-spacing: 0.0625rem;
  text-transform: uppercase;
  font-weight: 600;
  transition: var(--transition);
  white-space: nowrap;
}
.ourwork-filter-btn:hover {
  background: var(--grey);
  color: var(--white);
}
.ourwork-filter-btn.active {
  background: var(--silver);
  color: #000;
  border-color:var(--silver);
}
.ourwork-filter-btn:active {
  transform: scale(0.94);
}

.hero-center-content .hero-cta-row  ,.inner-hero .hero-cta-row {
	flex-direction: column;
	gap: 15px;
}

.about-grid .btn-outline , .flex-btn-row .btn.btn-outline , .artistry-links.flex-btn-row .btn-outline , .established_sec .flex-btn-row .btn-outline , .about.section-pad .custom_btn_2.btn-outline {
	background: #000;
	color: #fff;
}


/* Our Work grid — same as .gallery-grid */
.ourwork-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
}

/* ============================================================
   SLIDER LIGHTBOX MODAL
   ============================================================ */
.lightbox-modal {
  display: none;
  position: fixed;
  inset: 0;
  background: #111111;
  z-index: 10000;
  justify-content: center;
  align-items: center;
  padding: 2.5rem;
  flex-direction: column;
}
.lightbox-modal.active {
  display: flex;
  animation: lightboxIn 0.28s ease;
}
@keyframes lightboxIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* Slide wrapper — contains the image, clips overflow for slide anim */
.lightbox-slide-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 1000px;
  overflow: hidden;
}

/* The actual image */
.lightbox-content {
  max-width: 100%;
  max-height: 78vh;
  object-fit: contain;
  box-shadow: 0 1.25rem 3.125rem rgba(0,0,0,.85);
  border-radius: 4px;
  border: 1px solid rgba(255,255,255,.06);
  display: block;
  transition: opacity 0.22s ease, transform 0.22s ease;
  user-select: none;
  -webkit-user-drag: none;
}
.lightbox-content.slide-out-left  { opacity: 0; transform: translateX(-60px) scale(0.96); }
.lightbox-content.slide-out-right { opacity: 0; transform: translateX(60px)  scale(0.96); }
.lightbox-content.slide-in-left   { animation: slideInLeft  0.25s ease forwards; }
.lightbox-content.slide-in-right  { animation: slideInRight 0.25s ease forwards; }
@keyframes slideInLeft  { from { opacity:0; transform: translateX(-60px) scale(0.96); } to { opacity:1; transform: none; } }
@keyframes slideInRight { from { opacity:0; transform: translateX(60px)  scale(0.96); } to { opacity:1; transform: none; } }

/* Prev / Next arrow buttons */
.lightbox-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255,255,255,0.10);
  border: 1.5px solid rgba(255,255,255,0.18);
  color: #fff;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10001;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
  flex-shrink: 0;
  font-size: 0;
  line-height: 1;
  outline: none;
}
.lightbox-arrow:hover {
  background: rgba(255,255,255,0.22);
  border-color: rgba(255,255,255,0.4);
  transform: translateY(-50%) scale(1.08);
}
.lightbox-arrow svg {
  width: 22px;
  height: 22px;
  display: block;
  stroke: #fff;
  stroke-width: 2.2;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.lightbox-prev { left: 40px; }
.lightbox-next { right: 40px; }

/* Counter label */
.lightbox-counter {
  margin-top: 16px;
  color: rgba(255,255,255,0.55);
  font-size: 0.8rem;
  letter-spacing: 0.1rem;
  font-family: 'Inter', sans-serif;
  user-select: none;
}

/* Close button */
.lightbox-close {
  position: absolute;
  top: 1.5rem;
  right: 2rem;
  color: #fff;
  font-size: 2rem;
  cursor: pointer;
  transition: opacity 0.2s ease, transform 0.2s ease;
  line-height: 1;
  background: none;
  border: none;
  z-index: 10001;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background:transparent;
}


/* Locations Page styles */
.locations-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem; /* 40px */
  margin-top: 3.125rem; /* 50px */
}
.location-card {
  background: var(--dark);
  border: 0.0625rem solid rgba(255,255,255,.05); /* 1px */
  border-radius: 0.25rem; /* 4px */
  overflow: hidden;
  transition: var(--transition);
}
.location-card:hover {
  border-color: rgba(212,175,55,.2);
  transform: translateY(-0.3125rem); /* -5px */
}
.location-card-info { padding: 2.5rem; } /* 40px */
.location-card-info h3 {
  font-family: var(--font-display);
  font-size: 1.8rem;
  color: var(--pure-white);
  margin-bottom: 1rem; /* 16px */
  letter-spacing: 0.0625rem; /* 1px */
}
.location-meta-list {
  display: flex;
  flex-direction: column;
  gap: 0.875rem; /* 14px */
  margin-bottom: 1.5rem; /* 24px */
}
.location-meta-item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem; /* 12px */
  font-size: 0.95rem;
  color: var(--silver);
}
.location-meta-item svg {
  width: 1.25rem; /* 20px */
  height: 1.25rem;
  color: var(--silver);
  flex-shrink: 0;
  margin-top: 0.125rem; /* 2px */
}
.location-meta-item strong { color: var(--pure-white); }
.location-card-info .btn.btn-primary {
	background: var(--silver);
	color: #000;
	border-color: var(--silver);
}
.location-card-info .btn.btn-primary:hover {
	background: #fff;
	color: #000 !important;
	border-color: #fff;
}
/* ===== FROM IDEA TO INK - 4 STEPS ===== */
.steps-section {background: #ffffff;}
#steps-section {padding-bottom: 0; }
.steps-header {text-align: center; margin-bottom: 3.75rem;} /* 60px */
.steps-header .section-title {color: var(--black);}
.steps-header .section-text {color: var(--gunmetal);}
.steps-header .section-label {color: var(--accent-dim);}


.step-icon-wrap {position: relative; display: inline-block; margin-bottom: 1.5rem;} /* 24px */
.step-num-bg {
  position: absolute;
  top: -0.625rem; right: -0.875rem; /* -10px -14px */
  font-family: var(--font-display);
  font-size: 3.5rem;
  font-weight: 700;
  color: rgba(212,175,55,.1);
  line-height: 1;
  user-select: none;
  z-index: 0;
}
.step-card-text p { margin-bottom: 0.625rem; } /* 10px */
.step-card:hover .step-icon svg {stroke: var(--black);}
.step-icon svg {width: 1.75rem; /* 28px */height: 1.75rem;color: #fff; transition: var(--transition);}
.step-card h3 {
  font-family: var(--font-display);
  font-size: 1.2rem;
  color: var(--black);
  margin-bottom: 0.75rem; /* 12px */
  letter-spacing: 0.0625rem; /* 1px */
  font-weight: 600;
}
.step-card p {color: var(--gunmetal); font-size: .9rem; line-height: 1.7;}

/* desktop arrow connectors */
.step-connector {
  display: flex; align-items: center; justify-content: center;
  padding-top: 2.125rem; /* 34px */
}
.step-connector::after {
  content: '→';
  font-size: 2rem;
  color: var(--accent);
  opacity: 0.6;
}

/* ============================================================
   HOME PAGE REDESIGN SECTIONS (from style-v5.css)
   ============================================================ */

/* ===== HERO (v5) ===== */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover}
.hero-overlay{position:absolute;inset:0;background:linear-gradient( to right, rgba(255,255,255,0.75) 0%, rgba(255,255,255,0.75) 55%, rgba(255,255,255,0.75) 100%, rgba(255,255,255,0) 100% )}
.hero-content{position:relative;z-index:2;max-width:37.5rem} /* 600px */
.hero-badge{display:inline-flex;align-items:center;gap:0.5rem; /* 8px */background:rgba(0,0,0,.06);border:0.0625rem solid rgba(0,0,0,.15); /* 1px */padding:0.5rem 1.125rem; /* 8px 18px */border-radius:1.875rem; /* 30px */margin-bottom:1.75rem; /* 28px */font-size:.75rem;letter-spacing:0.125rem; /* 2px */text-transform:uppercase;color:var(--dark);font-weight:600}
.hero h1{font-family:var(--font-display);font-size:clamp(2.5rem,5.5vw,4.5rem);color:var(--black);line-height:1.1;margin-bottom:1.5rem; /* 24px */font-weight:bold;}
.hero h1 span{color:var(--black)}
.hero p{color:var(--gunmetal);font-size:1.15rem;line-height:1.8;margin-bottom:2.25rem; /* 36px */max-width:33.75rem; /* 540px */font-weight:400}
.hero-buttons{display:flex;gap:1rem; /* 16px */flex-wrap:wrap;justify-content: center;}

.hero-flex {display: flex; align-items: center; justify-content: space-between; gap: 5rem; /* 80px */position: relative; z-index: 2; padding: 7.5rem 0;text-align:center; }
.hero-form-container{flex:0 0 26.25rem} /* 420px */
.hero-form{background:var(--pure-white);padding:3rem 2.5rem; /* 48px 40px */border-radius:0.5rem; /* 8px */border:0.0625rem solid var(--mid-grey); /* 1px */box-shadow:0 1.25rem 3.125rem rgba(0,0,0,.1); /* 20px 50px */position:relative}
.hero-form::before{content:'';position:absolute;inset:-0.0625rem; /* -1px */border-radius:0.5rem; /* 8px */background:linear-gradient(45deg, var(--mid-grey), transparent, var(--mid-grey));z-index:-1;opacity:.6}
.hero-form h3{font-family:var(--font-display);font-size:1.8rem;color:var(--black);margin-bottom:1.75rem; /* 28px */text-align:center;letter-spacing:0.0625rem} /* 1px */
.hero-form .form-group{margin-bottom:1.25rem} /* 20px */
.hero-form input, .hero-form select{width:100%;padding:1rem 1.25rem; /* 16px 20px */background:var(--off-white);border:0.0625rem solid var(--mid-grey); /* 1px */color:var(--black);border-radius:0.25rem; /* 4px */font-size:.95rem;outline:none;transition:var(--transition)}
.hero-form input:focus, .hero-form select:focus{border-color:var(--black);background:var(--pure-white)}
.hero-form .btn{width:100%;justify-content:center;padding:1rem; /* 16px */font-size:1rem;margin-top:0.625rem} /* 10px */
.form-note{text-align:center;font-size:.75rem;color:var(--silver);margin-top:1.25rem; /* 20px */letter-spacing:0.0625rem; /* 1px */text-transform:uppercase}

.hero-stats-inline{display:flex;gap:2.5rem; /* 40px */margin:2rem 0;justify-content: center;}
.hero-stat .number{font-family:var(--font-display);font-size:2.4rem;color:var(--black);font-weight:700;line-height:1}
.hero-stat .label{font-size:.7rem;letter-spacing:0.125rem; /* 2px */text-transform:uppercase;color:var(--black);margin-top:0.375rem} /* 6px */

.scroll-indicator{position:absolute;bottom:1.875rem; /* 30px */left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:0.5rem; /* 8px */color:var(--grey);font-size:.65rem;letter-spacing:0.1875rem; /* 3px */text-transform:uppercase}
.scroll-line{width:0.0625rem; /* 1px */height:2.5rem; /* 40px */background:linear-gradient(to bottom,var(--black),transparent);animation:scrollDown 2s infinite}

.hero {
  min-height:fit-content;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.hero-bg { display: block; position: absolute; inset: 0; }
.hero-bg img { width:100%; height:100%; object-fit:cover; object-position:center; }
.hero-overlay {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(to bottom, rgba(0,0,0,0.89) 0%, rgba(0,0,0,0.25) 40%, rgba(0,0,0,0.65) 100%), linear-gradient(to right, rgba(0,0,0,0.45) 0%, transparent 60%) !important;
  z-index: 1;
}

.hero-side-left {
  position: absolute;
  left: 2rem; /* 32px */
  top: 50%;
  transform: translateY(-50%) rotate(-90deg);
  transform-origin: center center;
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  letter-spacing: 0.3125rem; /* 5px */
  text-transform: uppercase;
  color:#ffffff8c;
  white-space: nowrap;
  z-index: 4;
}
.hero-side-right {
  position: absolute;
  right: 2rem; /* 32px */
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  transform-origin: center center;
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  letter-spacing: 0.3125rem; /* 5px */
  text-transform: uppercase;
  color:#ffffff8c;
  white-space: nowrap;
  z-index: 4;
}
.hero-top-rule {
  position: absolute;
  top: 5.5rem; /* 88px */
  left: 5rem; /* 80px */
  right: 5rem; /* 80px */
  height: 0.0625rem; /* 1px */
  z-index: 4;
}
.hero-top-rule::before {
  content: '— QUIET INK STUDIO —';
  position: absolute;
  top: -0.5rem; /* -8px */
  left: 50%;
  transform: translateX(-50%);
  font-family: 'Inter', sans-serif;
  font-size: 0.7rem;
  letter-spacing: 0.3125rem; /* 5px */
  text-transform: uppercase;
  color:#ffffff8c;
  white-space: nowrap;
  background: transparent;
  padding: 0 1rem; /* 16px */
}
.hero-center-content {
  position: relative;
  z-index: 3;
  text-align: center;
  padding: 8.75rem 5rem 7.5rem; /* 140px 80px 120px */
  width: 100%;
  max-width: 68.75rem; /* 1100px */
}
.hero-eyebrow-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem; /* 20px */
  margin-bottom: 2.25rem; /* 36px */
}
.hero-eyebrow-row::before,
.hero-eyebrow-row::after {
  content: '';
  display: block;
  height: 0.0625rem; /* 1px */
  width: 3.75rem; /* 60px */
  background: rgba(255,255,255,0.4);
}
.hero-eyebrow-text {
  font-family: 'Inter', sans-serif;
  font-size: 0.7rem;
  letter-spacing: 0.3125rem; /* 5px */
  text-transform: uppercase;
  color: rgba(255,255,255,0.65);
  font-weight: 500;
}
.hero .hero-mega-h1 {
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: -0.125rem; /* -2px */
  margin: 0 0 2rem; /* 32px */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem; /* 8px */
  color: #ffffff !important;
}
.hero .hm-solid {
  font-size: clamp(3.5rem, 11vw, 6rem);
  color: #ffffff !important;
  display: block;
}
.hero .hm-outline {
  font-size: clamp(3.5rem, 11vw, 6rem);
  color: transparent !important;
  -webkit-text-stroke: 0.125rem rgba(255,255,255,0.8); /* 2px */
  display: block;
  letter-spacing: 0.25rem; /* 4px */
}
.hero .hm-small {
  font-size: clamp(3rem, 11vw, 3rem);
  color: rgba(255,255,255,0.9) !important;
  display: block;
  letter-spacing: 0.1875rem; /* 3px */
  font-weight: 300;
}
.hero h1, .hero h1 span { color: #ffffff !important; }
.hero p { color: rgba(255,255,255,0.65) !important; }

.hero-center-rule {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem; /* 16px */
  margin: 0 auto 1.75rem; /* 28px */
  width: fit-content;
}
.hero-center-rule span {
  display: block;
  width: 5rem; /* 80px */
  height: 0.0625rem; /* 1px */
  background: rgba(255,255,255,0.4);
}
.hero-center-rule i {
  font-style: normal;
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  color: rgba(255,255,255,0.5);
}
.hero-sub-text {
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  color: rgba(255,255,255,0.6);
  letter-spacing: 0.0625rem; /* 1px */
  max-width: 28.75rem; /* 460px */
  margin: 0 auto 2.75rem; /* 44px */
  line-height: 1.8;
}
.hero-cta-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem; /* 32px */
}
.hero-cta-row .btn-outline {
  border-color: rgba(255,255,255,0.8) !important;
  color: #fff !important;
  font-size: 0.85rem;
  letter-spacing: 0.1875rem; /* 3px */
  padding: 1rem 2.5rem; /* 16px 40px */
  background: transparent !important;
}
.hero-cta-row .btn-outline:hover {
  background: #fff !important;
  color: #111 !important;
}
.hero-cta-side {
  font-family: 'Inter', sans-serif;
  font-size: 0.6rem;
  letter-spacing: 0.1875rem; /* 3px */
  text-transform: uppercase;
  color: rgba(255,255,255,0.45);
}
.hero-stats-bar {
  width: 100%;
  z-index: 4;
  display: flex;
  background: rgba(0,0,0,0.6);
  backdrop-filter: blur(1rem); /* 16px */
  border-top: 0.0625rem solid rgba(255,255,255,0.1); /* 1px */
    margin-bottom: 1.5rem;
}
.hero-stats-bar-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 1.375rem 1rem; /* 22px 16px */
  border-right: 0.0625rem solid rgba(255,255,255,0.08); /* 1px */
  gap: 0.3125rem; /* 5px */
}
.hero-stats-bar-item:last-child { border-right: none; }
.hero-stats-bar-item .n {
  font-family: 'Oswald', sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}
.hero-stats-bar-item .l {
  font-family: 'Inter', sans-serif;
  font-size: 0.58rem;
  letter-spacing: 0.15625rem; /* 2.5px */
  text-transform: uppercase;
  color: rgba(255,255,255,0.4);
}
.hero-corner-badge {
  position: absolute;
  top: 6.875rem; /* 110px */
  right: 5rem; /* 80px */
  z-index: 4;
  border: 0.0625rem solid rgba(255,255,255,0.2); /* 1px */
  padding: 0.875rem 1.125rem; /* 14px 18px */
  text-align: center;
}
.hero-corner-badge .cb-num {
  font-family: 'Oswald', sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}
.hero-corner-badge .cb-label {
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  letter-spacing: 0.125rem; /* 2px */
  text-transform: uppercase;
  color: rgba(255,255,255,0.45);
  margin-top:0.55rem; /* 4px */
	
}

/* ===== TRUST BAR (v5) ===== */
.trust-bar{border-top:0.0625rem solid var(--mid-grey); /* 1px */border-bottom:0.0625rem solid var(--mid-grey); /* 1px */padding:0.9375rem 0; /* 15px */background:var(--black)}
.trust-bar .container{display:flex;justify-content:center;flex-wrap:wrap;gap:2.5rem; /* 40px */align-items:center}
.trust-item{display:flex;align-items:center;gap:0.75rem; /* 12px */color:var(--light-grey);font-size:.95rem;letter-spacing:0.0625rem; /* 1px */font-weight:500}
.trust-item svg{width:1.375rem; /* 22px */height:1.375rem;color:var(--black);flex-shrink:0}
.trust-item svg {width: 1.0625rem; /* 17px */height: 1.0625rem;color: var(--mid-grey);}

/* ===== STATS BAR / TICKER (v5) ===== */
.stats-bar {
  background: var(--black);
  padding: .9rem 0;
  overflow: hidden;
  border-top: 0.0625rem solid rgba(255,255,255,.06); /* 1px */
}
.stats-ticker { overflow: hidden; white-space: nowrap; }
.ticker-track {
  display: inline-flex;
  gap: 2.5rem;
  animation: ticker-move 28s linear infinite;
}
.ticker-track span {
  font-size: .7rem;
  font-weight: 500;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
}
.ticker-dot { color: rgba(255,255,255,.25) !important; }

/* ===== NUMBERS SECTION (v5) ===== */
.numbers-section {
  background: var(--off-white);
  border-bottom: 0.0625rem solid var(--mid-grey); /* 1px */
}
.number-card  > div {
    display: flex;
    gap: 1rem;
    align-items: center;
    align-content: center;
}
.numbers-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}
.number-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 3.5rem 2rem;
  border-right: 0.0625rem solid var(--mid-grey); /* 1px */
  text-align: center;
  position: relative;
}
.number-card:last-child { border-right: none; }
.number-card::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) scaleX(0);
  width: 2.5rem; /* 40px */
  height: 0.125rem; /* 2px */
  background: var(--black);
  transition: transform .5s ease;
}
.number-card:hover::after { transform: translateX(-50%) scaleX(1); }
.number-value {
  font-family: var(--font-display);
  font-size: clamp(3rem, 6vw, 5.5rem);
  font-weight: 800;
  line-height: 1;
  color: var(--black);
}
.number-suffix {
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 800;
  color: var(--mid-grey);
  align-self: flex-start;
  margin-top: .3rem;
}
.number-time {
  font-family: var(--font-display);
  font-size: clamp(3rem, 5vw, 5rem);
}
.number-label {
  font-size: .65rem;
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--silver);
  margin-top: 1.6rem;
}

/* ===== ABOUT SECTION (v5) ===== */
.about-section {
  background: var(--pure-white);
  position: relative;
  overflow: hidden;
}
.about-svg-bg {
  position: absolute;
  right: -10%;
  top: 50%;
  transform: translateY(-50%);
  width: 55%;
  pointer-events: none;
  opacity: .5;
}
.about-svg-bg svg { width: 100%; height: auto; }
.about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6rem;
  align-items: center;
}
.about-image { position: relative; }
.about-img-frame {
  position: relative;
  border-radius: 0.125rem; /* 2px */
  overflow: visible;
}
.about-img-frame::before {
  content: '';
  position: absolute;
  inset: -1rem; /* -16px */
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  border-radius: 0.125rem; /* 2px */
  pointer-events: none;
}
.about-img-frame img {
  width: 100%;
  aspect-ratio: 4/5;
  object-fit: cover;
  border-radius: 0.125rem; /* 2px */
}
.about-img-badge {
  position: absolute;
  bottom: -1.5rem;
  right: -1.5rem;
  background: var(--black);
  color: var(--pure-white);
  width: 5.625rem; /* 90px */
  height: 5.625rem; /* 90px */
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-family: var(--font-sans);
  border: 0.1875rem solid var(--pure-white); /* 3px */
}
.about-img-badge span {
  font-size: .55rem;
  letter-spacing: .15em;
  color: var(--silver);
  text-transform: uppercase;
}
.about-img-badge strong {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1;
}
.about-section .about-content { padding-right: 2rem; }
.about-text {
  color: var(--gunmetal);
  line-height: 1.8;
  margin-bottom: 1.4rem;
  font-size: 1rem;
}
.about-badges {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .9rem;
  margin: 2rem 0;
}
.badge-item {
  display: flex;
  align-items: center;
  gap: .7rem;
  font-size: .78rem;
  font-weight: 500;
  color: var(--dark);
  letter-spacing: .02em;
}
.badge-item svg { color: var(--silver); flex-shrink: 0; }

/* ===== PROCESS STEPS (v5) ===== */
.steps-section {
  position: relative;
  background: var(--off-white);
  overflow: hidden;
}
.steps-bg-img {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: .04;
  filter: grayscale(1);
}
.steps-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
  margin-top: 4rem;
}
.step-card {
  background: var(--pure-white);
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  border-radius: 0.125rem; /* 2px */
  padding: 2.5rem 2rem;
  text-align: center;
  position: relative;
  transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.step-card:hover {
  transform: translateY(-0.5rem); /* -8px */
  box-shadow: 0 1.25rem 3.125rem rgba(17,17,17,.08); /* 20px 50px */
  border-color: var(--silver);
}
.step-icon {
  width: 4rem; /* 64px */
  height: 4rem; /* 64px */
  margin-inline: auto;
  margin-bottom: 1.5rem;
}
.step-icon svg { width: 100%; height: 100%; color: var(--gunmetal); }
.step-number {
  display: block;
  font-family: var(--font-display);
  font-size: 3.5rem;
  font-weight: 800;
  color: var(--light-grey);
  line-height: 1;
  position: absolute;
  top: 1.2rem;
  right: 1.5rem;
}
.step-card h3 {
  font-family: var(--font-display);
  font-size: 1.3rem;
  font-weight: 700;
  margin-bottom: .7rem;
  color: var(--black);
}
.step-card p {
  font-size: .9rem;
  color: var(--grey);
  line-height: 1.7;
}

/* ===== TESTIMONIALS SECTION (v5) ===== */
.testimonials-section { background: var(--pure-white); }
.tab-buttons {
  display: flex;
  justify-content: center;
  gap: .5rem;
  flex-wrap: wrap;
  margin-bottom: 3rem;
}
.tab-btn {
  padding: .6rem 1.6rem;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--grey);
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  border-radius: 0.125rem; /* 2px */
  transition: all var(--transition);
}
.tab-btn:hover, .tab-btn.active {
  background: var(--black);
  color: var(--pure-white);
  border-color: var(--black);
}
.testimonial-panels { min-height: 16.25rem; /* 260px */position: relative; }
.testimonial-panel {
  display: none;
  animation: fade-in .4s ease;
}
.testimonial-panel.active { display: block; }
.testi-card {
  max-width: 53.75rem; /* 860px */
  margin-inline: auto;
  background: var(--off-white);
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  border-radius: 0.125rem; /* 2px */
  padding: 2.5rem 3rem;
  position: relative;
}
.testi-card::before {
  content: '"';
  position: absolute;
  top: .5rem;
  left: 2rem;
  font-family: var(--font-display);
  font-size: 6rem;
  line-height: 1;
  color: var(--mid-grey);
  pointer-events: none;
}
.testi-stars {
  color: var(--black);
  font-size: 1rem;
  letter-spacing: .15em;
  margin-bottom: 1rem;
}
.testi-quote {
  font-family: var(--font-serif);
  font-size: 1.25rem;
  font-style: italic;
  color: var(--dark);
  line-height: 1.7;
  margin-bottom: 1.5rem;
}
.testi-author {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.testi-avatar {
  width: 2.625rem; /* 42px */
  height: 2.625rem; /* 42px */
  border-radius: 50%;
  background: var(--black);
  color: var(--pure-white);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: .9rem;
  flex-shrink: 0;
}
.testi-author > div:nth-child(2) {
  display: flex;
  flex-direction: column;
}
.testi-author strong { font-size: .9rem; color: var(--black); }
.testi-author span { font-size: .75rem; color: var(--grey); }
.testi-platform {
  margin-left: auto;
  width: 2.25rem; /* 36px */
  height: 2.25rem; /* 36px */
  border-radius: 50%;
  background: var(--pure-white);
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .9rem;
  font-weight: 700;
  color: #4285F4;
}
.reviews-badge {
  margin-top: 4rem;
  text-align: center;
}
.reviews-badge-inner {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: .8rem;
  padding: 2.5rem 4rem;
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  border-radius: 0.125rem; /* 2px */
}
.reviews-big {
  font-family: var(--font-display);
  font-size: clamp(1.4rem, 3vw, 2.2rem);
  font-weight: 800;
  color: var(--black);
}
.reviews-count {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.reviews-count strong {
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 800;
  color: var(--black);
  line-height: 1;
}
.reviews-count span {
  font-size: .72rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--silver);
  margin-top: .3rem;
}

/* ===== SERVICES SECTION (v5) ===== */
.services-section {
  position: relative;
  overflow: hidden;
}
.services-svg {
  position: absolute;
  right: 3%;
  top: 50%;
  transform: translateY(-50%);
  width: 25rem; /* 400px */
  height: 25rem; /* 400px */
  pointer-events: none;
}
.services-svg svg { width: 100%; height: 100%; }
.services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.09375rem; /* 1.5px */
  background: var(--mid-grey);
  border: 0.09375rem solid var(--mid-grey); /* 1.5px */
}
.service-card {
  background: var(--pure-white);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: transform var(--transition);
}
.service-card:hover { z-index: 2; transform: scale(1.01); }
.service-img-wrap {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4/3;
}
.service-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}
.service-card:hover .service-img-wrap img { transform: scale(1.06); }
.service-img-overlay {
  position: absolute;
  inset: 0;
  background: rgba(17,17,17,.7);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity var(--transition);
}
.service-card:hover .service-img-overlay { opacity: 1; }
.service-book-btn {
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--pure-white);
  border: 0.0625rem solid rgba(255,255,255,.5); /* 1px */
  padding: .7rem 1.4rem;
  border-radius: 0.125rem; /* 2px */
  transition: background var(--transition);
}
.service-book-btn:hover { background: rgba(255,255,255,.15); }
.service-info {
  padding: 1.8rem;
  flex: 1;
}
.service-icon {
  width: 1.75rem; /* 28px */
  height: 1.75rem; /* 28px */
  margin-bottom: .9rem;
}
.service-icon svg { width: 100%; height: 100%; }
.service-info h3 {
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 700;
  margin-bottom: .5rem;
  color: var(--black);
}
.service-info p {
  font-size: .88rem;
  color: var(--grey);
  line-height: 1.7;
}
.page-template-template-why-us #reviews-section {
	background: #1c1c21 !important;
	color: #fff;
}

.page-template-template-why-us #reviews-section .section-text {
	color: var(--silver);
}
.page-template-template-why-us #reviews-section .tab-btn.active {
	background: var(--silver);
	border-color:var(--silver);
	color:#000;
}
.page-template-template-why-us #reviews-section .review-card {
	background: var(--black);
}
.page-template-template-why-us #reviews-section .review-card {
	background: var(--black);
    border: 0;
}
.page-template-template-why-us #reviews-section .review-card .review-source {
	color: var(--silver);
}
.page-template-template-why-us #reviews-section .review-card * {
	color: #fff;
}
.page-template-template-why-us #reviews-section .review-card .review-avatar {
	background: var(--gunmetal);
	border: 0;
	color: var(--silver);
}
.page-template-template-why-us #reviews-section .dot.active {
	background: var(--silver);
}
.page-template-template-why-us #reviews-section .tab-btn {
	background: #2a2d33;
	color: var(--white);
	border: 0;
}

/* ===== MARQUEE SECTION (v5) ===== */
.marquee-section {
  padding: 2.5rem 0;
  background: var(--black);
  overflow: hidden;
  border-top: 0.0625rem solid rgba(255,255,255,.05); /* 1px */
}
.marquee-track {
  display: inline-flex;
  gap: 3rem;
  white-space: nowrap;
  animation: marquee-move 20s linear infinite;
    align-items: center;
}
.marquee-track span {
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 4vw, 3.5rem);
  font-weight: 700;
  color: transparent;
  -webkit-text-stroke: 0.0625rem rgba(255,255,255,.2); /* 1px */
  letter-spacing: .04em;
}
.marquee-dot { color: rgba(255,255,255,.2) !important; -webkit-text-stroke: 0 !important; font-size: 1.5rem !important; }

/* ===== ARTISTRY / OUR PROCESS SECTION (v5) ===== */
.artistry-section { background: var(--pure-white); }
.artistry-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6rem;
  align-items: center;
}
.artistry-img {
  position: relative;
}
.artistry-img img {
  width: 100%;
  aspect-ratio: 3/4;
  object-fit: cover;
  border-radius: 0.125rem; /* 2px */
}
.artistry-quote-block {
  position: absolute;
  bottom: -1.5rem;
  right: -2rem;
  background: var(--off-white);
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  border-radius: 0.125rem; /* 2px */
  padding: 1.5rem 1.8rem;
  max-width: 17.5rem; /* 280px */
}
.artistry-quote-block span {
  font-family: var(--font-serif);
  font-size: 1rem;
  font-style: italic;
  color: var(--gunmetal);
  line-height: 1.5;
}
.artistry-content { padding-left: 1rem; }
.artistry-content p {
  color: var(--gunmetal);
  line-height: 1.8;
  margin-bottom: 1.4rem;
  font-size: 1rem;
}
.artistry-links {
  display: flex;
  align-items: center;
  gap: 2rem;
  flex-wrap: wrap;
  margin-top: 2rem;
}

/* ===== PORTFOLIO SECTION (v5) ===== */
.portfolio-section {
  background: var(--off-white);
  position: relative;
  overflow: hidden;
}
.portfolio-svg {
  position: absolute;
  left: 2%;
  bottom: 10%;
  width: 18.75rem; /* 300px */
  height: 18.75rem; /* 300px */
  pointer-events: none;
}
.portfolio-svg svg { width: 100%; height: 100%; }
.portfolio-masonry {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 21.25rem); /* 340px */
  gap: 0.75rem; /* 12px */
}
.portfolio-item {
  position: relative;
  overflow: hidden;
  border-radius: 0.125rem; /* 2px */
  background: var(--mid-grey);
  transition-delay: var(--delay, 0s);
}
.portfolio-item--tall , .portfolio-masonry .portfolio-item:nth-child(3) {
  grid-row: span 2;
}
.portfolio-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s ease;
}
.portfolio-item:hover img { transform: scale(1.06); }
.portfolio-item-overlay {
  position: absolute;
  inset: 0;
  background: rgba(17,17,17,.55);
  display: flex;
  align-items: flex-end;
  padding: 1.2rem;
  opacity: 0;
  transition: opacity var(--transition);
}
.portfolio-item:hover .portfolio-item-overlay { opacity: 1; }
.portfolio-item-overlay span {
  font-size: .68rem;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--pure-white);
  border: 0.0625rem solid rgba(255,255,255,.4); /* 1px */
  padding: .3rem .8rem;
  border-radius: 0.125rem; /* 2px */
}

/* ===== HYGIENE SECTION (v5) ===== */
.hygiene-section { background: var(--pure-white);   overflow: hidden;}
.hygiene-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6rem;
  align-items: center;
}
.hygiene-content { order: 1; }
.hygiene-img {
  order: 2;
  position: relative;
}
.hygiene-img img {
  width: 100%;
  aspect-ratio: 4/5;
  object-fit: cover;
  border-radius: 0.125rem; /* 2px */
}
.hygiene-cert-badge {
  position: absolute;
  top: 1.5rem;
  right: -1.5rem;
  background: var(--black);
  color: var(--pure-white);
  padding: 1.2rem 1.4rem;
  border-radius: 0.125rem; /* 2px */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .5rem;
  text-align: center;
}
.hygiene-cert-badge svg { color: rgba(255,255,255,.6); }
.hygiene-cert-badge span {
  font-size: .6rem;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  line-height: 1.4;
  color: rgba(255,255,255,.7);
}
.hygiene-list {
  margin: 2rem 0;
  display: flex;
  flex-direction: column;
  gap: .9rem;
}
.hygiene-list li {
  display: flex;
  align-items: center;
  gap: .8rem;
  font-size: .92rem;
  color: var(--dark);
  line-height: 1.5;
}
.hygiene-list li svg {
  color: var(--black);
  width: 1.125rem; /* 18px */
  height: 1.125rem; /* 18px */
  flex-shrink: 0;
}

/* ===== FAQ SECTION (v5) ===== */
.faq-section {
  background: var(--off-white);
  position: relative;
  overflow: hidden;
}
.faq-svg {
  position: absolute;
  right: 5%;
  top: 10%;
  width: 25rem; /* 400px */
  height: 25rem; /* 400px */
  pointer-events: none;
}
.faq-svg svg { width: 100%; height: 100%; }
.faq-list {
  max-width: 53.75rem; /* 860px */
  margin-inline: auto;
}
.faq-item {
  border-bottom: 0.0625rem solid var(--mid-grey); /* 1px */
}
.faq-question {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.4rem 0;
  font-size: 1rem;
  font-weight: 500;
  color: var(--black);
  text-align: left;
  gap: 1.5rem;
  transition: color var(--transition);
}
.faq-question:hover { color: var(--gunmetal); }
.faq-icon {
  flex-shrink: 0;
  color: var(--silver);
  transition: transform var(--transition), color var(--transition);
}
.faq-item.active .faq-icon {
  transform: rotate(180deg);
  color: var(--black);
}
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height .45s ease, padding .45s ease;
}
.faq-item.active .faq-answer { max-height: 18.75rem; } /* 300px */
.faq-answer p {
  padding: 0 0 1.5rem;
  font-size: .95rem;
  color: var(--grey);
  line-height: 1.8;
}
.faq-answer a {
  color: var(--black);
  text-decoration: underline;
  text-underline-offset: 0.1875rem; /* 3px */
}

/* ===== CTA SECTION (v5) ===== */
.cta-section {
  background: var(---white);
  padding: 6rem 0;
  position: relative;
  overflow: hidden;
}
.cta-svg-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.cta-svg-bg svg { width: 100%; height: 100%; }
.cta-card {
  position: relative;
  z-index: 2;
  max-width: 53.75rem; /* 860px */
  margin-inline: auto;
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  border-radius: 0.125rem; /* 2px */
  background: var(--pure-white);
  padding: 5rem 4rem;
  text-align: center;
}
.cta-star {
  font-size: 1.2rem;
  color: var(--silver);
  margin-bottom: 1.5rem;
  animation: spin-slow 12s linear infinite;
  display: inline-block;
}
.cta-heading {
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 800;
  color: var(--black);
  line-height: 1.1;
  margin-bottom: 1rem;
}
.cta-sub {
  color: var(--grey);
  font-size: 1rem;
  margin-bottom: 2.5rem;
  line-height: 1.6;
}
.cta-tagline {
  margin-top: 1.2rem;
  font-size: .65rem;
  font-weight: 600;
  letter-spacing: .25em;
  color: var(--silver);
  text-transform: uppercase;
}

/* ===== INSTAGRAM SECTION (v5) ===== */
.instagram-section { background: var(--off-white); }
.insta-handle {
  color: var(--black);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.1875rem; /* 3px */
  transition: color var(--transition);
}
.insta-handle:hover { color: var(--gunmetal); }
.insta-item {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 0.125rem; /* 2px */
  display: block;
}
.insta-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}
.insta-item:hover img { transform: scale(1.07); }
.insta-overlay {
  position: absolute;
  inset: 0;
  background: rgba(17,17,17,.5);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--pure-white);
  opacity: 0;
  transition: opacity var(--transition);
}
.insta-item:hover .insta-overlay { opacity: 1; }

.section-pad.light-section .hygiene-content {
	background: linear-gradient(rgba(244,244,246,0.8), rgba(244,244,246,0.8)), url('images/Background2.png') !important;
	background-position: center !important;
	padding: 2.5rem; /* 40px */
	border-radius: 0.5rem; /* 8px */
	background-size: cover !important;
}

/* ============================================================
   GLOBAL HEADER & MOBILE NAV (from v5)
   ============================================================ */
.header {width: 100%; padding: 1.55rem 0; /* 20px */transition: var(--transition); position: relative; top: 0; left: 0; z-index: 99; }
.header.scrolled{background:rgba(255,255,255);backdrop-filter:blur(0.625rem); /* 10px */padding:1.4rem 0; /* 12px */border-bottom:0.0625rem solid var(--mid-grey); /* 1px */box-shadow:0 0.25rem 1.25rem rgba(0,0,0,.08); /* 4px 20px */position:fixed;top:0;left:0;}
.header .container {display: flex; align-items: center; justify-content: space-between; gap: 2.5rem; }
.logo img {height: auto; width: 32rem; padding-top: 0; padding-bottom: 0; }
.header.scrolled .logo img{filter: brightness(100%);}
.nav-links {display: flex; align-items: center; gap: 2.25rem; flex-wrap: nowrap; }
.nav-links a {font-size: 1rem; letter-spacing: 0.125rem; /* 2px */text-transform: uppercase; color: var(--dark); font-weight: 400; position: relative; white-space: nowrap; }
.nav-links a::after{content:'';position:absolute;bottom:-0.25rem; /* -4px */left:0;width:0;height:0.0625rem; /* 1px */background:var(--black);transition:var(--transition)}
.nav-links a:hover{color:var(--black)}.nav-links a:hover::after{width:100%}
.nav-cta{background:var(--black);color:#ffffff !important;padding:0.625rem 1.5rem; /* 10px 24px */font-size:.75rem;letter-spacing:0.125rem; /* 2px */text-transform:uppercase;font-weight:700;border-radius:3.125rem} /* 50px */
.nav-cta:hover{background:var(--silver);color:#000 !important;}
.nav-cta::after{display:none !important}
.hamburger{display:none;flex-direction:column;gap:5px; /* 5px */cursor:pointer;z-index:1200;position:relative}
.hamburger span {
	width: 26px;
	height: 2px;
	background: var(--black);
	transition: all 0.35s cubic-bezier(0.4,0,0.2,1);
	display: block;
}
.hamburger.active{position:fixed;top:1.25rem; /* 20px */right:1.5rem; /* 24px */z-index:1200}
.hamburger.active span{background:#111111 !important}
.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(0.3125rem,0.3125rem)} /* 5px 5px */
.hamburger.active span:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(0.3125rem,-0.3125rem)} /* 5px -5px */

/* ===== MOBILE CALL BUTTON ===== */
.mobile-call-btn {
	display: none; /* hidden on desktop */
	align-items: center;
	justify-content: center;
	width: 37px;
	height: 37px;
	border-radius: 50%;
	background: #000;
	color: #fff;
	text-decoration: none;
	flex-shrink: 0;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	  margin-left: auto;
}
.mobile-call-btn svg {
	display: block;
	width: 20px;
	height: 20px;
}

@keyframes callPulse {
	0%   { box-shadow: 0 0 0 0 rgba(37,211,102,0.55); }
	70%  { box-shadow: 0 0 0 10px rgba(37,211,102,0); }
	100% { box-shadow: 0 0 0 0 rgba(37,211,102,0); }
}

.header-wrap p , .about-content .section-text {
	max-width: 38.75rem; /* 620px */
}

/* ===== MOBILE NAV (v5) ===== */
.mobile-nav {
	position: fixed;
	top: 0;
	width: 100%;
	height: 100vh;
	padding: 80px 40px 60px;
	background: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 15px;
	z-index: 9999;
	transform: translateX(100%);
	transition: transform 0.6s ease-in-out;
}
/* Suppress any stray list bullets inside mobile nav */
.mobile-nav ul,
.mobile-nav ol,
.mobile-nav li {
  list-style: none !important;
  padding: 0;
  margin: 0;
}
.mobile-nav li {
  display: contents; /* flatten — shows as flex child of .mobile-nav */
}
.mobile-nav.active{
  pointer-events:auto;
  opacity:1;
  transform:translateX(0) !important;
  visibility:visible;
  transition:transform 0.42s cubic-bezier(0.4,0,0.2,1),
             opacity 0.42s ease,
             visibility 0s linear 0s;
}
.mobile-nav a{
  font-size:1.5rem;letter-spacing:0.1875rem; /* 3px */text-transform:uppercase;
  color:var(--black);font-weight:300;
  opacity:0;transform:translateX(1.875rem); /* 30px */
  transition:opacity 0.3s ease,transform 0.3s ease,color 0.2s ease;
  transition-delay:0s;
}
.mobile-nav.active a{opacity:1 !important;transform:translateX(0) !important}
.mobile-nav.active a:nth-child(1){transition-delay:0.12s}
.mobile-nav.active a:nth-child(2){transition-delay:0.17s}
.mobile-nav.active a:nth-child(3){transition-delay:0.22s}
.mobile-nav.active a:nth-child(4){transition-delay:0.27s}
.mobile-nav.active a:nth-child(5){transition-delay:0.32s}
.mobile-nav.active a:nth-child(6){transition-delay:0.37s}
#mobileNav .btn.btn-primary{color:#fff !important}
.mobile-nav-overlay{
  position:fixed;inset:0;
  background:rgba(0,0,0,0.55);
  z-index:1040;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity 0.42s ease,visibility 0s linear 0.42s;
}
.mobile-nav-overlay.active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:opacity 0.42s ease,visibility 0s linear 0s;
}
.mobile-nav-close{
  position:absolute;
  top:1.5rem; /* 24px */
  right:1.5rem; /* 24px */
  width:2.75rem; /* 44px */
  height:2.75rem; /* 44px */
  background:none;border:none;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  z-index:1300;
  padding:0;
}
.mobile-nav-close span{
  position:absolute;
  width:1.75rem; /* 28px */
  height:0.125rem; /* 2px */
  background:#111111;
  border-radius:0.125rem; /* 2px */
  display:block;
}
.mobile-nav-close span:nth-child(1){transform:rotate(45deg)}
.mobile-nav-close span:nth-child(2){transform:rotate(-45deg)}
.cta-card-sub{margin-top:1.75rem} /* 28px */
.cta-card-text {display: flex; flex-direction: column; gap: 1.875rem; } /* 30px */


/* ============================================================
   GLOBAL FOOTER (from v5)
   ============================================================ */
.site-footer {
  background: var(--black);
  color: var(--pure-white);
  position: relative;
  overflow: hidden;
  padding-top: 5rem;
}
.footer-svg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.footer-svg svg { width: 100%; height: 100%; }
.footer-inner {
	display: grid;
	grid-template-columns:0.9fr 0.4fr 1fr;
	gap: 4rem;
	padding-bottom: 4rem;
	border-bottom: 0.0625rem solid rgba(255,255,255,.08);
	position: relative;
	z-index: 2;
}
.footer-logo {
  height: auto;
  width: auto;
 filter: brightness(0) invert(1) opacity(1); 
  margin-bottom: 1.2rem;
  width: 27rem;
}
.footer-brand p {
  font-size: 1rem;
  color: rgba(255,255,255,.55);
  line-height: 1.7;
	  max-width: 83%;
  font-weight: 400;
}
.footer-social {
  display: flex;
  flex-direction: column;
  gap: .7rem;
  margin-top: 1.5rem;
}
.footer-social a {
  display: flex;
  align-items: center;
  gap: .6rem;
  font-size: 1rem;
  font-weight: 500;
  color: rgba(255,255,255,.55);
  letter-spacing: .05em;
  transition: color var(--transition);font-weight: 400;
}
.footer-social a:hover { color: rgba(255,255,255,.8); }
.footer-col h4 {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
  margin-bottom: 1.3rem;
}
.footer-col ul {
  display: flex;
  flex-direction: column;
  gap: .9rem;
}
.footer-col li a {
  font-size: 1rem;
  color: rgba(255,255,255,.55);
  transition: color var(--transition);font-weight: 400;
}
.footer-col li a:hover { color: rgba(255,255,255,.8); }
.footer-locations {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 0.0625rem solid rgba(255,255,255,.07); /* 1px */
}
.footer-locations p {
  font-size: 1rem;
  color: rgba(255,255,255,.55);
  line-height: 1.8;font-weight: 400;
}
.footer-bottom {
  padding: 1.4rem 0;
  position: relative;
  z-index: 2;
}
.footer-bottom-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer-bottom-inner span , .footer-bottom-inner div {
  font-size: .7rem;
  color: rgba(255,255,255,.25);
  letter-spacing: .06em;
}
.footer-bottom-inner span a , .footer-bottom-inner a {
  color: rgba(255,255,255,.45);
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.2);
  transition: color 0.2s ease, border-color 0.2s ease;
}
.footer-bottom-inner span a:hover , .footer-bottom-inner a:hover {
  color: rgba(255,255,255,.85);
  border-color: rgba(255,255,255,.6);
}

/* ============================================================
   REVIEWS SHORTCODE COMPONENT (from v5)
   ============================================================ */

/* Section wrapper */
.reviews { background: var(--off-white); }

/* Header */
.reviews .header-wrap { text-align: center; margin-bottom: 3.75rem; } /* 60px */
.reviews .header-wrap .section-text { margin: 0 auto; }
#reviews-section .section-title { text-align: center; }

/* section-label / section-text compatibility */
.section-label {
  font-size: .75rem;
  letter-spacing: 0.25rem; /* 4px */
  text-transform: uppercase;
  color: var(--grey);
  margin-bottom: 0.75rem; /* 12px */
  font-weight: 600;
}
.home  .section-text {
  color: var(--gunmetal);
  font-size: 1.05rem;
  max-width: 38.75rem; /* 620px */
  line-height: 1.8;
}

/* Tabs */
.review-tabs {
  display: flex;
  justify-content: center;
  gap: 0.75rem; /* 12px */
  margin-bottom: 2.5rem; /* 40px */
  flex-wrap: wrap;
}
.tab-btn {
  padding: 0.75rem 1.5rem; /* 12px 24px */
  background: var(--pure-white);
  color: var(--dark);
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  border-radius: 0.25rem; /* 4px */
  cursor: pointer;
  font-size: 0.85rem;
  letter-spacing: 0.0625rem; /* 1px */
  text-transform: uppercase;
  font-weight: 600;
  transition: var(--transition);
}
.tab-btn:hover { background: var(--light-grey); color: var(--black); }
.tab-btn.active { background: var(--black); color: #ffffff; border-color: var(--black); }

/* ── Main section tabs: Testimonials | Reviews ── */
.main-review-tabs {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 0;
  margin-bottom: 3rem;
  border-bottom: 1.5px solid rgba(17,17,17,0.12);
  position: relative;
}
.main-tab-btn {
  position: relative;
  background: none;
  border: none;
  border-bottom: 3px solid transparent;
  margin-bottom: -1.5px;
  padding: 0.75rem 2.5rem 0.85rem;
  font-family: var(--font-body, 'Inter', sans-serif);
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(17,17,17,0.38);
  cursor: pointer;
  transition: color 0.25s ease, border-color 0.25s ease;
  white-space: nowrap;
}
.main-tab-btn:hover {
  color: rgba(17,17,17,0.75);
}
.main-tab-btn.active {
  color: var(--black, #111);
  border-bottom-color: var(--black, #111);
}
/* small dot indicator on active tab */
.main-tab-btn.active::after {
  content: '';
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%);
  width: 6px;
  height: 6px;
  background: var(--black, #111);
  border-radius: 50%;
}

/* Main panels */
.main-tab-panel { display: none; }
.main-tab-panel.active { display: block; }

/* Location panels */
.location-reviews { display: none; }
.location-reviews.active { display: block; }

/* Slider container */
.slider-container {
  overflow: hidden;
  position: relative;
  width: 100%;
  padding: 0.625rem 0 2.5rem; /* 10px 40px */
  cursor: grab;
  user-select: none;
  -webkit-user-select: none;
}
.slider-container:active {
  cursor: grabbing;
}
.slider-track {
  display: flex;
  transition: transform 1.2s cubic-bezier(0.25, 1, 0.5, 1);
  gap: 1.5rem; /* 24px */
}

/* Review cards */
.review-card {
  flex: 0 0 calc(33.333% - 1rem); /* 16px */
  max-width: calc(33.333% - 1rem);
  background: var(--pure-white);
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  padding: 2.25rem; /* 36px */
  border-radius: 0.25rem; /* 4px */
  transition: var(--transition);
  position: relative;
}
.review-card:hover {
  border-color: rgba(0,0,0,.25);
  box-shadow: 0 0.5rem 1.875rem rgba(0,0,0,.08); /* 8px 30px */
}

/* Stars */
.review-stars {
  font-size: 1rem;
  color: #f0a500;
  letter-spacing: 0.125rem; /* 2px */
  margin-bottom: 1.125rem; /* 18px */
}

/* Blockquote */
.review-card blockquote {
  color: var(--gunmetal);
  font-size: .95rem;
  line-height: 1.8;
  font-style: italic;
  margin-bottom: 1.25rem; /* 20px */
}

/* Author row */
.review-author {
  display: flex;
  align-items: center;
  gap: 0.75rem; /* 12px */
}
.review-avatar {
  width: 2.5rem; /* 40px */
  height: 2.5rem; /* 40px */
  border-radius: 50%;
  background: var(--light-grey);
  border: 0.0625rem solid var(--mid-grey); /* 1px */
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--black);
  font-weight: 700;
  font-size: .85rem;
  flex-shrink: 0;
}
.review-name { font-weight: 600; color: var(--black); font-size: .85rem; }
.review-source { font-size: .75rem; color: var(--silver); }

/* Google icon */
.google-icon {
  position: absolute;
  top: 2.25rem; /* 36px */
  right: 2.25rem; /* 36px */
  width: 1.5rem; /* 24px */
  height: 1.5rem; /* 24px */
}

/* Dots */
.slider-dots {
  display: flex;
  justify-content: center;
  gap: 0.625rem; /* 10px */
  margin-top: 1.25rem; /* 20px */
    cursor: auto;
}
.dot {
  width: 0.625rem; /* 10px */
  height: 0.625rem; /* 10px */
  border-radius: 50%;
  background: var(--mid-grey);
  cursor: pointer;
  transition: var(--transition);
}
.dot.active {
  background: var(--black);
  transform: scale(1.3);
}

/* CTA block — now inside Reviews tab panel */
.reviews-cta {
  text-align: center;
  margin-top: 1.5rem;
  padding: 2rem 0 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem; /* 8px */
}
.reviews-cta .big-number,
.reviews-cta .section-title + .big-number,
.big-number {
  font-family: var(--font-display);
  font-size: 2rem;
  color: var(--black);
  font-weight: 700;
}

/* Fade-up animation */
.fade-up {
  opacity: 0;
  transform: translateY(1.875rem); /* 30px */
  transition: opacity .7s ease, transform .7s ease;
}
.fade-up.visible {
  opacity: 1;
  transform: translateY(0);
}

.reviews-cta-shortcode {
	max-width: 98%;
}

.wpcf7-spinner {
	position: absolute;
}
@keyframes marquee-move {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.page.page-id-2728 .custom-section .about-content {
	padding: 6.25rem 0;
}

.page.page-id-7 .about-image.fade-up.visible {
	padding-right: 11rem;
}

#contact-section a:hover , .footer-bottom-inner a:hover {
	color: var(--silver);
}

.footer-social a {
	width: fit-content;
}
.section-pad.light-section .hygiene-content .faq-question br {
	display: none;
}

.location-meta-item a:hover {
	color: var(--silver);
}
.section-pad.light-section .hygiene-content .faq-list {
	gap: 0;
	padding-top: 0.2rem;
  padding-bottom: 0.2rem;
}
.section-pad.light-section .hygiene-content .faq-list .faq-question {
	padding: 0.7rem 0;
}

.privacy-policy .entry-content ul li::before {
	content: "";
	width: 0.4rem;
	height: 0.4rem;
	display: flex;
	background: #000;
	border-radius: 100%;
  position: relative;
  top: 0.4rem;
}
.privacy-policy .entry-content ul li {
  grid-template-columns: auto 1fr;
    display: grid;	align-items: start;
margin-bottom: 0;
  gap: 0.5rem;
}
.privacy-policy .entry-content ul {
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
}
.privacy-policy .entry-content * {
	font-size: 1.1rem;
}
.privacy-policy .entry-content p {
	line-height: 1.5;
}
.form-group select {
	appearance: none;
}
body .form-group select {
	appearance: none;
	background-image: url(https://wordpress-1379640-6436814.cloudwaysapps.com/wp-content/uploads/2026/06/down-arrow.png) !important;
	background-size: 20px !important;
	background-repeat: no-repeat !important;
	background-position: right !important;
	background-origin: content-box !important;
}

.flex-btn-row {
	display: flex;
	flex-direction: column;
	gap: 7px;
}
.flex-btn-row a {
	width: fit-content;
}

/* ===== FLOATING WHATSAPP BUTTON ===== */
.floating-wa-btn {
    position: fixed;
    bottom: 2rem;
    left: 2rem;
    z-index: 9999;
    width: 3.5rem;
    height: 3.5rem;
    background: #25D366;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 16px rgba(37, 211, 102, 0.45);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    text-decoration: none;
}
.floating-wa-btn svg {
	width: auto;
	height: auto;
	display: flex;
}

.footer-inner .footer-col:last-of-type ul li:not(:first-of-type) svg path {
	fill: rgba(255,255,255,.55);
}
.footer-inner .footer-col:last-of-type ul li svg {
	width: 1.2rem;
	height: 1.2rem;
}
.footer-inner .footer-col:last-of-type ul li:first-of-type svg path  {
	stroke: rgba(255,255,255,.55);
	  fill: rgba(255,255,255,.55);
}
.footer-inner .footer-col:last-of-type ul li {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 8px;
}
.footer-inner .footer-col:last-of-type ul li:not(:first-of-type) svg {
	width: 1.3rem;
	height: 1.3rem;
}

/* ---------- TOP ANNOUNCEMENT BAR ---------- */
.top-announcement-bar {
	text-align: center;
	font-size: 1rem;
	color: #fff;
  background: #000;
  padding: 0.5rem;
}

.top-announcement-bar .container {
	display: flex;
	justify-content: center;
	align-items: center;
}

.top-announcement-bar .announcement-link {
	color: var(--pure-white, #ffffff);
	text-decoration: none;
	transition: opacity 0.3s ease;
}

.top-announcement-bar .announcement-link:hover {
	opacity: 0.8;
}.flex-btn-row br {
	display: none;
}



/* ============================================================
   RESPONSIVE DESIGN & MEDIA QUERIES (Consolidated)
   ============================================================ */

@media(max-width:1400px){
  .numbers-grid { grid-template-columns: repeat(4,1fr); }
  .services-grid { grid-template-columns: repeat(3,1fr); }
  .nav-logo img { height: 3rem; width: 18rem; }
  .hero-line-outline { font-size: clamp(5rem, 13vw, 8rem); }
  .hero-line-solid { font-size: clamp(5rem, 13vw, 7rem); }
}

@media(max-width:1366px){
  /* v5 mobile menu layout overrides older ones */
  .hamburger { display: flex; z-index: 1100; top: auto; right: auto; }
  .mobile-nav.active { right: 0; transform: translateX(0); }
.mobile-nav a {
	text-decoration: none;
	font-size: 20px;
	margin-bottom: 15px;
}
  .mobile-nav {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    padding: 80px 40px 60px;
    background: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content:center;
    gap: 15px;
    z-index: 9999;
    transform: translateX(100%);
    transition: transform 0.6s ease-in-out;
  }
  .nav-links {
	width: 67%;
	justify-content: end;
}


}

@media(max-width:1190px){
  .hero-flex, .about .container, .hygiene .container, .faq .container { gap: 40px; }
    .contact-form { padding: 25px; }
  .section-pad, .ig-feed, .footer { padding: 3.25rem 0; }
  .parallax-banner { height: 400px; }
  .services-grid, .contact .container { gap: 20px; }
  .gallery .header-wrap, .reviews .header-wrap { margin-bottom: 30px !important;}
  .slider-track { gap:10px; } /* KEEP TRACK GAP AT 1.5rem / 24px TO ALIGN WITH JS SLIDER TRACK */
  .dot { width: 8px; height: 8px; }
  .reviews-cta { margin-top: 25px; }
  .nav-toggle { display: flex; z-index: 1001; }
  .mobile-call-btn { display: flex; }
  .nav-links { display: none; }
  .about-content {
	padding-right: 0 !important;
}

.artists-grid {
	grid-template-columns: repeat(2 , 1fr);
}
.section-title br {
	display: none;
}.site-footer {
	padding-top: 30px;
}
  .container , .corp-container {
    width: 100%;
    max-width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }
.logo img {
	width: 20rem;
}
.section-pad.light-section .hygiene-content , .about .about-content {
	padding: 0;
}
  .section-title, .parallax-content h2, .ig-header h2, .established_sec .vc_custom_heading,
  .home .section-title  ,.cta-heading , .established_sec .vc_custom_heading, .established_sec .widget-title { font-size:24px !important; }
  .about .section-title, .hygiene .section-title, .services .section-title,
  .gallery .section-title, .faq .section-title, .contact .section-title,
  .steps-header .section-title, .testimonials-section .section-title { font-size:23px !important; }
.section-pad img {
	width: 100%;
}
.qi-default-template .instagram-section.section-pad {
	margin-top: 40px;
}
.hygiene-timeline {
	margin-top: 0 !important;
}
.step-num {
	font-size: 2rem;
}
body p {
	font-size: 15px !important;
}
.about-content .section-text {
	margin-bottom: 10px;
}
.creativity .container {
	gap: 2rem;
}
.timeline-step {
	padding: 30px;
}
.inner-hero {
	height: auto;
	min-height: 20.125rem;
	padding: 3rem 0;
}
.established_sec .vc_custom_heading, .established_sec .widget-title, .section-title {
	margin-bottom: 10px;
}
.footer-logo {
	width: 22rem;
}
.footer-inner {
	padding-bottom: 2rem;
}
#contact-section .section-title , #contact-section .section-text {
	margin-bottom: 12px !important;
}#contact-section .section-text + div {
	margin-bottom: 25px !important;
	gap: 13px !important;
}
#contact-section .section-text + div h4 {
	font-size: 15px !important;
}
#contact-section .container {
	gap: 15px !important;
}
.about-image .exp-badge {
	right: -10px;
	bottom: -10px;
}
.exp-badge .number {
	font-size: 24px;
}.exp-badge .text {
	font-size: 11px;
	padding-top: 8px;
}
.artist-info h3 {
	font-size: 1.4rem;
}
.artist-specialty {
	font-size: 11px;
}
.artists-grid {
	gap: 15px;
}
body .established_sec {
	padding-top: 3rem;
	gap: 20px;
}
body .established_sec .vc_column-inner {
	padding: 0;
}
.inner-hero h1 {
	font-size: 40px;
  
}
.about-grid {
	gap: 4rem;
}
.steps-grid {
	gap: 10px;
	margin-top: 2rem;
}
.step-number {
	font-size: 2.5rem;
	top: 15px;
	right: 15px;
}
.step-card {
	padding: 35px;
}
.home .services-grid {
	gap: 2px;
}
.artistry-grid {
	gap: 2rem;
}
.section-sub {
	margin-bottom: 2rem;
}
.hygiene-grid {
	gap: 3rem;
}

.faq-list {
  max-width: 100%;}
.cta-section {
	padding: 5rem 0;
}
.nav-links {
	display: none;
}
.hero-eyebrow-row {
	gap: 15px;
      margin-bottom: 15px;
}

.hero .hm-solid , .hero .hm-outline , .hero .hm-small {
  font-size: 60px;
}.hero-top-rule {
	top: 4rem;
}

.hero p {
	font-size: 15px;
	margin-bottom: 20px;
}

.hero-center-rule {
	gap: 1rem;
	margin: 0 auto 15px;
}

.hero-center-content {
	padding: 5.75rem 5rem 4.5rem;
	max-width: 68.75rem;
}

.hero-side-left {
	left: 0;
    transform: translateY(0) rotate(-90deg);
}

.hero-center-content {
	width: 100%;
	max-width: 100%;
}

.hero-side-left {
	left: -105px;
	    font-size: 11px;
}
.hero-side-right {
	right: -105px;
	    font-size: 11px;
}
.hero-corner-badge .cb-label {
	font-size: 11px;
}
#mobileNav a {
	margin-bottom: 10px;
}

.hygiene-cert-badge {
	right: 10px;
	top: 10px;
}
.cta-tagline {
	font-size: 12px !important;
	margin-top: 15px;
}
.portfolio-masonry + .text-center {
	margin-top: 20px !important;
}
.hero-corner-badge {
	right: 30px;
	top: 3rem;
}
.hero-stats-bar {
	margin-bottom: 15px;
}
.locations-grid .location-card-info p {
	font-size: 11px !important;
	margin-bottom: 13px !important;
}
.location-meta-list {
	gap: 10px;
	margin-bottom: 15px;
}

.locations-grid {
	gap: 15px;
	margin-top: 10px;
}.page.page-id-2728 .about-content {
	padding-top: 25px;
  margin-bottom: 0 !important;
  padding-bottom: 15px;

}
.location-card-info {
	padding: 20px;
}
.location-card-info h3 {
	font-size: 1.4rem;
	margin-bottom: 10px;
}

.page.page-id-2728 .custom-section .about-content {
	padding: 2.25rem 0;
}
.page.page-id-7 .about-image.fade-up.visible {
	padding-right: 0;
}

.section-pad.light-section .hygiene-content {
	padding-top: 0;
	padding-bottom: 0;
}

.privacy-policy .entry-content ul li {
	grid-template-columns: auto 1fr;
	display: grid;
	align-items: start;
	margin-bottom: 0px;
	gap: 5px;
}

.privacy-policy .entry-content ul {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.privacy-policy .entry-content * {
	font-size: 15px;
}

	.header .container {
	gap: 15px;
}
	.floating-wa-btn {
	bottom: 20px;
	left: 20px;
}
.top-announcement-bar {
	font-size: 15px;
}

}

@media(max-width:1100px){
  :root { --section-pad: 3.5rem 0; }
  .about-grid, .artistry-grid, .hygiene-grid { grid-template-columns: 1fr; gap: 3rem; }
  .artistry-img { order: 2; }
  .artistry-content { order: 1; }
  .hygiene-content { order: 1; }
  .hygiene-img { order: 2; }
  .about-content { padding-right: 0; }
  .artistry-content { padding-left: 0; }
  .steps-grid { grid-template-columns: repeat(2,1fr); }
  .services-grid { grid-template-columns: repeat(2,1fr); }
  .portfolio-masonry { grid-template-columns: repeat(2,1fr); grid-template-rows: auto; }
  .portfolio-item--tall { grid-row: span 1; }
  .footer-inner { grid-template-columns: 1fr 1fr; gap: 2.5rem; }
  .artistry-quote-block { position: static; margin-top: 1.5rem; max-width: 100%; }
  .hygiene-cert-badge { right: 1rem; top: 1rem; }

  .artistry-links {
	gap: 10px;
	margin-top: 15px;
}
.artistry-content p {
	margin-bottom: 10px;
	font-size: 15px;
}

body .section-eyebrow  ,.section-label , .artistry-content p.section-eyebrow {
	font-size: 11px !important;
}
.marquee-section {
  padding: 1.5rem 0;}
  .ti-reviews-container {
	margin: 0 !important;
}

.ti-footer.source-Google {
	margin-top: 15px !important;
	margin-bottom: 10px !important;
}
.reviews-cta .big-number, .reviews-cta .section-title + .big-number, .big-number {
	font-size: 20px;
}

.review-tabs {
	margin-bottom: 21px;
}
.step-icon {
	width: 3rem;
	height: 3rem;
}body .ti-widget[data-layout-id="13"][data-set-id="light-background"] .ti-footer .ti-stars .ti-star {
	width: 15px !important;
	height: 15px !important;
}
.cta-section {
	padding: 3rem 0;
}
.cta-card {
	padding: 2rem 2rem;
}
.cta-sub {
	margin-bottom: 1.5rem;
}.services .header-wrap {
	text-align: center;
	margin-bottom: 1.75rem;
}
.header-wrap p, .about-content .section-text {
	max-width: 50.75rem;
}
.inner-hero h1 {
	font-size: 35px;
}
.breadcrumbs {
	margin-top: 10px;
}
.contact-form {
	padding: 15px !important;
}
.form-row {
	gap: 10px;
}
  .hygiene-timeline { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
.portfolio-filters {
	margin-bottom: 20px;
	gap: 10px;
}
.lightbox-modal {
  padding: 1.2rem;
}
.lightbox-prev { left: 6px; }
.lightbox-next { right: 6px; }
.lightbox-close {
	top: 10px;
	right: 10px;
	display: flex;
	        font-size: 25px;
}
.services.section-pad.light-section .service-info {
  padding: 1rem;
}
.services.section-pad.light-section .services-grid {
	grid-template-columns: repeat(2,1fr);
	gap: 20px;
}
.established_sec .widget-title {
	padding-bottom: 1rem;
}

.hero-eyebrow-row::before, .hero-eyebrow-row::after {
	width: 1.75rem;
}
.hero-stats-bar-item .l {
	letter-spacing: normal;
	text-align: center;
	width: 100%;
}
.artist-info h3 {
	font-size: 1.2rem;
}
.about-image {
	order: 1;
}
.trust-bar .container {
	gap: 10px;
}
.trust-item {
	font-size: 13px;
}
.page.page-id-7 .about-image {
	order: inherit;
}
.footer-inner .footer-col:last-of-type {
	grid-column: 1/-1;
}

}

@media(max-width:1024px){
  /* Stack established section */
  body .established_sec {
    flex-direction: column;
    gap: 3rem;
    padding-top: 3.5rem;
    text-align: center;
    align-items: center;
  }
  .established_sec .established_content {
    max-width: 100%;
  }

  .about .container, .hygiene .container, .faq .container, .contact .container { grid-template-columns: 1fr; gap: 40px; }
  .services-grid { grid-template-columns: repeat(2,1fr); }
  .gallery-grid { grid-template-columns: repeat(2,1fr); }
  .reviews-grid { grid-template-columns: repeat(2,1fr); }
  .footer-grid { grid-template-columns: repeat(2,1fr); }
  .hero-stats { display: none; }
  .about-image .exp-badge { right: 20px; bottom: 20px; }
  .creativity .container { grid-template-columns: 1fr; gap:20px; }
  .creativity.our-process-single-service .container { gap: 3rem; }
  .ig-grid { grid-template-columns: repeat(3, 1fr); }
  .slider-track .review-card { flex: 0 0 calc(50% - 12px); max-width: calc(50% - 12px); }
  .hero-flex { flex-direction: column; gap: 40px; text-align: center; padding: 100px 0 100px; }
  .hero-content { max-width: 100%; }
  .hero-stats-inline { justify-content: center; flex-wrap: wrap; }
  .hero-form-container { width: 100%; max-width: 480px; margin: 0 auto; }
  .hero { height: auto;     min-height: auto;}
  .hero .container { max-width: 100%; width: 100%; }
  .hero-buttons { justify-content: center; }
  .about-image img { border-radius: 4px; aspect-ratio: 4/5; object-fit: cover; width: 100%; }
  .section-text { color: var(--light); font-size: 1.05rem; max-width: 100%; line-height: 1.8; }
  .hero-top-rule {
	top: 3.5rem;
}

  /* Inner Pages media queries */
  .inner-hero { height: auto; min-height: 300px; padding: 2.5rem 0; }
  .locations-grid { grid-template-columns: 1fr; }
  .steps-grid { grid-template-columns: 1fr 1fr; gap: 20px; }
  .step-connector { display: none; }
  .hero-eyebrow-row {
	gap: 10px;
}
.hero .hero-mega-h1 {
	margin: 0 0 15px;
}
.hero-center-rule {
	gap: 10px;
	margin: 0 auto 10px;
}
.hero-cta-row .btn-outline {
	font-size: 10px;
	padding: 13px 22px;
	background: transparent !important;
}
.hero-stats-bar-item .n {
	font-size: 24px;
}
.hero-stats-bar-item .l {
	font-size: 11px;
	margin-top: 7px;
}
.hero-stats-bar-item {
	padding-bottom: 15px;
	padding-top: 15px;
}

.hero-eyebrow-text {
	font-size: 11px;
	letter-spacing: 1.5px;
      line-height: 1.9;
}
.steps-grid {
	margin-top: 2rem;
      gap: 10px;
}
.services.section-pad.light-section .services-grid {
	gap: 10px;
}
.about-image .exp-badge {
	right: 0;
	bottom: 0;
	padding: 20px;
}
.artist-info {
  padding: 15px;}
.about-content .flex-btns {
	margin-top: 15px !important;
}
.about-content p:last-of-type {
	margin-bottom: 0 !important;
}body .established_sec {
	padding-top: 30px;
	gap: 20px;
}

.service-info {
  padding: 1rem;
}
.hygiene-content {
	order: -1;
}
body.page-id-7 .about .about-content {
	padding: 0 !important;
}
.header-wrap p, .about-content .section-text {
	max-width: 100%;
}

.page.page-id-7 .about-image {
  order: 1;
}


}

@media(max-width:992px){
  .hero-line-solid { font-size: clamp(3rem, 10vw, 4rem); }
  .hero-line-outline { font-size: clamp(3.5rem, 11vw, 5rem); }
  .hero-headline { line-height: 1.1; }
  .trust-bar .container {
    display: grid;
    justify-content: start;
    flex-wrap: wrap;
    gap: 15px 30px;
    align-items: center;
    grid-template-columns: 1fr 1fr;
  }
.mobile-nav-close {
	top: 10px;
	right: 10px;
}
.step-card {
	padding: 20px 20px;
}
.step-number {
	top: 10px;
	font-size: 40px;
	right: 10px;
}
.contact-form h3 {
	font-size: 1.5rem;
}
.creativity-content .section-text p {
	margin-bottom: 10px;
}
.map-section {
	height: 20.5rem !important;
}
.established_sec p , .established_sec .vc_custom_heading {
	text-align: start !important;
}


}

@media(max-width:900px){
  .hero-center-content { padding: 70px 30px 70px; }
  .hero-top-rule { left: 30px; right: 30px; }
  .hero-side-left, .hero-side-right { display: none; }
  .hero-corner-badge { display: none; }
  .hm-solid, .hm-outline { font-size: clamp(3rem, 9vw, 5rem); }
  .hm-small { font-size: clamp(1.4rem, 4vw, 2.2rem); }
  .footer-locations {
	margin-top: 15px;
	padding-top: 15px;
}
.hero .hm-solid , .hero .hm-outline , .hero .hm-small {
  font-size: 40px;}
  .faq-list + .text-center {
	margin-top: 20px !important;
}
.portfolio-filters {
	white-space: nowrap;
	overflow: auto;
	flex-wrap: nowrap;
	justify-content: start;
	padding-bottom: 10px;
}

.hero-top-rule {
	top: 3rem;
}



}

@media(max-width:780px){
  .numbers-grid { grid-template-columns: repeat(2,1fr); }
  .number-card { border-bottom: 1px solid var(--mid-grey); padding: 2.5rem 1rem; }
  .services-grid { grid-template-columns: 1fr; }
  .steps-grid { grid-template-columns: 1fr; }
  .insta-grid { grid-template-columns: repeat(2,1fr); }
  .footer-inner { grid-template-columns: 1fr; gap: 20px }
  .portfolio-masonry { grid-template-columns: 1fr; }
  .cta-card { padding: 3rem 1.5rem; }
  .testi-card { padding: 2rem 1.5rem; }
  .reviews-badge-inner { padding: 1.5rem 2rem; }
  .about-badges { grid-template-columns: 1fr; }
  .trust-bar .container { grid-template-columns: 1fr; }
  .trust-bar { padding:10px 0; }
  .cta-section {
	padding: 3rem 0;
}

  .services.section-pad.light-section .services-grid {
	grid-template-columns: repeat(2,1fr);
	gap: 10px;
}
.hero-top-rule {
	top: 3rem;
}

}

@media(max-width:768px){
  :root { --section-pad: 3rem 0 !important; }
  .section-pad { padding: 3rem 0 !important; }
  .parallax-banner { height: 300px; background-attachment: scroll; }
  .hero { min-height: 500px; }
  .hero h1 { font-size: 2rem; }
  .services-grid, .reviews-grid { grid-template-columns: 1fr; }
  .gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
  .footer-grid { grid-template-columns: 1fr; }
  .form-row { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .faq .container { grid-template-columns: 1fr; }
  .faq-left { order: 1; padding: 1.5rem !important; }
  .faq-list { order: 2; }
  .hero .container { max-width: 100%; width: 100%; }
  .hero-form-container { width: 100%; max-width: 100%; }
  .hero-flex, .about .container, .hygiene .container, .faq .container { gap: 25px; }
  .hero-form { padding: 20px 15px; }
  .hero-flex { padding: 60px 0 80px; }
  .trust-bar .container { justify-content: center; display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
  .section-text { max-width: 100%; }
  .about-content .section-text { margin-bottom: 15px !important; }
  
  /* Retain mobile card structure & padding instead of zeroing out */
  
  .custom-section .about-content { margin-top: 40px; margin-bottom: 0 !important; }
  .section-title, .established_sec .vc_custom_heading { margin-bottom: 10px; }
  .about.section-pad.custom-section { padding-bottom: 0; }
  .ig-feed .ig-grid { padding: 0 15px !important; }
  .ig-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
  .contact-image { order: 2; } 
  .contact .container { grid-template-columns: 1fr; gap:15px; }
  .footer h4 { font-size: 18px; margin-bottom: 10px; }
  .footer-grid { gap: 30px; margin-bottom: 30px; }
  .footer ul li { margin-bottom: 5px; }
  .footer ul a { font-size: 15px; }
  .footer-bottom p { font-size: 14px; }
  .footer-brand .logo img { padding-top: 0; padding-bottom: 20px; max-width: 260px; }
  .footer-brand p { font-size: 15px; max-width: 100%; margin-bottom: 10px; }
  .hero-buttons { justify-content: center; }
  .logo img { height: auto; width: 280px; }
  .slider-track .review-card { flex: 0 0 100%; max-width: 100%; }
  .google-icon { top: 20px; right: 20px; }
  .footer-social a svg { width:20px; height:20px;}
  .footer-social a span { font-size: 15px; }
  .footer-social a { gap: 10px; margin-bottom: 5px; }
  .flex-btns { display: flex; flex-direction: column; gap: 15px; justify-content: center; text-align: center; align-items: center; }
  .locations-grid .location-card-info { padding: 20px; }
  .our-process .container { gap: 30px; }
  .creativity-image::after { inset: -9px; }
  .two-grid .container { display: flex; flex-direction: column; gap: 25px; padding-bottom: 40px; }
  #contact-section .container { grid-template-columns: 1fr !important;     gap: 30px !important;}
  .footer-brand img { width:340px; margin-bottom: 4px; }
  .footer-col h4 {
	font-size: 15px;
	margin-bottom: 13px;
}

  .inner-hero { height: auto; min-height: 240px; padding: 2rem 0; }
  .hygiene-timeline { grid-template-columns: 1fr; gap: 1.5rem; }
  
  .slider-track .review-card { flex: 0 0 100%; max-width: 100%; }
  .main-review-tabs { margin-bottom: 2rem; }
  .main-tab-btn { padding: 0.6rem 1.5rem 0.7rem; font-size: 0.78rem; letter-spacing: 0.08em; }
  .review-tabs { gap: 8px; }
  .tab-btn { padding: 10px 18px; font-size: .75rem; }
  .reviews .header-wrap { margin-bottom: 20px; }
  .reviews-cta { margin-top: 10px; padding: 1rem 0; }

  .about-grid, .artistry-grid, .hygiene-grid {
	gap: 35px;
}.home .section-title {
	margin-bottom: 10px;
}.about-text {
	margin-bottom: 10px;
	font-size: 15px;
}
.about-badges {
	margin: 15px 0;
}
.section-sub {
	margin-bottom: 15px;
}
.steps-grid {
	gap: 15px;
	margin-top: 10px;
}.container.footer-inner {
	padding-bottom: 20px;
}
.inner-hero h1 {
	font-size: 30px;
}
.breadcrumbs {
	font-size: 11px;
    margin-top: 0;
}
.services.section-pad.light-section .service-info {
  padding: 20px;}
  .services.section-pad.light-section .services-grid {
	grid-template-columns: repeat(1,1fr);
}
.contact-form {
	padding: 0 !important;
}

.step-card:hover {
  transform: translateY(0);
}
.home .steps-grid {
	gap: 10px;
}
.artistry-quote-block {
	margin-top: 15px;
	padding: 20px;
}
.marquee-section {
	padding: 1rem 0;
}

.artists-grid {
	grid-template-columns: repeat(1,1fr);
}
.page.page-id-2728 .about-content {
	padding-top: 0;
	margin-bottom: 0 !important;
	padding-bottom: 0;
      background-image: none !important;
}
.location-meta-item {
  font-size: 14px;  line-height: 1.4;}
.page.page-id-2728 .custom-section .about-content {
	padding: 0;
	margin: 0;
}



}

@media(max-width:600px){
  /* From Idea to Ink - 4 Steps timeline responsive (from style.css) */
  .steps-grid {
    display: flex;
    flex-direction: column;
    gap: 0;
    max-width: 100%;
    position: relative;
  }
  .steps-header { margin-bottom: 15px; }
 
  .step-connector { display: none; }

  /* .step-card::before { display: none; }
  .step-card:hover { transform: none; box-shadow: none; border-color: transparent; }
  .step-icon-wrap {
    flex-shrink: 0;
    margin-bottom: 0;
    position: relative;
    z-index: 2;
  }
  .step-num-bg { display: none; }
  .step-number { display: none !important; }
  .step-icon {
    width: 56px; height: 56px;
  }
  .step-card-text { flex: 1; min-width: 0; overflow: hidden; }
  .step-card h3 {
    font-size: 1.05rem;
    margin-top: 8px;
    margin-bottom: 5px;
    color: var(--black);
    word-break: break-word;
  }
  .step-card p { font-size: .85rem; color: var(--gunmetal); word-break: break-word; } */
  .steps-section { overflow-x: hidden; overflow-y: visible; }
  .steps-grid { overflow: visible; }
.ti-controls-line {
	margin-top: 15px !important;    margin-bottom: 20px !important;
}.services.section-pad.light-section .service-icon {
	margin-bottom: 10px;
}
.step-icon {
	width: 2.5rem;
	height: 2.5rem;
	margin-bottom: 13px;
}
.lightbox-arrow {
	width: 39px;
	height: 39px;
}
	.lightbox-arrow svg {
  width: 17px;
		height: 17px;}
	.lightbox-modal {
	padding-left: 3.5rem;
	padding-right: 3.5rem;
}

}

@media(max-width:560px){
  :root { --section-pad: 2.5rem 0 !important; }
  .section-pad { padding: 2.5rem 0 !important; }
  .trust-bar .container { grid-template-columns: 1fr; }
  .mobile-nav { width: 100%; max-width: 100%; }
  .logo img { height: auto; width: 320px; }
  .gallery-grid, .ig-grid { grid-template-columns: 1fr; gap: 15px; }
  .section-text, .btn, .hero p, .hero-form .btn, .trust-item, .service-card p, .parallax-content p, .ig-header p , .btn-primary { font-size: 14px; }
  .hero h1 { font-size: 26px; margin-bottom: 12px; }
  .hero p { margin-bottom: 12px; max-width: 100%; }
  .hero-stats-inline { display: flex; gap: 20px; margin: 15px 0; }
  .hero-stat .number { font-size: 24px; }
  .hero-stat .label { font-size: 10px; }
  .hero-form h3 { font-size: 18px; margin-bottom: 12px; }
  .hero-form { padding: 15px; }
  .hero-flex { padding: 50px 0 60px; }
  .services .header-wrap { text-align: center; margin-bottom: 15px; }
  .service-info { padding: 15px; }
  .service-icon { margin-bottom: 10px; }
  .service-card h3 { font-size: 18px; }
  .parallax-banner { padding: 0 15px; height: 260px; }
  .gallery .header-wrap, .reviews .header-wrap { margin-bottom: 15px !important;}
  .gallery-cta { text-align: center; margin-top: 20px; }
  .hygiene-content .checklist { margin: 15px 0; display: flex; flex-direction: column; gap: 12px; }
  .ig-feed, .footer { padding: 2.5rem 0; }
  .ig-header h2, .section-label { margin-bottom: 9px; }
  .ig-feed .ig-header { text-align: center; margin-bottom: 15px; padding: 0 15px !important; }
  .mobile-nav a { font-size: 16px; }
  .header { padding: 18px 0; }
  .hero-eyebrow-text .walkins{display: block;}
  
  /* v5 styles overrides in 560px media query */
  .hero-center-content { padding: 60px 15px 60px; }
  .hero-top-rule { display: none; }
  .hm-solid, .hm-outline { font-size: 2.2rem; -webkit-text-stroke-width: 1px; }
  .hm-small { font-size: 1.2rem; letter-spacing: 4px; }
  
  /* stats bar 2x2 grid border adjustments */
  .hero-stats-bar { flex-wrap: wrap; }
  .hero-stats-bar-item { 
    flex: 0 0 50%; 
    border-bottom: 1px solid rgba(255,255,255,0.08); 
    border-right: 1px solid rgba(255,255,255,0.08);
  }
  .hero-stats-bar-item:nth-child(2n) {
    border-right: none;
  }
  .hero-stats-bar-item:nth-child(3),
  .hero-stats-bar-item:nth-child(4) {
    border-bottom: none;
  }
  
  .hero-cta-row { flex-direction: column; gap: 12px; }
  .hero-cta-side { display: none; }
  .cta-sub {
	font-size: 15px;
	margin-bottom: 10px;
}
.cta-card {
	padding: 2rem 1.5rem;
}
.faq-question {
	padding: 1rem 0;
	font-size: 15px;
}
.cta-star {
	margin-bottom: 10px;
}.home #contact {
	padding-top: 20px;
  padding-bottom: 20px;
}
.hygiene-list {
	margin: 15px 0;
}
.home .section-text {
	font-size: 15px;
}
.hero-eyebrow-row::before, .hero-eyebrow-row::after {
display: none;
}
.mobile-nav {
	padding-left: 20px;
	padding-right: 20px;
}

  .trust-bar .container { grid-template-columns: 1fr; display: flex; margin: 0 auto; justify-content: flex-start; align-items: center; padding: 15px; }
.exp-badge .number {
	font-size: 22px;
}
.exp-badge .text {
	font-size: 10px;
	padding-top: 6px;
}
.step-number {
	font-size: 30px;
}.hero-stats-bar {
	margin-bottom: 10px;
}
.timeline-step {
	padding: 15px;
}

#contact-section .container {
    gap: 20px!important;
}
.hygiene-cert-badge {
    right: 5px;
    top: 5px;
}
	.floating-wa-btn {
	bottom: 12px;
	left: 12px;
	width: 3rem;
	height: 3rem;
}


}

@media(max-width:480px){
  /* Card paddings on extremely small screens */
  
  .hero h1 { font-size: 1.6rem; }
  .hero p { font-size: .9rem; }
  .btn { padding: 12px 14px; font-size: .78rem; }
  .container { padding: 0 12px; }
  .hero-buttons { flex-direction: column; width: 100%; gap: 10px; }
  .hero-buttons .btn { width: 100%; justify-content: center; margin: 0; }
  
  /* v5 overrides in 480px media query */
  .hero-line-solid, .hero-line-outline { font-size: clamp(2.5rem, 15vw, 4.5rem); }
  .hero-line-medium { font-size: clamp(1.8rem, 8vw, 3rem); }
  .numbers-grid { grid-template-columns: 1fr 1fr; }
  .number-card { padding: 2rem 0.5rem; }
  .insta-grid { grid-template-columns: repeat(2,1fr); }
  .tab-buttons { gap: .4rem; }
  .tab-btn , .btn-primary , .btn.btn-outline , .btn-outline  { padding:11px 1rem; font-size: 12px;     letter-spacing: 1.5px;}
  .hero-actions { flex-direction: column; }
  .footer-bottom-inner { flex-direction: column; gap: .5rem; text-align: center; }
  .hero-meta { flex-direction: column; align-items: center; gap: 8px; text-align: center; }
  .hero-meta span::before { content: "."; position: absolute; top: -8px; font-size: 20px; line-height: 1; margin-left: -12px; }
  .number-value { font-size: 2.2rem; }
  
  /* v5 reviews shortcode 480px overrides */
  .tab-btn { padding: 8px 12px; font-size: .68rem; letter-spacing: 0; }
  .review-card { padding: 20px 15px; }
  .google-icon { top: 15px; right: 15px; }
  .hero-stats-bar-item .l {
    font-size: 9px;}
  .hygiene-list li {    align-items: start;}
  .hygiene-list li svg {
    position: relative;
    top: 4px;
}
.hygiene-list li {
    gap: 6px;
}

}

@media(max-width:380px) {

  .hero-stats-bar-item:last-child {
    border-bottom: none;
  }
  .artists-grid {
    grid-template-columns: 1fr;
  }
  .hero-eyebrow-text .walkins {
    display: unset;
  }
}


