@charset "UTF-8";
:root{--ink:#121416;--ink-soft:#1c1e20;--paper:#f9f6ef;--cream:#f4ecdf;--gold:#d8bd86;--gold-deep:#816131;--muted:#62615e;--line:#d8d1c3;--serif:Georgia,'Times New Roman',serif;--sans:'Avenir Next','Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;font-family:var(--sans);font-size:1rem;line-height:1.7;background:var(--paper);color:var(--ink)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;width:100%;object-fit:cover}figure,h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:clamp(2.5rem,4vw,4rem);line-height:1.12;letter-spacing:-.035em}h2 em{font-weight:400}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #c79b50;outline-offset:5px}a,button,summary{-webkit-tap-highlight-color:transparent}.skip-link{position:absolute;top:-80px;left:16px;background:white;color:var(--ink);padding:12px 20px;z-index:50}.skip-link:focus{top:10px}
.announcement{background:#0b0d0f;color:var(--gold);padding:9px 20px;text-align:center;font-size:.75rem;letter-spacing:.12em;line-height:1.5;border-bottom:1px solid #3b3327}.announcement span{margin:0 20px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:25px 5vw;background:var(--ink);color:var(--cream);border-bottom:1px solid #39372f}.wordmark{display:inline-block;font-family:var(--serif);font-size:3.25rem;line-height:1.05;font-style:italic;letter-spacing:-.06em;color:var(--gold);flex-shrink:0}.wordmark span{display:block;font-family:var(--sans);font-size:.75rem;letter-spacing:.15em;font-weight:400;font-style:normal;line-height:1.5;margin-top:9px;color:var(--cream)}.main-nav{display:flex;align-items:center;gap:30px;font-size:.875rem}.main-nav>a:not(.button):hover{color:var(--gold)}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:1px solid transparent;border-radius:1px;min-height:52px;padding:15px 25px;font-size:.875rem;font-weight:600;letter-spacing:.025em;line-height:1.45;text-align:center;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-small{padding:12px 19px;min-height:46px}.button-gold{background:var(--gold);color:var(--ink)}.button-gold:hover{background:#efdab4}.button-outline-light{border-color:#8d7c60;color:var(--cream);background:transparent}.button-outline-light:hover{background:#302c25}.text-link{display:inline-block;font-size:.875rem;line-height:1.6;border-bottom:1px solid var(--gold-deep);padding:5px 0}.light-link{color:var(--cream);border-color:#776c59}.text-link:hover{color:var(--gold-deep)}.light-link:hover{color:var(--gold)}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.16em;line-height:1.6;margin-bottom:17px;color:var(--gold-deep)}.gold{color:var(--gold)}.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:.83fr 1.17fr;min-height:650px;background:var(--ink);color:var(--cream);padding:18px 24px 24px 0;gap:12px}.hero-copy{padding:55px 3.4vw 45px 6vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero h1{font-size:clamp(4rem,6.3vw,6.65rem);line-height:.99;letter-spacing:-.055em;margin-bottom:25px}.hero h1 em{color:var(--gold);font-weight:400}.hero-tagline{font-family:var(--serif);font-size:1.35rem;font-style:italic;margin-bottom:15px}.hero-description{font-size:1rem;max-width:365px;color:#c9c7c1}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px;margin-top:28px}.hero-signature{margin-top:42px;font-size:.75rem;line-height:1.65;color:#aaa69e;letter-spacing:.025em}.hero-signature span{color:var(--gold);margin:0 7px}.hero-image{position:relative;min-width:0;overflow:hidden;border:1px solid #796346}.hero-image img{position:absolute;inset:0;height:100%;object-position:50% 50%}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:50px 24px 24px;background:linear-gradient(transparent,rgba(10,11,12,.92));display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.hero-image figcaption span:first-child{font-size:.75rem;letter-spacing:.11em;max-width:180px;line-height:1.6}.hero-image figcaption span:last-child{font-family:var(--serif);font-style:italic;font-size:1.15rem;max-width:230px;text-align:right;line-height:1.35}.category-ribbon{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:24px 6vw;background:#e9dfcc;color:#54442e;font-size:.75rem;font-weight:600;letter-spacing:.12em}.category-ribbon span{color:#957848}.category-ribbon a:hover{text-decoration:underline;text-underline-offset:5px}
.section{padding:92px 6vw}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:43px}.section-heading>p{color:var(--muted);font-size:1rem;max-width:350px;padding-bottom:5px}.collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.collection-card{min-width:0;scroll-margin-top:28px}.image-link{display:block;position:relative;overflow:hidden;background:#e8e0d2}.image-link img{transition:transform .45s}.image-link:hover img{transform:scale(1.025)}.image-hint{position:absolute;right:12px;bottom:12px;background:rgba(18,20,22,.84);padding:6px 12px;color:var(--cream);font-size:.75rem;line-height:1.5;opacity:0;transition:opacity .2s}.image-link:hover .image-hint,.image-link:focus-visible .image-hint{opacity:1}.collection-card .image-link{aspect-ratio:4/5}.collection-card img{height:100%;object-fit:cover}.collection-card:nth-child(1) img{object-position:50% 50%}.collection-card:nth-child(4) img{object-position:50% 60%}.card-kicker{display:block;font-size:.75rem;line-height:1.6;font-weight:600;letter-spacing:.075em;color:var(--gold-deep);margin-top:21px}.collection-card h3{font-size:1.65rem;letter-spacing:-.035em;line-height:1.2;margin:8px 0 12px}.collection-card p{font-size:1rem;line-height:1.65;color:var(--muted)}.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:47px;border-top:1px solid var(--line)}.menu-card{padding:26px 35px 26px 0;border-bottom:1px solid var(--line)}.menu-card:nth-child(2n){padding-left:35px;padding-right:0;border-left:1px solid var(--line)}.menu-card h3{font-size:1.65rem;line-height:1.3;margin-bottom:11px}.menu-card p{font-size:1rem;color:var(--muted);line-height:1.75}.menu-link{font-size:.875rem;font-weight:500;display:inline-block;margin-top:13px;text-decoration:underline;text-decoration-color:#ad905c;text-underline-offset:5px}.menu-note{font-size:.8125rem;color:var(--muted);margin-top:20px}
.signature-section{display:grid;grid-template-columns:.9fr 1.25fr;gap:9vw;background:#20221f;color:var(--cream)}.signature-intro h2 em{color:var(--gold)}.signature-intro>p:not(.eyebrow){margin:23px 0 27px;color:#cbc9c0;max-width:400px;font-size:1rem}.signature-list details{border-bottom:1px solid #555247}.signature-list summary{display:flex;align-items:center;gap:19px;list-style:none;cursor:pointer;padding:22px 0;font-family:var(--serif);font-size:1.45rem;line-height:1.3}.signature-list details:first-child summary{padding-top:5px}.signature-number{font-family:var(--sans);font-size:.75rem;color:var(--gold);flex-shrink:0}.details-plus{font-family:var(--sans);font-size:1.1rem;font-weight:400;line-height:1;margin-left:auto;flex-shrink:0;transition:transform .2s}details[open] .details-plus{transform:rotate(45deg)}summary::-webkit-details-marker{display:none}.signature-list details p{font-size:1rem;color:#cfcdc4;padding:0 22px 23px 35px;line-height:1.75}
.wedding-section{background:var(--paper)}.wedding-heading-copy{max-width:330px;flex-shrink:0}.wedding-heading-copy p{font-size:1rem;color:var(--muted);margin-bottom:14px}.wedding-gallery{display:grid;grid-template-columns:.9fr 1.25fr;gap:38px;align-items:start}.wedding-portrait{margin-top:52px}.wedding-gallery img{height:auto;object-fit:contain}.wedding-table-stack{display:grid;grid-template-columns:1fr;gap:32px}.wedding-table-stack .image-link{aspect-ratio:16/9}.wedding-table-stack img{height:100%;object-fit:cover;object-position:50% 56%}.wedding-gallery figcaption{padding-top:18px}.wedding-gallery figcaption>span{font-size:.75rem;letter-spacing:.1em;color:var(--gold-deep)}.wedding-gallery h3{font-size:1.55rem;line-height:1.3;margin-top:7px}.event-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:49px;padding-top:30px;border-top:1px solid var(--line)}.event-services>div>span{font-family:var(--serif);font-size:1.3rem;font-style:italic;color:var(--gold-deep)}.event-services h3{font-size:1.6rem;line-height:1.35;margin:12px 0}.event-services p{font-size:1rem;color:var(--muted)}
.cake-section{background:var(--ink);color:var(--cream)}.cake-section .section-heading>p{color:#c5c1b8}.cake-section h2 em{color:var(--gold)}.cake-gallery{display:grid;grid-template-columns:1fr 1fr;gap:35px;max-width:1090px;margin:0 auto}.cake-gallery .image-link{aspect-ratio:3/4;background:#eadbc4}.cake-gallery img{height:100%;object-fit:contain}.cake-gallery figcaption{padding:22px 0 0}.cake-gallery h3{font-size:1.7rem;line-height:1.3;color:var(--cream)}.cake-gallery p{color:#bcb8ad;margin-top:8px;font-size:1rem}.cake-cta{display:flex;align-items:center;justify-content:center;gap:35px;margin-top:46px;border-top:1px solid #454034;padding-top:35px}.cake-cta p{font-family:var(--serif);font-style:italic;font-size:1.3rem;color:var(--gold)}
.story-section{display:grid;grid-template-columns:.9fr 1fr;align-items:center;gap:10vw;background:#eae2d4}.founder-portrait{position:relative;aspect-ratio:4/5;overflow:hidden;max-width:500px;background:#d7c4ac}.founder-portrait img{position:absolute;top:0;left:0;width:161%;max-width:none;height:auto}.story-copy h2{margin-bottom:27px}.story-copy .founder-name{font-family:var(--serif);font-size:1.6rem;color:var(--ink);margin-bottom:16px}.story-copy>p:not(.eyebrow):not(.founder-name):not(.story-location){font-size:1rem;color:#56554f;line-height:1.8;max-width:460px;margin-bottom:19px}.signature{display:block;font-family:var(--serif);font-size:2rem;font-style:italic;color:#755526;margin:25px 0 15px}.story-copy .story-location{font-size:.75rem;letter-spacing:.11em;color:#655338;line-height:1.5}
.order-section{background:#202325;color:var(--cream)}.order-header{max-width:780px;text-align:center;margin:0 auto 48px}.order-header h2 em{color:var(--gold)}.order-header>p:last-child{color:#c5c3bb;font-size:1rem;margin-top:23px}.order-layout{display:grid;grid-template-columns:1fr 1fr;gap:7vw;max-width:1190px;margin:auto}.contact-card{border:1px solid #82704e;padding:34px;background:#181b1d;align-self:start}.contact-card .eyebrow{margin-bottom:12px}.phone-number{display:inline-block;font-family:var(--serif);font-size:clamp(2rem,3.1vw,3.1rem);line-height:1.25;letter-spacing:-.03em}.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.contact-actions .button{padding:13px 20px}.copy-phone{font-size:.875rem;background:none;border:0;border-bottom:1px solid #82704e;color:#cfc8b8;padding:4px 0;margin-top:20px}.copy-status{min-height:23px;font-size:.8125rem;color:var(--gold);margin-top:5px}.pickup-note{border-top:1px solid #474238;padding-top:19px;margin-top:10px;font-size:.875rem;display:flex;flex-direction:column;gap:5px}.pickup-note strong{font-weight:500;color:var(--gold)}.pickup-note span{color:#c0bdb6}.social-link{font-size:.875rem;display:inline-block;margin-top:22px;border-bottom:1px solid #82704e}.facebook-name{font-size:.8125rem;color:#b3afa5;margin-top:9px}.faq h3{font-size:1.8rem;line-height:1.3;margin-bottom:17px}.faq details{border-bottom:1px solid #565348}.faq summary{display:flex;gap:22px;align-items:center;list-style:none;cursor:pointer;font-size:1rem;line-height:1.5;padding:22px 0}.faq details p{font-size:1rem;color:#c6c2b7;padding:0 22px 22px 0;line-height:1.75}
.site-footer{background:#0c0f11;color:var(--cream);padding:47px 6vw 23px}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:32px}.footer-links{display:flex;gap:20px 29px;flex-wrap:wrap;font-size:.875rem;justify-content:flex-end}.footer-links a:hover{color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;gap:22px;border-top:1px solid #3c392f;padding-top:22px;font-size:.75rem;color:#ada99f}
.photo-dialog{padding:55px 22px 20px;border:1px solid #806d49;background:var(--ink);color:var(--cream);width:min(92vw,1100px);max-width:92vw;max-height:94dvh;overflow:auto}.photo-dialog::backdrop{background:rgba(0,0,0,.88)}.photo-dialog img{max-width:100%;width:auto;max-height:75dvh;height:auto;object-fit:contain;margin:0 auto}.photo-close{position:absolute;top:11px;right:15px;border:0;background:none;color:var(--cream);padding:7px 10px;font-size:.875rem;min-height:36px}.photo-close span{font-size:1.35rem;margin-left:8px}.photo-dialog p{text-align:center;font-family:var(--serif);font-size:1.15rem;margin-top:16px}.dialog-open{overflow:hidden}
@media(min-width:1700px){.hero-copy{padding-left:max(6vw,calc((100vw - 1480px)/2))}.section{padding-left:max(6vw,calc((100vw - 1440px)/2));padding-right:max(6vw,calc((100vw - 1440px)/2))}.hero{min-height:760px}}
@media(max-width:1100px){.main-nav{gap:19px}.main-nav>a{font-size:.875rem}.wordmark{font-size:2.8rem}.wordmark span{font-size:.75rem;letter-spacing:.09em}.hero{grid-template-columns:1fr 1.05fr;min-height:600px;padding-right:18px}.hero-copy{padding-left:5vw;padding-right:3vw}.hero h1{font-size:clamp(3.8rem,7.8vw,5.2rem)}.hero-tagline{font-size:1.2rem}.hero-signature{margin-top:29px}.hero-actions{gap:15px}.hero-image figcaption{flex-direction:column;align-items:flex-start;padding:45px 18px 20px}.hero-image figcaption span:last-child{text-align:left;max-width:none}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 26px}.collection-card .image-link{aspect-ratio:1/1}.section{padding:76px 6vw}.signature-section{gap:6vw;grid-template-columns:.9fr 1.1fr}.signature-list summary{font-size:1.25rem}.wedding-heading-copy{max-width:290px}.wedding-gallery{gap:28px}.wedding-portrait{margin-top:30px}.event-services{gap:25px}.story-section{gap:7vw}.contact-card{padding:28px}.order-layout{gap:5vw}.footer-main{align-items:flex-start}.footer-links{max-width:360px}}
@media(max-width:780px){.announcement{font-size:.75rem;letter-spacing:.045em;padding:9px 14px}.announcement span{margin:0 7px}.site-header{padding:21px 6vw;flex-wrap:wrap;gap:0}.wordmark{font-size:2.6rem}.wordmark span{font-size:.75rem;letter-spacing:.07em;margin-top:7px}.menu-toggle{display:flex;align-items:center;gap:9px;color:var(--cream);background:none;border:1px solid #706043;padding:11px 13px;font-size:.875rem;min-height:44px}.menu-icon{display:flex;flex-direction:column;gap:5px;width:15px}.menu-icon i{display:block;width:15px;height:1px;background:var(--gold)}.main-nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;margin-top:23px;border-top:1px solid #494135}.main-nav.is-open{display:flex}.main-nav>a:not(.button){padding:13px 0;border-bottom:1px solid #494135;font-size:1rem}.main-nav .button{margin-top:16px;align-self:flex-start}.hero{grid-template-columns:1fr;gap:0;padding:0}.hero-copy{padding:43px 7vw 38px;max-width:620px}.hero h1{font-size:clamp(4rem,13.5vw,6.1rem);line-height:.99}.hero .eyebrow{font-size:.75rem}.hero-tagline{font-size:1.25rem}.hero-description{max-width:470px;font-size:1rem}.hero-signature{max-width:330px;margin-top:29px}.hero-image{height:440px;margin:0 6vw 24px;border-color:#796346}.hero-image img{object-position:50% 50%}.hero-image figcaption{flex-direction:row;align-items:flex-end;padding:45px 16px 20px}.hero-image figcaption span:first-child{font-size:.75rem;max-width:132px}.hero-image figcaption span:last-child{max-width:140px;text-align:right;font-size:1rem}.category-ribbon{display:grid;grid-template-columns:1fr 1fr;text-align:center;gap:16px 14px;padding:22px 6vw;letter-spacing:.065em}.category-ribbon span{display:none}.section{padding:58px 7vw}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:21px;max-width:none}.section-heading h2{font-size:clamp(2.3rem,8.5vw,3.5rem)}.section-heading .eyebrow{margin-bottom:13px}.collection-grid{gap:30px 18px}.collection-card .image-link{aspect-ratio:4/5}.collection-card h3{font-size:1.4rem;line-height:1.25;margin-top:8px}.card-kicker{font-size:.75rem;letter-spacing:.04em;margin-top:17px;min-height:38px}.collection-card p{font-size:1rem;line-height:1.6}.image-hint{opacity:1;font-size:.75rem;right:8px;bottom:8px;padding:4px 8px}.menu-grid{grid-template-columns:1fr;margin-top:35px}.menu-card,.menu-card:nth-child(2n){border-left:0;padding:22px 0}.menu-card h3{font-size:1.55rem}.signature-section{grid-template-columns:1fr;gap:32px}.signature-intro h2{font-size:2.9rem}.signature-intro>p:not(.eyebrow){max-width:none}.signature-list summary{font-size:1.35rem;gap:15px;padding:21px 0}.signature-list details:first-child summary{padding-top:0}.signature-list details p{padding-left:30px}.wedding-heading-copy{max-width:none;margin-top:21px}.wedding-gallery{grid-template-columns:1fr;gap:31px}.wedding-portrait{margin-top:0;max-width:480px;margin-left:auto;margin-right:auto}.wedding-table-stack{gap:30px}.wedding-gallery h3{font-size:1.5rem}.wedding-table-stack .image-link{aspect-ratio:4/3}.event-services{grid-template-columns:1fr;gap:25px;margin-top:38px;padding-top:27px}.event-services h3{display:inline;font-size:1.5rem;margin-left:13px}.event-services p{margin-top:12px}.cake-gallery{gap:35px;grid-template-columns:1fr;max-width:500px}.cake-gallery h3{font-size:1.6rem}.cake-gallery figcaption{padding-top:19px}.cake-cta{flex-direction:column;align-items:flex-start;gap:22px;margin-top:32px;padding-top:27px}.cake-cta p{font-size:1.3rem}.story-section{grid-template-columns:1fr;gap:36px}.founder-portrait{width:100%;max-width:440px;margin:0 auto}.story-copy h2{font-size:2.9rem}.story-copy>p:not(.eyebrow):not(.founder-name):not(.story-location){max-width:none}.order-header{text-align:left;margin-bottom:33px}.order-header h2{font-size:2.8rem}.order-header br{display:none}.order-layout{grid-template-columns:1fr;gap:37px}.contact-card{padding:28px 24px}.phone-number{font-size:2.3rem}.contact-actions{gap:12px}.contact-actions .button{padding:13px 17px}.faq h3{font-size:1.7rem}.site-footer{padding:39px 7vw 22px}.footer-main{flex-direction:column;gap:28px}.footer-links{justify-content:flex-start;max-width:none;gap:18px 25px}.footer-bottom{flex-direction:column;gap:7px}.photo-dialog{padding:54px 12px 18px;max-width:96vw;width:96vw}.photo-dialog img{max-height:72dvh}.photo-dialog p{font-size:1rem}}
@media(max-width:370px){.wordmark{font-size:2.25rem}.wordmark span{font-size:.75rem;letter-spacing:.01em}.menu-toggle{padding:10px}.hero-image{height:365px}.collection-grid{grid-template-columns:1fr;gap:30px}.collection-card .image-link{aspect-ratio:1/1}.card-kicker{min-height:0}.collection-card h3{font-size:1.65rem}.contact-card{padding:25px 19px}.contact-actions .button{width:100%}.phone-number{font-size:2.1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}


@media(min-width:781px) and (max-width:1000px){.site-header{flex-wrap:wrap}.menu-toggle{display:flex;align-items:center;gap:9px;color:var(--cream);background:none;border:1px solid #706043;padding:11px 13px;font-size:.875rem;min-height:44px}.menu-icon{display:flex;flex-direction:column;gap:5px;width:15px}.menu-icon i{display:block;width:15px;height:1px;background:var(--gold)}.main-nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;margin-top:23px;border-top:1px solid #494135}.main-nav.is-open{display:flex}.main-nav>a:not(.button){padding:13px 0;border-bottom:1px solid #494135;font-size:1rem}.main-nav .button{margin-top:16px;align-self:flex-start}}
