:root{--paper:#f6f1e9;--paper-deep:#eee5da;--blush:#e9c8c5;--sage:#c9d1bc;--ink:#2e3028;--muted:#78796c;--rose:#bd777e;--rose-deep:#854f59;--line:#3a372e29;--serif:"Playfair Display", Georgia, serif;--sans:"DM Sans", Arial, sans-serif;--mono:"DM Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{background:radial-gradient(ellipse 42% 26% at 4% 8%, #e9c8c56b, transparent 72%), radial-gradient(ellipse 35% 30% at 96% 23%, #c9d1bc57, transparent 72%), var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}::selection{color:#2e3028;background:#dcb3b1}main{position:relative;overflow:hidden}main:before,main:after{content:"";z-index:0;pointer-events:none;opacity:.42;filter:blur(1px);border-radius:50% 42% 58% 45%;width:38vw;max-width:560px;height:38vw;max-height:560px;position:absolute}main:before{background:radial-gradient(circle at 52% 40%,#0000 0 13%,#bd777e33 14% 16%,#0000 17%),radial-gradient(circle at 32% 62%,#e9c8c5b3,#0000 60%);top:12%;left:-18vw;transform:rotate(-24deg)}main:after{background:radial-gradient(circle at 50% 48%,#0000 0 15%,#854f5921 16% 18%,#0000 19%),radial-gradient(circle at 58% 42%,#c9d1bcb8,#0000 64%);top:47%;right:-19vw;transform:rotate(26deg)}.petal-field{z-index:5;pointer-events:none;position:fixed;inset:0;overflow:hidden}.floating-petal{filter:blur(.1px);background:linear-gradient(145deg,#fffaf4fa,#be7580b3);border-radius:100% 0;width:16px;height:28px;position:absolute;top:0;box-shadow:0 3px 10px #5b3a3726,0 0 7px #ffebe26b}.petal-1{background:linear-gradient(140deg,#fff8ee,#d79fa4);width:12px;height:22px}.petal-2{background:linear-gradient(140deg,#efc5c4,#ac6573);width:14px;height:24px}.petal-3{background:linear-gradient(140deg,#fffaf1,#dfc3af);width:10px;height:19px}.site-header{border-bottom:1px solid var(--line);z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f6f1e9b8;justify-content:space-between;align-items:center;width:100%;height:82px;padding:0 6.2vw;display:flex;position:relative}.brand{letter-spacing:.045em;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.brand-mark{width:31px;height:31px;color:var(--rose-deep);border:1px solid #854f5959;border-radius:50%;place-items:center;display:grid}.site-header nav{gap:38px;display:flex}.site-header nav a,.header-note{color:#626357;letter-spacing:.025em;font-size:13px;transition:color .25s}.site-header nav a:hover,.header-note:hover{color:var(--rose-deep)}.header-note{color:var(--rose-deep);border-bottom:1px solid #854f5966;align-items:center;gap:7px;padding-bottom:5px;display:flex}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:4.5vw;min-height:700px;padding:70px 8.5vw 98px 10.4vw;display:grid;position:relative}.hero-copy{z-index:2;max-width:550px;padding-top:8px;position:relative}.eyebrow,.small-kicker,.section-topline,.image-footnote,.lily-kind,.photo-caption,.hero-index,.hero-bottom-mark,.hero-vertical-label,.site-footer span{font-family:var(--mono);letter-spacing:.15em;font-size:9px;font-weight:400}.eyebrow{color:var(--rose-deep);align-items:center;gap:12px;margin-bottom:28px;display:flex}.eyebrow-line{background:var(--rose);width:31px;height:1px;display:inline-block}.hero h1{font-family:var(--serif);letter-spacing:-.075em;margin:0 0 32px;font-size:clamp(76px,9.2vw,144px);font-weight:400;line-height:.88}.hero h1 em{color:var(--rose-deep);font-weight:400}.hero h1 span{letter-spacing:-.045em;margin-top:17px;font-size:.65em;display:block}.hero-description{color:#737366;max-width:390px;margin:0;font-size:16px;font-weight:400;line-height:1.8}.scroll-link{color:#4f5045;align-items:center;gap:13px;margin-top:42px;font-size:13px;transition:color .25s;display:inline-flex}.scroll-link:hover{color:var(--rose-deep)}.scroll-icon{width:36px;height:36px;color:var(--rose-deep);border:1px solid #854f5961;border-radius:50%;place-items:center;transition:transform .25s,background .25s;display:grid}.scroll-link:hover .scroll-icon{background:#bd777e1a;transform:translateY(3px)}.hero-index{color:#98988b;font-size:8px;position:absolute;bottom:-76px;left:0}.hero-index span{color:var(--rose-deep)}.hero-art{justify-self:center;width:min(100%,460px);height:min(60vw,590px);min-height:435px;max-height:590px;margin-right:-1vw;position:relative}.hero-image-wrap{background:radial-gradient(at 50% 30%,#fff7ef,#dec9bd 74%);border-radius:48% 48% 3px 3px;position:absolute;inset:0 22px 25px 18px;overflow:hidden}.animated-bouquet{place-items:end center;display:grid;position:absolute;inset:0;overflow:hidden}.animated-bouquet svg{transform-origin:50% 90%;width:100%;height:100%;animation:7s ease-in-out infinite alternate bouquet-sway;overflow:visible}.bouquet-flower{transform-box:fill-box;transform-origin:50%;animation:4.5s ease-in-out infinite alternate flower-breathe}.flower-two{animation-delay:-.8s}.flower-three{animation-delay:-1.7s}.flower-four{animation-delay:-2.5s}.flower-five,.flower-six{animation-delay:-3.2s}.bouquet-ribbon{transform-origin:50%;animation:3s ease-in-out infinite alternate ribbon-sway}.round-stamp{width:120px;height:120px;color:var(--rose-deep);background:#f6f1e9f0;border-radius:50%;place-items:center;display:grid;position:absolute;top:34px;right:-9px;box-shadow:0 12px 30px #4d352d14}.round-stamp svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.round-stamp text{font-family:var(--mono);letter-spacing:1.45px;fill:var(--rose-deep);font-size:8px}.round-stamp>span{place-items:center;display:grid}.photo-caption{color:#77776b;justify-content:space-between;font-size:8px;display:flex;position:absolute;bottom:0;left:18px;right:22px}.hero-vertical-label{writing-mode:vertical-rl;color:#878779;letter-spacing:.19em;font-size:8px;position:absolute;bottom:90px;right:-29px}.hero-bottom-mark{color:#8a887c;align-items:center;gap:9px;font-size:8px;display:flex;position:absolute;bottom:30px;left:10.4vw}.hero-bottom-mark span{color:var(--rose);font-size:15px}.section-shell{max-width:1440px;margin:0 auto;padding-left:10.4vw;padding-right:10.4vw}.bouquet-section{border-top:1px solid var(--line);padding-top:68px;padding-bottom:143px;position:relative}.bouquet-section:after{content:"";z-index:-1;background:linear-gradient(174deg,#0000 8%,#e9c8c54d 9% 35%,#c9d1bc42 36% 62%,#0000 63%);border-radius:48% 52% 0 0/24% 28% 0 0;height:42%;position:absolute;bottom:-18%;left:-8%;right:-8%;transform:rotate(-2deg)}.section-topline{color:#858577;letter-spacing:.14em;border-bottom:1px solid var(--line);justify-content:space-between;padding-bottom:19px;font-size:8px;display:flex}.bouquet-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1fr);align-items:center;gap:11.5%;padding-top:66px;display:grid}.bouquet-photo-column{width:100%;max-width:430px}.bouquet-photo-frame{border:1px solid #854f594a;padding:12px;position:relative}.bouquet-photo{aspect-ratio:.82;background:radial-gradient(at 50% 30%,#fff7ef,#dec9bd 74%);width:100%;position:relative;overflow:hidden}.frame-corner{border-color:var(--rose-deep);opacity:.8;border-style:solid;width:29px;height:29px;position:absolute}.frame-corner-tl{border-width:1px 0 0 1px;top:0;left:0;transform:translate(-3px,-3px)}.frame-corner-br{border-width:0 1px 1px 0;bottom:0;right:0;transform:translate(3px,3px)}.image-footnote{color:#8a887d;justify-content:space-between;margin-top:14px;font-size:8px;display:flex}.bouquet-copy{padding-top:8px}.small-kicker{color:var(--rose-deep);align-items:center;gap:9px;margin-bottom:24px;font-size:8px;display:flex}.bouquet-copy h2,.lily-title-row h2{font-family:var(--serif);letter-spacing:-.06em;margin:0;font-size:clamp(45px,5vw,72px);font-weight:400;line-height:1.04}.bouquet-copy h2 em,.lily-title-row h2 em{color:var(--rose-deep);font-weight:400}.bouquet-lead{color:#757467;max-width:460px;margin:25px 0 29px;font-size:15px;line-height:1.85}.meaning-list{border-top:1px solid var(--line);max-width:450px}.meaning-list>div{border-bottom:1px solid var(--line);grid-template-columns:42px 1fr;gap:6px;padding:17px 0;display:grid}.meaning-number{font-family:var(--mono);color:var(--rose-deep);padding-top:4px;font-size:9px}.meaning-list strong{font-size:14px;font-weight:600}.meaning-list p{color:#8a887c;margin:5px 0 0;font-size:13px}.text-link{color:var(--rose-deep);border-bottom:1px solid #854f598c;align-items:center;gap:10px;margin-top:27px;padding-bottom:7px;font-size:11px;transition:gap .25s;display:inline-flex}.text-link:hover{gap:15px}.letter-section{padding-top:5px;padding-bottom:118px;position:relative}.letter-card{background:#fffaf4a8;border:1px solid #854f5933;padding:32px clamp(25px,5vw,72px) 60px;position:relative;overflow:hidden;box-shadow:0 22px 65px #66473d12}.letter-card:before{content:"";background:radial-gradient(circle,#c9d1bc8f,#0000 68%);border-radius:50%;width:320px;height:320px;position:absolute;bottom:-150px;right:-100px}.letter-decoration{color:var(--rose);opacity:.75;position:absolute;top:28px;right:34px}.letter-meta{border-bottom:1px solid var(--line);color:#8b887c;font:9px var(--mono);letter-spacing:.15em;justify-content:space-between;padding-bottom:20px;display:flex}.letter-layout{grid-template-columns:minmax(0,.9fr) minmax(300px,1fr);gap:12%;padding-top:52px;display:grid}.letter-card h2{font:400 clamp(43px, 5.2vw, 72px)/1.02 var(--serif);letter-spacing:-.06em;margin:0}.letter-card h2 em{color:var(--rose-deep);font-weight:400}.letter-intro{color:#777669;max-width:350px;margin:25px 0 0;font-size:15px;line-height:1.85}.note-toggle{color:var(--rose-deep);font:13px var(--sans);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #854f598c;align-items:center;gap:10px;margin-top:30px;padding:0 0 8px;transition:gap .25s;display:inline-flex}.note-toggle:hover{gap:15px}.letter-body{color:#646459;background:#f6f1e994;border-left:2px solid #bd777e59;align-self:center;min-height:190px;padding:30px 30px 25px}.letter-body>p:first-child{color:var(--ink);font:italic 400 clamp(21px, 2.2vw, 30px)/1.45 var(--serif);margin:0}.letter-body.is-open{min-height:250px}.letter-body.is-open>div>p{margin:23px 0 17px;font-size:14px;line-height:1.85}.letter-signoff{color:var(--rose-deep);font:italic 15px var(--serif)}.lily-section{background:linear-gradient(160deg,#eee7de 0%,#f2e8e2 48%,#e6ebdf 100%);border-top:1px solid #3a372e1a;padding:76px 0 123px;position:relative}.lily-section:before{content:"";pointer-events:none;background:radial-gradient(at 50% 100%,#0000 0 25%,#bd777e29 26% 28%,#0000 29%),radial-gradient(at 50% 100%,#e9c8c573,#0000 66%);border-radius:50%;width:28vw;max-width:390px;height:18vw;max-height:250px;position:absolute;top:-12%;left:22%;transform:rotate(-8deg)}.lily-heading .section-topline{border-color:#3a372e24}.lily-title-row{justify-content:space-between;align-items:end;gap:40px;padding:44px 0 54px;display:flex}.lily-title-row h2{font-size:clamp(44px,5.2vw,74px)}.lily-title-row>p{color:#777669;max-width:265px;margin:0 1% 0 0;padding-bottom:7px;font-size:12px;line-height:1.85}.lily-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.lily-card{background:#f8f4ee;border:1px solid #3a372e1a;height:100%;transition:transform .35s,box-shadow .35s}.lily-card:hover{transform:translateY(-7px);box-shadow:0 15px 35px #47352a14}.lily-image{background-color:#d9c4b6;background-size:cover;height:265px;transition:background-size .3s;position:relative;overflow:hidden}.lily-card:hover .lily-image{background-size:108%}.lily-image-overlay{background:linear-gradient(#28231c38,#0000 35%,#28231c26);position:absolute;inset:0}.lily-card-number{color:#fffaf1;font-family:var(--mono);letter-spacing:.08em;text-shadow:0 1px 5px #0000004d;font-size:9px;position:absolute;top:14px;left:14px}.lily-card-icon{width:34px;height:34px;color:var(--rose-deep);background:#f6f1e9e6;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:12px;right:12px}.lily-card-content{padding:21px 17px 17px}.lily-kind{letter-spacing:.14em;color:#8c8678;font-size:7px}.lily-card h3{font:400 clamp(22px, 2vw, 28px)/1.1 var(--serif);letter-spacing:-.04em;margin:10px 0 13px}.lily-card-content>p{color:#777669;min-height:68px;margin:0;font-size:13px;line-height:1.7}.lily-card-rule{align-items:center;gap:8px;margin-top:21px;display:flex}.lily-card-rule>span:first-child{background:#854f5959;width:25px;height:1px}.rule-flower{color:var(--rose);font-size:10px}.promise-strip{padding-top:74px;padding-bottom:76px}.promise-heading{color:var(--rose-deep);font:10px var(--mono);letter-spacing:.16em;align-items:center;gap:11px;display:flex}.promise-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px;display:grid}.promise-grid>div{border:1px solid var(--line);color:var(--rose-deep);background:#fffaf470;align-items:center;gap:13px;padding:19px 20px;display:flex}.promise-grid p{color:#636459;margin:0;font-size:14px}.site-footer{text-align:center;background:linear-gradient(180deg, #e9e0d7, var(--paper));flex-direction:column;align-items:center;padding:64px 20px 60px;display:flex}.footer-flower{width:48px;height:48px;color:var(--rose-deep);border:1px solid #854f5947;border-radius:50%;place-items:center;margin-bottom:17px;display:grid}.site-footer p{font:italic 400 25px/1.2 var(--serif);color:var(--ink);align-items:center;gap:9px;margin:0 0 12px;display:flex}.site-footer span{color:#999587;font-size:8px}@keyframes bouquet-sway{0%{transform:rotate(-1.6deg)translate(-3px)}to{transform:rotate(1.6deg)translate(3px)}}@keyframes flower-breathe{0%{opacity:.9}to{opacity:1}}@keyframes ribbon-sway{0%{transform:rotate(-2deg)}to{transform:rotate(2deg)}}@media (min-width:1500px){.hero{padding-left:max(10.4vw,50vw - 590px);padding-right:max(8.5vw,50vw - 610px)}.hero-bottom-mark{left:max(10.4vw,50vw - 590px)}.section-shell{padding-left:10.4vw;padding-right:10.4vw}}@media (max-width:1050px){.hero{gap:3vw;padding-left:7vw;padding-right:7vw}.hero h1{font-size:clamp(75px,10vw,110px)}.hero-art{height:520px;min-height:420px}.hero-bottom-mark{left:7vw}.section-shell{padding-left:7vw;padding-right:7vw}.bouquet-grid{gap:8%}.lily-grid{gap:12px}.lily-image{height:220px}.lily-card-content{padding:18px 13px 15px}}@media (max-width:760px){.site-header{height:70px;padding:0 22px}.brand{font-size:11px}.site-header nav{gap:17px}.site-header nav a{font-size:10px}.header-note{display:none}.hero{grid-template-columns:1fr;gap:48px;min-height:auto;padding:74px 25px 78px}.hero-copy{max-width:600px}.eyebrow{margin-bottom:23px;font-size:8px}.hero h1{margin-bottom:25px;font-size:clamp(82px,18vw,127px)}.hero h1 span{margin-top:11px}.hero-description{max-width:330px;font-size:13px}.scroll-link{margin-top:29px}.hero-art{justify-self:center;width:min(83%,430px);height:min(112vw,520px);min-height:390px;margin:0}.round-stamp{width:94px;height:94px;top:24px;right:-27px}.round-stamp text{font-size:8.5px}.hero-vertical-label{right:-27px}.hero-index{bottom:-45px;left:0}.hero-bottom-mark{font-size:7px;bottom:25px;left:25px}.section-shell{padding-left:25px;padding-right:25px}.bouquet-section{padding-top:42px;padding-bottom:85px}.section-topline{letter-spacing:.1em;font-size:7px}.bouquet-grid{grid-template-columns:1fr;gap:56px;padding-top:40px}.bouquet-photo-column{max-width:min(100%,450px)}.bouquet-photo{aspect-ratio:.94}.bouquet-copy{padding-left:3px}.bouquet-copy h2{font-size:clamp(45px,11vw,68px)}.bouquet-lead{font-size:12px}.letter-section{padding-top:0;padding-bottom:78px}.letter-card{padding:24px 20px 34px}.letter-decoration{top:23px;right:21px}.letter-meta{padding-right:32px;font-size:7px}.letter-layout{padding-top:36px;display:block}.letter-card h2{font-size:clamp(43px,11vw,68px)}.letter-intro{font-size:13px}.letter-body{min-height:0;margin-top:40px;padding:24px 20px 20px}.letter-body.is-open{min-height:0}.promise-strip{padding-top:48px;padding-bottom:54px}.promise-grid{grid-template-columns:1fr;gap:9px;margin-top:20px}.promise-grid p{font-size:13px}.lily-section{padding:48px 0 78px}.lily-title-row{padding:35px 0 33px;display:block}.lily-title-row h2{font-size:clamp(44px,10vw,67px)}.lily-title-row>p{max-width:330px;margin-top:22px;font-size:12px}.lily-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.lily-image{height:clamp(150px,44vw,240px)}.lily-card-content{padding:16px 12px 13px}.lily-card h3{font-size:clamp(20px,5vw,26px)}.lily-card-content>p{min-height:70px;font-size:10px}.lily-kind{letter-spacing:.1em;font-size:6.5px}.site-footer{padding-top:48px;padding-bottom:45px}}@media (max-width:390px){.site-header nav{gap:12px}.brand{gap:7px;font-size:10px}.brand-mark{width:28px;height:28px}.section-topline{font-size:6.5px}.lily-grid{gap:9px}.lily-card-content{padding:14px 10px 12px}.lily-card h3{font-size:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
