/* SFS 2026-10-16 — V0.3 overrides, restricted to the independent review. */
body[data-visual-review] header{position:relative;display:flex;align-items:center;gap:40px;padding:36px 0 20px;border:0}
body[data-visual-review] header .brand{flex:none}
body[data-visual-review] header .header-navigation{display:flex;flex-wrap:nowrap;align-items:center;gap:18px;min-width:0}
body[data-visual-review] header nav{font-family:'Review Condensed','Review Sans','Arial Narrow',sans-serif;font-size:16px;font-weight:700;letter-spacing:0;line-height:1.2;gap:18px;flex-wrap:nowrap;max-width:none;width:auto}
body[data-visual-review] header nav a{color:#252525;min-height:44px;display:flex;align-items:center;border:0;transition:color 150ms}
body[data-visual-review] header nav a:hover,body[data-visual-review] header nav a[aria-current=page]{color:#F06450}
body[data-visual-review] header .language-selector{position:absolute;right:0;top:0;margin:0;gap:5px;font-size:12px;line-height:1.3;align-items:center}
body[data-visual-review] header .language-selector a{min-height:28px;padding:0 3px;display:inline-flex;align-items:center}
body[data-visual-review] header .language-selector a[aria-current=page]{color:#F06450}
/* One stable border on the input; no displaced ring, default search bezel or parent focus layer. */
body[data-visual-review] .header-search,body[data-visual-review] .header-search:hover,body[data-visual-review] .header-search:focus-within{border:0;outline:none;box-shadow:none;background:transparent;border-radius:0;height:28px}
body[data-visual-review] .header-search input,body[data-visual-review] .header-search input:hover,body[data-visual-review] .header-search input:focus,body[data-visual-review] .header-search input:active{appearance:none;-webkit-appearance:none;outline:none;box-shadow:none;border:1px solid #858585;border-right:0;border-radius:0;background:#fff;color:#252525;min-width:0;height:28px;padding:3px 7px}
html.search-keyboard-focus body[data-visual-review] .header-search input:focus-visible{border-style:solid;border-color:#F06450;outline:none;box-shadow:none}
body[data-visual-review] .header-search button{appearance:none;-webkit-appearance:none;border:0;border-radius:0;outline:none;box-shadow:none;width:28px;height:28px}
body[data-visual-review] .header-search button:focus-visible{outline:1px solid #F06450;outline-offset:-2px;box-shadow:none}
body[data-visual-review] .header-search input::-webkit-search-decoration,body[data-visual-review] .header-search input::-webkit-search-results-button,body[data-visual-review] .header-search input::-webkit-search-results-decoration{display:none;appearance:none;-webkit-appearance:none}
body[data-visual-review].home-page .home-carousel{position:relative}
body[data-visual-review].home-page .carousel-media{aspect-ratio:16/9}
body[data-visual-review].home-page .carousel-media>img{object-fit:contain;object-position:center}
body[data-visual-review].home-page .hero-image-link{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:3;background:transparent;border:0;padding:0;cursor:pointer;color:white}
body[data-visual-review].home-page .hero-image-link:hover{background:transparent;filter:none;transform:none}
body[data-visual-review].home-page .hero-image-link:focus-visible{outline:2px solid #F06450;outline-offset:-4px}
body[data-visual-review].home-page .title-overlay{z-index:4;left:clamp(60px,5vw,80px);bottom:58px;width:calc(100% - 160px);pointer-events:none}
body[data-visual-review].home-page #happy-birthday .title-overlay{bottom:58px}
body[data-visual-review].home-page .overlay-year{margin-bottom:8px}
body[data-visual-review].home-page .carousel-media .carousel-arrow{z-index:5}
body[data-visual-review].home-page .carousel-media .carousel-indicators{position:absolute;z-index:5;left:50%;bottom:4px;transform:translateX(-50%);display:flex;gap:0;background:transparent;max-width:100%;width:max-content}
body[data-visual-review].home-page .carousel-media .carousel-indicators button{width:44px;min-width:44px;height:44px;background:transparent}
body[data-visual-review].home-page .carousel-media .carousel-indicators button span{border:1px solid white;box-shadow:0 0 2px rgba(0,0,0,.5);background:transparent;width:9px;height:9px}
body[data-visual-review].home-page .carousel-media .carousel-indicators button[aria-current=true] span{background:white}
body[data-visual-review].home-page .carousel-media .carousel-indicators button:focus-visible{outline:2px solid white;outline-offset:-5px}
body[data-visual-review].home-page #featured-now{margin-bottom:64px}
body[data-projects-index] .projects-heading{margin-bottom:24px}
body[data-projects-index] .year-navigation{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 40px;max-width:none;width:100%;font-family:'Review Condensed','Arial Narrow',sans-serif;font-size:16px;font-weight:700;line-height:1.2;letter-spacing:0}
body[data-projects-index] .year-navigation a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:36px;color:#252525;text-decoration:none}
body[data-projects-index] .year-navigation a span{display:block;transform:scale(1);transform-origin:center;transition:transform 200ms,color 200ms}
body[data-projects-index] .year-navigation a:hover span{transform:scale(1.5);color:#F06450}
body[data-projects-index] .year-navigation a:focus-visible{outline:1px solid #F06450;outline-offset:2px}
body[data-projects-index] .year-heading{margin-left:0;scroll-margin-top:24px}
body[data-projects-index] .year-heading:focus{outline:none}
body[data-projects-index] .project-cover{position:relative;display:block;aspect-ratio:4/3;padding:0;border:0;background:black;overflow:hidden;border-radius:0;cursor:pointer;text-align:inherit;appearance:none;-webkit-appearance:none}
body[data-projects-index] .project-cover img{width:100%;height:100%;display:block;object-fit:contain;object-position:center;transition:none}
body[data-projects-index] .project-cover:hover,body[data-projects-index] .project-cover:active,body[data-projects-index] .project-cover:hover img{background:black;filter:none;transform:none;opacity:1;text-decoration:none}
body[data-projects-index] .project-cover:focus-visible{outline:2px solid #F06450;outline-offset:4px}
body[data-visual-review] .pending-detail-dialog{max-width:480px;width:calc(100% - 48px);border:1px solid #E3E3E3;background:#fff;color:#252525;padding:28px;font:15px/1.7 Arial,'Review Sans',sans-serif}
body[data-visual-review] .pending-detail-dialog::backdrop{background:rgba(0,0,0,.45)}
body[data-visual-review] .pending-detail-dialog h2{font:700 20px/1.4 Arial,'Review Sans',sans-serif;letter-spacing:0;margin:0 0 20px}
body[data-visual-review] .pending-detail-dialog p{margin:0 0 16px}
body[data-visual-review] .pending-detail-dialog button{min-height:44px;color:#F06450}
@media(max-width:1100px){
 body[data-visual-review] header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 20px}
 body[data-visual-review] header .brand{grid-row:1;grid-column:1/-1}
 body[data-visual-review] header .header-navigation{grid-row:2;grid-column:1/-1;flex-wrap:wrap;gap:10px 20px}
 body[data-visual-review].home-page .title-overlay{left:112px;width:calc(100% - 224px)}
}
@media(max-width:700px){
 body[data-visual-review] header{padding:36px 0 14px;gap:8px 12px}
 body[data-visual-review] header .header-navigation{gap:8px 0}
 body[data-visual-review] header nav{width:100%;justify-content:space-between;gap:8px;font-size:16px;flex-wrap:wrap}
 body[data-visual-review] header .language-selector{top:0;right:0;font-size:12px}
 body[data-visual-review].home-page .carousel-media{aspect-ratio:3/2}
 body[data-visual-review].home-page .title-overlay{left:60px;bottom:46px;width:calc(100% - 116px)}
 body[data-visual-review].home-page #happy-birthday .title-overlay{bottom:calc(7.88% + 38px)}
 body[data-visual-review].home-page .overlay-year{margin-bottom:4px}
 body[data-visual-review].home-page .carousel-media .carousel-indicators{bottom:0}
 body[data-visual-review].home-page .carousel-media .carousel-indicators button{width:36px;min-width:36px;height:44px}
 body[data-visual-review].home-page #featured-now{margin-bottom:48px}
 body[data-projects-index] .year-navigation{gap:4px 12px;margin-bottom:32px}
}
@media(max-width:360px){body[data-visual-review].home-page .title-overlay{bottom:44px}body[data-visual-review].home-page #happy-birthday .title-overlay{bottom:calc(7.88% + 34px)}}
@media(prefers-reduced-motion:reduce){body[data-projects-index] .year-navigation a span{transition:none}html{scroll-behavior:auto}body[data-visual-review] *{transition:none!important}}

body[data-visual-review] header .language-selector{grid-column:auto;grid-row:auto}
body[data-projects-index].projects-page .page{padding:0 10%;max-width:none}
@media(max-width:700px){body[data-projects-index].projects-page .page{padding:0 5%}}
