/* Home-only replacement. No footer DOM, forms, native page 19 or other pages are changed. */
body.hirondelle-design-2026.hfd-home-modern { background: #fff; padding-top: 0; --hfd-menu-height: 0px; --hfd-secondary-height: 0px; }
body.hfd-home-modern #content, body.hfd-home-modern #content > .ast-container, body.hfd-home-modern #primary, body.hfd-home-modern .site-main, body.hfd-home-modern article.page, body.hfd-home-modern .entry-content { width: 100%; max-width: none; margin: 0 !important; padding: 0 !important; border: 0; background: #fff; }
body.hfd-home-modern .entry-header, body.hfd-home-modern > .hfd-header { display: none !important; }
body.hfd-home-modern #content [id] { scroll-margin-top: calc(var(--hfd-bar-top, 0px) + 110px); }
.hfd-home-modern-root, .hfd-home-modal { --home-blue: #429cbf; --home-dark: #176580; --home-ink: #183b4b; --home-muted: #5d717b; --home-pale: #edf5f7; --home-line: #d7e5e9; color: var(--home-ink); font-family: "Myriad Pro Regular", Arial, sans-serif !important; font-size: 19px !important; line-height: 1.5; }
.hfd-home-modern-root { display: flex !important; flex-direction: column !important; width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important; gap: 0 !important; background: #fff; }
.hfd-home-modern-root *, .hfd-home-modal * { box-sizing: border-box; }
.hfd-home-modern-root .e-con, .hfd-home-modern-root .elementor-widget, .hfd-home-modal .elementor-widget { min-width: 0; margin-block: 0; --widgets-spacing: 0px; }
.hfd-home-modern-root .e-con { --gap: 0px; --row-gap: 0px; --column-gap: 0px; }
.hfd-home-modern-root img { display: block; max-width: 100%; }
.hfd-home-modern-root :is(h1,h2,h3,.elementor-heading-title), .hfd-home-modal :is(h2,.elementor-heading-title) { margin: 0; color: var(--home-ink) !important; font-family: "Myriad Pro Regular", Arial, sans-serif !important; font-weight: 600 !important; font-style: normal !important; line-height: 1.08 !important; letter-spacing: -.025em !important; text-transform: none !important; border: 0 !important; }
.hfd-home-modern-root h1.elementor-heading-title { font-size: clamp(44px,5vw,72px) !important; }
.hfd-home-modern-root h2.elementor-heading-title { font-size: clamp(34px,3.5vw,49px) !important; }
.hfd-home-modern-root h3.elementor-heading-title { font-size: 29px !important; }
.hfd-home-modern-root .elementor-widget-text-editor, .hfd-home-modern-root .elementor-widget-text-editor :is(p,li), .hfd-home-modal .elementor-widget-text-editor :is(p,li) { color: var(--home-muted) !important; font-family: "Myriad Pro Regular", Arial, sans-serif !important; font-size: 19px !important; line-height: 1.5 !important; }
.hfd-home-modern-root .elementor-widget-text-editor p { margin: 0 0 1.15em; }
.hfd-home-modern-root .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.hfd-home-modern-root .hfd-home-shell { width: calc(100% - 64px) !important; max-width: 1176px !important; margin-inline: auto !important; padding: 0 !important; }
.hfd-home-modern-root .hfd-home-section { width: 100%; padding: 92px 0 !important; }
.hfd-home-modern-root .hfd-home-soft { background: var(--home-pale); }
.hfd-home-modern-root .hfd-home-sectionhead { max-width: 740px; gap: 19px !important; }
.hfd-home-modern-root .hfd-home-sectionhead .elementor-widget-text-editor:not(.hfd-home-eyebrow) p { font-size: 22px !important; }
.hfd-home-modern-root .hfd-home-eyebrow p { color: var(--home-dark) !important; font-size: 14px !important; text-transform: uppercase; letter-spacing: .14em; font-weight: 600; }
.hfd-home-modern-root .hfd-home-eyebrow { margin-bottom: 19px !important; }
.hfd-home-modern-root .hfd-home-sectionhead .hfd-home-eyebrow { margin-bottom: 0 !important; }
.hfd-home-modern-root .elementor-widget-button { width: auto; max-width: 100%; }
.hfd-home-modern-root .elementor-button, .hfd-home-modal .elementor-button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 14px 23px; border: 1px solid var(--home-blue); border-radius: 5px; background: var(--home-blue); color: #fff !important; font: 600 19px/1.3 "Myriad Pro Regular", Arial, sans-serif !important; text-decoration: none; box-shadow: none; transition: background .2s; }
.hfd-home-modern-root .elementor-button:hover, .hfd-home-modal .elementor-button:hover { background: var(--home-dark); border-color: var(--home-dark); }
.hfd-home-modern-root .hfd-home-textlink .elementor-button, .hfd-home-modal .hfd-home-textlink .elementor-button { min-height: 44px; padding: 8px 0 4px; border: 0; border-bottom: 1px solid #99c9d8; border-radius: 0; background: transparent; color: var(--home-dark) !important; }
.hfd-home-modern-root .hfd-home-actions { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; align-items: center !important; gap: 18px 25px !important; }
.hfd-home-modern-root a:focus-visible, .hfd-home-modal a:focus-visible, .hfd-home-modern-root .elementor-tab-title:focus-visible { outline: 3px solid #eead30 !important; outline-offset: 5px; }

/* The accepted header in the school's blue, with all links stored in native button widgets. */
.hfd-home-modern-root .hfd-home-header { position: sticky; top: var(--hfd-bar-top,0px); z-index: 50; width: 100%; background: #236c88; background-image: linear-gradient(90deg,#fff 0%,#fff 8%,#e9f0f3 17%,#9ebecb 27%,#236c88 42%,#236c88 100%); box-shadow: 0 1px 0 #17658030; }
.hfd-home-modern-root .hfd-home-header-inner { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; min-height: 100px; gap: 28px !important; }
.hfd-home-modern-root .hfd-home-logo { flex: 0 0 183px; width: 183px !important; }
.hfd-home-modern-root .hfd-home-logo img { width: 183px; height: 83px; object-fit: contain; }
.hfd-home-modern-root .hfd-home-navigation { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: flex-end !important; width: auto !important; flex: 1; gap: 24px !important; }
.hfd-home-modern-root .hfd-home-navigation .elementor-button { padding: 9px 0; min-height: 44px; border: 0; border-radius: 0; background: transparent; color: #fff !important; font-size: 17px !important; font-weight: 400 !important; white-space: nowrap; }
.hfd-home-modern-root .hfd-home-navigation .elementor-button:hover { text-decoration: underline; text-underline-offset: 5px; }
.hfd-home-modern-root .hfd-home-nav-cta .elementor-button { padding: 10px 18px; border: 1px solid #ffffffb3; border-radius: 5px; }
.hfd-home-modern-root .hfd-home-menu-toggle { display: none; }
.hfd-home-modern-root .hfd-home-more-navigation { position: relative; width: auto !important; flex: 0 0 auto; }
.hfd-home-modern-root .hfd-home-extra-navigation { display: none !important; position: absolute; top: 100%; right: 0; z-index: 60; flex-direction: column !important; width: 270px !important; max-width: min(80vw,340px); max-height: min(70vh,600px); overflow: auto; padding: 12px !important; border: 1px solid var(--home-line); border-radius: 6px; background: #fff; box-shadow: 0 8px 30px #123e5133; }
.hfd-home-modern-root .hfd-home-more-navigation.is-open > .hfd-home-extra-navigation, .hfd-home-modern-root .hfd-home-more-navigation:not([data-hfd-more-ready="1"]):is(:hover,:focus-within) > .hfd-home-extra-navigation { display: flex !important; }
.hfd-home-modern-root .hfd-home-extra-navigation .elementor-widget-button { width: 100%; }
.hfd-home-modern-root .hfd-home-extra-navigation .elementor-button { justify-content: flex-start; width: 100%; padding: 10px 12px; color: var(--home-ink) !important; white-space: normal; text-align: left; }
.hfd-home-modern-root .hfd-home-extra-navigation .elementor-button:hover { background: var(--home-pale); }

/* A response-only first-party slider. Saved gallery choices remain native Elementor fields. */
.hfd-home-modern-root .hfd-home-hero { position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column !important; justify-content: flex-end !important; min-height: 550px; background: #24495b; }
/* Boxed Elementor containers insert an inner flex column; it must share the hero's full height. */
.hfd-home-modern-root .hfd-home-hero > .e-con-inner { display: flex !important; flex-direction: column !important; justify-content: flex-end !important; align-self: stretch; width: 100%; max-width: none; min-height: inherit; flex: 1 1 auto; }
.hfd-home-modern-root .hfd-home-hero-carousel { position: absolute !important; inset: 0; z-index: 0; width: 100% !important; height: 100%; margin: 0; }
.hfd-home-modern-root .hfd-home-hero-carousel > .elementor-widget-container, .hfd-home-modern-root .hfd-home-slides { position: relative; width: 100%; height: 100%; }
.hfd-home-modern-root .hfd-home-slide { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; overflow: hidden; opacity: 0; visibility: hidden; transition: opacity 1200ms ease, visibility 0s 1200ms; }
.hfd-home-modern-root .hfd-home-slide.is-active { opacity: 1; visibility: visible; z-index: 1; transition: opacity 1200ms ease; }
.hfd-home-modern-root .hfd-home-slide img { width: 100% !important; height: 100% !important; object-fit: cover; object-position: center 52%; }
.hfd-home-modern-root .hfd-home-hero[data-hfd-hero-ready="1"] .hfd-home-slide.is-active img { animation: hfd-home-kenburns 12s linear both; }
.hfd-home-modern-root .hfd-home-hero[data-hfd-home-paused="1"] .hfd-home-slide img { animation-play-state: paused !important; }
.hfd-home-modern-root .hfd-home-slide.is-leaving img { animation: hfd-home-kenburns 12s linear both; animation-play-state: paused !important; }
.hfd-home-modern-root .hfd-home-hero::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg,#092d3fe6 0%,#0d334b91 36%,#254a5e00 70%),linear-gradient(0deg,#15384b52,transparent 55%); }
.hfd-home-modern-root .hfd-home-hero-copy { position: relative; z-index: 2; align-items: flex-start; justify-content: center; min-height: 550px; padding-block: 55px !important; }
.hfd-home-modern-root .hfd-home-hero h1 { max-width: 700px; margin-bottom: 24px; color: #fff !important; }
.hfd-home-modern-root .hfd-home-hero .hfd-home-eyebrow p { color: #cce9f3 !important; }
.hfd-home-modern-root .hfd-home-hero-intro { max-width: 510px; margin-bottom: 27px !important; }
.hfd-home-modern-root .hfd-home-hero-intro p { color: #edf8fc !important; font-size: 23px !important; line-height: 1.4 !important; }
.hfd-home-modern-root .hfd-home-hero .hfd-home-textlink .elementor-button { color: #fff !important; border-color: #c4e4ee; }
.hfd-home-modern-root .hfd-home-hero-controls { display: none !important; }
.hfd-home-modern-root .hfd-home-hero[data-hfd-hero-ready="1"] .hfd-home-hero-controls,
.hfd-home-modern-root .hfd-home-slider-a11y { display: block !important; position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; border: 0 !important; overflow: hidden !important; clip: rect(0,0,0,0); clip-path: inset(50%); white-space: nowrap; }
.hfd-home-modern-root .hfd-home-hero[data-hfd-hero-ready="1"] { cursor: pointer; }
.hfd-home-modern-root .hfd-home-hero:focus-visible { outline: 3px solid #eead30; outline-offset: -6px; }
.hfd-home-modern-root .hfd-home-play-label { display: none !important; }
.hfd-home-modern-root .hfd-home-trust { padding: 22px 0 !important; border-bottom: 1px solid var(--home-line); }
.hfd-home-modern-root .hfd-home-trust-inner { flex-direction: row !important; justify-content: space-between !important; gap: 15px 25px !important; }
.hfd-home-modern-root .hfd-home-trust p { color: #476571 !important; font-size: 17px !important; }
.hfd-home-modern-root .hfd-home-trust b { color: var(--home-blue); margin-right: 10px; }

.hfd-home-modern-root .hfd-home-splithead { flex-direction: row !important; align-items: flex-end !important; justify-content: space-between !important; gap: 30px !important; margin-bottom: 35px !important; }
.hfd-home-modern-root .hfd-home-courses { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: stretch; gap: 25px !important; }
.hfd-home-modern-root .hfd-home-course { display: flex !important; flex-direction: column !important; overflow: hidden; border: 1px solid var(--home-line); border-radius: 10px; background: #fff; }
.hfd-home-modern-root .hfd-home-course-photo { position: relative; aspect-ratio: 1.5; overflow: hidden; }
.hfd-home-modern-root .hfd-home-course-photo > .elementor-widget-image, .hfd-home-modern-root .hfd-home-course-photo .elementor-widget-container { height: 100%; }
.hfd-home-modern-root .hfd-home-course-photo img { width: 100% !important; height: 100% !important; object-fit: cover; transition: transform .7s; }
.hfd-home-modern-root .hfd-home-course:hover .hfd-home-course-photo img { transform: scale(1.04); }
/* The three card pictures do not need a second set of numbered badges. */
.hfd-home-modern-root .hfd-home-course-number { display: none !important; }
.hfd-home-modern-root .hfd-home-course-body { display: flex !important; flex-direction: column !important; flex: 1; padding: 28px !important; gap: 16px !important; }
.hfd-home-modern-root .hfd-home-course-body .hfd-home-eyebrow { margin-bottom: -6px !important; }
.hfd-home-modern-root .hfd-home-course-body .hfd-home-eyebrow p { font-size: 14px !important; letter-spacing: .08em; }
.hfd-home-modern-root .hfd-home-course-body > .elementor-widget-text-editor p { line-height: 1.4 !important; }
.hfd-home-modern-root .hfd-home-course-price-row { flex-direction: row !important; align-items: flex-end !important; justify-content: space-between !important; gap: 10px !important; margin-top: auto !important; padding-top: 24px !important; border-top: 1px solid var(--home-line); }
.hfd-home-modern-root .hfd-home-price span { font-size: 15px; }
.hfd-home-modern-root .hfd-home-price strong { font-size: 32px; color: var(--home-ink); font-weight: 600; line-height: 1; }
.hfd-home-modern-root .hfd-home-course-price-row .elementor-button { white-space: nowrap; font-size: 17px !important; }
.hfd-home-modern-root .hfd-home-small { margin-top: 20px !important; }
.hfd-home-modern-root .hfd-home-small p { font-size: 15px !important; }
.hfd-home-modern-root .hfd-home-two-columns { display: grid !important; grid-template-columns: 1.05fr 1fr; gap: 72px !important; align-items: center; }
.hfd-home-modern-root .hfd-home-teaching-media { position: relative; overflow: hidden; border-radius: 10px; }
.hfd-home-modern-root .hfd-home-teaching-media .elementor-widget-image img { width: 100%; aspect-ratio: 1.36; object-fit: cover; }
.hfd-home-modern-root .hfd-home-video-caption { position: absolute !important; left: 25px; right: 25px; bottom: 25px; width: auto; }
.hfd-home-modern-root .hfd-home-video-caption .elementor-button { display: flex; width: 100%; text-align: left; justify-content: flex-start; gap: 15px; padding: 15px 17px; border: 0; background: #fffffff0; color: var(--home-ink) !important; box-shadow: 0 3px 20px #15394822; font-size: 18px !important; }
.hfd-home-modern-root .hfd-home-teaching-copy > .elementor-widget-heading { margin-bottom: 24px !important; }
.hfd-home-modern-root .hfd-home-lead p { font-size: 23px !important; }
.hfd-home-modern-root .hfd-home-teamrow { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; align-items: center !important; width: 100%; gap: 14px !important; margin-block: 25px !important; }
.hfd-home-modern-root .hfd-home-avatars { display: flex !important; flex-direction: row !important; align-items: center !important; width: auto !important; flex: 0 0 auto; gap: 0 !important; }
.hfd-home-modern-root .hfd-home-avatar { width: 56px !important; flex: 0 0 56px; margin-right: -10px !important; }
.hfd-home-modern-root .hfd-home-avatar:last-child { margin-right: 0 !important; }
.hfd-home-modern-root .hfd-home-avatar img { width: 56px !important; height: 56px; border: 3px solid #fff; border-radius: 50%; object-fit: cover; }
.hfd-home-modern-root .hfd-home-teamrow > .elementor-widget-text-editor { flex: 1 1 180px; width: auto !important; margin-left: 0 !important; }
.hfd-home-modern-root .hfd-home-teamrow p { font-size: 15px !important; }
.hfd-home-modern-root .hfd-home-teamrow strong { color: var(--home-ink); font-size: 17px; }
.hfd-home-modern-root .hfd-home-facts { margin-bottom: 25px !important; }
.hfd-home-modern-root .hfd-home-facts ul { list-style: none; margin: 0; padding: 0; }
.hfd-home-modern-root .hfd-home-facts li { position: relative; padding: 11px 0 11px 32px; border-bottom: 1px solid var(--home-line); }
.hfd-home-modern-root .hfd-home-facts li::before { content: "✓"; position: absolute; left: 0; color: var(--home-blue); }
.hfd-home-modern-root .hfd-home-team-section { padding-bottom: 0 !important; }
.hfd-home-modern-root .hfd-home-team-grid { display: grid !important; grid-template-columns: repeat(6,minmax(0,1fr)); align-items: start; gap: 35px 28px !important; margin-block: 40px 30px !important; }
.hfd-home-modern-root .hfd-home-team-card { grid-column: span 2; text-align: center; align-items: center; gap: 12px !important; }
.hfd-home-modern-root .hfd-home-team-card:first-child { grid-column: 2 / span 2; }
.hfd-home-modern-root .hfd-home-team-card:nth-child(2) { grid-column: 4 / span 2; }
.hfd-home-modern-root .hfd-home-team-photo img { width: 170px !important; height: 170px; margin-inline: auto; border: 5px solid var(--home-pale); border-radius: 50%; object-fit: cover; }
.hfd-home-modern-root .hfd-home-team-card h3 { font-size: 25px !important; }
.hfd-home-modern-root .hfd-home-team-card p { max-width: 270px; font-size: 16px !important; }
.hfd-home-modern-root .hfd-home-more-grid { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 25px !important; margin-top: 40px !important; }
.hfd-home-modern-root .hfd-home-more-card { position: relative; overflow: hidden; aspect-ratio: 1.1; border-radius: 7px; background: #183b4b; }
.hfd-home-modern-root .hfd-home-more-card > .elementor-widget-image, .hfd-home-modern-root .hfd-home-more-card > .elementor-widget-image :is(.elementor-widget-container,a) { width: 100%; height: 100%; }
.hfd-home-modern-root .hfd-home-more-card img { width: 100% !important; height: 100% !important; object-fit: cover; opacity: .8; transition: transform 1s; }
.hfd-home-modern-root .hfd-home-more-card:hover img { transform: scale(1.04); }
.hfd-home-modern-root .hfd-home-more-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(transparent 20%,#062537ce); pointer-events: none; }
.hfd-home-modern-root .hfd-home-more-copy { position: absolute; z-index: 1; bottom: 25px; left: 25px; right: 25px; width: auto; gap: 8px !important; }
.hfd-home-modern-root .hfd-home-more-copy h3 { font-size: 32px !important; color: #fff !important; }
.hfd-home-modern-root .hfd-home-more-copy .elementor-button { color: #fff !important; border: 0; font-size: 16px !important; }
.hfd-home-modern-root .hfd-home-faq-section { padding-top: 0 !important; }
.hfd-home-modern-root .hfd-home-faq { max-width: 850px; margin-inline: auto; }
.hfd-home-modern-root .hfd-home-faq-items { margin-top: 25px !important; }
.hfd-home-modern-root .elementor-toggle .elementor-toggle-item { border-bottom: 1px solid var(--home-line); }
.hfd-home-modern-root .elementor-toggle .elementor-tab-title { border: 0; padding: 22px 0; font: 400 24px/1.3 "Myriad Pro Regular",Arial,sans-serif; }
.hfd-home-modern-root .elementor-toggle .elementor-tab-title a { color: var(--home-ink); }
.hfd-home-modern-root .elementor-toggle .elementor-tab-content { border: 0; padding: 0 40px 22px 0; color: var(--home-muted); font: 400 19px/1.5 "Myriad Pro Regular",Arial,sans-serif; }
.hfd-home-modern-root .hfd-home-advice { padding-block: 53px !important; background: var(--home-blue); }
.hfd-home-modern-root .hfd-home-advice-inner { flex-direction: row !important; align-items: center !important; justify-content: space-between !important; gap: 40px !important; }
.hfd-home-modern-root .hfd-home-advice h2 { margin-bottom: 12px; color: #fff !important; font-size: 37px !important; }
.hfd-home-modern-root .hfd-home-advice p, .hfd-home-modern-root .hfd-home-advice .hfd-home-textlink .elementor-button { color: #fff !important; }
.hfd-home-modern-root .hfd-home-advice-with-photo { display:grid !important; grid-template-columns:minmax(0,1fr) minmax(200px,auto) 180px; gap:30px !important; align-items:center !important; }
.hfd-home-modern-root .hfd-home-advice-with-photo > .e-con, .hfd-home-modern-root .hfd-home-advice-with-photo > .elementor-widget { width:auto !important; min-width:0; }
.hfd-home-modern-root .hfd-home-advice-with-photo > .hfd-home-actions { flex-direction:column !important; align-items:center !important; justify-content:center !important; }
.hfd-home-modern-root .hfd-home-advice-photo img { display:block; width:180px !important; height:180px !important; aspect-ratio:1; object-fit:cover; border-radius:10px; }
@media (max-width:1000px) {
 .hfd-home-modern-root .hfd-home-advice-with-photo { grid-template-columns:minmax(0,1fr) 150px; gap:20px !important; }
 .hfd-home-modern-root .hfd-home-advice-with-photo > .hfd-home-actions { grid-column:1; align-items:flex-start !important; }
 .hfd-home-modern-root .hfd-home-advice-with-photo > .hfd-home-advice-photo { grid-column:2; grid-row:1 / span 2; align-self:center; }
 .hfd-home-modern-root .hfd-home-advice-photo img { width:150px !important; height:150px !important; }
}
@media (max-width:600px) {
 .hfd-home-modern-root .hfd-home-advice-with-photo { grid-template-columns:minmax(0,1fr) 90px; }
 .hfd-home-modern-root .hfd-home-advice-with-photo > .e-con:first-child { grid-column:1 / -1; }
 .hfd-home-modern-root .hfd-home-advice-with-photo > .hfd-home-actions { grid-column:1; grid-row:2; }
 .hfd-home-modern-root .hfd-home-advice-with-photo > .hfd-home-advice-photo { grid-column:2; grid-row:2; }
 .hfd-home-modern-root .hfd-home-advice-photo img { width:90px !important; height:90px !important; }
}
.hfd-home-modern-root .hfd-home-button-light .elementor-button { background: #fff; border-color: #fff; color: var(--home-dark) !important; }
.hfd-home-modern-root .hfd-home-video-dialog { display: none !important; }
.hfd-home-modal { width: min(940px,92vw); max-height: 90vh; padding: 28px; border: 0; border-radius: 10px; background: #fff; box-shadow: 0 12px 90px #0006; }
.hfd-home-modal::backdrop { background: #0a2639cc; }
.hfd-home-modal .hfd-home-video-dialog { display: flex !important; flex-direction: column; width: 100%; gap: 20px !important; }
.hfd-home-modal .hfd-home-video-close { align-self: flex-end; width: auto !important; }
.hfd-home-modal h2 { font-size: 32px !important; }
.hfd-home-modal iframe { display: block; width: 100%; aspect-ratio: 16/9; height: auto; border: 0; }
.hfd-home-modal .hfd-home-video-stage { width: 100%; }
.hfd-home-modal [hidden] { display: none !important; }

/* Presentation only: preserve every native footer byte, link, Acy form field and HNT signature. */
body.hirondelle-design-2026.hfd-home-modern .elementor-157 { margin: 0 !important; padding: 52px 32px 28px !important; background: #236d88 !important; }
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-24f9371 > .e-con-inner { max-width: 1176px !important; grid-template-columns: minmax(260px,330px) minmax(0,1fr) !important; gap: 25px 50px !important; }
/* Without an inserted newsletter (for example on its own page), the existing
   full-width footer fallback must also win over this homepage enhancement. */
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-24f9371 > .e-con-inner:not(:has(> .hnt-footer-newsletter)) { grid-template-columns: minmax(0,1fr) !important; }
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-25b2700 { gap: 22px !important; }
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-25b2700 .elementor-widget-heading { position: static !important; width: auto !important; height: auto !important; margin: 0 0 10px !important; padding: 0 !important; overflow: visible !important; clip-path: none !important; white-space: normal !important; }
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-25b2700 :is(a,.elementor-icon-list-text) { font-size: 16px !important; line-height: 1.45 !important; }
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-25b2700 a { min-height: 40px; padding: 8px 0 !important; text-decoration: none !important; }
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-25b2700 a:hover { text-decoration: underline !important; }
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .hnt-footer-newsletter { gap: 18px !important; }
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .hnt-footer-newsletter #formAcym1 :is(.fieldacy1,.fieldacy2), body.hirondelle-design-2026.hfd-home-modern .elementor-157 .hnt-footer-newsletter #formAcym1 input:not([type="hidden"]):not([type="checkbox"]):not([type="submit"]) { max-width: 300px !important; }
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .hnt-footer-newsletter #formAcym1 button[type="submit"] { width: 300px !important; border-radius: 5px !important; background: #fff !important; color: #176580 !important; }
body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-73ed4fb { border-top-color: #ffffff55 !important; }
@keyframes hfd-home-kenburns { from { transform: scale(1.01); } to { transform: scale(1.07) translateX(-.5%); } }
@media (max-width: 1100px) {
 .hfd-home-modern-root .hfd-home-navigation { gap: 15px !important; }
 .hfd-home-modern-root .hfd-home-navigation .elementor-button { font-size: 16px !important; }
 .hfd-home-modern-root .hfd-home-two-columns { gap: 38px !important; }
 .hfd-home-modern-root .hfd-home-course-body { padding: 22px !important; }
 .hfd-home-modern-root .hfd-home-price strong { font-size: 27px; }
}
@media (max-width: 1000px) {
 .hfd-home-modern-root .hfd-home-header-inner { min-height: 82px; flex-wrap: wrap !important; gap: 0 !important; }
 .hfd-home-modern-root .hfd-home-logo, .hfd-home-modern-root .hfd-home-logo img { width: 150px !important; }
 .hfd-home-modern-root .hfd-home-logo img { height: 69px; }
 .hfd-home-modern-root .hfd-home-menu-toggle { margin-left: auto; }
 .hfd-home-modern-root .hfd-home-header[data-hfd-menu-ready="1"] .hfd-home-menu-toggle { display: block; }
 .hfd-home-modern-root .hfd-home-menu-toggle .elementor-button { min-height: 44px; padding: 8px 13px; border-color: #ffffff99; background: transparent; font-size: 17px !important; }
 .hfd-home-modern-root .hfd-home-navigation { flex: 1 1 100%; width: 100% !important; justify-content: flex-start !important; flex-wrap: wrap !important; gap: 8px 22px !important; padding-bottom: 20px !important; }
 .hfd-home-modern-root .hfd-home-header[data-hfd-menu-ready="1"] .hfd-home-navigation:not(.is-open) { display: none !important; }
 .hfd-home-modern-root .hfd-home-extra-navigation { position: static; margin-top: 8px !important; width: min(320px,75vw) !important; max-height: 55vh; }
 body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-24f9371 > .e-con-inner { grid-template-columns: minmax(240px,300px) minmax(0,1fr) !important; gap: 25px !important; }
 body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-25b2700 { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
}
@media (max-width: 800px) {
 .hfd-home-modern-root .hfd-home-shell { width: calc(100% - 50px) !important; }
 .hfd-home-modern-root .hfd-home-section { padding: 58px 0 !important; }
 .hfd-home-modern-root .hfd-home-splithead { flex-direction: column !important; align-items: flex-start !important; gap: 20px !important; }
 .hfd-home-modern-root .hfd-home-courses { grid-template-columns: 1fr; }
 .hfd-home-modern-root .hfd-home-course { display: grid !important; grid-template-columns: 38% 62%; }
 .hfd-home-modern-root .hfd-home-course-photo { height: 100%; min-height: 280px; aspect-ratio: auto; }
 .hfd-home-modern-root .hfd-home-course-body { padding: 25px !important; }
 .hfd-home-modern-root .hfd-home-two-columns { grid-template-columns: 1fr; gap: 35px !important; }
 .hfd-home-modern-root .hfd-home-trust-inner { flex-wrap: wrap !important; }
 .hfd-home-modern-root .hfd-home-trust p { font-size: 15px !important; }
 .hfd-home-modern-root .hfd-home-team-section { padding-bottom: 0 !important; }
 .hfd-home-modern-root .hfd-home-team-grid { column-gap: 18px !important; }
 .hfd-home-modern-root .hfd-home-team-photo img { width: 135px !important; height: 135px; }
 .hfd-home-modern-root .hfd-home-more-grid { grid-template-columns: 1fr; }
 .hfd-home-modern-root .hfd-home-more-card { aspect-ratio: 1.8; }
 .hfd-home-modern-root .hfd-home-faq-section { padding-top: 0 !important; }
 .hfd-home-modern-root .hfd-home-advice-inner { flex-direction: column !important; align-items: flex-start !important; gap: 24px !important; }
 body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-24f9371 > .e-con-inner { display: flex !important; flex-direction: column !important; gap: 30px !important; }
 body.hirondelle-design-2026.hfd-home-modern .elementor-157 .hnt-footer-newsletter { max-width: 450px; order: 0; }
 body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-e406175 { order: 1; }
 body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-25b2700 { order: 2; }
 body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-73ed4fb { order: 3; }
}
@media (max-width: 500px) {
 .hfd-home-modern-root .hfd-home-shell { width: calc(100% - 40px) !important; }
 .hfd-home-modern-root .hfd-home-hero, .hfd-home-modern-root .hfd-home-hero-copy { min-height: 570px; }
 .hfd-home-modern-root h1.elementor-heading-title { font-size: 49px !important; }
 .hfd-home-modern-root .hfd-home-hero .hfd-home-eyebrow p { font-size: 12px !important; letter-spacing: .1em; }
 .hfd-home-modern-root .hfd-home-hero-intro p { font-size: 21px !important; }
 .hfd-home-modern-root .hfd-home-hero::after { background: linear-gradient(90deg,#092d3fe8,#0d334b55),linear-gradient(0deg,#15384b77,transparent); }
 .hfd-home-modern-root .hfd-home-trust-inner > .elementor-widget { width: 100%; }
 .hfd-home-modern-root .hfd-home-sectionhead .elementor-widget-text-editor:not(.hfd-home-eyebrow) p { font-size: 20px !important; }
 .hfd-home-modern-root .hfd-home-course { display: flex !important; flex-direction: column !important; height: auto !important; min-height: 0 !important; max-height: none !important; }
 /* Clear the tablet's 100% photo height before stacking photo and copy vertically. */
 .hfd-home-modern-root .hfd-home-course-photo { width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important; aspect-ratio: 1.6; flex: 0 0 auto !important; }
 .hfd-home-modern-root .hfd-home-course-photo > .elementor-widget-image { position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; min-height: 0 !important; }
 .hfd-home-modern-root .hfd-home-course-body { width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important; flex: 1 0 auto !important; overflow: visible !important; padding: 24px !important; }
 .hfd-home-modern-root .hfd-home-price strong { font-size: 31px; }
 .hfd-home-modern-root .hfd-home-video-caption { bottom: 15px; left: 15px; right: 15px; }
 .hfd-home-modern-root .hfd-home-video-caption .elementor-button { font-size: 16px !important; }
 .hfd-home-modern-root .hfd-home-team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 18px !important; }
 .hfd-home-modern-root .hfd-home-team-card, .hfd-home-modern-root .hfd-home-team-card:first-child, .hfd-home-modern-root .hfd-home-team-card:nth-child(2) { grid-column: auto; }
 .hfd-home-modern-root .hfd-home-team-card:last-child { grid-column: 1 / -1; max-width: 240px; margin-inline: auto; }
 .hfd-home-modern-root .hfd-home-team-photo img { width: 125px !important; height: 125px; }
 .hfd-home-modern-root .hfd-home-team-card h3 { font-size: 23px !important; }
 .hfd-home-modern-root .hfd-home-more-card { aspect-ratio: 1.5; }
 .hfd-home-modern-root .hfd-home-more-copy h3 { font-size: 30px !important; }
 .hfd-home-modern-root .elementor-toggle .elementor-tab-title { font-size: 22px; }
 .hfd-home-modern-root .hfd-home-advice .elementor-button { white-space: normal; }
 body.hirondelle-design-2026.hfd-home-modern .elementor-157 { padding-inline: 20px !important; }
 body.hirondelle-design-2026.hfd-home-modern .elementor-157 .elementor-element-25b2700 { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 20px !important; }
}
@media (prefers-reduced-motion: reduce) {
 .hfd-home-modern-root *, .hfd-home-modern-root *::before, .hfd-home-modern-root *::after { animation: none !important; transition: none !important; }
 .hfd-home-modern-root .hfd-home-slide img { transform: none !important; }
}

/* Revision 3 is a separate saved Elementor draft. Earlier versions retain their layout. */
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-course,
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card { position: relative; isolation: isolate; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-course :is(.hfd-home-course-body,.hfd-home-course-price-row,.hfd-home-card-link,.hfd-home-card-link .elementor-widget-container,.hfd-home-card-link .elementor-button-wrapper),
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card :is(.hfd-home-info-body,.hfd-home-card-link,.hfd-home-card-link .elementor-widget-container,.hfd-home-card-link .elementor-button-wrapper) { position: static; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-card-link a { position: static; }
.hfd-home-modern-root.hfd-home-revision-3 :is(.hfd-home-course,.hfd-home-info-card) > .e-con-inner,
.hfd-home-modern-root.hfd-home-revision-3 :is(.hfd-home-course-body,.hfd-home-course-price-row,.hfd-home-info-body) .e-con-inner { position: static; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-card-link a::after { content: ""; position: absolute; inset: 0; z-index: 3; border-radius: 10px; }
.hfd-home-modern-root.hfd-home-revision-3 :is(.hfd-home-course,.hfd-home-info-card):focus-within { outline: 3px solid #eead30; outline-offset: 5px; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-feature .hfd-home-course-body { flex: 1; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-feature .hfd-home-card-link { margin-top: auto !important; padding-top: 24px !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-concept-card .hfd-home-course-photo img { object-position: center; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-section > .hfd-home-shell > .elementor-widget-heading { margin-bottom: 30px !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-grid { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: stretch !important; gap: 25px !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card { display: flex !important; flex-direction: column !important; width: 100% !important; overflow: hidden; border: 1px solid var(--home-line); border-radius: 10px; background: #fff; transition: border-color .2s,box-shadow .2s; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card:hover { border-color: var(--home-blue); box-shadow: 0 8px 22px #123e5110; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card > .elementor-widget-image { width: 100% !important; aspect-ratio: 1.5; overflow: hidden; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card > .elementor-widget-image :is(.elementor-widget-container,img) { width: 100% !important; height: 100% !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card > .elementor-widget-image img { object-fit: cover; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-body { display: flex !important; flex: 1; flex-direction: column !important; gap: 18px !important; padding: 25px !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-body .hfd-home-card-link { margin-top: auto !important; padding-top: 10px !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-faq-columns { display: grid !important; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: 56px !important; align-items: start !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-column { width: 100% !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-column .hfd-news { width: 100%; max-width: 500px; margin: 0; padding: 0; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-column .hfd-news__heading { margin-bottom: 24px; font-size: 34px !important; color: var(--home-ink) !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-column .hfd-facebook { width: 100%; margin-inline: 0; border: 1px solid var(--home-line); border-radius: 9px; overflow: hidden; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-column .hfd-news__fallback { margin-top: 15px; font-size: 15px; color: var(--home-muted); }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-faq { width: 100% !important; max-width: none; margin: 0; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-faq h2 { font-size: clamp(30px,3.3vw,43px) !important; }

/* Elementor may add an inner wrapper: the dropdown must not depend on direct children. */
.hfd-home-modern-root .hfd-home-header,
.hfd-home-modern-root .hfd-home-header-inner,
.hfd-home-modern-root .hfd-home-navigation,
.hfd-home-modern-root .hfd-home-more-navigation { overflow: visible !important; }
.hfd-home-modern-root .hfd-home-more-navigation.is-open .hfd-home-extra-navigation,
.hfd-home-modern-root .hfd-home-more-navigation:not([data-hfd-more-ready="1"]):is(:hover,:focus-within) .hfd-home-extra-navigation { display: flex !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-extra-navigation { width: 320px !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-nav-group { width: 100% !important; border-bottom: 1px solid var(--home-line); padding-block: 5px !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-nav-group:last-child { border-bottom: 0; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-nav-group .hfd-home-nav-link a { font-weight: 600 !important; }
.hfd-home-modern-root.hfd-home-revision-3 .hfd-home-nav-sub-link a { padding: 8px 12px 8px 26px !important; font-size: 16px !important; }

/* Elementor's container max-width/flex rules must not reduce the dropdown to
 * the width of its short "Mehr" trigger. The panel owns its desktop width;
 * its optional inner wrapper fills that panel, not the trigger's container. */
.hfd-home-modern-root .hfd-home-more-navigation { position: relative !important; flex-shrink: 0 !important; }
.hfd-home-modern-root .hfd-home-more-navigation > .e-con-inner { position: static !important; overflow: visible !important; }
.hfd-home-modern-root .hfd-home-extra-navigation { box-sizing: border-box; flex-shrink: 0 !important; }
.hfd-home-modern-root .hfd-home-extra-navigation > .e-con-inner { width: 100% !important; min-width: 0 !important; max-width: none !important; flex: 1 0 auto !important; flex-direction: column !important; }
@media (min-width: 1001px) {
 .hfd-home-modern-root .hfd-home-extra-navigation { position: absolute !important; top: 100% !important; bottom: auto !important; right: 0 !important; left: auto !important; width: min(320px,calc(100vw - 32px)) !important; min-width: min(320px,calc(100vw - 32px)) !important; max-width: min(320px,calc(100vw - 32px)) !important; flex: 0 0 auto !important; }
}
@media (max-width: 1000px) {
 .hfd-home-modern-root .hfd-home-more-navigation { max-width: 100% !important; }
 .hfd-home-modern-root .hfd-home-extra-navigation { position: static !important; width: min(320px,calc(100vw - 40px)) !important; min-width: 0 !important; max-width: min(320px,calc(100vw - 40px)) !important; height: auto !important; min-height: 0 !important; flex: 0 1 auto !important; overflow-y: auto !important; overscroll-behavior: contain; }
 /* Use ordinary block flow inside the small scroll panel. Elementor's nested
  * flex containers must not distribute or reserve height between link groups. */
 .hfd-home-modern-root .hfd-home-more-navigation.is-open .hfd-home-extra-navigation,
 .hfd-home-modern-root .hfd-home-more-navigation:not([data-hfd-more-ready="1"]):is(:hover,:focus-within) .hfd-home-extra-navigation { display: block !important; }
 .hfd-home-modern-root .hfd-home-extra-navigation > .e-con-inner,
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-extra-navigation .hfd-home-nav-group,
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-extra-navigation .hfd-home-nav-group > .e-con-inner { display: block !important; height: auto !important; min-height: 0 !important; max-height: none !important; flex: none !important; }
 .hfd-home-modern-root .hfd-home-extra-navigation .elementor-widget-button,
 .hfd-home-modern-root .hfd-home-extra-navigation .elementor-widget-button > .elementor-widget-container { width: 100% !important; height: auto !important; min-height: 0 !important; flex: none !important; }
 .hfd-home-modern-root .hfd-home-extra-navigation .elementor-button,
 .hfd-home-modern-root .hfd-home-extra-navigation .elementor-button :is(.elementor-button-text,.elementor-button-content-wrapper) { color: var(--home-ink) !important; opacity: 1; visibility: visible; }
}

/* Three admin-only hero previews. No option is saved or selected automatically. */
body:is(.hfd-home-hero-option-1,.hfd-home-hero-option-2,.hfd-home-hero-option-3) .hfd-home-modern-root .hfd-home-hero { min-height: 650px; }
body:is(.hfd-home-hero-option-1,.hfd-home-hero-option-2,.hfd-home-hero-option-3) .hfd-home-modern-root .hfd-home-hero-copy { min-height: 650px; justify-content: flex-end !important; padding-block: 55px 75px !important; }
body:is(.hfd-home-hero-option-1,.hfd-home-hero-option-2,.hfd-home-hero-option-3) .hfd-home-modern-root .hfd-home-hero .hfd-home-eyebrow p { font-size: 12px !important; }
body.hfd-home-hero-option-1 .hfd-home-modern-root .hfd-home-hero::after { background: linear-gradient(0deg,#0d334bd9,transparent 65%); }
body.hfd-home-hero-option-1 .hfd-home-modern-root .hfd-home-hero h1 { max-width: 630px; margin-bottom: 16px; font-size: clamp(31px,3.5vw,44px) !important; }
body.hfd-home-hero-option-1 .hfd-home-modern-root .hfd-home-hero-intro { max-width: 580px; margin-bottom: 22px !important; }
body.hfd-home-hero-option-1 .hfd-home-modern-root .hfd-home-hero-intro p { font-size: 20px !important; }
body.hfd-home-hero-option-1 .hfd-home-modern-root .hfd-home-hero .elementor-button { font-size: 17px !important; }
body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero::after { background: linear-gradient(0deg,#0d334b55,transparent 45%); }
body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero-copy { align-self: flex-end; width: min(470px,calc(100% - 48px)) !important; min-height: 0; margin: 0 auto 58px max(32px,calc((100% - 1176px)/2)) !important; padding: 28px !important; border-radius: 9px; background: #ffffffed; box-shadow: 0 4px 35px #143e4c24; }
body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero h1 { margin-bottom: 14px; color: var(--home-ink) !important; font-size: 35px !important; }
body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero .hfd-home-eyebrow p { color: var(--home-dark) !important; }
body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero-intro { margin-bottom: 18px !important; }
body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero-intro p { color: var(--home-muted) !important; font-size: 18px !important; }
body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero .elementor-button { font-size: 16px !important; }
body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero .hfd-home-textlink a { color: var(--home-dark) !important; border-color: #99c9d8; }
body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero::after { background: linear-gradient(0deg,#0d334bb3,transparent 32%); }
body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero-copy { display: grid !important; grid-template-columns: minmax(0,1fr) auto; align-items: center !important; gap: 25px !important; min-height: 0; margin-block: auto 0 !important; padding-block: 26px 66px !important; }
body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero-copy > :is(.hfd-home-eyebrow,.hfd-home-hero-intro) { display: none !important; }
body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero h1 { max-width: none; margin: 0; font-size: clamp(27px,3vw,38px) !important; }
body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero .hfd-home-actions { justify-content: flex-end !important; gap: 12px 20px !important; }
body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero .elementor-button { font-size: 16px !important; }
@media (max-width: 1000px) {
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-faq-columns { gap: 32px !important; }
 body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero-copy { grid-template-columns: 1fr; gap: 18px !important; }
 body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero .hfd-home-actions { justify-content: flex-start !important; }
}
@media (max-width: 800px) {
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-grid { grid-template-columns: 1fr; }
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card { display: grid !important; grid-template-columns: minmax(0,.8fr) minmax(0,1fr); }
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card > .elementor-widget-image { height: 100%; aspect-ratio: auto; }
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-faq-columns { grid-template-columns: 1fr; gap: 48px !important; }
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-column .hfd-news { max-width: none; }
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-column .hfd-facebook { max-width: 500px; }
}
@media (max-width: 500px) {
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card { display: flex !important; }
 .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card > .elementor-widget-image { height: auto; aspect-ratio: 1.5; }
 body:is(.hfd-home-hero-option-1,.hfd-home-hero-option-2,.hfd-home-hero-option-3) .hfd-home-modern-root .hfd-home-hero { min-height: 600px; }
 body.hfd-home-hero-option-1 .hfd-home-modern-root .hfd-home-hero-copy { min-height: 600px; padding-block: 40px 80px !important; }
 body.hfd-home-hero-option-1 .hfd-home-modern-root .hfd-home-hero h1 { font-size: 33px !important; }
 body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero-copy { margin: auto 24px 68px !important; padding: 22px !important; }
 body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero h1 { font-size: 31px !important; }
 body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero-copy { padding-block: 22px 75px !important; }
 body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero h1 { font-size: 31px !important; }
}

/* Keep the earlier gradient behind the logo at every width; only the open menu gets a solid blue surface. */
@media (max-width: 1000px) {
 .hfd-home-modern-root .hfd-home-navigation { background-color: #236c88; border-radius: 5px; }
}

/* A video preview keeps the entire 16:9 thumbnail; removing this class restores the former photo layout. */
.hfd-home-modern-root .hfd-home-teaching-video-preview .elementor-widget-image img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
.hfd-home-modern-root .hfd-home-teaching-video-preview .hfd-home-video-caption { position: static !important; width: 100%; margin: 0 !important; }
.hfd-home-modern-root .hfd-home-teaching-video-preview .hfd-home-video-caption .elementor-button { border-radius: 0; background: var(--home-pale); box-shadow: none; padding: 17px 20px; }

/* Directly playable teaching video; the managed thumbnail remains in the saved document for rollback. */
.hfd-home-modern-root .hfd-home-teaching-media[data-hfd-inline-video="1"] { display:block !important; min-width:0; height:auto !important; gap:0 !important; }
.hfd-home-modern-root .hfd-home-inline-video { display:block; width:100%; min-width:0; }
.hfd-home-modern-root .hfd-home-inline-video iframe { display:block; width:100% !important; height:auto !important; aspect-ratio:16/9; border:0; }
.hfd-home-modern-root .hfd-home-inline-video [hidden] { display:none !important; }
.hfd-home-modern-root .hfd-home-inline-video-caption { margin:0 !important; padding:17px 20px; background:var(--home-pale); color:var(--home-muted); font-size:18px; line-height:1.45; }

/* The video and teaching copy share one top edge; their internal spacing does not add up. */
.hfd-home-modern-root :is(.hfd-home-teaching-columns,.hfd-home-two-columns:has(.hfd-home-teaching-media)) { align-items:start !important; }
.hfd-home-modern-root :is(.hfd-home-teaching-media,.hfd-home-teaching-copy) { align-self:start !important; margin-block:0 !important; }
.hfd-home-modern-root .hfd-home-teaching-copy,
.hfd-home-modern-root .hfd-home-teaching-copy > .e-con-inner { display:flex !important; flex-direction:column !important; align-items:flex-start !important; gap:22px !important; }
.hfd-home-modern-root .hfd-home-teaching-copy > :is(.elementor-widget,.e-con),
.hfd-home-modern-root .hfd-home-teaching-copy > .e-con-inner > * { margin-block:0 !important; }
.hfd-home-modern-root .hfd-home-teaching-copy h2.elementor-heading-title { font-size:clamp(32px,3.1vw,44px) !important; line-height:1.12 !important; }
.hfd-home-modern-root .hfd-home-teaching-copy .hfd-home-facts li { padding-block:9px; }
.hfd-home-modern-root .hfd-home-teaching-copy .hfd-home-teamrow { gap:12px !important; }
@media (max-width:800px) {
 .hfd-home-modern-root :is(.hfd-home-teaching-columns,.hfd-home-two-columns:has(.hfd-home-teaching-media)) { gap:30px !important; }
 .hfd-home-modern-root .hfd-home-teaching-copy,
 .hfd-home-modern-root .hfd-home-teaching-copy > .e-con-inner { gap:20px !important; }
 .hfd-home-modern-root .hfd-home-teaching-copy h2.elementor-heading-title { font-size:clamp(30px,5vw,40px) !important; }
}

/* News and introductory questions use the same heading line and one spacing rhythm. */
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-faq-columns { align-items:start !important; column-gap:56px !important; }
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq,
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq > .e-con-inner { display:flex !important; flex-direction:column !important; align-items:stretch !important; gap:22px !important; }
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq > :is(.elementor-widget,.e-con),
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq > .e-con-inner > * { margin-block:0 !important; }
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq .hfd-home-eyebrow p { margin:0 !important; line-height:1.5 !important; }
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq h2.elementor-heading-title,
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-news-column .hfd-news__heading { font:600 clamp(32px,3vw,40px)/1.12 "Myriad Pro Regular",Arial,sans-serif !important; letter-spacing:-.025em !important; text-transform:none !important; color:var(--home-ink) !important; border:0 !important; padding:0 !important; }
/* 21px eyebrow line + 22px gap aligns both titles without shifting the feed itself. */
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-news-column .hfd-news__heading { margin:43px 0 22px !important; }
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq-items { width:100% !important; margin:0 !important; }
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq-items .elementor-tab-title { display:flex; align-items:flex-start; gap:12px; padding:18px 0 !important; font:600 clamp(20px,1.7vw,23px)/1.35 "Myriad Pro Regular",Arial,sans-serif !important; }
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq-items .elementor-toggle-icon { float:none; flex:0 0 18px; width:18px; margin:0; text-align:center; }
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq-items .elementor-toggle-title { display:block; flex:1 1 0; min-width:0; font:inherit !important; }
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq-items .elementor-tab-content { padding:0 0 20px 30px !important; }
body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq-items .elementor-tab-content p:last-child { margin-bottom:0 !important; }
@media (max-width:1000px) {
 body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-faq-columns { column-gap:32px !important; }
}
@media (max-width:800px) {
 body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-news-faq-columns { row-gap:38px !important; }
 body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-news-column .hfd-news__heading { margin-top:0 !important; }
 body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq,
 body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq > .e-con-inner { gap:18px !important; }
 body.hirondelle-design-2026.hfd-home-modern .hfd-home-modern-root .hfd-home-faq-items .elementor-tab-title { padding-block:16px !important; font-size:20px !important; }
}

/* A quieter, lower hero; the image handles navigation without a visible control box. */
.hfd-home-modern-root .hfd-home-hero h1.elementor-heading-title { font-size:calc(clamp(44px,5vw,72px) - 2pt) !important; }
.hfd-home-modern-root .hfd-home-hero-copy { justify-content:flex-end !important; padding-block:55px 22px !important; }
.hfd-home-modern-root .hfd-home-hero .hfd-home-actions { margin-bottom:0 !important; }
body:is(.hfd-home-hero-option-1,.hfd-home-hero-option-2,.hfd-home-hero-option-3) .hfd-home-modern-root .hfd-home-hero-copy { padding-block:55px 22px !important; }
body.hfd-home-hero-option-1 .hfd-home-modern-root .hfd-home-hero h1.elementor-heading-title { font-size:calc(clamp(31px,3.5vw,44px) - 2pt) !important; }
body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero-copy { margin-bottom:18px !important; padding:28px 28px 4px !important; }
body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero h1.elementor-heading-title { font-size:calc(35px - 2pt) !important; }
body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero-copy { align-items:end !important; padding-block:26px 22px !important; padding-right:0 !important; box-sizing:border-box; }
body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero h1.elementor-heading-title { font-size:calc(clamp(27px,3vw,38px) - 2pt) !important; }
@media (max-width:1000px) and (min-width:701px) {
 body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero-copy { padding-right:0 !important; }
 body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero .hfd-home-actions { max-width:100%; }
}
/* No extra mobile space is needed for the former visible controls. */
@media (max-width:700px) {
 .hfd-home-modern-root .hfd-home-hero-copy,
 body:is(.hfd-home-hero-option-1,.hfd-home-hero-option-2,.hfd-home-hero-option-3) .hfd-home-modern-root .hfd-home-hero-copy { padding-block:40px 24px !important; }
 body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero-copy { margin-bottom:18px !important; padding:22px !important; }
 body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero-copy { padding-right:0 !important; }
}
@media (max-width:500px) {
 .hfd-home-modern-root .hfd-home-hero h1.elementor-heading-title { font-size:calc(49px - 2pt) !important; }
 body.hfd-home-hero-option-1 .hfd-home-modern-root .hfd-home-hero h1.elementor-heading-title { font-size:calc(33px - 2pt) !important; }
 body.hfd-home-hero-option-2 .hfd-home-modern-root .hfd-home-hero h1.elementor-heading-title,
 body.hfd-home-hero-option-3 .hfd-home-modern-root .hfd-home-hero h1.elementor-heading-title { font-size:calc(31px - 2pt) !important; }
}

.hfd-home-modern-root .hfd-home-video-library-link { margin:20px 0 0 !important; font-size:18px; }
.hfd-home-modern-root .hfd-home-video-library-link a { color:var(--home-dark); border-bottom:1px solid var(--home-line); text-decoration:none; padding-bottom:6px; }

/* Homepage-only section spacing: the optional body class increases these outer gaps by exactly 25%. */
body.hfd-home-modern .hfd-home-modern-root { --hfd-home-section-space:46px; --hfd-home-advice-space:26.5px; --hfd-home-boundary-space:23px; }
body.hfd-home-modern.hfd-home-spacing-airy .hfd-home-modern-root { --hfd-home-section-space:57.5px; --hfd-home-advice-space:33.125px; --hfd-home-boundary-space:28.75px; }
body.hfd-home-modern .hfd-home-modern-root .hfd-home-section { padding-block:var(--hfd-home-section-space) !important; }
body.hfd-home-modern .hfd-home-modern-root .hfd-home-section.hfd-home-advice { padding-block:var(--hfd-home-advice-space) !important; }
body.hfd-home-modern .hfd-home-modern-root .hfd-home-section.hfd-home-team-section { padding-bottom:0 !important; }
body.hfd-home-modern .hfd-home-modern-root .hfd-home-section.hfd-home-faq-section { padding-top:0 !important; }
@media (max-width:800px) {
 body.hfd-home-modern .hfd-home-modern-root { --hfd-home-section-space:29px; --hfd-home-advice-space:29px; --hfd-home-boundary-space:14.5px; }
 body.hfd-home-modern.hfd-home-spacing-airy .hfd-home-modern-root { --hfd-home-section-space:36.25px; --hfd-home-advice-space:36.25px; --hfd-home-boundary-space:18.125px; }
}

/* Keep the existing white/blue gap split proportional in both spacing modes. */
body.hfd-home-modern .hfd-home-modern-root .hfd-home-section[data-id="ba8f7a7"] { padding-bottom:var(--hfd-home-boundary-space) !important; }
body.hfd-home-modern .hfd-home-modern-root .hfd-home-section.hfd-home-faq-section[data-id="98d598c"] { background-color:var(--home-pale) !important; padding-top:var(--hfd-home-boundary-space) !important; }

/* Only the existing shop photograph: hide its baked-in top/bottom frame.
 * The 1366x780 source is unchanged; centered 5% overscan clears both edges. */
body.hfd-home-modern .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card > .elementor-widget-image[data-id="b4bd105"] { overflow: hidden; }
body.hfd-home-modern .hfd-home-modern-root.hfd-home-revision-3 .hfd-home-info-card > .elementor-widget-image[data-id="b4bd105"] img { transform: scale(1.05); transform-origin: 50% 50%; object-position: 50% 50%; }
