:root{--paper:#fbf5ef;--paper2:#f4e9e1;--pink:#e8b9b8;--rose:#bd7779;--wine:#663d42;--ink:#2e2525;--muted:#837474;--line:#dfd0c8;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--ease:cubic-bezier(.2,.72,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}.scroll-progress{position:fixed;z-index:100;top:0;left:0;width:100%;height:3px;background:transparent}.scroll-progress span{display:block;width:0;height:100%;background:var(--rose);transform-origin:left}.header{height:86px;padding:0 7.1%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;background:rgba(251,245,239,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(189,119,121,.14);transition:height .35s var(--ease),box-shadow .35s}.header.scrolled{height:72px;box-shadow:0 8px 30px #513b3510}.brand,.footer-brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand-mark{font:600 3rem/.8 var(--serif);color:var(--wine);letter-spacing:-.12em}.brand-mark span{color:var(--rose)}.brand-name,.footer-brand>span:last-child{font-size:.68rem;font-weight:700;letter-spacing:.17em}.brand-name small,.footer-brand small{display:block;margin-top:7px;font-size:.48rem;font-weight:500;letter-spacing:.16em;color:var(--muted)}.nav{display:flex;align-items:center;gap:38px}.nav a{text-decoration:none;font-size:.68rem;color:#645555;transition:color .25s}.nav a:hover{color:var(--rose)}.nav .nav-cta{padding:13px 18px;background:var(--wine);color:white;border-radius:2px;letter-spacing:.03em}.nav-cta span{margin-left:12px}.menu-toggle{display:none}
.hero{min-height:690px;padding:94px 9.5% 105px 10.3%;display:grid;grid-template-columns:.94fr 1.06fr;gap:5%;align-items:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:570px;height:570px;border:1px solid #e8b9b83d;border-radius:50%;left:-340px;top:12%;pointer-events:none}.hero-copy{position:relative;z-index:2;padding-bottom:20px}.eyebrow,.section-kicker{display:flex;align-items:center;gap:12px;font-size:.57rem;letter-spacing:.19em;font-weight:700;color:var(--rose)}.eyebrow-line{height:1px;width:30px;background:var(--rose)}h1,h2,h3,p,figure{margin-top:0}.hero h1{font:500 clamp(4.4rem,7.1vw,7.4rem)/.99 var(--serif);letter-spacing:-.065em;margin:35px 0 23px}.hero h1 em,h2 em,blockquote em{font-weight:500;color:var(--rose)}.hero-intro{max-width:390px;color:#776767;font-size:.91rem;line-height:1.9;margin-bottom:31px}.hero-actions{display:flex;align-items:center;gap:25px}.btn{min-height:50px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:22px;text-decoration:none;font-size:.69rem;font-weight:600;letter-spacing:.02em;transition:transform .3s var(--ease),background .3s,color .3s,box-shadow .3s}.btn:hover{transform:translateY(-4px);box-shadow:0 12px 25px #4d303018}.btn-dark{background:var(--wine);color:white}.btn-dark:hover{background:#4e3035}.underlink,.text-arrow{font-size:.68rem;text-decoration:none;border-bottom:1px solid var(--rose);padding-bottom:7px;color:var(--wine)}.underlink span{padding-left:8px}.hero-foot{display:flex;justify-content:space-between;max-width:390px;margin-top:76px;padding-top:15px;border-top:1px solid var(--line);font-size:.49rem;letter-spacing:.14em;color:#9b8987}.hero-visual{position:relative;max-width:600px;margin-left:auto;width:100%;transform:translateY(var(--parallax,0px));will-change:transform}.photo-frame{overflow:hidden;background:var(--paper2)}.hero-photo{height:490px;position:relative;clip-path:inset(0 round 48% 48% 4px 4px)}.hero-photo img,.story-image img,.bake-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--ease)}.hero-visual:hover .hero-photo img{transform:scale(1.045)}.hero-sticker{position:absolute;right:-26px;top:35px;width:112px;height:112px;border-radius:50%;background:#f1d4cd;color:var(--wine);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;font-size:.52rem;letter-spacing:.15em;line-height:1.4;transform:rotate(10deg);box-shadow:0 10px 25px #553c3217}.hero-sticker b{font:1.45rem var(--serif);color:var(--rose)}.hero-photo-caption{display:flex;justify-content:space-between;padding:14px 3px 0;font-size:.48rem;letter-spacing:.15em;color:#9c8885}.hero-scribble{position:absolute;right:2.2%;bottom:45px;color:#e8b9b85c;font:italic 500 4.8rem/.8 var(--serif);transform:rotate(-10deg);pointer-events:none}.ticker{overflow:hidden;background:var(--wine);color:#f8eae2;padding:16px 0}.ticker-track{display:flex;align-items:center;justify-content:space-around;gap:34px;min-width:900px;white-space:nowrap;animation:ticker 28s linear infinite}.ticker span{font-size:.56rem;letter-spacing:.2em}.ticker i{font-style:normal;color:#e8b9b8;font-size:1.05rem}@keyframes ticker{to{transform:translateX(-25%)}}
.section{padding:118px 10.3%}.section-kicker{color:#a66d70;font-size:.55rem}.section-kicker span{color:#b89b94}.story-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;align-items:end;margin-top:42px}.story-heading h2,.bakes h2,.how h2,.visit h2{font:500 clamp(3.4rem,5.3vw,5.6rem)/1.08 var(--serif);letter-spacing:-.055em;margin:0}.hand-note{display:inline-block;margin:28px 0 0 14%;font:italic 1.1rem var(--serif);color:var(--rose);transform:rotate(-5deg)}.story-copy{max-width:440px;padding-bottom:8px}.story-copy p{font-size:.82rem;line-height:1.95;color:#786a68}.story-copy .lead{font:500 1.35rem/1.55 var(--serif);color:var(--ink)}.text-arrow{display:inline-block;margin-top:13px}.story-images{display:grid;grid-template-columns:1.2fr .8fr;gap:6%;align-items:center;margin-top:68px}.story-image{position:relative;margin:0;overflow:hidden;background:var(--paper2)}.story-image-large{height:390px}.story-image-small{height:300px;margin-top:72px}.story-image:hover img{transform:scale(1.05)}.story-image figcaption{position:absolute;bottom:0;left:0;background:var(--paper);padding:12px 16px;font-size:.48rem;letter-spacing:.15em;color:#8b6d6c}.image-doodle{position:absolute;right:18px;top:8px;color:#f9eee5;font:5rem var(--serif)}
.bakes{background:var(--paper2);padding-top:110px;padding-bottom:105px}.bakes-top{display:flex;align-items:end;justify-content:space-between;gap:8%;margin-bottom:48px}.bakes h2{margin-top:27px}.bakes-note{max-width:330px;color:#7f6e6b;font-size:.77rem;line-height:1.9;margin:0 0 8px}.bake-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.bake-card{min-width:0}.bake-image{height:280px;position:relative;overflow:hidden;background:#eadbd4}.bake-card:hover img{transform:scale(1.07)}.bake-number{position:absolute;top:12px;left:13px;background:var(--paper);color:var(--wine);width:31px;height:31px;border-radius:50%;display:grid;place-items:center;font:italic .75rem var(--serif)}.bake-meta{display:flex;flex-direction:column;gap:7px;margin-top:18px}.bake-meta h3{font:500 1.3rem var(--serif);margin:0}.bake-meta span{font-size:.46rem;letter-spacing:.15em;color:#a06c6e}.bake-card>p{font-size:.69rem;line-height:1.7;color:#83716f;margin:10px 0 0}.bakes-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:55px;padding-top:22px;border-top:1px solid #d8c4bb}.bakes-bottom>span{font-size:.5rem;letter-spacing:.16em;color:#9a817d}.btn-outline{border:1px solid #a87577;color:var(--wine);min-height:44px}.btn-outline:hover{background:var(--wine);color:white}
.quote-band{position:relative;overflow:hidden;text-align:center;background:#bd8585;color:#fff5ed;padding:105px 8% 112px}.quote-band .light{justify-content:center;color:#f6dcd3}.quote-band .section-kicker span{color:#f0c8c1}.quote-band blockquote{font:500 clamp(2.8rem,5.5vw,5.6rem)/1.15 var(--serif);letter-spacing:-.04em;margin:35px auto 24px;position:relative;z-index:2}.quote-band blockquote em{color:#f7dfd6}.quote-sub{font-size:.58rem;letter-spacing:.15em;color:#f5ddd6}.quote-decoration{position:absolute;font-size:19rem;line-height:1;color:#ffffff0d;right:4%;top:-40px;transform:rotate(16deg)}
.how{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:start}.how h2{margin-top:28px}.steps{padding-top:3px}.step{display:grid;grid-template-columns:46px 1fr 40px;gap:16px;align-items:start;padding:26px 0;border-bottom:1px solid var(--line)}.step:first-child{border-top:1px solid var(--line)}.step-no{font-size:.55rem;letter-spacing:.12em;color:var(--rose);padding-top:7px}.step h3{font:500 1.45rem var(--serif);margin:0 0 7px}.step p{font-size:.72rem;line-height:1.8;color:#806f6d;margin:0;max-width:400px}.step-mark{font:1.7rem var(--serif);color:#c58c8c;text-align:right}
.order-section{background:var(--wine);color:#fff4eb;padding:110px 8%;position:relative;overflow:hidden}.order-inner{max-width:900px;margin:auto;text-align:center;position:relative;z-index:2}.order-section .section-kicker{justify-content:center;color:#e6babb}.order-section .section-kicker span{color:#d4a2a2}.order-section h2{font:500 clamp(4rem,7vw,7rem)/.99 var(--serif);letter-spacing:-.06em;margin:30px 0 20px}.order-section h2 em{color:#e8b9b8}.order-copy{max-width:490px;margin:0 auto 29px;color:#e1ceca;font-size:.8rem;line-height:1.9}.order-actions{display:flex;justify-content:center;align-items:center;gap:26px}.btn-cream{background:#f7e9df;color:var(--wine)}.btn-cream:hover{background:white}.order-insta{font-size:.67rem;color:#f7e9df;text-decoration:none;border-bottom:1px solid #e8b9b8;padding-bottom:7px}.order-flower{position:absolute;right:-35px;bottom:-115px;font-size:18rem;color:#ffffff0b;transform:rotate(-15deg)}
.visit{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:110px;padding-bottom:110px}.visit h2{margin-top:27px}.visit-note{max-width:320px;color:#7e6d6a;font-size:.78rem;line-height:1.9;margin-top:25px}.visit-right{padding-top:5px}.visit-detail{display:grid;grid-template-columns:38px 1fr;gap:16px;padding:0 0 23px;margin-bottom:23px;border-bottom:1px solid var(--line)}.detail-icon{font:1.6rem var(--serif);color:var(--rose)}.visit-detail small{font-size:.5rem;letter-spacing:.17em;color:#a06c6e}.visit-detail p{font:500 1.05rem/1.6 var(--serif);margin:7px 0}.visit-detail a{font-size:.64rem;text-decoration:none;color:var(--wine);border-bottom:1px solid #c18b8b;padding-bottom:4px}.verify-note{font-size:.61rem;line-height:1.7;color:#988582}.footer{background:#f1e6df;padding:38px 8% 20px;display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.footer-brand .brand-mark{font-size:2.5rem}.footer-brand>span:last-child{font-size:.62rem;letter-spacing:.15em}.footer-brand small{font-size:.45rem}.footer>p{text-align:right;color:#8a7472;font:italic 1rem var(--serif)}.footer-bottom{grid-column:1/-1;border-top:1px solid #d9c8c0;padding-top:17px;display:flex;align-items:center;gap:26px;font-size:.48rem;letter-spacing:.13em;color:#9a8580}.footer-bottom a{margin-left:auto;color:var(--wine);text-decoration:none}.footer-bottom .back-top{margin-left:0}.floating-order{position:fixed;z-index:40;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:var(--wine);color:#fff4eb;text-decoration:none;display:flex;align-items:center;justify-content:center;font:1.5rem var(--serif);box-shadow:0 8px 25px #4d30302e;transition:transform .25s,background .25s}.floating-order span{position:absolute;right:67px;background:var(--wine);color:white;padding:10px 13px;font:600 .48rem var(--sans);letter-spacing:.12em;white-space:nowrap;opacity:0;transform:translateX(8px);transition:.25s;pointer-events:none}.floating-order:hover{transform:translateY(-4px);background:#4e3035}.floating-order:hover span{opacity:1;transform:translateX(0)}
/* Cinematic reveal system */
.reveal{opacity:0;transform:translate3d(0,34px,0);filter:blur(3px);transition:opacity .85s var(--ease),transform .9s var(--ease),filter .9s var(--ease);transition-delay:var(--delay,0ms)}.reveal.from-left{transform:translate3d(-42px,12px,0)}.reveal.from-right{transform:translate3d(42px,12px,0)}.reveal.is-visible{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}.hero-enter{opacity:0;transform:translateY(22px);animation:heroIn .9s var(--ease) forwards}.hero-enter.delay-1{animation-delay:.12s}.hero-enter.delay-2{animation-delay:.25s}.hero-enter.delay-3{animation-delay:.38s}@keyframes heroIn{to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.hero{padding-left:7%;padding-right:7%;gap:3%}.hero h1{font-size:clamp(4rem,7.3vw,6rem)}.hero-photo{height:430px}.section{padding-left:7%;padding-right:7%}.bake-image{height:230px}.nav{gap:23px}}
@media(max-width:760px){html{scroll-padding-top:70px}.header{height:70px;padding:0 6%}.header.scrolled{height:64px}.brand-mark{font-size:2.55rem}.brand-name{font-size:.58rem}.brand-name small{font-size:.42rem}.menu-toggle{display:flex;width:42px;height:42px;border:0;background:none;flex-direction:column;justify-content:center;gap:6px;align-items:center;z-index:62}.menu-toggle span{width:23px;height:1px;background:var(--wine);transition:transform .25s}.menu-toggle.active span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle.active span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.nav{display:none;position:fixed;inset:0;background:var(--paper);padding:100px 9% 50px;align-items:flex-start;flex-direction:column;gap:0}.nav.open{display:flex}.nav a{font:500 2rem var(--serif);padding:17px 0;border-bottom:1px solid var(--line);width:100%}.nav .nav-cta{font:600 .9rem var(--sans);width:auto;margin-top:22px;padding:15px 19px;border:0}.hero{min-height:auto;display:flex;flex-direction:column;align-items:stretch;padding:86px 7% 83px;gap:38px}.hero h1{font-size:clamp(4.1rem,14vw,6rem);margin:28px 0 19px}.hero-intro{font-size:.82rem;max-width:330px}.hero-foot{margin-top:45px}.hero-visual{width:87%;margin:0 3% 0 auto}.hero-photo{height:105vw;max-height:440px;min-height:310px}.hero-sticker{width:91px;height:91px;right:-22px;top:24px;font-size:.45rem}.hero-photo-caption{font-size:.42rem}.hero-scribble{font-size:3.6rem;right:3%;bottom:25px}.ticker{padding:13px 0}.ticker-track{gap:23px}.ticker span{font-size:.48rem}.section{padding:82px 7%}.story-grid{grid-template-columns:1fr;gap:24px;margin-top:30px}.story-heading h2,.bakes h2,.how h2,.visit h2{font-size:clamp(3.3rem,12vw,4.6rem)}.hand-note{margin-top:15px;margin-left:30%}.story-copy .lead{font-size:1.2rem}.story-copy p{font-size:.77rem}.story-images{margin-top:38px;grid-template-columns:1fr .78fr;gap:12px}.story-image-large{height:270px}.story-image-small{height:210px;margin-top:50px}.story-image figcaption{font-size:.4rem;padding:9px}.image-doodle{font-size:3.3rem}.bakes{padding-top:82px;padding-bottom:78px}.bakes-top{display:block;margin-bottom:30px}.bakes-note{margin-top:21px;font-size:.73rem}.bake-grid{grid-template-columns:1fr 1fr;gap:27px 13px}.bake-image{height:56vw;max-height:270px}.bake-meta h3{font-size:1.13rem}.bake-meta span{font-size:.4rem}.bake-card>p{font-size:.64rem}.bakes-bottom{margin-top:38px;gap:15px}.bakes-bottom>span{font-size:.42rem;max-width:130px;line-height:1.7}.btn-outline{padding:0 14px;min-height:42px;font-size:.61rem}.quote-band{padding:82px 7% 85px}.quote-band blockquote{font-size:clamp(2.7rem,10vw,4.2rem)}.quote-sub{font-size:.47rem;line-height:1.8}.quote-decoration{font-size:11rem;top:0}.how{grid-template-columns:1fr;gap:34px}.steps{padding:0}.step{grid-template-columns:30px 1fr 28px;gap:10px;padding:22px 0}.step h3{font-size:1.3rem}.step p{font-size:.68rem}.order-section{padding:82px 7%}.order-section h2{font-size:clamp(4rem,14vw,5.5rem)}.order-copy{font-size:.74rem}.order-actions{flex-direction:column;gap:20px}.order-flower{font-size:11rem;right:-30px;bottom:-75px}.visit{grid-template-columns:1fr;gap:36px;padding-top:82px;padding-bottom:82px}.visit-note{margin-top:20px}.visit-detail p{font-size:1rem}.footer{padding:29px 7% 17px;grid-template-columns:1fr;gap:12px}.footer>p{text-align:left;margin:0 0 10px 55px}.footer-bottom{gap:15px;flex-wrap:wrap;font-size:.43rem}.footer-bottom a{margin-left:0}.footer-bottom .back-top{margin-left:auto}.floating-order{width:51px;height:51px;right:13px;bottom:13px}.floating-order span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none;filter:none}.hero-enter{opacity:1;transform:none}}
.image-fallback{background:radial-gradient(circle at 25% 20%,#f8e1d9,transparent 42%),linear-gradient(135deg,#e8c9c1,#d9b4ad 48%,#f3e6dc);position:relative}.image-fallback:after{content:'BAKED WITH LOVE';position:absolute;inset:0;display:grid;place-items:center;color:#80565a;font:italic 1.1rem var(--serif);letter-spacing:.12em}
body.menu-open{overflow:hidden}
