/* Beauty Bungalow — Services page (bb-services plugin, v3 editorial) */
:root{--bbs-sage:#819F89;--bbs-deep:#5E7A66;--bbs-light:#A8C0AF;--bbs-tint:#E4ECE6;--bbs-cream:#F4F1EA;--bbs-ink:#2E332F;--bbs-muted:#6B716C;--bbs-line:#DDE3DE;--bbs-gold:#C9A56A;--bbs-dark:#212322;--bbs-top:0px}
.bbs-eyebrow{font-family:"Sweet Sans Pro",sans-serif;font-size:11px;letter-spacing:2.6px;text-transform:uppercase;color:var(--bbs-deep);font-weight:600;margin:0 0 10px}
.bbs-h2 .elementor-heading-title,.bbs-hero-h1 .elementor-heading-title{font-family:"Schnyder Cond",Georgia,serif!important;font-weight:400}
.bbs-h2 em,.bbs-hero-h1 em,.bbs-cat-title em{font-style:italic;color:var(--bbs-sage)}
.bbs-hero-h1 em{color:var(--bbs-light)}
.bbs-row{display:flex;gap:14px;flex-wrap:wrap}
.bbs-btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 30px;border-radius:40px;background:var(--bbs-sage);color:#fff!important;text-decoration:none!important;font-family:"Sweet Sans Pro",sans-serif;font-size:11.5px;letter-spacing:2.2px;text-transform:uppercase;font-weight:600;border:1.5px solid var(--bbs-sage);transition:all .2s;line-height:1.2}
.bbs-btn:hover{background:var(--bbs-deep);border-color:var(--bbs-deep);transform:translateY(-1px)}
.bbs-btn.bbs-ghost{background:transparent;color:var(--bbs-deep)!important}
.bbs-btn.bbs-ghost:hover{background:var(--bbs-tint)}
.bbs-btn.bbs-lg{padding:18px 34px}
.bbs-btn.bbs-ghost-white{background:transparent;border:1.5px solid rgba(255,255,255,.5);color:#fff!important}
.bbs-btn.bbs-ghost-white:hover{background:rgba(255,255,255,.1);border-color:#fff}
/* hero */
.bbs-pill{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(168,192,175,.45);border-radius:40px;padding:8px 18px;background:rgba(129,159,137,.12);margin-bottom:24px}
.bbs-pill span:last-child{font-family:"Sweet Sans Pro",sans-serif;font-size:10px;letter-spacing:2.4px;text-transform:uppercase;font-weight:600;color:#E8EFE9}
.bbs-dot{width:7px;height:7px;border-radius:50%;background:var(--bbs-light);display:block}
.bbs-hero-sub{font-family:"Schnyder Cond",Georgia,serif;font-size:30px;line-height:1.1;color:rgba(255,255,255,.9);margin:-6px 0 14px}
.bbs-kicker{font-family:"Sweet Sans Pro",sans-serif;font-size:11px;letter-spacing:2.6px;text-transform:uppercase;color:var(--bbs-light);font-weight:600;margin:4px 0 18px}
.bbs-hero-p{font-family:"Sweet Sans Pro",sans-serif;font-size:17px;line-height:1.75;color:rgba(255,255,255,.82);max-width:54ch;margin:0 0 30px}
.bbs-hero-stats{display:flex;gap:30px;flex-wrap:wrap;margin-top:36px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14)}
.bbs-hero-stats b{display:block;font-family:"Schnyder Cond",Georgia,serif;font-size:30px;color:var(--bbs-light);font-weight:400}
.bbs-hero-stats span{font-family:"Sweet Sans Pro",sans-serif;font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:rgba(255,255,255,.62)}
.bbs-hero-media{position:relative;max-width:520px;margin:0 0 0 auto;aspect-ratio:4/4.6}
.bbs-hero-photo{position:absolute;display:block;border-radius:18px;background:#2a2d2b center 30%/cover no-repeat;box-shadow:0 30px 60px rgba(0,0,0,.45);overflow:hidden}
.bbs-hero-photo:first-child{inset:0 12% 18% 0}
.bbs-hero-photo-2{width:52%;aspect-ratio:4/3;right:0;bottom:0;border:4px solid var(--bbs-dark);background-position:center}
.bbs-hero-tag{position:absolute;left:14px;top:14px;background:rgba(33,35,34,.78);backdrop-filter:blur(6px);color:#E8EFE9;font-family:"Sweet Sans Pro",sans-serif;font-size:9.5px;letter-spacing:2px;text-transform:uppercase;font-weight:600;padding:7px 12px;border-radius:30px;border:1px solid rgba(255,255,255,.18)}
/* jump bar */
.bbs-jump{position:relative;z-index:20;background:#fff;border-bottom:1px solid var(--bbs-line)}
.bbs-jump.bbs-fixed{position:fixed;top:var(--bbs-top);left:0;right:0;z-index:999;box-shadow:0 8px 24px rgba(46,51,47,.08)}
.bbs-jump-ph{display:none}.bbs-jump-ph.bbs-on{display:block}
.bbs-totop{position:fixed;left:18px;bottom:18px;z-index:998;display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:40px;background:var(--bbs-dark);color:#fff!important;text-decoration:none!important;font-family:"Sweet Sans Pro",sans-serif;font-size:10.5px;letter-spacing:2px;text-transform:uppercase;font-weight:600;box-shadow:0 12px 30px rgba(0,0,0,.28);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .25s,transform .25s;border:1px solid rgba(255,255,255,.12)}
.bbs-totop.bbs-on{opacity:1;transform:none;pointer-events:auto}
.bbs-totop:hover{background:var(--bbs-sage)}
.bbs-totop-arrow{font-size:14px;line-height:1}
@media (min-width:1025px){.bbs-totop{left:auto;right:96px;bottom:24px}}
.bbs-jump-in{max-width:1240px;margin:0 auto;display:flex;align-items:center;gap:8px;padding:12px 20px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.bbs-jump-in::-webkit-scrollbar{display:none}
.bbs-jump-label{flex:none;font-family:"Sweet Sans Pro",sans-serif;font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:var(--bbs-muted);font-weight:600;margin-right:10px}
.bbs-jump-in a{flex:none;border:1px solid var(--bbs-line);color:var(--bbs-ink);font-family:"Sweet Sans Pro",sans-serif;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;font-weight:600;padding:10px 16px;border-radius:30px;text-decoration:none!important;transition:all .15s;white-space:nowrap}
.bbs-jump-in a:hover,.bbs-jump-in a.bbs-on{background:var(--bbs-sage);border-color:var(--bbs-sage);color:#fff}
/* split rows */
.bbs-split-img{display:block;position:relative;aspect-ratio:5/4;border-radius:22px;background:var(--bbs-tint) center 30%/cover no-repeat;box-shadow:0 30px 60px rgba(46,51,47,.14);overflow:hidden}
.bbs-split-body{padding:10px 0 10px 24px}
.bbs-split-flip .bbs-split-body{padding:10px 24px 10px 0}
.bbs-split-body h3{font-family:"Schnyder Cond",Georgia,serif;font-size:52px;font-weight:400;line-height:1.02;margin:0 0 18px}
.bbs-split-body h3 a{color:var(--bbs-ink);text-decoration:none!important}
.bbs-split-body h3 sup{font-size:.4em;vertical-align:top;position:relative;top:.6em}
.bbs-split-body p{font-family:"Sweet Sans Pro",sans-serif;font-size:16.5px;line-height:1.75;color:var(--bbs-muted);margin:0 0 24px;max-width:50ch}
.bbs-stats{display:flex;gap:30px;flex-wrap:wrap;margin:0 0 28px;padding-top:22px;border-top:1px solid var(--bbs-line)}
.bbs-stats b{display:block;font-family:"Schnyder Cond",Georgia,serif;font-size:34px;color:var(--bbs-ink);font-weight:400;line-height:1}
.bbs-stats span{font-family:"Sweet Sans Pro",sans-serif;font-size:11.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--bbs-muted)}
.bbs-promo{position:absolute;top:18px;left:18px;background:var(--bbs-gold);color:#2E332F;font-family:"Sweet Sans Pro",sans-serif;font-size:10.5px;letter-spacing:2px;text-transform:uppercase;padding:9px 14px;border-radius:30px;font-weight:600}
/* category menu */
.bbs-cat-side{position:sticky;top:calc(var(--bbs-top) + 90px)}
.bbs-cat-num{font-family:"Schnyder Cond",Georgia,serif;font-size:20px;color:var(--bbs-sage);letter-spacing:2px;margin-bottom:8px}
.bbs-cat-title{font-family:"Schnyder Cond",Georgia,serif;font-size:52px;font-weight:400;line-height:1.02;color:var(--bbs-ink);margin:0 0 16px}
.bbs-cat-blurb{font-family:"Sweet Sans Pro",sans-serif;font-size:15.5px;line-height:1.7;color:var(--bbs-muted);margin:0 0 26px;max-width:36ch}
.bbs-cat-photo{aspect-ratio:4/3;border-radius:20px;background:var(--bbs-tint) center 30%/cover no-repeat;box-shadow:0 24px 50px rgba(46,51,47,.14);transition:background-image .25s}
.bbs-cat-caption{font-family:"Sweet Sans Pro",sans-serif;font-size:10.5px;letter-spacing:2.2px;text-transform:uppercase;color:var(--bbs-muted);font-weight:600;margin-top:14px}
.bbs-menu{border-top:1px solid var(--bbs-line)}
.bbs-menu-row{display:grid;grid-template-columns:44px 1fr 32px;align-items:center;gap:18px;padding:26px 6px;border-bottom:1px solid var(--bbs-line);text-decoration:none!important;transition:background .2s,padding .2s}
.bbs-menu-row:hover{background:rgba(129,159,137,.07);padding-left:14px}
.bbs-menu-num{font-family:"Sweet Sans Pro",sans-serif;font-size:11px;letter-spacing:2px;color:var(--bbs-sage);font-weight:600}
.bbs-menu-name{margin:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-family:"Schnyder Cond",Georgia,serif;font-size:32px;line-height:1.05;color:var(--bbs-ink);font-weight:400}
.bbs-menu-desc{display:block;font-family:"Sweet Sans Pro",sans-serif;font-size:15px;line-height:1.6;color:var(--bbs-muted);margin-top:6px;max-width:62ch}
.bbs-menu-arrow{font-size:22px;color:var(--bbs-sage);transition:transform .2s;justify-self:end}
.bbs-menu-row:hover .bbs-menu-arrow{transform:translateX(6px)}
.bbs-tag{display:inline-block;font-family:"Sweet Sans Pro",sans-serif;font-size:9.5px;letter-spacing:1.8px;text-transform:uppercase;color:var(--bbs-muted);border:1px solid var(--bbs-line);padding:4px 9px;border-radius:20px;font-weight:600;vertical-align:middle}
.bbs-tag-gold{background:var(--bbs-gold);border-color:var(--bbs-gold);color:#2E332F}
/* cta */
.bbs-cta-btns{justify-content:flex-end}
.bbs-disclaimer{font-family:"Sweet Sans Pro",sans-serif;color:rgba(255,255,255,.45);font-size:12px;text-align:center;max-width:760px;margin:0 auto;line-height:1.6}
@media (max-width:1024px){.bbs-cta-btns{justify-content:flex-start}.bbs-hero-media{margin:28px auto 0}.bbs-cat-side{position:static}.bbs-cat-photo{max-width:520px}.bbs-split-body,.bbs-split-flip .bbs-split-body{padding:20px 0 0}.bbs-menu-name{font-size:28px}}
@media (max-width:767px){
  .bbs-hero-p{font-size:15px}.bbs-hero-sub{font-size:24px}.bbs-hero-media{max-width:100%;aspect-ratio:4/4.4}
  .bbs-split-body h3{font-size:40px}.bbs-cat-title{font-size:40px}.bbs-cat-photo{display:none}.bbs-cat-caption{display:none}
  .bbs-menu-row{grid-template-columns:1fr 24px;gap:12px;padding:20px 2px}.bbs-menu-num{display:none}.bbs-menu-name{font-size:26px}.bbs-menu-desc{font-size:14px}
  .bbs-stats{gap:16px}.bbs-stats b{font-size:28px}.bbs-stats span{font-size:10.5px}.bbs-jump-in{padding:10px 14px}.bbs-jump-label{display:none}
}
