.elementor-kit-68{--e-global-color-primary:#2E2D60;--e-global-color-secondary:#47B749;--e-global-color-text:#1C1B3B;--e-global-color-accent:#55547A;--e-global-typography-primary-font-family:"Nunito";--e-global-typography-primary-font-weight:900;--e-global-typography-secondary-font-family:"Nunito";--e-global-typography-secondary-font-weight:800;--e-global-typography-text-font-family:"Nunito";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Nunito";--e-global-typography-accent-font-weight:700;--e-global-typography-eyebrow-font-family:"Source Sans 3";--e-global-typography-eyebrow-font-size:16px;--e-global-typography-eyebrow-font-weight:700;--e-global-typography-eyebrow-text-transform:uppercase;--e-global-typography-eyebrow-letter-spacing:0.13em;--e-global-typography-price_lg-font-family:"Newsreader";--e-global-typography-price_lg-font-size:42px;--e-global-typography-price_lg-font-weight:600;--e-global-typography-price_lg-line-height:1em;--e-global-typography-price_sm-font-family:"Newsreader";--e-global-typography-price_sm-font-size:32px;--e-global-typography-price_sm-font-weight:600;--e-global-typography-price_sm-line-height:1em;color:#17162F;font-family:"Source Sans 3", Sans-serif;font-size:20px;font-weight:400;line-height:1.62em;}.elementor-kit-68 button,.elementor-kit-68 input[type="button"],.elementor-kit-68 input[type="submit"],.elementor-kit-68 .elementor-button{background-color:#47B749;font-family:"Source Sans 3", Sans-serif;font-size:18px;font-weight:700;color:#17162F;border-radius:10px 10px 10px 10px;padding:17px 27px 17px 27px;}.elementor-kit-68 e-page-transition{background-color:#FFBC7D;}.elementor-kit-68 a{color:#2E2D60;}.elementor-kit-68 a:hover{color:#2A7A2C;}.elementor-kit-68 h1{color:#2E2D60;font-family:"Newsreader", Sans-serif;font-size:56px;font-weight:500;line-height:1.12em;letter-spacing:-0.012em;}.elementor-kit-68 h2{color:#2E2D60;font-family:"Newsreader", Sans-serif;font-size:42px;font-weight:500;line-height:1.12em;letter-spacing:-0.012em;}.elementor-kit-68 h3{color:#2E2D60;font-family:"Newsreader", Sans-serif;font-size:25px;font-weight:500;line-height:1.25em;letter-spacing:-0.012em;}.elementor-kit-68 h4{color:#2E2D60;font-family:"Newsreader", Sans-serif;font-size:20px;font-weight:500;line-height:1.25em;letter-spacing:-0.012em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-68{font-size:19px;}.elementor-kit-68 h1{font-size:46px;}.elementor-kit-68 h2{font-size:36px;}.elementor-kit-68 h3{font-size:24px;}.elementor-kit-68 h4{font-size:20px;}.elementor-kit-68 button,.elementor-kit-68 input[type="button"],.elementor-kit-68 input[type="submit"],.elementor-kit-68 .elementor-button{font-size:18px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-68{font-size:18px;}.elementor-kit-68 h1{font-size:38px;}.elementor-kit-68 h2{font-size:31px;}.elementor-kit-68 h3{font-size:22px;}.elementor-kit-68 h4{font-size:20px;}.elementor-kit-68 button,.elementor-kit-68 input[type="button"],.elementor-kit-68 input[type="submit"],.elementor-kit-68 .elementor-button{font-size:17px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* hc-safety-net: prevent page-wide horizontal overflow */
html, body { overflow-x: hidden; max-width: 100%; }
/* hc-gravity-forms: sitewide brand styling for all Gravity Forms */
.gform_wrapper.gform-theme{--gf-color-primary:#47B749;--gf-color-primary-contrast:#2E2D60;--gf-color-primary-darker:#3DA63F;--gf-color-in-ctrl-primary:#47B749;--gf-color-in-ctrl-primary-contrast:#2E2D60;--gf-ctrl-border-color:#8583A8;--gf-ctrl-label-color-primary:#2E2D60;--gf-ctrl-label-color-secondary:#2E2D60;--gf-radius:8px;--gf-grid-row-gutter:10px;--gf-grid-column-gutter:16px;font-family:'Nunito',-apple-system,sans-serif!important}
.gform_wrapper .gform_fields{row-gap:10px!important}
.gform_wrapper .gfield{margin-bottom:0!important}
.gform_wrapper .gfield_label,.gform_wrapper legend.gfield_label{font-family:'Nunito',sans-serif!important;font-weight:800!important;font-size:18px!important;color:#2E2D60!important;margin-bottom:6px!important}
.gform_wrapper input[type=text],.gform_wrapper input[type=email],.gform_wrapper input[type=tel],.gform_wrapper .ginput_container input,.gform_wrapper textarea,.gform_wrapper select{min-height:56px;font-size:20px!important;font-family:'Nunito',sans-serif!important;border:2px solid #8583A8!important;border-radius:8px!important;padding:14px 16px!important;color:#1C1B3B!important;width:100%!important;box-sizing:border-box!important;margin:0!important}
.gform_wrapper textarea{min-height:120px!important}
.gform_wrapper .ginput_container{margin-top:0!important}
.gform_wrapper input:focus,.gform_wrapper textarea:focus,.gform_wrapper select:focus{border-color:#2E2D60!important;outline:4px solid #47B749!important;outline-offset:2px!important}
.gform_wrapper .gfield_radio,.gform_wrapper .gfield_checkbox{display:flex!important;flex-direction:column!important;gap:6px!important;list-style:none!important;margin:0!important;padding:0!important}
.gform_wrapper .gfield_radio li,.gform_wrapper .gfield_checkbox li{display:flex!important;align-items:center!important;gap:10px!important;min-height:40px!important;margin:0!important}
.gform_wrapper .gfield_radio input[type=radio],.gform_wrapper .gfield_checkbox input[type=checkbox]{width:24px!important;height:24px!important;accent-color:#47B749!important;flex:none!important}
.gform_wrapper .gfield_radio label,.gform_wrapper .gfield_checkbox label{font-family:'Nunito',sans-serif!important;font-size:19px!important;font-weight:600!important;color:#1C1B3B!important}
.gform_wrapper .gform_footer{margin-top:24px!important;padding:0!important}
.gform_wrapper .gform_button{width:100%!important;min-height:56px!important;background:#47B749!important;color:#2E2D60!important;font-family:'Nunito',sans-serif!important;font-weight:800!important;font-size:20px!important;border:none!important;border-radius:18px 18px 18px 4px!important;cursor:pointer!important}
.gform_wrapper .gform_button:hover{background:#3DA63F!important}
.gform_wrapper .validation_message{color:#C0392B!important;font-family:'Nunito',sans-serif!important;font-size:16px!important;margin-top:2px!important}
.gform_wrapper .gfield_required{color:#C0392B!important}
.gform_wrapper .gform_heading{margin-bottom:8px!important}
.gform_confirmation_message{font-family:'Nunito',sans-serif!important;font-size:20px!important;color:#2E2D60!important;font-weight:700!important}

/* hc-faq-accordion: sitewide brand styling for every FAQ accordion widget, present or future */
.elementor-widget-accordion .elementor-accordion-item{border-width:2px;border-color:#DCD9F5}
.elementor-widget-accordion .elementor-tab-content{border-width:2px;border-block-start-color:#DCD9F5;color:#1C1B3B;font-family:'Nunito',sans-serif;font-size:20px;line-height:1.6em;padding:0 8px 24px 8px}
.elementor-widget-accordion .elementor-tab-title.elementor-active{border-width:2px;border-block-end-color:#DCD9F5}
.elementor-widget-accordion .elementor-tab-title{background-color:#FFFFFF;padding:24px 8px 24px 8px}
.elementor-widget-accordion .elementor-accordion-icon,.elementor-widget-accordion .elementor-accordion-title{color:#2E2D60;font-family:'Nunito',sans-serif;font-size:22px;font-weight:800}
.elementor-widget-accordion .elementor-accordion-icon svg{fill:#2E2D60}
.elementor-widget-accordion .elementor-active .elementor-accordion-icon,.elementor-widget-accordion .elementor-active .elementor-accordion-title{color:#2A7C2E}
.elementor-widget-accordion .elementor-active .elementor-accordion-icon svg{fill:#2A7C2E}

.elementor-element-hero-body a{color:#2A7C2E;text-decoration:underline;font-weight:700}
.elementor-element-hero-body a:hover{color:#2E2D60}

.elementor-element-about-story-p3 a{color:#2A7C2E;text-decoration:underline;font-weight:700}
.elementor-element-about-story-p3 a:hover{color:#2E2D60}

/* hc-faq-accordion-v2: design-system FAQ rows (72px rows, 44px green +/- tile, hover confirms only) */
.elementor-widget-accordion .elementor-accordion{display:flex;flex-direction:column}
.elementor-widget-accordion .elementor-tab-title{display:flex;align-items:center;gap:16px;min-height:72px;box-sizing:border-box;cursor:pointer;padding:14px 12px!important;border-radius:8px}
.elementor-widget-accordion .elementor-tab-title:hover{background-color:#F7F6FD}
.elementor-widget-accordion .elementor-tab-title:focus-visible{outline:4px solid #47B749;outline-offset:2px}
.elementor-widget-accordion .elementor-accordion-title{flex:1 1 auto;line-height:1.3;text-decoration:none!important}
.elementor-widget-accordion .elementor-accordion-icon{order:2;float:none!important;flex:0 0 44px;width:44px!important;height:44px;display:flex!important;align-items:center;justify-content:center;margin:0!important;background:#47B749;border-radius:8px;text-align:center!important}
.elementor-widget-accordion .elementor-accordion-icon svg{width:18px;height:18px;fill:#2E2D60!important}
.elementor-widget-accordion .elementor-active .elementor-accordion-icon svg{fill:#2E2D60!important}
.elementor-widget-accordion .elementor-tab-content{padding:4px 12px 24px 12px!important;max-width:62ch}
.elementor-widget-accordion .elementor-tab-content p{margin:0 0 12px}
.elementor-widget-accordion .elementor-tab-content a{color:#2A7C2E;font-weight:700;text-decoration:underline}
.elementor-widget-accordion .elementor-tab-content a:hover{color:#2E2D60}
@media (max-width:767px){.elementor-widget-accordion .elementor-accordion-title{font-size:20px!important}.elementor-widget-accordion .elementor-tab-content{font-size:19px!important}}

/* hc-faq-active-lock: open question always green, whatever the Kit accent colour or link state */
.elementor-widget-accordion .elementor-tab-title.elementor-active,.elementor-widget-accordion .elementor-tab-title.elementor-active .elementor-accordion-title,.elementor-widget-accordion .elementor-tab-title.elementor-active .elementor-accordion-title:hover,.elementor-widget-accordion .elementor-tab-title.elementor-active .elementor-accordion-title:focus,.elementor-widget-accordion .elementor-tab-title.elementor-active .elementor-accordion-title:visited{color:#2A7C2E!important}
.elementor-widget-accordion .elementor-tab-title:not(.elementor-active) .elementor-accordion-title,.elementor-widget-accordion .elementor-tab-title:not(.elementor-active) .elementor-accordion-title:visited{color:#2E2D60!important}

/* hc-layout-system:start */
/* Sitewide layout system (design system: content 1200px, reading text ~640px, gutters 32/20px).
   Every top-level section: full-bleed background, content held to one 1200px column with a shared left edge.
   These rules deliberately override per-section width settings so widths are controlled here only. */
:root{--hc-content:1200px;--hc-text:640px;--hc-gutter:32px;--hc-col-gap:48px}
@media (max-width:767px){:root{--hc-gutter:20px;--hc-col-gap:32px}}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;padding-left:max(var(--hc-gutter),calc((100% - var(--hc-content)) / 2))!important;padding-right:max(var(--hc-gutter),calc((100% - var(--hc-content)) / 2))!important}
/* A section with one wrapper inside: the wrapper fills the column */
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element > .e-con:only-child{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;flex:1 1 100%!important;--width:100%}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element .e-con-boxed > .e-con-inner{max-width:none!important;margin-left:0!important;margin-right:0!important;width:100%!important}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .e-con-boxed > .e-con-inner{max-width:none!important;margin-left:0!important;margin-right:0!important}
/* Two-column sections (heroes, text + form): text left, photo/form right, one consistent layout */
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element:has(> .e-con + .e-con){display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:space-between!important;align-items:center!important;column-gap:var(--hc-col-gap)!important;row-gap:var(--hc-col-gap)!important}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element:has(> .e-con + .e-con) > .e-con:first-child{flex:1 1 480px!important;max-width:var(--hc-text)!important;width:auto!important;margin:0!important}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element:has(> .e-con + .e-con) > .e-con:last-child{flex:0 1 440px!important;max-width:460px!important;width:100%!important;margin:0!important}
@media (max-width:1024px){ :is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element:has(> .e-con + .e-con) > .e-con:first-child, :is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element:has(> .e-con + .e-con) > .e-con:last-child{flex:1 1 100%!important;max-width:100%!important} }
/* Reading width: paragraphs, rich text, forms and FAQs never exceed the text column */
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) p{max-width:var(--hc-text)}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) .elementor-widget-text-editor,:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) .elementor-widget-theme-post-content{max-width:var(--hc-text)}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) .gform_wrapper{max-width:var(--hc-text)}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) .elementor-widget-accordion{max-width:820px;width:100%}
/* Content-page heroes: same vertical rhythm everywhere */
.elementor[data-elementor-type="wp-page"] > .elementor-element:first-child{padding-top:72px!important;padding-bottom:72px!important}
@media (max-width:767px){.elementor[data-elementor-type="wp-page"] > .elementor-element:first-child{padding-top:48px!important;padding-bottom:48px!important}}
/* Shortcode blocks (grids, heroes, booking panels) always span the column from the left edge */
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element > .elementor-widget-shortcode,:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element > .e-con > .elementor-widget-shortcode{align-self:stretch!important;width:100%!important;max-width:none!important}
/* Wrapper containers add no side padding of their own, so text always starts on the shared left edge */
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element > .e-con:only-child,:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element > .e-con:only-child > .e-con-inner,:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .e-con-boxed > .e-con-inner,:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element:has(> .e-con + .e-con) > .e-con:first-child{padding-left:0!important;padding-right:0!important}
/* Elementor's default container padding: v3 default set to 0 here; v4 atomic default removed in novamira-sandbox/hc-layout.php */
:root{--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px}
/* Header and footer rows use the same column and edges as page content */
.elementor-location-header [data-id="utility-inner"],.elementor-location-header [data-id="main-inner"],.elementor-location-footer [data-id="footer-content-wrap"],.elementor-location-footer [data-id="footer-legal-inner"]{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;padding-left:max(var(--hc-gutter),calc((100% - var(--hc-content)) / 2))!important;padding-right:max(var(--hc-gutter),calc((100% - var(--hc-content)) / 2))!important}
/* Section width options. Add the class to a section (Advanced > CSS Classes, or the class list on v4 containers):
   hc-narrow  = content in a centred column (~half page), text stays left-aligned. For FAQs, prose, forms.
   hc-medium  = centred 900px column. For tables with text (product pricing).
   hc-cta     = short call to action: centred column, centred text and buttons. */
:root{--hc-narrow:720px;--hc-medium:900px}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element:is(.hc-narrow,.hc-cta){padding-left:max(var(--hc-gutter),calc((100% - var(--hc-narrow)) / 2))!important;padding-right:max(var(--hc-gutter),calc((100% - var(--hc-narrow)) / 2))!important}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element.hc-medium{padding-left:max(var(--hc-gutter),calc((100% - var(--hc-medium)) / 2))!important;padding-right:max(var(--hc-gutter),calc((100% - var(--hc-medium)) / 2))!important}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element:is(.hc-narrow,.hc-cta) p,:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element:is(.hc-narrow,.hc-cta) .elementor-widget-accordion,:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element:is(.hc-narrow,.hc-cta) .elementor-widget-text-editor{max-width:none}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element.hc-cta,:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element.hc-cta :is(h1,h2,h3,h4,p){text-align:center!important}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element.hc-cta,:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element.hc-cta .e-con{align-items:center!important;justify-content:center!important}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element.hc-cta .elementor-element:not(.e-con){align-self:center!important}
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element.hc-cta > .e-con:only-child{align-items:center!important}
@media (max-width:767px){ :is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element.hc-cta a:is(.e-button,.elementor-button){align-self:stretch!important} }
:is(.elementor[data-elementor-type="wp-page"],.elementor[data-elementor-type="single-post"],.elementor[data-elementor-type="single"],.elementor[data-elementor-type="single-page"],.elementor[data-elementor-type="archive"]) > .elementor-element.hc-cta :is(a,button,.elementor-widget){align-self:center!important}
/* hc-layout-system:end */

/* hc-richtext: headings and lists inside rich-text blocks (legal pages, product write-ups) follow the design system */
.elementor-widget-text-editor :is(h2,h3,h4),.elementor-widget-theme-post-content :is(h2,h3,h4){font-family:'Nunito',sans-serif!important;font-weight:800;color:#2E2D60;line-height:1.2;margin:40px 0 12px}
.elementor-widget-text-editor h2,.elementor-widget-theme-post-content h2{font-size:32px}
.elementor-widget-text-editor h3,.elementor-widget-theme-post-content h3{font-size:26px}
.elementor-widget-text-editor h4,.elementor-widget-theme-post-content h4{font-size:22px}
.elementor-widget-text-editor > :first-child,.elementor-widget-text-editor :is(h2,h3,h4):first-child{margin-top:0}
.elementor-widget-text-editor p,.elementor-widget-theme-post-content p{margin:0 0 16px}
.elementor-widget-text-editor ul,.elementor-widget-text-editor ol{padding-left:1.2em;margin:0 0 16px}
.elementor-widget-text-editor li{margin-bottom:8px}
@media (max-width:767px){.elementor-widget-text-editor h2,.elementor-widget-theme-post-content h2{font-size:26px}.elementor-widget-text-editor h3,.elementor-widget-theme-post-content h3{font-size:22px}}

/* hc-form-select-fix: dropdowns match the 60px form controls (design system), text never clipped */
.gform_wrapper select,.gform_wrapper .gfield select{height:60px!important;min-height:60px!important;line-height:26px!important;padding:16px 44px 16px 16px!important;font-size:20px!important;color:#1C1B3B!important;background-color:#FFFFFF;box-sizing:border-box!important}

/* hc-cookie-banner: Complianz banner in the Hearing Choice design system */
.cmplz-cookiebanner{font-family:'Nunito',sans-serif!important;color:#1C1B3B!important;border-radius:24px 24px 24px 6px!important;border:2px solid #DCD9F5!important;box-shadow:0 12px 40px rgba(46,45,96,.25)!important;max-width:min(560px,calc(100vw - 32px))!important}
.cmplz-cookiebanner .cmplz-title{font-family:'Nunito',sans-serif!important;font-size:22px!important;font-weight:800!important;color:#2E2D60!important}
.cmplz-cookiebanner .cmplz-message,.cmplz-cookiebanner .cmplz-message p,.cmplz-cookiebanner .cmplz-categories .cmplz-category-title,.cmplz-cookiebanner .cmplz-description{font-size:18px!important;line-height:1.5!important;color:#1C1B3B!important}
.cmplz-cookiebanner .cmplz-buttons{gap:12px!important}
.cmplz-cookiebanner .cmplz-btn{min-height:60px!important;height:auto!important;padding:14px 20px!important;font-family:'Nunito',sans-serif!important;font-size:18px!important;font-weight:800!important;line-height:1.25!important;border-radius:18px 18px 18px 4px!important;white-space:normal!important}
.cmplz-cookiebanner .cmplz-btn.cmplz-accept{background:#47B749!important;border:2px solid #47B749!important;color:#2E2D60!important}
.cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover{background:#3DA63F!important;border-color:#3DA63F!important;color:#2E2D60!important}
.cmplz-cookiebanner .cmplz-btn.cmplz-deny,.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences{background:#FFFFFF!important;border:2px solid #2E2D60!important;color:#2E2D60!important}
.cmplz-cookiebanner .cmplz-btn.cmplz-deny:hover,.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences:hover,.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences:hover{background:#E6E4F7!important;color:#2E2D60!important}
.cmplz-cookiebanner .cmplz-btn:focus-visible{outline:4px solid #47B749!important;outline-offset:3px!important}
.cmplz-cookiebanner .cmplz-links a,.cmplz-cookiebanner .cmplz-link{font-size:18px!important;color:#2A7C2E!important;font-weight:700!important;text-decoration:underline!important}
.cmplz-cookiebanner .cmplz-links a:hover{color:#2E2D60!important}
.cmplz-cookiebanner .cmplz-close{min-width:44px!important;min-height:44px!important;color:#2E2D60!important}/* End custom CSS */