:root{--ink:#222;--soft:#666;--line:#c8c8d4;--tint:#f3f3f8;--blue:#352879;--blue-hi:#6c5eb5;--link:#2a2fb0;--visited:#6a2a9c;--sans:Verdana, Tahoma, "DejaVu Sans", Arial, sans-serif;--page:880px}*{box-sizing:border-box}html{background:#fff}body{color:var(--ink);font:13px/1.5 var(--sans);background:#fff;margin:0}a{color:var(--link)}a:visited{color:var(--visited)}a:hover{color:#c0392b}:focus-visible{outline:2px solid var(--blue-hi);outline-offset:2px}.site{max-width:var(--page);margin:0 auto;padding:0 16px 16px}.icon{flex:none}.topbar{color:var(--soft);background:var(--tint);border:1px solid var(--line);border-top:0;justify-content:space-between;gap:12px;padding:3px 8px;font-size:12px;display:flex}.masthead{padding:14px 0 10px}.masthead.compact{padding:10px 0 8px}.logo{text-decoration:none;display:inline-block}.logo:visited{color:inherit}.logo-img{width:384px;height:36px;display:block}.logo-stripes{background:linear-gradient(#c0392b 0 25%,#e67e22 25% 50%,#f1c40f 50% 75%,#6c5eb5 75%);height:8px;margin-top:6px;display:block}.compact .logo-img{width:288px;height:27px}.compact .logo-stripes{height:4px;margin-top:5px}.skip{position:absolute;left:-999px}.skip:focus{border:1px solid var(--blue);background:#fff;padding:4px 8px;top:8px;left:8px}.status{color:var(--soft);margin:0 0 8px;font-size:12px}.tabs{border-bottom:3px solid var(--blue);grid-template-columns:repeat(6,1fr);gap:3px;display:grid}.tabs a,.tabs a:visited{text-align:center;color:var(--blue);border:1px solid var(--line);background:linear-gradient(#fff,#dfdfea);border-bottom:0;padding:4px 2px;font:700 12.5px/1.4 Arial,Helvetica,sans-serif;text-decoration:none}.tabs a:hover{background:linear-gradient(#fff,#cfcfe6)}.tabs a.on,.tabs a.on:visited{color:#fff;background:linear-gradient(180deg, var(--blue-hi), var(--blue));border-color:var(--blue)}.box{border:1px solid var(--line);background:#fff}.bar{color:#fff;background:linear-gradient(180deg, var(--blue-hi), var(--blue));margin:0;padding:3px 8px;font:700 12.5px/1.4 Arial,Helvetica,sans-serif}.box-body{padding:8px 10px}.front{grid-template-columns:190px 1fr;align-items:start;gap:10px;margin-top:10px;display:grid}.menus,.frontmain{flex-direction:column;gap:10px;min-width:0;display:flex}.lead{margin:0}.menubox ul{margin:0;padding:6px 8px;list-style:none}.menubox li{align-items:center;gap:7px;padding:1.5px 0;display:flex}.menus .thumb{aspect-ratio:8/5;width:100%;height:auto}.shotbox{padding:8px;font-size:12px;display:block}.facts{margin:0;padding:6px 10px}.facts div{justify-content:space-between;gap:8px;padding:1.5px 0;display:flex}.facts dt{color:var(--soft)}.facts dd{text-align:right;margin:0;font-weight:700}.webbutton{width:88px;height:31px;image-rendering:pixelated;margin-bottom:5px;display:block}.small{color:var(--soft);margin:0;font-size:12px}.feature{color:inherit;text-decoration:none;display:block}.feature img{width:100%;height:auto;display:block}.feature-cap{border-top:1px solid var(--line);background:var(--tint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding:6px 10px;display:flex}.feature-cap b{color:var(--link);font-size:14px;display:block}.feature:hover b{text-decoration:underline}.panel{border:1px solid var(--line);margin-top:10px;padding:12px clamp(12px,3vw,20px)}.panel h1{color:var(--blue);border-bottom:1px solid var(--line);margin:0 0 8px;padding-bottom:3px;font:700 20px/1.25 Arial,Helvetica,sans-serif}.panel p{margin:0 0 8px}.crumbs{font-size:12px}.row{border-bottom:1px solid var(--line);grid-template-columns:128px 1fr;align-items:start;gap:12px;padding:10px 0;display:grid}.row:first-child{padding-top:2px}.row:last-child{border-bottom:0;padding-bottom:2px}.row h3{font:bold 14px/1.3 var(--sans);margin:0 0 1px}.row .meta{color:var(--soft);margin:0 0 4px;font-size:11.5px}.row .meta a{color:inherit}.row p{margin:0}.row .more{white-space:nowrap}.row-thumb{text-decoration:none;display:block}.thumb{object-fit:cover;background:#000;border:1px solid #888;width:128px;height:80px;display:block}a:hover>.thumb{border-color:var(--blue-hi);outline:1px solid var(--blue-hi)}.plate{text-align:center;color:var(--blue);background:var(--tint);border-color:var(--line);flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:6px;font:700 11.5px/1.2 Arial,sans-serif;display:flex}.grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.grid a{color:var(--ink);font-size:12px;text-decoration:none;display:block}.grid .thumb{aspect-ratio:8/5;width:100%;height:auto}.grid b{color:var(--link);margin-top:3px;display:block}.grid a:hover b{text-decoration:underline}.prose{max-width:680px;font-size:14px;line-height:1.6}.prose h2{color:var(--blue);margin:20px 0 4px;font:700 16px/1.3 Arial,Helvetica,sans-serif}.prose h3{color:var(--blue);margin:16px 0 4px;font:700 14px/1.3 Arial,Helvetica,sans-serif}.prose p,.prose ul,.prose ol{margin:0 0 11px}.prose img{border:1px solid #888;max-width:100%;height:auto;display:block}.prose pre{border:1px solid var(--line);padding:8px 10px;font-size:12.5px;overflow-x:auto;background:var(--tint)!important;color:var(--ink)!important}.prose code{font:.88em Consolas,Menlo,monospace}.prose :not(pre)>code{background:var(--tint);padding:1px 3px}.prose blockquote{border-left:3px solid var(--blue-hi);color:var(--soft);margin:0 0 11px;padding:1px 0 1px 12px}.byline{color:var(--soft);font-size:12px}.proj{grid-template-columns:1fr 230px;align-items:start;gap:16px;display:grid}.proj .prose{min-width:0}.infobox dl{margin:0}.infobox dt{color:var(--blue);font-weight:700}.infobox dd{margin:0 0 7px}.infobox .btnrow{margin:2px 0 0}.subhead{color:var(--blue);border-bottom:1px solid var(--line);margin:14px 0 6px;padding-bottom:2px;font:700 13.5px/1.3 Arial,Helvetica,sans-serif}.shots{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;display:grid}.shots .thumb{aspect-ratio:8/5;width:100%;height:auto}.btnrow{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.btn,.btn:visited{cursor:pointer;color:var(--ink);background:linear-gradient(#fff,#d9d9e4);border:1px solid #77778c;border-radius:3px;padding:3px 11px;font:700 12px/1.5 Arial,Helvetica,sans-serif;text-decoration:none;display:inline-block}.btn:hover{color:var(--ink);background:linear-gradient(#fff,#c6c6dc)}.btn-spin{background:linear-gradient(#ffe88a,#f5b81f);border-color:#b9770e;padding:7px 14px;font-size:14px}.feature:hover .btn-spin{background:linear-gradient(#fff2b8,#ffc933)}.cv{max-width:700px;margin:0 auto}.panel .cv-name{text-align:center;border:0;margin:0;padding:0;font-size:26px}.cv-head{text-align:center;font-size:14px;margin:1px 0!important}.cv-contact{text-align:center;color:var(--soft);font-size:12.5px}.cv-contact span+span:before{content:" · "}.cv h2{color:var(--blue);border-bottom:1px solid var(--blue);margin:14px 0 5px;padding-bottom:1px;font:700 13.5px/1.3 Arial,Helvetica,sans-serif}.cv h3{margin:8px 0 1px;font-size:13px}.cv h3 small{color:var(--soft);font-size:12px;font-weight:400}.cv ul{margin:2px 0 6px;padding-left:18px}.todo{color:#c0392b;border:1px dashed #c0392b;padding:4px 8px;font-size:12px}.foot{text-align:center;color:var(--soft);border-top:1px solid var(--line);margin-top:10px;padding-top:6px;font-size:11.5px}@media (width<=720px){.front{grid-template-columns:1fr}.frontmain{order:-1}.tabs{grid-template-columns:repeat(3,1fr)}.row{grid-template-columns:100px 1fr}.thumb{width:100px;height:63px}.grid .thumb,.shots .thumb,.menus .thumb{height:auto}.proj{grid-template-columns:1fr}.logo-img,.compact .logo-img{width:288px;height:27px}.shots{grid-template-columns:repeat(2,1fr)}}@media print{.topbar,.masthead,.status,.tabs,.foot,.noprint{display:none!important}.site{max-width:none;padding:0}.panel{border:0;margin:0;padding:0}.cv{max-width:none;font-size:11pt}.panel .cv-name,.cv h2{color:#000;border-color:#000}a,a:visited{color:#000;text-decoration:none}.cv-contact a[href^=http]:after{content:" " attr(href)}}
