/* Photographic editorial: image-first opening, asymmetrical selection, visual stories. */
.pp-hero{position:relative;isolation:isolate;min-height:650px;height:78svh;max-height:1000px;margin:28px calc(-1 * var(--pp-gutter)) 0;overflow:hidden;background:#242424;display:flex;align-items:flex-end;padding:clamp(28px,5vw,76px)}
.pp-hero-media{position:absolute;inset:0;z-index:-2;overflow:hidden}
.pp-hero-media img{width:100%;height:100%;object-fit:cover;object-position:50% 38%;filter:brightness(.78);transition:transform 1.2s ease,filter 1.2s ease}
.pp-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent 72%);pointer-events:none}
.pp-hero-copy{max-width:900px}.pp-hero-copy p{font-size:12px;letter-spacing:.2em;color:#fff}
.pp-site .pp-hero h1{font-size:clamp(44px,6.8vw,96px);letter-spacing:-.055em;margin:22px 0 32px;line-height:.98}
.pp-hero-copy>a{font-size:12px;font-weight:700;letter-spacing:.12em;border-bottom:1px solid #aaa;padding:12px 0;display:inline-block}
.pp-hero-copy>a span{margin-left:24px}.pp-hero-location{position:absolute;right:var(--pp-gutter);top:28px;letter-spacing:.15em;font-size:11px;color:#fff}
#portfolio{padding-top:100px;padding-bottom:110px;background:#151515}
.pp-categories{grid-template-columns:repeat(12,minmax(0,1fr));gap:68px 32px;align-items:start}
.pp-categories .pp-card:first-child{grid-column:1/9}
.pp-categories .pp-card:nth-child(2){grid-column:10/13;margin-top:120px}
.pp-categories .pp-card:nth-child(3){grid-column:2/6;margin-top:60px}
.pp-categories .pp-card:nth-child(4){grid-column:7/13}
.pp-categories .pp-card:nth-child(5){grid-column:1/10;margin-top:20px}
.pp-categories .pp-card:first-child img{aspect-ratio:5/4}
.pp-categories .pp-card:nth-child(2) .pp-placeholder{aspect-ratio:3/4;padding:20px;text-align:center}
.pp-categories .pp-card:nth-child(3) img{aspect-ratio:3/4}
.pp-categories .pp-card:nth-child(4) img{aspect-ratio:4/3}
.pp-categories .pp-card:nth-child(5) img{aspect-ratio:16/8}
.pp-categories .pp-card h3{font-size:clamp(20px,2.5vw,36px);border:0}
#projects{background:#0A0A0A;color:#FAFAF8}
#projects h2,#projects h3{color:#FAFAF8}#projects .pp-heading>span{color:#E86824}
.pp-projects{grid-template-columns:repeat(12,minmax(0,1fr));gap:56px 32px}
#projects .pp-card:first-child{grid-column:1/-1}
#projects .pp-card:first-child img{aspect-ratio:16/8}
#projects .pp-card:nth-child(2n){grid-column:1/7;margin-top:0}
#projects .pp-card:nth-child(2n+3){grid-column:8/13;margin-top:100px}
#projects .pp-card:nth-child(2n+3) img{aspect-ratio:4/5}
#projects .pp-card h3{border-color:#454545}
.pp-site footer#pp-contact.pp-contact-home{margin-inline:calc(-1 * var(--pp-gutter));padding:90px var(--pp-gutter);background:#242424}
.pp-story{columns:auto;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(24px,5vw,80px) 28px;align-items:center}
.pp-story>.pp-photo{grid-column:span 6;margin:0}
.pp-story>.pp-photo:nth-of-type(1),.pp-story>.pp-photo:nth-of-type(6n),.pp-story>.pp-photo:last-of-type{grid-column:1/-1}
.pp-story>.pp-photo:nth-of-type(6n+4){grid-column:2/7}
.pp-story>.pp-photo:nth-of-type(6n+5){grid-column:8/12}
.pp-story img{width:100%;height:auto;max-height:90vh;object-fit:contain;background:transparent}
.pp-story-copy{grid-column:3/11;font-size:clamp(17px,2vw,24px);line-height:1.65;padding:30px 0}
.pp-story-copy p:last-child{font-size:13px;color:#aaa}.pp-project-body{padding-top:0}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.pp-hero:hover .pp-hero-media img{transform:scale(1.025);filter:brightness(.95)}}
@media(max-width:700px){
 .pp-hero{min-height:560px;height:76svh;margin-top:24px;padding:28px 24px}.pp-hero-media img{object-position:58% center}
 .pp-site .pp-hero h1{font-size:clamp(40px,10vw,65px)}.pp-hero-location{right:24px}
 #portfolio{padding-top:56px;padding-bottom:60px}
 .pp-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 18px}
 .pp-categories .pp-card:nth-child(n){grid-column:1/-1;margin-top:0}
 .pp-categories .pp-card:nth-child(2){grid-column:1/2}.pp-categories .pp-card:nth-child(3){grid-column:2/3;margin-top:56px}
 .pp-categories .pp-card h3{font-size:18px;gap:8px}.pp-categories .pp-card h3 span{width:24px;height:24px}
 .pp-categories .pp-card:nth-child(2) .pp-placeholder{padding:8px}.pp-placeholder::after{font-size:9px;letter-spacing:.06em}
 .pp-projects{display:flex;gap:18px}#projects .pp-card:nth-child(n){margin-top:0}#projects .pp-card:nth-child(n) img{aspect-ratio:4/3}
 .pp-scroll-hint{color:#aaa}.pp-rail-controls button{color:#fff;border-color:#777}
 .pp-story{grid-template-columns:1fr 1fr;gap:24px 12px}.pp-story>.pp-photo:nth-of-type(n){grid-column:span 1}
 .pp-story>.pp-photo:first-of-type,.pp-story>.pp-photo:last-of-type,.pp-story>.pp-photo:nth-of-type(6n){grid-column:1/-1}
 .pp-story-copy{grid-column:1/-1;padding:20px 0;font-size:18px}
 .pp-site footer#pp-contact.pp-contact-home{padding-top:60px;padding-bottom:60px}
}
@media(prefers-reduced-motion:reduce){.pp-hero-media img{transition:none;transform:none}}
/* Chapter slides replace native snapping, so galleries remain freely scrollable. */
@media(prefers-reduced-motion:no-preference){
 .pp-chapter-arrive>.pp-heading{animation:pp-chapter-land .85s cubic-bezier(.16,1,.3,1) both}
 .pp-chapter-arrive>.pp-categories,.pp-chapter-arrive>.pp-projects,.pp-chapter-arrive>.ppc-grid{animation:pp-chapter-land 1s cubic-bezier(.16,1,.3,1) both}
 @keyframes pp-chapter-land{from{translate:0 90px;opacity:.6}to{translate:0 0;opacity:1}}
}

.pp-section-intro{max-width:650px;font-size:clamp(16px,1.6vw,21px);line-height:1.6;margin:0 0 48px;color:#ccc}
.pp-site .pp-hero h1{font-size:clamp(38px,6.2vw,88px)}
@media(max-width:700px){.pp-site .pp-hero h1{font-size:clamp(30px,8vw,54px)}}

.pp-hero-copy .pp-hero-services{font-size:13px;letter-spacing:.04em;margin:16px 0}
.pp-about{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;padding:90px 0}.pp-about h2{font-size:clamp(42px,6vw,80px);letter-spacing:-.04em;margin-top:22px}.pp-about-kicker{color:#E86824;font-size:12px;letter-spacing:.15em}.pp-about-copy{font-size:18px;line-height:1.7;max-width:680px}.pp-about-lead{font-size:clamp(23px,3vw,34px);line-height:1.3}.pp-about-copy>a{display:inline-block;margin-top:22px;color:#E86824;font-size:13px;font-weight:bold;letter-spacing:.06em}
@media(max-width:700px){.pp-about{grid-template-columns:1fr;gap:12px;padding:60px 0}.pp-about-copy{font-size:16px}}

/* Brand manual v1.0: locally hosted Barlow Condensed + Inter. */
.pp-site{--pp-accent:#E86824;font-family:Inter,Arial,sans-serif;color:#FAFAF8}
.pp-site h1,.pp-site h2,.pp-site h3,.pp-nav>a,.pp-heading>span,.pp-about-kicker,.ppc-kicker{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:600}
.pp-site h1,.pp-site h2{font-weight:700}.pp-nav>a{letter-spacing:.02em;font-size:30px}
.pp-site .pp-hero h1{line-height:.94;letter-spacing:-.025em}
.pp-site input,.pp-site select,.pp-site textarea,.pp-site button{font-family:Inter,Arial,sans-serif}
.pp-site .ppc-grid button{background:#E86824;color:#0A0A0A;font-weight:600}
.pp-site .ppc-kicker,.pp-about-kicker{color:#E86824}
.pp-site .ppc-grid input:focus,.pp-site .ppc-grid textarea:focus,.pp-site .ppc-grid select:focus{outline-color:#E86824}
.pp-site .ppc-grid label{font-weight:600}

/* Primary logo: PUTNOKI. PHOTO, common baseline and 2:1 size ratio. */
.pp-site .pp-nav>a{display:inline-flex;align-items:baseline;gap:.22em;white-space:nowrap;line-height:1;text-transform:uppercase;font-family:'Barlow Condensed',Impact,sans-serif}
.pp-site .pp-nav>a .pp-brand-main{font-size:32px;font-weight:700;letter-spacing:.01em;color:#FAFAF8}
.pp-site .pp-nav>a .pp-brand-dot{color:#E86824}
.pp-site .pp-nav>a .pp-brand-photo{font-size:16px;font-weight:500;letter-spacing:.12em;color:#FAFAF8}

/* Keep the complete photograph in portfolio and project previews, at every viewport. */
.pp-site .pp-card:nth-child(n) img,.pp-site .pp-photo img{aspect-ratio:var(--pp-image-ratio,auto)!important;height:auto;object-fit:contain}
.pp-site .pp-card:hover img{transform:none}

/* Project detail: cover, introduction, then a calm gallery in upload order. */
.pp-project-heading{padding-bottom:0}
.pp-project-heading .pp-intro{padding:36px 0 28px}
.pp-project-heading .pp-intro h1{margin:12px 0 0;font-size:clamp(34px,5vw,70px)}
.pp-project-heading .pp-intro p{margin:0;font-size:12px;letter-spacing:.14em;color:#E86824}
.pp-project-cover .pp-photo{margin:0}
.pp-project-cover img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.pp-project-description{max-width:720px;margin:0 auto;padding:36px 0 48px}
.pp-project-body .pp-story{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}
.pp-project-body .pp-story>.pp-photo:nth-of-type(n){grid-column:auto;margin:0;min-width:0}
.pp-project-body .pp-story img{width:100%;height:auto;max-height:none;object-fit:contain}
@media(max-width:700px){
 .pp-project-heading,.pp-project-body{padding-left:20px;padding-right:20px}
 .pp-project-heading .pp-nav{gap:16px;padding-bottom:18px}
 .pp-project-heading .pp-intro{padding:24px 0 20px}
 .pp-project-heading .pp-intro h1{font-size:clamp(32px,9vw,48px);line-height:1.05}
 .pp-project-description{padding:28px 0 32px}
 .pp-project-body .pp-story{grid-template-columns:minmax(0,1fr);gap:24px}
 .pp-project-body .pp-story>.pp-photo:nth-of-type(n){grid-column:1/-1}
}

.pp-site .pp-portfolio-intro{padding:28px 0 24px}
.pp-site .pp-portfolio-intro h1{font-size:clamp(32px,5vw,64px);margin:16px 0 0;line-height:1.05}
.pp-portfolio-intro+.pp-gallery{columns:2;column-gap:24px}
.pp-portfolio-intro+.pp-gallery:has(>.pp-photo:only-child){columns:1;max-width:1100px}
@media(max-width:700px){.pp-portfolio-intro+.pp-gallery{columns:1}.pp-site .pp-portfolio-intro{padding:22px 0 20px}}

/* Compact project copy; photography keeps its full size. */
.pp-project-description{max-width:850px;font-size:18px;line-height:1.65}
.pp-project-description p{margin:0 0 18px}
.pp-project-description p:last-child{font-size:inherit;color:inherit}
.pp-project-description h2{font-size:clamp(26px,3vw,36px);margin:26px 0 14px}
.pp-project-description hr{margin:24px 0}
.pp-orange-dot{color:#E86824!important}
@media(max-width:700px){.pp-project-description{font-size:17px;line-height:1.6}.pp-project-description h2{font-size:28px}}

/* User-controlled category widths: editorial rhythm without tiny cards. */
.pp-site .pp-categories{grid-template-columns:repeat(12,minmax(0,1fr));gap:56px 32px;align-items:start}
.pp-site .pp-categories .pp-card:nth-child(n){grid-column:auto / span 6;margin:0;min-width:0}
.pp-site .pp-categories .pp-card.pp-size-3{grid-column:auto / span 3}
.pp-site .pp-categories .pp-card.pp-size-4{grid-column:auto / span 4}
.pp-site .pp-categories .pp-card.pp-size-5{grid-column:auto / span 5}
.pp-site .pp-categories .pp-card.pp-size-6{grid-column:auto / span 6}
.pp-site .pp-categories .pp-card.pp-size-7{grid-column:auto / span 7}
.pp-site .pp-categories .pp-card.pp-size-12{grid-column:1 / -1}
.pp-site .pp-categories .pp-card:nth-child(even):not(.pp-size-12){margin-top:48px}
@media(max-width:700px){.pp-site .pp-categories{grid-template-columns:minmax(0,1fr);gap:32px}.pp-site .pp-categories .pp-card:nth-child(n){grid-column:1 / -1;margin:0}}

/* Natural photo heights, packed independently instead of rigid rows. */
.pp-project-body .pp-story.pp-packed{position:relative;display:block;columns:auto}
.pp-project-body .pp-story.pp-packed>.pp-photo:nth-of-type(n){position:absolute;margin:0;box-sizing:border-box}
.pp-project-body .pp-story.pp-packed img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}

/* Persistent navigation on homepage, portfolio and project pages. */
body{--pp-nav-height:76px;--pp-admin-height:0px}
body.admin-bar{--pp-admin-height:32px}
.pp-site:has(>.pp-nav){padding-top:calc(var(--pp-nav-height) + var(--pp-gutter,24px))}
.pp-site .pp-nav{position:fixed;inset:var(--pp-admin-height) 0 auto;z-index:9990;height:var(--pp-nav-height);margin:0;padding:12px clamp(20px,5vw,80px);display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:20px;background:rgba(10,10,10,.97);border-bottom:1px solid #3c3c3c;box-shadow:0 5px 22px #0003;backdrop-filter:blur(12px)}
.pp-site .pp-nav>div{display:flex;flex-wrap:nowrap;gap:24px}
#portfolio,#projects,#pp-contact,#pp-top{scroll-margin-top:calc(var(--pp-nav-height) + var(--pp-admin-height) + 16px)}
@media(max-width:782px){body.admin-bar{--pp-admin-height:46px}body.admin-bar #wpadminbar{position:fixed}}
@media(max-width:650px){body{--pp-nav-height:104px}.pp-site .pp-nav{flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:12px 20px}.pp-site .pp-nav>div{gap:22px;font-size:12px}.pp-site .pp-nav>a .pp-brand-main{font-size:28px}.pp-site .pp-nav>a .pp-brand-photo{font-size:14px}}

/* A quiet veil lifts on interactive homepage photographs. */
.pp-site #portfolio .pp-card img,.pp-site #projects .pp-card img{filter:brightness(.78);transform:scale(1);transition:transform .8s cubic-bezier(.2,.6,.2,1),filter .8s ease}
.pp-site #portfolio .pp-card:focus-visible img,.pp-site #projects .pp-card:focus-visible img{filter:brightness(1)}
.pp-hero-open{position:absolute;inset:0;z-index:0;cursor:zoom-in}
.pp-hero-open>span{position:absolute;right:var(--pp-gutter,24px);bottom:28px;font-size:11px;letter-spacing:.12em;color:#FAFAF8;background:#0a0a0a80;padding:10px 12px}
.pp-hero-copy{position:relative;z-index:1;pointer-events:none}.pp-hero-copy a{pointer-events:auto}.pp-hero-location{pointer-events:none}
.pp-hero:focus-within .pp-hero-media img{filter:brightness(1)}
@media(hover:hover){.pp-site #portfolio .pp-card:hover img,.pp-site #projects .pp-card:hover img{filter:brightness(1);transform:scale(1.025)}.pp-hero:hover .pp-hero-media img{filter:brightness(1);transform:scale(1.025)}}
@media(hover:none){.pp-site #portfolio .pp-card img,.pp-site #projects .pp-card img{filter:brightness(1)}.pp-hero-open>span{bottom:12px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.pp-site #portfolio .pp-card img,.pp-site #projects .pp-card img,.pp-hero-media img{transition:none!important;transform:none!important}}

/* 1.8.3: calm mobile scrolling and a frame-free gallery viewer. */
html.pp-lightbox-open{overflow:hidden;overscroll-behavior:none}
.pp-site dialog.pp-lightbox{position:fixed;inset:0;margin:0;width:100%;min-width:0;max-width:none;height:100vh;height:100dvh;min-height:0;max-height:none;padding:12px 24px;padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom));border:0;border-radius:0;background:transparent;box-shadow:none;color:#fff;overflow:hidden;box-sizing:border-box}
.pp-site dialog.pp-lightbox[open]{display:grid;grid-template-rows:48px minmax(0,1fr) minmax(56px,auto);gap:12px}
.pp-site dialog.pp-lightbox::backdrop{background:rgba(0,0,0,.92)}
.pp-lightbox .pp-lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;min-width:0}
.pp-lightbox .pp-lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;overflow:hidden}
.pp-site .pp-lightbox img.pp-lightbox-image{display:block;width:auto;height:auto;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;border:0;border-radius:0;box-shadow:none;background:transparent;margin:0;padding:0}
.pp-lightbox .pp-lightbox-footer{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:12px;min-width:0}
.pp-site .pp-lightbox button{position:static;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;margin:0;padding:0;min-width:0;border:0;border-radius:0;box-shadow:none;background:transparent;color:#fff;font:32px/1 Arial,sans-serif;cursor:pointer}
.pp-site .pp-lightbox button:hover{color:#E86824;background:transparent}
.pp-site .pp-lightbox :focus-visible{outline:2px solid #E86824;outline-offset:-2px}
.pp-lightbox .pp-lightbox-count{font:14px/1.4 Inter,sans-serif;font-variant-numeric:tabular-nums}
.pp-lightbox .pp-lightbox-project{grid-column:2;text-align:center;font:12px/1.5 Inter,sans-serif;color:#fff;text-decoration:none;overflow-wrap:anywhere}
.pp-lightbox .pp-lightbox-next{grid-column:3}
.pp-lightbox .pp-lightbox-project:hover{color:#E86824}
.pp-lightbox .pp-lightbox-status{position:absolute;text-align:center;margin:0}
.pp-site .pp-lightbox [hidden]{display:none!important}
.ppc-grid select{appearance:none;-webkit-appearance:none;padding-right:48px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'%3E%3Cpath d='m2 2 6 6 6-6' fill='none' stroke='%23ffffff' stroke-width='2'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 18px center!important;background-size:14px 9px!important}
@media(max-width:700px){
 .pp-site .pp-projects{display:grid;grid-template-columns:minmax(0,1fr);overflow:visible;scroll-snap-type:none;padding-bottom:0;gap:32px}
 .pp-site #projects .pp-projects .pp-card:nth-child(n){grid-column:1;margin:0;width:100%;min-width:0;flex:auto;scroll-snap-align:none}
 .pp-site .pp-scroll-hint,.pp-site .pp-rail-controls{display:none}
 .pp-site .pp-reveal{opacity:1;transform:none;translate:none}
 .pp-site #portfolio,.pp-site #projects,.pp-site #pp-contact{scroll-snap-align:none}
 .pp-site #portfolio{padding-top:40px;padding-bottom:48px}
 .pp-site dialog.pp-lightbox{padding-left:12px;padding-right:12px}
 .pp-site dialog.pp-lightbox[open]{gap:8px}
}
.pp-site .pp-lightbox .pp-lightbox-toolbar,.pp-site .pp-lightbox .pp-lightbox-footer{margin:0;padding:0;border:0;background:transparent;box-shadow:none}

/* Gallery gestures and progressively disclosed homepage projects. */
.pp-lightbox-stage{touch-action:pan-y pinch-zoom}
.pp-lightbox-stage.pp-can-navigate{cursor:pointer}
.pp-lightbox-stage img{user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
.pp-site #projects .pp-card[hidden],.pp-site .pp-projects-more[hidden]{display:none!important}
.pp-site .pp-projects-more{display:block;margin:40px auto 0;padding:16px 26px;border:1px solid #E86824;border-radius:0;background:transparent;color:#FAFAF8;font:600 13px/1.4 Inter,sans-serif;letter-spacing:.08em;cursor:pointer}
.pp-site .pp-projects-more:hover{background:#E86824;color:#0A0A0A}
.pp-site .pp-projects-progress{margin:14px 0 0;text-align:center;font:12px/1.5 Inter,sans-serif;letter-spacing:.08em;color:#aaa}

.pp-site .pp-categories.pp-category-packed{position:relative;display:block}.pp-site .pp-categories.pp-category-packed .pp-card:nth-child(n){position:absolute;margin:0;box-sizing:border-box}.pp-site .pp-categories .pp-card h3{position:relative;z-index:2;font-size:clamp(28px,3.2vw,52px)!important;line-height:1.05;margin:-.45em 0 20px!important;padding-left:12px;text-shadow:0 2px 14px rgba(0,0,0,.8)}@media(max-width:700px){.pp-site .pp-categories .pp-card h3{font-size:34px!important}}

/* Shared overlapping project titles and quieter Behind copy. */
.pp-site .pp-projects .pp-card h3,.pp-site .pp-service-projects .pp-card h3{position:relative;z-index:2;font-size:clamp(28px,3.2vw,52px)!important;line-height:1.05;margin:-.45em 0 20px!important;padding-left:12px;text-shadow:0 2px 14px rgba(0,0,0,.8)}
.pp-site .pp-projects-more{width:420px!important;max-width:100%;min-height:72px!important;padding:22px 32px!important;font-size:18px!important}
.pp-site #pp-about .pp-about-copy .pp-about-lead{font-size:24px!important;line-height:1.4!important}
.pp-site #pp-about .pp-about-copy p:not(.pp-about-lead){font-size:18px!important;line-height:1.7!important}
@media(max-width:700px){.pp-site .pp-projects .pp-card h3,.pp-site .pp-service-projects .pp-card h3{font-size:34px!important}.pp-site .pp-projects-more{min-height:64px!important;padding:18px 24px!important}.pp-site #pp-about .pp-about-copy .pp-about-lead{font-size:22px!important}}

/* Four typography levels; preserve the photographic hero and name compositions. */
.pp-site,main{--pp-type-small:14px;--pp-type-body:18px;--pp-type-lead:24px;--pp-type-heading:clamp(34px,3.2vw,52px)}
.pp-site p,.pp-site li,main p,main li,.pp-site input,.pp-site textarea,.pp-site select,main input,main textarea,main select{font-family:Inter,sans-serif!important;font-size:var(--pp-type-body)!important}
.pp-site h1,.pp-site h2,.pp-site h3,main h1,main h2,main h3{font-family:'Barlow Condensed',sans-serif!important;font-weight:700!important}
.pp-site h1,.pp-site h2,.pp-site h3,main h1,main h2,main h3{font-size:var(--pp-type-heading)!important}
.pp-site .pp-nav a,main .pp-nav a,.pp-site button,main button,.pp-site label,main label,.pp-site .pp-back-link,main .pp-back-link,.pp-site .pp-photo figcaption,.pp-site .pp-photo figcaption a,main .pp-photo figcaption,main .pp-photo figcaption a,.pp-site .pp-projects-progress,.pp-site .pp-seo-more,.pp-site .pp-seo-more a{font-family:Inter,sans-serif!important;font-size:var(--pp-type-small)!important}
.pp-site .pp-section-intro,main .pp-service-lead,.pp-site .pp-service-lead,.pp-site #pp-about .pp-about-copy .pp-about-lead{font-size:var(--pp-type-lead)!important}
.pp-site #pp-about .pp-about-copy p:not(.pp-about-lead){font-size:var(--pp-type-body)!important}
.pp-site .pp-projects-more{font-size:var(--pp-type-body)!important}
.pp-site .pp-categories .pp-card h3,.pp-site .pp-projects .pp-card h3,.pp-site .pp-service-projects .pp-card h3{font-size:var(--pp-type-heading)!important}
.pp-site .pp-services-disclosure summary h2,.pp-site .pp-services-grid h3,main .pp-services-grid h3{font-size:var(--pp-type-lead)!important}
.pp-site .pp-hero h1{font:500 var(--pp-type-small)/1.4 Inter,sans-serif!important}
.pp-site .pp-hero .pp-hero-brand{font-family:'Barlow Condensed',sans-serif!important;font-size:clamp(44px,6vw,96px)!important}
.pp-site #pp-about .pp-behind-visual h2{font-size:15.07cqw!important}
.pp-site .pp-hero .pp-hero-location{font-size:var(--pp-type-small)!important}

.pp-site a,main a,.pp-site small,main small{font-family:Inter,sans-serif;font-size:var(--pp-type-small)}
.pp-site h1 a,.pp-site h2 a,.pp-site h3 a,main h1 a,main h2 a,main h3 a{font-family:inherit!important;font-size:inherit!important}
.pp-site .pp-intro>p,main .pp-intro>p{font-size:var(--pp-type-lead)!important}

.pp-nav .pp-brand-main{font-family:"Barlow Condensed",sans-serif!important}.pp-nav .pp-brand-photo{font-family:Inter,sans-serif!important}

/* Mobile navigation: shared dimensions for home, galleries and projects. */
.pp-site .pp-nav{box-sizing:border-box;max-width:100%;min-width:0}
.pp-site .pp-nav>div{min-width:0;max-width:100%;box-sizing:border-box}
@media(max-width:650px){
 .pp-site .pp-nav{width:100%;padding:12px 20px;gap:12px}
 .pp-site .pp-nav>div{width:100%;justify-content:space-between;gap:8px;flex-wrap:nowrap}
 .pp-site .pp-nav>div>a{font-size:12px!important;letter-spacing:.02em;white-space:nowrap;min-width:0}
}

/* Portfolio order follows rows, matching admin and lightbox order. */
.pp-site .pp-gallery{columns:auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;align-items:start;gap:28px}
.pp-site .pp-gallery>.pp-photo{margin:0!important;min-width:0;width:100%;break-inside:auto}
.pp-site .pp-gallery>.pp-photo img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:700px){.pp-site .pp-gallery{grid-template-columns:minmax(0,1fr);gap:24px}}
