:root {
    --site-ink: #28231f;
    --site-muted: #716a62;
    --site-paper: #fffdf9;
    --site-warm: #f7f1e8;
    --site-saffron: #d8962f;
    --site-saffron-dark: #a9651d;
    --site-maroon: #662b25;
    --site-navy: #1c3037;
    --site-border: #e7ddd0;
    --site-shadow: 0 18px 45px rgba(56, 39, 22, .08);
}

html { scroll-behavior: smooth; }

body {
    color: var(--site-ink);
    background: var(--site-warm);
    font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.75;
}

a, a:visited { color: var(--site-maroon); transition: color .2s ease, background-color .2s ease, border-color .2s ease; }
a:hover, a:focus { color: var(--site-saffron-dark); }

h1, h2, h3, h4, h5, h6 {
    color: var(--site-ink);
    font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
    font-weight: 700;
    letter-spacing: -.02em;
    text-transform: none;
}

.site-content { overflow: hidden; }

.site-header {
    position: sticky;
    top: 0;
    z-index: 1030;
    padding: 0;
    background: rgba(255, 253, 249, .96);
    border-bottom: 1px solid rgba(102, 43, 37, .1);
    box-shadow: 0 5px 24px rgba(56, 39, 22, .06);
    text-align: left;
    backdrop-filter: blur(14px);
}

.site-nav { min-height: 82px; }
.branding { display: inline-flex; align-items: center; gap: .8rem; color: var(--site-ink); text-align: left; }
.branding:hover, .branding:focus { color: var(--site-ink); }
.branding .logo { width: 52px; height: 52px; margin: 0; object-fit: cover; border-radius: 50%; box-shadow: 0 3px 12px rgba(43, 26, 8, .18); }
.brand-copy { display: flex; flex-direction: column; line-height: 1.15; }
.site-title { color: var(--site-maroon); font-size: 1.02rem; font-weight: 800; letter-spacing: .035em; }
.brand-subtitle { margin-top: .3rem; color: var(--site-muted); font-size: .69rem; letter-spacing: .08em; text-transform: uppercase; }
.navbar-toggler { padding: .45rem .6rem; border-color: var(--site-border); }
.navbar-toggler:focus { box-shadow: 0 0 0 .2rem rgba(216, 150, 47, .2); }
.site-nav .navbar-nav { gap: .25rem; }
.site-nav .nav-link { padding: .7rem .8rem !important; color: var(--site-ink); font-size: .77rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; border-radius: .55rem; }
.site-nav .nav-link:hover, .site-nav .nav-link:focus, .site-nav .nav-link.active { color: var(--site-maroon); background: #f6eadb; }
.site-nav .dropdown-menu { min-width: 14rem; margin-top: .55rem; padding: .5rem; border: 1px solid var(--site-border); border-radius: .75rem; box-shadow: var(--site-shadow); }
.site-nav .dropdown-item { padding: .6rem .75rem; color: var(--site-ink); font-size: .85rem; border-radius: .45rem; }
.site-nav .dropdown-item:hover, .site-nav .dropdown-item:focus { color: var(--site-maroon); background: #f6eadb; }

.page-head {
    position: relative;
    min-height: 330px;
    margin: 0;
    padding: 3rem 0 3.8rem;
    background-image: url("../images/page-head-1.jpg");
    background-position: center;
    background-size: cover;
    text-align: center;
}
.page-head-overlay { display: flex; align-items: center; min-height: 250px; background: linear-gradient(120deg, rgba(28, 48, 55, .92), rgba(102, 43, 37, .72)); }
.page-head .breadcrumb { margin: 0 0 1.25rem; padding: 0; font-size: .78rem; }
.page-head .breadcrumb-item, .page-head .breadcrumb-item.active { color: rgba(255, 255, 255, .72); }
.page-head .breadcrumb-item a { color: #fff; text-decoration: none; }
.page-head .breadcrumb-item a:hover { color: #ffd58b; }
.page-head .breadcrumb-item + .breadcrumb-item::before { color: rgba(255, 255, 255, .45); }
.page-kicker, .footer-kicker { margin: 0 0 .65rem; color: #f4bd64; font-size: .7rem; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.page-head .page-title { max-width: 900px; margin: 0 auto 1.6rem; color: #fff; font-size: clamp(2.3rem, 5vw, 4.35rem); font-weight: 800; line-height: 1.08; }
.page-search { max-width: 680px; margin: 0 auto; padding: .7rem .85rem .35rem; background: rgba(255, 255, 255, .97); border-radius: .8rem; box-shadow: 0 14px 35px rgba(0, 0, 0, .16); }
.page-search .gsc-control-cse { padding: 0 !important; background: transparent !important; border: 0 !important; }
.page-search table.gsc-search-box td { padding: 0 .35rem 0 0; }
.page-search input.gsc-input { height: 42px !important; padding: .5rem .8rem !important; border: 1px solid var(--site-border) !important; border-radius: .45rem !important; font-size: .95rem !important; }
.page-search input.gsc-search-button-v2 { min-width: 44px; height: 42px; margin: 0 !important; padding: .65rem !important; background-color: var(--site-maroon) !important; border: 0 !important; border-radius: .45rem !important; }
.page-search .search-label { margin: .15rem 0 0; color: var(--site-muted); font-size: .76rem; font-weight: 700; }

.main-content { background: var(--site-warm); }
.fullwidth-block { padding: clamp(3rem, 7vw, 5.5rem) 0; }
.main-content .content { min-width: 0; }
.main-content .section-title { position: relative; margin-bottom: 2rem; padding-bottom: 1rem; color: var(--site-maroon); font-size: clamp(1.7rem, 3vw, 2.35rem); }
.main-content .section-title::after { position: absolute; bottom: 0; left: 0; width: 4rem; height: 3px; background: var(--site-saffron); border-radius: 3px; content: ""; }
.seremon-list { margin: 0; }
.seremon-list.large li { min-height: 0; padding: 0; border: 0; }
.seremon-detail { overflow: auto; padding: clamp(1.35rem, 3vw, 2.25rem); color: var(--site-ink); background: var(--site-paper); border: 1px solid var(--site-border); border-left: 4px solid var(--site-saffron); border-radius: .85rem; box-shadow: var(--site-shadow); font-size: 1.02rem; }
.seremon-detail img.icon, .seremon-detail img.iconleft { max-width: min(42%, 260px); height: auto; clear: none; border-radius: .65rem; box-shadow: 0 8px 20px rgba(43, 26, 8, .12); }
.seremon-detail img.icon { margin: .3rem 0 1.15rem 1.5rem; }
.seremon-detail img.iconleft { margin: .3rem 1.5rem 1.15rem 0; }
.seremon-detail br + br { line-height: 1.1; }
.seremon-detail > table { width: 100% !important; height: auto !important; }
.seremon-detail > table img { max-width: 100%; height: auto; }
.seremon-detail > table table { width: 100%; }
.seremon-detail > table table td { padding: .65rem !important; vertical-align: top; }
.content .links { color: var(--site-maroon); }

@media (min-width: 768px) {
    .main-content .col-md-offset-1 { margin-left: 8.33333333%; }
}

.sidebar { min-width: 0; }
.sidebar .widget { margin-bottom: 1.5rem; padding: 1.45rem; background: var(--site-paper); border: 1px solid var(--site-border); border-radius: .85rem; box-shadow: 0 12px 28px rgba(56, 39, 22, .06); }
.sidebar .widget .widget-title { margin-bottom: 1rem; color: var(--site-maroon); font-size: 1.05rem; font-weight: 800; }
.sidebar .widget a { font-size: .92rem; }
.galery-thumb { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; }
.galery-thumb a { display: block; overflow: hidden; aspect-ratio: 1; border-radius: .5rem; background: #eadfce; }
.galery-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.galery-thumb a:hover img { transform: scale(1.08); }

.site-footer { padding: clamp(3.5rem, 7vw, 5.5rem) 0 1.4rem; color: #d9d3c9; background: var(--site-navy); text-align: left; }
.site-footer .widget { height: 100%; }
.site-footer .footer-kicker { color: #f4bd64; }
.site-footer .widget-title { margin-bottom: 1rem; color: #fff8ed; font-size: clamp(1.3rem, 2.4vw, 1.65rem); line-height: 1.25; }
.site-footer p { color: #c6c2bc; }
.site-footer a { color: #f4d4a2; }
.site-footer a:hover, .site-footer a:focus { color: #fff; }
.site-footer ul.address, .site-footer ul.bullet { margin: 1rem 0 0; padding: 0; list-style: none; }
.site-footer ul.address li { display: flex; gap: .65rem; }
.site-footer ul.address .fa { width: 1.2rem; padding-top: .3rem; color: #f4bd64; text-align: center; }
.footer-social { display: inline-flex; align-items: center; gap: .55rem; margin-top: .5rem; font-size: .87rem; font-weight: 700; }
.footer-links li { border-bottom: 1px solid rgba(255, 255, 255, .1); }
.footer-links li:last-child { border-bottom: 0; }
.footer-links li a { display: block; padding: .5rem 0; font-size: .86rem; line-height: 1.45; }
.footer-bottom { display: flex; justify-content: space-between; gap: 1rem; margin-top: 3rem; padding-top: 1.2rem; border-top: 1px solid rgba(255, 255, 255, .14); }
.site-footer .colophon, .site-footer .footer-note { margin: 0; font-size: .78rem; }
.site-footer .footer-note { text-align: right; }

#mainContainer { min-height: 0; max-width: none; margin: 0; padding: 0; background-color: transparent !important; box-shadow: none; }
#formBox { position: fixed; right: 1.25rem; bottom: 1.25rem; left: auto; z-index: 1020; display: flex; align-items: center; gap: .7rem; width: auto; margin: 0; padding: .55rem .65rem .55rem .85rem; background: rgba(28, 48, 55, .96); border: 1px solid rgba(255, 255, 255, .15); border-radius: 999px; box-shadow: 0 10px 25px rgba(0, 0, 0, .2); animation: none; }
#formBox p { margin: 0 !important; color: #fff; font-size: .72rem !important; font-weight: 700; }
.footerbtn { display: block; line-height: 0; }
.footerbtn img { width: 31px; height: 31px; object-fit: contain; }

@media (max-width: 991.98px) {
    .site-nav .navbar-collapse { padding: .65rem 0 1rem; }
    .site-nav .navbar-nav { gap: 0; }
    .site-nav .nav-link { padding: .7rem .75rem !important; }
    .site-nav .dropdown-menu { margin: 0; border: 0; box-shadow: none; }
    .page-head { min-height: 300px; }
    .page-head-overlay { min-height: 220px; }
}

@media (max-width: 767.98px) {
    .page-head { padding: 2.3rem 0 2.8rem; }
    .page-head .page-title { font-size: clamp(2rem, 10vw, 3rem); }
    .seremon-detail { font-size: .98rem; }
    .seremon-detail img.icon, .seremon-detail img.iconleft { float: none; display: block; max-width: 100%; margin: 0 auto 1.25rem; }
    .seremon-detail > table table td { display: block; width: 100%; }
    .footer-bottom { display: block; }
    .site-footer .footer-note { margin-top: .35rem; text-align: left; }
    #formBox { right: .7rem; bottom: .7rem; }
    #formBox p { display: none; }
}
