@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Jost:wght@400;500;600;700&display=swap');

:root {
  --abv-cream: #fdfaf6;
  --abv-cream-2: #f9f5f0;
  --abv-ink: #1c1c1c;
  --abv-olive: #82856a;
  --abv-olive-dark: #303523;
  --abv-gold: #b8975a;
  --abv-muted: #5a5550;
  --abv-line: rgba(184,151,90,.18);
}
html, body { background: var(--abv-cream); }
body { color: var(--abv-muted); font-family: 'Jost', sans-serif; overflow-x: hidden; }
.tm-page { border: 0 !important; }
.uk-container { max-width: 1280px; }
.tm-toolbar { min-height: 24px; padding-top: 0 !important; padding-bottom: 0 !important; background: rgba(47,53,36,.96); color: #fff; font: 500 10px/24px 'Jost', sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.tm-toolbar .uk-container { min-height: 24px; display: flex; align-items: center; justify-content: space-between; }
.tm-toolbar { position: relative; z-index: 60; }
.tm-header { margin-top: 0 !important; position: relative; z-index: 55; }
.tm-header .uk-navbar-container, .tm-header-mobile .uk-navbar-container { min-height: 56px; background: rgba(31,35,24,.72) !important; backdrop-filter: blur(2px); }
.tm-header .uk-navbar, .tm-header-mobile .uk-navbar { min-height: 56px !important; height: 56px !important; }
.tm-header .uk-navbar-item, .tm-header .uk-navbar-nav > li > a, .tm-header .uk-navbar-toggle,
.tm-header-mobile .uk-navbar-item, .tm-header-mobile .uk-navbar-nav > li > a, .tm-header-mobile .uk-navbar-toggle { min-height: 56px !important; height: 56px !important; }
.tm-header .uk-logo { margin-right: 30px; }
.tm-header .uk-logo img { width: 248px; height: auto; filter: brightness(1.25) contrast(1.12); }
.tm-header .uk-navbar-nav > li > a { min-height: 56px; color: rgba(255,255,255,.86) !important; font: 600 11px/1 'Jost', sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.tm-header .uk-navbar-right:after { content: 'Book Online'; display: inline-flex; align-items: center; height: 31px; margin-left: 18px; padding: 0 18px; background: #faf7f1; color: #303523; font: 700 10px/1 'Jost', sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.abv-home h1,.abv-home h2,.abv-home h3,.abv-footer h3 { font-family: 'Cormorant Garamond', serif !important; color: var(--abv-ink); font-weight: 500; letter-spacing: 0; text-transform: none !important; }
.abv-home .uk-text-meta,.abv-footer .uk-text-meta { color: var(--abv-olive) !important; font: 700 11px/1.3 'Jost', sans-serif !important; letter-spacing: .18em; text-transform: uppercase; }
.abv-home .uk-button { min-height: 35px; padding: 0 24px; border-radius: 0; font: 700 10px/35px 'Jost', sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.abv-home .uk-button-primary { background: #faf7f1 !important; color: #333 !important; }
.abv-home .uk-button-default { border-color: rgba(255,255,255,.62) !important; color: #fff !important; background: transparent !important; }
.abv-home .uk-section { box-sizing: border-box; }
.abv-hero-section { padding: 0 !important; background: #1f241a; margin-top: -80px; position: relative; z-index: 1; }
.abv-hero-section .uk-container { max-width: none; padding: 0; }
.abv-hero-row,.abv-hero-row > * { width: 100%; }
.abv-hero { min-height: 640px; overflow: hidden; background: url('https://advancebeauty.noesis.chat/wp-content/uploads/advancebeauty-approved/images/slide-bg-386.png') center center / cover no-repeat #1f241a !important; }
.abv-hero .uk-position-relative,.abv-hero .uk-slideshow-items,.abv-hero .uk-slideshow-items > li { background: transparent !important; }
.abv-hero .uk-slideshow-items,.abv-hero .uk-slideshow-items > li { min-height: 640px !important; height: 640px !important; }
.abv-hero .uk-slideshow-items > li.uk-active { z-index: 2 !important; }
.abv-hero .uk-slideshow-items > li::before { content: none; }
.abv-hero .uk-slideshow-items img,.abv-hero .el-image { width: 100%; height: 640px; object-fit: cover; object-position: center center; filter: none; opacity: 1 !important; visibility: visible !important; z-index: 1 !important; }
.abv-hero .uk-slideshow-items > li.uk-active img { opacity: 1 !important; visibility: visible !important; }
.abv-hero .uk-slideshow-items > li:after { content: none; }
.abv-hero .uk-position-cover { z-index: 3 !important; }
.abv-hero .uk-position-cover.uk-padding { padding-left: clamp(72px, 8.2vw, 165px) !important; padding-top: 28px; }
.abv-hero .el-overlay { max-width: 760px; }
.abv-hero h1 { max-width: 760px; color: #fff !important; font-size: clamp(42px, 3.2vw, 64px) !important; line-height: 1.02 !important; text-transform: none !important; }
.abv-hero .uk-text-meta { color: rgba(250,247,241,.76) !important; }
.abv-hero .uk-text-lead { max-width: 620px; color: rgba(255,255,255,.86) !important; font-size: 15px; line-height: 1.7; }
.abv-hero-actions { display: flex; gap: 12px; margin-top: 28px; flex-wrap: wrap; }
.abv-hero .uk-dotnav { position: absolute; right: 120px; bottom: 46px; z-index: 5; }
.abv-hero .uk-dotnav a { width: 48px; height: 2px; border: 0; border-radius: 0; background: rgba(255,255,255,.4); }
.abv-hero .uk-dotnav .uk-active a { background: #fff; }
.abv-practitioner { background: var(--abv-cream); padding-top: 58px !important; padding-bottom: 42px !important; }
.abv-practitioner h2 { font-size: 48px; line-height: 1.05; margin-bottom: 4px; }
.abv-practitioner .uk-grid { align-items: center; }
.abv-practitioner-card { max-width: 565px; }
.abv-practitioner-card .uk-card { border: 1px solid var(--abv-line); background: rgba(255,255,255,.42); box-shadow: none; }
.abv-practitioner-image img { max-height: 520px; object-fit: contain; filter: grayscale(1); }
.abv-trust { background: #c5c8b0 !important; padding-top: 16px !important; padding-bottom: 16px !important; }
.abv-trust .uk-grid > * { text-align: center; color: #333; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.abv-treatments,.abv-homecare,.abv-concerns,.abv-faq,.abv-contact { background: var(--abv-cream); }
.abv-treatments.uk-section-xlarge,.abv-homecare.uk-section-xlarge,.abv-concerns.uk-section-xlarge,.abv-faq.uk-section-xlarge,.abv-contact.uk-section-xlarge,.abv-clinic.uk-section-xlarge { padding-top: 80px; padding-bottom: 80px; }
.abv-treatments h2,.abv-homecare h2,.abv-concerns h2,.abv-faq h2 { font-size: clamp(36px, 3vw, 52px); line-height: 1.05; text-align: center; }
.abv-switcher .uk-tab,.abv-switcher .uk-subnav { justify-content: center; gap: 0; margin-top: 24px; }
.abv-switcher .uk-tab > * > a,.abv-switcher .uk-subnav > * > :first-child { min-width: 160px; padding: 13px 18px; border: 1px solid var(--abv-line); background: #efe3d2; color: #333 !important; font: 700 10px/1.2 'Jost', sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.abv-switcher .uk-active > a,.abv-switcher .uk-subnav > .uk-active > :first-child { background: #fff; color: var(--abv-olive) !important; }
.abv-card-grid .uk-card { border: 1px solid var(--abv-line); background: #fff !important; box-shadow: none; }
.abv-card-grid .uk-card-body { padding: 0 0 18px; }
.abv-card-grid .uk-card > img.el-image { display: block; width: 100%; height: 158px; object-fit: cover; }
.abv-homecare .abv-card-grid .uk-card > img.el-image { height: 150px; object-fit: contain; background: #f7f1e8; }
.abv-homecare .abv-card-grid .uk-card-body { padding: 0 0 16px; }
.abv-card-grid .uk-card-title { font-size: 17px; line-height: 1.12; padding: 16px 18px 0; }
.abv-card-grid .el-title.uk-margin-top { margin-top: 0 !important; }
.abv-card-grid .el-meta { display: none !important; }
.abv-card-grid .el-content { padding: 0 18px; font-size: 12px; line-height: 1.55; }
.abv-card-grid .el-content.uk-margin-top { margin-top: 9px !important; }
.abv-card-grid .uk-margin-top:has(.el-link) { margin-top: 12px !important; padding: 0 18px; }
.abv-card-grid .el-link.uk-button { min-height: auto; padding: 0; border: 0; color: var(--abv-gold) !important; background: transparent !important; font-size: 10px; line-height: 1.4; }
.abv-clinic { background: var(--abv-cream-2); }
.abv-clinic h2 { font-size: clamp(36px, 3.3vw, 54px); line-height: 1.03; }
.abv-clinic img { width: 100%; min-height: 560px; object-fit: cover; }
.abv-location-badge { display: inline-block; margin-top: 24px; padding: 16px 24px; border-left: 1px solid var(--abv-olive); color: var(--abv-olive); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.abv-homecare .uk-card { min-height: 0; }
.abv-offer { background: #001b44 !important; color: rgba(255,255,255,.82); padding-top: 0 !important; padding-bottom: 0 !important; }
.abv-offer .uk-container { max-width: none; padding: 0; }
.abv-offer .uk-grid { align-items: stretch; gap: 0; }
.abv-offer img { width: 100%; height: 330px; object-fit: cover; }
.abv-offer-copy { padding: 76px clamp(36px, 7vw, 110px); }
.abv-offer h2 { color: #faf7f1 !important; font-size: clamp(36px, 3.4vw, 56px); }
.abv-concerns .uk-card { background: transparent !important; border: 0; box-shadow: none; padding: 0; }
.abv-concerns .uk-card-media-top img { aspect-ratio: 1.18 / .88; object-fit: cover; }
.abv-faq .uk-accordion-title { padding: 18px 0; border-bottom: 1px solid var(--abv-line); color: var(--abv-ink) !important; font: 600 15px/1.4 'Jost', sans-serif; }
.abv-cta { background: #878b70 !important; color: #fff !important; text-align: center; }
.abv-cta h2 { color: #fff !important; font-size: clamp(38px, 4vw, 64px); line-height: .98; }
.abv-contact h2 { font-size: 46px; }
.abv-contact-list .uk-list li { border-bottom: 1px solid var(--abv-line); padding: 13px 0; }
.abv-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px 20px; }
.abv-form-grid label { font: 700 10px/1 'Jost', sans-serif; letter-spacing: .12em; color: #777; text-transform: uppercase; }
.abv-form-grid input,.abv-form-grid textarea { width: 100%; margin-top: 8px; border: 1px solid var(--abv-line); background: rgba(255,255,255,.58); min-height: 38px; padding: 8px 10px; box-sizing: border-box; }
.abv-form-grid .abv-full { grid-column: 1 / -1; }
.abv-form-grid textarea { min-height: 110px; }
.abv-footer { background: #303523 !important; color: rgba(255,255,255,.65) !important; }
.abv-footer a { color: rgba(255,255,255,.72) !important; }
.abv-footer h3,.abv-footer h4 { color: #fff !important; }
@media (max-width: 959px) {
  .abv-hero-section { margin-top: 0; }
  .abv-hero,.abv-hero .uk-slideshow-items,.abv-hero .uk-slideshow-items > li,.abv-hero .uk-slideshow-items img,.abv-hero .el-image { min-height: 620px !important; height: 620px !important; }
  .abv-hero .uk-overlay { padding-left: 28px; padding-right: 28px; }
  .abv-form-grid { grid-template-columns: 1fr; }
}
