@font-face{font-family:"BAK Montserrat";font-style:normal;font-weight:300;font-display:swap;src:url("fonts/montserrat-latin-300-normal.woff2") format("woff2")}
@font-face{font-family:"BAK Montserrat";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/montserrat-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"BAK Montserrat";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/montserrat-latin-500-normal.woff2") format("woff2")}
/* Target real text, without overriding icon fonts or layout containers. */
body.bak-type-lines :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,td,th,caption,a,label,input,select,option,textarea,button,small,strong,b,em,blockquote,figcaption,.elementor-heading-title,.elementor-button-text,.elementor-icon-list-text,.elementor-tab-title,.elementor-accordion-title,.woocommerce-loop-product__title,.price,.site-title,.site-description,span):where(:not(.bak-keep-type):not(.bak-keep-type *):not([class*="icon"]:not(.elementor-icon-list-text)):not([class*="fa-"]):not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad):not(.fass):not(.material-symbols-outlined):not(.material-symbols-rounded):not(.material-symbols-sharp):not(#wpadminbar):not(#wpadminbar *)){
 font-family:var(--bak-u-font)!important;
 font-size:var(--bak-u-size)!important;
 font-weight:var(--bak-u-weight,400)!important;
 line-height:var(--bak-u-height)!important;
 letter-spacing:var(--bak-u-spacing)!important;
}
/* Divider colours and surrounding margins are deliberately inherited. */
body.bak-type-lines hr{border-top-width:var(--bak-u-line)!important;border-top-style:solid!important;border-left-width:0!important;border-right-width:0!important;border-bottom-width:0!important;height:0!important}
body.bak-type-lines :is(.elementor-widget-divider,.elementor-divider){--divider-border-width:var(--bak-u-line)!important}
body.bak-type-lines .elementor-divider-separator{border-top-width:var(--bak-u-line)!important}
body.bak-type-lines .elementor-divider-separator::before,body.bak-type-lines .elementor-divider-separator::after{border-block-start-width:var(--bak-u-line)!important}
body.bak-type-lines :is(.bak-hero-pledge__line,.bpdf-rule>span){height:var(--bak-u-line)!important;min-height:var(--bak-u-line)!important}
body.bak-type-lines .bak-hero-pledge__line::before,body.bak-type-lines .bak-hero-pledge__line::after{border-width:var(--bak-u-line)!important}
body.bak-type-lines :is(.bak-ornament path,.bak-uniform-divider svg path,.bak-uniform-divider svg line){stroke-width:var(--bak-u-line)!important;vector-effect:non-scaling-stroke}
body.bak-type-lines :is(.bak-ornament circle,.bak-uniform-divider svg circle){stroke-width:var(--bak-u-line)!important;vector-effect:non-scaling-stroke}

body.bak-type-lines h1:where(:not(.bak-keep-type):not(.bak-keep-type *):not(#wpadminbar):not(#wpadminbar *)){--bak-u-size:var(--bak-u-h1);--bak-u-height:1.2;--bak-u-weight:500;}

body.bak-type-lines h2:where(:not(.bak-keep-type):not(.bak-keep-type *):not(#wpadminbar):not(#wpadminbar *)){--bak-u-size:var(--bak-u-h2);--bak-u-height:1.2;--bak-u-weight:500;}

body.bak-type-lines h3:where(:not(.bak-keep-type):not(.bak-keep-type *):not(#wpadminbar):not(#wpadminbar *)){--bak-u-size:var(--bak-u-h3);--bak-u-height:1.2;--bak-u-weight:500;}

body.bak-type-lines h4:where(:not(.bak-keep-type):not(.bak-keep-type *):not(#wpadminbar):not(#wpadminbar *)){--bak-u-size:var(--bak-u-h4);--bak-u-height:1.2;--bak-u-weight:500;}

body.bak-type-lines h5:where(:not(.bak-keep-type):not(.bak-keep-type *):not(#wpadminbar):not(#wpadminbar *)){--bak-u-size:var(--bak-u-h5);--bak-u-height:1.2;--bak-u-weight:500;}

body.bak-type-lines h6:where(:not(.bak-keep-type):not(.bak-keep-type *):not(#wpadminbar):not(#wpadminbar *)){--bak-u-size:var(--bak-u-h6);--bak-u-height:1.2;--bak-u-weight:500;}

body.bak-type-lines .elementor-heading-title:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):where(:not(.bak-keep-type):not(.bak-keep-type *):not(#wpadminbar):not(#wpadminbar *)){--bak-u-size:var(--bak-u-h2);--bak-u-height:1.2;--bak-u-weight:500}

/* Avoid adding a border to a divider that already draws its line in pseudo-elements. */
body.bak-type-lines .elementor-divider{--divider-border-style:solid!important}
body.bak-type-lines .elementor-divider-separator::before,body.bak-type-lines .elementor-divider-separator::after{border-top-width:var(--bak-u-line)!important;border-bottom-width:0!important}
body.bak-type-lines :is(.bak-hero-pledge__line,.bpdf-rule>span){box-sizing:border-box!important;max-height:var(--bak-u-line)!important;border-width:0!important;box-shadow:none!important}
body.bak-type-lines .bak-hero-pledge__line::before,body.bak-type-lines .bak-hero-pledge__line::after,body.bak-type-lines .bpdf-rule i{box-sizing:border-box!important;border-width:var(--bak-u-line)!important}
body.bak-type-lines :is(.bak-ornament svg,.bak-uniform-divider svg){overflow:visible}
body.bak-type-lines :is(.bak-ornament svg,.bak-uniform-divider svg) :is(line,polyline,circle,ellipse,path){stroke-width:var(--bak-u-line)!important;vector-effect:non-scaling-stroke!important}

/* Same visual role, even where the custom HTML uses different heading levels. */
body.bak-type-lines [class*="bak-"][class*="-intro"] h2:where(:not(.bak-keep-type):not(.bak-keep-type *)){--bak-u-size:var(--bak-u-h1);--bak-u-height:1.2;--bak-u-weight:500}
body.bak-type-lines [class*="bak-"][class*="-intro"] h3:where(:not(.bak-keep-type):not(.bak-keep-type *)){--bak-u-size:var(--bak-u-h2);--bak-u-height:1.2;--bak-u-weight:400}
body.bak-type-lines .bak-hero-pledge h2:where(:not(.bak-keep-type):not(.bak-keep-type *)){--bak-u-weight:400}
body.bak-type-lines p:where(:not(.bak-keep-type):not(.bak-keep-type *)){--bak-u-weight:300}
/* Match the divider classes in the supplied BAK HTML sections. */
body.bak-type-lines [class*="bak-"][class*="__line"]{height:var(--bak-u-line)!important;min-height:var(--bak-u-line)!important;max-height:var(--bak-u-line)!important;border-width:0!important;box-sizing:border-box!important;box-shadow:none!important}
body.bak-type-lines [class*="bak-"][class*="__line"]::before,body.bak-type-lines [class*="bak-"][class*="__line"]::after{border-width:var(--bak-u-line)!important;box-sizing:border-box!important}
body.bak-type-lines [class*="bak-"][class*="__line"]::before{min-width:calc(var(--bak-u-line)*2 + 3px);min-height:calc(var(--bak-u-line)*2 + 3px)}
body.bak-type-lines [class*="bak-"][class*="__line"]::after{min-width:calc(var(--bak-u-line)*2 + 7px);min-height:calc(var(--bak-u-line)*2 + 7px)}

/* Intro and story ornaments share the same pseudo-line and circle treatment. */
body.bak-type-lines [class*="bak-"][class*="__ornament"]::before{height:var(--bak-u-line)!important;min-height:var(--bak-u-line)!important;max-height:var(--bak-u-line)!important;border-width:0!important;box-shadow:none!important;box-sizing:border-box!important}
body.bak-type-lines [class*="bak-"][class*="__ornament"] [class*="__circle"]{border-width:var(--bak-u-line)!important;box-sizing:border-box!important;min-width:calc(var(--bak-u-line)*2 + 3px);min-height:calc(var(--bak-u-line)*2 + 3px)}
body.bak-type-lines [class*="bak-"][class*="__ornament"] :is([class*="--left-two"],[class*="--right-one"]){min-width:calc(var(--bak-u-line)*2 + 7px);min-height:calc(var(--bak-u-line)*2 + 7px)}
/* Footer typography is deliberately independent of the page heading hierarchy. */
body.bak-type-lines :is(footer,.site-footer,#colophon,.elementor-location-footer,[data-elementor-type="footer"],.bak-footer,[class*="bak-"][class*="footer"]):where(:not(.bak-keep-type):not(.bak-keep-type *)){--bak-u-size:var(--bak-u-footer);--bak-u-height:1.5;--bak-u-weight:400}
body.bak-type-lines :is(footer,.site-footer,#colophon,.elementor-location-footer,[data-elementor-type="footer"],.bak-footer,[class*="bak-"][class*="footer"]) :is(h1,h2,h3,h4,h5,h6,.elementor-heading-title):where(:not(.bak-keep-type):not(.bak-keep-type *)){--bak-u-size:var(--bak-u-footer-heading);--bak-u-height:1.4;--bak-u-weight:500}
body.bak-type-lines :is(footer,.site-footer,#colophon,.elementor-location-footer,[data-elementor-type="footer"],.bak-footer,[class*="bak-"][class*="footer"]) p:where(:not(.bak-keep-type):not(.bak-keep-type *)){--bak-u-size:var(--bak-u-footer);--bak-u-height:1.5;--bak-u-weight:400}
body.bak-type-lines :is(footer,.site-footer,#colophon,.elementor-location-footer,[data-elementor-type="footer"],.bak-footer,[class*="bak-"][class*="footer"]) :is(input,select,textarea,button,.elementor-button-text):where(:not(.bak-keep-type):not(.bak-keep-type *)){--bak-u-size:var(--bak-u-footer-control);--bak-u-height:1.4;--bak-u-weight:400}

/* Solid ornament bars and dot pairs used by the savoury sections. */
body.bak-type-lines .bak-u-solid-ornament{height:var(--bak-u-line)!important;min-height:var(--bak-u-line)!important;max-height:var(--bak-u-line)!important;border-width:0!important;box-shadow:none!important;box-sizing:border-box!important}
body.bak-type-lines [class*="bak-"][class*="__ornament"] [class*="__dots"],body.bak-type-lines [class*="bak-"][class*="__ornament"] [class*="__dots"]::before,body.bak-type-lines [class*="bak-"][class*="__ornament"] [class*="__dots"]::after{border-width:var(--bak-u-line)!important;box-sizing:border-box!important;min-width:calc(var(--bak-u-line)*2 + 3px);min-height:calc(var(--bak-u-line)*2 + 3px)}

/* Contact dividers use real i elements inside dot-pair containers. */
body.bak-type-lines [class*="bak-"][class*="divider"] [class*="__dots"] i,body.bak-type-lines [class*="bak-"][class*="__ornament"] [class*="__dots"] i{border-width:var(--bak-u-line)!important;box-sizing:border-box!important;min-width:calc(var(--bak-u-line)*2 + 3px);min-height:calc(var(--bak-u-line)*2 + 3px)}
body.bak-type-lines [class*="bak-"][class*="divider"] [class*="__dots"] i:not(:first-child),body.bak-type-lines [class*="bak-"][class*="__ornament"] [class*="__dots"] i:not(:first-child){min-width:calc(var(--bak-u-line)*2 + 7px);min-height:calc(var(--bak-u-line)*2 + 7px)}
/* A dot container is a positioned flex group, rather than a circle itself. */
body.bak-type-lines [class*="bak-"] [class*="__dots"]:has(>i){border-width:0!important;min-width:0;min-height:0}

/* Privacy-page decorative lines and standalone policy section separators. */
body.bak-type-lines .bak-privacy .bak-privacy-divider__line{height:var(--bak-u-line)!important;min-height:var(--bak-u-line)!important;max-height:var(--bak-u-line)!important;border-width:0!important;box-shadow:none!important}
body.bak-type-lines .bak-privacy .bak-privacy-divider__dots i{border-width:var(--bak-u-line)!important;box-sizing:border-box!important}
body.bak-type-lines .bak-privacy .bak-policy-block{border-top-width:var(--bak-u-line)!important}
body.bak-type-lines .bak-privacy .bak-policy-block:last-child{border-bottom-width:var(--bak-u-line)!important}
body.bak-type-lines .bak-privacy .bak-privacy__circles span{border-width:var(--bak-u-line)!important;box-sizing:border-box!important}
/* One actual decorative component replaces the differing source implementations. */
body.bak-type-lines .bak-u-shared-divider{position:relative!important;display:block!important;width:100%!important;max-width:1000px!important;height:28px!important;min-height:28px!important;max-height:28px!important;padding:0!important;margin-inline:auto!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;line-height:1!important}
body.bak-type-lines .bak-u-shared-divider::before,body.bak-type-lines .bak-u-shared-divider::after{content:none!important;display:none!important;border:0!important;background:none!important}
body.bak-type-lines .bak-u-shared-divider>.bak-u-divider-svg{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:28px!important;max-width:none!important;margin:0!important;overflow:visible!important;transform:none!important}
body.bak-type-lines .bak-u-divider-svg line,body.bak-type-lines .bak-u-divider-svg circle{stroke:#575451!important;stroke-width:var(--bak-u-line)!important;vector-effect:non-scaling-stroke!important;opacity:1!important}
body.bak-type-lines .bak-u-divider-svg circle{fill:#fffaf0!important}
body.bak-type-lines .bak-u-shared-divider>.bak-u-divider-label{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;display:block!important;margin:0!important;padding:0!important;white-space:nowrap!important}
