/* Adapted from the supplied Youth / Image Wall Slider template by ex nihilo.
   Original typography, fullscreen photo wall, gradient and overlay navigation. */
.youth-site{font-family:Cleor,Arial,sans-serif;background:#fff;color:#111}
.youth-site .site-header{background:transparent;display:flex;justify-content:space-between;align-items:center;padding:35px 50px;text-align:left;position:relative;z-index:4;height:130px}
.youth-site .logo img{width:130px;height:55px}.navigation-toggle{display:flex;align-items:center;gap:20px;background:none;color:inherit;border:0;padding:12px 0;border-radius:0;text-transform:uppercase;letter-spacing:2px;font:600 11px Cleor,sans-serif}
.navigation-toggle i{display:block;width:30px;height:16px;border-top:2px solid;border-bottom:2px solid;position:relative}.navigation-toggle i:after{content:'';position:absolute;top:5px;right:0;width:20px;border-top:2px solid;transition:width .25s}.navigation-toggle:hover i:after{width:30px}
.menu-open{overflow:hidden}.navigation-dialog{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:60px 25px;background:#111;color:#fff;border:0;overflow:auto;z-index:100}.navigation-dialog::backdrop{background:#111}.navigation-dialog[open]{display:flex;flex-direction:column;align-items:center;justify-content:center}.navigation-dialog nav{display:flex;flex-direction:column;gap:18px;margin:0;text-align:center}.navigation-dialog nav a{position:relative;font:700 clamp(22px,4vh,35px)/1 Cleor,sans-serif;text-transform:uppercase;padding:0;color:#fff;border:0;width:fit-content;align-self:center}.navigation-dialog nav a:hover,.navigation-dialog nav a[aria-current=page]{color:var(--accent)}.navigation-dialog p{font:400 11px Cleor,sans-serif;letter-spacing:4px;text-transform:uppercase;margin:40px 0 0;color:#999}.menu-close{position:absolute;right:50px;top:38px;background:none;border:0;font:600 12px Cleor,sans-serif;letter-spacing:2px;text-transform:uppercase}
.youth-site main{max-width:1400px;padding-top:35px}.youth-site .project-heading{margin-bottom:65px}.youth-site h1{font-family:Cleor,sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(32px,5vw,70px);letter-spacing:-.04em}.eyebrow{font:400 11px Cleor,sans-serif;letter-spacing:.4em;text-transform:uppercase;color:#777}.youth-site .grid{gap:48px 28px}.youth-site .card{text-align:left}.youth-site .card img{aspect-ratio:1.2;transition:filter .35s}.youth-site .card h2{font:700 17px/1.45 Cleor,sans-serif}.youth-site .meta{font:400 13px/1.8 Cleor,sans-serif}.youth-site .project-body p{font-size:16px;line-height:1.9}.youth-site .project-body h2{font:700 26px Cleor,sans-serif;max-width:760px;margin:65px auto 20px}.youth-site footer{font:400 11px Cleor,sans-serif;letter-spacing:.25em;text-transform:uppercase;padding:35px}
.wall-home{background:#111;color:#fff;overflow:hidden}.wall-home .site-header{position:absolute;top:0;left:0;width:100%;color:#fff;pointer-events:none}.wall-home .site-header a,.wall-home .site-header button{pointer-events:auto}.wall-home .logo img{filter:grayscale(1) brightness(0) invert(1)}.wall-home main{max-width:none;padding:0;margin:0}.wall-home footer{display:none}.home-page{position:relative;height:100svh;min-height:480px;overflow:hidden;background:#151515}#viewport{position:absolute;inset:0;overflow:hidden;touch-action:none;cursor:grab;outline-offset:-5px}#viewport.dragging{cursor:grabbing}#wall{position:absolute;inset:0;display:grid;grid-template-columns:repeat(6,1fr);gap:0}.wall-tile{display:block;overflow:hidden;position:relative;background:#1b1b1b;user-select:none;cursor:inherit}.wall-tile img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none;transition:filter .35s}.wall-tile:hover img{filter:brightness(1.2)}.wall-tile:focus-visible{outline-offset:-5px;z-index:2}#wall.ready{display:block}#wall.ready .wall-tile{position:absolute;width:var(--tile-w);height:var(--tile-h);padding:1px}.home-page-overlay-gradient{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.72),rgba(0,0,0,.2) 60%,rgba(0,0,0,.65));pointer-events:none;z-index:1}.home-intro{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:2;text-align:center}.youth-site h1.home-page-title{font:700 clamp(85px,12vw,170px)/1 Cleor,sans-serif;text-transform:uppercase;letter-spacing:-.04em;color:#fff;margin:-13px auto 2px}.brand-dot{color:var(--accent)}h2.home-page-title{font:400 12px Cleor,sans-serif;text-transform:uppercase;letter-spacing:.65em;color:#fff;margin:12px 0 0 6px}.explore-link{pointer-events:auto;margin-top:40px;font:600 10px Cleor,sans-serif;letter-spacing:.18em;text-transform:uppercase;padding:12px 0;border-bottom:1px solid #ffffff70}.explore-link span{margin-left:15px;font-size:18px}.home-categories{position:absolute;bottom:43px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:26px;margin:0;flex-wrap:nowrap}.home-categories a{color:#fff;font:600 10px Cleor,sans-serif;text-transform:uppercase;letter-spacing:.15em;padding:10px 0}.wall-bottom{position:absolute;bottom:50px;left:50px;right:50px;z-index:3;display:flex;justify-content:space-between;pointer-events:none;font:400 10px Cleor,sans-serif;text-transform:uppercase;letter-spacing:2px}.wall-pause{pointer-events:auto;background:none;border:0;color:#fff;font:inherit;padding:0;letter-spacing:inherit;text-transform:uppercase}
@media(max-width:760px){.youth-site .site-header{height:105px;padding:22px 25px}.youth-site .logo img{width:105px;height:44px}.menu-close{right:25px;top:28px}.youth-site main{padding-top:25px}.youth-site .project-heading{margin-bottom:40px}.youth-site .grid{gap:35px 20px}.wall-home main{padding:0}.wall-bottom{left:25px;right:25px;bottom:25px}.home-categories{bottom:65px;gap:18px}.home-categories a{font-size:9px;letter-spacing:.1em}h2.home-page-title{font-size:11px;letter-spacing:.45em}.home-intro{padding-bottom:35px}.home-page{min-height:420px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
/* Centered original logo: composited white artwork and unchanged red dot. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.logo-filters{position:absolute;width:0;height:0;overflow:hidden}
.adaptive-logo{position:fixed;left:50%;top:0;width:260px;aspect-ratio:16/9;transform:translateX(-50%);z-index:8;display:block;pointer-events:none}
a.adaptive-logo{pointer-events:auto}.adaptive-logo img{display:block;width:100%;height:100%;object-fit:contain}.logo-white{mix-blend-mode:difference}.logo-white img{filter:url(#logo-white)}.logo-red img{filter:url(#logo-red)}
.wall-home .adaptive-logo{top:50%;width:min(76vw,760px);transform:translate(-50%,-50%)}
.youth-site .site-header{justify-content:flex-end;height:160px}.youth-site .navigation-toggle{position:fixed;top:40px;right:50px;z-index:9}.wall-home .home-intro{padding:0;justify-content:flex-start;top:calc(50% + min(12vw,125px));bottom:auto}.wall-home .explore-link{margin-top:25px}
/* Youth Works: edge-to-edge images with inset dark hover panels. */
.youth-site.works-page main{max-width:none;padding:45px 0 0}.works-page .project-heading{padding:0 24px;margin-bottom:75px}.work-filters{gap:28px;margin-top:28px}.work-filters a{font:600 11px Cleor,sans-serif;text-transform:uppercase;letter-spacing:.15em;color:#666}.youth-site .works-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.youth-site .work-card{position:relative;overflow:hidden;text-align:center;background:#111}.youth-site .work-card img{display:block;width:100%;aspect-ratio:1.5;object-fit:cover;transition:transform .8s,filter .8s}.youth-site .work-card:hover img,.youth-site .work-card:focus-visible img{filter:brightness(.7);transform:scale(1.025)}.work-info{position:absolute;inset:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;background:#000b;color:#fff;opacity:0;transform:translateY(8px);transition:opacity .6s,transform .6s}.work-card:hover .work-info,.work-card:focus-visible .work-info{opacity:1;transform:none}.youth-site .work-info h2{font:700 clamp(18px,2vw,30px)/1.3 Cleor,sans-serif;text-transform:uppercase;margin:0 0 15px;max-width:600px}.youth-site .work-info .meta{color:#eee;font-size:13px}.work-open{margin-top:24px;font:400 10px Cleor,sans-serif;text-transform:uppercase;letter-spacing:.25em}.works-page footer{border:0}
/* Youth Services: staggered icon-led columns, retaining all original copy. */
.services-page main{max-width:1170px}.services-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:100px;row-gap:60px;padding:30px 30px 90px}.service-item{text-align:center}.service-item:nth-child(even){padding-top:150px}.service-icon{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;transition:transform 1s}.service-item:hover .service-icon{transform:rotateY(360deg)}.service-item h2{font:700 17px/1.5 Cleor,sans-serif;text-transform:uppercase;margin:22px 0}.service-item p{font:400 14px/1.9 Cleor,sans-serif;color:#555;white-space:pre-line;margin:0}.service-wide{grid-column:1/-1;max-width:850px;justify-self:center}.service-wide p{text-align:left}
/* Youth Contact: quiet centered form and fine underlines. */
.contact-page main{max-width:1170px;padding-bottom:120px}.contact-page .project-heading{margin-bottom:100px}.contact-page form.contact{max-width:100%;text-align:center}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:45px}.contact-page label{font:400 12px Cleor,sans-serif;color:#555;margin-bottom:2px}.contact-page input,.contact-page textarea{border:0;border-bottom:1px solid #111;border-radius:0;background:transparent;text-align:center;padding:12px 5px;font:400 14px/1.5 Cleor,sans-serif;transition:border-color .3s}.contact-page textarea{min-height:150px}.contact-page input:hover,.contact-page textarea:hover{border-color:#aaa}.contact-page .notice{font-size:12px;margin:30px 0}.contact-page button[type=submit]{border-radius:0;border:1px solid #111;background:#111;padding:17px 42px;font:600 10px Cleor,sans-serif;text-transform:uppercase;letter-spacing:.2em}.contact-page button[type=submit]:hover{background:#fff;color:#111}
@media(max-width:880px){.services-grid{column-gap:40px;padding:20px 0 50px}.service-item:nth-child(even){padding-top:60px}.work-info{inset:20px;padding:18px}.work-filters{gap:18px}}
@media(max-width:600px){.adaptive-logo{width:200px;top:3px}.youth-site .site-header{height:140px}.youth-site .navigation-toggle{top:25px;right:22px}.navigation-toggle span{display:none}.youth-site.works-page main{padding-top:15px}.works-page .project-heading{margin-bottom:40px}.youth-site .works-grid{grid-template-columns:1fr}.youth-site .work-info h2{font-size:20px}.wall-home .adaptive-logo{width:94vw}.wall-home .home-intro{top:calc(50% + 75px)}.services-grid{grid-template-columns:1fr;gap:55px}.service-item:nth-child(even){padding-top:0}.service-wide{grid-column:auto}.contact-fields{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.contact-page .project-heading{margin-bottom:50px}.work-filters{gap:12px}.work-filters a{font-size:10px}}
@media(hover:none){.work-info{opacity:1;transform:none;background:linear-gradient(transparent,#000d);inset:0;justify-content:flex-end;padding:28px 20px}.youth-site .work-info h2{font-size:20px;margin-bottom:8px}.work-open{margin-top:10px}}
.wall-home a.adaptive-logo{pointer-events:none}.work-card{user-select:none}.navigation-dialog[open]{justify-content:safe center}.navigation-dialog nav,.navigation-dialog p{flex-shrink:0}
@media(max-width:600px){.work-info{opacity:1;transform:none;background:linear-gradient(transparent,#000d);inset:0;justify-content:flex-end;padding:28px 20px}.youth-site .work-info h2{margin-bottom:8px}.work-open{margin-top:10px}}
/* Black Youth composition; homepage logo is the unchanged original. */
.youth-site{background:#000;color:#fff;color-scheme:dark}
.youth-site .site-header{height:135px;z-index:auto}
.youth-site:not(.wall-home) .adaptive-logo{left:18px;top:5px;width:230px;transform:none}
.wall-home .logo-white{mix-blend-mode:normal}.wall-home .logo-white img{filter:none}.wall-home .logo-red{display:none}
.youth-site .navigation-toggle{color:#fff;mix-blend-mode:difference}
.youth-site main{max-width:1230px;padding:55px 40px 100px}
.youth-site .project-heading{text-align:left;max-width:none;margin:0 0 80px}
.youth-site .project-heading h1{position:relative;display:inline-block;font-size:clamp(40px,5.8vw,82px);line-height:1.1;margin:0 0 36px;letter-spacing:-.045em}
.youth-site .project-heading h1:after{content:'';position:absolute;bottom:-24px;left:0;width:70px;height:4px;background:#fff;transition:width .3s}
.youth-site .project-heading h1:hover:after{width:120px}
.youth-site .meta,.youth-site .back,.youth-site .notice{color:#b5b5b5}
.youth-site .project-body{max-width:1150px}.youth-site .project-body p{max-width:800px;color:#ccc;line-height:1.9;margin:35px 0 55px}
.youth-site .project-body h2{margin-left:0}.youth-site .project-body img{margin:20px auto}.youth-site footer{border-color:#222;color:#999;padding:40px}
.youth-site.works-page main{max-width:none;padding:55px 0 0}
.works-page .project-heading{max-width:1230px;margin:0 auto 80px;padding:0 40px;display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.work-filters{justify-content:flex-start;margin:0 0 26px;gap:22px}.work-filters a{color:#aaa}.work-filters a[aria-current=page],.work-filters a:hover{color:#fff}
.youth-site .work-card{background:#000}.youth-site .work-info .meta{color:#ddd}
.services-page main,.contact-page main{max-width:1230px}
.services-grid{column-gap:100px;row-gap:70px;padding:15px 0 80px}.service-item:nth-child(even){padding-top:160px}.service-item{text-align:left}.service-icon{width:40px;height:40px}.service-item h2{margin-top:28px;letter-spacing:.015em}.service-item p{color:#b5b5b5;font-size:15px;line-height:1.9}.service-wide{max-width:none;justify-self:stretch;padding-top:35px;border-top:1px solid #252525}.service-wide p{columns:2;column-gap:100px;orphans:3;widows:3}
.contact-page .project-heading{margin-bottom:85px}.contact-page label{color:#aaa}.contact-page input,.contact-page textarea{border-color:#777;color:#fff}.contact-page input:focus,.contact-page textarea:focus{border-color:#fff;outline:none}.contact-page button[type=submit]{background:#fff;color:#000;border-color:#fff}.contact-page button[type=submit]:hover{background:transparent;color:#fff}
.wall-home main{max-width:none;padding:0}.wall-home .site-header{height:0}
@media(max-width:880px){.works-page .project-heading{display:block}.work-filters{margin:12px 0 0}.services-grid{column-gap:50px}.service-item:nth-child(even){padding-top:100px}.service-wide p{column-gap:50px}}
@media(max-width:600px){.youth-site .site-header{height:115px}.youth-site:not(.wall-home) .adaptive-logo{left:1px;top:5px;width:180px}.youth-site main{padding:30px 24px 65px}.youth-site .project-heading{margin-bottom:55px}.youth-site .project-heading h1{font-size:40px;overflow-wrap:anywhere}.youth-site .project-heading h1:after{bottom:-20px;width:50px;height:3px}.youth-site.works-page main{padding-top:30px}.works-page .project-heading{padding:0 24px;margin-bottom:45px}.work-filters{gap:14px}.work-filters a{font-size:9px}.services-grid{padding-top:0;gap:60px}.service-item:nth-child(even){padding-top:0}.service-wide p{columns:1}.contact-page .project-heading{margin-bottom:55px}.wall-home main{padding:0}.wall-home .site-header{height:0}}
.youth-site{min-height:100svh}
