/*
Theme Name: Matt White Photography
Theme URI: https://mattwhitephotography.co.uk/
Author: Matt White Photography
Description: A modern monochrome, parallax photography portfolio theme with editable portfolio projects, homepage sections and contact details.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: matt-white-photography
*/

:root{--black:#0d0d0d;--near:#151515;--charcoal:#262626;--mid:#888;--light:#d0d0d0;--white:#fff;--line:rgba(255,255,255,.16);--max:1440px;--pad:clamp(22px,5vw,84px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:Montserrat,Arial,sans-serif;font-weight:300;line-height:1.65;overflow-x:hidden}.noise{position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E")}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}a{color:inherit;text-decoration:none}img{display:block;width:100%}.site-header{position:absolute;top:0;left:0;width:100%;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:24px var(--pad);border-bottom:1px solid rgba(255,255,255,.12)}.brand{display:flex;align-items:center;gap:14px}.brand-mark{width:58px;height:42px;fill:none;stroke:#fff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter}.brand-mark .muted{stroke:#999}.brand-copy{display:flex;flex-direction:column;line-height:1.15;letter-spacing:.24em}.brand-copy strong{font-size:13px;font-weight:500}.brand-copy small{font-size:7px;margin-top:6px;color:#bbb}.site-nav{display:flex;gap:36px;font-size:12px;letter-spacing:.14em;text-transform:uppercase}.site-nav a{position:relative}.site-nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:#fff;transition:.3s}.site-nav a:hover:after{width:100%}.menu-toggle{display:none;border:0;background:none;padding:10px}.menu-toggle span:not(.sr-only){display:block;width:28px;height:1px;background:#fff;margin:7px 0}.hero{position:relative;min-height:100svh;display:grid;align-items:end;padding:160px var(--pad) 90px;overflow:hidden}.hero-image,.hero-overlay{position:absolute;inset:0}.hero-image{background:url('https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?auto=format&fit=crop&w=2200&q=92') center/cover no-repeat;filter:grayscale(1);transform:scale(1.03)}.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.46) 52%,rgba(0,0,0,.16)),linear-gradient(0deg,rgba(0,0,0,.65),transparent 50%)}.hero-content{position:relative;z-index:2;max-width:950px}.eyebrow{font-size:11px;letter-spacing:.28em;color:#bbb;margin:0 0 22px;text-transform:uppercase}.hero h1,.section-pad h2{margin:0;font-weight:300;text-transform:uppercase;letter-spacing:.02em;line-height:1.05}.hero h1{font-size:clamp(48px,7vw,112px)}.hero h1 span{color:#b5b5b5}.hero-intro{font-size:clamp(15px,1.5vw,20px);max-width:570px;color:#ccc;margin:28px 0 38px}.hero-actions{display:flex;align-items:center;gap:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 27px;text-transform:uppercase;letter-spacing:.18em;font:500 10px Montserrat,sans-serif;transition:.3s;border:1px solid #fff;cursor:pointer}.button-primary{background:#fff;color:#111}.button-primary:hover{background:transparent;color:#fff}.button-outline:hover{background:#fff;color:#111}.text-link{display:inline-flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.15em;font-size:10px;border-bottom:1px solid #777;padding-bottom:7px}.scroll-cue{position:absolute;z-index:2;right:var(--pad);bottom:50px;font-size:9px;letter-spacing:.2em;text-transform:uppercase;writing-mode:vertical-rl;display:flex;align-items:center;gap:14px}.scroll-cue span{display:block;width:1px;height:70px;background:#aaa}.section-pad{position:relative;max-width:var(--max);margin:auto;padding:clamp(90px,11vw,170px) var(--pad)}.section-number{position:absolute;top:45px;right:var(--pad);font-size:10px;letter-spacing:.25em;color:#666}.intro{display:grid;grid-template-columns:1.15fr .85fr;gap:10vw;border-bottom:1px solid var(--line)}.section-pad h2{font-size:clamp(40px,5vw,76px)}.intro-text{align-self:end;max-width:580px;color:#bdbdbd;font-size:16px}.intro-text .text-link{margin-top:22px;color:#fff}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:55px}.filters{display:flex;gap:25px}.filter{background:none;border:0;color:#777;font:500 10px Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:7px 0;cursor:pointer;border-bottom:1px solid transparent}.filter.active,.filter:hover{color:#fff;border-color:#fff}.portfolio-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.work-card{grid-column:span 5;position:relative;overflow:hidden;background:#222;min-height:510px;transition:.4s}.work-card:nth-child(3),.work-card:nth-child(4),.work-card:nth-child(6){grid-column:span 7}.work-card-large{grid-column:span 7;min-height:700px}.work-card-wide{grid-column:span 7}.work-card img{height:100%;object-fit:cover;filter:grayscale(1);transition:transform .8s,filter .5s}.work-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent 50%)}.work-card:hover img{transform:scale(1.04);filter:grayscale(.2)}.work-meta{position:absolute;z-index:2;left:26px;right:26px;bottom:24px;display:grid;grid-template-columns:1fr auto;gap:7px;align-items:end}.work-meta span{grid-column:1;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#ccc}.work-meta strong{grid-column:1;font-size:19px;letter-spacing:.08em;text-transform:uppercase;font-weight:400}.work-meta small{grid-column:2;grid-row:1/3;color:#aaa}.work-card.hidden{display:none}.services{border-top:1px solid var(--line)}.service-list{margin-top:45px;border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:65px 1.1fr 1.2fr 40px;gap:35px;align-items:center;padding:35px 0;border-bottom:1px solid var(--line)}.service-row span{font-size:10px;color:#666}.service-row h3{font-size:clamp(20px,2vw,30px);font-weight:300;text-transform:uppercase;margin:0}.service-row p{color:#999;margin:0;font-size:14px}.service-row>a{font-size:22px;text-align:right;transition:.3s}.service-row:hover>a{transform:translate(5px,-5px)}.about{max-width:none;padding-left:0;padding-right:0;display:grid;grid-template-columns:1.08fr .92fr;background:#121212}.about-image{min-height:720px}.about-image img{height:100%;object-fit:cover;filter:grayscale(1)}.about-copy{padding:clamp(70px,9vw,150px) var(--pad);align-self:center;max-width:700px}.about-copy .lead{font-size:clamp(20px,2vw,29px);line-height:1.5;color:#eee}.about-copy p:not(.eyebrow):not(.lead){color:#aaa}.about-copy .button{margin-top:20px}.testimonial{text-align:center;max-width:1150px}.quote-mark{width:58px;fill:#333;margin:0 auto 40px}.testimonial blockquote{font-size:clamp(25px,3.5vw,50px);line-height:1.4;margin:0;font-weight:300}.testimonial>p{font-size:9px;letter-spacing:.22em;color:#777;margin-top:35px}.contact{max-width:none;background:#e8e8e8;color:#111;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact .eyebrow{color:#555}.contact-heading{max-width:650px}.contact-heading>p:not(.eyebrow){color:#555;max-width:520px}.email-link{display:inline-block;margin-top:25px;font-size:clamp(13px,1.5vw,20px);border-bottom:1px solid #111}.contact-form{display:grid;gap:28px}.contact-form label{display:grid;gap:9px}.contact-form span{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#555}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:0;border-bottom:1px solid #999;background:transparent;padding:10px 0;border-radius:0;font:400 15px Montserrat,sans-serif;color:#111;outline:none}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:#111}.contact-form .button{justify-self:start;background:#111;color:#fff;border-color:#111}.contact-form .button:hover{background:transparent;color:#111}.site-footer{padding:48px var(--pad);display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;border-top:1px solid var(--line)}.footer-brand .brand-mark{width:48px}.footer-links{display:flex;gap:30px;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.site-footer>p{grid-column:1/-1;color:#666;font-size:9px;letter-spacing:.14em;text-transform:uppercase;margin:0}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:850px){.site-header{padding-top:18px}.site-nav{position:fixed;inset:0;background:#0d0d0d;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:32px;font-size:18px;transform:translateY(-100%);transition:.4s;z-index:-1}.site-nav.open{transform:none}.menu-toggle{display:block;z-index:2}.brand-copy{display:none}.intro,.contact{grid-template-columns:1fr}.intro{gap:45px}.section-heading{align-items:start;flex-direction:column;gap:28px}.filters{flex-wrap:wrap;gap:14px 22px}.portfolio-grid{display:block}.work-card,.work-card-large,.work-card-wide,.work-card:nth-child(n){min-height:500px;margin-bottom:18px}.service-row{grid-template-columns:38px 1fr 25px;gap:20px}.service-row p{grid-column:2/4}.about{grid-template-columns:1fr}.about-image{min-height:520px}.contact{gap:70px}.site-footer{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.hero h1{font-size:clamp(43px,12vw,70px)}.scroll-cue{display:none}}
@media(max-width:520px){.hero{padding-bottom:65px}.hero-actions{align-items:flex-start;flex-direction:column;gap:24px}.work-card,.work-card-large,.work-card-wide,.work-card:nth-child(n){min-height:420px}.service-row h3{font-size:18px}.about-image{min-height:420px}.site-footer{padding-top:38px;padding-bottom:38px}}

/* Enhanced parallax depth */
.parallax-layer{--parallax-y:0px;transform:translate3d(0,var(--parallax-y),0);will-change:transform}
.reveal.parallax-layer{opacity:0;transform:translate3d(0,calc(25px + var(--parallax-y)),0);transition:opacity .8s ease,transform .8s ease}
.reveal.parallax-layer.visible{opacity:1;transform:translate3d(0,var(--parallax-y),0)}
.hero-image.parallax-layer{inset:-10%;transform:translate3d(0,var(--parallax-y),0) scale(1.12);will-change:transform}
.hero-orbit{position:absolute;z-index:1;border:1px solid rgba(255,255,255,.12);border-radius:50%;pointer-events:none}
.hero-orbit-one{width:min(52vw,760px);aspect-ratio:1;right:-12vw;top:8vh}
.hero-orbit-two{width:min(24vw,360px);aspect-ratio:1;right:18vw;top:24vh;border-color:rgba(255,255,255,.07)}
.parallax-window{overflow:hidden;position:relative}
.parallax-media{will-change:transform;transform:translate3d(0,var(--media-y,0px),0) scale(1.12)!important}
.work-card:hover .parallax-media{filter:grayscale(.2);transform:translate3d(0,var(--media-y,0px),0) scale(1.16)!important}
.about-image .parallax-media{height:118%;margin-top:-9%;object-fit:cover}
.work-card{transform:translateZ(0)}
.work-card:nth-child(even){margin-top:clamp(25px,4vw,65px)}
.services:before{content:"";position:absolute;left:8%;top:8%;width:34vw;height:34vw;border:1px solid rgba(255,255,255,.035);border-radius:50%;pointer-events:none}
@media(max-width:850px){.hero-orbit{display:none}.work-card:nth-child(even){margin-top:0}.parallax-media{transform:scale(1.08)!important}.work-card:hover .parallax-media{transform:scale(1.11)!important}}
@media(prefers-reduced-motion:reduce){.parallax-layer,.parallax-media{transform:none!important;will-change:auto}.reveal.parallax-layer{transform:none}.hero-image.parallax-layer{transform:scale(1.03)!important}}


/* WordPress content and utility styles */
.admin-bar .site-header{top:32px}.custom-logo{max-width:210px;height:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-shell{max-width:1100px;margin:0 auto;padding:180px var(--pad) 110px}.page-shell h1{font-size:clamp(42px,6vw,86px);font-weight:300;text-transform:uppercase;line-height:1.05}.entry-content{color:#c6c6c6}.entry-content a{text-decoration:underline}.post-list{display:grid;gap:50px}.post-card{border-bottom:1px solid var(--line);padding-bottom:45px}.post-card h2{font-weight:300;text-transform:uppercase}.post-card .post-meta{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#777}.notice{padding:14px 18px;margin-bottom:22px;border:1px solid currentColor}.notice-success{color:#196c36}.notice-error{color:#8e2424}.contact-form .honeypot{position:absolute!important;left:-9999px!important}.nav-links{display:flex;gap:20px;margin-top:45px}.wp-block-image img{height:auto}.portfolio-empty{grid-column:1/-1;color:#888;border:1px solid var(--line);padding:35px}.site-nav .menu{display:flex;gap:36px;list-style:none;margin:0;padding:0}.site-nav .menu a{position:relative}.site-nav .menu a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:#fff;transition:.3s}.site-nav .menu a:hover:after{width:100%}
@media(max-width:850px){.site-nav .menu{flex-direction:column;align-items:center;gap:32px}.admin-bar .site-header{top:46px}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
