@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--bg:#211323;--panel:#302034;--ink:#f9edf3;--muted:#bca6bc;--pink:#f39bbd;--line:#ffffff1e;--serif:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif;overflow-x:clip}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer}a,button,input,select,summary{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--pink)}button{border:0}img{max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400}em{color:var(--pink);font-weight:400}.progress{height:3px;background:var(--pink);width:var(--progress,0%);position:fixed;top:0;left:0;z-index:40;box-shadow:0 0 20px #f39bbd70}header{height:96px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;position:sticky;top:0;z-index:30;background:#211323dc;backdrop-filter:blur(25px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center}.brand img{width:205px;height:72px;object-fit:contain}nav{display:flex;align-items:center;gap:28px;font-size:14px}nav>a:hover,summary:hover{color:var(--pink)}.nav-drop summary{cursor:pointer;list-style:none;padding:26px 0}.nav-drop summary::-webkit-details-marker{display:none}summary span{margin-left:8px}.mega,.compact-drop{position:absolute;top:95px;background:#352039f5;backdrop-filter:blur(25px);border:1px solid #72536f;box-shadow:0 30px 60px #0005;border-radius:0 0 18px 18px;padding:26px;z-index:35}.mega{left:26%;right:5%;display:grid;grid-template-columns:1fr 1fr 180px;gap:28px}.mega a,.compact-drop a{display:block;padding:8px 0;font-size:14px}.mega a:hover,.compact-drop a:hover{color:var(--pink)}.mega small{color:#cc92bd;font-size:11px;letter-spacing:.1em;display:block;margin-bottom:12px}.menu-promo{background:#553653;border-radius:12px;position:relative;min-height:225px;overflow:hidden;text-align:center}.menu-promo img{height:155px;object-fit:contain;display:block;margin:auto}.menu-promo p{font:20px/1.3 var(--serif);margin:5px}.compact-drop{min-width:245px}.header-contact{border:1px solid #b17d9e;border-radius:30px;padding:11px 20px;font-size:14px}.header-contact:hover{background:#72455e}#mobile-menu{display:none}.hero{min-height:670px;max-width:1700px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;padding:70px 5% 55px;position:relative;isolation:isolate;background:radial-gradient(ellipse at 77% 43%,#66345b77,transparent 60%);gap:25px;overflow:hidden}.eyebrow{font-size:12px;letter-spacing:.13em;color:#d5a5c8;margin-bottom:28px}.hero-copy{position:relative;z-index:3;align-self:center;padding-bottom:40px}h1{font-size:clamp(60px,7vw,108px);letter-spacing:-.05em;line-height:1.03;margin-bottom:26px}h1 em{display:inline-block}.intro{max-width:410px;font-size:16px;color:var(--muted);line-height:1.85}.hero-actions{display:flex;gap:22px;flex-wrap:wrap;align-items:center;margin-top:29px}.primary,.outline{display:inline-flex;align-items:center;justify-content:center;gap:25px;border-radius:35px;padding:14px 23px;font-size:14px;min-height:52px;transition:transform .3s,background .3s}.primary{background:var(--pink);color:#30152c}.primary:hover{background:#ffc3d8;transform:translateY(-3px)}.outline{background:transparent;border:1px solid #96748f;color:var(--ink)}.outline:hover{background:#63435e}.text-link{font-size:13px;color:#ccb5c9;border-bottom:1px solid #76556d;padding-bottom:4px}.hero-meta{display:flex;gap:30px;margin-top:43px;font-size:11px;color:#b697ae}.hero-stage{position:relative;min-height:510px;perspective:1000px}.halo{position:absolute;inset:20px 5% 50px;border:1px solid #bc73935e;border-radius:50%;transform:rotate(-20deg);box-shadow:0 0 120px #cb75a920}.hero-frame{position:absolute;width:64%;left:4%;top:15px;height:410px;border:8px solid #62415d;border-radius:160px 160px 22px 22px;overflow:hidden;transform:rotate(-7deg) translateY(var(--drift,0px));box-shadow:10px 30px 50px #09070b66;background:#4b2c44;transition:transform .4s}.source-crop{position:relative;overflow:hidden;width:100%;background:#39263b;isolation:isolate}.source-crop img{position:absolute;max-width:none!important;width:var(--crop-width);height:auto;left:var(--crop-left);top:var(--crop-top);display:block}.hero-frame>.source-crop{height:100%}.hero-frame>.source-crop img{width:var(--crop-width);top:var(--crop-top)}.hero-mascot{position:absolute;right:-12%;bottom:-15px;width:68%;height:520px;object-fit:contain;filter:drop-shadow(0 22px 18px #0004);animation:float 5s ease-in-out infinite;pointer-events:none;z-index:3}.hero-caption{position:absolute;bottom:58px;left:0;border:1px solid #b992aa66;border-radius:14px;background:#3b253fc9;backdrop-filter:blur(20px);padding:16px 24px;z-index:4}.hero-caption small{display:block;font-size:10px;letter-spacing:.13em;color:#d5a9c5}.hero-caption strong{font:26px var(--serif)}.hero-bubble{position:absolute;top:35px;right:0;padding:14px 19px;border:1px solid #9e6d926e;border-radius:18px 18px 0 18px;background:#8b547449;backdrop-filter:blur(20px);font-size:13px;z-index:4;transform:rotate(4deg)}.botanical-left{position:absolute;bottom:-190px;left:-170px;width:460px;opacity:.5;transform:rotate(-38deg);z-index:-1;filter:blur(1px);pointer-events:none}.scroll-cue{position:absolute;bottom:20px;left:5%;font-size:10px;letter-spacing:.17em;color:#b08ba5;display:flex;gap:25px;align-items:center}.scroll-cue span{font-size:22px;color:var(--pink)}.ribbon{padding:14px 0;background:#753551;border-block:1px solid #a95f8070;overflow:hidden}.ribbon>div{display:flex;align-items:center;justify-content:space-around;gap:40px;white-space:nowrap;font:italic 22px var(--serif);color:#f5d3e2}.ribbon span{font:22px Arial;color:#d592b4}.section{padding:85px 5%}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:36px}.section-heading .eyebrow{margin-bottom:19px}h2{font-size:clamp(36px,4.2vw,62px);line-height:1.13;letter-spacing:-.035em;margin-bottom:0}.section-heading>p{font-size:15px;color:var(--muted);margin-bottom:5px;line-height:1.8}.catalog{background:linear-gradient(#211323,#28172b);max-width:1700px;margin:auto}.categories{display:flex;gap:9px;flex-wrap:wrap;padding:0 0 23px;border-bottom:1px solid var(--line)}.categories button{border-radius:28px;border:1px solid #6b4968;background:transparent;font-size:14px;padding:11px 20px}.categories button.active{background:#ddadc8;color:#30192c;border-color:#ddadc8}.categories button:hover:not(.active){background:#553350}.filter-bar{display:flex;align-items:center;gap:25px;padding:21px 0;border-bottom:1px solid var(--line);justify-content:space-between}.search{display:flex;align-items:center;gap:10px;max-width:310px;flex:1;min-width:180px}.search span{font-size:28px;color:#d3a2c3}.search input{background:none;border:0;width:100%;font-size:14px;min-width:0}.search input::placeholder{color:#987c96}.selects{display:flex;gap:18px}.selects label{font-size:11px;color:#ab88a3}.selects select{display:block;background:transparent;border:0;padding:7px 5px 7px 0;font-size:14px;color:var(--ink);max-width:165px}.selects option{background:#38243b;color:var(--ink)}.results{display:flex;align-items:center;gap:20px;padding:21px 0;color:#be9db5;font-size:12px}.results p{margin:0}.results>span{margin-left:auto}.results button{background:none;font-size:12px;text-decoration:underline}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 23px;perspective:1200px}.product{background:#332037;border:1px solid #67446170;border-radius:18px;text-align:left;padding:0;overflow:hidden;min-width:0;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,0px));transition:transform .4s,box-shadow .4s,border-color .4s;will-change:transform;position:relative}.product:hover,.product:focus-visible{--lift:-7px;border-color:#bf81a5;box-shadow:0 25px 60px #0c050b70}.product .source-crop{aspect-ratio:.72;border-radius:17px 17px 0 0}.product-photo{width:100%;height:100%;object-fit:contain}.product-gloss{position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,#ffffff12 48%,transparent 65%);opacity:0;transform:translateX(-50%);transition:opacity .5s,transform .8s;pointer-events:none}.product:hover .product-gloss{opacity:1;transform:translateX(30%)}.product-badge{position:absolute;top:15px;left:15px;z-index:2;background:#321e3c99;backdrop-filter:blur(14px);padding:5px 11px;border:1px solid #c895b43d;border-radius:20px;font-size:11px}.product-caption{padding:21px;position:relative}.product-caption h3{font-size:27px;line-height:1.2;letter-spacing:-.02em;margin:5px 0 10px}.product-caption small{font-size:11px;color:#bc98b2}.price-label{display:block;font-size:13px;color:#e7b7d0}.product-arrow{position:absolute;right:19px;bottom:21px;font-size:23px;line-height:1;border:1px solid #8e6580;border-radius:50%;width:33px;height:33px;display:grid;place-items:center;background:#442b43}.product-colors{display:flex;gap:5px;margin-top:15px}.swatch{width:9px;height:9px;border-radius:50%;border:1px solid #ffffff45;background:var(--swatch)}#more{display:flex;margin:35px auto 0}.collections{background:#462338}.collection-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.collection-card{background:linear-gradient(135deg,#66425b,#39233a);border:1px solid #a773925c;border-radius:20px;padding:29px;position:relative;transition:transform .4s,background .4s}.collection-card:hover{transform:translateY(-8px);background:#704060}.collection-card>span{font-size:12px;color:#cd8eaf}.collection-card h3{font-size:33px;margin:29px 0 10px}.collection-card p{color:#cbaaC1;font-size:14px}.collection-card b{position:absolute;right:25px;bottom:23px;font-weight:400;font-size:24px}.mascot-story{display:grid;grid-template-columns:1fr 1.25fr;align-items:center;gap:60px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 20% 60%,#624059,#2b192d 60%);padding-block:45px;min-height:560px}.story-character{height:500px;position:relative;z-index:2;text-align:center}.story-character img{height:100%;object-fit:contain;transform:translateY(var(--story-shift,0px)) rotate(var(--story-rotate,0deg));transition:transform .5s}.story-copy{max-width:540px;position:relative;z-index:2}.story-copy>p:not(.eyebrow){color:#cfb6c9;margin:25px 0}.story-note{display:block;margin-top:17px;font-size:13px;color:#bf91af}.story-botanical{position:absolute;right:-200px;bottom:-170px;width:570px;opacity:.45;filter:blur(3px);pointer-events:none}.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:65px;background:#301c32;align-items:center}.contact-copy h2{font-size:48px;margin-bottom:35px}.contact-row{display:flex;gap:25px;border-top:1px solid var(--line);padding:18px 0}.contact-row>span{font-size:10px;letter-spacing:.12em;color:#be8daa;min-width:68px;padding-top:5px}.contact-row p{font-size:16px;margin:0}.contact-row small{font-size:13px;color:#b594ad}.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.map-shell{height:510px;position:relative;border:1px solid #765171;border-radius:24px;overflow:hidden;box-shadow:0 35px 70px #160b1660}#map{position:absolute;inset:0;background:#52374e}#map-fallback{position:absolute;inset:0;display:grid;place-content:center;text-align:center;background:radial-gradient(#6b4660,#322137);z-index:1}#map-fallback h3{font-size:33px}#map-fallback a{color:var(--pink);text-decoration:underline}.map-top{position:absolute;top:12px;left:12px;right:12px;display:flex;gap:7px;align-items:center;background:#29172bc9;backdrop-filter:blur(15px);border-radius:14px;padding:9px 12px;z-index:3}.map-top>span{font-size:10px;margin-right:auto}.map-top button{background:#7c546977;border-radius:20px;padding:7px 10px;font-size:11px}.map-note{position:absolute;bottom:40px;left:14px;right:14px;background:#29172bdb;backdrop-filter:blur(14px);border-radius:12px;padding:11px 14px;font-size:11px;z-index:3;pointer-events:none}.maplibregl-ctrl-top-right{top:68px!important}.maplibregl-popup-content{color:#321e32;padding:14px!important;font:13px/1.6 Arial}.map-marker{background:#e787b0;border:4px solid #fff;width:24px;height:24px;border-radius:50%;box-shadow:0 0 0 7px #cb6a9b50}footer{padding:50px 5% 22px;background:#190f1b}.footer-main{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding-bottom:40px}.footer-main .brand{align-self:start}.footer-main>div small{display:block;color:#d5a1c3;font-size:10px;letter-spacing:.1em;margin-bottom:13px}.footer-main>div a{display:block;font-size:13px;color:#b89db0;margin:8px 0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;font-size:11px;color:#ac879f}.footer-bottom button{background:none;font-size:11px}.floating-assistant{position:fixed;right:10px;bottom:0;z-index:25;display:flex;align-items:center;pointer-events:none;opacity:0;transform:translateY(120px) rotate(8deg);transition:opacity .35s,transform .65s cubic-bezier(.2,.85,.2,1);max-width:430px}.floating-assistant.visible{opacity:1;transform:translateY(0) rotate(0)}.floating-assistant img{height:210px;width:140px;object-fit:contain}.floating-assistant>div{background:#6e415be8;backdrop-filter:blur(18px);border:1px solid #d296b3;border-radius:18px 18px 0 18px;padding:14px 17px;box-shadow:0 10px 50px #0004;max-width:240px}.floating-assistant strong{font:22px var(--serif)}.floating-assistant p{font-size:12px;margin:6px 0 0;color:#f6d5e5}dialog{background:#332037;color:var(--ink);border:1px solid #875d7b;border-radius:22px;width:min(980px,94vw);max-height:92dvh;padding:0;overflow:auto}dialog[open]{display:grid;grid-template-columns:1fr 1fr}dialog::backdrop{background:#120713c9;backdrop-filter:blur(18px)}.close{position:absolute;right:15px;top:15px;width:39px;height:39px;border-radius:50%;background:#27162bd9;border:1px solid #b889a4;font-size:26px;z-index:4}.detail-photo{background:#281a2e;display:grid;place-items:center;min-width:0}.detail-photo .source-crop{width:100%;align-self:center}.detail-photo .source-crop img{width:var(--crop-width);left:var(--crop-left);top:var(--crop-top)}.detail-copy{padding:55px 31px 15px}.detail-copy .eyebrow{font-size:11px;margin-bottom:14px}.detail-copy h2{font-size:40px}.negotiated{color:#f3b7d1;font-size:18px;margin:18px 0}.detail-copy>p:not(.negotiated){font-size:14px;color:#c4a5bb}.detail-copy dl{font-size:14px}.detail-copy dl>div{padding:13px 0;border-top:1px solid var(--line)}dt{font-size:11px;color:#bb8fa9;margin-bottom:7px}dd{margin:0}.detail-copy .primary{width:100%;font-size:13px}.copy-choice{display:block;background:none;text-decoration:underline;color:#d9adca;font-size:13px;padding:15px 0}.detail-mascot{display:flex;align-items:center}.detail-mascot img{height:140px;width:100px;object-fit:contain}.detail-mascot p{font:19px/1.5 var(--serif);color:#d7abc5}#copy-status{font-size:12px;white-space:pre-line}.modal-open{overflow:hidden}.empty{text-align:center;border:1px solid var(--line);padding:50px}.empty h3{font-size:32px}.skip{position:fixed;top:-100px;z-index:99;background:#e4a0c2;color:#291328;padding:15px}.skip:focus{top:10px}.reveal{transition:opacity .9s,transform .9s,filter .9s}.reveal.pending{opacity:0;transform:translateY(40px) rotate(1deg);filter:blur(9px)}@keyframes float{50%{transform:translateY(-12px) rotate(2deg)}}[hidden]{display:none!important}.motion-off *, .motion-off *:before{animation:none!important;transition:none!important}.motion-off .reveal.pending{opacity:1;transform:none;filter:none}.motion-off .product{transform:none}@media(max-width:1100px){header{gap:15px;padding-inline:4%}.brand img{width:165px}nav{gap:17px;font-size:13px}.header-contact{padding:9px 13px;font-size:13px}.hero{padding:45px 4% 50px;min-height:620px}.hero-stage{min-height:490px}.hero-mascot{height:455px;right:-15%;width:75%}.hero-frame{height:370px;width:72%}.hero-bubble{right:-5px;font-size:12px;top:0}.hero-caption{padding:13px;bottom:40px}.hero-caption strong{font-size:23px}.hero-meta{gap:15px;font-size:10px}.section{padding:65px 4%}.selects{gap:10px}.selects select{max-width:130px;font-size:13px}.product-caption{padding:16px}.product-caption h3{font-size:25px}.price-label{font-size:11px}.contact{gap:30px}.contact-copy h2{font-size:39px}.map-shell{height:480px}.story-character{height:420px}.mascot-story{gap:25px}.mega{left:15%;right:4%;grid-template-columns:1fr 1fr 140px}.collection-card h3{font-size:28px}.floating-assistant img{height:180px;width:120px}}@media(max-width:740px){html{scroll-padding-top:86px}header{height:80px;padding-inline:5%;gap:10px}.brand img{width:165px;height:61px}.header-contact{margin-left:auto;font-size:12px;padding:8px 12px}#mobile-menu{display:block;background:none;font-size:25px;padding:0 3px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:#2c192fec;padding:15px 6% 25px;border-bottom:1px solid #7c5170;max-height:80dvh;overflow:auto;backdrop-filter:blur(25px)}nav.open{display:block}nav>a{display:block;padding:13px 0;font-size:16px}.nav-drop summary{padding:13px 0;font-size:16px}.mega,.compact-drop{position:static;box-shadow:none;background:#412743;border:0;border-radius:12px;padding:18px;margin-bottom:10px}.mega{grid-template-columns:1fr 1fr;gap:20px}.menu-promo{display:none}.mega a,.compact-drop a{font-size:13px}.hero{display:flex;flex-direction:column;padding:35px 6% 50px;gap:10px}.hero-copy{padding-bottom:0;align-self:stretch}.eyebrow{font-size:10px;margin-bottom:22px}h1{font-size:70px;line-height:1.02;margin-bottom:23px}.intro{font-size:15px;margin-bottom:0}.hero-actions{margin-top:24px;gap:15px}.primary,.outline{font-size:13px;padding:13px 19px;min-height:48px}.text-link{font-size:12px}.hero-meta{margin-top:25px;flex-wrap:wrap;font-size:10px}.hero-stage{min-height:410px;margin-top:15px}.hero-frame{width:65%;height:340px;top:10px;left:5%;border-width:5px}.hero-mascot{height:390px;bottom:-10px;right:-12%;width:70%}.hero-caption{left:0;bottom:25px;padding:12px 16px;max-width:68%}.hero-caption strong{font-size:22px}.hero-caption small{font-size:9px}.hero-bubble{font-size:11px;padding:10px;top:5px;right:-4%;border-radius:12px}.halo{inset:20px 0 40px}.botanical-left{width:270px;left:-140px;bottom:-50px}.scroll-cue{left:6%;bottom:13px;font-size:9px}.ribbon>div{justify-content:flex-start;font-size:19px;gap:30px;animation:ribbon 25s linear infinite;width:max-content;padding-left:20px}.section{padding:48px 6%}.section-heading{display:block;margin-bottom:26px}h2{font-size:41px}.section-heading>p{margin:20px 0 0;font-size:14px}.categories{flex-wrap:nowrap;overflow:auto;scrollbar-width:thin;margin-right:-6vw;padding-right:6vw;gap:7px}.categories button{white-space:nowrap;font-size:13px;padding:10px 16px}.filter-bar{display:block;padding:16px 0}.search{max-width:none;padding-bottom:14px}.search input{font-size:16px}.selects{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);padding-top:14px;gap:10px 18px}.selects label{font-size:12px}.selects select{max-width:none;width:100%;font-size:14px}.results{font-size:11px;flex-wrap:wrap;gap:9px}.results>span{font-size:10px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 11px}.product{border-radius:12px}.product .source-crop{border-radius:12px 12px 0 0}.product-badge{font-size:9px;padding:3px 7px;top:8px;left:8px}.product-caption{padding:12px 10px}.product-caption h3{font-size:22px;margin:4px 0 8px}.product-caption small{font-size:10px}.price-label{font-size:11px;padding-right:0;line-height:1.5}.product-arrow{display:none}.product-colors{margin-top:10px}.swatch{width:8px;height:8px}.collection-cards{display:block}.collection-card{display:block;margin-bottom:14px;padding:22px}.collection-card h3{font-size:30px;margin:13px 0 8px}.collection-card p{margin-bottom:0}.mascot-story{display:flex;flex-direction:column;gap:10px;padding-top:25px}.story-character{height:320px;width:100%}.story-copy h2{font-size:40px}.story-copy>p:not(.eyebrow){font-size:15px}.story-botanical{width:350px;right:-180px;bottom:0}.contact{display:block}.contact-copy h2{font-size:38px}.contact-row{gap:18px}.contact-row p{font-size:15px}.contact-actions{margin-bottom:30px}.map-shell{height:400px;border-radius:17px}.map-top{left:8px;right:8px;gap:5px;padding:8px}.map-top>span{font-size:8px}.map-top button{font-size:10px;padding:6px}.map-note{font-size:10px;left:10px;right:10px}.footer-main{grid-template-columns:1fr 1fr;gap:25px 20px}.footer-main .brand{grid-column:1/-1}.footer-main>div a{font-size:13px}.footer-bottom{display:grid;grid-template-columns:1fr 1fr;font-size:10px}.floating-assistant{display:none}dialog[open]{display:block}.detail-photo{min-height:0;max-height:none;padding:15px}.detail-photo .source-crop{max-width:300px}.detail-copy{padding:24px}.detail-copy h2{font-size:36px}.detail-mascot img{height:110px}.detail-mascot p{font-size:18px}.close{position:sticky;display:block;margin:10px 10px -49px auto;top:10px;right:auto}.negotiated{font-size:16px}@keyframes ribbon{to{transform:translateX(-150px)}}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before{animation:none!important;transition:none!important}.reveal.pending{opacity:1;transform:none;filter:none}.product,.hero-frame,.story-character img{transform:none!important}}
/* Animated canvases retain the exact dimensions of the approved mascot placements. */
.character-canvas{object-fit:contain;max-width:100%;vertical-align:middle}
.brand .logo-canvas{width:205px;height:72px;object-fit:contain}
.menu-promo .mascot-canvas{height:155px;width:104px;object-fit:contain;display:block;margin:auto}
.story-character .mascot-canvas{height:100%;width:auto;object-fit:contain;transform:translateY(var(--story-shift,0px)) rotate(var(--story-rotate,0deg));transition:transform .5s}
.floating-assistant .mascot-canvas{height:210px;width:140px;object-fit:contain}
.detail-mascot .mascot-canvas{height:140px;width:100px;object-fit:contain}
.source-crop.clean-product{aspect-ratio:4/5!important;background:radial-gradient(ellipse at 50% 60%,#64425c33,#302034 80%)}
.source-crop.clean-product>.product-photo{position:absolute;inset:0;max-width:100%!important;width:100%;height:100%;object-fit:contain;display:block;transform:none!important}
.hero-frame>.source-crop.clean-product{height:100%;aspect-ratio:auto!important}
.hero-frame>.source-crop.clean-product>.product-photo{width:100%;height:100%;object-fit:contain}
.detail-photo>.source-crop.clean-product{aspect-ratio:4/5!important}
.selects select:disabled{opacity:.45}.selects option:disabled{color:#988294}
@media(max-width:1100px){.brand .logo-canvas{width:165px}.floating-assistant .mascot-canvas{height:180px;width:120px}}
@media(max-width:740px){.brand .logo-canvas{width:165px;height:61px}.detail-mascot .mascot-canvas{height:110px}.detail-photo>.source-crop.clean-product{max-width:100%;max-height:440px}}
@media(prefers-reduced-motion:reduce){.story-character .mascot-canvas{transform:none!important}}

/* The guide accompanies the active bouquet, without intercepting clicks. */
.floating-assistant{right:auto;bottom:auto;left:0;top:0;width:230px;height:348px;max-width:none;display:block;transform:translate(32px,10px) scale(.96);transition:opacity .25s,transform .55s cubic-bezier(.2,.85,.2,1);filter:drop-shadow(0 16px 16px #16091466)}
.floating-assistant.visible{transform:translate(0,0) scale(1)}
.floating-assistant>div{display:none}
.floating-assistant img,.floating-assistant .mascot-canvas{width:230px;height:348px;max-width:none;transform-origin:50% 95%}
.floating-assistant.visible img,.floating-assistant.visible .mascot-canvas{animation:guide-breathe 4.5s ease-in-out infinite}
@keyframes guide-breathe{50%{transform:translateY(-2px) rotate(.4deg)}}
@media(max-width:1100px){.floating-assistant{width:195px;height:295px}.floating-assistant img,.floating-assistant .mascot-canvas{width:195px;height:295px}}
@media(max-width:740px){
 .floating-assistant{display:block;width:118px;height:178px;transform:translate(14px,6px) scale(.96)}
 .floating-assistant img,.floating-assistant .mascot-canvas{width:118px;height:178px}
 .floating-assistant.visible{transform:translate(0,0) scale(1)}
 .detail-mascot .mascot-canvas{width:128px;height:158px}
 }

/* Keep the category chevron centered with its label and give it a quiet, branded hover state. */
.nav-drop>summary{display:inline-flex;align-items:center;gap:10px;line-height:1.2}
.nav-drop>summary span{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:0;border:1px solid #b17d9e;border-radius:50%;font-size:0;line-height:1;color:#f9edf3;transform:translateY(0);transition:transform .3s ease,background .3s ease,border-color .3s ease,color .3s ease}
.nav-drop>summary span::before{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .3s ease}
.nav-drop>summary:hover span{background:#6e415b;border-color:#f39bbd}
.nav-drop[open]>summary span{background:#f39bbd;color:#30152c;border-color:#f39bbd}
.nav-drop[open]>summary span::before{transform:translateY(2px) rotate(225deg)}
@media(max-width:740px){.nav-drop>summary{justify-content:flex-start;gap:12px}.nav-drop>summary span{width:24px;height:24px}}
