/* ===== Oct 2026 UX round: filters, awards, download band, login page ===== */

/* Our Work: two filter rows (situation + capability) and award toggle */
.frow{margin-top:14px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
.frow:first-child{margin-top:0;}
.frow .fbtn{white-space:nowrap;height:auto;line-height:1.2;}
.flab{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.6);min-width:112px;}
.fbtn.aw{border-color:var(--orange);color:#fff;}
.fbtn.aw.on{background:#fff;color:var(--ink);border-color:#fff;}
.fmeta{margin-top:24px;display:flex;flex-wrap:wrap;gap:18px;align-items:center;font-size:14px;color:rgba(255,255,255,.75);}
.fclear{font-family:inherit;font-size:14px;font-weight:700;color:var(--orange);background:none;border:0;padding:0;cursor:pointer;}
.fclear[hidden]{display:none;}
.wempty{grid-column:1/-1;background:var(--tint);color:var(--navy);padding:80px 40px;text-align:center;font-size:18px;}
.wempty[hidden]{display:none;}
@media(max-width:700px){.flab{min-width:100%;}}

/* award badge on work tiles */
.tile .award{position:absolute;top:18px;left:18px;z-index:2;background:var(--orange);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;}

/* awards section (home, About, case studies) */
.awgrid{margin-top:48px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:26px;}
.awcard{background:#fff;color:var(--navy);display:flex;flex-direction:column;}
.st-white .awcard{background:var(--tint);}
.awcard .awph{aspect-ratio:4/3;overflow:hidden;background:var(--tint);}
.awcard .awph img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.awcard:hover .awph img{transform:scale(1.04);}
.awcard .awbd{padding:24px 26px 28px;display:flex;flex-direction:column;gap:8px;flex:1;}
.awcard .ak{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--orange);}
.awcard b{font-weight:800;font-size:21px;line-height:1.2;letter-spacing:-.01em;}
.awcard .who{font-size:15px;color:var(--body);flex:1;}
.awcard .go{margin-top:10px;display:inline-flex;gap:9px;align-items:center;font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--orange);}

/* Award cards were ~530px tall (full-width 4:3 photo + copy), so on a laptop screen the copy sat below the fold.
   Mid widths: a shorter 16:9 photo. Wide screens: photo beside the copy. Two per row; awards 3 and 4 make a 2x2. */
@media(min-width:700px){
  .awgrid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .awcard .awph{aspect-ratio:16/9;}
}
@media(min-width:1200px){
  .awcard{flex-direction:row;}
  .awcard .awph{flex:0 0 42%;aspect-ratio:1/1;}
  .awcard .awbd{padding:30px 32px;justify-content:center;}
  .awcard .who{flex:0 0 auto;}
}

/* capability statement download band */
.dlband{background:var(--tint);color:var(--navy);padding:64px 0;}
.dlband .dlrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;}
.dlband h3{font-weight:800;font-size:clamp(24px,2.6vw,34px);letter-spacing:-.015em;line-height:1.1;}
.dlband p{margin-top:10px;font-size:16px;color:var(--body);max-width:60ch;}
@media(max-width:760px){.dlband .dlrow{grid-template-columns:1fr;}}

/* team split */
.team.leaders .tcard img,.team.leaders .tface{height:380px;}

/* Client Login: login-only page */
.loginpg{background:var(--ink);color:#fff;padding:120px 0 140px;}
.loginpg .box{max-width:620px;}
.loginpg h1{font-weight:800;font-size:clamp(40px,5.2vw,72px);line-height:1;letter-spacing:-.03em;}
.loginpg h1 span{color:var(--orange);}
.loginpg .sub{margin-top:20px;font-size:19px;color:rgba(255,255,255,.82);max-width:48ch;}
.loginpg .row{margin-top:34px;}
.loginpg .btn,.dlband .btn,.head .arrowlink{white-space:nowrap;}
.loginpg .help dt{white-space:nowrap;}
.loginpg .help{margin-top:56px;padding-top:28px;border-top:1px solid var(--lineW);display:grid;grid-template-columns:auto 1fr;gap:12px 28px;font-size:15px;}
.loginpg .help dt{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--orange);padding-top:3px;}
.loginpg .help dd{margin:0;color:rgba(255,255,255,.85);}
.loginpg .help a{color:#fff;text-decoration:underline;text-underline-offset:3px;}
.loginpg .help a:hover{color:var(--orange);}
@media(max-width:560px){.loginpg .help{grid-template-columns:1fr;gap:4px;}.loginpg .help dd{margin-bottom:14px;}}

/* footer contact links */
footer li a[href^="mailto:"],footer li a[href^="tel:"]{text-decoration:underline;text-decoration-color:rgba(255,255,255,.3);text-underline-offset:3px;}
