@layer components{:is(.landing-page,.marketplace) .site-header{background:color-mix(in srgb,var(--background)94%,transparent)}:is(.landing-page,.marketplace) .brand-link{color:var(--foreground)}:is(.landing-page,.marketplace) .eyebrow{color:var(--gold-dark)}:is(.landing-page,.marketplace) .nav-action{border-color:var(--border)}:is(.landing-page,.marketplace) .nav-action:hover{background:var(--muted)}:is(.landing-page,.marketplace) .nav-link:hover{color:var(--primary)}:is(.landing-page,.marketplace) .primary-link:hover{background:color-mix(in srgb,var(--primary),black 15%)}:is(.landing-page,.marketplace) .text-link{border-color:var(--border);color:var(--primary)}:is(.landing-page,.marketplace) :is(a,button,summary,input,select):focus-visible{outline:2px solid var(--primary);outline-offset:4px}.landing-page .landing-hero{gap:60px;max-width:1280px;padding-block:56px}.landing-page .hero-copy h1{text-wrap:balance;font-size:clamp(2.8rem,4.8vw,4.6rem)}.landing-page .hero-copy h1 em{color:var(--gold-dark)}.landing-page .hero-intro{max-width:460px;color:var(--muted-foreground)}.landing-page .hero-note{color:var(--muted-foreground);font-size:12px}.landing-page .hero-photo{border-radius:150px 150px 20px 20px;height:510px}.landing-page .hero-photo figcaption{background:linear-gradient(#0000,#382435e8);border-radius:0 0 20px 20px}.landing-page .hero-photo figcaption .eyebrow{color:#f3dfcc}.landing-page .photo-seal{color:var(--primary);background:#f3e1ea;right:-12px}.landing-page .occasion-strip{background:var(--card);padding-block:20px}.landing-page .occasion-strip p{color:var(--muted-foreground)}.landing-page .product-section{gap:72px;padding-block:80px}.landing-page .planning-preview{background:var(--card);border-color:var(--border);transform:rotate(-1deg);box-shadow:0 24px 60px -40px #704c6860}.landing-page .preview-status{background:var(--muted);color:var(--primary)}.landing-page .preview-metrics strong{font-size:clamp(15px,1.5vw,21px)}.landing-page .planning-features svg{color:var(--gold-dark)}.local-features{border-block:1px solid var(--border);max-width:1200px;margin:0 auto 72px;padding:40px}.local-features-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.local-features-heading h2{max-width:600px}.local-features-heading>a{flex-shrink:0}.local-features-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:36px;display:grid}.local-features-grid svg{color:var(--primary);margin-bottom:16px}.local-features-grid h3{font-family:var(--font-display);font-size:23px;line-height:1.35}.local-features-grid p{color:var(--muted-foreground);margin-top:10px;font-size:14px;line-height:1.8}.landing-page .trust-section{background:var(--muted);padding-block:64px}.landing-page .trust-grid{margin-top:36px}.landing-page .trust-grid article+article{border-color:var(--border)}.landing-page .trust-grid p{color:var(--muted-foreground)}.landing-page .collection-section{background:#483345;gap:64px;max-width:1200px;margin:64px auto}.landing-page .collection-section .eyebrow{color:#e9bad0}.landing-page .collection-section :is(.section-copy,.collection-steps p){color:#e5d6df}.landing-page .collection-section .primary-link{color:#483345;background:#f1d5e2}.landing-page .collection-steps>div>span{color:#e9bad0}.directory-heading{padding-bottom:0}.directory-back{color:var(--primary);align-items:center;gap:8px;margin-bottom:24px;font-size:13px;display:inline-flex}.directory-intro{justify-content:space-between;align-items:center;gap:40px;display:flex}.directory-intro>div{max-width:750px}.directory-intro h1{text-wrap:balance;max-width:680px}.directory-intro>div>p{max-width:580px;color:var(--muted-foreground);margin-top:16px;font-size:15px;line-height:1.8}.directory-assurance{color:var(--primary);flex-shrink:0;align-items:center;gap:12px;display:flex}.directory-assurance strong{font-size:13px;font-weight:600;display:block}.directory-assurance span>span{color:var(--muted-foreground);align-items:center;gap:8px;margin-top:5px;font-size:11px;display:flex}.vendor-filters{border:1px solid var(--border);background:var(--card);border-radius:16px;margin-top:32px;box-shadow:0 12px 36px -28px #704c6850}.vendor-filter-primary{grid-template-columns:1.3fr 1fr 1fr auto;align-items:end;gap:16px;padding:24px;display:grid}.vendor-filters label{min-width:0;display:block}.vendor-filters label>span{margin-bottom:8px;font-size:12px;font-weight:600;display:block}.vendor-filters :is(input,select){border:1px solid var(--border);background:var(--background);border-radius:8px;width:100%;min-width:0;height:48px;padding:0 12px;font-size:14px;display:block}.vendor-filters input[type=hidden]{display:none}.vendor-filters input::placeholder{color:var(--muted-foreground);opacity:1}.vendor-search-input{position:relative}.vendor-search-input>svg{color:var(--muted-foreground);position:absolute;top:15px;left:12px}.vendor-search-input input{padding-left:38px}.vendor-filter-primary .primary-link{white-space:nowrap;gap:12px;min-height:48px}.vendor-filter-more{border-top:1px solid var(--border)}.vendor-filter-more summary{cursor:pointer;align-items:center;gap:10px;padding:16px 24px;font-size:13px;list-style:none;display:flex}.vendor-filter-more summary::-webkit-details-marker{display:none}.vendor-filter-more summary>svg:last-child{margin-left:auto}.vendor-filter-more[open] summary>svg:last-child{transform:rotate(180deg)}.vendor-filter-secondary{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:4px 24px 16px;display:grid}.vendor-filter-actions{align-items:flex-start;gap:24px;padding:0 24px 20px;display:flex}.vendor-filter-actions button{flex-shrink:0;padding-top:0}.vendor-price-hint{max-width:900px;color:var(--muted-foreground);flex:1;font-size:12px;line-height:1.75}.vendor-active-filters{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.vendor-active-filters a{border:1px solid var(--border);background:var(--card);border-radius:30px;align-items:center;gap:8px;max-width:100%;padding:7px 12px;font-size:12px;display:inline-flex}.vendor-active-filters a span{overflow-wrap:anywhere}.vendor-active-filters a svg{flex-shrink:0}.vendor-active-filters .vendor-clear{color:var(--primary);background:0 0;border:0;text-decoration:underline}.vendor-results{max-width:1280px;margin:auto;padding:32px 28px 0}.vendor-results-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:24px;display:flex}.vendor-results-heading h2{font-family:var(--font-display);font-size:26px}.vendor-results-heading>p{color:var(--muted-foreground);font-size:13px}.vendor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.vendor-card{border:1px solid var(--border);background:var(--card);border-radius:14px;flex-direction:column;min-width:0;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.vendor-card:hover{border-color:var(--primary);box-shadow:0 16px 30px -24px #704c6880}.vendor-card-image{aspect-ratio:3/2;background:var(--muted);position:relative;overflow:hidden}.vendor-card-image>img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.vendor-card:hover .vendor-card-image>img{transform:scale(1.025)}.vendor-card-placeholder{height:100%;color:var(--primary);background:radial-gradient(ellipse at bottom,var(--background),transparent);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:48px 24px 16px;display:flex}.vendor-card-placeholder>svg{opacity:.6;width:50px;height:50px}.vendor-card-placeholder>span{text-align:center;font-size:12px}.vendor-card-approved{border:1px solid var(--border);max-width:calc(100% - 28px);color:var(--foreground);background:#fffcf9f2;border-radius:30px;align-items:center;gap:6px;padding:7px 10px;font-size:11px;font-weight:600;display:flex;position:absolute;top:14px;left:14px}.vendor-card-approved svg{flex-shrink:0}.vendor-card-body{flex-direction:column;flex:1;padding:22px;display:flex}.vendor-card-category{color:var(--gold-dark);font-size:11px;font-weight:600;line-height:1.6}.vendor-card h3{font-family:var(--font-display);overflow-wrap:anywhere;margin-top:7px;font-size:25px;line-height:1.3}.vendor-card-tagline{color:var(--muted-foreground);margin-top:8px;font-size:13px;line-height:1.7}.vendor-card-location{color:var(--muted-foreground);overflow-wrap:anywhere;align-items:flex-start;gap:6px;margin-top:16px;font-size:12px;display:flex}.vendor-card-location svg{flex-shrink:0;margin-top:1px}.vendor-card-reputation{color:var(--muted-foreground);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-block:18px;font-size:11px;display:flex}.vendor-card-reputation>span:first-child{align-items:center;gap:5px;display:flex}.vendor-card-reputation strong{color:var(--foreground);font-size:13px}.vendor-card-reputation svg{color:var(--gold-dark);fill:var(--gold-light)}.vendor-card-action{border-top:1px solid var(--border);color:var(--primary);justify-content:space-between;align-items:center;padding-top:15px;font-size:12px;font-weight:600;display:flex}.vendor-empty{border:1px dashed var(--border);background:var(--card);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:18px;padding:64px 24px;display:flex}.vendor-empty>svg{color:var(--primary);width:32px;height:32px}.vendor-empty h2{font-family:var(--font-display);font-size:28px}.vendor-empty p{max-width:460px;color:var(--muted-foreground);font-size:14px;line-height:1.8}.vendor-pagination{justify-content:space-between;align-items:center;gap:12px;margin-top:32px;font-size:13px;display:flex}.public-footer{color:#fff;background:#392b37;margin-top:64px}.public-footer-inner{grid-template-columns:1.4fr 1fr 1fr .8fr;gap:40px;max-width:1280px;margin:auto;padding:48px 28px;display:grid}.public-footer nav{flex-direction:column;align-items:flex-start;gap:12px;font-size:13px;display:flex}.public-footer nav h2{color:#e2bace;margin-bottom:6px;font-size:11px;font-weight:600}.public-footer nav a{color:#ecdee8}.public-footer nav a:hover{color:#fff;text-underline-offset:4px;text-decoration:underline}.public-footer :is(a,button):focus-visible{outline-color:#f1d5e2}}@media (max-width:1023px){.landing-page .landing-hero{gap:32px}.landing-page .hero-photo{height:460px}.landing-page .product-section{gap:40px}.landing-page .collection-section{gap:36px;margin-inline:24px;padding:40px}.directory-intro{flex-direction:column;align-items:flex-start;gap:20px}.vendor-filter-primary{grid-template-columns:1fr 1fr}.vendor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.local-features-heading{flex-direction:column;align-items:flex-start}.local-features{margin-inline:24px;padding-inline:0}}@media (max-width:639px){.landing-page .landing-hero{gap:28px;padding:32px 20px 40px}.landing-page .hero-copy h1{font-size:clamp(2.65rem,10vw,3.5rem)}.landing-page .hero-photo{border-radius:100px 100px 16px 16px;height:320px}.landing-page .hero-photo figcaption{padding:50px 24px 24px}.landing-page .photo-seal{width:72px;height:72px;right:0}.landing-page .occasion-strip>div{gap:10px 20px;font-size:15px}.landing-page .product-section{gap:32px;padding:48px 24px}.landing-page .planning-preview{transform:none}.landing-page .preview-metrics strong{font-size:15px}.local-features{margin-bottom:40px;padding-block:32px}.local-features-grid{grid-template-columns:1fr;gap:24px;margin-top:28px}.local-features-grid article{grid-template-columns:28px 1fr;gap:0 14px;display:grid}.local-features-grid svg{grid-row:span 2;margin-top:2px}.local-features-grid h3{font-size:21px}.local-features-grid p{margin-top:6px}.landing-page .trust-section{padding:40px 24px}.landing-page .collection-section{margin:40px 20px;padding:28px}.directory-heading{padding:28px 20px 0}.directory-intro h1{font-size:36px}.directory-intro>div>p{font-size:14px}.vendor-filters{margin-top:24px}.vendor-filter-primary{grid-template-columns:1fr;gap:16px;padding:20px}.vendor-filter-secondary{grid-template-columns:1fr;padding-inline:20px}.vendor-filter-more summary{padding-inline:20px}.vendor-filters :is(input,select){font-size:16px}.vendor-filter-actions{flex-direction:column;gap:16px;padding-inline:20px}.vendor-results{padding:28px 20px 0}.vendor-grid{grid-template-columns:1fr;gap:20px}.vendor-results-heading h2{font-size:23px}.public-footer{margin-top:40px}.public-footer-inner{grid-template-columns:1fr 1fr;gap:28px 20px;padding:36px 24px}.public-footer-inner>div:first-child{grid-column:1/-1}.public-footer-inner>nav:last-child{border-top:1px solid #ffffff24;flex-flow:wrap;grid-column:1/-1;align-items:center;padding-top:20px}.public-footer-inner>nav:last-child h2{width:100%;margin:0}}
