/* Being Digital theme: base, fallback header/footer, blog, utilities. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:clip}
body{margin:0;font-family:var(--bd-font-body);font-size:var(--bd-font-size);line-height:var(--bd-line-height);color:var(--bd-text);background:var(--bd-bg);-webkit-font-smoothing:antialiased;overflow-x:clip}
img,video,svg{max-width:100%;height:auto}
a{color:var(--bd-link)}
a:hover{color:var(--bd-accent-dark)}
h1,h2,h3,h4,h5,h6{font-family:var(--bd-font-heading);font-weight:var(--bd-heading-weight);line-height:1.1;letter-spacing:-.01em;color:var(--bd-primary-dark);margin:0 0 .5em}
h1{font-size:clamp(calc(var(--bd-h1)*.62),5vw,var(--bd-h1))}
h2{font-size:clamp(calc(var(--bd-h2)*.68),4vw,var(--bd-h2))}
h3{font-size:clamp(calc(var(--bd-h3)*.8),3vw,var(--bd-h3))}
p{margin:0 0 1em}
:focus-visible{outline:2px solid var(--bd-accent);outline-offset:3px}
::selection{background:var(--bd-accent);color:#fff}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.bd-skip-link:focus{position:fixed!important;top:8px;left:8px;width:auto;height:auto;clip:auto;z-index:1000;background:#fff;padding:10px 16px;border-radius:8px}
.bd-icon{display:inline-block;vertical-align:middle;flex:none}

/* Layout */
.bd-container{width:100%;max-width:calc(var(--bd-container) + var(--bd-gutter)*2);margin:0 auto;padding:0 var(--bd-gutter)}
.bd-layout{display:grid;gap:48px;padding-top:56px;padding-bottom:80px}
.bd-layout--right{grid-template-columns:minmax(0,1fr) 300px}
.bd-layout--left{grid-template-columns:300px minmax(0,1fr)}
.bd-layout--left .bd-sidebar{order:-1}
.bd-main.is-narrow{max-width:var(--bd-narrow);margin:0 auto;width:100%}
.bd-page-head{margin-bottom:32px}
.bd-eyebrow{font-size:.74rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--bd-accent-dark)}

/* Buttons (theme markup; Elementor buttons use Elementor's own styles) */
body a.bd-btn,.bd-btn,.wp-block-button__link,input[type=submit],button[type=submit]:not(.elementor-button){display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:var(--bd-btn-py) var(--bd-btn-px);border-radius:var(--bd-btn-radius);background:var(--bd-btn-bg);color:var(--bd-btn-color);font-family:var(--bd-font-body);font-weight:var(--bd-btn-weight);font-size:.95rem;line-height:1.2;border:0;cursor:pointer;text-decoration:none;transition:background .25s,transform .25s}
body a.bd-btn:hover,.bd-btn:hover,.wp-block-button__link:hover,input[type=submit]:hover{background:var(--bd-btn-bg-hover);color:var(--bd-btn-color);transform:translateY(-2px)}

/* Forms */
input[type=text],input[type=email],input[type=tel],input[type=url],input[type=password],input[type=search],input[type=number],select,textarea{width:100%;font:inherit;font-size:16px;color:var(--bd-text);background:#fff;border:1.5px solid var(--bd-border);border-radius:14px;padding:13px 16px;transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--bd-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--bd-primary) 14%,transparent)}

/* Announcement bar */
.bd-announce{background:var(--bd-announce-bg);color:var(--bd-announce-color);font-size:.8rem;letter-spacing:.05em;overflow:hidden;white-space:nowrap}
.bd-announce__track{display:inline-flex;gap:56px;padding:10px 0;animation:bd-marquee 32s linear infinite}
.bd-announce__track span{display:inline-flex;align-items:center;gap:10px}
.bd-announce__track span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--bd-accent)}
@keyframes bd-marquee{to{transform:translateX(-50%)}}

/* Fallback header */
.bd-header{position:relative;z-index:50;padding:12px var(--bd-gutter) 0}
.bd-header.is-sticky{position:sticky;top:0}
.admin-bar .bd-header.is-sticky{top:32px}
.bd-header__inner{max-width:var(--bd-container);margin:0 auto;display:flex;align-items:center;gap:24px;padding:10px 12px 10px 16px;border-radius:999px;background:#fff;box-shadow:0 18px 50px -18px rgba(14,59,46,.28)}
.bd-header.is-glass .bd-header__inner{background:rgba(255,255,255,.62);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(255,255,255,.65)}
.bd-brand{display:flex;align-items:center;gap:12px;flex:none}
.bd-brand .custom-logo{width:var(--bd-logo-width);height:auto;border-radius:50%}
.bd-brand__text{display:flex;flex-direction:column;text-decoration:none;line-height:1}
.bd-site-title{font-family:var(--bd-font-heading);font-size:1.35rem;font-weight:600;letter-spacing:.1em;color:var(--bd-primary-dark);text-transform:uppercase}
.bd-site-tagline{font-size:.6rem;letter-spacing:.3em;color:var(--bd-accent-dark);font-weight:600;margin-top:4px;text-transform:uppercase}
.bd-nav{flex:1}
.bd-header--menu-right .bd-nav{display:flex;justify-content:flex-end}
.bd-menu{list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:28px;font-size:.9rem;font-weight:500}
.bd-menu a{color:var(--bd-text);text-decoration:none;padding:8px 0;position:relative}
.bd-menu a::after{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:0;background:var(--bd-accent);transition:width .3s}
.bd-menu a:hover::after,.bd-menu .current-menu-item>a::after{width:100%}
.bd-menu .sub-menu{display:none}
.bd-header__actions{display:flex;align-items:center;gap:6px;margin-left:auto}
.bd-cart-link{position:relative;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;color:var(--bd-text)}
.bd-cart-link:hover{background:rgba(14,59,46,.07)}
.bd-cart-count{position:absolute;top:4px;right:2px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:var(--bd-accent);color:#fff;font-size:.68rem;font-weight:700;display:grid;place-items:center}
.bd-header__cta{padding:12px 22px;font-size:.85rem}
.bd-menu-toggle{display:none;width:46px;height:46px;border:0;background:none;border-radius:50%;color:var(--bd-text);cursor:pointer}
@media (max-width:900px){
  .bd-menu-toggle{display:grid;place-items:center}
  .bd-header__cta{display:none}
  .bd-nav{display:none;position:absolute;left:var(--bd-gutter);right:var(--bd-gutter);top:calc(100% + 8px);background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:var(--bd-radius);padding:12px;box-shadow:0 18px 50px -18px rgba(14,59,46,.35)}
  .bd-nav.is-open{display:block}
  .bd-menu{flex-direction:column;gap:0}
  .bd-menu a{display:block;padding:12px 10px}
  .bd-menu .sub-menu{display:block;list-style:none;padding-left:14px}
}

/* Fallback footer */
.bd-footer{background:var(--bd-footer-bg);color:var(--bd-footer-color);padding:64px 0 32px;border-top:1px solid var(--bd-border);font-size:.92rem}
.bd-footer a{color:inherit}
.bd-footer__widgets{display:grid;grid-template-columns:repeat(var(--bd-cols),1fr);gap:40px;padding-bottom:40px;margin-bottom:28px;border-bottom:1px solid var(--bd-border)}
.bd-footer .widget-title{font-family:var(--bd-font-body);font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bd-accent-dark)}
.bd-footer .widget ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.bd-footer__bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;font-size:.82rem}
.bd-footer__menu{list-style:none;margin:0;padding:0;display:flex;gap:18px}
.bd-footer__tagline{font-family:var(--bd-font-heading);font-size:1.1rem;color:var(--bd-primary)}
@media (max-width:768px){.bd-footer__widgets{grid-template-columns:1fr}}

/* Blog */
.bd-posts{display:grid;gap:28px}
.bd-posts--grid{grid-template-columns:repeat(var(--bd-cols),minmax(0,1fr))}
.bd-card{background:#fff;border:1px solid var(--bd-border);border-radius:var(--bd-radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.bd-card:hover{transform:translateY(-4px);box-shadow:0 18px 50px -18px rgba(14,59,46,.28)}
.bd-posts--list .bd-card{flex-direction:row}
.bd-posts--list .bd-card__thumb{flex:0 0 38%}
.bd-card__thumb img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.bd-card__body{padding:22px 24px 26px}
.bd-card__title{font-size:1.5rem;margin:6px 0 10px}
.bd-card__title a{color:inherit;text-decoration:none}
.bd-meta{font-size:.78rem;color:var(--bd-muted);margin:0}
.bd-card__excerpt{color:var(--bd-muted);font-size:.95rem}
.bd-entry__thumb{margin:0 0 32px}
.bd-entry__thumb img{border-radius:var(--bd-radius);width:100%}
.bd-entry__content>*{margin-bottom:1.2em}
.bd-entry__content img{border-radius:12px}
.bd-author{display:flex;gap:16px;align-items:center;margin-top:40px;padding:22px;border-radius:var(--bd-radius);background:var(--bd-surface)}
.bd-author img{border-radius:50%}
.bd-author p{margin:4px 0 0;color:var(--bd-muted);font-size:.9rem}
.nav-links{display:flex;justify-content:space-between;gap:16px;margin:40px 0;flex-wrap:wrap}
.nav-links a,.page-numbers{text-decoration:none}
.post-navigation span{display:block;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--bd-accent-dark)}
.pagination .page-numbers{display:inline-grid;place-items:center;min-width:42px;height:42px;border-radius:50%;border:1px solid var(--bd-border);margin-right:6px}
.pagination .current{background:var(--bd-primary);color:#fff;border-color:var(--bd-primary)}
.bd-sidebar .widget{margin-bottom:36px}
.bd-comments{margin-top:56px}
.bd-404{text-align:center;padding:120px 0}
@media (max-width:1024px){.bd-posts--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bd-layout--right,.bd-layout--left{grid-template-columns:1fr}}
@media (max-width:640px){.bd-posts--grid{grid-template-columns:1fr}.bd-posts--list .bd-card{flex-direction:column}}

/* Back to top */
.bd-to-top{position:fixed;right:18px;bottom:18px;z-index:40;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--bd-primary);color:#fff;opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .3s,transform .3s;box-shadow:0 10px 30px -10px rgba(14,59,46,.6)}
.bd-to-top.is-on{opacity:1;transform:none;pointer-events:auto}
.bd-to-top:hover{color:#fff;background:var(--bd-primary-dark)}

/* ---------- Utility classes for Elementor (Advanced > CSS Classes) ---------- */
/* Glass is drawn on an ::after layer, not on the element itself: a backdrop-filter on the element
   would trap position:fixed children (e.g. the PRO Elements side cart inside the header). */
.bd-glass,.bd-glass-dark{position:relative;isolation:isolate;background:transparent!important;border:1px solid rgba(255,255,255,.65);box-shadow:0 18px 50px -18px rgba(14,59,46,.28)}
.bd-glass-dark{border-color:rgba(255,255,255,.18);box-shadow:none}
.bd-glass::after,.bd-glass-dark::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:rgba(255,255,255,.58);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%)}
.bd-glass-dark::after{background:rgba(11,46,36,.42);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.bd-float{animation:bd-bob 6s ease-in-out infinite}
.bd-float-delay{animation-delay:-3s}
@keyframes bd-bob{50%{transform:translateY(-10px)}}
.bd-lift{transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s}
.bd-lift:hover{transform:translateY(-6px);box-shadow:0 40px 90px -30px rgba(11,46,36,.45)}
.bd-zoom-img{overflow:hidden}
.bd-zoom-img img{transition:transform 1s cubic-bezier(.22,1,.36,1)}
.bd-zoom-img:hover img{transform:scale(1.05)}
.bd-glow-gold{position:relative;isolation:isolate}
.bd-glow-gold::before{content:"";position:absolute;top:-20%;right:-10%;width:min(720px,80vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(184,137,47,.22),transparent 65%);z-index:-1;pointer-events:none}
.bd-glow-green::after{content:"";position:absolute;left:-200px;bottom:-200px;width:600px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(20,82,64,.16),transparent 65%);z-index:-1;pointer-events:none}
.bd-eyebrow-line .elementor-heading-title{display:inline-flex;align-items:center;gap:10px}
.bd-eyebrow-line .elementor-heading-title::before{content:"";width:28px;height:1px;background:currentColor}
.bd-steps-line{position:relative}
.bd-steps-line::before{content:"";position:absolute;top:58px;left:16%;right:16%;height:1px;background:repeating-linear-gradient(90deg,var(--bd-accent) 0 6px,transparent 6px 12px)}
@media (max-width:767px){.bd-steps-line::before{display:none}}
.bd-draft-tag .elementor-heading-title{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.06em;color:#B42318;background:#FEF3F2;border:1px dashed #F5B5AE;padding:4px 10px;border-radius:8px}
.bd-pulse-dot::before{content:"";display:inline-block;width:8px;height:8px;margin-right:10px;border-radius:50%;background:#2E9E6A;vertical-align:middle;box-shadow:0 0 0 3px rgba(46,158,106,.25)}

.bd-stars{color:var(--bd-accent);letter-spacing:2px}
.bd-pill{display:inline-flex;width:auto!important;max-width:max-content;border-radius:999px;padding:7px 16px 7px 12px}
.bd-pill p{margin:0}
.bd-em-gold em{font-style:italic;color:var(--bd-accent-dark)}
.bd-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.bd-chips span{padding:8px 16px;border-radius:99px;border:1px solid rgba(226,200,142,.4)}
.bd-steps{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0;padding:0}
.bd-steps li{display:flex;align-items:center;gap:10px;margin:0}
.bd-steps li+li::before{content:"";width:40px;height:1.5px;background:var(--bd-border)}
.bd-steps span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--bd-border);background:#fff;font-size:.75rem}
.bd-steps .is-done span{background:var(--bd-primary);border-color:var(--bd-primary);color:#fff}
.bd-steps .is-cur{color:var(--bd-primary-dark)}
.bd-steps .is-cur span{border-color:var(--bd-accent);color:var(--bd-accent-dark);box-shadow:0 0 0 4px #F6EEDC}
@media (max-width:600px){.bd-steps li+li::before{width:16px}}
.bd-video-card{border-radius:32px;overflow:hidden;box-shadow:0 40px 100px -30px rgba(0,0,0,.7)}
.bd-video-card .elementor-custom-embed-play i,.bd-video-card .elementor-custom-embed-play svg{background:rgba(255,255,255,.22);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.4);border-radius:50%;padding:26px;box-sizing:content-box}
.bd-fixed-img{flex:none}
.bd-fixed-img img{width:150px;height:150px;object-fit:cover}
@media (min-width:1025px){.bd-sticky-col{position:sticky;top:120px}}
.bd-logo img{border-radius:50%}

/* Elementor header: sticky without JS. The announcement row scrolls away, the nav bar stays. */
.bd-sticky-header .elementor-location-header{position:sticky;top:calc(var(--bd-announce-h,38px)*-1);z-index:99}
.bd-sticky-header.admin-bar .elementor-location-header{top:calc(32px - var(--bd-announce-h,38px))}
.elementor-location-header .bd-announce-row{height:var(--bd-announce-h,38px)}
@media (max-width:782px){.bd-sticky-header.admin-bar .elementor-location-header{top:calc(46px - var(--bd-announce-h,38px))}}
@media (max-width:600px){.bd-sticky-header.admin-bar .elementor-location-header{top:calc(var(--bd-announce-h,38px)*-1)}}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Elementor container helpers: keep natural width / single row on every breakpoint. */
.e-con.e-flex.bd-auto{--width:auto;flex:0 0 auto}
.e-con.e-flex.bd-nowrap{--flex-wrap:nowrap}
/* PRO Elements side cart */
.elementor-menu-cart__main{-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%)}
.elementor-menu-cart__product-name a{font-weight:600;color:var(--bd-text)}
.elementor-menu-cart__footer-buttons .elementor-button{border-radius:999px!important;font-weight:600}
.elementor-menu-cart__footer-buttons .elementor-button--checkout{background:var(--bd-primary)!important}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart{background:transparent!important;color:var(--bd-primary)!important;border:1px solid var(--bd-primary)}
.elementor-menu-cart__main .bd-shipbar{margin:0 0 14px;box-shadow:none}

/* Motion budget: endless animations wait until the page is idle (html.bd-motion) and pause off-screen. */
html:not(.bd-motion) :is(.bd-marquee__track,.bd-announce__track,.bd-stage__card.is-float,.bd-float,.bd-buybox__dot)::after,
html:not(.bd-motion) :is(.bd-marquee__track,.bd-announce__track,.bd-stage__card.is-float,.bd-float),
.bd-offscreen,.bd-offscreen *{animation-play-state:paused!important}
@media (max-width:1024px){.bd-stage__card.is-float,.bd-float{animation:none}}
/* Lighter frosted glass on phones: smaller blur radius is much cheaper to render. */
@media (max-width:767px){
  .bd-glass::after,.bd-glass-dark::after,.bd-stage__card,.bd-slider__cap,.bd-cd,.bd-sticky-atc,.bd-shipbar,.bd-header__inner,.bd-toast{-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important}
}
/* Render below-the-fold sections lazily (Customizer > Being Digital: Performance). */
.bd-lazy-render .elementor:not(.elementor-location-header):not(.elementor-location-footer)>.e-con.e-parent:nth-child(n+3){content-visibility:auto;contain-intrinsic-size:auto 900px}
.bd-shipbar{display:flex;align-items:center;gap:16px;padding:18px 22px;border-radius:20px;background:rgba(255,255,255,.62);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(255,255,255,.65);box-shadow:0 18px 50px -18px rgba(14,59,46,.28)}
.bd-shipbar[hidden]{display:none}
.bd-shipbar__icon{width:44px;height:44px;border-radius:14px;background:var(--bd-primary,#0E3B2E);color:#E2C88E;display:grid;place-items:center;flex:none}
.no-icon .bd-shipbar__icon{display:none}
.bd-shipbar__body{flex:1;min-width:0}
.bd-shipbar__msg{font-size:.9rem;color:var(--bd-text,#14201B)}
.bd-shipbar__msg b{color:var(--bd-primary-dark,#0B2E24)}
.bd-shipbar__meter{height:7px;border-radius:7px;background:var(--bd-border,#E4DCCB);margin-top:9px;overflow:hidden}
.bd-shipbar__meter i{display:block;height:100%;background:linear-gradient(90deg,var(--bd-fill-a,#145240),var(--bd-fill-b,#B8892F));transition:width .7s cubic-bezier(.22,1,.36,1)}
.elementor-menu-cart__product-price,.elementor-menu-cart__product-price .quantity{color:var(--bd-muted)!important;font-size:.85rem}
/* Elementor star ratings without the 80 KB icon font: draw stars with the ★ character. */
.elementor-star-rating i{font-family:Arial,sans-serif!important;font-style:normal}
.elementor-star-rating i:before{content:"\2605"!important;font-family:Arial,sans-serif!important}
.elementor-widget-reviews .swiper-pagination-bullet{margin:0 8px!important}
