.page-hero{padding:160px 0 80px;text-align:center;position:relative;overflow:hidden}.page-hero.hero-full{min-height:80vh;display:flex;align-items:center;justify-content:center}.page-hero .hero-bg{position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-position:center;z-index:0}.page-hero .hero-bg:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#06060ab3}.page-hero .container{position:relative;z-index:1}.page-hero .hero-emoji{font-size:3rem;margin-bottom:16px;display:block}.page-hero .hero-tag{display:inline-block;padding:6px 16px;border-radius:var(--radius-pill);border:1px solid var(--border-light);font-size:.85rem;font-weight:700;margin-bottom:24px;text-transform:uppercase;letter-spacing:1px}.page-hero h1{font-size:clamp(2.5rem,5vw,4.5rem);margin-bottom:24px}.page-hero .hero-sub{font-size:1.15rem;color:var(--text-dim);max-width:600px;margin:0 auto 40px}.qr-section{padding:80px 0;text-align:center}.qr-frame{display:inline-block;border:3px dashed var(--border-light);border-radius:var(--radius-lg);padding:32px;margin-bottom:16px}.qr-frame img{width:200px;height:200px;display:block}.qr-placeholder{width:200px;height:200px;background:var(--bg-card);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:4rem}.qr-section .qr-caption{font-family:var(--font-heading);font-weight:900;font-size:1.2rem;margin-bottom:8px}.qr-section .qr-note{color:var(--text-dim);font-size:.9rem}.icon-row{padding:80px 0}.icon-row-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;text-align:center}.icon-row-item .ir-icon{font-size:2.5rem;margin-bottom:16px}.icon-row-item .ir-text{color:var(--text-dim);font-size:1rem}.reviews-section{padding:80px 0}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.review-card{background:var(--bg-darker);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:32px}.review-card .rc-stars{color:#ffb800;font-size:1.2rem;margin-bottom:16px}.review-card .rc-text{color:var(--text-dim);margin-bottom:24px;font-style:italic;line-height:1.7}.review-card .rc-author{font-family:var(--font-heading);font-weight:900;font-size:.95rem}.faq-section{padding:80px 0}.faq-category-title{font-family:var(--font-heading);font-weight:900;font-size:1.3rem;margin-top:48px;margin-bottom:16px;background:var(--grad-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}.faq-category-title:first-child{margin-top:0}.faq-item{border-bottom:1px solid var(--border-light)}.faq-question{display:flex;justify-content:space-between;align-items:center;width:100%;padding:20px 0;background:none;border:none;color:var(--text-main);font-family:var(--font-body);font-size:1.05rem;font-weight:500;text-align:left;cursor:pointer;transition:color .3s}.faq-question:hover{color:#f36}.faq-question .faq-arrow{font-size:1.4rem;color:#f36;transition:transform .3s ease;flex-shrink:0;margin-left:16px}.faq-item.open .faq-arrow{transform:rotate(90deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease}.faq-item.open .faq-answer{max-height:500px;padding-bottom:20px}.faq-answer p{color:var(--text-dim);line-height:1.8;background:#ffffff08;padding:16px 20px;border-radius:var(--radius-md)}.occasions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.occasion-card{background:var(--bg-darker);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:48px 32px;transition:border-color .3s,transform .3s;display:block}.occasion-card:hover{border-color:#f36;transform:translateY(-4px)}.occasion-card .oc-emoji{font-size:3rem;margin-bottom:16px;display:block}.occasion-card .oc-name{font-family:var(--font-heading);font-weight:900;font-size:1.5rem;margin-bottom:12px}.occasion-card .oc-desc{color:var(--text-dim);margin-bottom:20px}.occasion-card .oc-link{color:#f36;font-weight:700;font-size:.95rem}.occ-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.occ-feature-card{background:var(--bg-darker);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:40px 32px;text-align:center}.occ-feature-card .ofc-icon{font-size:2.5rem;margin-bottom:16px}.occ-feature-card .ofc-title{font-family:var(--font-heading);font-weight:900;font-size:1.2rem;margin-bottom:12px}.occ-feature-card .ofc-desc{color:var(--text-dim);font-size:.95rem}.hiw-section,.also-section{padding:80px 0}.also-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.also-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:24px;text-align:center;transition:border-color .3s,transform .3s;display:block}.also-card:hover{border-color:#f36;transform:translateY(-4px)}.also-card .also-emoji{font-size:2rem;display:block;margin-bottom:8px}.also-card .also-name{font-family:var(--font-heading);font-weight:900;font-size:.9rem}.blog-section{padding:80px 0}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.blog-card{background:var(--bg-darker);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;transition:border-color .3s,transform .3s;display:block}.blog-card:hover{border-color:#f36;transform:translateY(-4px)}.blog-card .bc-img{width:100%;aspect-ratio:16 / 9;background:var(--bg-card);display:flex;align-items:center;justify-content:center;font-size:3rem}.blog-card .bc-body{padding:24px}.blog-card .bc-tag{display:inline-block;padding:4px 12px;border-radius:var(--radius-pill);background:#ff336626;color:#f36;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.blog-card .bc-title{font-family:var(--font-heading);font-weight:900;font-size:1rem;margin-bottom:8px;line-height:1.3}.blog-card .bc-excerpt{color:var(--text-dim);font-size:.9rem;margin-bottom:16px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-card .bc-meta{display:flex;justify-content:space-between;color:var(--text-dim);font-size:.8rem}.blog-card .bc-read{color:#f36;font-weight:700;font-size:.85rem;display:inline-block;margin-top:12px}.newsletter-strip{padding:80px 0;border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);text-align:center}.newsletter-strip h3{font-size:1.5rem;margin-bottom:24px}.newsletter-form{display:flex;gap:12px;max-width:450px;margin:0 auto}.newsletter-form input{flex:1;background:var(--bg-card);border:1px solid var(--border-light);color:var(--text-main);padding:14px 20px;border-radius:var(--radius-pill);font-family:var(--font-body);font-size:1rem}.newsletter-form input:focus{outline:none;border-color:#f36}.newsletter-form button{background:var(--grad-primary);color:#fff;padding:14px 28px;border-radius:var(--radius-pill);border:none;font-family:var(--font-body);font-weight:700;cursor:pointer;transition:transform .3s}.newsletter-form button:hover{transform:scale(1.05)}.section-cta{padding:100px 0;text-align:center}.section-cta h2{font-size:clamp(2rem,4vw,3.5rem);margin-bottom:16px}.section-cta p{color:var(--text-dim);font-size:1.1rem;margin-bottom:32px}.section-cta .cta-btns{display:flex;justify-content:center;gap:16px}.faq-snippet-section{padding:80px 0}@media (max-width: 1024px){.reviews-grid,.occ-features-grid,.blog-grid,.also-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.page-hero{padding:120px 0 60px}.page-hero.hero-full{min-height:60vh}.page-hero h1{font-size:clamp(2rem,8vw,3rem)}.icon-row-grid,.reviews-grid,.occ-features-grid,.blog-grid,.occasions-grid{grid-template-columns:1fr}.also-grid{grid-template-columns:repeat(2,1fr)}.newsletter-form{flex-direction:column}.section-cta .cta-btns{flex-direction:column;align-items:center}.section-cta .cta-btns a{width:100%;max-width:300px;text-align:center}.faq-question{font-size:.95rem}}.mobile-menu{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-dark);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:24px}.mobile-menu.open{display:flex}.mobile-menu a{font-size:1.5rem;font-family:var(--font-heading);font-weight:900;transition:color .3s}.mobile-menu a:hover{color:#f36}
