@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');:root{--ink:#172c35;--teal:#087c72;--muted:#667983;--line:#e1e9eb;--bg:#f4f7f8}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:15px/1.7 'DM Sans',sans-serif;background:#fff}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}.wrap{max-width:1160px;margin:auto;padding:0 26px}.top{background:#112b36;color:#d8e9e9;font-size:12px;padding:8px 0}.top .wrap{display:flex;justify-content:space-between}.head{border-bottom:1px solid var(--line);background:#fff}.head .wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-top:16px;padding-bottom:16px}.brand{display:flex;gap:13px;align-items:center;color:var(--ink)}.brand img{width:52px;height:52px;object-fit:contain}.brand b{font-size:22px;letter-spacing:1px}.brand small{display:block;font-size:11px;line-height:1.3;max-width:270px}nav{display:flex;gap:19px;flex-wrap:wrap}nav a{color:var(--ink);font-size:13px;font-weight:700}.hero{background:linear-gradient(110deg,#112e3b 0%,#123e4a 70%,#087c72 160%);color:white;padding:75px 0 85px}.eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-weight:700;font-size:11px;color:#75d2c5}h1,h2,h3{line-height:1.22}h1,h2{font-family:'Libre Baskerville',serif}h1{font-size:clamp(35px,4vw,59px);max-width:850px;margin:16px 0 22px}h2{font-size:29px}.hero p{max-width:660px;color:#d0e3e6;font-size:17px}.btn,button{display:inline-block;background:var(--teal);color:white;border:0;border-radius:4px;padding:12px 19px;font-weight:700;cursor:pointer}.btn.alt{background:white;color:#12333d}.hero .btn{margin:15px 12px 0 0}.section{padding:55px 0}.light{background:var(--bg)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{background:#fff;border:1px solid var(--line);padding:25px;border-radius:5px}.card h3{font-size:19px;margin-top:0}.card .meta,.meta{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.card p{color:#526a73}.split{display:grid;grid-template-columns:2fr 1fr;gap:35px}.article{border-bottom:1px solid var(--line);padding:22px 0}.article h3{margin:8px 0}.article a{color:var(--ink)}.article a:hover{color:var(--teal)}footer{background:#102c36;color:#c9d8dc;padding:45px 0;margin-top:50px}footer a{color:#d2eeea}input,textarea,select{width:100%;padding:11px;border:1px solid #c7d5da;border-radius:4px;margin:5px 0 17px;font:inherit}label{font-weight:700;font-size:13px}textarea{min-height:120px}.form{max-width:690px;margin:40px auto;padding:30px;border:1px solid var(--line);border-radius:5px}.notice{padding:12px 16px;background:#eaf7f4;border-left:4px solid var(--teal);margin:16px 0}.error{background:#fff1f0;border-color:#bd3d35}.tag{display:inline-block;background:#e9f3f2;color:#075e56;font-size:11px;padding:3px 8px;border-radius:3px}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.table th{background:#edf3f4}.actions{display:flex;gap:12px;flex-wrap:wrap}.actions form{margin:0}.prose{max-width:830px;line-height:1.9}.prose h2{margin-top:35px}.search{display:flex;gap:8px}.search input{margin:0}@media(max-width:800px){.head .wrap{display:block}nav{margin-top:18px}.grid,.split{grid-template-columns:1fr}.hero{padding:45px 0}.top .wrap{display:block}.table{font-size:12px}}/* IJUST additions: accessible and responsive shared components */
.skip-link{position:absolute;left:-9999px;top:0;background:#fff;padding:12px;z-index:99}.skip-link:focus{left:10px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}.page-heading{padding:52px 0 20px;background:#f4f7f8}.page-heading h1{font-size:clamp(30px,4vw,44px)}.article-list{list-style:none;margin:0;padding:0}.article-list li{padding:24px 0;border-bottom:1px solid var(--line)}.article-list h2{font-size:23px}.form-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.small{font-size:13px;color:var(--muted)}.editor-grid{display:grid;grid-template-columns:230px 1fr;gap:30px}.sidebar{border-right:1px solid var(--line);padding-right:20px}.sidebar a{display:block;padding:9px 0}.card form{margin-top:18px}.card textarea{min-height:95px}@media(max-width:800px){.footer-grid,.editor-grid{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.table-scroll{overflow-x:auto}.editor-grid .card{margin-bottom:22px}.editor-grid .card h3{margin-top:12px}.form-actions form{margin:0}

/* Mobile navigation: isolated responsive enhancement */
.mobile-menu-toggle { display:none; align-items:center; justify-content:center; gap:10px; padding:10px 14px; border:1px solid #d2dee3; border-radius:8px; background:#fff; color:#102f3b; font:inherit; font-weight:700; cursor:pointer; }
.menu-toggle-bars { display:flex; flex-direction:column; gap:4px; }
.menu-toggle-bars span { display:block; width:20px; height:2px; border-radius:2px; background:currentColor; }
@media (max-width: 768px) {
  .head .wrap { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; }
  .head .brand { min-width:0; flex:1 1 190px; }
  .head .brand img { flex-shrink:0; }
  .mobile-menu-toggle { display:inline-flex; flex-shrink:0; }
  .head .site-navigation { display:none; flex:0 0 100%; width:100%; margin:0; padding:8px 0 4px; flex-direction:column; align-items:stretch; gap:0; border-top:1px solid #e2e9ed; }
  .head .site-navigation.is-open { display:flex; }
  .head .site-navigation a { display:block; width:100%; padding:12px 14px; border-radius:6px; }
  .head .site-navigation a:focus-visible, .mobile-menu-toggle:focus-visible { outline:3px solid #008c95; outline-offset:2px; }
  .top .wrap { display:flex; flex-wrap:wrap; gap:3px 12px; }
  .top .wrap span { overflow-wrap:anywhere; }
}
@media (min-width: 769px) {
  .head .site-navigation { display:flex; }
}

/* Editorial page spacing and responsive footer - November 2026 */
.page-heading { padding: 56px 0 42px; }
.page-heading .wrap { max-width: 1160px; }
.page-heading h1 { margin: 0 0 14px; max-width: 100%; font-size: clamp(32px, 3.2vw, 46px); }
.page-heading p { margin: 0; max-width: 800px; color: #536b75; font-size: 16px; }
.section { padding: 54px 0 72px; }
.section > .wrap.prose { max-width: 1160px; width: 100%; margin: 0 auto; padding-left: 26px; padding-right: 26px; }
.prose { line-height: 1.8; }
.prose h2 { font-size: clamp(23px, 2.1vw, 29px); margin: 0 0 14px; }
.prose h2:not(:first-child) { margin-top: 38px; }
.prose p { max-width: 880px; margin: 0 0 22px; font-size: 16px; color: #344b56; }
.prose .btn { margin-top: 8px; }
.site-footer { margin-top: 0; padding: 56px 0 0; background: #102c36; color: #d5e3e6; }
.site-footer .footer-grid { display: grid; grid-template-columns: minmax(0,1.7fr) minmax(0,1fr) minmax(0,1fr); gap: 44px; align-items: start; }
.site-footer .footer-title { margin: 0 0 18px; color: #fff; font: 700 17px/1.4 'DM Sans',sans-serif; }
.site-footer .footer-about p { margin: 0 0 12px; max-width: 360px; font-size: 14px; line-height: 1.8; }
.site-footer .footer-nav { display: block; margin: 0; padding: 0; }
.site-footer .footer-links { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.site-footer .footer-links li { margin: 0; padding: 0; }
.site-footer .footer-links a { display: inline-block; color: #d5e3e6; font-size: 14px; font-weight: 500; line-height: 1.5; }
.site-footer .footer-links a:hover { color: #fff; }
.site-footer .footer-bottom { margin-top: 48px; padding-top: 20px; padding-bottom: 22px; border-top: 1px solid rgba(255,255,255,.16); display: flex; justify-content: space-between; gap: 14px; font-size: 12px; color: #b5cbd0; }
@media (max-width: 768px) {
 .page-heading { padding: 38px 0 32px; }
 .section { padding: 36px 0 52px; }
 .section > .wrap.prose { padding-left: 20px; padding-right: 20px; }
 .wrap { padding-left: 20px; padding-right: 20px; }
 .prose p { font-size: 15px; }
 .site-footer { padding-top: 42px; }
 .site-footer .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px 20px; }
 .site-footer .footer-about { grid-column: 1 / -1; }
 .site-footer .footer-bottom { margin-top: 32px; flex-direction: column; }
}
@media (max-width: 420px) {
 .site-footer .footer-grid { grid-template-columns: 1fr; }
 .site-footer .footer-about { grid-column: auto; }
}

/* Stable navigation: native details/summary works without JavaScript */
.head .mobile-nav-disclosure { display:none !important; }
.head .site-navigation { display:flex; align-items:center; }
@media (max-width: 768px) {
  .head .wrap { display:flex; flex-wrap:wrap; align-items:center; }
  .head .site-navigation { display:none !important; }
  .head .mobile-nav-disclosure { display:block !important; flex:0 0 auto; margin-left:auto; position:relative; }
  .mobile-nav-disclosure > summary { display:flex; align-items:center; gap:10px; list-style:none; padding:10px 14px; background:#087c72; color:#fff; border-radius:5px; cursor:pointer; font-weight:700; }
  .mobile-nav-disclosure > summary::-webkit-details-marker { display:none; }
  .mobile-nav-disclosure[open] { flex-basis:100%; order:3; margin:0; }
  .mobile-nav-disclosure[open] > summary { margin-left:auto; width:max-content; }
  .mobile-nav-disclosure .mobile-nav-links { display:none; }
  .mobile-nav-disclosure[open] .mobile-nav-links { display:flex !important; flex-direction:column; gap:0; width:100%; padding:8px 0; border-top:1px solid #dbe6e9; background:#fff; }
  .mobile-nav-links a { display:block; color:#172c35; padding:12px 14px; border-bottom:1px solid #edf1f2; font-weight:700; }
}
