*{margin:0;padding:0;box-sizing:border-box}
:root{--primary:#0B5B5C;--primary-dark:#053D3D;--primary-light:#1E7B7C;--accent:#8B2820;--text:#1A1A1A;--text-light:#5C5C5C;--bg:#FAFAF7;--bg-warm:#F2F0EA;--bg-card:#FFFFFF;--border:#D8D5CE;--shadow:0 1px 2px rgba(20,20,20,0.06)}
@font-face{font-family:'Source Serif';font-style:normal;font-weight:400;src:local('Source Serif Pro'),local('SourceSerifPro-Regular')}
body{font-family:'Source Serif Pro','Source Serif','Charter','Georgia',serif;color:var(--text);line-height:1.65;background:var(--bg);font-feature-settings:"liga","kern","onum"}
a{color:var(--primary);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--primary-dark);text-decoration-thickness:2px}
img{max-width:100%;height:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(250,250,247,0.97);border-bottom:1px solid var(--border);backdrop-filter:blur(8px)}
.header-inner{max-width:1100px;margin:0 auto;padding:0.85rem 1.5rem;display:flex;align-items:center;justify-content:space-between}
.site-logo{font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-weight:600;font-size:0.95rem;color:var(--text);letter-spacing:0.02em;text-transform:lowercase}.site-logo span{color:var(--accent);font-weight:700}.site-logo:hover{text-decoration:none}
.main-nav{display:flex;gap:1.5rem}.main-nav>a{color:var(--text);font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:0.78rem;font-weight:400;padding:0.2rem 0;border-bottom:1px solid transparent;transition:border-color .15s;letter-spacing:0.02em;text-transform:lowercase;text-decoration:none}.main-nav>a:hover,.main-nav>a.active{color:var(--primary);border-bottom-color:var(--primary);text-decoration:none}
.menu-toggle{display:none;background:none;border:1px solid var(--border);cursor:pointer;width:32px;height:24px;position:relative;border-radius:2px}.menu-toggle span,.menu-toggle::before,.menu-toggle::after{display:block;width:18px;height:1.5px;background:var(--text);position:absolute;left:6px;transition:0.2s}.menu-toggle span{top:11px}.menu-toggle::before{content:'';top:6px}.menu-toggle::after{content:'';top:16px}
.mobile-nav{display:none;flex-direction:column;background:var(--bg);border-top:1px solid var(--border);padding:0.5rem 1.5rem}.mobile-nav.open{display:flex}.mobile-nav a{padding:0.6rem 0;color:var(--text);font-size:0.95rem;border-bottom:1px solid var(--border);transition:.15s;text-decoration:none}.mobile-nav a:hover{color:var(--primary);padding-left:.5rem;text-decoration:none}
.hero{position:relative;min-height:300px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--bg-warm);border-bottom:1px solid var(--border)}.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:grayscale(0.4) brightness(0.92) contrast(1.05);opacity:0.18}.hero-content{position:relative;z-index:2;text-align:left;max-width:760px;padding:3rem 1.5rem;color:var(--text);width:100%}
.hero-badge{display:inline-block;background:transparent;color:var(--accent);font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:0.7rem;font-weight:500;text-transform:uppercase;letter-spacing:0.18em;padding:0.2rem 0;margin-bottom:1.25rem;border-bottom:1px solid var(--accent)}
.hero h1{font-family:'Source Serif Pro','Source Serif','Charter','Georgia',serif;font-size:2.5rem;font-weight:600;line-height:1.15;margin-bottom:0.85rem;letter-spacing:-0.015em;color:var(--text)}.hero p{font-size:1.08rem;line-height:1.55;opacity:0.85;max-width:640px;color:var(--text-light)}
.hero-cta{display:inline-flex;align-items:center;gap:0.5rem;background:var(--primary);color:var(--bg);padding:0.7rem 1.5rem;border-radius:2px;font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-weight:500;font-size:0.82rem;text-transform:uppercase;letter-spacing:0.06em;margin-top:1.5rem;transition:background 0.15s;text-decoration:none;border:1px solid var(--primary)}.hero-cta:hover{background:var(--primary-dark);text-decoration:none;color:var(--bg);border-color:var(--primary-dark)}.hero-cta svg{width:14px;height:14px}
.breadcrumb{max-width:1100px;margin:0 auto;padding:0.85rem 1.5rem;font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:0.74rem;color:var(--text-light);text-transform:lowercase;letter-spacing:0.02em}.breadcrumb a{color:var(--text-light);text-decoration:none}.breadcrumb a:hover{color:var(--primary);text-decoration:underline}.breadcrumb span{margin:0 0.45rem;opacity:0.55}
.page-layout{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 3rem;display:grid;grid-template-columns:1fr 280px;gap:3rem}
.article-content{min-width:0;font-size:1.02rem;line-height:1.7}.article-content h2{font-family:'Source Serif Pro','Source Serif','Charter','Georgia',serif;font-size:1.55rem;font-weight:600;color:var(--text);margin:2.5rem 0 0.85rem;padding-bottom:0.4rem;border-bottom:1px solid var(--border);letter-spacing:-0.01em}.article-content h2:first-child{margin-top:0}.article-content h3{font-family:'Source Serif Pro','Source Serif','Charter','Georgia',serif;font-size:1.18rem;font-weight:600;margin:1.75rem 0 0.55rem;color:var(--text);letter-spacing:-0.005em}.article-content p{margin-bottom:1.1rem;color:var(--text)}
.content-image{margin:2rem 0;border-radius:2px;overflow:hidden;border:1px solid var(--border);background:var(--bg-card)}.content-image img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover;filter:grayscale(0.15)}.content-image figcaption{padding:0.6rem 1rem;font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:0.74rem;color:var(--text-light);background:var(--bg-warm);font-style:normal;border-top:1px solid var(--border);text-transform:lowercase;letter-spacing:0.02em}
.highlight-box{background:var(--bg-warm);border-left:3px solid var(--accent);padding:1.1rem 1.4rem;border-radius:0;margin:1.75rem 0}.highlight-box p{margin-bottom:0.55rem;font-size:0.97rem;color:var(--text)}.highlight-box p:last-child{margin-bottom:0}
.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:1.5rem 0}.benefit-card{background:var(--bg-card);border-radius:2px;padding:1.25rem;border:1px solid var(--border)}.benefit-card .benefit-icon{font-size:1.5rem;margin-bottom:0.5rem;color:var(--primary)}.benefit-card h4{font-family:'Source Serif Pro','Source Serif','Charter','Georgia',serif;font-size:1.02rem;font-weight:600;margin-bottom:0.4rem;color:var(--text)}.benefit-card p{font-size:0.88rem;color:var(--text-light);margin:0;line-height:1.55}
.ad-space,.ad-space-inline{display:none}
.sidebar{display:flex;flex-direction:column;gap:1.75rem}.sidebar-widget{background:transparent;border-radius:0;padding:0;border:none;border-top:2px solid var(--text);padding-top:0.75rem}.sidebar-widget h3{font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:0.72rem;font-weight:600;margin-bottom:0.85rem;color:var(--text);text-transform:uppercase;letter-spacing:0.08em}.sidebar-nav{display:flex;flex-direction:column;gap:0.05rem}.sidebar-nav a{display:block;padding:0.35rem 0;font-size:0.92rem;color:var(--text);border-bottom:1px solid var(--border);transition:0.15s;text-decoration:none;line-height:1.4}.sidebar-nav a:last-child{border-bottom:none}.sidebar-nav a:hover{color:var(--primary);padding-left:0.35rem;text-decoration:none}
.site-footer{background:var(--bg-warm);color:var(--text);margin-top:4rem;border-top:2px solid var(--text)}.footer-inner{max-width:1100px;margin:0 auto;padding:2.5rem 1.5rem 1.75rem;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2.5rem}.footer-brand .site-logo{font-size:1rem;margin-bottom:0.5rem;display:inline-block}.footer-brand p{font-size:0.86rem;line-height:1.6;color:var(--text-light);margin-top:0.5rem}.footer-col h3{font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:0.72rem;text-transform:uppercase;letter-spacing:0.08em;color:var(--text);margin-bottom:0.75rem;font-weight:600}.footer-col a{display:block;font-size:0.88rem;color:var(--text);padding:0.22rem 0;text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:2px}.footer-col a:hover{color:var(--primary);text-decoration-color:var(--primary)}.footer-bottom{max-width:1100px;margin:0 auto;padding:1rem 1.5rem;border-top:1px solid var(--border);font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:0.72rem;color:var(--text-light);display:flex;justify-content:space-between;flex-wrap:wrap;gap:0.5rem;text-transform:lowercase}

.article-content ul,.article-content ol{margin:0 0 1.2rem 1.5rem;font-size:1.02rem;color:var(--text)}.article-content li{margin-bottom:.45rem;line-height:1.65}
.article-content p a,.article-content li a,.article-content td a,.article-content th a{color:var(--primary);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
.article-content p a:hover,.article-content li a:hover,.article-content td a:hover,.article-content th a:hover{color:var(--primary-dark);text-decoration-thickness:2px}
.article-content table{width:100%;border-collapse:collapse;margin:1.75rem 0;font-size:.92rem;border:1px solid var(--border);background:var(--bg-card)}
.article-content thead{background:var(--text);color:var(--bg)}
.article-content th{padding:.65rem .85rem;text-align:left;font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-weight:500;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--text)}
.article-content td{padding:.6rem .85rem;border-bottom:1px solid var(--border);color:var(--text)}
.article-content tbody tr:nth-child(even){background:var(--bg-warm)}
.article-content tbody tr:hover{background:rgba(11,91,92,0.06)}
@media(max-width:900px){.page-layout{grid-template-columns:1fr;gap:2rem}.article-content table{display:block;overflow-x:auto;white-space:nowrap}.article-content th,.article-content td{white-space:normal;min-width:120px}.footer-inner{grid-template-columns:1fr}.main-nav{display:none}.menu-toggle{display:block}.hero h1{font-size:1.9rem}}

.skip-to:focus{position:fixed!important;left:16px;top:16px;opacity:1!important;pointer-events:auto!important;z-index:9999;background:var(--text);color:var(--bg);border-radius:2px;padding:8px 16px;outline:2px solid var(--accent);outline-offset:2px;font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:13px;text-decoration:none;text-transform:uppercase;letter-spacing:0.04em}

a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:1px}
button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.author-byline{max-width:1100px;margin:0 auto;padding:.85rem 1.5rem;font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:.78rem;color:var(--text-light);display:flex;align-items:center;gap:.6rem;text-transform:lowercase;letter-spacing:0.02em}
.author-byline .byline-avatar{background:var(--text);color:var(--bg);width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:.72rem;text-transform:uppercase}
.author-byline strong{color:var(--text);font-weight:600}
.last-reviewed{font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:.76rem;color:var(--text-light);margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border);text-transform:lowercase;letter-spacing:0.02em}
.faq-section{margin:1.75rem 0}
.faq-section h3{color:var(--text);margin-top:1.5rem;font-family:'Source Serif Pro','Source Serif','Charter','Georgia',serif}
.faq-section p{color:var(--text)}
.related-articles{margin-top:2.5rem;padding:1.25rem 1.4rem;background:transparent;border-radius:0;border:none;border-top:2px solid var(--text);border-bottom:1px solid var(--border)}
.related-articles h3{font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:.78rem;margin-bottom:.85rem;margin-top:0;color:var(--text);text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.related-articles a{display:block;padding:.55rem 0;border-bottom:1px solid var(--border);text-decoration:none;color:var(--text);transition:color .15s}
.related-articles a:last-child{border-bottom:none}
.related-articles a:hover{color:var(--primary);text-decoration:underline}
.related-articles strong{color:var(--text)}
.table-responsive{overflow-x:auto;margin:1.5rem 0}
.article-toc{background:var(--bg-warm);border:none;border-left:3px solid var(--text);border-radius:0;padding:1rem 1.4rem;margin:1.75rem auto;max-width:1100px}
.article-toc h3{font-family:'IBM Plex Mono','SFMono-Regular','Menlo',monospace;font-size:.74rem;font-weight:600;color:var(--text);margin-bottom:.6rem;text-transform:uppercase;letter-spacing:.06em}
.article-toc ol{margin:0 0 0 1.2rem;font-size:.93rem;color:var(--text)}
.article-toc li{margin-bottom:.28rem;line-height:1.5}
.article-toc a{color:var(--text);text-decoration:none}
.article-toc a:hover{text-decoration:underline;color:var(--primary)}
.author-bio-box{display:flex;gap:1.25rem;align-items:flex-start;background:var(--bg-warm);border:1px solid var(--border);border-radius:2px;padding:1.25rem 1.5rem;margin:2.5rem 0}
.author-bio-box .author-info h3{font-family:'Source Serif Pro','Source Serif','Charter','Georgia',serif;font-size:1.02rem;font-weight:600;color:var(--text);margin-bottom:.3rem}
.author-bio-box .author-info p{font-size:.9rem;color:var(--text);line-height:1.55;margin:0}
.author-bio-box .author-info a{color:var(--primary);font-size:.9rem;text-decoration:underline}
@media(max-width:600px){.author-bio-box{flex-direction:column;align-items:center;text-align:center}}
@media print {
  .site-header, .mobile-nav, .menu-toggle, .sidebar, .site-footer, .hero-cta, .hero-badge { display: none !important; }
  .hero { min-height: auto !important; padding: 20px 0; }
  .hero-bg { display: none; }
  .hero-content { position: static; color: #000; text-shadow: none; }
  .page-layout { display: block; }
  .article-content { max-width: 100%; }
  body { font-size: 11pt; line-height: 1.5; color: #000; background: #fff; }
  a { color: #000; text-decoration: underline; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 9pt; }
  .comparison-table { font-size: 9pt; }
  .benefits-grid { display: block; }
  .benefit-card { border: 1px solid #ccc; margin-bottom: 8px; page-break-inside: avoid; }
  .highlight-box { border: 1px solid #999; background: #f5f5f5 !important; }
  img { max-width: 100%; }
  .related-articles { page-break-before: always; }
}
.editorial-note{font-family:'Source Serif Pro','Source Serif','Charter','Georgia',serif;font-size:.92rem;color:var(--text);font-style:italic;margin:1.75rem 0 .5rem;padding:.85rem 1.1rem;background:var(--bg-warm);border-radius:0;border-left:3px solid var(--accent)}
.faq-item{border:0;border-top:1px solid var(--border);border-radius:0;background:transparent;padding:1.1rem 0;margin:0}
.faq-item:last-child{border-bottom:1px solid var(--border)}
.faq-item h3{margin-top:0;margin-bottom:.4rem}
.faq-item p{margin-bottom:.4rem}
.faq-item p:last-child{margin-bottom:0}
.methodology-box{margin:1.75rem auto 2rem;max-width:1100px;padding:1.1rem 1.35rem;border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:0;background:var(--bg-warm)}
.methodology-box h2,.methodology-box h3{margin-top:0;color:var(--primary)}
.editorial-observation{margin:1.75rem auto 2rem;max-width:1100px;padding:1.1rem 1.35rem;border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:0;background:var(--bg-warm)}
.editorial-observation h2,.editorial-observation h3{margin-top:0;color:var(--primary);font-size:1.15rem}
.editorial-observation p{margin-bottom:0;font-size:.95rem;line-height:1.65}
