/* House of Heartful: lavender, plum velvet and warm copper-gold. */
:root{--lavender:#e5d7f0;--lavender-deep:#c9acdc;--ivory:#f9f3fa;--plum:#40204f;--ink:#281133;--muted:#786383;--gold:#b76b47;--copper:#b76b47;--copper-light:#efbd94;--copper-dark:#7c3e29;--line:#c8a4bc;--velvet:#2e163d;--metal:linear-gradient(110deg,#a35838 0%,#edb68e 28%,#c18056 51%,#f5c9a3 76%,#ac5f3c 100%)}
body{background:#f4edf8;color:var(--plum)}
::selection{background:#bb825f;color:#fff8f0}
.announcement{height:32px;background:var(--metal);color:#3a1a2b;font-size:9px;letter-spacing:3px;border-bottom:1px solid #824728}
.announcement span{color:#6d3625;font-size:13px}
.header{max-width:none;min-height:151px;padding:10px max(5.5%,calc((100vw - 1330px)/2));background:#d9c8ed;border-bottom:3px double #b57853;position:relative}
.header:after{content:'';position:absolute;left:18px;right:18px;bottom:6px;border-bottom:1px solid #bd865e80;pointer-events:none}
.header nav{gap:29px;font-size:11px;letter-spacing:.6px}
.header nav a:after,.footer nav a:after{background:var(--copper);height:1px}
.wordmark-art{gap:0}
.brand-lettering{display:block;width:275px;height:105px;background-image:url('/assets/heartful-baker-emblem.webp');background-size:139.34% 364.96%;background-position:51.6% 66.6%;background-repeat:no-repeat;mask-image:linear-gradient(to right,transparent,black 7%,black 93%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 7%,black 93%,transparent)}
.wordmark-art .brand-subtitle{font-size:7px;letter-spacing:2.5px;color:#6a3d43;margin:4px 0 8px}
.favourites-trigger,.cart-trigger{display:flex;align-items:center;gap:8px;background:none;padding:8px 0;font-size:11px;letter-spacing:.5px}
.favourites-trigger svg,.cart-trigger svg{color:#9e5435;width:19px;height:19px}
.fav-count,.cart-count{min-width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#b77851;color:#fff3e9;border:1px solid #d99c73;font-size:9px}
.hero{background:radial-gradient(ellipse at 15% 30%,#4b285d 0%,#32183f 45%,#251231 100%);padding:61px 6% 0;border:0;color:#f6ebfa;position:relative}
.hero:before{inset:19px 20px 20px;width:auto;border:1px solid #ba825754;border-radius:0}
.hero:after{inset:25px 26px 26px;width:auto;border:1px solid #ba825729;border-radius:0}
.royal-corner{position:absolute;width:116px;height:116px;color:var(--copper-light);stroke-width:.8;z-index:1;pointer-events:none}
.corner-tl{top:20px;left:21px}
.corner-br{bottom:20px;right:21px;transform:rotate(180deg)}
.hero-inner{grid-template-columns:.96fr 1.04fr;max-width:1290px;gap:66px;position:relative;z-index:2}
.hero-copy{padding:4px 0 18px 20px}
.hero-intro{display:flex;gap:13px;align-items:center;color:#d89d75;margin-bottom:21px}
.hero-intro>span{width:38px;height:1px;background:linear-gradient(to right,transparent,#c38a62)}
.hero-intro>span:last-child{transform:rotate(180deg)}
.hero-intro svg{width:28px;height:36px;stroke-width:1}
.hero .eyebrow{color:#e3b18e;font-size:8px;letter-spacing:2.9px;margin-bottom:24px}
.hero h1{font-size:clamp(64px,6.2vw,88px);line-height:.96;letter-spacing:-2.7px;margin-bottom:28px}
.hero h1 em{color:#e7b18c;background:var(--metal);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero-description{max-width:370px;font-size:13px;color:#d0bfd9;line-height:1.9;margin-bottom:28px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px}
.hero-story-link{color:#e5c0ab;font:italic 17px var(--serif);border-bottom:1px solid #b67a55;padding-bottom:4px}
.button{min-height:51px;letter-spacing:.8px;position:relative;font-size:10px}
.button-primary{background:linear-gradient(110deg,#c98b64 0%,#f2c6a3 32%,#bd784f 62%,#e8ac82 100%);border:1px solid #e6b38e;color:#30192a;box-shadow:inset 0 0 0 3px #ffffff12,0 5px 16px #30152c15;font-weight:400}
.button-primary:after{content:'';inset:3px;position:absolute;border:1px solid #6d372f38;pointer-events:none}
.button-primary:hover{background:linear-gradient(110deg,#cf9066,#f0c4a1 35%,#bc7953 80%,#e4ab80);transform:translateY(-2px);box-shadow:0 5px 25px #c7876330}
.button-secondary{border-color:#b77a56;color:var(--plum)}
.button-secondary:hover{background:#e7c5b3}
.hero-footnote{color:#ac90bc;margin-top:26px;font-size:7px;letter-spacing:1.7px}
.short-line{width:31px;background:var(--copper)}
.hero-visual{padding:12px 12px 39px;align-self:center}
.hero-image-wrap{height:568px;border-radius:48% 48% 0 0 / 39% 39% 0 0;box-shadow:0 14px 45px #11061660;outline:1px solid #e5b08755}
.hero-image{object-position:54% 50%}
.arch-outline{border:2px solid #dba27c;border-radius:48% 48% 0 0 / 39% 39% 0 0;bottom:27px;box-shadow:inset 0 0 0 4px #472b48,inset 0 0 0 5px #b57751,0 0 0 4px #d09d6520}
.hero .brand-seal{width:174px;height:174px;left:-57px;bottom:42px;outline:0;border-radius:50%;padding:0;border:3px solid #ca8c62;background:#d9c8ed;box-shadow:0 0 0 4px #3c214a,0 0 0 5px #dcaa80,0 10px 28px #160a2180;transform:none;overflow:hidden}
.brand-seal img{width:100%;height:100%;object-fit:contain;border-radius:50%}
.image-caption{color:#c3a1bd;letter-spacing:1.9px;font-size:7px;bottom:4px}
.hero-bottom{max-width:1290px;border-top:1px solid #b77f505c;margin-top:30px;padding:23px 20px 28px;z-index:2}
.hero-bottom span{color:#c49caf;font:italic 15px var(--serif)}
.hero-bottom span:last-child{font:8px var(--sans);letter-spacing:1.9px;text-transform:uppercase}
.hero-bottom a{border-color:#b9825d;color:#e7b48d;top:12px}
.hero-bottom a:hover{background:#59304f}
.collection-ribbon{display:flex;justify-content:center;align-items:center;gap:47px;background:#dac4bca6;padding:19px 20px;border-top:1px solid #ac6b48;border-bottom:3px double #bd865f;color:#73422e;font-size:9px;letter-spacing:2.8px}
.collection-ribbon i{font-size:19px;color:#aa633f;font-style:normal;line-height:1}
.section{max-width:1400px;padding:92px 6%}
.section-heading .eyebrow{color:#9a5437;letter-spacing:2.5px;font-size:9px;margin-bottom:17px}
.chapter-number{display:inline-block;color:#aa603f;font-family:var(--serif);font-size:17px;letter-spacing:0;margin-right:10px;vertical-align:baseline}
.section-heading h2{font-size:clamp(42px,4.3vw,61px);letter-spacing:-1.9px;margin-bottom:18px}
h2 em{color:#99543c}
.section-heading>p:last-of-type{font-size:12px;color:#7e6486}
.section-heading .flourish{display:block;margin:22px auto 0;width:155px;height:28px;color:#b77650}
.collection-filters{margin:24px auto 36px;border-color:#c999793d;gap:26px}
.filter{font-size:10px;letter-spacing:.7px;color:#795e86}
.filter.active{border-bottom-color:#b67450;color:#954c32}
.product-grid{gap:24px}
.product-card{position:relative;padding-bottom:17px;border-bottom:1px solid #b9765366}
.product-visual{padding:7px;border:1px solid #b87c55;background:#efe2ed;box-shadow:0 4px 20px #55284209}
.product-visual:before{position:absolute;inset:3px;content:'';border:1px solid #c893725c;pointer-events:none;z-index:1}
.product-photo{outline:1px solid #b477505c}
.product-category{color:#a15f3e;font-size:8px;letter-spacing:1.9px;margin-top:23px}
.product-name{font-size:28px;letter-spacing:-.6px;line-height:1.15}
.product-description{font-size:11px;color:#866c8c;min-height:39px;line-height:1.8}
.product-details{color:#995035;border-bottom:1px solid #c5947170;font-size:9px;letter-spacing:.8px;justify-content:space-between;width:100%;padding:6px 0}
.product-actions{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:13px}
.product-actions .product-details{margin:0;flex:1}
.add-cart{display:flex;flex-direction:column;align-items:flex-end;gap:2px;background:#f1e0e9;border:1px solid #bd805a;color:#8b4d34;padding:7px 9px;font-size:8px;letter-spacing:.4px;white-space:nowrap;line-height:1.2}
.add-cart span{font-size:8px;color:#aa765f}
.add-cart:hover{background:#e8c9cf;border-color:#9d5d42}
.product-details svg{color:#b17149}
.save-product{top:17px;right:17px;border:1px solid #c99670;background:#fbf0e8ee;color:#905335;z-index:2}
.save-product[aria-pressed=true] svg{fill:#b47750;stroke:#8b482f}
.menu-note{font-size:9px;color:#907692;margin-top:29px}
.philosophy{padding:34px;background:#291434;background-image:radial-gradient(ellipse at 18% 45%,#563264 0%,transparent 53%),radial-gradient(ellipse at 100% 100%,#46254c 0%,transparent 50%);border-top:3px double #b07854;border-bottom:3px double #b07854}
.philosophy-frame{max-width:1332px;display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:90px;text-align:left;border-color:#ad785366;padding:68px 8%;outline:1px solid #bb845429;outline-offset:-7px}
.frame-corner{background:#3b204b;border-color:#ba835b;width:16px;height:16px}
.house-emblem{max-width:345px;position:relative;text-align:center}
.house-emblem img{width:100%;border:1px solid #e2ad85;box-shadow:0 0 0 7px #382041,0 0 0 8px #b8835f,0 15px 45px #140b2040}
.house-emblem>p{font:7px var(--sans)!important;letter-spacing:2.1px;color:#caa087!important;margin:26px 0 0!important}
.philosophy-copy .eyebrow{color:#d6a180;font-size:8px;margin-bottom:24px;letter-spacing:2.2px}
.philosophy .chapter-number{color:#d49c76}
.philosophy h2{font-size:clamp(39px,3.7vw,55px);letter-spacing:-1.6px;line-height:1.12;color:#f4e9fa;margin-bottom:28px}
.philosophy h2 em{color:#e5b38e}
.philosophy-copy>p:not(.eyebrow){color:#c6b1d0;font-size:12px;line-height:1.95;margin:0 0 16px;max-width:475px}
.philosophy .flourish{margin:23px 0 18px;color:#cc926a;width:150px}
.philosophy .signature{color:#e2b697;font-size:23px}
.ritual{gap:36px;padding-top:90px;padding-bottom:86px}
.ritual-heading .eyebrow{font-size:7px;letter-spacing:1.6px;line-height:1.8}
.ritual h2{font-size:40px;letter-spacing:-1.3px}
.ritual-heading>p:last-child{font-size:11px;color:#896f8d}
.ritual-item{border-color:#bf8e7070;padding-left:27px}
.ritual-number{color:#b16b45;font-size:33px;line-height:1;margin-bottom:28px}
.ritual-item h3{font-size:25px}
.ritual-item p{font-size:11px;color:#846a89}
.ritual-tag{color:#a46140;font-size:7px;letter-spacing:1.5px}
.gifting{gap:90px;padding-top:20px;padding-bottom:104px}
.gifting-visual{padding:10px;border:1px solid #bc855f;border-radius:48% 48% 0 0 / 41% 41% 0 0;background:#e8d5eb}
.gifting-photo{border-radius:48% 48% 0 0 / 41% 41% 0 0;outline:1px solid #bf8b675e}
.gift-note{background:#f5e5f1;border:1px solid #b67c55;outline:5px solid #efdae9;box-shadow:0 0 0 6px #d29b73,0 11px 30px #45244630;right:-30px;bottom:63px;width:178px;height:213px}
.gift-note:before{content:'';position:absolute;inset:9px;border:1px solid #c38d675c;pointer-events:none}
.gift-note svg{color:#b67147;width:27px;height:31px;stroke-width:1;margin-bottom:11px}
.gift-note>span{font-size:31px;color:#563154}
.gift-note em{color:#a96c4b}
.gift-note small{color:#a26545;font-size:6px}
.gift-caption{color:#a56543;font-size:6px;letter-spacing:1.8px;margin:19px 0 10px}
.gifting h2{font-size:clamp(42px,4vw,57px);letter-spacing:-1.9px}
.gifting .eyebrow{color:#a36446;font-size:8px;letter-spacing:2px}
.gifting-copy>p:not(.eyebrow):not(.gifting-note){font-size:12px;max-width:390px;color:#866b8c}
.gifting-note{font-size:15px;color:#9d725f}
.closing{position:relative;background:#2d183b;background-image:radial-gradient(ellipse at 50% 0%,#593266 0%,#2e173c 70%);border-top:4px double #b17854;border-bottom:4px double #b17854;padding:61px 28px 68px;overflow:hidden}
.closing:before{content:'';position:absolute;inset:19px;border:1px solid #ae77523d;pointer-events:none}
.closing-fleur{width:36px;height:44px;color:#cb926e;stroke-width:1;margin-bottom:21px}
.closing>p{font-size:20px;color:#c69cb1;margin-bottom:15px}
.closing h2{color:#f3e8f7;font-size:clamp(42px,4.7vw,65px);line-height:1.12;letter-spacing:-1.5px}
.closing h2 em{color:#e4ad87}
.closing .button{margin-top:29px}
.closing .royal-corner{width:120px;height:120px;color:#bc825b}
.footer{background:#dac9eb;max-width:none;padding:40px max(6%,calc((100vw - 1270px)/2)) 22px}
.footer-main{grid-template-columns:1.2fr .9fr .8fr 1.15fr;gap:42px;align-items:center;padding-bottom:31px}
.footer .wordmark-art{align-items:center}
.footer .brand-lettering{width:235px;height:91px}
.footer .wordmark-art .brand-subtitle{font-size:6px;letter-spacing:2px;margin:4px 0 6px}
.footer-main>p{font-size:25px;line-height:1.3;color:#512e58}
.footer-main>p em{color:#9b573d}
.footer nav{font-size:10px;gap:11px;color:#66416a}
.footer-note .eyebrow{color:#935136;font-size:8px;letter-spacing:2px}
.footer-note p{color:#7c6182;font-size:10px}
.footer-bottom{border-color:#b6805f6e;color:#78577d;font-size:8px;padding-top:20px}
.footer-bottom>span:nth-child(2){color:#a16245}
.footer-bottom button{font-size:8px}
.icon-button:hover{background:#d3b6d5}
dialog{background:#f2e8f7;border:1px solid #c58d66;outline:4px solid #c9956a33;box-shadow:0 20px 100px #1c082c60}
dialog::backdrop{background:#251031a8;backdrop-filter:blur(6px)}
.dialog-heading{border-color:#b77a5554}
dialog .eyebrow{color:#a66445}
dialog h2 em{color:#a46645}
.product-pairing{border-color:#bf916e5c}
.product-pairing span{color:#b17750}
.product-pairing p{color:#795179}
.product-dialog .product-disclaimer{color:#957d99}
.favourites-dialog{background:#eaddf1}
.favourite-row{border-color:#c6926c55}
.empty-favourites>svg{color:#b47955}
textarea{background:#f9f0fb;border-color:#bc947b}
.occasion{border-color:#cda184}
.occasion.active{background:var(--plum);border-color:#b77c56;color:#f1c6a4}
.gift-recommendation-inner{background:#e1cfe9;border:1px solid #c38d673d}
.gift-recommendation-inner h3{color:#71416b}
.toast{background:#3b1e49;border:1px solid #c8936e;color:#f2d2b9}
@media(min-width:1600px){.hero-inner{max-width:1370px;gap:95px}.hero h1{font-size:95px}.hero-image-wrap{height:620px}.hero .brand-seal{width:192px;height:192px}.hero-copy{padding-bottom:21px}.hero-bottom{max-width:1370px}}
@media(max-width:1150px){.header{padding-left:4%;padding-right:4%;gap:15px}.header nav{gap:20px;font-size:10px;letter-spacing:.2px}.brand-lettering{width:252px;height:97px}.hero-inner{gap:47px}.hero-copy{padding-left:5px}.hero h1{font-size:70px}.hero .eyebrow{font-size:7px;letter-spacing:2px}.hero-image-wrap{height:520px}.hero .brand-seal{width:145px;height:145px;left:-33px}.hero-actions{gap:16px}.hero-story-link{font-size:15px}.hero .button{padding:13px 18px;font-size:9px;gap:14px}.hero-description{font-size:12px}.philosophy-frame{padding:58px 6%;gap:60px}.philosophy h2{font-size:43px}.house-emblem{max-width:305px}.product-name{font-size:25px}.ritual{gap:25px}.ritual-item{padding-left:22px}.ritual h2{font-size:35px}.ritual-item h3{font-size:23px}.gifting{gap:70px}.gifting h2{font-size:44px}.footer-main{gap:24px}.footer .brand-lettering{width:208px;height:80px}.footer-main>p{font-size:23px}}
@media(max-width:800px){.header{min-height:137px;padding:7px 5%}.brand-lettering{width:256px;height:97px}.wordmark-art .brand-subtitle{font-size:6px;letter-spacing:2px;margin-bottom:6px}.mobile-nav{top:169px;background:#dac8ed;border-color:#bc8059;padding-top:24px;font-size:24px}.hero{padding:52px 6% 0}.hero-copy{padding-left:0;padding-bottom:12px}.hero-inner{gap:35px;grid-template-columns:1fr 1fr}.hero-intro{margin-bottom:18px}.hero-intro svg{width:24px;height:30px}.hero-intro>span{width:28px}.hero .eyebrow{font-size:6px;letter-spacing:1.5px;margin-bottom:20px}.hero h1{font-size:59px;letter-spacing:-2px;margin-bottom:23px}.hero-description{font-size:11px;line-height:1.8;margin-bottom:23px}.hero-actions{gap:15px}.hero-story-link{font-size:14px}.hero .button{font-size:8px;min-height:45px;padding:11px 13px;gap:11px}.hero-footnote{font-size:6px;letter-spacing:1.1px;margin-top:23px}.hero-image-wrap{height:482px}.hero-visual{padding:9px 9px 34px}.arch-outline{bottom:25px}.hero .brand-seal{width:116px;height:116px;left:-18px;bottom:43px;border-width:2px;box-shadow:0 0 0 3px #3c214a,0 0 0 4px #dcaa80,0 6px 25px #160a2160}.image-caption{font-size:5px;letter-spacing:1.25px}.royal-corner{width:84px;height:84px}.hero-bottom{padding:20px 7px 28px;margin-top:25px}.hero-bottom span{font-size:13px}.hero-bottom span:last-child{font-size:6px;letter-spacing:1.4px}.collection-ribbon{gap:26px;font-size:8px;letter-spacing:2px;padding:16px 20px}.collection-ribbon i{font-size:15px}.section{padding:68px 5%}.section-heading h2{font-size:47px}.product-name{font-size:29px}.product-description{font-size:12px;min-height:0}.product-details{font-size:10px}.philosophy{padding:26px}.philosophy-frame{padding:47px 6%;gap:37px;grid-template-columns:.85fr 1.15fr}.philosophy h2{font-size:36px;letter-spacing:-1.1px;margin-bottom:20px}.philosophy-copy .eyebrow{font-size:6px;letter-spacing:1.2px;margin-bottom:19px}.philosophy-copy>p:not(.eyebrow){font-size:11px;line-height:1.9}.house-emblem>p{font-size:5px!important;letter-spacing:1.2px;margin-top:21px!important}.philosophy .flourish{width:121px;margin:20px 0 13px}.philosophy .signature{font-size:20px}.ritual{gap:28px;grid-template-columns:repeat(3,1fr)}.ritual h2{font-size:40px}.ritual-item{padding-left:0;border-left:0;border-top:1px solid #bf8e7070}.ritual-number{font-size:31px;margin-bottom:21px}.gifting{gap:43px;padding-top:0}.gifting h2{font-size:37px}.gifting .eyebrow{font-size:7px;letter-spacing:1.3px}.gifting-copy>p:not(.eyebrow):not(.gifting-note){font-size:11px}.gift-note{width:134px;height:171px;right:-21px;bottom:53px}.gift-note>span{font-size:25px}.gift-note svg{width:22px;height:26px}.gift-note small{font-size:5px}.gift-caption{font-size:5px;letter-spacing:1.2px}.gifting .button{font-size:9px;padding:12px 14px;gap:13px}.gifting-note{font-size:14px}.closing h2{font-size:47px}.footer-main{grid-template-columns:1fr 1fr;gap:27px 40px}.footer .wordmark-art{align-items:flex-start}.footer .wordmark-art .brand-subtitle{margin-left:24px}.footer-main>p{text-align:right;font-size:28px}.footer-note{text-align:right}.footer .brand-lettering{width:234px;height:90px}}
@media(max-width:560px){.announcement{height:29px;font-size:7px;letter-spacing:1.9px;gap:14px}.announcement span{font-size:9px}.header{min-height:121px;padding:4px 4% 8px;gap:3px}.header:after{left:10px;right:10px;bottom:4px}.brand-lettering{width:216px;height:83px}.wordmark-art .brand-subtitle{font-size:5px;letter-spacing:1.4px;margin:1px 0 4px}.menu-toggle{width:31px;padding:5px}.menu-toggle span{width:20px;background:#76423f}.favourites-trigger svg{width:18px;height:18px}.fav-count{font-size:7px;min-width:15px;height:15px}.mobile-nav{top:150px;padding:24px 8%;background:#dac7ed}.hero{padding:44px 8% 0}.hero:before{inset:12px;border-color:#ba825744}.hero:after{inset:17px;border-color:#ba82571f}.royal-corner{width:69px;height:69px}.corner-tl{top:12px;left:12px}.corner-br{right:12px;bottom:12px}.hero-inner{display:flex;gap:32px;flex-direction:column}.hero-copy{text-align:center;padding:0;max-width:390px}.hero-intro{justify-content:center;margin-bottom:21px}.hero-intro svg{width:27px;height:33px}.hero-intro>span{width:34px}.hero .eyebrow{font-size:6px;letter-spacing:2px;margin-bottom:22px}.hero h1{font-size:clamp(58px,14.8vw,78px);line-height:.98;letter-spacing:-1.9px;margin-bottom:23px}.hero-description{font-size:11px;line-height:1.95;max-width:303px;margin:0 auto 25px}.hero-actions{flex-direction:column;gap:18px;justify-content:center}.hero .button{min-height:47px;padding:13px 22px;font-size:9px;gap:20px}.hero-story-link{font-size:15px;line-height:1.2}.hero-footnote{font-size:6px;margin-top:24px;letter-spacing:1.4px}.hero-visual{max-width:380px;width:100%;padding:9px 9px 34px}.hero-image-wrap{height:353px;border-radius:48% 48% 0 0 / 39% 39% 0 0}.arch-outline{bottom:25px}.hero .brand-seal{width:125px;height:125px;left:-9px;bottom:36px}.image-caption{font-size:5px;letter-spacing:1.2px;right:9px;bottom:4px}.hero-bottom{padding:18px 1px 26px;margin-top:21px}.hero-bottom span{font-size:12px}.hero-bottom a{top:9px}.collection-ribbon{padding:15px 10px;gap:12px;font-size:6px;letter-spacing:1.1px}.collection-ribbon i{font-size:10px}.section{padding:58px 6%}.section-heading .eyebrow{font-size:7px;letter-spacing:1.7px}.chapter-number{font-size:15px;margin-right:7px}.section-heading h2{font-size:40px;line-height:1.1;max-width:340px;margin-bottom:17px;letter-spacing:-1.3px}.section-heading>p:last-of-type{font-size:11px;line-height:1.8;max-width:290px;margin:0 auto}.section-heading .flourish{width:134px;margin-top:17px;height:23px}.collection-filters{gap:17px;margin:20px 0 26px}.filter{font-size:9px;letter-spacing:.3px}.product-grid{gap:28px 15px}.product-card{padding-bottom:12px}.product-visual{padding:5px}.product-visual:before{inset:2px}.product-name{font-size:24px;letter-spacing:-.5px}.product-category{font-size:6px;letter-spacing:1px;margin-top:18px;margin-bottom:8px}.product-description{font-size:10px;line-height:1.8;margin-top:10px;margin-bottom:10px}.product-details{font-size:7px;letter-spacing:.3px;gap:4px}.save-product{top:11px;right:11px;width:27px;height:27px}.save-product svg{width:13px;height:13px}.menu-note{font-size:8px;margin-top:27px}.philosophy{padding:19px}.philosophy-frame{display:flex;flex-direction:column;gap:38px;padding:38px 25px 39px;text-align:center}.house-emblem{max-width:252px;width:100%}.house-emblem>p{font-size:6px!important;letter-spacing:1.6px;margin-top:24px!important}.philosophy-copy .eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:21px}.philosophy h2{font-size:36px;letter-spacing:-1.2px;line-height:1.14;margin-bottom:22px}.philosophy-copy>p:not(.eyebrow){font-size:11px;line-height:1.95;margin-bottom:16px}.philosophy .flourish{margin:22px auto 14px;width:136px}.philosophy .signature{font-size:22px}.ritual{grid-template-columns:1fr;gap:27px}.ritual-heading .eyebrow{font-size:7px;letter-spacing:1.4px}.ritual h2{font-size:40px}.ritual-heading>p:last-child{font-size:11px}.ritual-item{grid-template-columns:43px 1fr;gap:0 16px;padding-top:25px}.ritual-number{font-size:31px;grid-row:1/4;margin-bottom:0}.ritual-item h3{font-size:25px}.ritual-item p{font-size:11px}.ritual-tag{font-size:7px;letter-spacing:1.3px}.gifting{grid-template-columns:1fr;gap:41px;padding-top:0;padding-bottom:60px}.gifting-visual{padding:8px;width:calc(100% - 27px);max-width:350px}.gift-note{width:151px;height:193px;bottom:52px;right:-23px}.gift-note>span{font-size:29px}.gift-note svg{width:25px;height:30px}.gift-note small{font-size:5px}.gift-caption{font-size:5px;letter-spacing:1.2px;margin:18px 0 8px}.gifting .eyebrow{font-size:7px;letter-spacing:1.7px;margin-bottom:20px}.gifting h2{font-size:43px;line-height:1.1;letter-spacing:-1.4px}.gifting-copy>p:not(.eyebrow):not(.gifting-note){font-size:12px;line-height:1.9}.gifting .button{font-size:9px;min-height:49px;padding:13px 21px;gap:20px}.gifting-note{font-size:15px;max-width:280px;line-height:1.5}.closing{padding:48px 25px 51px}.closing:before{inset:12px}.closing .royal-corner{width:69px;height:69px}.closing-fleur{width:31px;height:38px;margin-bottom:21px}.closing>p{font-size:19px;margin-bottom:18px}.closing h2{font-size:38px;letter-spacing:-1px;line-height:1.16;max-width:340px}.closing .button{font-size:9px;padding:13px 20px;gap:18px;min-height:48px;margin-top:27px}.footer{padding:26px 6% 21px}.footer-main{grid-template-columns:1.05fr .95fr;gap:25px 18px;padding-bottom:26px}.footer .brand-lettering{width:190px;height:74px}.footer .wordmark-art .brand-subtitle{font-size:4px;letter-spacing:1.3px;margin-left:15px}.footer-main>p{font-size:23px}.footer nav{font-size:9px;gap:10px}.footer-note .eyebrow{font-size:6px;letter-spacing:1.2px}.footer-note p{font-size:8px;line-height:1.8}.footer-bottom{font-size:7px;gap:10px}.footer-bottom button{font-size:7px}.gift-dialog,.privacy-dialog{padding-top:43px}.product-dialog .button{font-size:9px}.product-dialog-copy{padding:27px}.favourites-dialog{padding:26px}.selection-footer .button{min-height:47px}}
@media(max-width:365px){.brand-lettering{width:186px;height:72px}.header{min-height:111px}.mobile-nav{top:140px}.collection-ribbon{gap:8px;font-size:5px;letter-spacing:.7px}.hero h1{font-size:54px}.hero{padding-left:7%;padding-right:7%}.hero .eyebrow{font-size:5px;letter-spacing:1.6px}.product-name{font-size:21px}.footer .brand-lettering{width:165px;height:64px}.footer-main>p{font-size:21px}}
@media(prefers-reduced-motion:reduce){.hero-image,.button,.save-product{transition:none}}
.brand-lettering{height:auto!important;aspect-ratio:900/344;background-size:139.3333% 364.5349%;background-position:50.8475% 66.4835%}
/* Preserve the supplied emblem's square geometry, then blend the lavender ground. */
.brand-lettering{mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent),linear-gradient(180deg,transparent,#000 4%,#000 96%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent),linear-gradient(180deg,transparent,#000 4%,#000 96%,transparent);-webkit-mask-composite:source-in}
.hero .brand-seal{border:0;outline:0;box-shadow:0 6px 28px #160a2145;background:transparent}
.brand-seal img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.philosophy{padding:36px;background:radial-gradient(ellipse at 24% 44%,#d7c3ef 0%,#dcccec 39%,#ede1f3 100%);border-top:3px double #bb825f;border-bottom:3px double #bb825f}
.philosophy-frame{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:64px;padding:72px 6%;border-color:#ae78544d;outline-color:#bd886332;background:transparent}
.philosophy .frame-corner{background:#ddccec;border-color:#be8a66}
.house-emblem{width:100%;max-width:450px;min-width:0;margin:auto;align-self:center;position:relative}
.emblem-halo{width:100%;aspect-ratio:1;position:relative;display:grid;place-items:center;background:radial-gradient(ellipse at center,#d6c0ed 25%,#d6c0ed00 73%)}
.house-emblem .emblem-halo img{display:block;width:100%;height:auto;max-width:100%;aspect-ratio:1/1;object-fit:contain;border:0;outline:0;box-shadow:none;mask-image:radial-gradient(ellipse 70.7% 70.7% at 50% 50%,#000 70%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 70.7% 70.7% at 50% 50%,#000 70%,transparent 100%)}
.house-emblem>p{color:#9a603f!important;font-size:8px!important;letter-spacing:2.4px;margin:24px 0 0!important}
.philosophy-copy{min-width:0}
.philosophy-copy .eyebrow{color:#995d40;font-size:8px;letter-spacing:2px;margin-bottom:24px}
.philosophy .chapter-number{color:#a66644}
.philosophy h2{color:#46224f;font-size:clamp(39px,3.8vw,55px);line-height:1.13;letter-spacing:-1.5px;margin-bottom:23px}
.philosophy h2 em{color:#9a593e}
.philosophy-copy>p:not(.eyebrow){color:#725777;font-size:12px;line-height:1.95;margin:0 0 19px;max-width:480px}
.philosophy-copy>p.philosophy-lead{font:italic 23px/1.45 var(--serif);color:#754e75;margin-bottom:19px;max-width:440px}
.philosophy-values{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:25px;padding-top:23px;border-top:1px solid #b9805c6b}
.philosophy-values>div>span{font:italic 20px var(--serif);color:#a96b45;display:block;margin-bottom:12px}
.philosophy-values h3{font-size:21px;line-height:1.15;margin-bottom:10px;color:#56305b;letter-spacing:-.4px}
.philosophy .philosophy-values p{color:#7f6083;font-size:10px;line-height:1.85;margin:0;max-width:none}
.philosophy .flourish{color:#b57952;width:139px;margin:25px 0 16px}
.philosophy .signature{color:#92543d;font-size:22px;display:block}
.philosophy-link{display:inline-flex;gap:19px;align-items:center;margin-top:22px;font-size:9px;letter-spacing:.5px;border-bottom:1px solid #b5785370;padding-bottom:4px;color:#814932}
.philosophy-link svg{width:18px;height:18px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.collection-filters{max-width:none;gap:27px;flex-wrap:wrap;margin-bottom:22px}
.collection-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 28px}
#collection-count{font-size:10px;color:#9b725e;letter-spacing:.5px}
.menu-search{display:flex;align-items:center;gap:10px;border-bottom:1px solid #b9815b77;padding:7px 0;width:260px}
.menu-search svg{width:17px;height:17px;color:#a66b48}
.menu-search input{background:none;border:0;font:11px var(--sans);color:var(--plum);width:100%;min-width:0;padding:5px 0;border-radius:0}
.menu-search input::placeholder{color:#9a819f}
.menu-search input:focus-visible{outline:0}
.menu-search:focus-within{outline:2px solid #9c6548;outline-offset:5px}
.product-grid.filtered{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:35px 24px}
.product-grid{gap:35px 24px}
.product-grid.single{max-width:330px;margin:auto;grid-template-columns:minmax(0,1fr)}
.product-grid.two{max-width:640px;margin:auto;grid-template-columns:repeat(2,minmax(0,1fr))}
.product-card{display:flex;flex-direction:column}
.product-visual{flex-shrink:0}
.product-name{font-size:26px;line-height:1.17}
.product-details{margin-top:auto}
.product-photo.recipe-photo{width:100%;height:100%;object-fit:cover;object-position:center;display:block;aspect-ratio:1}
.product-dialog-image{min-width:0;background:#e4d5e9;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:430px}
.product-dialog-image .recipe-photo{width:100%;height:auto;max-height:78dvh;object-fit:contain;display:block}
.recipe-source{display:inline-flex;align-items:center;gap:12px;font-size:10px;line-height:1.5;color:#9f6040;border-bottom:1px solid #be8a666b;margin-bottom:20px;padding-bottom:5px}
.recipe-source svg{width:16px;height:16px}
.recipe-origin{font-size:7px;letter-spacing:1.1px;color:#ab7c63;display:block;margin:10px 0 1px}
.product-dialog-copy{padding-top:45px}
.product-dialog h2{font-size:34px}
.detail-purchase{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #c092735c;border-bottom:1px solid #c092735c;padding:17px 0;margin-bottom:13px}
.detail-purchase>strong{font:27px var(--serif);color:#95553d;font-weight:400;white-space:nowrap}
.detail-purchase .button{width:auto;min-height:43px;padding:10px 15px;gap:12px;font-size:9px}
.detail-save{width:100%;min-height:43px;padding:10px 15px;gap:15px;font-size:9px}
.cart-dialog{width:490px;max-width:100%;height:100dvh;max-height:100dvh;margin:0 0 0 auto;padding:32px 31px;background:#eadcf0;box-shadow:-20px 0 100px #2613363d}
.cart-dialog .dialog-heading{padding:18px 0 24px}
.cart-dialog .dialog-heading h2{font-size:43px}
.cart-items{max-height:calc(100dvh - 345px);overflow:auto;padding-right:4px}
.cart-item{display:grid;grid-template-columns:67px 1fr 25px;gap:13px;padding:19px 0;border-bottom:1px solid #c28e6e66;align-items:start}
.cart-item-image{width:67px;height:67px;object-fit:cover;background:#e2d2e7}
.cart-item-image .recipe-photo{width:100%;height:100%;object-fit:cover}
.cart-item-details h3{font-size:20px;line-height:1.15;margin:3px 0 4px}
.cart-item-label{font-size:7px;letter-spacing:1.2px;color:#a15e40}
.cart-item-price{font-size:9px;color:#8b6d88}
.quantity-control{display:flex;align-items:center;gap:12px;margin-top:11px;font-size:11px}
.quantity-control button{width:23px;height:23px;border:1px solid #bd8668;background:#f8ebf4;color:#8d5139;line-height:1;font-size:16px;padding:0}
.quantity-control button:hover{background:#dec4dd}
.cart-remove{background:none;padding:4px;color:#9d5b40}.cart-remove svg{width:16px;height:16px}
.cart-summary{border-top:1px solid #bd896c;margin-top:16px;padding-top:18px}
.cart-summary>div{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#765879}.cart-summary>div strong{font:27px var(--serif);color:#8f5038;font-weight:400}.cart-summary small{display:block;color:#967d98;font-size:9px;line-height:1.65;margin:7px 0 17px}.cart-summary .button{width:100%;min-height:50px;font-size:9px}
.cart-empty{text-align:center;padding:56px 15px 25px}.cart-empty>svg{width:42px;height:42px;color:#ad6a49;margin-bottom:15px}.cart-empty h3{font-size:28px;line-height:1.15;margin-bottom:13px}.cart-empty p{font-size:11px;color:#876b8b;line-height:1.8;margin-bottom:23px}.cart-empty .button{font-size:9px}
.product-pairing span:empty{display:none}
.favourite-row .recipe-photo{width:78px;height:78px;object-fit:cover}
.favourite-row h3{font-size:22px;line-height:1.15}
.collection-more{text-align:center;margin-top:36px}
.collection-more .button{background:#edddeb;min-width:238px;border-color:#bd8058;color:#875032}
.collection-more .button:hover{background:#e5c8d2}
.menu-note{max-width:690px}
.menu-note a{color:#995d40;display:inline-block;border-bottom:1px solid #bf906f66;margin-left:5px}
.empty-results{grid-column:1/-1;text-align:center;padding:40px 20px 30px;border:1px solid #caa48755}
.empty-results h3{font-size:30px;margin-bottom:12px}
.empty-results p{font-size:12px;color:#84668a;margin-bottom:20px}
@media(max-width:1100px){.philosophy-frame{gap:40px;padding:58px 5%}.philosophy h2{font-size:43px}.philosophy-values{gap:20px}.philosophy-values h3{font-size:20px}.collection-filters{gap:20px}.product-name{font-size:24px}}
@media(max-width:800px){.philosophy{padding:25px}.philosophy-frame{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:25px;padding:45px 5%}.philosophy h2{font-size:36px;letter-spacing:-1px}.philosophy-copy .eyebrow{font-size:7px;letter-spacing:1.3px}.philosophy-copy>p.philosophy-lead{font-size:21px}.philosophy-copy>p:not(.eyebrow):not(.philosophy-lead){font-size:11px}.philosophy-values{grid-template-columns:1fr;gap:20px}.philosophy-values>div{display:grid;grid-template-columns:23px 1fr;gap:0 9px}.philosophy-values>div>span{grid-row:1/3;margin:0;font-size:19px}.philosophy-values h3{font-size:21px;margin-bottom:8px}.philosophy-values p{grid-column:2}.house-emblem>p{font-size:6px!important;letter-spacing:1.4px;margin-top:19px!important}.product-grid,.product-grid.filtered{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px}.product-grid.single{grid-template-columns:minmax(0,1fr)}.product-name{font-size:28px}.collection-filters{flex-wrap:nowrap;justify-content:flex-start;gap:22px;overflow-x:auto;scrollbar-width:none}.filter{font-size:10px}.product-dialog-inner:has(.product-dialog-image){grid-template-columns:1fr}.product-dialog-image{min-height:0;max-height:380px}.product-dialog-image .recipe-photo{height:auto;max-height:380px;object-fit:contain}.product-dialog h2{font-size:36px}.product-dialog-copy{padding-top:28px}.recipe-origin{font-size:6px}.product-actions{gap:8px}.add-cart{font-size:7px;padding:7px 7px}.add-cart span{font-size:7px}}
@media(max-width:560px){.philosophy{padding:18px;background:radial-gradient(ellipse at 50% 20%,#d5c0ed 0%,#e7d8ef 65%,#ede1f3 100%)}.philosophy-frame{display:flex;flex-direction:column;gap:31px;padding:30px 22px 36px;text-align:center}.house-emblem{width:100%;max-width:290px;margin:auto}.house-emblem .emblem-halo img{height:auto;aspect-ratio:1/1}.house-emblem>p{font-size:6px!important;letter-spacing:1.7px;margin-top:18px!important}.philosophy-copy .eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:21px}.philosophy h2{font-size:37px;letter-spacing:-1.1px;margin-bottom:19px}.philosophy-copy>p.philosophy-lead{font-size:22px;line-height:1.45;max-width:290px;margin:0 auto 17px}.philosophy-copy>p:not(.eyebrow):not(.philosophy-lead){font-size:11px;line-height:1.95;margin-bottom:18px}.philosophy-values{margin-top:25px;padding-top:24px;text-align:left;gap:22px}.philosophy-values h3{font-size:22px}.philosophy .philosophy-values p{font-size:10px;line-height:1.9}.philosophy .flourish{margin:24px auto 15px}.philosophy .signature{font-size:22px}.philosophy-link{font-size:9px;margin-top:19px}.collection-filters{gap:20px;margin-bottom:20px}.filter{font-size:9px}.collection-tools{flex-direction:column-reverse;align-items:stretch;gap:15px;margin-bottom:23px}.menu-search{width:100%;padding:6px 0}.menu-search input{font-size:16px;transform-origin:left center}.menu-search input::placeholder{font-size:12px}#collection-count{font-size:9px}.product-grid,.product-grid.filtered{gap:29px 15px;max-width:none;grid-template-columns:repeat(2,minmax(0,1fr))}.product-grid.single{max-width:285px;grid-template-columns:minmax(0,1fr)}.product-grid.two{max-width:none}.product-name{font-size:23px}.product-details{font-size:7px}.product-description{font-size:10px}.recipe-origin{font-size:5px;letter-spacing:.9px;margin-top:9px}.collection-more{margin-top:27px}.collection-more .button{font-size:9px;min-width:215px;min-height:47px}.menu-note{font-size:8px}.menu-note a{margin-top:8px;margin-left:0}.product-dialog-image{max-height:370px}.product-dialog-image .recipe-photo{max-height:370px;width:100%;height:auto}.product-dialog h2{font-size:31px}.product-dialog-copy{padding:27px}.favourite-row h3{font-size:21px}.cart-dialog{padding:24px 22px}.cart-dialog .dialog-heading h2{font-size:39px}.cart-item{grid-template-columns:58px 1fr 20px;gap:10px}.cart-item-image{width:58px;height:58px}.cart-item-details h3{font-size:18px}.quantity-control{margin-top:8px}.product-actions{display:grid;grid-template-columns:1fr;gap:7px}.product-actions .product-details{justify-content:flex-start}.add-cart{width:100%;align-items:center;flex-direction:row;justify-content:space-between;padding:8px 9px}.add-cart span{font-size:8px}}
