@font-face{font-family:DG;src:url('/fonts/DominionGaramond-Light.woff2') format('woff2');font-weight:300;font-display:swap}@font-face{font-family:DG;src:url('/fonts/DominionGaramond-Medium.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:DL;src:url('/fonts/DominionLora-Regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:DS;src:url('/fonts/DominionFormalScript-Regular.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html{background:#16110e;color:#fff2db}body{margin:0;font:17px/1.65 DL,serif}button,input,select{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.48}a{color:inherit;text-underline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #ab7430;outline-offset:4px}h1,h2,h3,p{margin:0 0 20px}h1,h2,h3{font-family:DG,serif;font-weight:300;line-height:1.06}h1{font-size:clamp(46px,5vw,76px);letter-spacing:-1.3px}h1 em{font:1.08em/1.12 DS,cursive;display:block;color:#946c36;margin-top:6px}h2{font-size:38px}h3{font-size:29px}strong,b{font-weight:400}button strong{display:block}img{max-width:100%;object-fit:cover}fieldset{border:0;padding:0;margin:34px 0}legend{font:300 32px/1.2 DG,serif;margin-bottom:20px}label{display:block}input,select{width:100%;min-height:54px;border:1px solid #a6957e;background:#fffaf1;color:#201912;padding:12px 15px;border-radius:3px}input[type=checkbox]{width:24px;min-width:24px;min-height:24px;height:24px;accent-color:#7e5a2c}hr{border:0;border-top:1px solid #564538;margin:25px 0}.mast{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 4vw;border-bottom:1px solid #4b3b2f}.mast img{width:155px;height:62px;object-fit:contain}.wordmark{letter-spacing:6px;font:500 28px DG,serif}.wordmark span{font:17px DS,cursive;letter-spacing:0;display:block;text-align:center;color:#d9b475}.mast button{background:none;border:1px solid #77614c;color:#fff2db;min-height:46px;padding:8px 16px}.welcome{min-height:calc(100vh - 100px);display:grid;grid-template-columns:1fr 1fr}.hero-photo{position:relative;min-height:720px}.hero-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}.photo-credit{position:absolute;bottom:20px;left:25px;font-size:13px;background:#16110edb;padding:6px 12px}.hero-copy{padding:9vh 5vw 6vh;align-self:center}.hero-copy h1{font-size:clamp(54px,5.2vw,84px)}.hero-copy h1 em{color:#d9b475}.hero-copy>p{max-width:560px;color:#ddcbb2}.eyebrow{font-size:12px;letter-spacing:2.2px;color:#966e39;margin-bottom:22px}.hero-copy .eyebrow,.estimate .eyebrow,.next-card .eyebrow{color:#d9b475}.button{display:inline-block;background:#201912;color:#fff2db;padding:17px 24px;border:1px solid #201912;font-size:17px;min-height:56px;text-align:center}.hero-copy .button,.next-card .button{background:#fff2db;color:#16110e;border-color:#fff2db;margin:10px 0 20px}.outline{background:transparent;color:#201912}.fine{font-size:13px;line-height:1.7;color:#706052}.hero-copy .fine{font-size:12px}.small{font-size:14px}.promises{border-top:1px solid #564538;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:25px;margin-top:38px}.promises span{font-size:12px;line-height:1.5}.promises b{display:block;font:500 32px DG,serif;color:#d9b475;margin-bottom:10px}.steps{display:flex;justify-content:center;background:#f4e7d2;color:#30241a;border-bottom:1px solid #cdbda8;padding:0 4vw;gap:3vw}.steps button{color:#635342;border:0;border-bottom:3px solid transparent;background:none;padding:20px 5px;font-size:15px}.steps span{margin-right:10px;font-family:DG,serif;font-size:23px}.steps button[aria-current]{border-color:#885f2d;color:#16110e}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 345px;gap:5vw;background:#fff8ed;color:#241b15;padding:60px max(4vw,calc((100vw - 1480px)/2));align-items:start;min-height:80vh}.canvas{min-width:0}.intro{max-width:720px;color:#71614f;margin-bottom:32px}.estimate{position:sticky;top:24px;background:#211912;color:#fff2db;padding:30px 25px;border-top:3px solid #d9b475}.estimate h2{font-size:35px}.estimate p{font-size:14px}.estimate .amount{font:500 48px/1.1 DG,serif;margin:8px 0}.estimate .fine{color:#c6b59e;font-size:12px}.estimate .text-button{color:#fff2db}.estimate dl{font-size:13px}.estimate dl>div{padding:10px 0;border-color:#4f4034}.estimate .pending{background:#32271b;color:#f4d9a8;border-color:#ac8445}.estimate .pending p{font-size:12px;margin-bottom:8px}.estimate .pending span{font-size:12px}.estimate .pending strong{font-size:16px}.choice-row,.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.event-grid{grid-template-columns:repeat(2,1fr)}.choice{background:#fffaf1;color:#30251c;border:1px solid #cdbba3;min-height:65px;padding:18px;text-align:left;font-size:17px}.choice span{font-size:13px;display:block;margin-top:10px;line-height:1.6}.selected{border-color:#8b6536!important;box-shadow:inset 0 0 0 1px #8b6536;background:#f5ead7}.fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.fields label{font-size:15px}.fields input{margin-top:8px}.fields .fine{display:block;margin-top:5px}.note{background:#f0e5d2;border-left:3px solid #aa8552;padding:18px 22px;font-size:15px;margin:28px 0}.event-photo{width:100%;height:310px;object-position:50% 38%;margin:15px 0}.navigation{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:45px;border-top:1px solid #d8c7b0;padding-top:25px}.text-button{background:none;border:0;color:#5e4329;padding:14px 8px;font-size:15px;min-height:48px;text-decoration:underline;text-underline-offset:6px}.collections{display:grid;grid-template-columns:1fr 1fr;gap:22px}.collection{border:1px solid #c8b398;background:#fffaf1;padding:28px;display:flex;flex-direction:column;align-items:start}.collection h2{margin-top:22px;min-height:80px}.collection p{font-size:15px}.collection .collection-price{font:500 44px DG,serif;margin-bottom:0}.collection .button{margin-top:auto;width:100%}.tag{font-size:10px;letter-spacing:1.4px;color:#725022}.pending{border-left:3px solid #a57732;padding:16px 18px;background:#f4e6cc;font-size:14px;margin:20px 0}.pending ul{padding-left:20px}.pending h3{font-size:28px}details{border-top:1px solid #cbbba5;border-bottom:1px solid #cbbba5;margin:25px 0;padding:18px 0}summary{cursor:pointer;min-height:44px;padding:8px 0;font-size:18px}details>.collection{margin-top:20px}.style-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.style{background:#fffaf1;border:1px solid #cbb99e;color:#35271b;padding:0;overflow:hidden}.style img{width:100%;height:210px;display:block}.style span{display:block;padding:16px;font-size:17px}.food-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.food-pair img{width:100%;height:210px}.extras{display:grid;grid-template-columns:1fr 1fr;gap:12px}.extra{display:flex;align-items:start;gap:12px;border:1px solid #dacbb8;padding:18px;background:#fffaf1}.extra input{margin-top:4px}.extra strong{font-size:16px;display:block}.extra small{display:block;font-size:12px;color:#79634c;margin-top:8px}.summary-card{padding:28px;background:#fffdf8;border:1px solid #d0bca1}dl{margin:0}dl>div{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid #e3d7c5;font-size:15px}dt{flex:1}dd{margin:0;text-align:right;max-width:58%}.total{font-family:DG,serif;font-size:28px!important}.payment-list{list-style:none;margin:0;padding:0}.payment-list li{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #d9c8ad;font-size:15px}.payment-list b{white-space:nowrap}.next-card{background:#211912;color:#fff2db;padding:36px;margin-top:35px}.next-card p{color:#ddcbb2}.next-card .text-button{color:#fff2db}.next-card .fine{font-size:12px}.utility{display:flex;flex-wrap:wrap;gap:10px}.next-card h2{font-size:43px}#share-result input{font-size:12px}#status:not(:empty){position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#fff2db;border:1px solid #956c39;color:#211912;padding:16px 24px;max-width:90vw;width:max-content;z-index:5;box-shadow:0 8px 30px #0003}footer{display:flex;gap:30px;justify-content:space-between;padding:32px 4vw;font-size:13px;color:#c6b59e}.skip{position:absolute;top:-100px}.skip:focus{top:10px;left:10px;background:#fff2db;color:#16110e;padding:15px;z-index:10}@media(min-width:1600px){.workspace{gap:70px}}@media(max-width:1100px){.workspace{grid-template-columns:minmax(0,1fr) 300px;gap:25px;padding:40px 25px}.collection{padding:20px}.collection h2{font-size:34px}.choice-row{grid-template-columns:1fr}.hero-copy{padding:50px 30px}.hero-copy h1{font-size:58px}.promises{gap:10px}.extras{grid-template-columns:1fr}}@media(max-width:850px){.workspace{grid-template-columns:1fr}.estimate{position:static;display:block}.welcome{grid-template-columns:1fr}.hero-photo{min-height:420px}.hero-copy{padding:45px 6vw}.hero-copy h1{font-size:64px}.steps{gap:15px;justify-content:space-between;padding:0 20px}.steps button{font-size:12px}.steps span{display:block;margin:0}.mast{padding:12px 20px}.mast img{width:125px;height:50px}.wordmark{font-size:22px}.mast button{font-size:13px;padding:8px 10px}.estimate{margin-top:10px}footer{flex-wrap:wrap;gap:10px 25px}.collection h2{min-height:65px}.style img{height:200px}}@media(max-width:520px){body{font-size:16px}.workspace{padding:35px 20px}.collections,.fields{grid-template-columns:1fr}.collection h2{min-height:0}.collection .button{margin-top:12px}.style-grid{gap:10px}.style img{height:155px}.style span{font-size:14px;padding:12px 8px}.event-grid{gap:10px}.choice{font-size:15px;padding:15px}.hero-copy h1{font-size:54px}.hero-photo{min-height:340px}.wordmark{display:none}.steps{gap:8px;padding:0 15px}.summary-card,.next-card{padding:22px}dl>div{font-size:13px}.payment-list li{font-size:13px}.next-card h2{font-size:37px}.promises b{font-size:27px}.food-pair img{height:145px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{.mast,.steps,.estimate,.navigation,footer,.utility,#status{display:none}.workspace{display:block;padding:0}.next-card{background:white;color:black}.next-card .button{display:none}}

.mobile-total{display:none}@media(max-width:850px){body{padding-bottom:85px}.mobile-total{display:flex;position:fixed;bottom:0;left:0;right:0;align-items:center;justify-content:space-between;gap:15px;background:#211912;color:#fff2db;border-top:1px solid #bc965c;padding:12px 20px;z-index:4;box-shadow:0 -5px 25px #0002}.mobile-total span{font-size:12px}.mobile-total small{display:block;font-size:10px;color:#d9b475}.mobile-total b{font:500 32px DG,serif}#status:not(:empty){bottom:90px}}

/* Reviewed crops preserve faces; portrait ceremony/couple photographs are not panoramas. */
img[data-photo="favorite-couple.webp"]{object-position:50% 30%}
img[data-photo="favorite-rose-portrait.jpg"]{object-position:50% 28%}
img[data-photo="favorite-ceremony.jpg"]{object-position:50% 42%}
img[data-photo="favorite-wedding-dance.webp"]{object-position:76% 40%}
img[data-photo="favorite-dance-production.webp"]{object-position:50% 34%}
img[data-photo="favorite-sage-table.jpg"]{object-position:50% 58%}
img[data-photo="favorite-rose-table.jpg"]{object-position:50% 54%}
figure{margin:0;min-width:0}figure img{display:block;width:100%}figcaption{padding:15px 0}figcaption strong{display:block;font:300 28px/1.15 DG,serif}figcaption span{display:block;font-size:11px;margin-top:8px;color:#79634c}
.wedding-gallery{padding:70px max(5vw,24px);background:#f9f1e4;color:#35271b}.wedding-gallery>div:first-child{max-width:740px;margin-bottom:28px}.wedding-gallery h2{font-size:48px}.wedding-frames{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.wedding-frames img{height:clamp(260px,31vw,490px)}.wedding-frames figure:nth-child(2) img{object-fit:contain;background:#e8dbcc}
.event-wedding{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.event-wedding img{aspect-ratio:4/5;height:auto}.event-wedding img[data-photo="favorite-ceremony.jpg"]{object-fit:contain;background:#e8dbcc}.event-wedding figcaption strong{font-size:25px}
.experience-visual,.dance-visual{margin:28px 0}.experience-visual img,.dance-visual img{aspect-ratio:16/9;height:auto}.experience-visual figcaption,.dance-visual figcaption{border-bottom:1px solid #cbbba5}
.feature-extra{position:relative;display:grid;grid-template-columns:32px 1fr;padding:24px;gap:18px 12px;cursor:pointer}.feature-extra>input{grid-row:1;grid-column:1;z-index:1}.extra-icon{width:64px;height:64px;color:#946c36;grid-column:2;justify-self:end}.feature-extra>span{grid-column:1/-1}.feature-extra strong{font-family:DG,serif;font-size:29px;line-height:1.1}.extra-note{display:block;font-size:12px;line-height:1.65;margin-top:12px;color:#715d49}.extra.is-selected{border-color:#8e6733;background:#f3e6ce;box-shadow:inset 0 0 0 1px #8e6733}.special-moments{border-top:1px solid #cbbba5;padding-top:30px}.feature-extras{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:850px){.wedding-gallery{padding:45px 24px}.wedding-frames{gap:15px}.wedding-frames img{height:290px}.wedding-frames figcaption strong{font-size:25px}}
@media(max-width:520px){.wedding-frames{grid-template-columns:1fr}.wedding-frames img{height:auto;max-height:420px;object-fit:contain;background:#e8dbcc}.wedding-gallery h2{font-size:40px}.event-wedding{gap:12px}.event-wedding figcaption strong{font-size:22px}.feature-extra{padding:16px}.feature-extra strong{font-size:25px}.extra-icon{width:50px;height:50px}.feature-extras{gap:10px}.dance-visual figcaption strong,.experience-visual figcaption strong{font-size:25px}}
.event-photo[data-photo="favorite-rose-portrait.jpg"]{height:520px;object-fit:contain;background:#e8dbcc}
@media(max-width:520px){.event-photo[data-photo="favorite-rose-portrait.jpg"]{height:auto;max-height:520px}}

.guest-presets{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.guest-presets .choice{padding:12px 18px;min-height:48px}.fulfillment{border-top:1px solid #cbbba5;padding-top:28px}.fulfillment h3{font-size:27px;margin-top:25px}.fulfillment .choice-row{grid-template-columns:repeat(3,minmax(0,1fr))}.fulfillment h3:first-of-type+.choice-row{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:650px){.fulfillment .choice-row{grid-template-columns:1fr}.fulfillment h3:first-of-type+.choice-row{grid-template-columns:1fr}.guest-presets .choice{flex:1 0 40%}}

.milestone-gallery{display:grid;grid-template-columns:0.8fr 1.2fr;gap:24px;align-items:center;margin:32px 0}.milestone-gallery img{height:auto;object-fit:contain}.milestone-gallery figcaption strong{font-size:27px}.corporate-gallery{margin:32px 0}.corporate-gallery img{height:auto;aspect-ratio:3/2;object-fit:contain}
@media(max-width:650px){.milestone-gallery{grid-template-columns:1fr;gap:24px}.milestone-gallery img[data-photo="favorite-rose-portrait.jpg"]{max-height:480px;background:#e8dbcc}.milestone-gallery figcaption strong{font-size:25px}}
