/* WordPress-specific additions on top of the generated site.css. Hand-edited. */

/* nav links are real <a href> now */
nav a{display:inline-block;}
.logo{display:inline-block;line-height:0;}
.news-card h4 a:hover{color:var(--accent-primary);}
a.news-image{display:block;}

/* contacts e-mail (was inline style in the prototype) */
.contact-email{font-size:28px;font-weight:700;color:var(--text-primary);border-bottom:2px solid var(--accent-primary);word-break:break-word;}
@media (max-width:560px){.contact-email{font-size:21px;}}

/* article / page body written in the WordPress editor */
.entry{max-width:720px;}
.entry > * + *{margin-top:16px;}
.entry h2{font-size:26px;margin-top:40px;}
.entry h3{font-size:21px;margin-top:32px;}
.entry ul,.entry ol{padding-left:1.4em;}
.entry li + li{margin-top:6px;}
.entry a{color:var(--accent-primary);border-bottom:1px solid currentColor;}
.entry img,.entry figure{max-width:100%;height:auto;}
.entry figure{margin:28px 0;}
.entry figcaption{font-size:13px;color:var(--text-muted);}
.entry blockquote{border-left:3px solid var(--accent-primary);padding-left:18px;font-size:18px;}
.wp-block-gallery{gap:12px;}

/* pagination on the news list */
.pagination{margin-top:40px;}
.pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap;}
.pagination .page-numbers{display:inline-block;padding:8px 14px;border:1.5px solid var(--text-primary);font-size:13px;font-weight:600;}
.pagination .page-numbers.current,.pagination a.page-numbers:hover{background:var(--text-primary);color:var(--bg-canvas);}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);}

/* keep the sticky header below the admin bar for logged-in editors */
.admin-bar header{top:32px;}
.admin-bar .home-hero,.admin-bar .sk-plate{top:calc(var(--hdr) + 32px);}
@media (max-width:782px){
  .admin-bar header{top:46px;}
  .admin-bar .home-hero,.admin-bar .sk-plate{top:calc(var(--hdr) + 46px);}
}
@media (max-width:600px){ .admin-bar header{top:0;} }

/* prototype bug: .nav-inner{padding:18px 0} cancels .wrap's side gutter, so below 1248px
   the logo and the menu button touch the screen edges. Restore the gutter. */
.nav-inner{padding-left:24px;padding-right:24px;}

/* v0.2: photos are real <img>/<picture> (responsive srcset, lazy) instead of CSS backgrounds */
.news-image,.project-photo{position:relative;overflow:hidden;}
.news-image img,.project-photo img,.project-photo picture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.news-cover{aspect-ratio:16/9;margin-bottom:32px;background:var(--bg-surface);}

/* hero line art: keep the box invisible until the script has sized it (otherwise it jumps = layout shift) */
.js .hero-sketch:not(.live):not(.done){visibility:hidden;}

/* prototype bug: cards on the navy news band inherit the band's cream text colour, so titles vanish on the cream card */
.band-inverse .news-card{color:var(--text-primary);}
.band-inverse .news-card h4 a:hover{color:var(--accent-primary);}
