/* Functional fallbacks; the theme supplies the visual design. */
.iim-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.iim-contact-form { position:relative; }
.iim-contact-form input:not([type=checkbox]):not([type=hidden]), .iim-contact-form textarea { width:100%; box-sizing:border-box; }
.iim-consent { display:flex; gap:.65rem; align-items:flex-start; }
.iim-consent input { margin-top:.3rem; flex-shrink:0; }
.iim-contact-submit:disabled { opacity:.6; cursor:wait; }
.iim-form-feedback:empty { display:none; }
.iim-form-feedback.is-error { color:#a3283e; }
.iim-form-feedback.is-success { color:#236448; }
.iim-nav-panel { position:relative; }
.iim-nav-toggle { display:none; }
.iim-nav-list { list-style:none; padding:0; margin:0; display:flex; gap:1.5rem; align-items:center; }
.iim-nav-list a { text-decoration:none; }
.iim-nav-list li { position:relative; }
.iim-nav-list .sub-menu { position:static; margin:0; padding:.75rem; list-style:none; background:#101326; display:block; }
.iim-nav-list .sub-menu li { margin:.4rem 0; }
.iim-submenu-toggle { display:none; }
.iim-nav.is-enhanced .menu-item-has-children > a { padding-right:2rem; }
.iim-nav.is-enhanced .iim-submenu-toggle { display:inline-flex; align-items:center; justify-content:center; position:absolute; right:0; top:0; min-width:32px; min-height:44px; padding:0; color:inherit; background:transparent; border:0; cursor:pointer; border-radius:5px; }
.iim-submenu-toggle svg { transition:transform .18s ease; }
.iim-submenu-toggle[aria-expanded=true] svg { transform:rotate(180deg); }
.iim-submenu-toggle:focus-visible { outline:2px solid #D7AF66; outline-offset:2px; }
.iim-nav.is-enhanced .menu-item-has-children > .sub-menu { position:absolute; top:100%; left:0; z-index:30; min-width:240px; display:block; visibility:hidden; opacity:0; pointer-events:none; transform:translateY(6px); border:1px solid #D7AF6640; border-radius:10px; transition:opacity .18s ease, transform .18s ease, visibility .18s; }
.iim-nav.is-enhanced .menu-item-has-children.is-submenu-open > .sub-menu { visibility:visible; opacity:1; pointer-events:auto; transform:none; }
.iim-nav.is-enhanced .sub-menu .sub-menu { left:100%; top:0; }
@media(max-width:1000px) {
  .iim-nav.is-enhanced .iim-nav-toggle { display:inline-flex; align-items:center; gap:.5rem; }
  .iim-nav.is-enhanced .iim-nav-panel { display:none; position:absolute; right:0; top:100%; z-index:100; width:min(85vw,350px); background:#101326; padding:1.3rem; border:1px solid #D7AF6655; border-radius:12px; }
  .iim-nav.is-enhanced.is-open .iim-nav-panel { display:block; }
  .iim-nav-list { display:flex; flex-direction:column; align-items:stretch; gap:1rem; }
  .iim-nav .iim-nav-panel .iim-nav-list { display:flex; position:static; min-width:0; padding:0; border:0; background:transparent; box-shadow:none; }
  .iim-nav.is-enhanced .menu-item-has-children > .sub-menu { display:none; position:static; visibility:visible; opacity:1; pointer-events:auto; transform:none; padding:.6rem 0 .1rem 1rem; min-width:0; border:0; transition:none; }
  .iim-nav.is-enhanced .menu-item-has-children.is-submenu-open > .sub-menu { display:block; }
}
@media(prefers-reduced-motion:reduce) { .iim-submenu-toggle svg, .iim-nav.is-enhanced .menu-item-has-children > .sub-menu { transition:none; transform:none; } }
.iim-template-canvas { background: #101326; color: #f5f1e8; min-height: 100vh; }
