/* Mobile refinements; desktop keeps its existing presentation. */
@media (max-width: 639px) {
  header > div { gap: 8px !important; min-height: 72px !important; padding-inline: 16px !important; }
  header > div > a { flex: 1 1 auto; min-width: 0; max-width: 190px; }
  header > div > a img { width: 100%; height: auto; max-height: 54px; object-fit: contain; object-position: left center; }
  header > div > a > span { gap: 6px; }
  header > div > a > span > svg { width: 30px; height: 36px; flex-shrink: 0; }
  header > div > a .font-serif { font-size: clamp(20px, 6vw, 26px); }
  header > div > a span.uppercase { font-size: 6px; letter-spacing: 0; white-space: normal; }
  header > div > div { flex-shrink: 0; gap: 0; }
  #menu-mobile { padding: 12px 16px 16px; max-height: calc(100dvh - 72px); overflow-y: auto; }
  #menu-mobile a, #menu-mobile button { min-height: 48px; }
  main .grid > *, footer .grid > *, main .flex > * { min-width: 0; }
  main h1 { font-size: clamp(30px, 8.5vw, 40px) !important; line-height: 1.14 !important; letter-spacing: -0.035em !important; overflow-wrap: break-word; }
  main h2, main h3 { overflow-wrap: break-word; }
  main p { overflow-wrap: break-word; }
  #home > .grid { padding-top: 28px; padding-bottom: 56px; gap: 28px; }
  #hero-title + p { margin-top: 20px; line-height: 1.7; }
  #home .mt-8 { margin-top: 24px; }
  main .p-7, main .p-8 { padding: 22px; }
  main a.inline-flex, main button.inline-flex { max-width: 100%; white-space: normal; text-align: center; padding-inline: 16px; min-height: 48px; }
  main a.inline-flex > svg, main button.inline-flex > svg, footer svg { flex-shrink: 0; }
  #pagina-interna > section:first-child > .grid { padding-top: 28px; padding-bottom: 28px; gap: 24px; min-height: 0; }
  #pagina-interna > section:first-child figure { display: none; }
  #pagina-interna > section:first-child button { min-height: 44px; margin-bottom: 20px; }
  #pagina-interna > .pt-10 { padding-top: 28px; }
  footer { padding-top: 32px !important; }
  footer > .grid { gap: 28px; }
  footer p, footer span, footer a { overflow-wrap: anywhere; }
  footer button, footer a { min-height: 44px; }
  dialog { width: calc(100% - 24px) !important; max-height: calc(100dvh - 24px) !important; }
  dialog > div { padding: 20px !important; }
  dialog input { font-size: 16px; }
}
@media (hover: none) {
  a:hover, button:hover { transform: none !important; }
}

/* Native menu output preserves Nav Menu Roles filters. */
.apejus-wordpress-menu{list-style:none!important;margin:0!important;padding:0!important;display:flex;gap:22px;align-items:center}
.apejus-wordpress-menu li{position:relative;list-style:none!important;margin:0!important;padding:0!important}
.apejus-wordpress-menu a{display:block;padding:10px 0;color:#4a1515;text-decoration:none;font-size:13px}
.apejus-wordpress-menu .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:220px;margin:0!important;padding:12px 18px!important;background:#fffdfb;border:1px solid #e8ded4;border-radius:10px;box-shadow:0 12px 30px #4a15151a;z-index:100;list-style:none}
.apejus-wordpress-menu li:hover>.sub-menu,.apejus-wordpress-menu li:focus-within>.sub-menu{display:block}
.apejus-wordpress-menu .sub-menu .sub-menu{left:100%;top:0}
.apejus-home-native-nav{display:none}.apejus-home-native-mobile{padding:14px 22px;border-top:1px solid #e5d9cc;background:#f8f5f0}
.apejus-home-native-mobile .apejus-wordpress-menu{display:block}.apejus-home-native-mobile .sub-menu{display:block;position:static;box-shadow:none;border:0;padding-left:16px!important}
.apejus-footer .apejus-wordpress-menu{display:block}.apejus-footer .sub-menu{display:block;position:static;box-shadow:none;background:transparent;border:0;padding-left:12px!important}
@media(min-width:1280px){.apejus-home-native-nav{display:block}.apejus-home-native-mobile{display:none}}
@media(max-width:1050px){.apejus-menu .apejus-wordpress-menu{display:block}.apejus-menu .sub-menu{display:block;position:static;box-shadow:none;border:0;padding-left:16px!important}}
body.apejus-integrated .avia-cookie-consent,body.apejus-new-home .avia-cookie-consent{background:#fffaf3!important;color:#4a1515!important;border-top:1px solid #d7c8bb!important;box-shadow:0 -4px 20px #4a151510}
body.apejus-integrated .avia-cookie-consent a,body.apejus-new-home .avia-cookie-consent a{color:#4a1515!important}
body.apejus-integrated .avia-cookie-consent-button,body.apejus-new-home .avia-cookie-consent-button{background:#4a1515!important;color:#fff!important;border-radius:6px!important}

html.apejus-root{min-width:0!important;width:100%;margin:0;overflow-x:clip}
html.apejus-root body{min-width:0!important;width:100%;margin:0}
body.apejus-integrated .apejus-main{background:#f8f5f0!important}
.avia-cookie-consent .avia-cookie-consent-button,.avia-cookie-consent .avia-cookie-consent-button *{color:#fff!important}
