@font-face{font-family:Lora;font-weight:400 700;font-style:normal;font-display:swap;src:url(/weddings/fonts/lora-variable.woff) format("woff")}
@font-face{font-family:Lora;font-weight:400 700;font-style:italic;font-display:swap;src:url(/weddings/fonts/lora-italic-variable.woff) format("woff")}
@font-face{font-family:Inter;font-weight:400;font-style:normal;font-display:swap;src:url(/weddings/fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:500 700;font-style:normal;font-display:swap;src:url(/weddings/fonts/inter-latin-600-normal.woff2) format("woff2")}

:root{--bg:#fbf6ef;--bg2:#f3e9dc;--card:#fff;--ink:#2a1a1d;--mute:#7a6368;--line:#e6d8c8;--acc:#7b2336;--acc2:#a8344b;--gold:#a98147;--on:#fff;--hero:#f3e9dc}
[data-theme=dark]{--bg:#150d10;--bg2:#1d1216;--card:#221519;--ink:#f3e8e2;--mute:#b79ea3;--line:#3a262c;--acc:#e8a3b0;--acc2:#f0bcc6;--gold:#d3b078;--on:#2a1016;--hero:#1d1216}
*{box-sizing:border-box;margin:0}
body{background:var(--bg);color:var(--ink);font:17px/1.6 'Lora',Georgia,serif}
a{color:inherit;text-decoration:none}
img{display:block;width:100%}
.sans{font-family:Inter,system-ui,sans-serif}
/* topper: main-site cohesion */
.top{background:#12202e;color:#e8eef4;font:600 12.5px/1 Inter,system-ui,sans-serif;letter-spacing:.02em}
.top .in{max-width:1180px;margin:auto;padding:0 24px;height:40px;display:flex;align-items:center;gap:22px}
.top .back{display:flex;align-items:center;gap:9px;color:#fff}
.top .back b{white-space:nowrap;font:700 13px/1 Georgia,serif;letter-spacing:.06em;text-transform:uppercase}
.top .back i{font-style:normal;opacity:.7;font-weight:500}
.top .sp{flex:1}
.top a.l{opacity:.78}.top a.l:hover{opacity:1}
.top .sub{background:#c8102e;color:#fff;padding:7px 12px;border-radius:2px}
.top .tg{background:none;border:1px solid #ffffff44;color:#fff;border-radius:99px;padding:5px 11px;font:inherit;cursor:pointer}
/* header */
.hd{text-align:center;padding:30px 24px 0}
.logo{display:inline-block;line-height:.9}
.logo small{display:block;font:500 13px/1 Inter,sans-serif;letter-spacing:.5em;text-transform:uppercase;color:var(--mute);margin-bottom:6px;padding-left:.5em}
.logo b{font:italic 400 64px/1 'Lora',Georgia,serif;color:var(--acc);letter-spacing:-.01em}
.tag{font:italic 15px 'Lora',Georgia,serif;color:var(--mute);margin-top:8px}
.nav{margin-top:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:center;gap:34px;padding:13px 10px;font:600 12px/1 Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;flex-wrap:wrap}
.nav a:hover{color:var(--acc)}
.nav .cur{color:var(--acc)}
.w{max-width:1180px;margin:auto;padding:0 24px}
/* hero */
.hero{background:var(--hero);margin-top:0}
.hero .w{display:grid;grid-template-columns:5fr 6fr;gap:64px;align-items:center;padding-top:56px;padding-bottom:64px}
.cover{position:relative;transform:rotate(-1.4deg);box-shadow:0 24px 50px -14px #3a121c66,0 3px 10px #0004}
.cover img{aspect-ratio:1000/1204;object-fit:cover}
.kick{font:700 12px/1 Inter,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
h1{font:italic 400 clamp(46px,6vw,78px)/1.02 'Lora',Georgia,serif;color:var(--ink);margin:14px 0 16px}
.hero p.lede{font-size:21px;color:var(--mute);max-width:30em}
.btns{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.btn{font:700 12.5px/1 Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:16px 24px;border-radius:2px;border:1px solid var(--acc)}
.btn.p{background:var(--acc);color:var(--on)}.btn.g{color:var(--acc)}
.meta{margin-top:22px;font:13px Inter,sans-serif;color:var(--mute)}
/* sections */
.sec{padding:72px 0 8px}
.sh{display:flex;align-items:baseline;gap:18px;margin-bottom:28px}
.sh h2{font:italic 400 44px/1 'Lora',Georgia,serif;color:var(--acc)}
.sh .ln{flex:1;border-top:1px solid var(--line)}
.sh span{font:600 11.5px Inter,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}
.feat{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.fc{background:var(--card);border:1px solid var(--line)}
.fc .ph{aspect-ratio:4/3;overflow:hidden}
.fc .ph img{height:100%;object-fit:cover;transition:transform .6s}
.fc:hover .ph img{transform:scale(1.04)}
.fc .tx{padding:26px 28px 30px}
.fc h3{font:italic 400 38px/1.05 'Lora',Georgia,serif;color:var(--acc);margin:8px 0 10px}
.fc p{color:var(--mute);font-size:18.5px}
.fc .by{font:13px Inter,sans-serif;color:var(--mute);margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.fc .by b{color:var(--ink);font-weight:600}
.deps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.dc .ph{aspect-ratio:4/5;overflow:hidden;position:relative}
.dc .ph img{height:100%;object-fit:cover}
.dc .pg{position:absolute;left:0;bottom:0;background:var(--bg);color:var(--acc);font:700 11px Inter,sans-serif;letter-spacing:.14em;padding:7px 11px}
.dc h4{font:italic 400 29px/1.1 'Lora',Georgia,serif;margin:14px 0 4px;color:var(--ink)}
.dc p{font-size:16px;color:var(--mute);line-height:1.45}
.ins{display:grid;grid-template-columns:5fr 6fr;gap:56px;align-items:center;background:var(--bg2);padding:44px;margin-top:8px;border:1px solid var(--line)}
.ins img{box-shadow:0 14px 32px -12px #0006}
.ins h3{font:italic 400 44px/1 'Lora',Georgia,serif;color:var(--acc);margin:10px 0 12px}
.ins ul{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.ins li{font:600 12px Inter,sans-serif;border:1px solid var(--line);padding:8px 12px;border-radius:99px;background:var(--card);color:var(--mute)}
.past{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.past a img{aspect-ratio:5/6;object-fit:cover;box-shadow:0 8px 18px -8px #0006}
.past b{display:block;font:600 11.5px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;margin-top:9px;color:var(--mute)}
.cta{margin-top:80px;background:var(--acc);color:var(--on);text-align:center;padding:64px 24px}
.cta h2{font:italic 400 48px/1.05 'Lora',Georgia,serif}
.cta p{margin:12px auto 24px;max-width:34em;font-size:19px;opacity:.9}
.cta .btn{background:var(--on);color:var(--acc);border-color:var(--on)}
.ft{padding:40px 24px 54px;text-align:center;font:13px/1.8 Inter,sans-serif;color:var(--mute)}
.ft .mast{max-width:46em;margin:0 auto 18px}
.ft a{color:var(--acc);font-weight:600}
@media(max-width:820px){
 .top .in{padding:0 14px;gap:12px}.top .back i,.top a.l{display:none}
 .logo b{font-size:50px}
 .nav{gap:18px;font-size:11px;overflow:auto;flex-wrap:nowrap;justify-content:flex-start;white-space:nowrap;padding:13px 18px}
 .hero .w{grid-template-columns:1fr;gap:34px;padding-top:34px;padding-bottom:44px}
 .cover{max-width:78%;margin:0 auto}
 .btn{flex:1;text-align:center}
 .sec{padding-top:52px}.sh h2{font-size:36px}.sh span{display:none}
 .feat,.ins{grid-template-columns:1fr}.ins{padding:22px;gap:26px}
 .deps{grid-template-columns:1fr 1fr;gap:16px}
 .dc h4{font-size:24px}.dc p{font-size:15px}
 .past{grid-template-columns:repeat(3,1fr);gap:12px}
 .fc h3{font-size:32px}
}
@media(max-width:820px){
 .w{padding:0 22px}
 .hd{padding-top:34px}.nav{margin-top:26px}
 .hero .w{padding-top:44px;padding-bottom:56px;gap:40px}
 .hero p.lede{font-size:20px;line-height:1.55}
 h1{margin:16px 0 20px}
 .btns{gap:14px;margin-top:32px}.meta{margin-top:26px;line-height:1.6}
 .sec{padding-top:72px}
 .sh{margin-bottom:34px}
 .feat{gap:34px}
 .fc .tx{padding:28px 24px 32px}
 .fc h3{margin:10px 0 14px}.fc p{line-height:1.6}.fc .by{margin-top:20px;padding-top:16px;line-height:1.7}
 .ins{padding:26px 22px 30px;gap:30px}
 .ins h3{margin:12px 0 16px}.ins p{line-height:1.6}
 .cta{margin-top:96px;padding:72px 28px}.cta p{margin:16px auto 30px}
 .ft{padding:48px 28px 64px}
}
@media(max-width:820px){
 .top .in{gap:10px;padding:0 16px}.top .back b{font-size:12px;letter-spacing:.03em}.top .sub{padding:7px 10px}.top .tg{padding:5px 10px}
 .btn{white-space:nowrap;letter-spacing:.07em;padding:16px 12px;font-size:11.5px}
 html,body{overflow-x:hidden}
}
@media(max-width:820px){.ins{grid-template-columns:1fr!important}.ins img{width:100%}}
.flip{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:0;padding:56px 0 60px;text-align:center}
.flip h2{font:italic 400 44px/1 'Lora',Georgia,serif;color:var(--acc);margin-bottom:8px}.flip p{color:var(--mute);margin-bottom:28px}
.spread{max-width:860px;margin:0 auto;position:relative;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 30px 60px -24px #000a,0 0 0 1px var(--line);background:#fff}
.spread img{aspect-ratio:3/4;object-fit:cover;height:100%}.spread:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:30px;margin-left:-15px;background:linear-gradient(90deg,transparent,#0003,transparent);z-index:1}
.spread .ar{position:absolute;top:50%;width:44px;height:44px;border-radius:50%;background:var(--acc);color:var(--on);display:flex;align-items:center;justify-content:center;font:700 20px Inter;margin-top:-22px;z-index:2}
.spread .ar.l{left:-22px}.spread .ar.r{right:-22px}
.flip .tb{margin-top:20px;font:600 12px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
@media(max-width:820px){.flip{padding:46px 22px 52px}.spread{grid-template-columns:1fr}.spread img+img{display:none}.spread:before{display:none}.spread .ar.l{left:8px}.spread .ar.r{right:8px}.flip h2{font-size:36px}}
.slider{position:relative;border:1px solid var(--line);background:#fff}
.slider .sl{display:none;background:var(--card)}.slider .sl.on{display:block;animation:fd .6s}
@keyframes fd{from{opacity:.0}to{opacity:1}}
.slider .sl img{width:100%;aspect-ratio:1280/462;object-fit:cover;display:block;background:#fff}
.slider .bt{padding:16px 22px 18px;display:flex;gap:12px;align-items:center;justify-content:space-between;font:14px/1.5 Inter,sans-serif;color:var(--mute)}
.slider .bt b{color:var(--ink);font-weight:600}.slider .go{font:700 11px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--acc);white-space:nowrap}
.sa{position:absolute;top:calc(50% - 40px);width:44px;height:44px;border-radius:50%;border:0;background:var(--acc);color:var(--on);font:700 22px Inter;cursor:pointer;opacity:.92}.sa.l{left:-22px}.sa.r{right:-22px}
.tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:22px}
.tabs button{font:600 12px Inter,sans-serif;letter-spacing:.06em;border:1px solid var(--line);background:var(--card);color:var(--mute);padding:9px 14px;border-radius:99px;cursor:pointer}
.tabs button.on{background:var(--acc);border-color:var(--acc);color:var(--on)}
@media(max-width:820px){.sa.l{left:8px}.sa.r{right:8px}.slider .bt{flex-direction:column;align-items:flex-start;padding:16px 18px 20px}.tabs{justify-content:flex-start}}

.bn{display:block;background:#fff;border:1px solid var(--line);transition:box-shadow .3s}
.bn:hover{box-shadow:0 14px 30px -14px #3a121c88}
.bn img{width:100%;aspect-ratio:1280/462;object-fit:cover;background:#fff}
.bn .bt{padding:14px 20px 16px;display:flex;gap:12px;align-items:center;justify-content:space-between;background:var(--card)}
.bn .bt div{font:13.5px/1.5 Inter,sans-serif;color:var(--mute)}.bn .bt b{color:var(--ink);font-weight:600}
.bn .go{font:700 11px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--acc);white-space:nowrap}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:28px}.stk{display:grid;gap:28px}
.grp{margin-bottom:8px}
[data-theme=dark] .bn{border-color:var(--line)}
.crumb{font:600 12px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);padding:26px 0 16px}.crumb a{color:var(--acc)}
.art{display:grid;grid-template-columns:260px 1fr;gap:56px;padding:44px 0 8px}
.art .meta2{font:14px/1.7 Inter,sans-serif;color:var(--mute);border-top:2px solid var(--acc);padding-top:14px}
.art .meta2 b{display:block;color:var(--ink);font:600 12px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;margin-top:14px}
.art .tx p{font-size:21px;line-height:1.7;margin-bottom:20px}
.art .tx p:first-child:first-letter{font:italic 400 76px/.8 'Lora',Georgia,serif;color:var(--acc);float:left;padding:6px 10px 0 0}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gal a{position:relative;display:block;aspect-ratio:4/5;overflow:hidden}
.gal img{height:100%;object-fit:cover}
.gal a.more{display:flex;align-items:center;justify-content:center;background:var(--acc);color:var(--on);font:italic 400 30px 'Lora',Georgia,serif;text-align:center;padding:20px}
.gal a.more small{display:block;font:700 11px Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;margin-top:8px}
@media(max-width:820px){.g2{grid-template-columns:1fr;gap:34px}.stk{gap:34px}.bn .bt{flex-direction:column;align-items:flex-start;padding:16px 18px 20px}
 .art{grid-template-columns:1fr;gap:26px;padding-top:30px}.art .tx p{font-size:19px}.gal{grid-template-columns:1fr 1fr;gap:12px}.crumb{padding:30px 0 18px}}

.sr{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
body{font-family:'Lora',Georgia,serif}
.top .tg{font-family:Inter,system-ui,sans-serif}
.embed{position:relative;width:100%;height:0;padding-top:130%;max-width:1000px;margin:0 auto;background:var(--card);box-shadow:0 30px 60px -28px #000a,0 0 0 1px var(--line)}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(min-width:767px){.embed{padding-top:62%}}
.flip .alt{margin-top:18px;font:13px Inter,sans-serif;color:var(--mute)}.flip .alt a{color:var(--acc);font-weight:600}
.dek{font:italic 400 clamp(22px,2.6vw,30px)/1.35 'Lora',Georgia,serif;color:var(--mute);max-width:36em;margin:26px 0 0}
.tips{background:var(--bg2);border:1px solid var(--line);padding:26px 30px;margin:34px 0 0}
.tips h3,.qa h3,.vend h3{font:700 12px Inter,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--acc);margin-bottom:14px}
.tips li{margin:0 0 14px 18px;font-size:18px;line-height:1.6}.tips li b{color:var(--ink)}
.qa{margin-top:30px}.qa p{font-size:20px;line-height:1.7;margin-bottom:16px}.qa p.q{font-weight:600;color:var(--acc);margin-top:24px;margin-bottom:6px}
.qa p.q:first-letter,.art .tx .qa p:first-letter{font:inherit;float:none;padding:0;color:inherit}
.bz h2{font:italic 400 36px/1.1 'Lora',Georgia,serif;color:var(--acc);margin:38px 0 4px}.bz h2:first-child{margin-top:0}
.bz h4{font:600 12px Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin-bottom:12px}
.art .tx .bz p:first-child:first-letter{font:inherit;float:none;padding:0;color:inherit}
.vend{margin-top:8px}.vend dl{display:grid;grid-template-columns:repeat(2,1fr);gap:0 40px;font:15px/1.5 Inter,sans-serif}
.vend dt{font-weight:600;color:var(--ink);margin-top:12px}.vend dd{margin:0;color:var(--mute)}
.gal button{all:unset;display:block;cursor:zoom-in;width:100%;height:100%;position:relative}.gal a{cursor:zoom-in}
.gal img{transition:transform .5s}.gal a:hover img{transform:scale(1.04)}
#lb{position:fixed;inset:0;background:rgba(10,5,7,.95);z-index:99;display:none;align-items:center;justify-content:center;flex-direction:column;padding:20px}#lb.on{display:flex}
#lb img{max-width:96vw;max-height:84vh;object-fit:contain;width:auto}#lb p{color:#eee;font:14px Inter,sans-serif;margin:12px 0 0}
#lb button{position:absolute;background:none;border:0;color:#fff;font-size:40px;cursor:pointer;padding:14px;line-height:1}#lb .x{top:6px;right:10px}#lb .l{left:6px;top:50%}#lb .r{right:6px;top:50%}
noscript .sl{display:block!important}
.nxt{display:flex;justify-content:space-between;gap:14px;margin-top:44px;font:600 12px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase}.nxt a{color:var(--acc)}
@media(max-width:820px){.vend dl{grid-template-columns:1fr}.tips{padding:22px}.qa p{font-size:19px}}
