﻿:root{--ink:#0a0a09;--paper:#efede7;--muted:#a7a49c;--gold:#c8a96c;--line:rgba(255,255,255,.16);--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:"DM Sans",sans-serif;line-height:1.6}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;background:#fff;color:#000;padding:.7rem 1rem;z-index:100}.skip-link:focus{top:1rem}.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}.site-header{position:absolute;inset:0 0 auto;z-index:20;height:92px;display:flex;align-items:center;padding:0 max(28px,calc((100vw - var(--max))/2));border-bottom:1px solid rgba(255,255,255,.2)}.logo{display:flex;align-items:center;gap:12px;font-weight:600;letter-spacing:.2em;font-size:.86rem;white-space:nowrap}.logo-mark{width:22px;height:22px;border:1px solid var(--gold);display:inline-block;position:relative;transform:rotate(45deg)}.logo-mark:after{content:"";position:absolute;inset:5px;background:var(--gold)}.main-nav{display:flex;gap:2.15rem;margin:auto;font-size:.78rem;letter-spacing:.09em}.main-nav a{position:relative;padding:2rem 0}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:1.5rem;height:1px;background:var(--gold);transition:.25s}.main-nav a:hover:after,.main-nav a:focus-visible:after,.main-nav a.active:after{right:0}.header-cta{font-size:.75rem;letter-spacing:.09em;text-transform:uppercase;border:1px solid rgba(255,255,255,.45);padding:.75rem 1.05rem}.menu-toggle{display:none;background:none;border:0;color:white}.hero{height:max(740px,100vh);min-height:700px;position:relative;display:grid;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;background-color:#0b0c0c;background-image:radial-gradient(circle at 78% 35%,rgba(200,169,108,.18),transparent 34%),linear-gradient(90deg,#0b0c0c 0%,rgba(11,12,12,.96) 34%,rgba(11,12,12,.16) 70%),url('Larsenfoto.png');background-repeat:no-repeat;background-size:cover,cover,min(78vw,930px) auto;background-position:center,center,right bottom;transform:scale(1.01)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.87) 0%,rgba(5,5,5,.48) 48%,rgba(5,5,5,.16) 75%),linear-gradient(0deg,rgba(5,5,5,.62),transparent 45%)}.hero-content{position:relative;width:min(var(--max),calc(100% - 56px));margin:50px auto 0}.eyebrow{text-transform:uppercase;letter-spacing:.26em;font-size:.68rem;font-weight:500}.eyebrow.gold{color:var(--gold)}h1,h2{font-family:Manrope,sans-serif;font-weight:400;line-height:.93;margin:0}h1{font-size:clamp(4.4rem,11vw,10rem);letter-spacing:-.075em}h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.8)}.hero-tagline{font-family:Manrope,sans-serif;font-size:clamp(1.4rem,2.4vw,2.1rem);letter-spacing:.2em;text-transform:uppercase;margin:.7rem 0 2rem}.hero-intro{color:#d3d0c8;font-size:1rem}.button-row{display:flex;gap:.8rem;margin-top:2.2rem}.button{min-height:50px;display:inline-flex;justify-content:center;align-items:center;gap:2rem;text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;padding:.9rem 1.35rem;border:1px solid transparent;cursor:pointer;transition:.25s}.button-light{background:var(--paper);color:var(--ink)}.button-outline{border-color:rgba(255,255,255,.55)}.button:hover,.button:focus-visible{transform:translateY(-2px);border-color:var(--gold)}.scroll-cue{position:absolute;bottom:35px;left:max(28px,calc((100vw - var(--max))/2));display:flex;align-items:center;gap:1rem;font-size:.61rem;letter-spacing:.25em;text-transform:uppercase;color:#bbb}.scroll-cue i{display:block;width:75px;height:1px;background:rgba(255,255,255,.5)}.hero-index{position:absolute;right:max(28px,calc((100vw - var(--max))/2));bottom:27px;font-size:.65rem;letter-spacing:.15em;display:flex;align-items:center;gap:10px}.hero-index span{width:40px;height:1px;background:white}.section{max-width:var(--max);margin:auto;padding:140px 28px}.section-label{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);writing-mode:vertical-rl;transform:rotate(180deg);position:absolute;left:0;top:145px}.about,.gallery,.pricing,.contact{position:relative}.about{display:grid;grid-template-columns:1.15fr .72fr;gap:8vw;padding-left:90px}.about-copy h2,.section-heading h2,.pricing h2,.contact h2{font-size:clamp(3rem,5.7vw,5.8rem);letter-spacing:-.055em}.about h2 em,.section-heading h2 em,.pricing h2 em,.contact h2 em{color:var(--gold);font-family:Georgia,serif;font-weight:400}.about-text{max-width:570px;margin:4rem 0 0 auto;display:grid;grid-template-columns:1fr 1fr;gap:2rem;color:#aaa8a1;font-size:.9rem}.text-link{grid-column:1/-1;color:var(--paper);text-transform:uppercase;font-size:.68rem;letter-spacing:.15em;border-bottom:1px solid #444;padding-bottom:.8rem;width:max-content}.about-image{margin:30px 0 0}.image-placeholder,.gallery-photo{background-size:cover;background-position:center;background-color:#24231f}.portrait-photo{aspect-ratio:3/4;background-image:linear-gradient(0deg,rgba(0,0,0,.2),transparent),url('https://images.unsplash.com/photo-1452780212940-6f5c0d14d848?auto=format&fit=crop&w=1000&q=85')}.about-image figcaption{font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:#777;margin-top:1rem}.gallery{max-width:none;background:#121210;padding-left:max(90px,calc((100vw - var(--max))/2 + 90px));padding-right:max(28px,calc((100vw - var(--max))/2 + 28px))}.gallery .section-label{left:max(28px,calc((100vw - var(--max))/2 + 28px))}.section-heading,.pricing-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}.section-heading>p,.pricing-head>p{width:370px;color:#8d8a83;font-size:.9rem}.gallery-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:28px}.gallery-card{min-width:0}.gallery-photo{height:370px;filter:saturate(.7);transition:.5s}.card-tall{grid-row:span 2}.card-tall .gallery-photo{height:800px}.card-wide{align-self:end}.photo-portrait{background-image:url('Larsenfoto.png')}.photo-couple{background-image:url('https://images.unsplash.com/photo-1511285560929-80b456fea0bc?auto=format&fit=crop&w=1200&q=85')}.photo-event{background-image:url('https://images.unsplash.com/photo-1492684223066-81342ee5ff30?auto=format&fit=crop&w=1200&q=85')}.photo-business{background-image:url('https://images.unsplash.com/photo-1551836022-d5d88e9218df?auto=format&fit=crop&w=1200&q=85')}.gallery-card:hover .gallery-photo{filter:saturate(1);transform:scale(.995)}.card-meta{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #333;padding:.8rem 0}.card-meta h3{font-weight:400;font-size:1rem;margin:0}.card-meta span{font-size:.65rem;color:#777}.pricing{padding-left:90px}.pricing-head{align-items:center}.price-list{border-top:1px solid #333}.price-row{display:grid;grid-template-columns:60px 1fr auto;gap:1.2rem;align-items:center;border-bottom:1px solid #2c2c29;padding:1.35rem .7rem;transition:.25s}.price-row:hover{background:#121210;padding-left:1.2rem}.price-row h3{font:400 1.08rem Manrope;margin:0 0 .2rem}.price-row p{margin:0;color:#777;font-size:.76rem}.price-row strong{font-size:.9rem;font-weight:500}.price-number{font-size:.62rem;color:var(--gold)}.price-note{text-align:right;color:#777;font-size:.72rem;margin-top:1rem}.contact{max-width:none;background:#11110f;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;padding-left:max(90px,calc((100vw - var(--max))/2 + 90px));padding-right:max(28px,calc((100vw - var(--max))/2 + 28px))}.contact .section-label{left:max(28px,calc((100vw - var(--max))/2 + 28px))}.contact-intro>p:not(.eyebrow,.placeholder-note){color:#8d8a83;max-width:490px;margin-top:2rem}.contact-details{display:flex;gap:3rem;margin-top:3rem}.contact-details span{display:flex;flex-direction:column}.contact-details small{color:#777;text-transform:uppercase;letter-spacing:.18em;font-size:.58rem}.contact-details a{font-size:.82rem;margin-top:.3rem}.placeholder-note{color:#726e65!important;font-size:.65rem!important;border-left:1px solid var(--gold);padding-left:.7rem}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 1.3rem;background:#181815;padding:3rem}.field{display:flex;flex-direction:column}.field-full{grid-column:1/-1}.field label{font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:#aaa;margin-bottom:.5rem}.field input,.field select,.field textarea{width:100%;background:transparent;color:#eee;border:0;border-bottom:1px solid #494944;border-radius:0;padding:.45rem 0;outline:none}.field select option{background:#181815}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold)}.button-gold{background:var(--gold);color:#090909;margin-top:1rem;width:100%}.form-status{font-size:.75rem;color:var(--gold);margin:0}.site-footer{max-width:var(--max);margin:auto;padding:65px 28px 30px;display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:2rem;align-items:start}.footer-brand{display:grid;grid-template-columns:30px 1fr;gap:.2rem .8rem}.footer-brand .logo-mark{grid-row:span 2}.footer-brand strong{font-size:.83rem;letter-spacing:.18em}.footer-brand small{color:#777}.site-footer nav,.socials{display:flex;flex-direction:column;gap:.5rem;color:#999;font-size:.75rem}.site-footer a:hover{color:var(--gold)}.copyright{grid-column:1/-1;border-top:1px solid #292926;margin:2rem 0 0;padding-top:1.5rem;color:#666;font-size:.62rem;letter-spacing:.1em}.to-top{font-size:1.5rem}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.site-header{height:74px;padding:0 22px;position:absolute}.header-cta{display:none}.menu-toggle{display:flex;margin-left:auto;width:38px;height:38px;flex-direction:column;justify-content:center;gap:7px;z-index:2}.menu-toggle span:not(.sr-only){height:1px;background:white;width:24px;transition:.25s}.menu-toggle[aria-expanded=true] span:nth-last-child(2){transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.main-nav{position:fixed;inset:0;background:#0b0b0a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;font:400 2rem Manrope;transform:translateX(100%);transition:.35s}.main-nav.open{transform:none}.main-nav a{padding:.6rem}.hero{min-height:680px}.hero-content{width:calc(100% - 44px)}h1{font-size:clamp(3.8rem,18vw,7rem)}.hero-tagline{font-size:1.1rem}.section{padding:100px 22px}.section-label{position:static;writing-mode:initial;transform:none;margin-bottom:2.5rem}.about{display:block}.about-text{margin-top:2.5rem}.about-image{max-width:480px;margin-top:4rem}.gallery,.contact{padding-left:22px;padding-right:22px}.gallery .section-label,.contact .section-label{position:static}.section-heading,.pricing-head{display:block}.section-heading>p,.pricing-head>p{width:auto;max-width:500px;margin-top:2rem}.pricing{padding-left:22px}.contact{grid-template-columns:1fr}.site-footer{grid-template-columns:1.5fr 1fr 1fr}.to-top{grid-column:4}.copyright{grid-column:1/-1}}@media(max-width:620px){.hero{height:100svh}.hero-image{background-position:center,center,72% bottom;background-size:cover,cover,auto 88%}.hero-shade{background:linear-gradient(90deg,rgba(5,5,5,.83),rgba(5,5,5,.35)),linear-gradient(0deg,rgba(5,5,5,.7),transparent 50%)}.hero-content{margin-top:20px}.hero-intro br{display:none}.button-row{flex-direction:column;align-items:flex-start}.button{width:100%}.scroll-cue{display:none}.about-text{grid-template-columns:1fr}.gallery-grid{display:block}.gallery-card{margin-bottom:2rem}.gallery-photo,.card-tall .gallery-photo{height:auto;aspect-ratio:4/5}.photo-couple,.photo-event,.photo-business{aspect-ratio:4/3}.price-row{grid-template-columns:30px 1fr}.price-row strong{grid-column:2;margin-top:.3rem}.contact-form{grid-template-columns:1fr;padding:1.5rem}.field{grid-column:1}.contact-details{flex-direction:column;gap:1rem}.site-footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.to-top{grid-column:2;text-align:right}.copyright{grid-column:1/-1}h2,.about-copy h2,.section-heading h2,.pricing h2,.contact h2{font-size:clamp(2.7rem,14vw,4.4rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{transition-duration:.01ms!important}}
