/* Preserve the original design with small layout and interaction refinements. */
body { margin-top: 0 !important; }
#consultation, #approach-heading { scroll-margin-top: 24px; }
#page-container { padding-top: 0 !important; }
#sidebar-divibar, .divibars-container { display: none !important; }
.welcome-hook { background: #9e4249; color: #fff; text-align: center; padding: 22px 20px; font-size: 16px; line-height: 1.7; }
.welcome-hook p { max-width: 1000px; margin: 0 auto; padding: 0 0 3px; }
.welcome-hook p:last-child { padding-bottom: 0; }
@keyframes hook-copy-in {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: no-preference) {
  .welcome-hook p { animation: hook-copy-in 220ms cubic-bezier(.23, 1, .32, 1) both; }
  .welcome-hook p:nth-child(2) { animation-delay: 40ms; }
  .welcome-hook p:nth-child(3) { animation-delay: 80ms; }
}
#main-content .simple-reveal { opacity: 0 !important; transform: translateY(8px) !important; transition: none; }
#main-content .simple-reveal.is-visible,
#main-content .simple-reveal:focus-within { opacity: 1 !important; transform: none !important; transition: opacity 260ms cubic-bezier(.23, 1, .32, 1), transform 260ms cubic-bezier(.23, 1, .32, 1); }
#main-content .simple-reveal.reveal-immediate,
#main-content .simple-reveal:focus-within { transition: none !important; }
.et_animated, .et-waypoint { animation: none !important; opacity: 1 !important; transform: none !important; }
.et_pb_section_0_tb_header { padding: 22px 0 12px !important; }
.et_pb_row_0_tb_header { padding: 0 !important; }
.et_pb_menu_0_tb_header .et_pb_menu__logo-wrap { margin-bottom: 10px !important; }
.et_pb_menu_0_tb_header .et_pb_menu__logo img { width: 100%; max-width: 560px !important; height: auto; }
.et_pb_menu_0_tb_header .et_pb_menu__menu { display: flex !important; }
.et_pb_menu_0_tb_header .et_mobile_nav_menu { display: none !important; }
.et_pb_menu_0_tb_header .et_pb_menu__wrap { justify-content: center !important; }
.et_pb_menu_0_tb_header .et-menu > li { padding: 0 14px; margin-top: 0; }
body.home #main-content .et_pb_section_2 { padding: 28px 0 40px !important; }
body.home #main-content .et_pb_row_2 { display: flex; align-items: flex-start; gap: 50px; padding: 12px 0 !important; width: 86%; max-width: 1040px; }
body.home #main-content .et_pb_column_4 { width: 260px !important; flex: 0 0 260px; margin-right: 0 !important; }
body.home #main-content .et_pb_column_5 { width: auto !important; flex: 1; min-width: 0; }
body.home #main-content .et_pb_image_0 img { width: 260px !important; height: auto !important; }
body.home #main-content .et_pb_image_0 img,
body.home #main-content .et_pb_image_1 img,
.page-id-10 #main-content .et_pb_image_0 img { border-radius: 4px !important; box-shadow: 0 5px 18px rgba(0, 0, 0, .16); }
body.home #main-content h1 { font-size: 30px !important; line-height: 1.35 !important; }
body.home #main-content .et_pb_text_2 { font-size: 16px; line-height: 1.75; }
#et-boc #main-content .et_pb_section_3 { padding: 30px 0 !important; }
#et-boc #main-content .et_pb_cta_1 { background: #0b72c6 !important; padding: 44px 30px !important; border-radius: 10px; }
#et-boc #main-content .et_pb_cta_1 h2 { color: #fff !important; font-size: 36px !important; line-height: 1.3 !important; margin-bottom: 22px; padding-bottom: 0; }
#et-boc #main-content .et_pb_cta_1 .et_pb_promo_description,
#et-boc #main-content .et_pb_cta_1 .et_pb_promo_description p,
#et-boc #main-content .et_pb_cta_1 .et_pb_promo_description div { color: #fff !important; font-size: 18px; line-height: 1.65; }
#et-boc #main-content .et_pb_cta_1 .consultation-copy p { padding: 0; margin-bottom: 8px; }
#et-boc #main-content .et_pb_cta_1 .consultation-copy p:last-child { margin-bottom: 0; }
#et-boc #main-content .et_pb_cta_1 .consultation-copy a { color: #fff !important; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
#et-boc #main-content .et_pb_cta_1 .consultation-offer { font-size: 19px !important; letter-spacing: .4px; }
#et-boc #main-content .et_pb_cta_1 .et_pb_promo_button { color: #0b72c6 !important; background: #fff !important; border: 1px solid #fff !important; border-radius: 999px; padding: 13px 26px !important; font-family: 'Libre Baskerville', Georgia, serif; font-size: 17px !important; line-height: 1.5 !important; }
#et-boc #main-content .et_pb_cta_1 .et_pb_promo_button::after { display: none !important; }
#et-boc #main-content .et_pb_text_4 { max-width: 740px; margin-inline: auto !important; color: #222; font-size: 17px !important; font-weight: 400 !important; line-height: 1.85 !important; }
#et-boc #main-content .et_pb_text_4 h2 { color: #222; font-size: 28px; line-height: 1.35; padding-bottom: 0; margin-bottom: 22px; }
#et-boc #main-content .et_pb_text_4 h3 { color: #222; font-size: 21px; line-height: 1.4; padding-bottom: 0; margin-bottom: 12px; }
#et-boc #main-content .et_pb_text_4 p { padding-bottom: 0; margin-bottom: 18px; }
#et-boc #main-content .et_pb_text_4 .approach-method { border-top: 1px solid #e5e5e5; margin-top: 28px; padding-top: 24px; }
#et-boc #main-content .et_pb_text_4 .approach-method p:last-child { margin-bottom: 0; }
#et-boc #main-content .et_pb_text_4 .practice-details { margin-top: 48px; padding-top: 32px; border-top: 1px solid #d5d5d5; }
.privacy-policy #main-content .et_pb_text_0 { max-width: 740px; margin-inline: auto !important; font-size: 16px; font-weight: 400; line-height: 1.85; }
.website-privacy h1 { font-size: 32px; line-height: 1.35; margin-bottom: 12px; }
.website-privacy h2 { font-size: 23px; line-height: 1.4; padding-bottom: 0; margin-bottom: 14px; }
.website-privacy .policy-date { color: #666; font-size: 14px; margin-bottom: 26px; }
.website-privacy .privacy-notice-section { margin-top: 30px; }
a[href^="mailto:"] { overflow-wrap: anywhere; }
body.page-id-16 #main-content a[href^="mailto:"] { display: inline-block; max-width: 100%; font-size: 18px !important; line-height: 1.6 !important; }
.contact-email-domain { white-space: nowrap; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 2px solid #333; outline-offset: 4px; }
/* The copied Divi submit icon otherwise appears as a stray “5” to assistive tools. */
body.page-id-16 #et-boc .et_pb_contact_submit::after { content: none !important; display: none !important; }
/* Press feedback also works on touch; keyboard interaction remains immediate. */
@media (prefers-reduced-motion: no-preference) {
  #et-boc #main-content .et_pb_cta_1 .et_pb_promo_button,
  body.page-id-16 #et-boc .et_pb_contact_submit { transition: transform 160ms cubic-bezier(.23, 1, .32, 1); }
  #et-boc #main-content .et_pb_cta_1 .et_pb_promo_button:active:not(:focus-visible),
  body.page-id-16 #et-boc .et_pb_contact_submit:active:not(:focus-visible) { transform: scale(.98); }
}
/* Hover effects are limited to devices with a precise pointer. */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  body.home #main-content .et_pb_image_0 img,
  body.home #main-content .et_pb_image_1 img,
  .page-id-10 #main-content .et_pb_image_0 img { transition: transform 220ms cubic-bezier(.23, 1, .32, 1); }
  body.home #main-content .et_pb_image_0 img:hover,
  body.home #main-content .et_pb_image_1 img:hover,
  .page-id-10 #main-content .et_pb_image_0 img:hover { transform: translateY(-2px); }
  #et-boc #main-content .et_pb_cta_1 .et_pb_promo_button:hover:not(:focus-visible) { transform: translateY(-1px); background: #eef5fb !important; }
  #et-boc #main-content .et_pb_cta_1 .et_pb_promo_button:hover:active:not(:focus-visible) { transform: scale(.98); }
}
@media (min-width: 981px) {
  #et-boc #main-content .et_pb_row_3 { align-items: center; }
}
@media (max-width: 767px) {
  #et-boc .et-l--header .et_pb_menu__logo-wrap,
  #et-boc .et-l--header .et_pb_menu__logo { width: 100% !important; max-width: 100% !important; }
  #et-boc .et-l--header .et_pb_menu__logo img { width: 100% !important; max-width: 100% !important; height: auto !important; }
  #et-boc .et-l--header .et_mobile_nav_menu { display: none !important; }
  .et_pb_section_0_tb_header { padding: 18px 0 8px !important; }
  .et_pb_row_0_tb_header { width: 90%; }
  .et_pb_menu_0_tb_header .et_pb_menu_inner_container { display: flex; flex-direction: column; align-items: center; }
  .et_pb_menu_0_tb_header .et_pb_menu__logo-wrap { width: 100%; margin: 0 0 10px !important; justify-content: center; }
  .et_pb_menu_0_tb_header .et_pb_menu__logo { max-width: 100%; }
  .et_pb_menu_0_tb_header .et-menu { margin: 0 !important; padding: 0 !important; justify-content: center; }
  body.home #main-content .et_pb_row_2 { flex-direction: column; align-items: center; gap: 25px; width: 86%; }
  body.home #main-content .et_pb_column_4 { width: 180px !important; flex-basis: auto; margin-bottom: 0 !important; }
  body.home #main-content .et_pb_image_0 img { width: 180px !important; }
  body.home #main-content .et_pb_column_5 { width: 100% !important; }
  body.home #main-content h1 { font-size: 25px !important; }
  #et-boc #main-content .et_pb_cta_1 { padding: 30px 18px !important; }
  #et-boc #main-content .et_pb_cta_1 h2 { font-size: 28px !important; }
  #et-boc #main-content .et_pb_cta_1 .et_pb_promo_description div,
  #et-boc #main-content .et_pb_cta_1 .et_pb_promo_description p { font-size: 16px; }
  #et-boc #main-content .et_pb_cta_1 .consultation-offer { font-size: 17px !important; }
  #et-boc #main-content .et_pb_cta_1 .et_pb_promo_button { font-size: 15px !important; padding: 12px 20px !important; }
  #et-boc #main-content .et_pb_text_4 { font-size: 16px !important; line-height: 1.8 !important; }
  #et-boc #main-content .et_pb_text_4 h2 { font-size: 25px; }
  #et-boc #main-content .et_pb_text_4 h3 { font-size: 20px; }
  .website-privacy h1 { font-size: 27px; }
  .website-privacy h2 { font-size: 21px; }
  .page-id-16 a[href^="tel:"] { font-size: 19px !important; }
  body.page-id-16 #main-content a[href^="mailto:"] { font-size: 16px !important; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  #main-content .simple-reveal { opacity: 1 !important; transform: none !important; }
}
