/*
Theme Name: David Priymak Portfolio
Theme URI: https://davidpriymak.com
Author: David Priymak
Description: Custom premium portfolio theme for outdoor, travel and lifestyle photography.
Version: 1.1.0
Text Domain: david-priymak
*/


:root{
  --bg:#f2f0ea;--paper:#e7e3da;--ink:#10100e;--muted:#706e68;--line:#c9c5bc;
  --dark:#11110f;--light:#f4f1e9;--pad:clamp(22px,4.5vw,78px);--serif:"Instrument Serif",Georgia,serif;
  --sans:"DM Sans",Arial,sans-serif
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}button{font:inherit}
.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;padding:26px var(--pad);display:flex;align-items:center;justify-content:space-between;color:#fff;mix-blend-mode:difference}
.wordmark{font-size:12px;letter-spacing:.18em;font-weight:600}.desktop-nav{display:flex;gap:28px;font-size:12px}.desktop-nav a{opacity:.85}.desktop-nav a:hover{opacity:1}
.menu-button{display:none;background:none;border:0;color:inherit;text-transform:uppercase;letter-spacing:.12em;font-size:11px}
.mobile-menu{position:fixed;inset:0;z-index:90;background:#111;color:#f4f1e9;padding:110px var(--pad) 40px;display:none;flex-direction:column;justify-content:space-between}
.mobile-menu.open{display:flex}.mobile-menu nav{display:flex;flex-direction:column}.mobile-menu nav a{font-family:var(--serif);font-size:clamp(48px,13vw,78px);line-height:1.05;border-bottom:1px solid #34342f;padding:10px 0}
.mobile-social{display:flex;gap:22px;font-size:12px}
.hero{height:100svh;min-height:680px;position:relative;overflow:hidden;background:#151515;color:#fff}
.hero-media{position:absolute;inset:0;transform:scale(1.035);animation:heroIn 1.8s cubic-bezier(.2,.8,.2,1) forwards}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.06) 44%,rgba(0,0,0,.52))}
.hero-copy{position:absolute;left:var(--pad);bottom:11vh;max-width:1050px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:10px;margin:0 0 24px}
.display,.hero h1,.intro h2,.page-title,.about h2,.contact-title{font-family:var(--serif);font-weight:400;letter-spacing:-.036em}
.hero h1{font-size:clamp(58px,8.5vw,138px);line-height:.83;margin:0}.hero h1 em,.intro h2 em,.about h2 em,.contact-title em{font-weight:400}
.hero-sub{font-size:14px;max-width:460px;line-height:1.65;margin:27px 0 0}.scroll-cue{position:absolute;right:var(--pad);bottom:38px;font-size:10px;text-transform:uppercase;letter-spacing:.16em}
.intro{padding:145px var(--pad) 160px}.intro-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.17em;color:var(--muted);margin-bottom:64px}
.intro-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,.7fr);gap:9vw;align-items:end}.intro h2{font-size:clamp(46px,6vw,90px);line-height:.96;margin:0}.intro-grid>p{line-height:1.8;font-size:14px;margin:0;color:#474640}
.work{padding:0 var(--pad) 150px}.section-head{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;margin-bottom:38px;font-size:10px;text-transform:uppercase;letter-spacing:.16em}
.project{display:block;margin-bottom:105px}.project-media{overflow:hidden;aspect-ratio:16/9;background:#ddd}.project-media.portrait{aspect-ratio:4/5}.project-media.landscape-crop{aspect-ratio:2/1}.project-media img{transition:transform 1s cubic-bezier(.2,.7,.2,1)}.project:hover img{transform:scale(1.025)}
.project-meta{display:flex;justify-content:space-between;align-items:baseline;margin-top:17px;border-bottom:1px solid #d2cfc8;padding-bottom:17px}.project-meta h3{font-family:var(--serif);font-weight:400;font-size:29px;margin:0}.project-meta p{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin:0}
.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.project-offset{margin-top:120px}
.services{background:var(--dark);color:var(--light);padding:115px var(--pad) 145px}.section-head.light{border-color:#373732;color:#a7a59e}
.service-row{display:grid;grid-template-columns:60px 1.1fr 1fr;gap:30px;padding:29px 0;border-bottom:1px solid #34342f;align-items:center}.service-row span{font-size:10px;color:#85837d}.service-row h3{font-family:var(--serif);font-size:clamp(36px,4vw,61px);font-weight:400;margin:0}.service-row p{font-size:13px;color:#a7a59e;line-height:1.65;margin:0;max-width:380px}
.about{display:grid;grid-template-columns:1fr 1fr;min-height:760px}.about-image{min-height:640px}.about-copy{padding:90px var(--pad);display:flex;flex-direction:column;justify-content:center}.eyebrow.dark{color:var(--muted)}.about h2{font-size:clamp(52px,6vw,88px);line-height:.93;margin:0 0 34px}.about-copy>p:not(.eyebrow){font-size:15px;line-height:1.82;color:#4b4944;max-width:540px}.text-link{margin-top:34px;width:max-content;font-size:11px;text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid #8e8b84;padding-bottom:7px}
.contact{background:#d9d5cb;padding:135px var(--pad) 52px}.contact-title{display:inline-block;font-size:clamp(64px,9vw,145px);line-height:.84;margin:0 0 115px}.contact-title:hover{opacity:.65}.contact-bottom{padding-top:20px;border-top:1px solid #aaa69d;display:flex;justify-content:space-between;font-size:12px}.social-links{display:flex;gap:25px}
.page-hero{padding:180px var(--pad) 85px}.page-hero .eyebrow{color:var(--muted)}.page-title{font-size:clamp(72px,11vw,170px);line-height:.78;margin:0;max-width:1300px}.page-dek{display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding:0 var(--pad) 110px;align-items:end}.page-dek p{font-size:15px;line-height:1.8;max-width:540px;margin:0}.page-dek .meta{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}
.cover{height:78vh;min-height:520px;margin:0 var(--pad) 120px;overflow:hidden}.cover img{transition:transform 8s ease}.cover:hover img{transform:scale(1.025)}
.gallery{padding:0 var(--pad) 150px}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(14px,2vw,32px);align-items:start}.gallery-item{margin:0 0 clamp(20px,5vw,72px);overflow:hidden}.gallery-item img{height:auto;aspect-ratio:auto}.gallery-item.wide{grid-column:span 12}.gallery-item.half{grid-column:span 6}.gallery-item.third{grid-column:span 4}.gallery-item.offset{margin-top:8vw}
.next-project{background:#111;color:#f4f1e9;padding:120px var(--pad)}.next-project p{font-size:10px;text-transform:uppercase;letter-spacing:.17em;color:#929089}.next-project a{font-family:var(--serif);font-size:clamp(60px,9vw,140px);line-height:.88;display:inline-block}
.work-index{padding:0 var(--pad) 150px}.work-list a{display:grid;grid-template-columns:70px 1fr auto;align-items:center;border-top:1px solid var(--line);padding:22px 0}.work-list a:last-child{border-bottom:1px solid var(--line)}.work-list .num,.work-list .type{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}.work-list .name{font-family:var(--serif);font-size:clamp(34px,5vw,70px);transition:transform .3s}.work-list a:hover .name{transform:translateX(10px)}
.about-page{padding:170px var(--pad) 140px}.about-lead{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:start}.about-lead h1{font-family:var(--serif);font-size:clamp(62px,9vw,130px);line-height:.86;margin:0}.about-lead p{font-size:17px;line-height:1.9;margin:120px 0 0;color:#45443f}.about-photo{height:80vh;min-height:600px;margin-top:100px}.about-details{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-top:90px}.about-details h2{font-family:var(--serif);font-size:52px;font-weight:400;margin:0}.about-details p{font-size:14px;line-height:1.85;color:#4b4944}
.contact-page{min-height:100vh;background:#d9d5cb;padding:180px var(--pad) 55px;display:flex;flex-direction:column;justify-content:space-between}.contact-page h1{font-family:var(--serif);font-size:clamp(68px,10vw,155px);line-height:.84;font-weight:400;margin:0}.contact-page .email{font-family:var(--serif);font-size:clamp(34px,4.7vw,72px);display:inline-block;margin-top:70px;border-bottom:1px solid #8d8980}.footer{padding:28px var(--pad);display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.13em}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}@keyframes heroIn{from{transform:scale(1.1)}to{transform:scale(1.035)}}
@media(max-width:800px){
.desktop-nav{display:none}.menu-button{display:block}.site-header{padding-top:21px}.hero{min-height:650px}.hero h1{font-size:clamp(54px,17vw,88px)}.hero-sub{max-width:310px}.scroll-cue{display:none}
.intro{padding-top:95px;padding-bottom:105px}.intro-kicker{margin-bottom:42px}.intro-grid{grid-template-columns:1fr;gap:36px}.intro h2{font-size:clamp(46px,13vw,70px)}
.project-pair{grid-template-columns:1fr}.project-offset{margin-top:0}.project{margin-bottom:65px}.project-meta{display:block}.project-meta p{margin-top:8px}
.service-row{grid-template-columns:35px 1fr}.service-row p{grid-column:2;margin-top:-8px}.about{grid-template-columns:1fr}.about-image{height:75vh}.contact{padding-top:95px}.contact-title{font-size:clamp(58px,16vw,88px);margin-bottom:85px}.contact-bottom{gap:24px;flex-direction:column}
.page-hero{padding-top:145px;padding-bottom:60px}.page-title{font-size:clamp(66px,19vw,106px)}.page-dek{grid-template-columns:1fr;gap:25px;padding-bottom:70px}.cover{height:62vh;margin-bottom:75px}.gallery-grid{display:block}.gallery-item.offset{margin-top:0}.gallery-item{margin-bottom:24px}
.work-list a{grid-template-columns:42px 1fr}.work-list .type{display:none}.about-lead{grid-template-columns:1fr}.about-lead p{margin-top:45px}.about-photo{height:65vh;min-height:480px;margin-top:65px}.about-details{grid-template-columns:1fr;gap:25px}.contact-page{padding-top:150px}
}

/* Responsive cover art */
picture{display:block;width:100%;height:100%}
picture img{width:100%;height:100%;object-fit:cover}
.hero-media{position:absolute;inset:0;width:100%;height:100%;transform:scale(1.015);animation:heroIn 1.8s cubic-bezier(.2,.8,.2,1) forwards}
.hero-media img,.cover picture img{object-position:center center}


/* V4 — contained imagery, native aspect ratios, consistent portfolio rhythm */
.home-hero{padding:150px var(--pad) 115px;background:var(--bg);color:var(--ink)}
.home-hero-copy{max-width:1050px;margin:0 auto 48px}
.home-hero h1{font-family:var(--serif);font-weight:400;letter-spacing:-.036em;font-size:clamp(58px,7.3vw,112px);line-height:.9;margin:0;max-width:1000px}
.home-hero h1 em{font-weight:400}
.home-hero .hero-sub{color:#474640;margin-top:25px}
.home-hero-media{display:block;max-width:1180px;margin:0 auto;overflow:hidden;background:#ddd}
.home-hero-media img{display:block;width:100%;height:auto;object-fit:initial;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.home-hero-media:hover img{transform:scale(1.018)}
.selected-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px clamp(24px,4vw,60px)}
.selected-grid .project{margin:0}
.selected-grid .project-media{aspect-ratio:auto;overflow:hidden;background:transparent}
.selected-grid .project-media picture{height:auto}
.selected-grid .project-media img{width:100%;height:auto;object-fit:initial;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.selected-grid .project:hover img{transform:scale(1.022)}
.gallery{padding-top:10px}
.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3vw,52px);align-items:start}
.gallery-item,.gallery-item.wide,.gallery-item.half,.gallery-item.third{grid-column:auto;margin:0;overflow:hidden}
.gallery-item.offset{margin-top:0}
.gallery-item img{display:block;width:100%;height:auto;object-fit:initial;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.gallery-item:hover img{transform:scale(1.018)}
.cover{display:none!important}
@media(max-width:800px){
  .home-hero{padding-top:125px;padding-bottom:85px}
  .home-hero-copy{margin-bottom:30px}
  .home-hero h1{font-size:clamp(52px,15vw,78px)}
  .home-hero-media{max-width:520px}
  .selected-grid{grid-template-columns:1fr;gap:58px}
  .selected-grid .project-media picture{height:auto}
  .gallery-grid{display:grid;grid-template-columns:1fr;gap:24px}
  .gallery-item{margin:0}
}


/* V5 — tighter golf rhythm, contact portrait, fifth collection */
.golf-page .gallery-item.wide{grid-column:1 / -1}
.golf-page .gallery-item.wide img{width:100%;height:auto}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(40px,7vw,120px);align-items:center;width:100%}
.contact-copy{align-self:center}
.contact-portrait{margin:0;overflow:hidden;max-width:520px;justify-self:end}
.contact-portrait img{display:block;width:100%;height:auto;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.contact-portrait:hover img{transform:scale(1.018)}
.selected-grid .project:last-child{max-width:100%}
@media(max-width:800px){
  .golf-page .gallery-item.wide{grid-column:auto}
  .contact-page{min-height:auto}
  .contact-layout{grid-template-columns:1fr;gap:55px}
  .contact-portrait{justify-self:start;max-width:520px;width:100%}
  .contact-page .contact-bottom{margin-top:70px}
}

/* V6 — natural mixed-aspect portfolio layout */
.v6-gallery{padding-top:10px}.masonry-gallery{columns:2;column-gap:clamp(24px,3vw,52px)}.masonry-gallery .gallery-item{break-inside:avoid;margin:0 0 clamp(24px,3vw,52px);overflow:hidden;display:inline-block;width:100%}.masonry-gallery .gallery-item img,.gallery-feature img{display:block;width:100%;height:auto;object-fit:initial;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.masonry-gallery .gallery-item:hover img,.gallery-feature:hover img{transform:scale(1.018)}.gallery-feature{margin:0 0 clamp(34px,4vw,70px);overflow:hidden;width:100%}.natural-portrait{height:auto!important;min-height:0!important;max-width:900px;margin-left:auto;margin-right:auto;overflow:hidden}.natural-portrait img{width:100%;height:auto!important;object-fit:contain!important;object-position:center!important}@media(max-width:800px){.masonry-gallery{columns:1}.gallery-feature{margin-bottom:24px}}

/* Final homepage spacing adjustment */
@media (min-width: 761px){
  .home-grid{align-items:start;}
  .home-grid .work-card:nth-child(5){margin-top:-28vw;}
}
@media (min-width: 1400px){
  .home-grid .work-card:nth-child(5){margin-top:-25vw;}
}
@media (max-width:760px){
  .home-grid .work-card:nth-child(5){margin-top:0;}
}


/* WordPress integration */
html { margin-top: 0 !important; }
body.admin-bar .site-header { top: 32px; }
@media(max-width:782px) { body.admin-bar .site-header { top:46px; } }
.dp-gallery { columns:2; column-gap:clamp(10px,2vw,28px); }
.dp-gallery-item { break-inside:avoid; margin:0 0 clamp(10px,2vw,28px); overflow:hidden; }
.dp-gallery-item img { width:100%; height:auto; transition:transform 1s cubic-bezier(.2,.7,.2,1); }
.dp-gallery-item:hover img { transform:scale(1.018); }
@media(max-width:800px) {
  .dp-gallery { columns:2; column-gap:10px; }
  .dp-gallery-item { margin-bottom:10px; }
}
.dp-admin-note { max-width:900px; }


/* V2 homepage portfolio flow: remove row-height dead space */
@media (min-width: 761px) {
  .home-grid {
    display: block !important;
    columns: 2;
    column-gap: clamp(28px, 3vw, 56px);
  }
  .home-grid .project {
    display: inline-block;
    width: 100%;
    break-inside: avoid;
    margin: 0 0 clamp(42px, 5vw, 78px) !important;
    vertical-align: top;
  }
  .home-grid .project:nth-child(5) {
    margin-top: 0 !important;
  }
}
@media (max-width: 760px) {
  .home-grid {
    display: block !important;
    columns: 1;
  }
  .home-grid .project {
    display: block;
    width: 100%;
    margin: 0 0 34px !important;
  }
}

/* Guard against accidental horizontal overflow on narrow desktop windows */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}
.site-header,
.home-hero,
.intro,
.work,
.services,
.about,
.contact,
.footer {
  max-width: 100%;
  box-sizing: border-box;
}
