[hidden] { display:none !important; }
.footer-contact { margin-bottom:20px; font-size:.875rem; overflow-wrap:anywhere; }
.desktop-nav>ul { display:flex; align-items:center; gap:22px; padding:0; margin:0; list-style:none; }
.desktop-nav li { position:relative; }
.desktop-nav .sub-menu { display:none; position:absolute; z-index:20; top:100%; min-width:240px; padding:16px; list-style:none; background:var(--background); box-shadow:0 8px 25px #203c3220; }
.desktop-nav li:hover>.sub-menu,.desktop-nav li:focus-within>.sub-menu { display:block; }
.desktop-nav .current-menu-item>a { text-decoration:underline; text-underline-offset:6px; }
.mobile-nav ul { list-style:none; margin:0; padding:0; }
.mobile-nav li a { display:block; }
.mobile-nav .sub-menu { padding-inline-start:18px; }
.tcson-readability { display:flex; align-items:center; justify-content:center; gap:10px; border:0; background:none; color:inherit; min-height:40px; text-align:start; font-size:.875rem; }
.tcson-switch { display:inline-block; position:relative; flex-shrink:0; width:34px; height:20px; border-radius:20px; background:#718c79; }
.tcson-switch::after { content:''; position:absolute; top:3px; left:3px; width:14px; height:14px; background:white; border-radius:50%; }
[aria-checked=true] .tcson-switch { background:#e0c37f; } [aria-checked=true] .tcson-switch::after { left:17px; }
.tcson-inline-icon { display:inline-block; vertical-align:middle; flex-shrink:0; max-width:28px; object-fit:contain; margin:0; }
.contacts .tcson-inline-icon,.contact-main .tcson-inline-icon,.button.primary .tcson-inline-icon { filter:brightness(0) invert(1); }
.hero-visual figcaption .tcson-inline-icon { width:22px; height:22px; }
.wp-block-list { padding-inline-start:24px; }
.preparation .wp-block-list,.department-facts-list { padding-inline-start:0; }
.wp-block-table { margin:0; }
.wp-block-table table { border-collapse:collapse; width:100%; }
.wp-block-table th,.wp-block-table td { border:0; border-bottom:1px solid var(--border); }
.wp-block-table figcaption { text-align:left; font-size:.875rem; color:var(--muted-foreground); margin-top:16px; }
.tcson-faq-item { padding-block:18px; border-bottom:1px solid var(--border); }
.tcson-faq-item summary { cursor:pointer; font-weight:600; font-size:1rem; list-style:revert; padding-inline-end:20px; }
.tcson-faq-item p { padding-top:14px; color:var(--muted-foreground); }
.faq-list>.tcson-faq-item { border-radius:0; }
.wp-block-image img { height:auto; }
.hero-visual.wp-block-image img { height:100%; width:100%; object-fit:cover; }
.tcson-standard-page h1,.tcson-standard-page h2 { margin-bottom:24px; }
.tcson-standard-page p,.tcson-standard-page article { margin-bottom:24px; }
.news-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.news-card { border:1px solid var(--border); background:#fff; border-radius:12px; padding:24px; }
.news-card h2 { font-size:1.5rem; margin:18px 0 12px; }
.news-card .text-link { margin-top:20px; }
.news-meta { color:var(--muted-foreground); font-size:.875rem; }
.tcson-news-photo { width:100%; height:220px; object-fit:cover; border-radius:7px; }
.tcson-publication-photo { display:block; max-width:100%; height:auto; margin-bottom:30px; border-radius:12px; }
.tcson-pagination { display:flex; flex-wrap:wrap; gap:8px; margin-top:32px; }
.tcson-pagination a { min-width:44px; padding:8px 14px; border:1px solid var(--border); text-align:center; border-radius:5px; }
.tcson-pagination a[aria-current] { background:var(--primary); color:var(--primary-foreground); }
.readable .news-card,.readable .sub-menu { background:#fff; color:#000; }
.editor-styles-wrapper { --background:#fffdf8;--foreground:#203c32;--primary:#20533f;--primary-foreground:#fff;--muted:#f0f3ec;--muted-foreground:#58675e;--border:#dce2d8;--ornament-red:#983e32;--linen:#f4eee3;font-family:'Segoe UI',Arial,sans-serif; }
.editor-styles-wrapper .wp-block { max-width:1240px; }
@media(max-width:900px) { .news-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:640px) { .news-grid { grid-template-columns:1fr; } .tcson-readability { max-width:100%; } .wp-block-group>.wp-block-group { min-width:0; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { animation:none !important; transition:none !important; } }
@media print { .utility,.header,.footer,.page-end,.department-aside,.skip { display:none; } .wrap { width:100%; } .department-body { display:block; } details::details-content { display:block; } body { background:white; color:black; } }

.tcson-announcements { padding-top:52px; padding-bottom:52px; }
.tcson-announcements .section-heading { gap:24px; }
.tcson-announcement-card { border-top:4px solid var(--ornament-red,#983e32); background:#fffdf8; }
.tcson-announcement-card h3 { font-size:1.4rem; line-height:1.35; margin:14px 0; }
.tcson-event-date { font-weight:600; color:var(--primary); margin-bottom:14px; }
.tcson-announcements .news-grid:has(> :only-child) { grid-template-columns:minmax(0,800px); }
.tcson-news-filters { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:30px; }
.tcson-news-filters a { padding:10px 18px; min-height:44px; border:1px solid var(--border); border-radius:24px; }
.tcson-news-filters a[aria-current] { color:white; background:var(--primary); border-color:var(--primary); }
.tcson-archive-note { margin:14px 0; padding:12px 16px; background:#f1eee7; color:#594e39; border-radius:6px; font-size:.95rem; }
.publication-body .wp-block-table { overflow-x:auto; margin-block:28px; }
.publication-body .wp-block-table th,.publication-body .wp-block-table td { padding:16px; text-align:left; vertical-align:top; }
.publication-body .wp-block-table th { background:#edf2eb; font-weight:600; }
.publication-body .wp-block-table td:first-child { white-space:nowrap; }
.publication-body .wp-block-table a { white-space:nowrap; text-decoration:underline; }
.publication-body .wp-block-table table { min-width:760px; }
.publication-body>.wp-block-heading { margin:32px 0 18px; }
.publication-body>p { margin-bottom:20px; line-height:1.7; }
.readable .tcson-announcement-card,.readable .tcson-archive-note { color:#000; background:#fff; border-color:#000; }
@media(max-width:640px) { .tcson-announcements .section-heading { align-items:flex-start; flex-direction:column; } .tcson-announcements { padding-block:36px; } }
