@import url('assets/fonts/fonts.css');
/* One shared type scale and photo treatment for the whole site. */
:root{--ivory:#FAF7F2;--champagne:#EADDCF;--blush:#F4DDDA;--peach:#DBADA0;--cocoa:#51413C;--muted:#79645c;--line:#51413c24;--gold:#ac8056;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--type-body:17px;--type-caption:16px;--type-control:22px;--control-weight:500;--header:104px;--delivery-height:46px;--photo-width:520px;--photo-ratio:4/5;--photo-border:#cdb9a5;--photo-padding:10px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + var(--delivery-height) + 16px)}body{margin:0;padding-top:var(--delivery-height);background:var(--ivory);color:var(--cocoa);font:400 var(--type-body)/1.8 var(--sans);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.025em}h1,h2{line-height:1.04}h2{font-size:clamp(44px,5vw,74px)}h3{font-size:34px;line-height:1.2}em{font-weight:400}svg{width:22px;height:22px;flex-shrink:0}[hidden]{display:none!important}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:8px;left:12px;z-index:200;transform:translateY(-150%);background:var(--cocoa);color:var(--ivory);padding:12px 18px}.skip-link:focus{transform:none}.eyebrow{font:400 var(--type-caption)/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase}.section-wrap{max-width:1280px;margin-inline:auto;padding:88px 5%}.text-link{display:inline-flex;align-items:center;gap:25px;padding:10px 0;min-height:44px;border-bottom:1px solid var(--gold);font:var(--control-weight) var(--type-control)/1.3 var(--serif)}.text-link svg{width:18px;height:18px}.image-note{position:absolute;left:18px;bottom:18px;z-index:2;font:400 var(--type-caption)/1.4 var(--sans);background:#faf7f2ed;padding:8px 12px;color:var(--cocoa);max-width:calc(100% - 85px)}
/* Header: all labels share the same brand font, size, weight, and casing. */
.header{height:var(--header);position:fixed;top:var(--delivery-height);left:0;width:100%;padding:0 4%;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:50;border-bottom:1px solid var(--line);background:var(--ivory)}.header.is-scrolled{box-shadow:0 3px 12px #51413c08}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand img{width:116px;height:91px;object-fit:contain}.navigation,.header-actions{display:flex;align-items:center;gap:24px}.navigation a{position:relative;white-space:nowrap;padding:10px 0}.navigation a:after{content:'';position:absolute;bottom:5px;left:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .22s}.navigation a:hover:after{transform:scaleX(1)}.header-actions{gap:10px}.navigation a,.whatsapp-link,.instagram-link,.delivery-copy strong,.delivery-detail,.filters button,.contact-button,.instagram-load,.footer-nav>a{font-family:var(--serif);font-size:var(--type-control);font-weight:var(--control-weight);line-height:1.25;letter-spacing:0;text-transform:none}
.whatsapp-link,.instagram-link{display:inline-flex;align-items:center;justify-content:center;gap:0;width:48px;min-width:48px;height:48px;min-height:48px;padding:12px;border:1px solid var(--photo-border);border-radius:3px;white-space:nowrap;background:var(--ivory);color:var(--cocoa);box-shadow:none;transition:background .2s,box-shadow .2s}.whatsapp-link svg,.instagram-link svg{width:24px;height:24px;color:var(--cocoa)}.whatsapp-link:hover,.instagram-link:hover{background:var(--champagne);box-shadow:0 0 14px #b78b4c20}.menu-toggle{display:none;background:none;border:0;width:44px;height:44px;padding:10px}.menu-toggle span{display:block;width:22px;height:1px;background:var(--cocoa);margin:6px 0}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.delivery-banner{position:absolute;top:calc(-1 * var(--delivery-height));left:0;width:100%;height:var(--delivery-height);display:flex;align-items:center;justify-content:center;gap:12px;padding:0 12px;background:linear-gradient(110deg,#e6d2bd,#f4e7d5 40%,#ead7c0);border-block:1px solid #b88b5840;box-shadow:inset 0 1px 0 #fff8eb90;color:var(--cocoa)}.delivery-icon{width:29px;height:29px;flex-shrink:0;padding:4px;box-sizing:content-box;border:1px solid #ac7d4c60;border-radius:50%;background:#fff8ed70;color:#815b35}.delivery-copy{display:flex;align-items:center;justify-content:center;gap:14px}.delivery-divider{font-size:16px;color:var(--gold)}
/* Hero layout; the interactive photo wheel is styled below. */
.hero{min-height:820px;height:100svh;max-height:1100px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 70% 42%,#fffdf9,#f2e8db 65%,#eadbcf)}.hero-image{position:absolute;inset:0}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#faf7f2c0,transparent 55%)}.hero-stage{position:absolute;top:var(--header);bottom:70px;left:43%;right:2%;z-index:1;touch-action:pan-y;cursor:grab;user-select:none}.hero-stage.is-dragging{cursor:grabbing}.hero-stage canvas{display:block;width:100%;height:100%}.hero.has-3d .hero-fallback{visibility:hidden}.hero-content{position:relative;z-index:2;padding:calc(var(--header) + 8svh) 0 0 7%;width:44%;max-width:680px;pointer-events:none}.hero-content a{pointer-events:auto}.hero h1{font-size:clamp(76px,7.7vw,120px);margin:24px 0;letter-spacing:-.045em}.hero h1 em{color:#89645a}.hero-description{font-size:var(--type-body);line-height:1.8;margin-bottom:20px;max-width:440px}.hero-bottom{position:absolute;bottom:25px;left:7%;right:5%;z-index:3;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.hero-bottom .image-note{position:static;max-width:none}.hero-index{font-size:var(--type-caption);color:var(--muted)}.cake-motion{font:var(--control-weight) var(--type-control)/1.3 var(--serif);padding:10px 0;min-height:44px;border:0;border-bottom:1px solid var(--gold);background:transparent;display:inline-flex;align-items:center;gap:10px}.cake-motion:before{content:'↻';color:var(--gold)}
/* Shared photo frames: equal ratio, bounded width, consistent border and inset. */
.card-image,.detail-image,.gallery-photo,.atelier-visual,.chocolate-photo,.instagram-card{position:relative;display:block;width:100%;max-width:var(--photo-width);aspect-ratio:var(--photo-ratio);padding:var(--photo-padding);margin-inline:auto;overflow:hidden;background:var(--ivory);border:1px solid var(--photo-border);border-radius:4px;box-shadow:0 4px 16px #51413c07}.card-image>img,.detail-image>img,.gallery-photo>img,.atelier-visual>img,.chocolate-photo>img,.instagram-card>img{width:100%;height:100%;object-fit:contain;object-position:center!important;aspect-ratio:auto;transform:none;max-height:none;background:#f4eee6;border-radius:1px}.card-arrow{position:absolute;right:18px;bottom:18px;z-index:3;width:42px;height:42px;border:1px solid var(--photo-border);border-radius:50%;background:var(--ivory);display:grid;place-items:center}.card-arrow svg{width:18px;height:18px}.preparation-overlay{position:absolute;inset:var(--photo-padding);display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(transparent,#51413c12,transparent);pointer-events:none}.preparation-overlay>span{padding:16px 22px;background:#faf7f2f2;border:1px solid var(--photo-border);box-shadow:0 6px 22px #51413c12;font:500 var(--type-control)/1.3 var(--serif);text-align:center;border-radius:3px}
.intro{text-align:center;padding-top:64px;padding-bottom:24px}.intro h2{font-size:clamp(44px,4.5vw,66px);margin:24px 0}.intro p:not(.eyebrow){color:var(--muted)}.intro-line{display:none}.collection{padding-top:44px}.section-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center;margin-bottom:36px}.section-heading h2{margin-top:18px}.section-heading>p{color:var(--muted)}.filters{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 20px;border-bottom:1px solid var(--line);margin-bottom:36px}.filters button{border:0;background:none;padding:14px 16px;position:relative;min-height:46px;color:var(--muted)}.filters button span{font:400 var(--type-caption)/1.4 var(--sans);padding-left:8px}.filters button.active{color:var(--cocoa)}.filters button.active:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--gold)}.collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,var(--photo-width)));justify-content:center;gap:42px 36px;align-items:start}.collection-card{min-width:0}.card-meta{margin-top:18px;text-align:center}.card-meta h3{font-size:36px}.collection-note{text-align:center;font-size:var(--type-caption);color:var(--muted);border-top:1px solid var(--line);padding-top:22px;margin:42px auto 0;max-width:1040px}
.chocolate-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:5%;padding:64px max(5%,calc((100vw - 1160px)/2));background:var(--cocoa);color:var(--ivory)}.chocolate-copy h2{font-size:clamp(44px,4.5vw,68px);margin:24px 0}.chocolate-copy .quiet{color:#eadacf;margin-top:20px}.chocolate-copy .text-link{border-color:var(--champagne);margin-top:24px}.chocolate-tags{display:flex;gap:20px;margin-top:32px;border-top:1px solid #eaddcf40;padding-top:20px}.atelier{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;align-items:start}.atelier-visual{overflow:visible}.atelier-mark{position:absolute;right:-15px;top:-20px;width:118px;height:95px;background:var(--ivory);border:1px solid var(--photo-border);padding:7px;border-radius:3px}.atelier-mark img{width:100%;height:100%;object-fit:contain}.atelier-copy h2{font-size:clamp(42px,4vw,64px);margin:22px 0 28px}.atelier-copy>p:not(.eyebrow){margin-bottom:20px;color:var(--muted)}.about-copy .about-intro{color:var(--cocoa)}.about-highlights{display:grid;grid-template-columns:1fr 1.4fr;gap:24px;border-block:1px solid var(--line);padding:24px 0;margin:28px 0}.about-highlights strong{display:block;font:400 38px/1.1 var(--serif);color:#93664e;letter-spacing:-.02em}.about-highlights span{display:block;font-size:var(--type-caption);margin-top:10px;line-height:1.5;color:var(--muted)}.atelier-copy>.about-signature{font:italic 34px/1.3 var(--serif);color:var(--cocoa);margin:28px 0 14px}.atelier-copy .text-link{margin-top:10px}
.process{padding-top:16px}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.process-grid article{border-top:1px solid var(--line);padding-top:24px}.process-grid article>span{font-size:var(--type-caption)}.process-grid h3{margin:20px 0 15px}.process-grid p{color:var(--muted)}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;padding-top:16px}.faq h2{margin-top:22px;font-size:64px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:24px}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{color:var(--muted);padding:0 20px 24px 0}
.contact{position:relative;overflow:hidden;text-align:center;padding:85px 24px;background:var(--champagne)}.contact>*:not(.contact-ornament){position:relative;z-index:2}.contact h2{font-size:clamp(64px,7vw,106px);margin:24px 0 28px}.contact-button{display:inline-flex;align-items:center;justify-content:center;gap:13px;background:var(--cocoa);color:var(--ivory);padding:18px 24px;border:1px solid var(--cocoa);border-radius:3px;max-width:100%;margin-top:28px;text-align:center}.contact-button:hover{background:#755446}.contact-button .arrow{width:18px;height:18px}.contact-status{font-size:var(--type-caption);color:var(--muted);max-width:680px;margin:18px auto 0}.contact-status.is-notice{background:var(--ivory);padding:12px 18px;border:1px solid var(--photo-border)}.service-area{font-size:var(--type-body);font-weight:500;margin:22px auto 0}.contact-ornament{position:absolute;right:7%;bottom:-125px;font:italic 500px/1 var(--serif);color:#51413c07;pointer-events:none}.compact-contact{padding-block:64px}.compact-contact h2{font-size:clamp(44px,5vw,74px)}
/* Footer: information links first, the requested four links at the right. */
.footer{padding:46px 5% 24px}.footer-nav{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:6px 0 24px;margin-bottom:18px;scrollbar-width:thin;scrollbar-color:var(--gold) transparent}.footer-nav>a{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:44px;padding:8px 15px;white-space:nowrap;color:var(--cocoa);transition:color .2s,text-shadow .2s,background-color .2s;border-radius:3px}.footer-nav>a+a:before{content:'|';position:absolute;left:-2px;top:50%;transform:translateY(-50%);color:#a17c5a80;text-shadow:none;font:400 var(--type-caption)/1 var(--sans);pointer-events:none}.footer-nav>a:hover,.footer-nav>a:focus-visible{color:#87531e;background:#ead6bb66;text-shadow:0 0 9px #c49a5999,0 0 20px #e6c38d66}.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;border-top:1px solid var(--line);padding-top:22px;font-size:var(--type-caption);color:var(--muted)}
.detail-main,.info-main{padding-top:var(--header)}.detail-main .section-wrap{padding-top:50px}.breadcrumbs{font-size:var(--type-caption);color:var(--muted);margin-bottom:32px}.detail-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6%;align-items:center}.detail-copy h1{font-size:clamp(52px,5.5vw,82px);margin:22px 0 28px}.detail-copy p:not(.eyebrow){color:var(--muted)}.detail-copy .status{display:inline-block;padding:8px 13px;border:1px solid var(--photo-border);font-size:var(--type-caption);margin:24px 0}.detail-copy .contact-button{margin-top:0}.back-link{display:block;margin-top:24px;font:500 var(--type-control)/1.3 var(--serif)}.photo-gallery{max-width:1076px;margin:64px auto 0}.photo-gallery h2{text-align:center;font-size:clamp(40px,4vw,64px);margin-bottom:32px}.photo-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,var(--photo-width)));justify-content:center;gap:36px}.photo-gallery-grid:has(>figure:only-child){grid-template-columns:minmax(0,var(--photo-width))}.photo-gallery figure{margin:0;width:100%;min-width:0;text-align:center}.photo-gallery figcaption{font-size:var(--type-caption);line-height:1.7;margin:16px auto 0;color:var(--muted)}.detail-disclaimer{max-width:850px;margin:32px auto 0;font-size:var(--type-caption);text-align:center;color:var(--muted)}
/* Policy and contact documents use the same body and caption sizes. */
.info-document{max-width:1080px;padding-top:54px;padding-bottom:76px}.info-document h1{font-size:clamp(44px,5.8vw,76px);margin:22px 0 18px;max-width:900px}.info-updated{font-size:var(--type-caption);color:var(--muted);margin-bottom:36px}.info-body{max-width:850px}.info-body .info-lead{font:400 28px/1.4 var(--serif);margin-bottom:32px}.info-body h2{font-size:34px;line-height:1.2;margin:36px 0 16px}.info-body p{font-size:var(--type-body);line-height:1.8;margin-bottom:16px}.info-body a{color:#855748;text-decoration:underline;text-underline-offset:3px}.info-body .service-area{margin:20px 0 28px}.info-document>.text-link{margin-top:34px}.business-details{margin:22px 0 32px;border-top:1px solid var(--line)}.business-details>div{display:grid;grid-template-columns:210px 1fr;gap:24px;padding:16px 0;border-bottom:1px solid var(--line);font-size:var(--type-body)}.business-details dt{font-weight:500;color:var(--muted)}.business-details dd{margin:0;overflow-wrap:anywhere}.legal-table-wrap{overflow-x:auto;margin:24px 0}.legal-table-wrap table{width:100%;border-collapse:collapse;font-size:var(--type-caption);text-align:left}.legal-table-wrap th,.legal-table-wrap td{padding:14px;border:1px solid var(--line);vertical-align:top;min-width:170px}.legal-table-wrap th{background:var(--champagne);font-weight:500}.info-body .legal-source{font-size:var(--type-caption);color:var(--muted);margin-top:28px}.contact-channel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:30px 0 46px}.info-body .contact-channel{display:flex;align-items:center;gap:15px;text-decoration:none;color:var(--cocoa);border:1px solid var(--photo-border);padding:24px;background:var(--ivory)}.contact-channel>svg{color:var(--cocoa);width:28px;height:28px}.contact-channel>span:nth-child(2){flex:1}.contact-channel strong{display:block;font:500 var(--type-control)/1.3 var(--serif)}.contact-channel span span{display:block;font-size:var(--type-caption);margin-top:5px}.channel-instagram{font-size:32px;color:var(--gold);line-height:1}.contact-channel:hover{background:var(--champagne)}
/* Personal Instagram account: optional official embed and clearly labelled local photos. */
.instagram-story{padding:78px max(24px,calc((100vw - 1160px)/2));background:linear-gradient(145deg,#f1e4d9,#faf7f2 55%,#f3e0da);border-block:1px solid var(--line);overflow:hidden}.instagram-heading{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-bottom:36px}.instagram-heading h2{font-size:clamp(44px,5vw,74px);margin:18px 0}.instagram-heading>div>p:not(.eyebrow){max-width:540px}.instagram-profile{display:flex;align-items:center;gap:16px;padding:20px 24px;background:#faf7f2d9;border:1px solid var(--photo-border)}.instagram-profile svg{width:33px;height:33px;color:var(--gold)}.instagram-profile strong{display:block;font:500 var(--type-control)/1.3 var(--serif)}.instagram-profile span span{display:block;font-size:var(--type-caption);margin-top:4px;color:var(--muted)}.instagram-live-panel{border:1px solid var(--photo-border);background:#faf7f2e6;padding:32px;margin-bottom:40px}.instagram-live-copy{max-width:720px}.instagram-kicker{font-size:var(--type-caption);color:var(--muted)}.instagram-live-copy h3{font-size:40px;margin:16px 0 20px}.instagram-live-copy h3 br{display:none}.instagram-load{display:inline-flex;gap:14px;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--cocoa);padding:13px 20px;margin-top:24px;background:var(--cocoa);color:var(--ivory)}.instagram-load:hover{background:#755446}.instagram-load:disabled{opacity:.6;cursor:wait}.instagram-live-copy .instagram-privacy{font-size:var(--type-caption);color:var(--muted);margin-top:15px}.instagram-privacy a{text-decoration:underline;text-underline-offset:3px}.instagram-embed-status{font-size:var(--type-caption);margin-top:14px;color:var(--muted)}.instagram-embed-host{width:100%;max-width:540px;min-height:520px;margin-inline:auto}.instagram-embed-host .instagram-media,.instagram-embed-host iframe{width:100%!important;min-width:0!important;max-width:540px!important;margin:0!important}.instagram-requested .instagram-live-panel{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);gap:36px;align-items:center}.instagram-local-title{font-size:34px;margin-bottom:24px;text-align:center}.instagram-window{position:relative}.instagram-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--gold) var(--champagne);padding:0 0 18px;overscroll-behavior-x:contain}.instagram-card{flex:0 0 min(100%,var(--photo-width));min-width:0;margin:0;scroll-snap-align:start}.instagram-card-label{position:absolute;bottom:18px;left:18px;right:18px;background:#faf7f2ed;padding:8px 12px;font-size:var(--type-caption);color:var(--cocoa);line-height:1.4}.instagram-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:20px}.instagram-status{font-size:var(--type-caption);color:var(--muted);max-width:700px}.instagram-controls{display:flex;gap:10px}.instagram-controls button{width:46px;height:46px;display:grid;place-items:center;background:var(--ivory);border:1px solid var(--photo-border);border-radius:50%;font:500 var(--type-control)/1 var(--serif)}.instagram-controls button:hover{background:var(--champagne)}.instagram-controls button:disabled{opacity:.35;cursor:default}
/* Layout breakpoints change positioning, not the type family or control size. */
@media(max-width:1480px) and (min-width:801px){.header{padding-inline:3%;gap:20px}.navigation{gap:20px}}
@media(max-width:1380px){.navigation{position:fixed;top:calc(var(--header) + var(--delivery-height));left:0;right:0;background:var(--ivory);padding:28px 6% 36px;flex-direction:column;align-items:start;gap:16px;border-bottom:1px solid var(--line);display:none;box-shadow:0 20px 30px #51413c10}.navigation.is-open{display:flex}.menu-toggle{display:block}.footer-nav{justify-content:flex-start}}
@media(max-width:900px){.section-wrap{padding:68px 5%}.intro{padding-top:55px;padding-bottom:24px}.collection{padding-top:36px}.collection-grid,.photo-gallery-grid{gap:32px 24px}.chocolate-feature{grid-template-columns:1fr;gap:38px;padding:54px 6%}.chocolate-copy{max-width:600px;margin:auto}.atelier{gap:6%}.hero h1{font-size:78px}.hero-content{width:48%}.hero-stage{left:44%;right:0}.process-grid{gap:26px}.faq{grid-template-columns:1fr;gap:32px}.faq h2{font-size:54px}.instagram-story{padding:60px 5%}.instagram-heading{align-items:start;flex-direction:column;gap:24px}.instagram-requested .instagram-live-panel{grid-template-columns:1fr}}
@media(max-width:800px){:root{--header:94px}.brand img{width:104px;height:82px}.header-actions{gap:6px}.header-actions .whatsapp-link,.header-actions .instagram-link{width:44px;min-width:44px;height:44px;padding:10px}.header-actions .whatsapp-link span,.header-actions .instagram-link span{display:none}.header-actions .whatsapp-link svg,.header-actions .instagram-link svg{width:22px;height:22px}}
@media(max-width:560px){:root{--header:90px;--delivery-height:64px;--photo-padding:8px}.header{padding-inline:5%;gap:10px}.brand img{width:98px;height:77px}.delivery-copy{flex-direction:column;gap:2px}.delivery-divider{display:none}.delivery-icon{width:24px;height:24px;padding:4px}.delivery-copy strong,.delivery-detail{line-height:1.15}.section-wrap{padding:58px 24px}.hero{height:1100px;min-height:0;max-height:none}.hero-content{width:100%;max-width:none;padding:125px 24px 0}.hero h1{font-size:64px;line-height:.98;margin:20px 0}.hero h1 br:nth-of-type(2){display:none}.hero-description{max-width:100%;margin-bottom:14px}.hero-stage{top:465px;bottom:75px;left:0;right:0}.hero-fallback{top:465px;bottom:75px}.hero-image:after{background:linear-gradient(#f2e8db,transparent 15%,transparent 80%,#eadbcf)}.hero-bottom{left:24px;right:24px;bottom:18px;gap:10px}.hero-bottom>.image-note{display:none}.hero-index{font-size:var(--type-caption)}.intro{padding-top:48px;padding-bottom:20px}.intro h2{font-size:44px}.collection{padding-top:28px}.section-heading{gap:20px}.section-heading h2{font-size:46px}.filters{gap:4px 10px}.filters button{padding:12px 8px}.filters button span{padding-left:4px}.collection-grid{grid-template-columns:minmax(0,var(--photo-width));gap:34px}.card-meta h3{font-size:34px}.image-note{left:14px;bottom:14px;padding:7px 9px}.card-arrow{right:14px;bottom:14px}.preparation-overlay>span{padding:14px 16px}.collection-note{margin-top:32px}.chocolate-feature{padding:48px 24px}.chocolate-copy h2{font-size:48px}.atelier{grid-template-columns:1fr;gap:40px}.atelier-mark{right:0;top:-18px;width:105px;height:84px}.atelier-copy h2{font-size:46px}.about-highlights{gap:16px}.about-highlights strong{font-size:32px}.process{padding-top:10px}.process-grid{grid-template-columns:1fr;gap:30px}.process-grid h3{font-size:32px}.faq{padding-top:10px}.faq h2{font-size:48px}.contact{padding:64px 24px}.contact h2{font-size:68px}.contact-button{gap:10px;padding:16px}.contact-ornament{font-size:400px;right:-30px;bottom:-100px}.footer{padding:36px 24px 24px}.footer-nav{padding-bottom:18px;margin-bottom:12px}.footer-nav>a{padding-inline:14px}.footer-bottom{gap:14px}.footer-bottom span:nth-child(2){display:none}.detail-main .section-wrap{padding-top:32px}.detail-layout{grid-template-columns:1fr;gap:32px}.detail-copy h1{font-size:54px}.photo-gallery{margin-top:48px}.photo-gallery-grid{grid-template-columns:minmax(0,var(--photo-width));gap:30px}.photo-gallery h2{font-size:44px}.info-document{padding-top:34px}.info-document h1{font-size:48px}.info-body h2{font-size:32px}.info-updated{margin-bottom:28px}.business-details>div{grid-template-columns:1fr;gap:6px}.contact-channel-grid{grid-template-columns:1fr}.instagram-story{padding:50px 24px}.instagram-heading h2{font-size:48px}.instagram-profile{width:100%;justify-content:center}.instagram-live-panel{padding:22px 18px}.instagram-live-copy h3{font-size:34px}.instagram-load{width:100%;gap:12px;padding-inline:12px}.instagram-embed-host{min-height:500px}.instagram-bottom{flex-direction:column;align-items:center;gap:20px}.instagram-status{text-align:center}.instagram-controls button{width:48px;height:48px}}
@media(max-width:360px){.header{padding-inline:12px;gap:6px}.header .brand img{width:76px;height:65px}.header-actions{gap:0}.hero-content{padding-inline:20px}.hero h1{font-size:58px}.hero-stage{top:480px}.delivery-banner{gap:8px;padding-inline:8px}.delivery-icon{width:22px;height:22px;padding:3px}.card-image .image-note{max-width:calc(100% - 76px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* The primary order action stays visible; compact screens get a dedicated CTA row. */
html{scrollbar-gutter:stable;overflow-x:clip}body{max-width:100%;min-width:0;overflow-x:clip;overflow-wrap:break-word}.section-wrap,.detail-copy,.atelier-copy,.chocolate-copy,.instagram-heading>div,.instagram-live-copy,.info-document,.info-body{min-width:0}.header .whatsapp-link{width:auto;min-width:0;padding:11px 16px;gap:10px;background:var(--cocoa);border-color:var(--cocoa);color:var(--ivory);box-shadow:0 3px 12px #51413c12}.header .whatsapp-link span{display:inline}.header .whatsapp-link svg{color:var(--ivory)}.header .whatsapp-link:hover{background:#755446;border-color:#755446}.navigation{max-height:calc(100dvh - var(--header) - var(--delivery-height));overflow-y:auto}.footer-nav,.instagram-track,.legal-table-wrap{min-width:0;max-width:100%;overscroll-behavior-x:contain}
@media(max-width:700px){:root{--header:136px}.header{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;grid-template-rows:64px 48px;gap:8px;padding:8px 16px}.header .brand{grid-column:1;grid-row:1;justify-self:start}.header .brand img{width:90px;height:64px}.header-actions{display:contents}.header .whatsapp-link{grid-column:1/-1;grid-row:2;display:flex;width:100%;max-width:100%;height:48px;min-height:48px;padding:8px 12px;gap:10px;white-space:normal;text-align:center}.header .whatsapp-link span{display:inline;min-width:0;line-height:1.2}.header .whatsapp-link svg{width:22px;height:22px}.header .instagram-link{grid-column:2;grid-row:1;justify-self:end;width:44px;min-width:44px;height:44px}.header .menu-toggle{grid-column:3;grid-row:1;justify-self:end}.header .navigation{padding:20px 24px 28px}.header .delivery-banner{min-width:0}.header .delivery-copy{min-width:0}}
@media(max-width:560px){.hero{display:flex;flex-direction:column;height:auto;min-height:0;max-height:none;padding-bottom:100px}.hero-content{padding-top:calc(var(--header) + 32px);flex:none}.hero-stage{position:relative;inset:auto;width:100%;height:540px;flex:none}.hero-fallback{top:auto;bottom:100px;height:540px}.hero-bottom{bottom:18px}.header .brand img{width:90px;height:64px}}
@media(max-width:360px){.header{padding-inline:12px}.header .whatsapp-link{padding-inline:10px}.header .whatsapp-link span{font-size:var(--type-control)}}
@media(max-width:560px){.hero-content{order:0}.hero-stage{order:1}}

/* Five equal, upright photographs orbit a circle; movement belongs to the gallery. */
.hero{background:radial-gradient(ellipse at 75% 45%,#f3e1d7 0,transparent 52%),linear-gradient(135deg,var(--ivory),#f0e5d7)}
.hero .hero-stage{display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;min-width:0;touch-action:pan-y;padding-top:32px}
.cake-wheel{position:relative;width:100%;height:clamp(440px,calc(100svh - 330px),660px);flex:none;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;outline-offset:-3px}
.cake-wheel.is-dragging{cursor:grabbing}
.wheel-orbit{position:absolute;inset:17.5% 16.5%;border:1px solid #ac80564d;border-radius:50%;pointer-events:none}
.wheel-orbit:after{content:'';position:absolute;inset:12px;border:1px solid #ac80561c;border-radius:50%}
.wheel-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;font:400 clamp(26px,2.5vw,40px)/1.1 var(--serif);color:var(--cocoa);text-align:center}
.wheel-center em{color:#966b4c}
.wheel-card{position:absolute;left:50%;top:50%;width:min(25%,148px,calc(clamp(440px,calc(100svh - 330px),660px) * .26));max-width:148px;aspect-ratio:4/5;margin:0;padding:6px;border:1px solid var(--photo-border);border-radius:3px;background:var(--ivory);box-shadow:0 8px 20px #51413c12;will-change:transform;pointer-events:none}
.wheel-card img{display:block;width:100%;height:100%;object-fit:contain;background:#eee7df;border-radius:1px;pointer-events:none}
.wheel-card.is-selected{border-color:#9b7044;box-shadow:0 9px 28px #8f61352b}
.wheel-controls{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;padding:0 12px;margin-top:32px}
.wheel-controls button{flex:0 0 46px;width:46px;height:46px;border:1px solid var(--photo-border);border-radius:50%;background:var(--ivory);font:500 var(--type-control)/1 var(--serif);color:var(--cocoa)}
.wheel-controls button:hover{background:var(--champagne)}
.wheel-title{font:500 var(--type-control)/1.2 var(--serif);text-align:center;min-width:0;width:210px;margin:0}
.wheel-hint{text-align:center;color:var(--muted);font-size:var(--type-caption);line-height:1.5;margin:14px 12px 0}
.cake-wheel:not(.is-ready){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px;height:auto;cursor:default}
.cake-wheel:not(.is-ready) .wheel-card{position:static;width:100%;max-width:none}
.cake-wheel:not(.is-ready) .wheel-orbit,.cake-wheel:not(.is-ready) .wheel-center{display:none}
@media(max-width:1100px) and (min-width:561px){.hero .hero-stage{left:43%;right:1%}.cake-wheel{height:530px}.wheel-center{font-size:28px}.wheel-controls{gap:10px}}
@media(max-width:560px){.hero{padding-bottom:36px}.hero .hero-stage{height:auto;padding:0 12px 16px}.cake-wheel{height:470px}.wheel-card{padding:4px}.wheel-center{font-size:28px}.wheel-controls{gap:12px}.wheel-hint{max-width:300px}.hero-content{padding-bottom:12px}}
@media(max-width:360px){.cake-wheel{height:430px}.wheel-center{font-size:25px}.wheel-hint{max-width:260px}}
/* Compact privacy controls match the brand; no full-screen veil or blocked page. */
.cookie-notice{position:fixed;z-index:120;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:390px;max-width:calc(100% - 36px);max-height:calc(100dvh - 36px);overflow:auto;padding:20px;background:var(--ivory);border:1px solid var(--photo-border);border-radius:6px;box-shadow:0 8px 34px #51413c26;color:var(--cocoa)}
.cookie-heading{display:flex;align-items:center;gap:10px;margin-bottom:8px}.cookie-heading>svg{color:var(--gold);width:25px;height:25px}.cookie-heading h2{font:500 26px/1.2 var(--serif);letter-spacing:0}.cookie-settings{margin-left:auto;border:0;border-bottom:1px solid var(--gold);padding:4px 0;background:none;font:500 var(--type-control)/1.2 var(--serif)}
.cookie-notice>p,.cookie-options p{font-size:var(--type-caption);line-height:1.5;color:var(--muted)}.cookie-notice>p a{text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.cookie-actions{display:flex;gap:8px;margin-top:16px}.cookie-actions button{flex:1;min-width:0;min-height:44px;border:1px solid var(--photo-border);border-radius:3px;padding:9px 8px;background:var(--ivory);color:var(--cocoa);font:500 var(--type-control)/1.1 var(--serif)}.cookie-actions [data-cookie-accept],.cookie-actions [data-cookie-save]{background:var(--cocoa);color:var(--ivory);border-color:var(--cocoa)}.cookie-actions button:hover{box-shadow:0 0 12px #ac805633}.cookie-options{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.cookie-options label{display:flex;align-items:start;gap:12px;margin-bottom:18px;cursor:pointer}.cookie-options input{accent-color:var(--cocoa);width:20px;height:20px;flex:0 0 20px;margin-top:3px}.cookie-options strong{display:block;font:500 var(--type-control)/1.2 var(--serif);margin-bottom:4px}.cookie-options span span{display:block;font-size:var(--type-caption);line-height:1.45;color:var(--muted)}.cookie-reopen{border:0;border-bottom:1px solid var(--photo-border);padding:6px 0;background:none;font:500 var(--type-control)/1.2 var(--serif);color:var(--cocoa)}
.footer-nav{justify-content:safe center}.faq-document .info-body{max-width:none}.faq-document h1{margin-bottom:28px}.faq-document .info-lead{max-width:800px}.faq-topics{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 42px}.info-body .faq-topics a{padding:10px 22px;border:1px solid var(--photo-border);border-radius:30px;text-decoration:none;color:var(--cocoa);font:500 var(--type-control)/1.3 var(--serif)}.faq-topics a:hover{background:var(--champagne)}.faq-group{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:44px;padding:36px 0;scroll-margin-top:calc(var(--header) + var(--delivery-height) + 24px)}.info-body .faq-group h2{font:400 38px/1.12 var(--serif);margin:0;max-width:290px}.faq-document .faq-list{min-width:0}.faq-document .faq-list summary{font-size:var(--type-body);line-height:1.6;min-height:72px}.faq-document .faq-list summary span{flex-shrink:0}.info-body .faq-list p{margin:0}.faq-help{padding:28px 32px;margin:34px 0 0;border:1px solid var(--photo-border);background:linear-gradient(120deg,#eadccf66,#f4ddda55);border-radius:4px}.info-body .faq-help h2{margin:0 0 14px}.faq-help .text-link{color:var(--cocoa);text-decoration:none}
@media(max-width:800px){.faq-group{grid-template-columns:1fr;gap:22px;padding:28px 0}.info-body .faq-group h2{max-width:none}.faq-help{padding:24px}}
@media(max-width:560px){.cookie-notice{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));max-width:calc(100% - 24px);padding:16px}.cookie-heading{gap:8px}.cookie-heading h2{font-size:26px}.cookie-actions{gap:8px}.cookie-actions button{padding-inline:6px}.faq-topics{gap:10px;margin:24px 0}.info-body .faq-topics a{padding:9px 16px}.info-body .faq-group h2{font-size:34px}.faq-document h1{font-size:48px}.faq-help{padding:22px}}
.cookie-heading>svg{width:22px;height:22px}.cookie-heading h2{font-size:24px;white-space:nowrap}
