/*
Theme Name: ONCOINCO Portfolio
Theme URI: https://oncoinco.com/
Author: ONCOINCO
Description: Minimal fine-art black-and-white street photography portfolio. Supports existing WordPress posts, series taxonomy, responsive galleries and an image viewer.
Version: 1.6.0
Requires at least: 6.9
Requires PHP: 8.4
Text Domain: oncoinco
License: GPL-2.0-or-later
*/
:root{--bg:#f8f8f6;--ink:#151515;--muted:#787878;--line:#dddcd8;--white:#fff;--max:1440px;--gutter:clamp(22px,5.5vw,88px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Helvetica Neue,Arial,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.65;letter-spacing:.015em;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}a:hover{opacity:.65}a:focus-visible,button:focus-visible{outline:2px solid #777;outline-offset:5px}
img{display:block;max-width:100%;height:auto}
button,input,textarea{font:inherit}.site-wrap{max-width:var(--max);margin:auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.site-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:108px;border-bottom:1px solid var(--line)}
.brand{font-size:clamp(17px,1.55vw,21px);font-weight:600;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap;line-height:1.3}
.brand-sub{display:block;font-size:9px;letter-spacing:.25em;color:var(--muted);font-weight:400;margin-top:5px}.site-navigation{display:flex;align-items:center;gap:clamp(16px,2vw,32px)}
.site-navigation ul{display:flex;align-items:center;gap:clamp(16px,2vw,32px);list-style:none;margin:0;padding:0}.site-navigation li{list-style:none}.site-navigation a{font-size:11px;letter-spacing:.13em;text-transform:uppercase}.mobile-toggle{display:none;cursor:pointer;background:none;border:0;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.hero{padding-top:clamp(60px,9vw,136px);padding-bottom:clamp(70px,9vw,125px);text-align:center}
.eyebrow{font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--muted);font-weight:500}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,7.7vw,108px);line-height:1.08;letter-spacing:-.065em;font-weight:400;margin:26px auto 24px}
.hero .deck{font-family:Georgia,serif;font-size:clamp(15px,1.5vw,19px);font-style:italic;color:#666;max-width:600px;margin:0 auto 56px}
.hero-image-wrap{position:relative;margin:auto;max-width:850px}.hero-image-wrap img{width:100%;height:min(62vw,680px);min-height:270px;object-fit:cover;object-position:center}.hero-image-wrap--portrait{max-width:570px}.hero-image-wrap--portrait img{height:min(100vw,750px)}
.hero-placeholder{max-width:850px;aspect-ratio:1.5/1;margin:auto;background:linear-gradient(135deg,#262626 0%,#0a0a0a 48%,#4d4d4d 49%,#151515 65%);display:flex;align-items:center;justify-content:center;color:#eee;letter-spacing:.25em;font:12px Georgia,serif}
.hero-label{display:flex;justify-content:space-between;gap:12px;max-width:850px;margin:15px auto 0;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:33px;border-top:1px solid var(--line);padding-top:26px}.section-head h2{font-weight:500;font-size:clamp(23px,3vw,34px);line-height:1.25;letter-spacing:-.035em;margin:0}.section-note{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
#work{scroll-margin-top:30px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px}.filter-button{border:1px solid var(--line);border-radius:100px;padding:9px 20px;background:none;color:var(--ink);font-size:11px;letter-spacing:.12em;cursor:pointer}.filter-button.active,.filter-button:hover{background:var(--ink);color:var(--white);border-color:var(--ink)}
.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3.3vw,53px) clamp(14px,2.3vw,33px);margin-bottom:100px}.work-card{min-width:0}.work-card__image{display:block;background:#e8e8e7;overflow:hidden;aspect-ratio:4/5}.work-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.work-card:hover .work-card__image img{transform:scale(1.03)}.work-card__noimg{height:100%;display:flex;align-items:center;justify-content:center;background:#242424;color:#d4d4d4;font:italic 16px Georgia,serif}.work-card__meta{display:flex;justify-content:space-between;gap:10px;padding-top:13px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.work-card__title{margin:5px 0 0;font-size:15px;font-weight:500}.no-results{padding:50px 0;color:var(--muted);font-size:14px}
.series{padding-top:35px;padding-bottom:95px}.series-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.series-tile{display:flex;flex-direction:column;justify-content:space-between;min-height:240px;padding:28px;transition:background .2s;color:#f3f3f3;background:#171717}.series-tile:nth-child(2){background:#353535}.series-tile:nth-child(3){background:#5c5c5c}.series-tile:hover{opacity:1;background:#000}.series-tile__top{font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:#ccc}.series-tile__name{font-family:Georgia,serif;font-size:clamp(31px,4vw,57px);font-style:italic;letter-spacing:-.045em;line-height:1}
.statement{border-top:1px solid var(--line);padding-top:90px;padding-bottom:105px;display:grid;grid-template-columns:1fr 1fr;gap:50px}.statement p{font-family:Georgia,serif;font-size:clamp(20px,2.7vw,36px);line-height:1.55;letter-spacing:-.02em;max-width:650px;margin:0}.statement-aside{font-size:12px;line-height:2.2;max-width:330px;justify-self:end;color:#666}
.site-footer{border-top:1px solid var(--line);padding-top:30px;padding-bottom:40px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}.site-footer span,.site-footer a{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:#666}.footer-links{display:flex;gap:25px}
.page-main{padding-top:90px;padding-bottom:110px;min-height:60vh}.page-heading{font:400 clamp(42px,6vw,84px)/1.1 Georgia,serif;letter-spacing:-.05em;margin:15px 0 42px}.page-description{max-width:620px;color:#666;margin-bottom:50px;font-size:14px}
.single-main{max-width:980px;margin:auto;padding:90px var(--gutter) 120px}.single-head{text-align:center;margin-bottom:60px}.single-head h1{font:400 clamp(48px,6vw,83px)/1.1 Georgia,serif;letter-spacing:-.06em;margin:15px 0 17px}.single-meta{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.single-cover{margin:0 auto 65px;max-width:880px}.single-cover img{width:100%;height:auto}.entry-content{font-size:15px;line-height:1.9}.entry-content>*{max-width:720px;margin-left:auto;margin-right:auto}.entry-content>figure,.entry-content>.wp-block-gallery,.entry-content>.wp-block-image,.entry-content>.wp-block-columns,.entry-content>.alignwide,.entry-content>.alignfull{max-width:100%;margin-top:35px;margin-bottom:35px}.entry-content figure img{margin-left:auto;margin-right:auto}.entry-content .wp-block-gallery{display:flex;flex-wrap:wrap;gap:12px}.entry-content .wp-block-gallery figure{flex:1 1 220px;margin:0}.entry-content .wp-block-gallery img{height:auto}.entry-content figcaption{text-align:center;color:var(--muted);font-size:11px;padding:10px}.entry-content p{margin-top:1.4em;margin-bottom:1.4em}.entry-content a{text-decoration:underline;text-underline-offset:3px}.post-footer{margin-top:70px;padding-top:25px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;font-size:11px;letter-spacing:.15em;text-transform:uppercase}.tag-list{display:flex;gap:12px;flex-wrap:wrap}
.about-copy{max-width:740px;font-family:Georgia,serif;font-size:clamp(17px,2vw,24px);line-height:1.8}.about-copy p{max-width:740px}.pagination{display:flex;gap:20px;align-items:center;justify-content:center;margin:55px auto}.pagination a,.pagination span{font-size:13px}.search-form{display:flex;gap:10px;max-width:520px;margin-bottom:35px}.search-form input{flex:1;min-width:0;background:#fff;border:1px solid var(--line);padding:12px}.search-form button{border:none;color:#fff;background:#151515;padding:12px 20px;cursor:pointer}
.lightbox{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.97);display:none;align-items:center;justify-content:center;padding:55px 30px 30px}.lightbox.open{display:flex}.lightbox img{object-fit:contain;max-width:100%;max-height:100%}.lightbox-close{position:absolute;top:12px;right:22px;background:none;border:0;color:#fff;font-size:34px;cursor:pointer}.lightbox-caption{position:absolute;bottom:8px;left:20px;color:#bbb;font-size:11px;letter-spacing:.13em}
@media(max-width:900px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header{min-height:88px}.statement{grid-template-columns:1fr}.statement-aside{justify-self:start}}
@media(max-width:650px){.site-header{min-height:74px}.brand{font-size:15px}.brand-sub{font-size:8px}.mobile-toggle{display:block}.site-navigation{display:none;position:absolute;left:0;right:0;top:100%;padding:22px var(--gutter) 30px;background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:22px}.site-navigation.is-open{display:flex}.site-navigation.is-open ul{flex-direction:column;align-items:flex-start;gap:22px}.hero{padding-top:58px;padding-bottom:75px}.hero .deck{margin-bottom:38px}.hero-image-wrap img{height:65vw;min-height:220px}.hero-image-wrap--portrait img{height:110vw}.hero-label{font-size:9px}.work-grid{column-gap:14px;row-gap:27px;margin-bottom:70px}.work-card__meta{font-size:8px}.work-card__title{font-size:13px}.series-grid{grid-template-columns:1fr}.series-tile{min-height:170px}.series{padding-bottom:65px}.statement{padding-top:55px;padding-bottom:70px}.page-main{padding-top:56px}.single-main{padding-top:65px}.single-head{margin-bottom:43px}.single-cover{margin-bottom:44px}.post-footer{flex-direction:column}.site-footer{align-items:flex-start;flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* v1.1 improvements */
.all-work-link{display:flex;justify-content:center;margin:-45px 0 90px}
.all-work-link a{border-bottom:1px solid var(--ink);padding:8px 0;font-size:11px;letter-spacing:.17em;text-transform:uppercase}
.series-tile:focus-visible{outline-offset:5px}
@media(max-width:650px){.all-work-link{margin:-25px 0 70px}}

/* Dedicated series archives (v1.2) */
.collection-intro{color:var(--muted);font-family:Georgia,serif;font-style:italic;margin:0 0 34px}
.collection-nav{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin:10px 0 40px}
.collection-nav a{padding:7px 14px;border:1px solid var(--line);font-size:12px;letter-spacing:.045em;transition:background .2s,color .2s}
.collection-nav a[aria-current="page"],.collection-nav a:hover{background:var(--ink);color:var(--bg);opacity:1;border-color:var(--ink)}

/* v1.4: remove automatically featured latest post below the title. */
.hero{padding-bottom:clamp(55px,7vw,95px)}
.hero .deck{margin-bottom:0}
@media(max-width:650px){.hero{padding-bottom:55px}}


/* v1.6: editorial text-only Instagram links with per-post destinations. */
.instagram-icon{display:inline-block;flex-shrink:0;vertical-align:middle}
.single-instagram{margin:60px auto 0;display:flex;justify-content:center}
.single-instagram__link{display:inline-flex;align-items:center;gap:11px;border:1px solid var(--line);padding:13px 18px;color:var(--ink);font-size:11px;letter-spacing:.13em;text-transform:uppercase;transition:border-color .2s ease,background .2s ease}
.single-instagram__link:hover{opacity:1;background:#eee;border-color:#aaa}
@media(max-width:650px){.footer-links{gap:19px;flex-wrap:wrap}.single-instagram{margin-top:46px}.single-instagram__link{font-size:10px;letter-spacing:.07em;padding:12px}}
