/* Elementor integration and shared components. */
body.ostrog-site{font-family:Manrope,Arial,sans-serif;background:var(--ivory, #F6F3F0);padding:18px;color:var(--ink, #181818)}
.ostrog-site h1,.ostrog-site h2,.ostrog-site h3,.ostrog-site h4{font-family:Oswald,Arial,sans-serif}
.ostrog-site h2{line-height:1.12!important}
.ostrog-site .elementor-widget{margin-bottom:0}
.ostrog-site .elementor-column-gap-default>.elementor-column>.elementor-element-populated,.ostrog-site .elementor-column-gap-no>.elementor-column>.elementor-element-populated{padding:0}
.ostrog-site .elementor-widget-wrap{align-content:flex-start}
.ostrog-block{width:100%;min-width:0}
.ostrog-block .hero{color:var(--ivory, #F6F3F0)}
.ostrog-block img{max-width:100%}
.ostrog-block .button{text-decoration:none}
.brand .ostrog-logo,.site-footer__brand .ostrog-logo{display:block;width:240px;height:100px;object-fit:contain}
.site-footer{background:var(--ink, #181818);color:var(--ivory, #F6F3F0)}
.site-footer__brand .ostrog-logo{width:260px;height:110px}
.ostrog-consent{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.6;color:#665b59;max-width:350px}
.ostrog-consent input{flex:0 0 auto;margin-top:3px;accent-color:var(--rosewood, #3E2D30)}
.ostrog-consent a{text-decoration:underline;text-underline-offset:2px}
.ostrog-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(100%);white-space:nowrap}
.ostrog-site button:disabled{opacity:.6;cursor:wait}
.ostrog-plain-header{background:var(--rosewood, #3E2D30);color:var(--ivory, #F6F3F0);border-radius:32px;max-width:1536px;margin:auto}
.ostrog-plain-content{max-width:1200px;margin:80px auto;padding:0 24px;min-height:45vh}
.ostrog-plain-content h1{font-size:clamp(38px,5vw,70px);line-height:1.15}
.ostrog-skip{position:absolute;left:-9999px;top:0;z-index:99999;background:#fff;color:var(--ink, #181818);padding:16px}
.ostrog-skip:focus{left:18px}
.ostrog-menu-toggle{display:none}
.media-dialog{border:1px solid #ffffff36;border-radius:30px;padding:0;color:var(--ivory, #f6f3f0);background:var(--rosewood, #3e2d30);max-width:1000px;width:calc(100% - 32px);max-height:90svh}
.media-dialog::backdrop{background:#181818bd;backdrop-filter:blur(9px)}
.dialog-close{position:sticky;top:16px;margin:16px 16px 0 auto;display:block;width:44px;height:44px;background:var(--ivory, #f6f3f0);color:var(--rosewood, #3e2d30);border:0;border-radius:12px;font-size:26px;cursor:pointer;z-index:2}
.dialog-body{padding:0 36px 36px}
.dialog-body img{width:100%;max-height:53svh;object-fit:contain;border-radius:18px;background:#281e21}
.dialog-body h3{font-size:36px;line-height:1.2;margin:24px 0 12px;font-weight:400}
.dialog-body p{color:#d7cbc7;line-height:1.8;font-size:14px}
.dialog-body .e-link{color:var(--ostrog-accent-2, #E3A07A)}
body:has(dialog[open]){overflow:hidden}
.application-form[hidden],#dialogContact[hidden]{display:none!important}
.application-dialog{max-width:660px;background:var(--ivory, #F6F3F0);color:var(--rosewood, #3E2D30)}
.application-dialog .dialog-close{background:var(--rosewood, #3E2D30);color:var(--ivory, #F6F3F0)}
.application-dialog .dialog-body{display:flow-root;padding-top:4px}
.application-dialog .dialog-body>img{float:left;width:136px;height:102px;max-height:none;object-fit:cover;border-radius:16px;margin:0 22px 20px 0}
.application-dialog .dialog-body>h3{font-size:28px;line-height:1.2;margin:0 0 10px;padding-top:2px}
.application-dialog .dialog-body>p{font-size:12px;line-height:1.65;color:#665b59;margin:0 0 20px}
.application-form{clear:both;padding-top:8px}
.application-form .form-field textarea{min-height:95px}
.application-form .contact-form__submit{width:100%;margin-top:16px;font-size:11px}
.application-form .ostrog-consent{margin-top:16px;max-width:none}
.application-form [data-form-status]{font-size:12px;color:#665b59;margin:12px 0 0}
.ostrog-site :focus-visible{outline:3px solid var(--ostrog-accent, #B5542D);outline-offset:4px}
.ostrog-site .elementor-editor-active .process,.ostrog-site.elementor-editor-active .process{opacity:1}
@media(max-width:1100px){
 .ostrog-block .nav{display:flex;justify-content:space-between;position:relative;gap:12px;flex-wrap:wrap;height:auto;min-height:100px;padding-block:8px}
 .ostrog-block .nav .menu{display:none;position:absolute;top:100%;left:0;right:0;z-index:20;padding:20px;background:var(--rosewood, #3E2D30);border:1px solid #ffffff30;border-radius:20px;box-shadow:0 15px 45px #18181845}
 .ostrog-block .nav.ostrog-menu-open .menu{display:grid;gap:0}
 .ostrog-block .nav .menu a{display:block;font-size:14px;padding:14px 8px}
 .ostrog-menu-toggle{display:block;border:1px solid #ffffff40;background:#ffffff10;color:var(--ivory, #F6F3F0);padding:12px;border-radius:12px;cursor:pointer;font-size:12px;margin-left:auto}
}
@media(max-width:760px){
 body.ostrog-site{padding:10px}.brand .ostrog-logo{width:155px;height:78px}.site-footer__brand .ostrog-logo{width:220px;height:100px}
 .ostrog-block .topbar{position:relative;justify-content:flex-start;padding-right:132px}
 .ostrog-block .topbar__contacts{min-width:0}.ostrog-block .topbar__contacts a:first-child{font-size:10px;white-space:nowrap}
 .ostrog-block .nav{gap:6px;min-height:86px}.ostrog-block .nav__cta{position:absolute;top:-38px;right:0;z-index:3;width:auto;min-height:32px;padding:0 12px;border-radius:11px;font-size:7px;line-height:1.1;letter-spacing:.08em;white-space:nowrap}.ostrog-menu-toggle{font-size:10px;padding:11px 8px}
 .ostrog-consent{max-width:none}.contact-form__footer{flex-wrap:wrap}
 .application-dialog .dialog-body>img{width:100px;height:90px;margin-right:15px}.application-dialog .dialog-body>h3{font-size:24px}
 .application-form .contact-form__grid{grid-template-columns:1fr}.dialog-body{padding:0 20px 24px}.application-form .form-field input{height:52px}
}
@media(max-width:400px){.brand .ostrog-logo{width:120px}.ostrog-block .topbar{padding-right:116px}.ostrog-block .nav__cta{min-height:30px;padding-inline:9px;font-size:6.5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Keep the temporary home page focused while retaining global contacts and forms. */
body:has(.ostrog-coming-soon) .ostrog-plain-header .menu,body:has(.ostrog-coming-soon) .ostrog-plain-header .ostrog-menu-toggle,body:has(.ostrog-coming-soon) .site-footer{display:none!important}

#dialogDownload[hidden]{display:none!important}#dialogDownload{margin:20px 0 0 16px;color:var(--ivory, #F6F3F0)}
.ostrog-template-preview{background:var(--rosewood, #3E2D30);color:var(--ivory, #F6F3F0);border-radius:30px;min-height:150px}
.elementor-editor-active .ostrog-template-preview [data-ostrog-block="shared_popup"] dialog{display:block;position:relative;margin:24px auto;max-height:none}
.elementor-editor-active .ostrog-template-preview [data-ostrog-block="shared_popup"] form[hidden]{display:block!important}
.elementor-editor-active .ostrog-template-preview [data-ostrog-block="shared_popup"] dialog{background:var(--ivory, #F6F3F0);color:var(--rosewood, #3E2D30)}
.elementor-editor-active .ostrog-template-preview [data-ostrog-block="shared_popup"] #dialogContact,.elementor-editor-active .ostrog-template-preview [data-ostrog-block="shared_popup"] #dialogClose{display:none}
/* Preserve media geometry against Elementor's generic img { height: auto } rule. */
body.ostrog-site .hero__poster,body.ostrog-site .category-card__image,body.ostrog-site .project-card__image,body.ostrog-site .proof-card__media,body.ostrog-site .about__image{width:100%;height:100%;object-fit:cover}
body.ostrog-site .media-tile>img,body.ostrog-site .explorer-scene>img,body.ostrog-site .download-card__preview img{width:100%;height:100%;object-fit:cover}
