/* Obituz Pro base UI. Kept intentionally light so Elementor can own page design. */
:root {
    --obituz-shell: 1440px;
}

* { box-sizing: border-box; }
html, body { max-width: 100%; }
body { min-height: 100vh; }

.obituz-shell {
    width: min(var(--obituz-shell), calc(100% - 48px));
    margin-inline: auto;
}

.obituz-header {
    position: relative;
    z-index: 999;
    background: #fff;
    border-bottom: 1px solid var(--obituz-border);
}
.obituz-header .navbar { min-height: 78px; padding: 10px 0; }
.obituz-brand { display: inline-flex; align-items: center; gap: 12px; margin: 0; }
.obituz-custom-logo .custom-logo-link { display: inline-flex; }
.obituz-custom-logo img { width: auto; max-height: 52px; }
.obituz-site-name { color: var(--obituz-navy); font-size: 20px; font-weight: 600; letter-spacing: -.02em; }
.obituz-header .navbar-toggler { border: 1px solid var(--obituz-border); box-shadow: none !important; }
.obituz-header .nav-link { color: #263443; font-size: 14px; font-weight: 500; padding: 10px 14px !important; }
.obituz-header .nav-link:hover,
.obituz-header .current-menu-item > .nav-link { color: var(--obituz-gold-hover); }

.obituz-footer { background: var(--obituz-navy); color: rgba(255,255,255,.78); }
.obituz-footer-menu { list-style: none; }
.obituz-footer-menu a { color: rgba(255,255,255,.82); text-decoration: none; font-size: 13px; }
.obituz-footer-menu a:hover { color: #fff; }

.obituz-elementor-ready,
.obituz-elementor-ready > article,
.obituz-full-width {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
}

.elementor-page .obituz-header + .site-main { min-height: 1px; }
.elementor-page .site-main { overflow: visible; }

.obituz-fallback-page { background: #fff; }
.obituz-article,
.obituz-post-card,
.obituz-card {
    border: 1px solid var(--obituz-border);
    border-radius: 18px;
    background: #fff;
}
.obituz-article { padding: clamp(24px, 4vw, 54px); }
.obituz-card { max-width: 620px; padding: clamp(28px, 5vw, 56px); }
.obituz-post-card { overflow: hidden; transition: transform .2s ease, border-color .2s ease; }
.obituz-post-card:hover { transform: translateY(-3px); border-color: #d9e0e6; }
.obituz-post-thumb { aspect-ratio: 16/10; overflow: hidden; background: #eef2f5; }
.obituz-post-thumb img { width: 100%; height: 100%; object-fit: cover; }
.obituz-featured-image { overflow: hidden; border-radius: 14px; }
.obituz-meta { color: var(--obituz-muted); font-size: 13px; }
.obituz-entry-content { line-height: 1.8; }
.obituz-entry-content > * + * { margin-top: 1.1em; }
.obituz-entry-content h2,
.obituz-entry-content h3,
.obituz-entry-content h4 { color: var(--obituz-navy); margin-top: 1.5em; }

.obituz-btn {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 22px;
    border: 1px solid var(--obituz-gold);
    border-radius: 9px;
    background: var(--obituz-gold);
    color: #fff;
    font-weight: 600;
}
.obituz-btn:hover { background: var(--obituz-gold-hover); border-color: var(--obituz-gold-hover); color: #fff; }

/* Elementor/Bootstrap coexistence */
.elementor img { max-width: 100%; }
.elementor a { text-decoration: inherit; }
.elementor .row { --bs-gutter-x: 1.5rem; }

@media (max-width: 991.98px) {
    .obituz-shell { width: min(100% - 28px, var(--obituz-shell)); }
    .obituz-header .navbar { min-height: 68px; }
    .obituz-header .navbar-collapse { padding: 12px 0 8px; }
    .obituz-header .nav-link { padding: 10px 4px !important; }
}

@media (max-width: 575.98px) {
    .obituz-shell { width: min(100% - 20px, var(--obituz-shell)); }
    .obituz-custom-logo img { max-height: 42px; max-width: 210px; }
    .obituz-article { border-radius: 14px; padding: 20px; }
}
