:root{--ml-ink:#10221a;--ml-muted:#5c6b63;--ml-paper:#f5f4ec;--ml-surface:#fffef8;--ml-brand:#078946;--ml-brand-2:#b8dc2f;--ml-accent:#f28c28;--ml-line:#cdd8d0;--ml-shadow:0 18px 45px rgba(27,54,39,.12);--ml-radius:22px;--ml-content:1180px;--ml-display:ui-serif,Georgia,Cambria,"Times New Roman",serif;--ml-sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*,*:before,*:after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body.ml-six-theme{margin:0;overflow-x:hidden;color:var(--ml-ink);background:var(--ml-paper);font-family:var(--ml-sans);font-size:16px;line-height:1.65}
.ml-six-theme img{display:block;max-width:100%;height:auto}.ml-six-theme a{color:inherit}.ml-six-theme h1,.ml-six-theme h2,.ml-six-theme h3,.ml-six-theme p{overflow-wrap:anywhere}.ml-six-theme h1,.ml-six-theme h2{margin-top:0;font-family:var(--ml-display);font-weight:690;letter-spacing:-.035em;line-height:1.04}.ml-six-theme h1{font-size:clamp(3rem,7vw,7rem)}.ml-six-theme h2{font-size:clamp(2.1rem,4.5vw,4.7rem)}.ml-six-theme h3{line-height:1.18}.ml-six-theme :focus-visible{outline:3px solid var(--ml-accent);outline-offset:3px}
.ml-wrap{width:min(calc(100% - 40px),var(--ml-content));margin-inline:auto}.ml-skip-link{position:fixed;z-index:9999;top:8px;left:8px;padding:.7rem 1rem;transform:translateY(-150%);border-radius:8px;color:#000;background:#fff}.ml-skip-link:focus{transform:none}
.ml-header{position:relative;z-index:100;border-bottom:1px solid transparent;background:var(--ml-paper)}.ml-header-inner{width:min(calc(100% - 40px),1260px);min-height:98px;margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:26px}.ml-brand{flex:0 0 auto;width:166px}.ml-brand img,.ml-footer-brand img{width:100%}.ml-navigation{display:flex;align-items:center;gap:clamp(14px,1.8vw,26px)}.ml-nav-utility{display:grid;gap:1px;padding-right:12px;border-right:1px solid var(--ml-line);color:var(--ml-muted);font-size:.64rem;font-weight:800;line-height:1.25;text-transform:uppercase}.ml-nav-utility a{text-decoration:none}.ml-navigation .ml-menu{display:flex;align-items:center;justify-content:flex-end;gap:clamp(16px,2vw,32px);margin:0;padding:0;list-style:none;font-size:.92rem;font-weight:760}.ml-menu li{position:relative}.ml-menu a{text-decoration:none;white-space:nowrap}.ml-menu>li>a:after{content:"";position:absolute;right:100%;bottom:-7px;left:0;height:2px;background:var(--ml-brand);transition:right .2s ease}.ml-menu>li>a:hover:after{right:0}.ml-menu .ml-menu-support>a{padding:.68rem 1rem;border-radius:999px;color:#fff;background:var(--ml-brand)}.ml-menu .sub-menu{position:absolute;top:calc(100% + 16px);left:-18px;min-width:230px;margin:0;padding:12px;visibility:hidden;opacity:0;list-style:none;border:1px solid var(--ml-line);border-radius:14px;background:var(--ml-surface);box-shadow:var(--ml-shadow);transform:translateY(8px);transition:.2s}.ml-menu .sub-menu .sub-menu{top:-12px;left:calc(100% + 8px)}.ml-menu li:hover>.sub-menu,.ml-menu li:focus-within>.sub-menu{visibility:visible;opacity:1;transform:none}.ml-menu .sub-menu a{display:block;padding:8px 10px;border-radius:8px}.ml-menu .sub-menu a:hover{background:var(--ml-paper)}.ml-menu-toggle{display:none;min-height:48px;align-items:center;gap:9px;border:0;color:inherit;background:transparent;font:inherit;font-weight:800;cursor:pointer}.ml-menu-lines{display:grid;gap:5px;width:26px}.ml-menu-lines i{width:100%;height:2px;background:currentColor;transition:transform .2s,opacity .2s}.ml-submenu-toggle{display:none}
.ml-hero{min-height:min(760px,calc(100svh - 98px));display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:clamp(32px,5vw,74px);padding-block:48px 74px}.ml-eyebrow{margin:0 0 10px;color:var(--ml-brand);font-size:.78rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.ml-hero h1{max-width:780px;margin-bottom:0}.ml-lead{max-width:640px;margin:24px 0 0;color:var(--ml-muted);font-size:clamp(1.05rem,1.7vw,1.35rem)}.ml-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:34px}.ml-button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:.75rem 1.2rem;border:1px solid transparent;border-radius:999px;text-decoration:none;font-weight:820}.ml-button-primary{color:#fff;background:var(--ml-brand);box-shadow:var(--ml-shadow)}.ml-button-secondary{color:#fff;background:var(--ml-ink)}.ml-text-link{text-decoration-thickness:1px;text-underline-offset:5px;font-weight:800}.ml-hero-visual{position:relative;margin:0}.ml-hero-visual img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--ml-radius);box-shadow:var(--ml-shadow)}.ml-hero-visual figcaption{position:absolute;right:22px;bottom:-18px;padding:.7rem 1rem;border-radius:999px;color:var(--ml-ink);background:var(--ml-brand-2);font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.ml-impact{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;color:#fff;background:#fff}.ml-impact p{display:flex;align-items:center;justify-content:center;gap:14px;margin:0;padding:24px;background:var(--ml-ink)}.ml-impact strong{font-family:var(--ml-display);font-size:2rem}.ml-impact span{max-width:180px;color:rgba(255,255,255,.76);font-size:.86rem;line-height:1.35}
.ml-topics,.ml-news{padding-block:clamp(76px,10vw,140px)}.ml-section-heading{max-width:780px;margin-bottom:44px}.ml-section-heading>p:last-child{max-width:690px;color:var(--ml-muted);font-size:1.08rem}.ml-topic-grid,.ml-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ml-topic-card,.ml-news-card{position:relative;min-width:0;overflow:hidden;border:1px solid var(--ml-line);border-radius:var(--ml-radius);background:var(--ml-surface);box-shadow:0 12px 30px rgba(30,60,42,.07)}.ml-topic-card>img{width:100%;height:260px;object-fit:cover}.ml-topic-card>div,.ml-news-card>div{padding:24px}.ml-topic-card h3,.ml-news-card h3,.ml-news-card h2{margin:0 0 12px;font-family:var(--ml-display);font-size:1.55rem}.ml-topic-card p,.ml-news-card p{color:var(--ml-muted)}.ml-topic-card a,.ml-news-card h3 a,.ml-news-card h2 a{font-weight:820;text-underline-offset:4px}.ml-topic-number{position:absolute;z-index:2;top:14px;left:14px;display:grid;width:44px;height:44px;place-items:center;border-radius:50%;color:#fff;background:var(--ml-ink);font-weight:850}
.ml-vision{min-height:620px;display:grid;grid-template-columns:1fr 1fr;padding:0;overflow:hidden;border-radius:calc(var(--ml-radius)*1.3);color:#fff;background:var(--ml-ink)}.ml-vision-photo img{width:100%;height:100%;object-fit:cover}.ml-vision-copy{align-self:center;padding:clamp(36px,6vw,80px)}.ml-vision-copy .ml-eyebrow{color:var(--ml-brand-2)}.ml-vision-copy>p:not(.ml-eyebrow){max-width:550px;color:rgba(255,255,255,.76);font-size:1.08rem}.ml-vision-copy .ml-button{margin-top:22px;color:var(--ml-ink);background:var(--ml-brand-2)}
.ml-section-heading-row{max-width:none;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.ml-news-image{display:block;overflow:hidden}.ml-news-image img{width:100%;height:300px;object-fit:cover;transition:transform .35s}.ml-news-card:hover .ml-news-image img{transform:scale(1.035)}.ml-meta{margin:0 0 8px!important;color:var(--ml-brand)!important;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ml-meta a{font-weight:inherit}.ml-news-card h3 a,.ml-news-card h2 a{text-decoration:none}
.ml-support{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:clamp(38px,6vw,76px);border-radius:calc(var(--ml-radius)*1.3);color:#fff;background:var(--ml-brand)}.ml-support .ml-eyebrow{color:var(--ml-brand-2)}.ml-support h2{max-width:760px;margin-bottom:0;font-size:clamp(2rem,4vw,4rem)}.ml-support-actions{min-width:210px;display:flex;flex-direction:column;gap:10px}.ml-button-light{color:var(--ml-ink);background:#fff}.ml-button-ghost{border-color:rgba(255,255,255,.55);color:#fff}
.ml-footer{margin-top:90px}.ml-footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:34px;padding-block:80px 48px;border-top:1px solid var(--ml-line)}.ml-footer-brand img{width:180px;margin-bottom:18px}.ml-footer h2{margin-bottom:16px;font-family:var(--ml-sans);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.ml-footer p{color:var(--ml-muted)}.ml-footer a{text-underline-offset:3px}.ml-copyright{grid-column:1/-1;padding-top:30px;border-top:1px solid var(--ml-line);font-size:.78rem}
.ml-page,.ml-archive{padding-block:clamp(56px,9vw,120px)}.ml-page-header{max-width:920px;margin-bottom:48px}.ml-page-header h1{margin-bottom:0}.ml-page-featured{margin:0 0 48px}.ml-page-featured img{width:100%;max-height:720px;object-fit:cover;border-radius:var(--ml-radius)}.ml-entry-content{max-width:880px;font-size:1.06rem}.ml-entry-content>*{max-width:100%}.ml-entry-content h2{margin-top:2em;font-size:clamp(1.9rem,4vw,3.5rem)}.ml-entry-content h3{margin-top:1.7em}.ml-entry-content img{height:auto;border-radius:calc(var(--ml-radius)*.7)}.ml-entry-content iframe{max-width:100%}.ml-entry-content table{display:block;max-width:100%;overflow-x:auto}.ml-related{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:36px}.ml-related-card{display:grid;grid-template-columns:1fr auto;gap:8px 16px;padding:24px;border:1px solid var(--ml-line);border-radius:var(--ml-radius);text-decoration:none;background:var(--ml-surface)}.ml-related-card span{grid-column:1;color:var(--ml-brand);font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.ml-related-card strong{grid-column:1;font-size:1.35rem}.ml-related-card i{grid-column:2;grid-row:1/3;align-self:center;font-style:normal;font-size:1.8rem}.ml-archive .ml-page-header{margin-bottom:36px}.pagination{margin-top:40px}
@media(max-width:1024px){.ml-header-inner{min-height:82px}.ml-brand{width:145px}.ml-menu-toggle{position:relative;z-index:121;display:flex}.ml-navigation{position:fixed;z-index:120;inset:0;display:flex;align-items:stretch;flex-direction:column;gap:18px;padding:92px 24px 32px;overflow-y:auto;visibility:hidden;background:var(--ml-paper);transform:translateX(100%);transition:transform .25s,visibility .25s}.ml-navigation.is-open{visibility:visible;transform:none}.ml-nav-utility{display:flex;gap:18px;padding:0 0 14px;border-right:0;border-bottom:1px solid var(--ml-line);font-size:.72rem}.ml-navigation .ml-menu{display:flex;align-items:stretch;justify-content:flex-start;flex-direction:column;gap:0}.ml-menu>li{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid var(--ml-line)}.ml-menu>li>a{padding:13px 0;font-size:clamp(1.35rem,5vw,2rem);white-space:normal}.ml-menu>li>a:after{display:none}.ml-menu .ml-menu-support{margin-top:16px;border:0}.ml-menu .ml-menu-support>a{text-align:center}.ml-menu .sub-menu{position:static;grid-column:1/-1;display:none;min-width:0;padding:0 0 12px 18px;visibility:visible;opacity:1;border:0;background:transparent;box-shadow:none;transform:none}.ml-menu .sub-menu .sub-menu{position:static;padding-left:18px}.ml-menu li.is-submenu-open>.sub-menu{display:block}.ml-menu .sub-menu li{border:0}.ml-menu .sub-menu a{padding:7px 0;font-size:1rem}.ml-submenu-toggle{display:grid;width:44px;height:44px;align-self:center;place-items:center;border:0;color:inherit;background:transparent;font-size:1.5rem}.is-submenu-open>.ml-submenu-toggle{transform:rotate(180deg)}.ml-menu-open{overflow:hidden}.ml-menu-toggle[aria-expanded=true] .ml-menu-lines i:first-child{transform:translateY(7px) rotate(45deg)}.ml-menu-toggle[aria-expanded=true] .ml-menu-lines i:nth-child(2){opacity:0}.ml-menu-toggle[aria-expanded=true] .ml-menu-lines i:last-child{transform:translateY(-7px) rotate(-45deg)}.ml-hero{min-height:auto;grid-template-columns:1fr;padding-top:36px}.ml-hero-copy{max-width:790px}.ml-hero-visual img{aspect-ratio:16/9}.ml-topic-card>img{height:230px}}
@media(max-width:740px){:root{--ml-radius:18px}.ml-wrap,.ml-header-inner{width:min(calc(100% - 28px),var(--ml-content))}.ml-header-inner{min-height:74px}.ml-brand{width:132px}.ml-hero{gap:28px;padding-block:26px 52px}.ml-eyebrow{font-size:.72rem}.ml-six-theme h1{font-size:clamp(2.75rem,14vw,4.5rem)}.ml-six-theme h2{font-size:clamp(2rem,10vw,3.3rem)}.ml-lead{font-size:1.05rem}.ml-actions{align-items:stretch;flex-direction:column}.ml-actions .ml-button{width:100%}.ml-hero-visual img{aspect-ratio:4/3}.ml-hero-visual figcaption{right:10px;bottom:-14px;max-width:calc(100% - 20px);font-size:.63rem}.ml-impact{grid-template-columns:1fr}.ml-impact p{justify-content:flex-start;padding:16px 20px}.ml-topics,.ml-news{padding-block:72px}.ml-section-heading{margin-bottom:28px}.ml-topic-grid,.ml-news-grid{grid-template-columns:1fr;gap:28px}.ml-topic-card>img,.ml-news-image img{height:260px}.ml-vision{min-height:auto;grid-template-columns:1fr}.ml-vision-photo img{height:300px}.ml-section-heading-row{align-items:flex-start;flex-direction:column}.ml-support{align-items:flex-start;flex-direction:column;padding:34px 24px}.ml-support-actions{width:100%}.ml-footer-grid{grid-template-columns:1fr 1fr;gap:24px}.ml-footer-brand,.ml-copyright{grid-column:1/-1}.ml-page{padding-block:44px 76px}.ml-page-header{margin-bottom:30px}.ml-related{grid-template-columns:1fr}.ml-entry-content{font-size:1rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Elementor content remains supported inside the standalone theme.  The old
 * page layouts use nested flex containers; on narrow screens they must stack
 * instead of retaining their desktop basis and overlapping buttons/text. */
.ml-entry-content .elementor,
.ml-entry-content .elementor .e-con{width:100%;max-width:100%;box-sizing:border-box}
.ml-entry-content .elementor .e-con{min-width:0}
.ml-entry-content .elementor .elementor-widget-container{max-width:100%;overflow-wrap:anywhere}
.ml-entry-content .elementor .elementor-button{max-width:100%;white-space:normal;text-align:center}
@media(max-width:1024px){
  .ml-entry-content .elementor .e-con{flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;flex-basis:auto!important;width:100%!important;min-width:0!important;gap:18px}
  .ml-entry-content .elementor .e-con > .e-con{flex:0 1 auto!important;width:100%!important}
  .ml-entry-content .elementor .elementor-widget{max-width:100%;min-width:0}
}
@media(max-width:740px){
  .ml-footer-grid{grid-template-columns:1fr;gap:28px;padding-block:56px 36px}
  .ml-footer-brand,.ml-copyright{grid-column:1}
  .ml-footer-grid>div{min-width:0}
  .ml-footer p,.ml-footer a{overflow-wrap:anywhere}
}

/* The legacy Jövőképünk Elementor page has desktop percentage widths whose
 * siblings add up to more than 100%. Keep that content readable in the new
 * theme at every viewport instead of allowing columns to escape the article. */
.ml-entry-content .elementor-1765 .e-con{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  flex:0 1 auto!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:20px!important;
  box-sizing:border-box;
}
.ml-entry-content .elementor-1765 .e-con > .e-con{
  width:100%!important;
  max-width:100%!important;
  flex:0 1 auto!important;
}
.ml-entry-content .elementor-1765 .elementor-widget-image img{
  max-width:min(100%,420px);
  height:auto;
  margin-inline:auto;
}
.ml-entry-content .elementor-1765 .elementor-button-wrapper{text-align:center}

/* Footer headings must not inherit the display-sized h2 scale. */
.ml-six-theme .ml-footer h2{
  margin:0 0 16px!important;
  font-family:var(--ml-sans)!important;
  font-size:.78rem!important;
  line-height:1.25!important;
  letter-spacing:.12em!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
@media(max-width:740px){
  .ml-six-theme .ml-footer-grid{grid-template-columns:1fr!important}
  .ml-six-theme .ml-footer-grid>div{grid-column:1!important;width:100%;min-width:0}
  .ml-six-theme .ml-footer h2{white-space:normal!important}
}

/* The footer is a theme-owned three-panel component: contact, useful links,
 * and social links. Keep the brand/copyright outside the panels. */
.ml-six-theme .ml-footer-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
}
.ml-six-theme .ml-footer-brand,
.ml-six-theme .ml-copyright{grid-column:1/-1}
.ml-six-theme .ml-footer-grid>div:not(.ml-footer-brand){
  min-width:0;
  padding:24px;
  border:1px solid var(--ml-line);
  border-radius:var(--ml-radius);
  background:var(--ml-surface);
}
@media(max-width:740px){
  .ml-six-theme .ml-footer-grid{grid-template-columns:1fr!important}
  .ml-six-theme .ml-footer-grid>div:not(.ml-footer-brand){grid-column:1!important}
}

/* Theme-owned Elementor compatibility layer.  Elementor remains the content
 * editor, but its canvas, typography, spacing and controls do not dictate the
 * public design. */
.ml-entry-content .elementor{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:var(--ml-ink)!important;
  background:transparent!important;
  font-family:var(--ml-sans)!important;
  font-size:1rem!important;
  line-height:1.65!important;
}
.ml-entry-content .elementor .e-con,
.ml-entry-content .elementor .elementor-section,
.ml-entry-content .elementor .elementor-container{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  margin:0 0 32px!important;
  padding:0!important;
  box-sizing:border-box!important;
  background:transparent!important;
}
.ml-entry-content .elementor .e-con > .e-con,
.ml-entry-content .elementor .elementor-column,
.ml-entry-content .elementor .elementor-widget-wrap{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
}
.ml-entry-content .elementor .elementor-widget,
.ml-entry-content .elementor .elementor-widget-container{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 18px!important;
  padding:0!important;
  box-sizing:border-box!important;
}
.ml-entry-content .elementor h1,
.ml-entry-content .elementor h2,
.ml-entry-content .elementor h3,
.ml-entry-content .elementor h4,
.ml-entry-content .elementor h5,
.ml-entry-content .elementor h6{
  max-width:100%!important;
  margin:0 0 14px!important;
  color:var(--ml-ink)!important;
  font-family:var(--ml-display)!important;
  font-weight:690!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
  overflow-wrap:anywhere!important;
}
.ml-entry-content .elementor h1{font-size:clamp(2.5rem,6vw,5rem)!important}
.ml-entry-content .elementor h2{font-size:clamp(2rem,4.5vw,3.8rem)!important}
.ml-entry-content .elementor h3{font-size:clamp(1.5rem,3vw,2.2rem)!important}
.ml-entry-content .elementor h4{font-size:1.35rem!important}
.ml-entry-content .elementor h5,
.ml-entry-content .elementor h6{font-size:.82rem!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.ml-entry-content .elementor p,
.ml-entry-content .elementor li{
  max-width:72ch!important;
  margin:0 0 14px!important;
  color:var(--ml-ink)!important;
  font-family:var(--ml-sans)!important;
  font-size:1rem!important;
  line-height:1.65!important;
}
.ml-entry-content .elementor ul,
.ml-entry-content .elementor ol{margin:0 0 20px!important;padding-left:1.3em!important}
.ml-entry-content .elementor img{max-width:100%!important;height:auto!important}
.ml-entry-content .elementor .elementor-button{
  display:inline-flex!important;
  width:auto!important;
  max-width:100%!important;
  min-height:46px!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 0 18px!important;
  padding:.72rem 1.15rem!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  color:#fff!important;
  background:var(--ml-brand)!important;
  box-shadow:var(--ml-shadow)!important;
  font-family:var(--ml-sans)!important;
  font-size:.95rem!important;
  font-weight:820!important;
  line-height:1.25!important;
  text-align:center!important;
  white-space:normal!important;
}
@media(max-width:740px){
  .ml-entry-content .elementor .e-con{gap:16px!important;margin-bottom:28px!important}
  .ml-entry-content .elementor h1{font-size:clamp(2.2rem,12vw,3.5rem)!important}
  .ml-entry-content .elementor h2{font-size:clamp(1.8rem,9vw,2.8rem)!important}
  .ml-entry-content .elementor h3{font-size:1.45rem!important}
  .ml-entry-content .elementor p,
  .ml-entry-content .elementor li{font-size:1rem!important;line-height:1.6!important}
  .ml-entry-content .elementor .elementor-widget-image img{max-width:min(100%,320px)!important;margin-inline:auto!important}
  .ml-entry-content .elementor .elementor-button{width:100%!important}
}

/* Desktop Dropdown Overflow Alignment (< 1450px viewport) */
@media (min-width: 1025px) {
  .ml-menu > li:nth-last-child(-n + 2) > .sub-menu {
    left: auto !important;
    right: -18px !important;
  }

  .ml-menu > li:nth-last-child(-n + 2) > .sub-menu .sub-menu {
    left: auto !important;
    right: calc(100% + 8px) !important;
  }
}

/* Mobile Submenu State Control */
@media (max-width: 1024px) {
  .ml-menu .sub-menu { display: none !important; }
  .ml-menu li.is-submenu-open > .sub-menu { display: block !important; }
}


/* ==========================================================================
   Messzelátó Unified Typography, Justification & Minimalist Animations
   ========================================================================== */

.ml-page-header h1,
.ml-hero h1,
.ml-six-theme h1 {
  font-size: clamp(1.75rem, 4.2vw, 2.65rem);
  line-height: 1.22;
  letter-spacing: -0.025em;
  margin-bottom: 0.5em;
  word-break: break-word;
  overflow-wrap: break-word;
}

.ml-six-theme h2,
.ml-entry-content h2,
.ml-section-heading h2 {
  font-size: clamp(1.35rem, 3.2vw, 2.05rem);
  line-height: 1.28;
  letter-spacing: -0.02em;
  margin-top: 1.2em;
  margin-bottom: 0.45em;
  word-break: break-word;
  overflow-wrap: break-word;
}

.ml-six-theme h3,
.ml-entry-content h3,
.ml-news-card h3,
.ml-topic-card h3 {
  font-size: clamp(1.12rem, 2.2vw, 1.48rem);
  line-height: 1.35;
  margin-top: 1em;
  margin-bottom: 0.4em;
  word-break: break-word;
  overflow-wrap: break-word;
}

.ml-six-theme h4,
.ml-entry-content h4 {
  font-size: clamp(1.02rem, 1.6vw, 1.25rem);
  line-height: 1.4;
  margin-top: 0.9em;
  margin-bottom: 0.35em;
}

.ml-entry-content p,
.ml-lead,
.ml-vision-copy p,
.ml-news-card p {
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  word-break: break-word;
  overflow-wrap: break-word;
  orphans: 2;
  widows: 2;
  line-height: 1.68;
}

@keyframes ml-fade-in-up {
  from {
    opacity: 0;
    transform: translate3d(0, 14px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.ml-topic-card,
.ml-news-card,
.ml-related-card,
.ml-hero-copy,
.ml-page {
  animation: ml-fade-in-up 0.4s cubic-bezier(0.16, 1, 0.3, 1) both;
  will-change: transform, opacity;
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.ml-topic-card:hover,
.ml-news-card:hover,
.ml-related-card:hover {
  transform: translate3d(0, -3px, 0);
}

@media (prefers-reduced-motion: reduce) {
  .ml-topic-card,
  .ml-news-card,
  .ml-related-card,
  .ml-hero-copy,
  .ml-page {
    animation: none !important;
    transition: none !important;
  }
}
