/* House-wide art direction: one continuous lavender, copper and ivory composition. */
:root{
  --lavender:#e9dbf2;
  --lavender-deep:#cdb1df;
  --ivory:#fffaf6;
  --plum:#4a2c59;
  --ink:#2f1c3d;
  --muted:#79647f;
  --copper:#b9734e;
  --copper-light:#e7b18d;
  --copper-dark:#8f4d36;
  --gold:#b9734e;
  --line:#cda589;
  --metal:linear-gradient(110deg,#a65d3d 0%,#eab28d 30%,#c27b55 52%,#f2c6a2 76%,#a85f3f 100%);
}

html{background:#f8f1f7}
body{background:linear-gradient(180deg,#eee2f4 0%,#fbf7f5 26%,#f7edf6 63%,#fffaf6 100%);color:var(--plum)}
.announcement{background:var(--metal);color:#432436;border-bottom:1px solid #925031}
.announcement span{color:#7e402e}
.header{background:linear-gradient(180deg,#f7eff8 0%,#e9d8f1 100%);border-bottom:1px solid #b8775480;box-shadow:0 6px 24px #6d477c12}
.header:after{border-bottom-color:#bc815e66}
.header nav a:after,.footer nav a:after{background:var(--copper)}
.brand-subtitle{color:#704359}
.favourites-trigger,.cart-trigger{color:var(--plum)}
.favourites-trigger svg,.cart-trigger svg{color:var(--copper-dark)}
.fav-count,.cart-count{background:var(--copper);border-color:#e7b18d;color:#fff7f0}

/* The opening chapter now arrives in lavender instead of switching abruptly to black plum. */
.hero{background:radial-gradient(ellipse at 12% 22%,#f7eff9 0%,#e7d6f1 42%,#d3b9e2 100%);color:var(--plum);border-top:1px solid #d0acbf}
.hero:before{border-color:#b8775480}
.hero:after{border-color:#c1876770}
.hero-intro{color:var(--copper-dark)}
.hero-intro>span{background:linear-gradient(to right,transparent,var(--copper))}
.hero .eyebrow{color:var(--copper-dark)}
.hero h1{color:var(--plum)}
.hero h1 em{background:var(--metal);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero-description{color:#6f5878}
.hero-footnote{color:#785f7f}
.short-line{background:var(--copper)}
.hero-image-wrap{box-shadow:0 18px 44px #5838652b;outline:1px solid #b9744e99}
.arch-outline{border-color:#b9744ecc;box-shadow:inset 0 0 0 4px #f6eafa,inset 0 0 0 5px #b9744e,0 0 0 4px #d09d6520}
.hero .brand-seal{background:var(--ivory);border-color:var(--copper);box-shadow:0 0 0 4px #f1e2f2,0 0 0 5px #b9744e,0 10px 28px #56365a2b}
.image-caption{color:#735c7a}
.hero-bottom{border-top-color:#b9744e5e}
.hero-bottom span{color:#745b7d}
.hero-bottom a{border-color:#b9744e;color:var(--copper-dark)}
.hero-bottom a:hover{background:#f5e6f3}

.collection-ribbon{background:linear-gradient(90deg,#f9f1f8,#e8d4ed 50%,#f9f1f8);border-top:1px solid #b8775480;border-bottom:1px solid #b8775480;color:var(--copper-dark)}
.collection-ribbon i{color:var(--copper)}

/* Atelier is a bridge between the hero and menu, not a separate dark room. */
.atelier-scroll{background:linear-gradient(180deg,#dcc5e9 0%,#eadcf1 46%,#f9f0f6 100%);color:var(--plum);border-bottom:1px solid #b8775466}
.atelier-scroll:before{border-color:#b8775466}
.atelier-scroll:after{color:#b8775436}
.atelier-copy .eyebrow{color:var(--copper-dark)}
.atelier-copy h2{color:var(--plum)}
.atelier-copy h2 em{color:var(--copper-dark)}
.atelier-copy>p:not(.eyebrow){color:#765d7b}
.atelier-copy .text-link{color:var(--copper-dark);border-color:#b8775475}
.atelier-film-frame{background:#4a2c59;border-color:#b87754;box-shadow:0 24px 55px #58365a3b}
.atelier-film-frame:after{background:linear-gradient(135deg,#f0c8ac2b,transparent 38%,#2d173d4c)}
.atelier-video{opacity:.7}
.film-label{color:#f3c8a7}
.atelier-card{background:var(--ivory);border-color:#b87754;box-shadow:0 22px 50px #58365a3b}
.atelier-card-label{background:#4a2c59d9;color:#ffebde}
.atelier-word{color:#fff9f4;text-shadow:0 4px 20px #4a2c5966}
.atelier-word em{color:#efbd98}
.atelier-orbit{border-color:#b8775488}
.orbit-two{border-color:#b8775445}
.atelier-arrow{background:#f9eff8dd;border-color:#b87754;color:var(--copper-dark)}
.atelier-arrow:hover{background:#fffaf6}
.atelier-dots button{border-color:var(--copper-dark)}
.atelier-dots button[aria-selected=true]{background:var(--copper)}
.motion-control{background:#f9eff8dd;border-color:#b87754;color:var(--copper-dark)}
.motion-control:hover{background:#fffaf6}
.motion-caption{color:#8f6f91}

.collection.section{background:linear-gradient(180deg,#fbf7f5cc 0%,#fffaf6 28%,#f8eef7 100%);position:relative}
.collection.section:before{content:'';position:absolute;left:8%;right:8%;top:0;border-top:1px solid #b877543d;pointer-events:none}
.section-heading .eyebrow{color:var(--copper-dark)}
.section-heading h2{color:var(--plum)}
.section-heading>p:last-of-type{color:#765f7c}
.section-heading .flourish{color:var(--copper)}
.collection-filters{border-color:#b877544d}
.filter{color:#7a6180}
.filter.active{color:var(--copper-dark);border-bottom-color:var(--copper)}
.filter:hover{color:var(--plum)}
.collection-tools{color:var(--plum)}
.product-card{background:transparent;padding:0 0 20px;border:0;border-bottom:1px solid #b8775466;box-shadow:none}
.product-visual{border-color:#b877548c;background:#f5e8f5}
.product-category{color:var(--copper-dark)}
.product-name{color:var(--plum)}
.product-description{color:#79637f}
.product-details{color:var(--copper-dark);border-bottom-color:#b8775466}
.recipe-origin{color:#9a6a56}
.menu-note{color:#836984}
.menu-note a{color:var(--copper-dark)}

.philosophy{background:linear-gradient(180deg,#f8eff8 0%,#e4d0ec 50%,#f5e9f4 100%);border-top:1px solid #b8775480;border-bottom:1px solid #b8775480;color:var(--plum)}
.philosophy-frame{border-color:#b8775466;outline-color:#b877542e}
.frame-corner{background:#e8d7ef;border-color:#b87754}
.house-emblem img{border-color:#e0a781;box-shadow:0 0 0 7px #ead9ef,0 0 0 8px #b87754,0 15px 45px #58365a24}
.house-emblem>p{color:#8e543f!important}
.philosophy-copy .eyebrow{color:var(--copper-dark)}
.philosophy h2{color:var(--plum)}
.philosophy h2 em{color:var(--copper-dark)}
.philosophy-copy>p:not(.eyebrow){color:#705878}
.philosophy-values{border-top-color:#b8775466}
.philosophy-values>div>span{color:var(--copper-dark)}
.philosophy-values h3{color:var(--plum)}
.philosophy .philosophy-values p{color:#765d7b}
.philosophy .flourish{color:var(--copper)}
.philosophy .signature{color:var(--copper-dark)}
.philosophy-link{color:var(--copper-dark);border-bottom-color:#b8775470}

.ritual{background:linear-gradient(180deg,#fffaf6 0%,#f8eef7 100%);border-bottom:1px solid #b877543d}
.ritual-heading .eyebrow,.ritual-tag{color:var(--copper-dark)}
.ritual h2,.ritual-item h3{color:var(--plum)}
.ritual-heading>p:last-child,.ritual-item p{color:#79617f}
.ritual-item{border-color:#b8775466}
.ritual-number{color:var(--copper-dark)}

.gifting{background:linear-gradient(180deg,#f8eef7 0%,#fffaf6 100%)}
.gifting-visual{border-color:#b87754;background:#ead7ef;box-shadow:0 15px 40px #58365a17}
.gifting-photo{outline-color:#b8775466}
.gift-note{background:#fffaf6;border-color:#b87754;box-shadow:0 0 0 6px #d8b0c9,0 11px 30px #58365a24}
.gift-note svg{color:var(--copper)}
.gift-note>span{color:var(--plum)}
.gift-note em{color:var(--copper-dark)}
.gifting .eyebrow{color:var(--copper-dark)}
.gifting h2{color:var(--plum)}
.gifting h2 em{color:var(--copper-dark)}
.gifting-copy>p:not(.eyebrow):not(.gifting-note){color:#765d7c}
.gifting-note{color:#9b6a56}

.closing{background:linear-gradient(135deg,#e5d0ed 0%,#c9a9db 54%,#eed9e8 100%);border-top:1px solid #b8775480;border-bottom:1px solid #b8775480;color:var(--plum)}
.closing:before{border-color:#b8775445}
.closing>p{color:#765473}
.closing h2{color:var(--plum)}
.closing h2 em{color:var(--copper-dark)}
.closing .royal-corner{color:var(--copper-dark)}

.footer{background:linear-gradient(180deg,#e5d1ed,#cfb3df);border-top:1px solid #b8775480}
.footer-main>p{color:var(--plum)}
.footer-main>p em{color:var(--copper-dark)}
.footer nav,.footer-note p{color:#6f5579}
.footer-note .eyebrow{color:var(--copper-dark)}
.footer-bottom{border-color:#b8775466;color:#775d7e}
.footer-bottom>span:nth-child(2){color:var(--copper-dark)}

/* Give every chapter the same copper hairline, spacing rhythm and quiet depth. */
.section,.atelier-scroll,.philosophy,.closing{isolation:isolate}
.section-heading,.philosophy-frame,.gifting-copy,.ritual-heading{position:relative;z-index:1}
@media(max-width:800px){
  .header{background:linear-gradient(180deg,#f7eff8,#e6d3ef)}
  .hero{background:linear-gradient(160deg,#f5eafa 0%,#dfc9eb 100%)}
  .collection.section:before{left:5%;right:5%}
  .product-card{padding:8px 8px 17px}
}

/* Final royal direction: purple is the house colour; copper-gold is the metalwork. */
:root{
  --royal-purple:#2d153d;
  --royal-purple-2:#452356;
  --royal-purple-3:#69427a;
  --royal-lavender:#bfa0d0;
  --ivory:#fff8f1;
  --plum:#3a1d4a;
  --ink:#24112f;
  --copper:#bd774d;
  --copper-light:#efbd96;
  --copper-dark:#9a5339;
  --gold:#bd774d;
  --line:#c18a71;
  --metal:linear-gradient(110deg,#9b4f35 0%,#f0c09a 31%,#bd754e 53%,#f3c7a2 78%,#9d5138 100%);
}
body{background:linear-gradient(180deg,#2d153d 0%,#57306b 13%,#b994ca 29%,#f4e6f1 48%,#d8b8e2 74%,#3d1c50 100%);color:#f8edf4}
.announcement{background:var(--metal);color:#3b1c2c;border-bottom-color:#8f472f}
.announcement span{color:#6f3527}
.header{background:linear-gradient(180deg,#3d1e50 0%,#2d153d 100%);border-bottom-color:#c38462;box-shadow:0 7px 25px #180a241f}
.header:after{border-bottom-color:#d39a7866}
.header nav a,.favourites-trigger,.cart-trigger{color:#f7edf3}
.brand-subtitle{color:#efc2a1}
.favourites-trigger svg,.cart-trigger svg{color:#e2a77e}
.fav-count,.cart-count{background:var(--copper);border-color:#f1c19e}

.hero{background:radial-gradient(ellipse at 17% 24%,#674176 0%,#462052 43%,#26102f 100%);color:#fff8f1;border-top-color:#c48968}
.hero:before{border-color:#d19a786b}.hero:after{border-color:#d19a784d}
.hero-intro,.hero .eyebrow{color:#eeb993}.hero-intro>span{background:linear-gradient(to right,transparent,#d18c66)}
.hero h1{color:#fff8f1}.hero h1 em{background:var(--metal);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero-description{color:#dac4dd}.hero-footnote{color:#c8a7cf}.short-line{background:#d7946d}
.hero-image-wrap{box-shadow:0 18px 44px #10051a70;outline-color:#d89f7b99}.arch-outline{border-color:#d89f7bcc;box-shadow:inset 0 0 0 4px #4d285e,inset 0 0 0 5px #be784f,0 0 0 4px #e8b28b25}
.hero .brand-seal{background:#e6d0ea;border-color:#d28d67;box-shadow:0 0 0 4px #3b1d4d,0 0 0 5px #d1936f,0 10px 28px #160a2180}
.image-caption{color:#d3adcf}.hero-bottom{border-top-color:#c68a6875}.hero-bottom span{color:#d1aecf}.hero-bottom a{border-color:#d49570;color:#efbd98}.hero-bottom a:hover{background:#583267}

.collection-ribbon{background:linear-gradient(90deg,#2d153d 0%,#bd774d 50%,#2d153d 100%);border-top-color:#e0a680;border-bottom-color:#8e4831;color:#fff6ed}.collection-ribbon i{color:#f5ceb0}

.atelier-scroll{background:linear-gradient(180deg,#432051 0%,#694078 50%,#9e72af 100%);color:#fff8f1;border-bottom-color:#d09470}
.atelier-scroll:before{border-color:#e0a47f66}.atelier-scroll:after{color:#e7ad882e}
.atelier-copy .eyebrow{color:#efbb95}.atelier-copy h2{color:#fff8f1}.atelier-copy h2 em{color:#efbd98}.atelier-copy>p:not(.eyebrow){color:#e1cbe1}.atelier-copy .text-link{color:#f1c29e;border-color:#e0a47f8c}
.atelier-film-frame{background:#251030;border-color:#d29571;box-shadow:0 24px 55px #1a0a2570}.atelier-film-frame:after{background:linear-gradient(135deg,#f5c6a233,transparent 38%,#18082170)}.atelier-video{opacity:.76}.film-label{color:#f6c9a9}
.atelier-card{background:#fff8f1;border-color:#d19572;box-shadow:0 22px 50px #1c0b2866}.atelier-card-label{background:#2d153de6;color:#ffe8d9}.atelier-word{color:#fff8f1;text-shadow:0 4px 20px #1c0b287d}.atelier-word em{color:#efbd98}.atelier-orbit{border-color:#e0a47f88}.orbit-two{border-color:#e0a47f45}
.atelier-arrow{background:#2d153dcc;border-color:#d29470;color:#f2c29f}.atelier-arrow:hover{background:#60356f}.atelier-dots button{border-color:#f0c09c}.atelier-dots button[aria-selected=true]{background:#f0bd97}.motion-control{background:#2d153dcc;border-color:#d29470;color:#f0c09c}.motion-control:hover{background:#63356f}.motion-caption{color:#e1bddb}

.collection.section{background:linear-gradient(180deg,#bc98ca 0%,#ead9ed 17%,#f4e7f0 100%);color:var(--plum)}.collection.section:before{border-top-color:#9b593e8a}
.section-heading .eyebrow{color:var(--copper-dark)}.section-heading h2{color:var(--plum)}.section-heading>p:last-of-type{color:#674771}.section-heading .flourish{color:var(--copper)}
.collection-filters{border-color:#a7624d80}.filter{color:#64466e}.filter.active{color:#8b492f;border-bottom-color:#b96f4b}.filter:hover{color:#3b1d4c}.collection-tools{color:var(--plum)}
.product-card{color:var(--plum);border-bottom-color:#a8624d8f}.product-visual{border-color:#b46f4f;background:#efdeeb;box-shadow:0 8px 22px #5a327318}.product-category{color:#985138}.product-name{color:var(--plum)}.product-description{color:#6b4e72}.product-details{color:#934c32;border-bottom-color:#ad6a4d88}.recipe-origin{color:#9d644e}.menu-note{color:#654770}.menu-note a{color:#8d4a32}

.philosophy{background:linear-gradient(180deg,#2d153d 0%,#4a2659 52%,#6e477c 100%);border-top-color:#d09470;border-bottom-color:#d09470;color:#fff8f1}.philosophy-frame{border-color:#d0957180;outline-color:#e0a47f35}.frame-corner{background:#482455;border-color:#d09571}.house-emblem img{border-color:#e6b08d;box-shadow:0 0 0 7px #422051,0 0 0 8px #ca825d,0 15px 45px #160a2180}.house-emblem>p{color:#efbd98!important}.philosophy-copy .eyebrow{color:#efbb95}.philosophy h2{color:#fff8f1}.philosophy h2 em{color:#efbd98}.philosophy-copy>p:not(.eyebrow){color:#dfc6df}.philosophy-values{border-top-color:#d095716b}.philosophy-values>div>span{color:#efbd98}.philosophy-values h3{color:#fff8f1}.philosophy .philosophy-values p{color:#ddc5dd}.philosophy .flourish{color:#e0a47f}.philosophy .signature{color:#efbd98}.philosophy-link{color:#efbd98;border-bottom-color:#d095718c}

.ritual{background:linear-gradient(180deg,#f2e5f0 0%,#c8a8d7 100%);border-bottom-color:#a5624c8c}.ritual-heading .eyebrow,.ritual-tag{color:#914b34}.ritual h2,.ritual-item h3{color:var(--plum)}.ritual-heading>p:last-child,.ritual-item p{color:#654770}.ritual-item{border-color:#a9654c8c}.ritual-number{color:#985037}
.gifting{background:linear-gradient(180deg,#c6a6d6 0%,#f5e9f2 100%)}.gifting-visual{border-color:#c17b58;background:#e2c9e5;box-shadow:0 15px 40px #3e1c501f}.gifting-photo{outline-color:#b9745380}.gift-note{background:#fff8f1;border-color:#be7755;box-shadow:0 0 0 6px #b78ac6,0 11px 30px #3e1c5035}.gift-note svg{color:#bd774d}.gift-note>span{color:var(--plum)}.gift-note em{color:#985037}.gifting .eyebrow{color:#914b34}.gifting h2{color:var(--plum)}.gifting h2 em{color:#985037}.gifting-copy>p:not(.eyebrow):not(.gifting-note){color:#674a71}.gifting-note{color:#96664f}
.closing{background:linear-gradient(135deg,#2d153d 0%,#59306b 57%,#3b1c4d 100%);border-top-color:#d09470;border-bottom-color:#d09470;color:#fff8f1}.closing:before{border-color:#d094704d}.closing>p{color:#e0b7d2}.closing h2{color:#fff8f1}.closing h2 em{color:#efbd98}.closing .royal-corner{color:#e0a47f}
.footer{background:linear-gradient(180deg,#3e1e50,#291334);border-top-color:#d09470}.footer-main>p{color:#f8eaf2}.footer-main>p em{color:#efbd98}.footer nav,.footer-note p{color:#d5b8d8}.footer-note .eyebrow{color:#efbb95}.footer-bottom{border-color:#d0947066;color:#c9a7cf}.footer-bottom>span:nth-child(2){color:#efbd98}

@media(max-width:800px){.header{background:linear-gradient(180deg,#402052,#2d153d)}.hero{background:linear-gradient(160deg,#5a316a 0%,#2d153d 100%)}.collection.section{background:linear-gradient(180deg,#c7a7d7 0%,#f2e4ef 100%)}}

/* Header, wordmark and hero now share one continuous royal field. */
.header{background:linear-gradient(180deg,#3d1e50 0%,#32183f 72%,#3a1d4b 100%);border-bottom:0;margin-bottom:0}
.header:after{left:5%;right:5%;bottom:0;border-bottom:1px solid #d0947080;background:linear-gradient(90deg,transparent,#d094704d,transparent)}
.header .wordmark-art{position:relative;z-index:1;padding:0 20px 7px;border-radius:50%;background:radial-gradient(ellipse at center,#a67ac035 0%,transparent 72%);filter:drop-shadow(0 5px 12px #16091f66)}
.header .brand-lettering{filter:drop-shadow(0 2px 7px #14081b66)}
.brand-lettering{background-image:url('/assets/heartful-baker-emblem.webp')}
.house-emblem .emblem-halo{padding:10px;background:radial-gradient(circle,#b889cb44 0%,transparent 68%)}
.house-emblem img{border:0;box-shadow:none;object-fit:contain}
.footer .brand-lettering{background-image:url('/assets/heartful-baker-emblem.webp')}
.hero{border-top:0;margin-top:0;background:linear-gradient(180deg,#3a1d4b 0%,#462252 34%,#2a1236 100%)}
.hero-inner{perspective:1800px}.hero-image-wrap{transform:rotateY(-2deg) rotateX(1deg);transform-style:preserve-3d}

/* A two-page interactive book: copy always has its own paper page, imagery its own theatre. */
.atelier-book-chapter{display:block;min-height:0;padding:82px max(6%,calc((100vw - 1260px)/2)) 76px;background:linear-gradient(180deg,#2e163e 0%,#4c285c 55%,#6c457a 100%);color:#fff8f1;overflow:hidden}
.atelier-book-chapter:before{inset:18px;border-color:#d0947054}
.atelier-book-intro{max-width:1200px;margin:0 auto 20px;display:flex;align-items:center;gap:12px;color:#efbd98;font-size:9px;letter-spacing:2.3px}.book-intro-rule{width:90px;height:1px;background:#d094707d}.book-intro-hint{margin-left:auto;font-size:7px;letter-spacing:1.7px;color:#d8b5d4}
.atelier-book{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);align-items:stretch;perspective:2200px;transform-style:preserve-3d;filter:drop-shadow(0 26px 38px #17091f55)}
.book-page{position:relative;min-height:585px;overflow:hidden;transform-style:preserve-3d}.book-copy-page{padding:68px 68px 55px;background:linear-gradient(135deg,#faf0f4 0%,#efe0f0 100%);border:1px solid #d09470;border-right:0;border-radius:6px 0 0 6px;color:#3a1d4a;box-shadow:inset -18px 0 28px #41204c12}.book-copy-page:after{content:'';position:absolute;inset:18px;border:1px solid #c48d7370;pointer-events:none}.book-page-mark{position:relative;z-index:1;display:block;margin-bottom:54px;color:#965137;font-size:7px;letter-spacing:1.8px}.book-copy-page .eyebrow{position:relative;z-index:1;color:#965137;font-size:9px;letter-spacing:2.1px;margin-bottom:20px}.book-copy-page h2{position:relative;z-index:1;font-size:clamp(46px,4.7vw,68px);line-height:1.02;letter-spacing:-2px;margin-bottom:28px;color:#3a1d4a}.book-copy-page h2 em{color:#a75b3f}.book-lead{position:relative;z-index:1;max-width:420px;font:italic 20px/1.55 var(--serif);color:#694673}.book-rule{position:relative;z-index:1;width:65px;height:1px;background:#b9744f;margin:31px 0 25px}.book-note{position:relative;z-index:1;max-width:340px}.book-note span{display:block;color:#985137;font-size:7px;letter-spacing:1.8px;margin-bottom:8px}.book-note p{color:#795a7e;font-size:11px;line-height:1.85}.book-link{position:relative;z-index:1;display:inline-flex;align-items:center;gap:16px;margin-top:30px;padding-bottom:6px;border-bottom:1px solid #b9744f;color:#955036;font-size:10px;letter-spacing:.7px}.book-link svg{width:18px;height:18px}
.book-visual-page{padding:24px;background:#291334;border:1px solid #d09470;border-radius:0 6px 6px 0;box-shadow:inset 18px 0 28px #16091d80;transform-origin:left center;transition:transform .7s cubic-bezier(.2,.8,.2,1),box-shadow .7s}.book-visual-page:before{content:'';position:absolute;left:0;top:18px;bottom:18px;width:1px;background:#f1c49d88;box-shadow:3px 0 16px #00000055}.book-visual-page.book-page-turn{animation:bookPageTurn .72s cubic-bezier(.2,.8,.2,1)}@keyframes bookPageTurn{0%{transform:rotateY(0) translateZ(0)}42%{transform:rotateY(-7deg) translateZ(18px)}100%{transform:rotateY(0) translateZ(0)}}
.book-page-number{position:absolute;right:27px;top:20px;color:#efbd98;font:italic 13px var(--serif);z-index:4}.book-media{position:relative;height:415px;overflow:hidden;border:1px solid #d09470;background:#1f0c2b;isolation:isolate}.book-media .atelier-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28;filter:saturate(.8) contrast(1.15);z-index:-2}.book-media-vignette{position:absolute;inset:0;background:linear-gradient(135deg,#1b0b295c,transparent 38%,#100518a6);z-index:1;pointer-events:none}.book-photo-window{position:absolute;inset:28px 29px 30px 32px;overflow:hidden;border:1px solid #e0a27c;box-shadow:0 20px 42px #0b041280;transform:translateZ(45px) rotate(1.2deg);z-index:2}.book-photo-window img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .25s,transform .8s cubic-bezier(.2,.8,.2,1)}.book-page-turn .book-photo-window img{transform:scale(1.055)}.book-photo-sheen{position:absolute;inset:0;background:linear-gradient(115deg,#ffffff35,transparent 28%,transparent 70%,#31163e60);mix-blend-mode:screen;pointer-events:none}.book-media-label{position:absolute;left:14px;bottom:13px;color:#f2c3a1;background:#2d153dcc;padding:6px 9px;font-size:7px;letter-spacing:1.3px;z-index:3}.book-caption-row{display:flex;align-items:flex-end;justify-content:space-between;padding:20px 7px 0;color:#f7e6ed}.book-caption-kicker{display:block;color:#d9a07c;font-size:7px;letter-spacing:1.6px;margin-bottom:7px}.book-caption-row strong{display:block;font:28px var(--serif);font-weight:400;letter-spacing:-.5px}.book-caption-row>span{color:#dcb5d2;font:italic 16px var(--serif)}.book-visual-page .atelier-controls{position:relative;left:auto;bottom:auto;transform:none;justify-content:flex-end;margin-top:18px;gap:13px}.book-visual-page .atelier-arrow{background:#3b1d4dcc}.atelier-book-footer{max-width:1200px;margin:18px auto 0;display:flex;align-items:center;justify-content:space-between;color:#d7b2d5;font-size:7px;letter-spacing:1.8px}.atelier-book-footer .motion-control{position:relative;left:auto;right:auto;bottom:auto;transform:none;font-size:8px}

/* Philosophy becomes the long-form heart of the site. */
.philosophy{padding:56px 4% 68px}.philosophy-frame{grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);gap:88px;padding:76px 8% 82px;align-items:start}.house-emblem{position:relative;max-width:360px;margin:0 auto}.philosophy-seal-note{margin:25px auto 0;padding:16px 18px;border:1px solid #d0947070;background:#32183fb8;max-width:245px;text-align:left}.philosophy-seal-note span{display:block;color:#efbd98;font-size:7px;letter-spacing:1.6px;margin-bottom:7px}.philosophy-seal-note p{color:#d9bdd7;font:italic 17px/1.3 var(--serif)}.philosophy-copy{max-width:730px}.philosophy-story{max-width:650px}.philosophy-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:30px}.philosophy-values>div{min-width:0}.philosophy-manifesto{margin-top:31px;padding:20px 22px;border:1px solid #d094706b;background:#32183f9c;display:flex;align-items:center;gap:22px}.philosophy-manifesto span{flex:0 0 auto;color:#efbd98;font-size:7px;letter-spacing:1.7px}.philosophy-manifesto p{color:#ead4e5;font:italic 18px/1.35 var(--serif)}

/* A little depth across the page, with the copy always above its surface. */
.hero-inner,.collection.section,.philosophy-frame,.ritual,.gifting,.closing{transform-style:preserve-3d}.product-visual,.hero-image-wrap,.gifting-visual{transform-style:preserve-3d}.product-card,.book-copy-page,.book-visual-page{backface-visibility:hidden}.book-visual-page[data-tilt]{transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s}.book-visual-page[data-tilt]:hover{box-shadow:inset 18px 0 28px #16091d80,0 26px 54px #17091f70}

@media(max-width:900px){.atelier-book{grid-template-columns:1fr}.book-copy-page{border-right:1px solid #d09470;border-bottom:0;border-radius:6px 6px 0 0;min-height:500px}.book-visual-page{border-radius:0 0 6px 6px;min-height:540px}.atelier-book-intro{margin-bottom:16px}.philosophy-frame{grid-template-columns:minmax(200px,.6fr) minmax(0,1.4fr);gap:42px;padding-left:6%;padding-right:6%}.philosophy-values{grid-template-columns:1fr}.philosophy-manifesto{display:block}.philosophy-manifesto p{margin-top:10px}}
@media(max-width:560px){.atelier-book-chapter{padding:64px 7% 57px}.atelier-book-intro{font-size:7px;letter-spacing:1.5px;gap:8px}.book-intro-rule{width:30px}.book-intro-hint{font-size:5px}.book-page{min-height:0}.book-copy-page{padding:47px 34px 44px}.book-page-mark{margin-bottom:38px;font-size:6px}.book-copy-page h2{font-size:45px;letter-spacing:-1.5px}.book-lead{font-size:17px}.book-visual-page{padding:16px;min-height:450px}.book-visual-page[data-tilt]{transform:none}.book-media{height:315px}.book-photo-window{inset:20px 20px 23px 22px}.book-caption-row{padding-top:16px}.book-caption-row strong{font-size:24px}.book-visual-page .atelier-controls{margin-top:14px}.atelier-book-footer{display:block;line-height:1.8}.atelier-book-footer .motion-control{margin-top:12px}.philosophy{padding:27px 5% 38px}.philosophy-frame{display:flex;flex-direction:column;gap:40px;padding:45px 8% 50px}.house-emblem{max-width:270px}.philosophy-seal-note{margin-top:18px}.philosophy-copy{width:100%}.philosophy-copy h2{font-size:38px}.philosophy-values{gap:23px}.philosophy-manifesto{padding:17px}.philosophy-manifesto p{font-size:16px}}

/* The visual page is a fuller editorial spread, not an empty image well. */
.book-media{height:470px}
.book-photo-window{inset:22px 25px 24px 28px}
.book-detail-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:19px 7px 0;padding-top:14px;border-top:1px solid #d0947052;color:#d8b3d3;font-size:6px;letter-spacing:1px}
.book-detail-strip span{display:flex;align-items:center;gap:6px;min-width:0}
.book-detail-strip small{color:#efbd98;font:italic 14px var(--serif)}
@media(max-width:560px){.book-media{height:315px}.book-photo-window{inset:20px 20px 23px 22px}.book-detail-strip{gap:5px;margin-top:14px;padding-top:11px;font-size:5px}.book-detail-strip small{font-size:12px}}

/* Original, unaltered logo lettering on matching lavender surfaces. */
.header,.footer{
  background:linear-gradient(180deg,#e5d9f6 0%,#d6c5f5 42%,#d6c5f5 64%,#c8b3e3 100%);
  color:#40204f;
  border:0;
  box-shadow:none;
}
.header:after{display:none}
.header .wordmark-art,.footer .footer-wordmark{
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  filter:none;
}
.header .brand-lettering,.footer .brand-lettering{
  background-image:url('/assets/heartful-baker-emblem.webp');
  background-size:139.3333% 364.5349%;
  background-position:50.8475% 66.4835%;
  border:0;
  box-shadow:none;
  filter:none;
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent),linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent);
  mask-composite:intersect;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent),linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent);
  -webkit-mask-composite:source-in;
}
.header .brand-subtitle,.footer .brand-subtitle{color:#6a3d43;text-shadow:none}
.header nav a,.header .favourites-trigger,.header .cart-trigger{color:#40204f}
.header .favourites-trigger svg,.header .cart-trigger svg{color:#914b34}
.header .menu-toggle span{background:#40204f}
.footer-main>p{color:#40204f}
.footer-main>p em,.footer-note .eyebrow,.footer-bottom>span:nth-child(2){color:#85452f}
.footer nav,.footer-note p,.footer-bottom{color:#593760}
.footer-bottom{border-top-color:#98614366}

/* A sculpted lavender patisserie wall with a separate navigation ledge. */
.header.shopfront-header{display:block;padding:0;min-height:0;position:relative;z-index:5;background:#d6c5ef}
.shopfront-sign{height:clamp(230px,28vw,390px);position:relative;display:grid;place-items:center;overflow:hidden;isolation:isolate;background:#d6c5ef;box-shadow:inset 0 -8px 12px #55356220}
.shopfront-mural{position:absolute;inset:0;z-index:-1;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;pointer-events:none}
.header .shopfront-sign .wordmark-art{position:relative;justify-self:center;padding:0 0 5px;max-width:100%;background:none;border:0;box-shadow:none;filter:none}
.header .shopfront-sign .brand-lettering{width:clamp(245px,26vw,365px)}
.header .shopfront-sign .brand-subtitle{font-size:8px;letter-spacing:3px;margin:10px 0 0;color:#683d4e}
.shopfront-navigation{min-height:63px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px max(5.5%,calc((100vw - 1330px)/2));position:relative;background:linear-gradient(180deg,#f2e8fa 0%,#e2d1ee 42%,#d2bce2 100%);border-top:1px solid #fff5f6;box-shadow:inset 0 3px 6px #50315f12,0 7px 16px #23102b26}
.shopfront-navigation:after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#945735,#f3c9a6,#b77850,#f3c9a6,#945735);pointer-events:none}
.header .shopfront-navigation nav{gap:24px;flex-wrap:wrap}
.shopfront-welcome{color:#855239;font-size:8px;letter-spacing:2.2px;white-space:nowrap}
.shopfront-header .mobile-nav{top:100%;margin:0;background:linear-gradient(180deg,#e2d1ee,#d1b9e1);box-shadow:0 14px 25px #32143e26}
.header .shopfront-navigation .menu-toggle:hover{background:#c9b2dd66}
@media(max-width:1150px){.shopfront-welcome{display:none}.header .shopfront-navigation nav{gap:19px}}
@media(max-width:800px){
  .shopfront-sign{height:240px}
  .header .shopfront-sign .brand-lettering{width:265px}
  .shopfront-navigation{min-height:58px;padding:10px 6%;gap:12px}
  .header .shopfront-navigation .nav-left{display:none}
  .header .shopfront-navigation .nav-right>a{display:none}
  .shopfront-navigation .shopfront-welcome{display:block;margin-right:auto;font-size:7px;letter-spacing:1.6px}
  .header .shopfront-navigation .nav-right{gap:20px;flex-wrap:nowrap}
}
@media(max-width:560px){
  .shopfront-sign{height:210px}
  .header .shopfront-sign .brand-lettering{width:230px}
  .header .shopfront-sign .brand-subtitle{font-size:6px;letter-spacing:1.8px;margin-top:5px}
  .shopfront-navigation{padding:9px 5%;min-height:56px}
  .shopfront-navigation .shopfront-welcome{font-size:6px;letter-spacing:1.2px}
  .header .shopfront-navigation .nav-right{gap:15px}
}
@media(max-width:365px){.header .shopfront-sign .brand-lettering{width:205px}.shopfront-navigation .shopfront-welcome{font-size:5px;letter-spacing:1px}}
