:root{--ink:#171715;--paper:#f1eee8;--sand:#a79276;--muted:#858079;--line:#d8d2c8;--serif:'Palatino Linotype',Palatino,Georgia,serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.nav{height:82px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:absolute;top:0;left:0;right:0;z-index:5}.brand{font-weight:600;font-size:27px;letter-spacing:-1.7px}.brand span{font-family:var(--serif);font-weight:400}.brand i{font:9px var(--sans);vertical-align:top;margin-left:2px}.nav nav{display:flex;align-items:center;gap:36px;font-size:12px}.nav nav a{transition:opacity .2s}.nav nav a:hover{opacity:.6}.nav-cta{border:1px solid #aaa297;padding:11px 16px}.nav-cta b{margin-left:15px}.menu{display:none;background:none;border:0;font-size:24px}.hero{height:min(850px,100svh);min-height:650px;background:#171715;color:white;position:relative;overflow:hidden;padding-top:82px}.hero-image{position:absolute;inset:82px 0 0 37%;}.hero-image img{object-position:center 39%}.hero-shade{position:absolute;inset:82px 0 0;background:linear-gradient(90deg,#171715 0%,#171715 25%,rgba(23,23,21,.82) 40%,rgba(23,23,21,.04) 78%),linear-gradient(0deg,rgba(0,0,0,.2),transparent 30%)}.hero-copy{position:absolute;top:50%;left:12%;transform:translateY(-40%);max-width:520px}.eyebrow{text-transform:uppercase;letter-spacing:2.2px;font-size:10px;font-weight:600;color:var(--sand);margin:0 0 22px}.hero .eyebrow{color:#d2c2aa}.hero h1,.section-pad h2,.statement h2,.about h2{font:400 clamp(54px,7vw,96px)/1.03 var(--serif);letter-spacing:-2.6px;margin:0 0 25px}.hero h1 em,.section-pad h2 em,.statement h2 em,.about h2 em{font-weight:400;color:#c8b69d}.hero-copy>p:not(.eyebrow){max-width:380px;color:#d6d2ca;font-size:15px;margin:0 0 34px}.button{display:inline-flex;gap:40px;align-items:center;padding:15px 20px;text-transform:uppercase;letter-spacing:1px;font-size:10px;font-weight:600}.button.light{border:1px solid #948b7c}.button span{font-size:16px}.hero-index,.hero-vertical{position:absolute;font-size:9px;letter-spacing:2px;color:#d4c8b8}.hero-index{right:6vw;bottom:35px}.hero-vertical{right:28px;top:50%;writing-mode:vertical-rl;transform:rotate(180deg)}.section-pad{padding:115px 12vw}.intro{padding-top:125px;padding-bottom:130px}.intro-grid{display:grid;grid-template-columns:1fr .75fr;gap:8vw;align-items:end}.intro h2,.section-head h2,.offer h2,.contact h2,.about h2{font-size:clamp(45px,5.4vw,72px)}.lead{font:23px/1.45 var(--serif);max-width:420px;margin:0 0 30px}.text-link{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;border-bottom:1px solid var(--sand);padding-bottom:8px;display:inline-flex;gap:28px}.text-link span{color:var(--sand)}.work{background:#e7e2d9}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px}.section-head>p{max-width:270px;color:#69645e;font-size:13px}.gallery{display:grid;grid-template-columns:1.3fr .8fr 1fr;grid-template-rows:360px 300px;gap:15px}.tile{display:block;position:relative;overflow:hidden;background:#c8b69d}.tile img{transition:transform .6s}.tile:hover img{transform:scale(1.035)}.tile:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.62))}.tile span{position:absolute;z-index:1;bottom:18px;left:20px;right:20px;color:white;font-size:11px;text-transform:uppercase;letter-spacing:1.1px;display:flex;justify-content:space-between}.tile span b{font-size:17px;font-weight:400}.tile-large{grid-row:span 2}.tile-large img{object-position:50% 45%}.tile-portrait img{object-position:center 35%}.tile-wide{grid-column:2/4}.tile-wide img{object-position:center 38%}.tile-small img{object-position:center 35%}.gallery-link{margin-top:30px}.statement{height:620px;position:relative;background:#111;color:white;overflow:hidden}.statement>img{object-position:center 40%;filter:brightness(.65)}.statement-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,14,15,.94),rgba(13,14,15,.4) 65%,transparent)}.statement-copy{position:absolute;left:14%;top:50%;transform:translateY(-50%);max-width:470px}.statement h2{font-size:68px}.statement-copy>p:last-child{color:#dedbd6;max-width:400px;font-size:14px}.offer{padding-top:125px;padding-bottom:125px}.offer h2{margin-bottom:65px}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line)}.offer-grid article{padding-top:25px}.offer-no{font-size:10px;color:var(--sand);letter-spacing:1px}.offer h3{font:28px var(--serif);font-weight:400;margin:25px 0 12px}.offer-grid article p{font-size:13px;color:#69645e;min-height:95px}.offer-grid .text-link{margin-top:10px}.offer-note{font-size:11px;color:var(--muted);margin-top:38px}.about{display:grid;grid-template-columns:1fr 1fr;min-height:640px;background:#e4ded4}.about-photo{height:640px}.about-photo img{object-position:center 35%}.about-copy{padding:105px 10vw 80px 8vw;align-self:center}.about h2{font-size:54px}.about-copy>p:not(.eyebrow){font-size:14px;color:#625d56;max-width:440px}.about-copy .text-link{margin-top:20px}.contact{text-align:center;padding-top:125px;padding-bottom:130px}.contact h2{margin-bottom:25px}.contact>p:not(.eyebrow){max-width:430px;margin:0 auto 30px;color:#68635c;font-size:14px}.button.dark{background:var(--ink);color:white}.contact small{display:block;color:var(--muted);margin-top:24px;font-size:11px}.contact small a{text-decoration:underline}footer{background:#171715;color:#efede8;padding:45px 6vw;display:flex;align-items:center;justify-content:space-between}footer p{font-size:11px;color:#aaa49a;line-height:1.8}footer>div{display:flex;gap:24px;font-size:10px;color:#c9c4bc}dialog{border:0;background:var(--paper);color:var(--ink);padding:50px;max-width:560px;width:calc(100% - 32px);box-shadow:0 10px 80px #0006}dialog::backdrop{background:#0009}.close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:28px;cursor:pointer}dialog h2{font:40px var(--serif)}dialog p{font-size:13px}
@media(max-width:760px){.nav{height:68px;padding:0 6vw}.nav nav{display:none;position:absolute;top:68px;left:0;right:0;padding:22px 6vw 28px;background:var(--paper);flex-direction:column;align-items:flex-start;gap:18px}.nav nav.open{display:flex}.menu{display:block}.hero{min-height:700px;height:92svh;padding-top:68px}.hero-image{inset:68px 0 0 0}.hero-image img{object-position:58% center}.hero-shade{inset:68px 0 0;background:linear-gradient(0deg,rgba(16,16,15,.95),rgba(16,16,15,.45) 48%,rgba(16,16,15,.12))}.hero-copy{left:7vw;right:7vw;top:auto;bottom:15%;transform:none}.hero h1{font-size:65px}.hero-vertical{right:12px}.hero-index{right:7vw;bottom:24px}.section-pad{padding:78px 7vw}.intro{padding-top:85px;padding-bottom:88px}.intro-grid{grid-template-columns:1fr;gap:20px}.intro h2,.section-head h2,.offer h2,.contact h2,.about h2{font-size:50px}.lead{font-size:21px}.section-head{display:block;margin-bottom:32px}.section-head>p{margin-top:20px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:260px 220px 260px;gap:9px}.tile-large{grid-row:span 2}.tile-wide{grid-column:auto}.tile-small{min-height:220px}.gallery .tile:nth-child(5){grid-column:2}.statement{height:540px}.statement-copy{left:8vw;right:8vw}.statement h2{font-size:54px}.offer-grid{grid-template-columns:1fr;gap:20px}.offer-grid article{border-bottom:1px solid var(--line);padding-bottom:24px}.offer-grid article p{min-height:0}.about{grid-template-columns:1fr}.about-photo{height:430px}.about-copy{padding:65px 8vw 75px}.contact{padding-top:85px;padding-bottom:90px}footer{padding:35px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:15px}footer>div{grid-column:1/-1;flex-wrap:wrap;gap:18px}.brand{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.contact-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.button.outline{border:1px solid #999186}.legal-note{color:#8d4f26;font-weight:600}

@media(max-width:760px){.wedding-heading{grid-template-columns:1fr;gap:20px}.wedding-gallery{grid-template-columns:1fr 1fr;gap:10px}.wedding-gallery img{height:230px}.wedding-gallery figure:nth-child(2n){padding-top:24px}}

.about-photo-placeholder{background:linear-gradient(145deg,#282723,#6e6251);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f1eee8;gap:8px}.about-photo-placeholder span{font:42px var(--serif)}.about-photo-placeholder small{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#c8b69d}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.category-card{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#b7a993}.category-card img{transition:transform .5s}.category-card:hover img{transform:scale(1.04)}.category-card:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.66))}.category-card span{position:absolute;z-index:1;left:17px;right:17px;bottom:15px;color:#fff;font-size:11px;letter-spacing:1px;text-transform:uppercase;display:flex;justify-content:space-between}.category-card span b{font-size:16px;font-weight:400}
@media(max-width:760px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.category-card{aspect-ratio:1/1}.category-card span{left:11px;right:11px;bottom:10px;font-size:9px}}
/* Warm, open homepage hero */
.hero{background:var(--paper);color:var(--ink)}
.hero-image{inset:82px 0 0 47%}
.hero-image img{object-position:center 42%}
.hero-shade{background:linear-gradient(90deg,rgba(241,238,232,.18),transparent 35%)}
.hero-copy{left:10%;max-width:500px}
.hero .eyebrow{color:#82715b}
.hero h1 em{color:#a79276}
.hero-copy>p:not(.eyebrow){color:#625d56}
.hero .button.light{border-color:#aaa297;color:var(--ink)}
.hero-index,.hero-vertical{color:#746b60}
@media(max-width:760px){
.hero{background:#171715;color:white}
.hero-image{inset:68px 0 0 0}
.hero-shade{inset:68px 0 0;background:linear-gradient(0deg,rgba(16,16,15,.95),rgba(16,16,15,.45) 48%,rgba(16,16,15,.12))}
.hero-copy{left:7vw;right:7vw;max-width:none}
.hero .eyebrow{color:#d2c2aa}
.hero h1 em{color:#c8b69d}
.hero-copy>p:not(.eyebrow){color:#d6d2ca}
.hero .button.light{border-color:#948b7c;color:white}
.hero-index,.hero-vertical{color:#d4c8b8}
}

footer{flex-wrap:wrap}footer .copyright{flex-basis:100%;text-align:center;color:#aaa49a;font-size:10px;line-height:1.6;margin:18px 0 0}@media(max-width:760px){footer .copyright{grid-column:1/-1}}

dialog{max-height:85vh;overflow-y:auto}

/* Refined d1bild wordmark for the light and dark site backgrounds */
.brand{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;color:var(--ink);font-size:initial;font-weight:400;letter-spacing:normal;line-height:1}
.brand .brand-wordmark{display:flex;align-items:baseline;font-family:var(--sans);font-size:27px;font-weight:600;letter-spacing:-1.7px;line-height:.95}
.brand .brand-wordmark b{font-weight:600}
.brand .brand-wordmark span{margin-left:1px;font-family:var(--serif);font-size:1em;font-weight:400;letter-spacing:-1.1px}
.brand .brand-byline{margin-left:1px;color:var(--sand);font-family:var(--sans);font-size:7px;font-weight:600;letter-spacing:1.25px;line-height:1.3;text-transform:uppercase}
.brand i{display:none}
footer .brand{color:var(--paper)}
@media(max-width:760px){.brand .brand-wordmark{font-size:25px}}

