/* Shared public-page refinements. Elementor remains the content owner. */
body{--bb-ink:#302723;--bb-muted:#62534c;--bb-paper:#faf7f3;--bb-rose:#985b5b;--bb-line:#d9cbc3}
body:not(.wp-admin) .elementor[data-elementor-type="wp-page"]{color:var(--bb-ink);font-family:Poppins,Arial,sans-serif}
.elementor[data-elementor-type="wp-page"] :is(h1,h2){font-family:Georgia,'Times New Roman',serif!important;font-weight:400!important;letter-spacing:-.035em!important;line-height:1.12!important;text-transform:none!important;color:var(--bb-ink)!important}
.elementor[data-elementor-type="wp-page"] h1{font-size:clamp(40px,4.5vw,64px)!important}
.elementor[data-elementor-type="wp-page"] h2{font-size:clamp(30px,3.2vw,44px)!important}
.elementor[data-elementor-type="wp-page"] h3{font-family:Poppins,Arial,sans-serif!important;font-weight:500;line-height:1.4}
.elementor[data-elementor-type="wp-page"] img{box-shadow:none!important;border-radius:8px!important}
.elementor[data-elementor-type="wp-page"] :is(a[style*="inline-flex"],.bb-services-hero-actions a,.bb-services-menu-cta a,.bb-button),div.wpforms-container-full .wpforms-form button[type=submit]{min-height:48px!important;padding:13px 22px!important;border:1px solid var(--bb-rose)!important;border-radius:3px!important;font-family:Poppins,Arial,sans-serif!important;font-size:12px!important;font-weight:600!important;line-height:1.5!important;letter-spacing:.08em!important;text-transform:uppercase!important;text-decoration:none!important;box-shadow:none!important;background:var(--bb-rose)!important;color:#fff!important;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.elementor[data-elementor-type="wp-page"] :is(a[style*="background:transparent"],.bb-services-hero-actions a:not(.primary),.bb-button.secondary){background:transparent!important;color:var(--bb-ink)!important;border-color:#a89285!important}
.bb-button:hover,.elementor[data-elementor-type="wp-page"] a[style*="inline-flex"]:hover,div.wpforms-container-full .wpforms-form button[type=submit]:hover{background:#784747!important;color:#fff!important}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #704141!important;outline-offset:4px!important}
.elementor[data-elementor-type="wp-page"] :is(.bb-kicker,.bb-services-kicker,.bb-menu-kicker){color:#795f53!important;font-size:11px!important;font-weight:500;line-height:1.6;letter-spacing:.15em;text-transform:uppercase}
.elementor[data-elementor-type="wp-page"] p[style*="letter-spacing"]{color:#795f53!important}
.bb-wrap{max-width:1160px;margin:auto;padding:72px 28px}
.bb-section{background:#fff}.bb-section.warm{background:var(--bb-paper)}
.bb-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center}
.bb-grid>*{min-width:0}.bb-copy{max-width:540px}.bb-copy p,.bb-wrap>p{font-size:16px;line-height:1.8;color:var(--bb-muted)}
.bb-wrap h1,.bb-wrap h2{margin:0 0 20px}.bb-wrap h3{font-size:18px;margin:0 0 12px}.bb-kicker{margin:0 0 15px!important}
.bb-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.bb-home-hero{padding-top:48px;padding-bottom:48px}.bb-home-hero .bb-home-editorial-hero{display:block;width:100%;max-width:520px;height:auto;aspect-ratio:720/797;margin-left:auto}
.bb-trust{display:flex;gap:25px;flex-wrap:wrap;padding-top:22px;font-size:11px;letter-spacing:.05em;color:var(--bb-muted)}
.bb-trust a{color:var(--bb-muted);text-decoration:underline;text-underline-offset:4px}
.bb-selected{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:30px 0}
.bb-selected figure{margin:0}.bb-selected img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
.bb-selected figcaption{font-size:12px;line-height:1.6;margin-top:12px;color:var(--bb-muted)}
.bb-review{max-width:740px;margin:auto;text-align:center}.bb-review blockquote{font-family:Georgia,serif;font-size:clamp(23px,2.5vw,32px);line-height:1.5;margin:18px 0;color:var(--bb-ink)}
.bb-award{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:28px;font-size:12px;color:var(--bb-muted)}
.bb-award img{width:64px;height:auto}
.bb-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:32px}
.bb-three article{padding-top:24px;border-top:1px solid var(--bb-line)}.bb-three p{font-size:14px;line-height:1.8;color:var(--bb-muted)}
.bb-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:35px}.bb-facts p{font-size:14px;line-height:1.8;color:var(--bb-muted)}
.bb-services-menu{padding:46px!important}.bb-services-menu .bb-menu-group{font-family:Poppins,Arial,sans-serif!important;font-size:12px!important;font-weight:600!important;letter-spacing:.12em!important;text-transform:uppercase!important;text-align:left;margin:32px 0 16px}
.bb-price-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 22px;padding:16px 0;border-bottom:1px solid var(--bb-line);text-align:left}
.bb-price-row h3{font-size:15px!important;font-weight:500!important;margin:0;text-transform:none!important;letter-spacing:0!important}
.bb-price-row .bb-price{font-size:15px;font-weight:500;white-space:nowrap}.bb-price-row p{grid-column:1/-1;font-size:12px;line-height:1.7;color:var(--bb-muted);margin:0!important}
.bb-services-gallery{gap:14px!important}.bb-services-hero-actions{display:flex!important;flex-wrap:wrap;gap:12px!important}
.bb-services-menu-cta h3{font-size:18px!important;text-transform:none!important;letter-spacing:0!important}
.bb-reserve-intro h1{max-width:650px}.bb-reserve-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start}
.bb-form-panel{background:white;padding:34px;border:1px solid #e5dcd6;border-radius:8px}
.bb-form-panel .bb-form-note{font-size:13px;line-height:1.7;color:var(--bb-muted)}
div.wpforms-container-full{margin:20px 0!important}div.wpforms-container-full .wpforms-form .wpforms-field-label{font-family:Poppins,Arial,sans-serif;font-size:13px;font-weight:500;color:var(--bb-ink)}
div.wpforms-container-full .wpforms-form :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){border-color:#c6b8ae!important;border-radius:3px!important;font-family:Poppins,Arial,sans-serif!important;font-size:15px!important;color:var(--bb-ink)!important;min-height:46px}
div.wpforms-container-full .wpforms-form .wpforms-field{padding:12px 0!important}div.wpforms-container-full .wpforms-form .wpforms-required-label{color:#8c3d3d}
.elementor-location-footer{background:var(--bb-paper)!important;color:var(--bb-muted)}
.elementor-location-footer .elementor-section{background:var(--bb-paper)!important}.elementor-location-footer a{color:#80514d!important}
.elementor-location-footer .elementor-widget-text-editor{font-size:13px!important;line-height:1.7!important}.elementor-location-footer .elementor-widget-text-editor p{font-size:13px!important;line-height:1.7!important}
.elementor-location-header .elementor-nav-menu a{font-size:13px!important}.elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--bb-rose)!important}
.elementor[data-elementor-type="wp-page"] .elementor-tab-title{font-size:18px!important;font-family:Poppins,Arial,sans-serif!important;line-height:1.5!important;font-weight:500!important;color:var(--bb-ink)!important}
.elementor[data-elementor-type="wp-page"] .elementor-tab-title .elementor-accordion-title{font-size:18px!important;font-family:Poppins,Arial,sans-serif!important;line-height:1.5!important;font-weight:500!important;color:var(--bb-ink)!important}
.elementor[data-elementor-type="wp-page"] .elementor-tab-content{font-size:15px!important;line-height:1.8!important}
@media(max-width:900px){.bb-grid,.bb-reserve-grid{grid-template-columns:1fr;gap:30px}.bb-wrap{padding:48px 24px}.bb-home-hero{padding-top:30px;padding-bottom:32px}.bb-home-hero .bb-copy h1{font-size:38px!important;max-width:480px}.bb-home-hero .bb-copy>p:not(.bb-kicker){font-size:15px;line-height:1.6;margin:14px 0}.bb-home-hero .bb-actions{margin-top:18px}.bb-home-hero .bb-home-editorial-hero{margin:0 auto;max-width:520px}.bb-trust{gap:16px;padding-top:16px}.bb-three,.bb-facts{gap:20px}.bb-form-panel{padding:24px}.bb-reserve-intro h1{font-size:42px!important}}
@media(max-width:600px){.bb-wrap{padding:40px 22px}.bb-home-hero{padding-top:24px}.bb-home-hero .bb-kicker{margin-bottom:10px!important}.bb-home-hero .bb-copy h1{font-size:36px!important;margin-bottom:12px}.bb-home-hero{gap:22px}.bb-home-hero .bb-trust{grid-row:3}.bb-selected{gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.bb-selected figcaption{font-size:11px}.bb-three,.bb-facts{grid-template-columns:1fr}.bb-services-menu{padding:30px 22px!important}.bb-services-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important}.bb-services-hero h1{font-size:38px!important}.bb-price-row{gap:9px 14px}.bb-price-row h3,.bb-price-row .bb-price{font-size:14px!important}.bb-actions .bb-button{flex-grow:0}.elementor-location-header .elementor-widget-image img{max-width:100px!important;max-height:92px!important;object-fit:contain}.elementor-location-header .elementor-container{min-height:110px!important}.elementor-location-header .elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding-top:6px!important;padding-bottom:6px!important}.bb-reserve-intro .bb-copy p{font-size:15px}.bb-reserve-grid{gap:24px}.bb-form-panel{padding:22px 18px}.bb-wrap h2{font-size:31px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
