:root { --dk-ink:#293133; --dk-dark:#1e1f2c; --dk-navy:#234152; --dk-cyan:#0cbcf5; --dk-width:1140px; }
*, *::before, *::after { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body.dk-site { display:flex; flex-direction:column; min-height:100vh; min-height:100dvh; margin:0; background:#fff; color:#111; font-family:"Open Sans",Arial,sans-serif; font-size:16px; line-height:1.6; overflow-x:clip; }
.dk-site h1, .dk-site h2, .dk-site h3, .dk-site h4, .dk-site h5, .dk-site h6 { font-family:Montserrat,Arial,sans-serif; }
.dk-site a { color:#176a91; }
.dk-site a:hover { color:#066893; }
.dk-wrap { width:min(var(--dk-width),calc(100% - 40px)); margin-inline:auto; }
.dk-header { background:#fff; box-shadow:0 1px 8px #00000012; position:relative; z-index:20; }
.dk-header-inner { min-height:110px; display:grid; grid-template-columns:260px minmax(0,1fr); grid-template-rows:34px 76px; column-gap:30px; align-items:center; }
.dk-brand { grid-row:1 / 3; min-width:0; }
.dk-brand img { display:block; width:auto; max-width:250px; max-height:100px; height:auto; }
.dk-brand p, .dk-header-extra p { margin:0; }
.dk-header-extra { grid-column:2; grid-row:1; justify-self:end; align-self:end; }
.dk-header-extra img { max-height:30px; width:auto; }
.dk-header-extra .scicon { display:flex; align-items:center; gap:8px; }
.dk-main-menu { grid-column:2; grid-row:2; align-self:end; min-width:0; }
.dk-main-menu ul { list-style:none; margin:0; padding:0; }
.dk-main-menu > ul, .dk-main-menu > div > ul, .dk-main-menu > div > div > ul, .dk-main-menu ul.mod-menu { display:flex !important; flex-direction:row !important; justify-content:flex-end; align-items:center; flex-wrap:nowrap; width:100%; }
.dk-main-menu li { position:relative; width:auto !important; flex:0 0 auto; }
.dk-main-menu a { display:block; color:var(--dk-ink); text-decoration:none !important; padding:13px 13px; line-height:1.3; font-family:Montserrat,Arial,sans-serif; font-size:1rem; font-weight:500; transition:background-color .22s ease, color .22s ease; }
.dk-main-menu a:is(:hover,:focus,:focus-visible), .dk-main-menu a * { text-decoration:none !important; }
.dk-main-menu li.active > a, .dk-main-menu li.current > a, .dk-main-menu a:hover, .dk-main-menu a:focus-visible { color:#fff; background:var(--dk-navy); }
.dk-main-menu li > ul { display:block; position:absolute; z-index:30; top:100%; left:0; min-width:230px; background:var(--dk-navy); box-shadow:0 12px 25px #0003; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(9px); transition:opacity .24s ease, transform .24s ease, visibility .24s ease; }
.dk-main-menu li li > ul { left:100%; top:0; }
.dk-main-menu li li > ul { transform:translateX(9px); }
.dk-main-menu li:hover > ul, .dk-main-menu li:focus-within > ul { opacity:1; visibility:visible; pointer-events:auto; transform:translate(0,0); }
.dk-main-menu li li a { color:#fff; font-size:.9rem; font-weight:500; padding:10px 15px; }
.dk-main-menu li li a:hover, .dk-main-menu li li a:focus-visible { background:#35647c; }
.dk-main-menu > ul > li > a, .dk-main-menu > div > ul > li > a, .dk-main-menu > div > div > ul > li > a { position:relative; }
.dk-main-menu > ul > li > a::before, .dk-main-menu > div > ul > li > a::before, .dk-main-menu > div > div > ul > li > a::before { content:""; position:absolute; left:13px; right:13px; bottom:2px; height:1px; background:#bf161b; opacity:0; transform:scaleX(.5); transition:opacity .25s ease, transform .25s ease; }
.dk-main-menu > ul > li.active > a, .dk-main-menu > ul > li.current > a, .dk-main-menu > div > ul > li.active > a, .dk-main-menu > div > ul > li.current > a, .dk-main-menu > div > div > ul > li.active > a, .dk-main-menu > div > div > ul > li.current > a { color:var(--dk-ink); background:transparent; }
.dk-main-menu > ul > li:is(.active,.current) > a::before, .dk-main-menu > div > ul > li:is(.active,.current) > a::before, .dk-main-menu > div > div > ul > li:is(.active,.current) > a::before { opacity:1; transform:scaleX(1); }
.dk-main-menu > ul > li > a:hover, .dk-main-menu > ul > li > a:focus-visible, .dk-main-menu > div > ul > li > a:hover, .dk-main-menu > div > ul > li > a:focus-visible, .dk-main-menu > div > div > ul > li > a:hover, .dk-main-menu > div > div > ul > li > a:focus-visible { color:var(--dk-ink); background:#f3f5f6; }
.dk-main-menu > ul > li > a:hover::before, .dk-main-menu > ul > li > a:focus-visible::before, .dk-main-menu > div > ul > li > a:hover::before, .dk-main-menu > div > ul > li > a:focus-visible::before, .dk-main-menu > div > div > ul > li > a:hover::before, .dk-main-menu > div > div > ul > li > a:focus-visible::before { opacity:1; transform:scaleX(1); }
.dk-main-menu li.dk-has-submenu > a::after { content:""; display:inline-block; width:6px; height:6px; margin:0 0 2px 9px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); transition:transform .22s ease; }
.dk-main-menu li.dk-has-submenu:hover > a::after, .dk-main-menu li.dk-has-submenu:focus-within > a::after { transform:translateY(2px) rotate(45deg); }
.dk-main-menu li li.dk-has-submenu > a::after { transform:rotate(-45deg); }
.dk-submenu-toggle { display:none; }
.dk-menu-toggle { display:none; }
.dk-hero { background:var(--dk-dark); color:#fff; padding:28px 0; }
.dk-hero-grid { display:grid; grid-template-columns: minmax(230px, 350px) minmax(0,1fr); gap:30px; align-items:start; }
.dk-hero-grid:has(> .dk-slider:only-child) { grid-template-columns:1fr; }
.dk-home-rail { display:flex; flex-direction:column; gap:22px; min-width:0; }
.dk-vertical-menu ul { list-style:none; padding:0; margin:0; }
.dk-vertical-menu a { display:block; color:#fff; font-size:1rem; font-weight:650; letter-spacing:.02em; text-decoration:none !important; padding:9px 16px; border-bottom:1px solid #ffffff24; transition:background-color .25s ease, color .25s ease, padding-left .25s ease, border-color .25s ease; }
.dk-vertical-menu a:is(:hover,:focus,:focus-visible), .dk-vertical-menu a * { text-decoration:none !important; }
.dk-vertical-menu a:hover, .dk-vertical-menu a:focus-visible, .dk-vertical-menu li.active > a { background:#a41620; color:#fff; padding-left:23px; border-color:#d63640; }
.dk-director { padding:10px 16px; color:#fff; }
.dk-director p { margin:0 0 8px; }
.dk-director img { max-width:150px; height:auto; display:block; }
.dk-director h6 { color:#fff; font-size:.95rem; margin:8px 0 0; }
.dk-director .secrow { font-size:.8rem; font-weight:400; }
.dk-slider { min-width:0; overflow:hidden; }
.dk-slider video { max-width:100%; height:auto; }
.dk-slider > img, .dk-slider .custom > img { max-width:100%; height:auto; }
.dk-slider .camera_wrap img { max-width:none; }
.dk-slider .camera_wrap, .dk-slider .slideshowck { max-width:100%; margin-bottom:0 !important; }
.dk-content-grid { display:grid; flex:1 0 auto; grid-template-columns:minmax(0,1fr); gap:36px; padding-block:42px 60px; min-height:45vh; }
.dk-home .dk-content-grid:has(.items-leading) { padding-top:0; }
.dk-content-grid:has(.dk-sidebar) { grid-template-columns:minmax(0,1fr) 250px; }
.dk-content { min-width:0; }
.dk-home .dk-content :is(.blog, .blog-featured) > .page-header,
.dk-home .dk-content :is(.blog, .blog-featured) > h1 { display:none; }
.dk-content h1, .dk-content h2, .dk-content h3 { color:var(--dk-dark); font-weight:400; line-height:1.1; }
.dk-content h1 { font-size:clamp(2.1rem,4vw,3rem); }
.dk-content h2 { font-size:clamp(1.8rem,3vw,2.25rem); }
.dk-content h3 { font-size:clamp(1.5rem,2.5vw,1.875rem); }
.dk-content img { max-width:100%; height:auto; }
.dk-content .blog-items { gap:38px 25px; align-items:start; }
.dk-content .blog-item { min-width:0; align-self:start; height:auto; }
.dk-home .dk-content .items-leading { position:relative; isolation:isolate; margin-bottom:42px; }
.dk-home .dk-content .items-leading::before { content:""; position:absolute; z-index:-1; inset-block:0; left:50%; width:100vw; transform:translateX(-50%); background:#f4f5f6; border-bottom:1px solid #bf161b; }
.dk-home .dk-content .items-leading > .blog-item { background:transparent; border:0; padding:40px 0 44px; }
.dk-home .dk-content .items-leading > .blog-item:has(> .item-image) { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr); column-gap:30px; align-items:start; }
.dk-home .dk-content .items-leading > .blog-item > .item-image { grid-column:1; min-width:0; float:none; margin:0 !important; }
.dk-home .dk-content .items-leading > .blog-item > .item-content { grid-column:2; min-width:0; padding:0 !important; }
.dk-home .dk-content .items-leading > .blog-item > .item-content h2:first-child { margin-top:0; }
.dk-home .dk-content .items-leading > .blog-item h2 { font-size:clamp(1.85rem,2.8vw,2.5rem); font-weight:600; line-height:1.15; margin-top:0; }
.dk-content .blog-item img { display:block; width:100%; object-fit:cover; }
.dk-content .blog-item h2 { font-size:clamp(1.55rem,2.4vw,2.25rem); font-weight:400; line-height:1.1; margin:16px 0 12px; }
.dk-content .blog-item p:not(.readmore) { font-family:Montserrat,Arial,sans-serif; font-size:1.1rem; line-height:1.6; }
.dk-content .blog-item h2 a { text-decoration:none; color:var(--dk-dark); }
.dk-content .blog-item h2 a:hover { color:#147ba5; }
.dk-content .article-info { color:#69737a; font-size:.78rem; }
.dk-content .readmore a { position:relative; display:inline-block; padding:9px 17px; color:var(--dk-navy); background:transparent; border:0 !important; border-radius:3px; font-family:Montserrat,Arial,sans-serif; font-size:.92rem; font-weight:600; text-decoration:none !important; transform:translateY(0); transition:color .25s ease, background-color .25s ease, transform .25s ease, box-shadow .25s ease; }
.dk-content .readmore a::after { content:""; position:absolute; left:17px; right:17px; bottom:4px; height:1px; background:#bf161b; transform:scaleX(0); transform-origin:left; transition:transform .25s ease; }
.dk-content .blog-item .readmore { margin:16px 0 0 !important; }
.dk-content .readmore a:hover, .dk-content .readmore a:focus-visible { color:var(--dk-navy); background:#e6eaec; box-shadow:0 4px 12px #1e1f2c17; transform:translateY(-2px); }
.dk-content .readmore a:hover::after, .dk-content .readmore a:focus-visible::after { transform:scaleX(1); }
.dk-category-banner { background:var(--dk-dark); color:#fff; padding:34px 0 38px; }
.dk-category-banner h1 { color:#fff; font-family:Montserrat,Arial,sans-serif; font-size:clamp(2rem,3.5vw,3rem); font-weight:500; line-height:1.2; margin:0; }
.dk-category-page .dk-content-grid { padding-top:34px; }
.dk-category-page .dk-content .com-content-category-blog > :is(.page-header,h1) { display:none; }
.dk-inner .dk-content .com-content-category-blog .blog-items { row-gap:36px; }
.dk-inner .dk-content .com-content-category-blog .blog-item { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr)); align-content:start; align-items:start; gap:18px 28px; min-width:0; padding:0 0 28px; border-bottom:1px solid #dce2e5; }
.dk-inner .dk-content .com-content-category-blog .blog-item > .item-image { float:none; width:100%; min-width:0; margin:0 !important; overflow:hidden; }
.dk-inner .dk-content .com-content-category-blog .blog-item > .item-image img { display:block; width:100%; height:auto; max-height:340px; aspect-ratio:4/3; object-fit:cover; transition:transform .35s ease; }
.dk-inner .dk-content .com-content-category-blog .blog-item > .item-image a:hover img { transform:scale(1.025); }
.dk-inner .dk-content .com-content-category-blog .blog-item > .item-content { min-width:0; padding:0 !important; }
.dk-inner .dk-content .com-content-category-blog .blog-item h2 { font-size:clamp(1.5rem,2.2vw,2rem); font-weight:500; line-height:1.2; margin:6px 0 12px; }
.dk-inner .dk-content .com-content-category-blog .blog-item p:not(.readmore) { font-size:1rem; line-height:1.55; }
.dk-inner .dk-content .com-content-category-blog .items-leading > .blog-item { background:#f4f5f6; border-bottom:1px solid #bf161b; padding:22px; }
.dk-inner .dk-content .com-content-category-blog .items-leading > .blog-item h2 { font-weight:600; }
.dk-inner .dk-content-grid:has(.dk-article-heading) { padding-top:0; }
.dk-inner .dk-article-heading { position:relative; isolation:isolate; color:#fff; padding:42px 0 44px; margin-bottom:34px; }
.dk-inner .dk-article-heading::before { content:""; position:absolute; z-index:-1; inset-block:0; left:50%; width:100vw; transform:translateX(-50%); background:var(--dk-dark); }
.dk-inner .dk-article-heading .page-header { margin:0; border:0; }
.dk-inner .dk-article-heading h1, .dk-inner .dk-article-heading h2 { color:#fff; font-size:clamp(2rem,3.5vw,3rem); font-weight:500; line-height:1.18; margin:0 0 14px; }
.dk-inner .dk-article-heading p { color:#e8ecf1; font-size:.98rem; line-height:1.6; margin:0; }
.dk-inner .dk-article-heading strong { color:#fff; font-weight:600; }
.dk-inner .dk-content .item-page { font-size:1.03rem; line-height:1.68; }
/* Keep long article text alongside the full article image. */
.dk-inner .dk-content .com-content-article.item-page::after { content:""; display:block; clear:both; }
.dk-inner .dk-content .com-content-article.item-page > .item-image {
 display:block; float:right !important; clear:none; width:min(42%,480px);
 max-width:100%; margin:0 0 50px 50px !important; padding:0 !important;
 text-align:left;
}
.dk-inner .dk-content .com-content-article.item-page > .item-image img {
 display:block; width:100%; max-width:100%; height:auto;
}
.dk-inner .dk-content .com-content-article.item-page > .item-image figcaption {
 margin-top:10px; color:#65717a; font-size:.85rem;
}
.dk-inner .dk-content .item-page :is(.com-content-article__body, .article-body) > p { margin:0 0 1.25rem; }
.dk-inner .dk-content .item-page :is(.com-content-article__body, .article-body) > :is(h2,h3,h4),
.dk-inner .dk-content .item-page > :is(h2,h3,h4) { font-weight:500; line-height:1.25; margin:38px 0 20px; }
.dk-inner .dk-content .item-page :is(.com-content-article__body, .article-body) > :is(h2,h3,h4):first-child { margin-top:0; }
.dk-inner .dk-content .item-page :is(.com-content-article__body, .article-body) > :is(h2,h3,h4) + p { margin-top:0; }
.dk-sidebar { min-width:0; }
.dk-footer { flex-shrink:0; margin-top:auto; background:var(--dk-dark); color:#fff; }
.dk-footer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding-block:30px; align-items:start; font-size:.86rem; }
.dk-footer-grid > div { align-self:start; margin-top:0 !important; padding-top:0 !important; }
.dk-footer-grid > div :is(div,p):first-child { margin-top:0 !important; padding-top:0 !important; }
.dk-footer p { margin:0 0 7px; }
.dk-footer a { color:#9ce4fb; }
.dk-footer-center { text-align:center; }
.dk-footer-right { text-align:right; }
.dk-footer img { max-width:100%; height:auto; }
@media (max-width:900px) {
 .dk-header-inner { min-height:90px; grid-template-columns:1fr auto; grid-template-rows:auto auto; gap:5px 15px; }
 .dk-brand { grid-row:1; }
 .dk-header-extra { grid-column:1; grid-row:2; justify-self:start; align-self:start; padding-bottom:8px; }
 .dk-menu-toggle { display:flex; grid-column:2; grid-row:1; position:relative; z-index:52; flex-direction:column; justify-content:center; gap:5px; width:44px; height:44px; padding:9px; background:#fff; border:1px solid #cbd4d7; border-radius:3px; cursor:pointer; }
 .dk-menu-toggle span { display:block; width:100%; height:2px; background:var(--dk-ink); transition:transform .25s ease, opacity .25s ease; }
 .dk-menu-toggle[aria-expanded="true"] { position:fixed; top:16px; right:16px; background:transparent; border-color:#ffffff70; }
 .dk-menu-toggle[aria-expanded="true"] span { background:#fff; }
 .dk-menu-toggle[aria-expanded="true"] span:first-child { transform:translateY(7px) rotate(45deg); }
 .dk-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }
 .dk-menu-toggle[aria-expanded="true"] span:last-child { transform:translateY(-7px) rotate(-45deg); }
 .dk-main-menu { display:block; position:fixed; z-index:51; inset:0; width:100%; height:100vh; height:100dvh; overflow-y:auto; overscroll-behavior:contain; padding:78px max(20px,calc((100vw - 600px)/2)) 35px; background:rgba(30,31,44,.92); opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-12px); transition:opacity .25s ease, transform .25s ease, visibility .25s ease; }
 .dk-main-menu.dk-open { opacity:1; visibility:visible; pointer-events:auto; transform:none; }
 body.dk-menu-open { overflow:hidden; }
 .dk-main-menu > ul, .dk-main-menu > div > ul, .dk-main-menu > div > div > ul, .dk-main-menu ul.mod-menu { display:block !important; width:100%; }
 .dk-main-menu li { display:flex; flex-wrap:wrap; align-items:stretch; border-bottom:1px solid #ffffff29; }
 .dk-main-menu li > a { flex:1; min-width:0; color:#fff !important; background:transparent !important; padding:15px 10px; }
 .dk-main-menu li > a:hover, .dk-main-menu li > a:focus-visible, .dk-main-menu li:is(.active,.current) > a { color:#fff !important; background:#ffffff1c !important; }
 .dk-main-menu li > a::before { display:none; }
 .dk-main-menu li.dk-has-submenu > a::after { display:none; }
 .dk-submenu-toggle { display:flex; align-items:center; justify-content:center; width:50px; color:#fff; background:transparent; border:0; border-left:1px solid #ffffff29; cursor:pointer; }
 .dk-submenu-toggle::after { content:""; width:9px; height:9px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translateY(-2px) rotate(45deg); transition:transform .25s ease; }
 .dk-submenu-toggle[aria-expanded="true"]::after { transform:translateY(2px) rotate(225deg); }
 .dk-submenu-toggle:hover, .dk-submenu-toggle:focus-visible { background:#ffffff24; }
 .dk-main-menu li > ul, .dk-main-menu li:hover > ul, .dk-main-menu li:focus-within > ul { display:none; flex:0 0 100%; position:static; min-width:0; opacity:1; visibility:visible; pointer-events:auto; transform:none; transition:none; box-shadow:none; padding-left:17px; background:#14223585; }
 .dk-main-menu li.dk-sub-open > ul, .dk-main-menu li.dk-sub-open:hover > ul, .dk-main-menu li.dk-sub-open:focus-within > ul { display:block; }
 .dk-hero-grid { grid-template-columns:minmax(0,1fr); }
 .dk-slider { order:-1; }
 .dk-home-rail { flex-direction:row; gap:20px; }
 .dk-vertical-menu, .dk-director { flex:1; }
}
@media (max-width:640px) {
 .dk-wrap { width:min(100% - 28px,var(--dk-width)); }
 .dk-brand img { max-width:200px; max-height:85px; }
 .dk-hero { padding:14px 0 20px; }
 .dk-home-rail { flex-direction:column; }
 .dk-content-grid, .dk-content-grid:has(.dk-sidebar) { grid-template-columns:1fr; padding-block:26px 35px; }
 .dk-inner .dk-article-heading { padding:30px 0 32px; margin-bottom:26px; }
 .dk-inner .dk-article-heading h1, .dk-inner .dk-article-heading h2 { font-size:clamp(1.75rem,7vw,2.5rem); }
 .dk-inner .dk-content .com-content-article.item-page > .item-image { float:none !important; width:min(100%,480px); margin:0 0 26px !important; }
 .dk-home .dk-content .items-leading > .blog-item:has(> .item-image) { grid-template-columns:minmax(0,1fr); row-gap:14px; }
 .dk-home .dk-content .items-leading > .blog-item { padding:30px 0 34px; }
 .dk-home .dk-content .items-leading > .blog-item > .item-content { grid-column:1; }
 .dk-content .blog-item { margin-bottom:30px; }
 .dk-category-banner { padding:28px 0 30px; }
 .dk-category-page .dk-content-grid { padding-top:25px; }
 .dk-inner .dk-content .com-content-category-blog .blog-item { margin-bottom:0; }
 .dk-inner .dk-content .com-content-category-blog .items-leading > .blog-item { padding:16px; }
 .dk-footer-grid { grid-template-columns:1fr; text-align:left; gap:18px; padding-block:25px; }
 .dk-footer-center, .dk-footer-right { text-align:left; }
}
@media (prefers-reduced-motion: reduce) {
 .dk-main-menu, .dk-main-menu a, .dk-main-menu a::before, .dk-main-menu li > ul, .dk-vertical-menu a, .dk-menu-toggle span, .dk-submenu-toggle::after, .dk-content .readmore a, .dk-content .readmore a::after, .dk-inner .dk-content .com-content-category-blog .blog-item > .item-image img { transition:none; }
}
