:root{--bg:#101010;--panel:#171717;--text:#eee9e2;--muted:#a8a39b;--accent:#d5bba4;--line:#33312e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:5px}button{cursor:pointer}header{height:116px;max-width:1600px;margin:auto;padding:16px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand img{width:95px;height:85px;object-fit:contain}nav{display:flex;gap:32px;align-items:center;font-size:12px;letter-spacing:.04em}nav a:hover,.text-link:hover{color:var(--accent)}.nav-book{border:1px solid #666057;padding:11px 21px}.menu{display:none}.intro{padding:75px 8% 54px;max-width:1600px;margin:auto}.eyebrow,.section-label{font-size:10px;letter-spacing:.2em;color:var(--accent)}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(62px,7.8vw,126px);margin:23px 0 32px}em{font-weight:400;color:var(--accent)}.intro-bottom{display:flex;justify-content:space-between;align-items:end;color:var(--muted)}.intro-bottom p{margin:0}.text-link{font-size:12px;letter-spacing:.045em;border-bottom:1px solid #746456;padding-bottom:8px}.text-link span{margin-left:40px}.gallery-section{padding:0 3%;max-width:1700px;margin:auto}.section-label{display:flex;justify-content:space-between;padding:15px 0;border-top:1px solid var(--line);margin-bottom:15px;letter-spacing:.13em;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.photo{border:0;padding:0;position:relative;background:#25211f;overflow:hidden;aspect-ratio:2/3;display:block;width:100%}.photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s,filter .65s}.photo:hover img{transform:scale(1.025);filter:brightness(.88)}.photo span{position:absolute;bottom:18px;right:18px;background:#101010b0;border-radius:50%;height:32px;width:32px;color:white;opacity:0;transition:opacity .2s}.photo:hover span,.photo:focus-visible span{opacity:1}.photo.wide{grid-column:span 2;aspect-ratio:4/3}.gallery-note{display:flex;align-items:center;justify-content:space-between;padding:30px 0 55px}.gallery-note>span{font-family:Georgia,serif;font-size:23px;font-style:italic;color:var(--muted)}.experience,.faq{padding:100px 8%;border-top:1px solid var(--line);max-width:1600px;margin:auto}h2{font-size:clamp(38px,4.1vw,65px);margin:24px 0 30px}.two-col{display:grid;grid-template-columns:1.1fr 1fr;gap:8%}.two-col>div{padding-top:24px}.lead{font-size:21px;color:var(--text)}p{color:var(--muted)}.steps{margin-top:35px}.steps>div{display:flex;gap:25px;border-top:1px solid var(--line);padding:18px 0}.steps span{color:var(--accent);font-size:11px}.steps h3{font-size:15px;margin:0;font-weight:400}.steps p{font-size:13px;margin:5px 0 0}.about{display:grid;grid-template-columns:1fr 1fr;background:var(--panel)}.about>img{width:100%;height:720px;object-fit:cover;object-position:center 35%}.about>div{padding:90px 14%;align-self:center}.about .text-link{display:inline-block;margin-top:25px}.faq{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.faq h2{font-size:48px}.faq details{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:22px 28px 22px 0;position:relative;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;color:var(--accent)}details[open] summary:after{content:'−'}details p{margin:0 0 22px;font-size:14px}.booking{text-align:center;padding:100px 20px;background:#1b1917}.booking h2{font-size:clamp(44px,5.5vw,80px)}form{max-width:650px;margin:40px auto 20px;text-align:left}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:11px;letter-spacing:.04em;color:var(--muted);margin-bottom:20px}input,textarea,select{display:block;width:100%;color:var(--text);background:transparent;border:0;border-bottom:1px solid #665e56;padding:12px 0;border-radius:0;font-size:14px}select option{background:#1b1917}input[type=date]{color-scheme:dark}textarea{resize:vertical}.submit{background:var(--accent);color:#171411;border:0;width:100%;padding:17px 25px;text-align:left;font-size:12px;letter-spacing:.09em}.submit span{float:right}.submit:hover{background:#e6cdb5}.form-note,#form-status{font-size:11px;letter-spacing:0;line-height:1.5}.email{display:inline-block;font-size:13px;border-bottom:1px solid #5d5249}footer{padding:55px 8% 30px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px}.footer-brand{font-family:Georgia,serif;font-size:30px;font-weight:bold}.footer-brand span{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:.44em;font-weight:400}footer p{font-size:10px;letter-spacing:.15em}footer>a{justify-self:end;font-size:12px}footer small{grid-column:1/-1;color:#777;font-size:10px;margin-top:25px}dialog{border:0;padding:0;background:#0a0a0af5;color:white;max-width:none;max-height:none;width:100vw;height:100dvh}dialog::backdrop{background:#000}dialog[open]{display:flex;align-items:center;justify-content:center}dialog figure{margin:0;width:85%;height:90%;display:flex;flex-direction:column;align-items:center;justify-content:center}dialog img{max-width:100%;max-height:92%;object-fit:contain}dialog figcaption{font-size:11px;color:#aaa;margin-top:12px}dialog button{position:absolute;background:transparent;color:white;border:0;font-size:28px;padding:15px;z-index:2}.close{right:15px;top:10px}.prev{left:10px}.next{right:10px}body.modal-open{overflow:hidden}@media(min-width:1500px){.gallery-section{padding:0 5%}}@media(max-width:800px){header{height:96px;padding:10px 5%}.brand img{height:72px;width:80px}.menu{display:block;background:transparent;color:var(--text);border:0;font-size:12px}.menu span{margin-left:10px}nav{display:none;position:absolute;top:96px;left:0;right:0;background:#161616;padding:25px;z-index:5;flex-direction:column;align-items:stretch;gap:20px}nav.open{display:flex}.intro{padding:48px 6% 35px}.intro-bottom{gap:25px}.intro-bottom p{font-size:12px}.intro-bottom .text-link{font-size:10px}.text-link span{margin-left:15px}.section-label{font-size:8px}.section-label span:last-child{letter-spacing:0}.gallery{grid-template-columns:repeat(2,1fr);gap:7px}.photo.wide{grid-column:span 2}.photo span{opacity:1}.gallery-note{padding:24px 0 40px}.gallery-note>span{font-size:17px}.gallery-note .text-link{font-size:10px}.two-col,.faq,.about{grid-template-columns:1fr}.experience,.faq{padding:55px 6%}.two-col{gap:0}.two-col>div{padding:0}.about>img{height:520px}.about>div{padding:50px 7%}.faq{gap:15px}.faq h2{font-size:40px}.booking{padding:65px 6%}.form-grid{gap:16px}footer{padding:40px 6% 25px;grid-template-columns:1fr 1fr}footer p{justify-self:end}footer>a{justify-self:start}footer small{margin:5px 0}dialog button{font-size:24px;padding:8px}.prev{left:0}.next{right:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

nav [aria-current=page]{color:var(--accent)}.packages-grid{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:0 6% 80px}.package-card{border:1px solid var(--line);background:var(--panel);padding:40px;display:flex;flex-direction:column}.package-card h2{font-size:36px;margin:20px 0}.package-price{font-family:Georgia,serif;font-size:66px;line-height:1.1;color:var(--accent)}.package-price span{font-family:Arial,sans-serif;color:var(--muted);font-size:12px;letter-spacing:.05em}.package-card>p{font-size:14px}.package-card ul{list-style:none;padding:0;margin:15px 0 35px}.package-card li{padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.package-card li:before{content:'↗';color:var(--accent);margin-right:12px}.package-button{margin-top:auto;display:block;padding:15px 18px;border:1px solid #746456;font-size:12px}.package-button span{float:right}.package-button:hover{background:var(--accent);color:var(--bg)}.package-process{border-top:1px solid var(--line);padding:75px 8%;max-width:1500px;margin:auto}.package-process p{max-width:680px;margin-bottom:30px}.package-contact{text-align:center;padding:75px 6%;background:#1b1917}.package-contact .form-note{max-width:520px;margin:25px auto 0}@media(max-width:800px){.packages-grid{grid-template-columns:1fr;gap:18px;padding:0 6% 50px}.package-card{padding:28px}.package-card h2{font-size:32px}.package-process{padding:55px 6%}.package-contact{padding:55px 6%}}

/* Preserve the full photographer portrait at every screen size. */
.about>img{height:auto;aspect-ratio:2/3;object-fit:contain;object-position:center top;align-self:center;background:var(--panel)}

.spooky-page{--accent:#d79568;--panel:#1c1715}.spooky-page .intro{background:radial-gradient(ellipse at top right,#35201980,transparent 65%)}.spooky-gallery{display:block;columns:3;column-gap:12px}.spooky-gallery .photo{aspect-ratio:auto;margin-bottom:12px;break-inside:avoid}.spooky-gallery .photo img{height:auto;object-fit:contain}.spooky-cta{max-width:460px;margin:30px auto;background:var(--accent);color:var(--bg)}@media(max-width:800px){.spooky-gallery{columns:2;column-gap:7px}.spooky-gallery .photo{margin-bottom:7px}nav{gap:20px}}@media(max-width:450px){.spooky-gallery{columns:1}}

.instagram-section{max-width:1600px;margin:auto;padding:90px 8%;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;border-top:1px solid var(--line)}.instagram-copy .text-link{display:inline-block;font-size:16px;margin-top:15px}.instagram-note{font-size:14px;max-width:360px;margin-top:24px}.instagram-embed{width:100%;min-width:0;display:flex;justify-content:center}.instagram-embed .instagram-media{width:100%;max-width:540px;min-width:0!important;margin:0!important}.instagram-embed blockquote{padding:24px;background:var(--panel);border:1px solid var(--line)}.instagram-embed iframe{max-width:100%!important}@media(max-width:800px){.instagram-section{grid-template-columns:1fr;padding:55px 6%;gap:30px}}
