
:root{--night:#17172b;--lav:#9a80ea;--ink:#242038;--muted:#6d657c}*{box-sizing:border-box}body{margin:0;font:15px/1.75 'DM Sans',Arial,sans-serif;background:#fcfaf8;color:var(--ink)}h1,h2,h3{font-family:Manrope,Arial,sans-serif;letter-spacing:-.045em;line-height:1.2}a{text-decoration:none;color:inherit}.wrap{width:min(1130px,calc(100% - 38px));margin:auto}.narrow{width:min(790px,calc(100% - 38px));margin:auto}
.site-nav{background:var(--night);color:#eee9ff}.navinner{min-height:78px;display:flex;align-items:center;gap:24px}.logo{font:800 23px Manrope,system-ui;letter-spacing:-1px;white-space:nowrap}.logo i{font-style:normal;color:#baa3ff}.links{margin-left:auto;display:flex;gap:22px;font-size:13px;font-weight:700;color:#d8d0ee}.links a:hover{color:white}.button{display:inline-block;padding:12px 20px;border-radius:12px;background:#a78eff;color:#1e1539;font-weight:800;font-size:13px;text-align:center}.button.dark{background:#211c43;color:white}.button.light{background:white;color:#281e4c;border:1px solid #e3d8ee}.eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#7155c7;font-weight:800}.crumb{font-size:12px;color:#837b94;display:flex;gap:8px;flex-wrap:wrap;padding:21px 0}.crumb a{text-decoration:underline;text-underline-offset:3px}
.occasion-hero{background:linear-gradient(120deg,#1a1832,#392859);color:#fff;padding:74px 0 80px}.occasion-hero h1{font-size:clamp(38px,5.2vw,62px);max-width:920px;margin:12px 0 19px}.occasion-hero p{font-size:17px;color:#ddd5ef;line-height:1.85;max-width:790px}.hero-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.occasion-hero .eyebrow{color:#c3b4ff}.outline-light{border:1px solid #ffffff54;background:transparent;color:#fff}
.occasion-main{padding:68px 0 85px}.lead{font-size:17px;line-height:1.85;color:#4a435b}.occasion-main h2{font-size:clamp(26px,3vw,37px);margin:42px 0 18px}.occasion-main h3{font-size:19px;margin:0 0 9px}.occasion-main p{color:#5e586b}.idea-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:24px 0 29px}.idea{padding:20px;border-radius:16px;background:white;border:1px solid #e9e3ed}.idea strong{font-size:15px;font-family:Manrope}.idea p{font-size:13px;line-height:1.72;margin:8px 0 0}
.example{background:#eee8fd;border-left:4px solid #a28bf5;border-radius:0 14px 14px 0;padding:24px;margin:22px 0 28px;font-size:14px;line-height:1.86;color:#544768}.tip{background:#f5f0eb;padding:20px 22px;border-radius:15px;margin:30px 0}.related{border-top:1px solid #e6dfe9;padding:56px 0 75px}.related h2{font-size:29px}.related-list{display:flex;flex-wrap:wrap;gap:9px}.related-list a{padding:10px 14px;border:1px solid #e1d7ed;border-radius:99px;background:white;font-weight:700;font-size:12px;color:#654f9b}.related-list a:hover{border-color:#aa90ff;background:#f5efff}
.plans-inline{background:#211d40;color:white;padding:24px;border-radius:18px;margin-top:35px}.plans-inline p{color:#dfd9ef;margin:5px 0 17px}.plans-inline strong{font-size:20px}.site-footer{padding:30px 0;background:#17172b;color:#c5bed6;font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
.directory-head{background:var(--night);color:white;padding:68px 0 75px}.directory-head h1{font-size:clamp(40px,5vw,63px);max-width:850px;margin:10px 0 17px}.directory-head p{color:#d4cde6;max-width:760px;font-size:16px}.cat-links{display:flex;flex-wrap:wrap;gap:8px;padding:35px 0 12px}.cat-links a{font-size:12px;font-weight:800;background:#f0eafd;border-radius:99px;padding:9px 13px;color:#6e54bf}.dir-section{padding:28px 0}.dir-section h2{font-size:28px;margin-bottom:19px}.dir-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.dir-card{border:1px solid #e6dfeb;border-radius:18px;background:white;padding:21px;display:flex;flex-direction:column;gap:10px}.dir-card:hover{box-shadow:0 10px 30px #2d205015}.dir-card i{font-size:29px;font-style:normal}.dir-card strong{font-family:Manrope;font-size:17px;line-height:1.3}.dir-card span{font-size:12px;color:#756c80}.dir-card em{font-style:normal;color:#755cc8;font-weight:800;font-size:12px;margin-top:auto}
@media(max-width:800px){.dir-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.links{gap:12px}.navinner{gap:13px}}@media(max-width:560px){.wrap,.narrow{width:calc(100% - 32px)}.navinner{min-height:69px}.links a:nth-child(1),.links a:nth-child(2){display:none}.links{margin-left:auto}.navinner>.button{font-size:10px;padding:9px}.occasion-hero{padding:54px 0 62px}.occasion-hero p{font-size:15px}.occasion-main{padding:46px 0}.idea-grid,.dir-grid{grid-template-columns:1fr}.directory-head{padding:54px 0}.dir-section{padding:18px 0}.dir-card{padding:17px}}
