@font-face{font-family:Bodoni;src:url('assets/fonts/bodoni-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--paper:#faf8f3;--ink:#4e233d;--muted:#725c68;--pink:#efdde6;--line:#d9ccd1;--sans:Manrope,Arial,sans-serif;--serif:Bodoni,'Bodoni MT',Didot,Georgia,serif;--mouse-x:0;--mouse-y:0;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button,a,summary,input,select,textarea{-webkit-tap-highlight-color:transparent}button{border:0}button:disabled{cursor:default}img{display:block;max-width:100%;height:auto}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #a14971;outline-offset:6px}::selection{color:var(--paper);background:var(--ink)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:clamp(45px,5.1vw,74px);line-height:1.06;letter-spacing:-.055em}h2 em,h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.065em}h3{font-size:34px;line-height:1.2;letter-spacing:-.045em}button{background:transparent}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:600;line-height:1.5}.skip-link{position:fixed;z-index:100;left:20px;top:-80px;padding:12px;background:var(--ink);color:white}.skip-link:focus{top:12px}.announcement{height:33px;background:var(--ink);color:#f7e5ed;display:flex;justify-content:space-between;align-items:center;padding:0 4.5%;font-size:12px;letter-spacing:.17em}.header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;background:var(--paper);position:relative;z-index:5;border-bottom:1px solid var(--line)}.wordmark{font-family:var(--serif);font-size:35px;line-height:1;letter-spacing:-.075em;display:inline-flex;align-items:center;gap:13px}.wordmark-star{font-size:27px;display:inline-block}.header nav{display:flex;gap:38px;font-size:14px}.header nav a{position:relative}.header nav a:after{content:'';position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--ink);transition:width .25s}.header nav a:hover:after{width:100%}.button{display:inline-flex;align-items:center;justify-content:center;min-height:53px;border-radius:50px;padding:15px 28px;background:var(--ink);color:var(--paper);font-size:14px;line-height:1.5;border:1px solid var(--ink);transition:background .2s,box-shadow .2s,transform .2s}.button:hover{background:#713b59;transform:translateY(-2px);box-shadow:0 7px 18px #4e233d1a}.button-small{min-height:45px;padding:11px 23px;font-size:13px}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.mobile-nav{padding:20px 6%;display:flex;flex-direction:column;gap:18px;border-bottom:1px solid var(--line)}
.hero{position:relative;display:grid;grid-template-columns:46% 54%;min-height:740px;max-height:1050px;height:calc(100svh - 129px);padding:0 4.5%;isolation:isolate;overflow:hidden}.hero-copy{z-index:2;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;padding:28px 0 83px}.hero-copy .eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:28px}.short-line{width:25px;height:1px;background:var(--ink)}h1{font-size:clamp(80px,8.6vw,140px);line-height:.96;letter-spacing:-.067em;margin-left:-5px}h1 em{color:#8b4a68;line-height:1.1;display:inline-block;margin-top:1px}.hero-description{font-size:16px;line-height:1.85;margin:23px 0 25px;color:var(--muted)}.hero-note{position:absolute;left:37%;bottom:100px;display:flex;align-items:center;gap:13px;font-size:12px;line-height:1.55;transform:rotate(-7deg);color:#8a5971}.small-star{font-size:32px}.hero-art{position:relative;min-width:0;perspective:1100px;--mx:0;--my:0;align-self:stretch;margin-top:0;transform-style:preserve-3d}.hero-glow{position:absolute;width:94%;height:83%;top:5%;left:0;border-radius:50%;background:radial-gradient(ellipse at 50% 45%,#e8c9da 0%,#efdee6 36%,#f5eceb80 63%,#faf8f300 74%);transform:translate(calc(var(--mx)*-10px),calc(var(--my)*-8px));pointer-events:none}.bouquet-stage{position:absolute;inset:-1% -4% 7% -4%;transform-style:preserve-3d;transform:rotateX(calc(var(--my)*-7deg)) rotateY(calc(var(--mx)*10deg));will-change:transform}.hero-bouquet{width:100%;height:100%;object-fit:contain;filter:drop-shadow(12px 32px 19px #58243b18);transform:translate3d(calc(var(--mx)*16px),calc(var(--my)*12px),50px) rotate(-6deg);animation:float-bouquet 7s ease-in-out infinite}.orbit{position:absolute;border:1px solid #a5779133;border-radius:50%;pointer-events:none;top:14%;left:-7%;width:105%;height:64%;transform:rotate(-25deg) rotateY(calc(var(--mx)*14deg)) rotateX(calc(var(--my)*8deg))}.orbit-two{width:69%;height:79%;top:5%;left:15%;transform:rotate(29deg) rotateY(calc(var(--mx)*-14deg));border-color:#a577911c}.art-overline{position:absolute;top:38px;right:34px;letter-spacing:.18em;font-size:12px;color:#8f697e;z-index:2}.art-side{position:absolute;right:-43px;top:48%;font-size:12px;letter-spacing:.22em;writing-mode:vertical-rl}.floating-label{position:absolute;right:5%;bottom:15%;border-top:1px solid #a9879870;padding:13px 15px 0 0;transform:translate(calc(var(--mx)*-13px),calc(var(--my)*-9px));display:flex;flex-direction:column;gap:5px;z-index:2}.floating-label>span:first-child{font-size:12px;letter-spacing:.15em}.floating-label strong{font-family:var(--serif);font-size:32px;font-weight:400;letter-spacing:-.04em}.floating-label>span:last-child{font-size:12px;color:var(--muted)}.art-bottom{position:absolute;bottom:80px;left:14%;right:0;display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--muted)}.pointer-hint{font-size:12px;letter-spacing:.025em;display:flex;gap:8px;align-items:center}.pointer-hint>span{font-size:22px}.motion-toggle{font-size:12px;display:flex;gap:8px;align-items:center;min-height:44px}.pause-icon{font-size:14px}.hero-bottom{position:absolute;bottom:0;left:4.5%;right:4.5%;height:60px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:.12em}.hero-bottom a{display:flex;align-items:center;gap:15px}.scroll-line{height:21px;width:1px;background:var(--ink);display:inline-block}.promise-strip{min-height:83px;background:var(--pink);display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 4.5%;font-size:13px}.promise-strip>span:nth-child(even){font-size:24px;color:#9b6a85}
.section-wrap{padding:110px 8%}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:50px}.section-heading .eyebrow{margin-bottom:24px}.section-heading>p{font-size:15px;color:var(--muted);line-height:1.8;padding-bottom:7px}.collection-grid{display:grid;grid-template-columns:1fr 1fr;gap:6%}.flower-card-offset{padding-top:88px}.flower-image{width:100%;aspect-ratio:1/.98;overflow:hidden;position:relative;display:block;border-radius:2px;padding:0;transform-style:preserve-3d;will-change:transform;transition:box-shadow .35s}.blush-card{background:#f0e2e8}.butter-card{background:#e8e2c7}.flower-image img{height:100%;width:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.blush-card img{object-fit:contain;padding:10px;transform:rotate(-9deg) scale(1.08)}.flower-image:hover img{transform:scale(1.045)}.blush-card:hover img{transform:rotate(-6deg) scale(1.13)}.card-badge{position:absolute;top:24px;left:25px;font-size:12px;letter-spacing:.15em;z-index:2}.round-action{position:absolute;bottom:21px;right:23px;width:43px;height:43px;border-radius:50%;border:1px solid #694a6260;display:grid;place-items:center;font-size:26px;background:#faf8f375;backdrop-filter:blur(8px)}.card-info{padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:15px}.card-info p{font-size:13px;color:var(--muted);margin-top:6px}.price-button{font-size:13px;border-bottom:1px solid #ad8c9d;padding:7px 0;white-space:nowrap}.collection-footnote{font-size:12px;color:var(--muted);text-align:center;margin-top:40px}.manifesto{position:relative;text-align:center;padding:93px 20px 100px;background:#eee7ed;overflow:hidden}.manifesto .eyebrow{margin-bottom:28px}.manifesto h2{font-size:clamp(36px,4.3vw,66px);line-height:1.22}.manifesto-star{display:block;font-size:36px;margin-top:30px;line-height:1;color:#9b6e88;animation:turn-star 35s linear infinite}.world{display:grid;grid-template-columns:54% 46%;align-items:center;padding-left:4.5%;padding-right:8%;gap:0}.world-image{position:relative;aspect-ratio:1/1.13;overflow:hidden}.world-image img{width:100%;height:100%;object-fit:cover}.image-caption{position:absolute;left:25px;bottom:25px;font-size:12px;letter-spacing:.17em;color:#fff5ed}.world-copy{padding-left:18%}.world-copy .eyebrow{margin-bottom:28px}.world-copy h2{font-size:clamp(42px,4.5vw,67px);margin-bottom:30px}.world-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);margin-bottom:20px}.underlined-link{padding:0 0 7px;border-bottom:1px solid #a17c91;display:inline-block;font-size:14px;margin-top:12px;transition:color .2s}.underlined-link:hover{color:#a14f79}.world-signature{display:block;font-family:Georgia,serif;font-style:italic;font-size:20px;transform:rotate(-4deg);margin:39px 0 0;color:#98738a}.rituals{padding-top:30px}.ritual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7%;border-top:1px solid var(--line)}.ritual{padding-top:29px}.ritual-number{display:block;font-size:12px;letter-spacing:.12em;margin-bottom:31px;color:#947285}.ritual h3{font-size:35px;margin-bottom:18px}.ritual p{font-size:14px;color:var(--muted);line-height:1.9;min-height:106px}.ritual .underlined-link{font-size:13px;margin-top:22px}.details{background:#f2eeeb;display:grid;grid-template-columns:42% 58%;gap:0;padding-top:90px;padding-bottom:105px}.details-title .eyebrow{margin-bottom:25px}.details-title>p:last-child{margin-top:25px;font-size:14px;color:var(--muted)}.faq-list{padding-top:4px}.faq-list details{border-bottom:1px solid #cfc0c8}.faq-list details:first-child{border-top:1px solid #cfc0c8}.faq-list summary{cursor:pointer;list-style:none;padding:24px 0;font-size:15px;display:flex;align-items:center;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:23px;line-height:1;transition:transform .25s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{padding:0 32px 27px 0;color:var(--muted);font-size:14px;line-height:1.85}.closing{text-align:center;background:var(--ink);color:#f6e6eb;padding:90px 8% 0;position:relative;overflow:hidden}.closing>.eyebrow{color:#d2aeba;margin-bottom:34px}.closing h2{font-size:clamp(68px,9.3vw,143px);line-height:1.05}.button-light{background:#f5e9ec;border-color:#f5e9ec;color:var(--ink);margin-top:40px;padding-left:34px;padding-right:34px}.button-light:hover{background:#fff7fa}.closing-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f6e6eb33;margin-top:75px;min-height:85px;font-size:12px;letter-spacing:.18em;color:#d2aeba}.closing-star{font-size:29px}.closing:after,.closing:before{content:'';position:absolute;pointer-events:none;border:1px solid #f6e6eb14;width:550px;height:550px;border-radius:50%;top:45px;left:-260px}.closing:after{left:auto;right:-260px;top:100px}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:45px 4.5%;background:var(--paper)}footer p{font-size:12px;line-height:1.8;color:var(--muted)}footer>span{font-size:12px;letter-spacing:.1em;line-height:1.9;text-align:right}footer strong{font-weight:600}
dialog{border:0;padding:0;background:var(--paper);color:var(--ink);max-width:920px;width:calc(100% - 40px);max-height:90svh;overflow:auto;border-radius:3px;box-shadow:0 30px 100px #28112050}dialog[open]{display:grid;grid-template-columns:44% 56%}dialog::backdrop{background:#26121ec9;backdrop-filter:blur(9px)}.dialog-close{position:absolute;right:15px;top:10px;font-size:32px;line-height:1;width:44px;height:44px;z-index:3}.builder-visual{background:#ead6e1;display:flex;flex-direction:column;justify-content:center;position:relative;min-height:650px;overflow:hidden}.builder-visual>img{width:100%;height:65%;max-height:480px;object-fit:contain;transform:rotate(-7deg)}.builder-visual[data-palette=butter]>img{object-fit:cover;transform:none;height:66%}.builder-visual>div{text-align:center;padding:20px}.builder-visual h3{font-size:40px;margin-top:10px}.builder-visual p{font-size:15px;margin-top:8px}.builder-form{padding:43px 40px 27px;display:flex;flex-direction:column;align-items:stretch}.builder-form h2{font-size:49px;margin:14px 0 25px}.builder-form .eyebrow{font-size:12px}.builder-form fieldset{padding:0;border:0;margin:0 0 19px}.builder-form legend,.field-label{font-size:12px;font-weight:600;margin-bottom:9px;display:block}.field-label span{font-weight:400;color:var(--muted)}.palette-options{display:flex;gap:10px}.palette-option{display:flex;align-items:center;gap:7px;border:1px solid var(--line);padding:10px;flex:1;cursor:pointer;font-size:12px}.palette-option:has(input:checked){border-color:var(--ink);background:#eee4e8}.palette-option input{position:absolute;opacity:0;width:1px;height:1px}.palette-option:has(input:focus-visible){outline:2px solid #a14971;outline-offset:3px}.swatch{width:17px;height:17px;border-radius:50%;flex-shrink:0}.blush-swatch{background:#b8668c}.butter-swatch{background:#d4bd66}.builder-form select,.builder-form textarea{width:100%;background:transparent;border:1px solid var(--line);border-radius:0;min-height:42px;padding:9px 12px;font-size:13px;margin-bottom:17px}.builder-form textarea{resize:vertical;min-height:66px}.save-note{width:100%;margin-top:2px}.builder-disclaimer{font-size:12px;color:var(--muted);margin-top:12px;text-align:center}.save-status{min-height:18px;text-align:center;font-size:12px;margin-top:5px}.reveal{opacity:1;transform:none}.js-reveal .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}.js-reveal .reveal.visible{opacity:1;transform:translateY(0)}.motion-paused .hero-bouquet,.motion-paused .manifesto-star{animation-play-state:paused}.motion-paused .bouquet-stage,.motion-paused .hero-glow,.motion-paused .orbit,.motion-paused .floating-label{--mx:0!important;--my:0!important}.motion-paused .reveal{opacity:1;transform:none;transition:none}
@keyframes float-bouquet{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -13px;rotate:1deg}}@keyframes turn-star{to{transform:rotate(360deg)}}
@media(min-width:1600px){.hero{padding-left:max(4.5%,calc((100vw - 1550px)/2));padding-right:max(4.5%,calc((100vw - 1550px)/2))}.section-wrap{padding-left:max(8%,calc((100vw - 1350px)/2));padding-right:max(8%,calc((100vw - 1350px)/2))}}
@media(max-width:1100px){.hero{min-height:720px}.hero-copy .eyebrow{font-size:12px}.hero-note{left:35%;font-size:12px;bottom:98px}.hero-art{margin-left:-15px}.header nav{gap:23px}.art-bottom{left:5%;bottom:78px}.pointer-hint{font-size:12px}.motion-label{display:none}.floating-label{right:3%;bottom:18%}.art-side{right:-25px}.section-wrap{padding-left:6%;padding-right:6%}.world-copy{padding-left:12%}.world-copy>p:not(.eyebrow){font-size:14px}.world-copy h2{font-size:48px}.ritual-grid{gap:5%}.ritual h3{font-size:30px}.card-info h3{font-size:30px}}
@media(max-width:760px){html{scroll-padding-top:24px}.announcement{height:29px;font-size:12px;padding:0 6%}.announcement>span:last-child{display:none}.announcement{justify-content:center}.header{height:77px;padding:0 6%}.wordmark{font-size:30px;gap:9px}.wordmark-star{font-size:23px}.header nav,.header>.button{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;padding:8px}.menu-toggle span{height:1px;width:27px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav{font-size:15px}.mobile-nav button{text-align:left;padding:0}.hero{height:auto;max-height:none;min-height:0;display:block;padding:0 6%;overflow:hidden}.hero-copy{padding:40px 0 0;position:relative;z-index:2;pointer-events:none}.hero-copy a{pointer-events:auto}.hero-copy .eyebrow{font-size:12px;margin-bottom:22px;gap:9px}.short-line{width:19px}h1{font-size:clamp(67px,15.7vw,118px);line-height:.98;max-width:85%;margin-left:-2px}.hero-description{font-size:13px;margin:20px 0 20px;line-height:1.8}.hero-copy>.button{font-size:12px;padding:13px 22px;min-height:47px}.hero-note{display:none}.hero-art{height:490px;margin:-37px -6% 0 5%;width:103%;perspective:900px}.bouquet-stage{inset:-1% -7% 6% -7%}.hero-glow{top:0;height:95%;width:95%;left:2%}.hero-bouquet{transform:translate3d(calc(var(--mx)*10px),calc(var(--my)*8px),20px) rotate(6deg)}.orbit{top:12%;height:70%;width:110%;left:-5%}.orbit-two{height:85%;width:70%;top:0;left:20%}.art-overline{display:none}.floating-label{right:9%;bottom:10%;padding:10px 0 0;background:#faf8f330;backdrop-filter:blur(3px)}.floating-label strong{font-size:27px}.floating-label>span:first-child{font-size:12px}.floating-label>span:last-child{font-size:12px}.art-bottom{bottom:0;left:0;right:10%;height:44px}.art-side{right:4%;top:23%;font-size:12px}.hero-bottom{position:static;height:70px;margin-top:13px;font-size:12px;gap:20px}.hero-bottom>span{max-width:150px}.hero-bottom a{font-size:12px;gap:9px}.promise-strip{display:grid;grid-template-columns:1fr 22px 1fr;text-align:center;padding:22px 6%;gap:16px 10px;font-size:12px;line-height:1.7}.promise-strip>span:nth-child(4){display:none}.promise-strip>span:nth-child(even){font-size:20px}.section-wrap{padding:70px 6%}.section-heading{display:block;margin-bottom:32px}.section-heading .eyebrow{font-size:12px;margin-bottom:20px}.section-heading h2{font-size:47px}.section-heading>p{font-size:13px;margin-top:22px;line-height:1.75}.collection-grid{gap:36px;grid-template-columns:1fr}.flower-card-offset{padding-top:0}.flower-image{aspect-ratio:1/1.02}.card-info{padding:17px 0 0}.card-info h3{font-size:31px}.card-info p,.price-button{font-size:12px}.card-badge{font-size:12px;left:20px;top:21px}.collection-footnote{font-size:12px;line-height:1.85;margin-top:30px;padding:0 10px}.manifesto{padding:65px 6%}.manifesto .eyebrow{font-size:12px;margin-bottom:22px}.manifesto h2{font-size:33px;line-height:1.25}.manifesto-star{font-size:29px;margin-top:25px}.world{display:block;padding:60px 6% 65px}.world-image{aspect-ratio:1/1.04}.world-copy{padding:39px 0 0}.world-copy .eyebrow{font-size:12px;margin-bottom:19px}.world-copy h2{font-size:48px;margin-bottom:24px}.world-copy>p:not(.eyebrow){font-size:14px}.world-signature{font-size:19px;margin-top:25px}.rituals{padding-top:10px}.ritual-grid{grid-template-columns:1fr;gap:0}.ritual{padding:25px 0 31px;border-bottom:1px solid var(--line)}.ritual-number{margin-bottom:14px;font-size:12px}.ritual h3{font-size:33px;margin-bottom:11px}.ritual p{font-size:13px;min-height:0;max-width:360px}.ritual .underlined-link{margin-top:16px}.details{display:block;padding-top:60px;padding-bottom:65px}.details-title .eyebrow{font-size:12px;margin-bottom:18px}.details-title h2{font-size:48px}.details-title>p:last-child{font-size:13px;margin-top:19px}.faq-list{margin-top:30px}.faq-list summary{font-size:13px;padding:23px 0}.faq-list details p{font-size:13px;padding-right:12px}.closing{padding:65px 6% 0}.closing>.eyebrow{font-size:12px;margin-bottom:26px}.closing h2{font-size:68px}.button-light{margin-top:30px}.closing-bottom{margin-top:50px;min-height:75px;font-size:12px;letter-spacing:.11em}.closing-star{font-size:23px}footer{display:grid;grid-template-columns:1fr 1fr;padding:35px 6%;gap:24px 15px}footer>.wordmark{grid-column:1/-1}footer>p{font-size:12px}footer>span{font-size:12px}dialog{width:calc(100% - 24px);max-height:94svh}dialog[open]{display:block}.builder-visual{min-height:0;height:190px;display:flex;flex-direction:row;align-items:center;justify-content:flex-start}.builder-visual>img{height:190px;width:48%;object-fit:contain}.builder-visual[data-palette=butter]>img{height:100%;object-fit:cover}.builder-visual>div{padding:15px}.builder-visual h3{font-size:31px}.builder-visual p{font-size:14px}.builder-visual .eyebrow{font-size:12px}.builder-form{padding:27px 24px 22px}.builder-form h2{font-size:43px;margin:12px 0 23px}.dialog-close{top:8px;right:8px;background:#faf8f3c7;border-radius:50%}.builder-form .eyebrow{font-size:12px}.palette-option{font-size:12px;padding:10px 7px}.builder-form select,.builder-form textarea{font-size:16px}.builder-disclaimer{font-size:12px}}
@media(max-width:360px){h1{font-size:64px}.hero-art{height:435px}.hero-copy .eyebrow{font-size:12px}.closing h2{font-size:58px}.palette-options{flex-direction:column}.builder-visual h3{font-size:27px}.builder-form{padding-left:19px;padding-right:19px}.hero-bottom{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-reveal .reveal{opacity:1;transform:none}.hero-art{--mx:0!important;--my:0!important}.tilt-card{transform:none!important}.pointer-hint{visibility:hidden}}

/* Readability and depth refinements after browser review. */
.hero-description,.section-heading>p,.world-copy>p:not(.eyebrow),.ritual p,.faq-list details p{font-size:16px}.card-info p,.price-button,.header nav,.button-small,.hero-copy>.button,.underlined-link,.ritual .underlined-link,.builder-form legend,.field-label,.palette-option{font-size:14px}.faq-list summary{font-size:16px}.builder-form select,.builder-form textarea{font-size:16px}.floating-label{background:#faf8f3df;backdrop-filter:blur(10px);padding:12px 17px 13px;transform:translate3d(calc(var(--mx)*-13px),calc(var(--my)*-9px),130px);z-index:4;right:0;bottom:17%}.floating-label>span:first-child{font-size:12px;letter-spacing:.1em}.floating-label>span:last-child{font-size:12px}.motion-toggle{min-width:44px}.hero-note{bottom:105px}.art-bottom{bottom:66px}.art-side{display:none}
@media(max-width:760px){.hero-copy .eyebrow{max-width:100%;font-size:12px;letter-spacing:.08em}.hero-art{margin-top:-20px}.hero-bottom{font-size:12px;letter-spacing:.035em;height:90px}.hero-bottom a{font-size:12px;letter-spacing:0}.hero-bottom>span{max-width:160px}.floating-label{right:8%;bottom:10%;padding:10px 13px}.floating-label strong{font-size:25px}.floating-label>span:first-child{font-size:12px;letter-spacing:.02em}.floating-label>span:last-child{display:none}.art-bottom{bottom:-9px;left:0;right:8%}.pointer-hint{font-size:12px}.promise-strip{font-size:12px}.eyebrow{letter-spacing:.1em}.closing>.eyebrow{font-size:12px;letter-spacing:.09em}.closing-bottom{font-size:12px;letter-spacing:0;gap:20px}.announcement{font-size:12px;letter-spacing:.09em}.card-badge{font-size:12px;letter-spacing:.06em;max-width:calc(100% - 40px)}.section-heading>p br{display:none}.section-heading>p{max-width:340px}.ritual p{min-height:0}.builder-form .eyebrow{font-size:12px;letter-spacing:.06em}.palette-options{gap:7px}.palette-option{font-size:12px}.builder-disclaimer{font-size:12px}.builder-visual .eyebrow{font-size:12px;letter-spacing:.03em}footer{grid-template-columns:1fr}footer>span{text-align:left;font-size:12px}footer p{font-size:14px}.hero-note{display:none}}

.has-note fieldset,.has-note>.field-label,.has-note>select,.has-note>textarea,.has-note>.save-note,.has-note>.builder-disclaimer{display:none}#note-result{border-top:1px solid var(--line);padding-top:24px}#note-result h3{font-size:29px;line-height:1.3}#note-selection{font-size:14px;color:var(--muted);margin:20px 0}#note-message{font-family:Georgia,serif;font-style:italic;font-size:24px;line-height:1.55;margin:30px 0;overflow-wrap:anywhere}#note-result .underlined-link{margin-right:22px;margin-bottom:14px}#save-status{font-size:12px}.has-note #save-status{margin-top:25px}

.builder-visual[data-palette=butter]{background:#eee4c9}.motion-toggle:disabled{opacity:.65}
/* Keep decorative depth layers clear of their controls. */
.bouquet-stage,.floating-label,.art-overline{pointer-events:none}.art-bottom{z-index:10;transform:translateZ(140px)}
@media(min-width:761px){.bouquet-stage{inset:3% -4% 9% -4%}}
.hero-art{transform-style:flat}.art-bottom{transform:none}.floating-label{transform:translate(calc(var(--mx)*-13px),calc(var(--my)*-9px))}
/* Bilingual edition: retain the original English art direction. */
@font-face{font-family:'Flower Mincho';src:url('assets/fonts/shippori-mincho.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:'Flower Gothic';src:url('assets/fonts/zen-kaku.ttf') format('truetype');font-weight:400;font-display:swap}
.header-actions{display:flex;align-items:center;gap:25px}.header .language-switch{display:flex;gap:11px;align-items:center;font-size:12px;white-space:nowrap}.language-switch a{padding:8px 0;color:var(--muted)}.language-switch a[aria-current=page]{color:var(--ink);border-bottom:1px solid var(--ink)}.language-switch span{opacity:.4}.wordmark{font-family:Bodoni,'Bodoni MT',Didot,Georgia,serif}.card-info h3,.builder-visual h3,.floating-label strong{font-family:Bodoni,Georgia,serif}
html[lang=ja]{--sans:'Flower Gothic',Manrope,'Hiragino Kaku Gothic ProN',sans-serif;--serif:'Flower Mincho','Hiragino Mincho ProN','Yu Mincho',serif}
html[lang=ja] h1,html[lang=ja] h2,html[lang=ja] h3{font-weight:500}html[lang=ja] h1{font-size:clamp(58px,6.1vw,95px);letter-spacing:.015em;line-height:1.27}html[lang=ja] h1 em,html[lang=ja] h2 em{font-family:var(--serif);font-style:normal;font-weight:500;letter-spacing:.005em}html[lang=ja] h2{font-size:clamp(35px,3.8vw,56px);letter-spacing:.005em;line-height:1.5}html[lang=ja] .hero-copy .eyebrow{letter-spacing:.16em}html[lang=ja] .hero-description{line-height:2}html[lang=ja] .hero-note{left:36%;font-size:12px}html[lang=ja] .floating-label strong{font-weight:400}html[lang=ja] .section-heading>p{line-height:2}html[lang=ja] .world-copy h2{font-size:clamp(31px,3.1vw,47px)}html[lang=ja] .world-copy>p:not(.eyebrow),html[lang=ja] .ritual p{line-height:2.05}html[lang=ja] .world-signature{font-family:var(--serif);font-style:normal;font-size:18px}html[lang=ja] .ritual h3{font-size:28px;letter-spacing:.01em}html[lang=ja] .ritual p{min-height:132px}html[lang=ja] .closing h2{font-size:clamp(48px,6.7vw,95px);line-height:1.5}html[lang=ja] .builder-form h2{font-size:35px;line-height:1.45;margin-bottom:20px}html[lang=ja] #note-result h3{font-size:23px}html[lang=ja] #note-message{font-family:var(--serif);font-style:normal;font-size:23px;line-height:1.9}html[lang=ja] .palette-option{font-family:Manrope,sans-serif}html[lang=ja] .card-info h3,html[lang=ja] .builder-visual h3{font-weight:400}footer strong a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){.header-actions{gap:16px}.header nav[aria-label='Main navigation'],.header nav[aria-label='メインナビゲーション']{gap:22px}.header .button-small{padding-left:18px;padding-right:18px}html[lang=ja] .hero-note{left:33%;bottom:115px;font-size:12px}}
@media(max-width:760px){.header-actions{margin-left:auto;margin-right:8px;gap:0}.header-actions>.button{display:none}.header .language-switch{display:flex;font-size:12px;gap:9px}.header .wordmark{font-size:28px;gap:7px}.header .wordmark-star{font-size:20px}.menu-toggle{width:37px;padding-right:0;padding-left:8px}.menu-toggle span{width:23px}html[lang=ja] h1{font-size:clamp(44px,12.1vw,73px);line-height:1.4;max-width:100%;letter-spacing:0}html[lang=ja] .hero-copy .eyebrow{font-size:12px;letter-spacing:.07em}html[lang=ja] .hero-description{font-size:15px;line-height:2}html[lang=ja] h2{font-size:34px;line-height:1.55}html[lang=ja] .manifesto h2{font-size:27px;line-height:1.65}html[lang=ja] .world-copy h2{font-size:33px;line-height:1.6}html[lang=ja] .ritual h3{font-size:27px}html[lang=ja] .ritual p{min-height:0}html[lang=ja] .details-title h2{font-size:32px}html[lang=ja] .closing h2{font-size:39px;line-height:1.6}html[lang=ja] .builder-form h2{font-size:31px}html[lang=ja] .card-info p{font-size:12px}html[lang=ja] .hero-art{margin-top:0}html[lang=ja] .hero-bottom>span{max-width:170px}html[lang=ja] .hero-bottom a{white-space:nowrap}html[lang=ja] .hero-bottom{gap:14px}.builder-visual .eyebrow{font-size:11px}html[lang=ja] .floating-label>span:first-child{font-size:11px}html[lang=ja] .art-bottom{right:7%}html[lang=ja] .pointer-hint{font-size:12px;letter-spacing:0}.header .language-switch a:after{display:none}}
@media(max-width:360px){.header{padding-left:5%;padding-right:5%}.header .wordmark{font-size:25px}.header .wordmark-star{display:none}.header .language-switch{font-size:12px}.hero-copy .eyebrow{gap:6px}html[lang=ja] .hero-copy .eyebrow{font-size:11px}html[lang=ja] .manifesto h2{font-size:24px}html[lang=ja] .closing h2{font-size:34px}}

/* Draw decorative marks as vectors so mobile fonts cannot substitute emoji. */
.floral-mark{display:inline-block;width:1em;height:1em;vertical-align:-.12em;overflow:visible}
.manifesto-star{width:1em;height:1em;margin-inline:auto}
.promise-strip>[aria-hidden]{line-height:1}
