:root{--feature-gap: 1.25rem;--feature-min-width: 260px;--transition-duration: .2s;--card-radius: 10px;--card-padding: 2rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}body{font-family:Verdana,Geneva,sans-serif;margin:0;padding:0;background-color:var(--bg-color);color:var(--text-color);line-height:1.5;font-size:var(--font-size-base)}#container{width:85%;max-width:1400px;margin-inline:auto;padding-inline:10px;transition:width .3s ease-in-out,max-width .3s ease-in-out}.site-header{background-color:var(--header-bg-color, var(--bg-color));padding:12px 0 8px;margin-bottom:5px;display:flex;justify-content:space-between;align-items:flex-end;gap:10px}.site-header h1{font-size:var(--font-size-h1);font-weight:700;margin:0;padding:0;display:inline-flex;align-items:center}.site-header h1 a{color:var(--text-color);text-decoration:none;font-size:var(--font-size-h1);white-space:nowrap;vertical-align:middle;margin-inline-start:3px}.header-left{display:flex;align-items:flex-end;gap:5px}.header-text-content{display:flex;flex-direction:row;align-items:flex-end;gap:10px}.header-links{display:flex;position:static;align-items:flex-end;font-size:var(--font-size-small-val)!important;padding-top:0;flex-shrink:0;gap:8px}.header-links a{color:var(--link-color);text-decoration:none}.site-footer{margin-block-start:40px;margin-block-end:24px;text-align:center;font-size:var(--font-size-smaller);color:var(--text-muted-color)}.site-footer a{color:var(--text-muted-color);text-decoration:none}.site-footer a:hover{text-decoration:underline}main{padding-block-end:20px}.hero{padding-block:1.75rem 1.5rem}.hero h1{font-size:var(--font-size-h1);margin-block-start:0;margin-block-end:.75rem;letter-spacing:-.01em}.hero-intro{margin-block-end:.5rem;line-height:1.6;max-width:52em}.hero-detail{margin-block-end:.35rem;color:var(--text-muted-color);font-size:var(--font-size-smaller)}main a{color:var(--link-color);text-decoration:var(--link-hover-decor)}main a:visited{color:var(--link-visited-color)}.callout{margin-block-start:1rem;padding:.65rem .9rem;background-color:var(--highlight-bg-color);border-left:3px solid var(--accent-color);border-radius:0 6px 6px 0;font-size:var(--font-size-smaller);color:var(--text-muted-color);line-height:1.5}.callout a{font-weight:600}.section-card{background-color:var(--panel-bg-color);border:1px solid var(--border-color);border-radius:var(--card-radius);padding:var(--card-padding);margin-block:1.25rem;opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}.section-card[data-animate=visible]{opacity:1;transform:translateY(0)}.section-card:not([data-animate]){opacity:1;transform:none}.section-card h2{font-size:var(--font-size-h2);margin-block-start:0;margin-block-end:.5rem;padding-left:.75rem;border-left:3px solid var(--accent-color);color:var(--text-dark-color)}.section-desc{color:var(--text-muted-color);margin-block-end:1rem;margin-block-start:0;font-size:var(--font-size-smaller)}.views-grid{display:flex;flex-direction:column;gap:2rem}@media(min-width:1024px){.views-grid{flex-direction:row;align-items:flex-start}.views-grid>section{flex:1 1 0}}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--feature-min-width),1fr));gap:var(--feature-gap);margin-block:1rem}.feature{display:flex;flex-direction:column;margin:0;padding:1rem;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;transition:transform var(--transition-duration) ease,box-shadow var(--transition-duration) ease}.feature:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000014}.feature h3{font-size:var(--font-size-base);margin-top:0;margin-bottom:.5rem;color:var(--text-dark-color);font-weight:700}.feature-image-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;width:100%;display:block;cursor:pointer}.feature-image-btn:focus-visible{outline:2px solid rgba(var(--accent-color-rgb),.6);outline-offset:3px;border-radius:6px}.feature-image-btn img{width:100%;height:auto;border:1px solid var(--border-medium-color, var(--border-strong-color));background-color:var(--panel-bg-color);border-radius:6px;box-shadow:0 2px 8px #00000014;transition:box-shadow var(--transition-duration) ease}.feature-image-btn--match-search-height{aspect-ratio:320 / 223}.feature-image-btn--match-search-height img{width:100%;height:100%;object-fit:contain}.feature:hover .feature-image-btn img{box-shadow:0 4px 14px #0000001f}figcaption{margin-block-start:.6rem;max-width:100%;font-size:var(--font-size-smaller);color:var(--text-muted-color);line-height:1.5}figcaption ul{margin-block:.25rem 0;padding-inline-start:1.1rem}figcaption li{margin-block-end:.25rem;font-size:var(--font-size-smaller)}.back-link{margin-block-start:1.5rem;margin-block-end:0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:9999;opacity:0;transition:opacity var(--transition-duration) ease}.modal-overlay.visible{opacity:1}.modal-content{position:relative;background-color:var(--bg-color);padding:1rem;max-width:90vw;max-height:90vh;border-radius:8px;overflow:auto}.modal-image{max-width:100%;max-height:80vh}.modal-close{position:absolute;top:.5rem;right:.5rem;background-color:var(--bg-color);color:var(--text-color);border:1px solid var(--border-color);border-radius:50%;width:30px;height:30px;font-size:var(--font-size-base);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s ease}.modal-close:hover{background-color:var(--button-hover-bg-color)}.modal-caption{margin-block-start:1rem;color:var(--text-color);font-size:var(--font-size-smaller)}.mobile-only{display:none}.desktop-only{display:inline}@media(max-width:768px){body{font-size:var(--font-size-base)}#container{width:95%;max-width:none}.section-card{padding:1.25rem}.mobile-only{display:inline}.desktop-only{display:none}}@media(max-width:640px){.header-text-content{flex-direction:column;gap:4px;align-items:flex-start}.site-header{padding-left:5px;padding-right:5px}.header-left{align-items:flex-end}.header-left>img{margin-top:0;top:0!important}.site-header h1{margin-bottom:0;line-height:1.2;position:relative;top:2px}}@media(max-width:560px){:root{--card-padding: 1rem;--card-radius: 6px}.features{grid-template-columns:1fr}.feature:hover{transform:none}}html.dark-mode .feature{box-shadow:0 1px 4px #00000040}html.dark-mode .feature:hover{box-shadow:0 6px 20px #00000059}
