/* Lumen Photography — responsive portfolio */
:root{--ink:#24251f;--muted:#77796f;--paper:#f5f3ee;--cream:#e9e5dc;--accent:#a46e50;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.7}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 64px));margin-inline:auto}.site-header{height:82px;position:absolute;z-index:10;inset:0 0 auto;color:white;border-bottom:1px solid #ffffff35}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.16em;font-weight:700}.brand-mark{width:34px;height:34px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font:20px var(--serif);letter-spacing:0}.brand-light{font-weight:400;opacity:.72}.nav-links{display:flex;align-items:center;gap:38px;font-size:12px;letter-spacing:.08em}.nav-links>a:not(.nav-cta){opacity:.85;transition:opacity .2s}.nav-links>a:hover{opacity:1}.nav-cta{border:1px solid #ffffff90;padding:10px 17px}.nav-cta span{margin-left:12px}.menu-toggle{display:none;background:none;border:0;color:white;padding:8px}.menu-toggle span{display:block;width:25px;height:1px;background:currentColor;margin:6px}
.hero{height:min(820px,100vh);min-height:650px;position:relative;background:#5b5146;color:white;display:flex;align-items:center;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background:url("https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=2200&q=90") center 43%/cover}.hero-shade{background:linear-gradient(90deg,#171914a8 0%,#17191454 48%,#17191405 100%)}.hero-content{position:relative;padding-top:70px}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:700;color:var(--accent);margin:0 0 22px}.eyebrow.light{color:#e6c8ae}.hero h1{font:clamp(58px,8vw,105px)/1.03 var(--serif);font-weight:500;letter-spacing:-.045em;margin:0 0 25px}.hero h1 em,h2 em{font-weight:500}.hero-copy{max-width:390px;color:#f3eee8;margin:0 0 34px;font-size:16px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:15px 20px;font:600 11px var(--sans);letter-spacing:.08em;text-transform:uppercase;border:1px solid;cursor:pointer;transition:background .2s,color .2s}.button span{font-size:17px}.button-light{border-color:#ffffffa6;color:white}.button-light:hover{background:white;color:var(--ink)}.hero-note{position:absolute;right:32px;bottom:35px;font-size:9px;letter-spacing:.16em;display:flex;align-items:center;gap:13px}.hero-note span{width:54px;height:1px;background:#ffffff9c}
.section-pad{padding:120px 0}.intro-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:8%;align-items:start}.intro-grid>.eyebrow{padding-top:15px}.intro h2,.section-heading h2,.services h2,.about h2,.contact h2{font:clamp(42px,5vw,65px)/1.12 var(--serif);letter-spacing:-.035em;font-weight:500;margin:0 0 24px}.intro-text{max-width:570px;color:var(--muted);font-size:16px}.text-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid #aaa69b;padding:8px 0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-top:18px}.text-link span{font-size:16px;color:var(--accent)}
.work{background:#ebe8e1}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:45px}.section-heading h2{margin:0}.section-heading .eyebrow{margin-bottom:13px}.desktop-link{margin:0 0 8px}.gallery{display:grid;grid-template-columns:1.08fr .92fr;gap:22px}.gallery-item{margin:0;position:relative;min-height:360px;overflow:hidden;background:#d4cec3}.gallery-item img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}.gallery-item:hover img{transform:scale(1.035)}.gallery-tall{grid-row:span 2;min-height:745px}.gallery-wide{grid-column:2;min-height:360px}.gallery-item:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#1617118c)}.gallery-item figcaption{position:absolute;z-index:1;bottom:24px;left:27px;color:white;display:flex;flex-direction:column;gap:5px}.gallery-item figcaption span{font-size:9px;letter-spacing:.17em}.gallery-item figcaption strong{font:23px var(--serif);font-weight:500}
.services{background:var(--paper)}.services-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:9%;margin-top:28px}.services h2{font-size:clamp(42px,4.8vw,61px)}.service-row{display:grid;grid-template-columns:42px 1fr 25px;gap:15px;padding:25px 0;border-top:1px solid #d7d3ca;align-items:start}.service-row:last-child{border-bottom:1px solid #d7d3ca}.service-number{font-size:10px;color:var(--accent);padding-top:5px}.service-row h3{font:24px var(--serif);font-weight:500;margin:0 0 5px}.service-row p{margin:0;color:var(--muted);font-size:13px;max-width:410px}.service-arrow{font-size:19px;color:var(--accent)}
.about{background:#e8e4dc}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.about-photo{height:610px;max-width:490px;overflow:hidden}.about-copy{max-width:490px}.about-copy h2{margin-bottom:18px}.about-lead{font:23px/1.5 var(--serif);margin:0 0 18px}.about-copy>p:not(.eyebrow):not(.about-lead){color:var(--muted);font-size:14px}
.quote-section{background:#34382f;color:white;padding:105px 0;text-align:center}.quote-inner{max-width:850px}.quote-inner .eyebrow{margin-bottom:25px}blockquote{font:clamp(27px,4vw,43px)/1.35 var(--serif);margin:0 auto 28px;letter-spacing:-.02em}.quote-credit{font-size:9px;letter-spacing:.18em;color:#e6c8ae}.quote-credit span{color:#ffffff83}
.contact{background:var(--paper)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact h2{font-size:clamp(55px,6vw,78px)}.contact-intro{max-width:350px;color:var(--muted);margin-bottom:27px}.contact-email{font:19px var(--serif);border-bottom:1px solid #bcb6aa;padding-bottom:9px}.contact-email span{color:var(--accent);margin-left:14px}.contact-form{padding-top:5px}.form-row{display:flex;flex-direction:column;margin-bottom:20px}.form-row label{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px}.form-row input,.form-row select,.form-row textarea{font:14px var(--sans);color:var(--ink);background:transparent;border:0;border-bottom:1px solid #c9c4b9;padding:11px 0;outline:none;border-radius:0}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--accent)}.form-row textarea{resize:vertical}.form-row input::placeholder,.form-row textarea::placeholder{color:#a7a397}.button-dark{background:var(--ink);color:white;border-color:var(--ink)}.button-dark:hover{background:var(--accent);border-color:var(--accent)}.form-note{font-size:10px;color:var(--muted);margin-top:12px}
.footer{background:#242720;color:#e9e6de;padding:40px 0 20px}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:35px}.brand-footer{color:white}.footer-top>p{font:18px var(--serif);color:#c5c1b6}.social-links{display:flex;gap:25px;font-size:9px;letter-spacing:.12em}.footer-bottom{border-top:1px solid #ffffff2b;padding-top:18px;display:flex;justify-content:space-between;color:#a9aa9f;font-size:9px;letter-spacing:.12em}
@media(max-width:760px){.container{width:min(100% - 40px,560px)}.site-header{height:70px}.menu-toggle{display:block;z-index:2}.nav-links{display:none;position:absolute;top:69px;left:0;right:0;background:#292d26;padding:25px 24px 30px;flex-direction:column;align-items:flex-start;gap:20px}.nav-links.is-open{display:flex}.nav-cta{margin-top:4px}.hero{min-height:650px;height:88vh}.hero-image{background-position:58% center}.hero h1{font-size:clamp(55px,13vw,78px)}.hero-note{right:20px;bottom:22px}.section-pad{padding:78px 0}.intro-grid,.services-layout,.about-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.intro-grid>.eyebrow{padding:0;margin:0}.intro h2,.section-heading h2,.services h2,.about h2{font-size:46px}.section-heading{align-items:start;flex-direction:column;gap:12px;margin-bottom:28px}.desktop-link{display:none}.gallery{grid-template-columns:1fr 1fr;gap:12px}.gallery-item{min-height:260px}.gallery-tall{min-height:540px;grid-row:span 2}.gallery-wide{grid-column:2;min-height:260px}.gallery-item figcaption{left:14px;bottom:14px}.gallery-item figcaption strong{font-size:18px}.gallery-item figcaption span{font-size:8px}.services-layout{margin-top:12px;gap:18px}.service-row{grid-template-columns:28px 1fr 20px;gap:10px;padding:20px 0}.service-row h3{font-size:21px}.about-grid{gap:35px}.about-photo{height:440px;max-width:none}.about-copy{max-width:none}.quote-section{padding:78px 0}.contact-grid{gap:40px}.contact h2{font-size:60px}.footer-top{align-items:flex-start;flex-direction:column;gap:16px}.footer-top>p{margin:0}.social-links{margin-top:8px}.footer-bottom{gap:12px;flex-wrap:wrap}.footer-bottom span:last-child{display:none}}
@media(max-width:420px){.gallery{grid-template-columns:1fr}.gallery-tall,.gallery-wide{grid-column:auto;grid-row:auto;min-height:390px}.gallery-item{min-height:330px}.gallery-wide{min-height:260px}.hero-copy{font-size:14px}.brand{font-size:10px}}
