:root{--bb-pri:#7B2D3F;--bb-pri-dk:#5A1E2E;--bb-sec:#1D6847;--bb-gold:#C4973B;--bb-gold-lt:#E8D4A0;--bb-ivory:#FDF8F0;--bb-parch:#F5EDE0;--bb-linen:#EDE4D4;--bb-txt:#3A2820;--bb-txt2:#7A6B5D;--bb-txt3:#A89B8C;--bb-white:#FFFFFF;--bb-font-d:'Playfair Display',Georgia,serif;--bb-font-b:'Lato','Helvetica Neue',Arial,sans-serif;--bb-tr:.3s ease;--bb-r:8px}
body{font-family:var(--bb-font-b);color:var(--bb-txt);line-height:1.7;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{font-family:var(--bb-font-d);line-height:1.2}
.skip-to-content{position:absolute;top:-100%;left:50%;transform:translateX(-50%);background:var(--bb-pri);color:#fff;padding:12px 24px;border-radius:0 0 var(--bb-r) var(--bb-r);z-index:100000;font-weight:700;text-decoration:none;font-size:14px;transition:top var(--bb-tr)}
.skip-to-content:focus{top:0;outline:3px solid var(--bb-gold);outline-offset:2px}
*:focus-visible{outline:3px solid var(--bb-gold);outline-offset:3px;border-radius:2px}
*:focus:not(:focus-visible){outline:none}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
.elementor-button{transition:all var(--bb-tr)!important;overflow:hidden}
.elementor-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(123,45,63,.25)}
.elementor-button:active{transform:translateY(0)}
.elementor-image img{transition:transform .5s ease!important}
.elementor-icon-box-wrapper{transition:transform var(--bb-tr)}
.elementor-icon-box-wrapper:hover{transform:translateY(-4px)}
@media(prefers-reduced-motion:no-preference){.bb-fade-in-up{opacity:0;transform:translateY(25px);transition:opacity .6s ease,transform .6s ease}.bb-fade-in-up.bb-visible{opacity:1;transform:translateY(0)}.bb-scale-in{opacity:0;transform:scale(.92);transition:opacity .5s ease,transform .5s ease}.bb-scale-in.bb-visible{opacity:1;transform:scale(1)}}
.elementor-sticky--effects{background:rgba(255,255,255,.97)!important;backdrop-filter:blur(8px)}
.elementor-menu-toggle{background:transparent!important;border:2px solid var(--bb-txt)!important;border-radius:4px!important;padding:7px!important}
.elementor-menu-toggle:hover{border-color:var(--bb-pri)!important}
.elementor-nav-menu--dropdown{background:var(--bb-pri-dk)!important;border:none!important}
.elementor-nav-menu--dropdown .elementor-item{color:var(--bb-gold-lt)!important;padding:12px 20px!important;border-bottom:1px solid rgba(255,255,255,.06)!important}
.elementor-nav-menu--dropdown .elementor-item:hover{background:rgba(196,151,59,.12)!important;color:var(--bb-gold)!important}
.elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--bb-pri)!important}
.elementor-testimonial-wrapper{transition:transform var(--bb-tr);border-radius:var(--bb-r)}
.elementor-testimonial-wrapper:hover{transform:translateY(-3px)}
.elementor-testimonial-content::before{content:'\201C';font-size:50px;color:var(--bb-gold);font-family:Georgia,serif;line-height:1;display:block;margin-bottom:-8px}
.elementor-form .elementor-field{border:2px solid var(--bb-linen)!important;border-radius:var(--bb-r)!important;padding:12px 16px!important;font-size:15px!important;transition:border-color var(--bb-tr),box-shadow var(--bb-tr)!important;background:var(--bb-white)!important}
.elementor-form .elementor-field:focus{border-color:var(--bb-pri)!important;box-shadow:0 0 0 3px rgba(123,45,63,.12)!important;outline:none}
.elementor-form label{font-weight:600!important;margin-bottom:6px!important}
footer a{color:var(--bb-gold-lt)!important;text-decoration:none;transition:color var(--bb-tr)}
footer a:hover{color:var(--bb-gold)!important}
footer .elementor-icon-list-icon{color:var(--bb-gold)!important}
.elementor-social-icon{transition:transform var(--bb-tr)!important}
.elementor-social-icon:hover{transform:translateY(-3px)!important}
.elementor-widget-google_maps iframe{border-radius:var(--bb-r);border:2px solid rgba(0,0,0,.04)}
@media(max-width:767px){.elementor-section .elementor-container{flex-direction:column!important}.elementor-column{width:100%!important}h1.elementor-heading-title{font-size:30px!important}h2.elementor-heading-title{font-size:26px!important}.elementor-button{width:100%;max-width:320px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.bb-fade-in-up,.bb-scale-in{opacity:1!important;transform:none!important}}
@media(forced-colors:active){.elementor-button{border:2px solid ButtonText!important}a{text-decoration:underline}}
@media print{header,footer,.elementor-nav-menu,.elementor-widget-google_maps,.elementor-widget-form,#aw-widget-root{display:none!important}body{font-size:12pt;color:#000}}
.sr-only,.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
