:root{--wine:#4b0529;--plum:#76043f;--pink:#e91685;--hot:#ff3198;--blush:#fff4f8;--ink:#260d1d;--muted:#765d6c;--line:#eadbe2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"DM Sans",sans-serif;background:#fff}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,76px);position:absolute;z-index:2;top:0;width:100%;color:#fff;border-bottom:1px solid #ffffff25}.brand{display:flex;gap:9px;align-items:center;color:inherit;text-decoration:none;text-transform:uppercase;font-size:9px;line-height:1.05;letter-spacing:1.2px}.brand strong{font-size:15px;font-family:"Playfair Display",serif;font-weight:600;letter-spacing:.2px}.brand-crown{font-size:29px;line-height:1}nav{display:flex;gap:31px;margin-left:auto;margin-right:34px}nav a,.header-cta{color:#fff;text-decoration:none;font-size:13px}nav a{opacity:.7}nav .active,nav a:hover{opacity:1}.header-cta{border:1px solid #ffffff75;padding:11px 16px;border-radius:40px}.header-cta span{padding-left:10px}.menu-button{display:none}.hero{min-height:675px;position:relative;overflow:hidden;padding:176px clamp(22px,12vw,190px) 88px;color:#fff;background:radial-gradient(circle at 83% 30%,#b60062 0%,#78023d 30%,#430322 70%)}.hero:before,.section-dark:before,.community:before{content:"";position:absolute;inset:0;opacity:.2;background-image:radial-gradient(#ff99cb 1px,transparent 1px);background-size:5px 5px;mix-blend-mode:screen}.hero-copy{position:relative;z-index:1;max-width:570px}.eyebrow{margin:0 0 18px;text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:700;color:#ffd9ec}.eyebrow span{width:26px;border-top:1px solid currentColor;display:inline-block;vertical-align:middle;margin-right:9px}.hero h1,h2{font-family:"Playfair Display",serif;font-size:clamp(45px,5.5vw,76px);font-weight:600;line-height:.98;letter-spacing:-2.5px;margin:0}.hero h1 em,h2 em{font-weight:600;color:#ff8ac9}.hero-text{max-width:430px;font-size:16px;line-height:1.7;margin:28px 0 33px;color:#f8d8e8}.hero-actions{display:flex;align-items:center;gap:27px}.button{display:inline-flex;gap:25px;align-items:center;justify-content:space-between;text-decoration:none;border-radius:3px;padding:15px 19px;font-size:13px;font-weight:700}.button-light{color:#6d0438;background:#fff}.text-link{color:#fff;font-size:13px;text-decoration:none}.text-link span{font-size:17px;margin-left:7px}.hero-art{position:absolute;right:11vw;top:126px;width:355px;height:380px;transform:rotate(-5deg)}.frame{position:absolute;border:1px solid #ffa3d1;transform:rotate(7deg)}.frame-back{inset:55px 54px 30px 43px;background:#b0075b55}.frame-front{inset:22px 20px 63px 87px;background:linear-gradient(135deg,#ff96ccaa,#851143aa);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:18px 18px #3b042766}.frame-front span{font-family:"Playfair Display";font-size:111px;line-height:.8}.frame-front small{text-transform:uppercase;letter-spacing:2px;font-size:8px;margin-top:21px}.crown{position:absolute;right:-16px;top:-29px;font-size:91px;color:#ffcae4;transform:rotate(9deg)}.star{position:absolute;color:#fff3fa;font-size:25px}.s1{top:0;left:9px}.s2{bottom:0;right:25px;font-size:18px}.s3{top:80px;right:-40px;font-size:13px}.hero-glow{position:absolute;border-radius:50%;filter:blur(15px);opacity:.5}.glow-one{width:320px;height:320px;background:#f60091;right:5%;bottom:-180px}.glow-two{width:210px;height:210px;border:1px solid #ffb9df;right:26%;top:115px}.scroll-hint{position:absolute;bottom:25px;left:50%;color:#ffe0ef;text-decoration:none;font-size:10px;text-transform:uppercase;letter-spacing:1px;transform:translateX(-50%)}.scroll-hint span{display:block;text-align:center;font-size:19px;margin-top:6px}.section{padding:108px clamp(22px,8vw,130px)}.directory{background:var(--blush)}.section-heading{display:inline-block}.pink{color:#d7086d}.directory h2,.inspiration h2{font-size:clamp(38px,4.7vw,62px);color:#4e092c}.directory h2 em,.inspiration h2 em{color:#e20a76}.section-intro{max-width:320px;float:right;margin:31px 7vw 0 30px;color:var(--muted);font-size:15px;line-height:1.6}.directory-tools{clear:both;padding-top:55px;display:flex;gap:12px}.search{background:#fff;border:1px solid var(--line);display:flex;align-items:center;padding:0 15px;gap:10px;flex:1;max-width:580px;border-radius:3px}.search span{font-size:25px;color:#9d7589}.search input{font:14px "DM Sans";border:0;outline:0;width:100%;padding:17px 0;background:transparent}.filter-button{padding:0 18px;height:100%;min-height:54px;border:1px solid var(--line);background:#fff;font:700 13px "DM Sans";color:var(--ink);border-radius:3px;cursor:pointer}.filter-button span{margin-left:16px}.filter-wrap{position:relative}.filters{display:none;position:absolute;z-index:2;right:0;top:62px;width:260px;padding:12px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 30px #5a163533}.filters.open{display:grid;grid-template-columns:1fr 1fr}.filters button{border:0;background:transparent;text-align:left;font:12px "DM Sans";padding:9px;cursor:pointer;color:var(--muted)}.filters button.selected{color:#d7086d;font-weight:700}.results-bar{display:flex;justify-content:space-between;margin:27px 0 19px;font-size:12px;color:var(--muted)}.results-bar button{border:0;background:none;font:inherit;color:#d7086d;cursor:pointer}.supplier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.supplier-card{min-height:256px;padding:23px;background:#fff;border:1px solid #f0e6eb;position:relative;transition:transform .2s,box-shadow .2s}.supplier-card:hover{transform:translateY(-4px);box-shadow:0 15px 30px #6d14301a}.supplier-top{display:flex;justify-content:space-between;gap:8px}.category{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:#b51162;font-weight:700}.rating{font-size:11px;color:#765d6c}.supplier-card h3{font-family:"Playfair Display";font-size:24px;line-height:1.05;margin:22px 0 11px}.benefit{font-size:13px;color:#765d6c;line-height:1.45;margin:0}.benefit b{color:#d7086d}.card-bottom{position:absolute;bottom:20px;left:23px;right:23px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px}.handle{font-size:11px;color:#765d6c}.card-action{font-size:11px;text-decoration:none;color:#8b0c4c;font-weight:700}.empty-state{text-align:center;padding:50px;color:var(--muted)}.empty-state span{font-size:36px;color:var(--pink)}.empty-state h3{font-family:"Playfair Display";font-size:25px;margin:10px}.section-dark{position:relative;overflow:hidden;padding:100px clamp(22px,8vw,130px);display:grid;grid-template-columns:1fr 1.1fr;gap:100px;color:#fff;background:linear-gradient(115deg,#510128,#96034b)}.section-dark h2{font-size:clamp(38px,4vw,57px)}.section-dark h2 em{color:#ff9fce}.how ol{margin:0;padding:0;list-style:none}.how li{display:flex;gap:24px;border-top:1px solid #ffffff33;padding:20px 0}.how b{font-family:"Playfair Display";font-size:25px;color:#ffa4d0}.how h3{margin:0 0 6px;font-size:16px}.how p{margin:0;color:#f7bfd9;font-size:13px;line-height:1.6}.inspiration{text-align:center}.inspiration h2{margin-bottom:50px}.mood-grid{display:grid;grid-template-columns:1.1fr .9fr 1fr;gap:14px;max-width:1100px;margin:auto}.mood-card{height:295px;padding:27px;text-align:left;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(20deg,#4e032a,#ef238b);position:relative;overflow:hidden}.mood-card:before{content:"";position:absolute;inset:14px;border:1px solid #ffffff57}.mood-card span,.mood-card strong{position:relative}.mood-card span{text-transform:uppercase;letter-spacing:1.3px;font-size:10px}.mood-card strong{font-family:"Playfair Display";font-size:28px;line-height:1.06;margin-top:10px}.two{background:linear-gradient(20deg,#9e064e,#ff9ac8)}.three{background:linear-gradient(20deg,#26001f,#a8045a)}.community{position:relative;overflow:hidden;padding:95px clamp(22px,15vw,230px);color:#fff;background:radial-gradient(circle at 75% 35%,#d30a72,#63032f 45%,#3d011e)}.community>div:first-child{position:relative;z-index:1;max-width:620px}.community h2{font-size:clamp(38px,4.4vw,62px)}.community h2 em{color:#ff9bcf}.community p:not(.eyebrow){color:#f6c5dc;max-width:465px;line-height:1.6;margin:22px 0 28px}.community-mark{position:absolute;right:16%;bottom:42px;font-size:170px;color:#ffffff20;line-height:.4;transform:rotate(12deg)}.community-mark small{display:block;font-size:11px;line-height:1.1;letter-spacing:1px;text-transform:uppercase}.community-mark strong{font:20px "Playfair Display";letter-spacing:0}footer{display:flex;align-items:center;justify-content:space-between;padding:30px clamp(22px,5vw,76px);color:#6d5361;font-size:11px}footer .brand{color:#610331}footer a:last-child{color:#8b0c4c;text-decoration:none}@media(max-width:760px){.topbar{height:63px;padding:0 20px}.topbar nav,.header-cta{display:none}.menu-button{display:block;border:0;background:transparent;color:#fff;font-size:23px}.hero{padding:135px 26px 85px;min-height:640px}.hero-art{opacity:.42;right:-40px;top:280px;width:280px}.hero h1{font-size:52px}.section{padding:73px 22px}.section-intro{float:none;margin:18px 0 0}.directory-tools{padding-top:34px}.supplier-grid{grid-template-columns:1fr}.section-dark{padding:70px 22px;grid-template-columns:1fr;gap:40px}.mood-grid{grid-template-columns:1fr}.mood-card{height:220px}.community{padding:70px 22px}.community-mark{right:5%;bottom:45px;font-size:100px}footer{gap:16px;align-items:flex-start;flex-direction:column}.filters{right:auto;left:0}.search input{min-width:0}}
