.topics-grid{display:grid;gap:var(--space-xl,3rem);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:var(--space-4xl,4rem) var(--space-lg,2rem)}.topic-card{border-radius:var(--radius-lg,12px);cursor:pointer;height:500px;overflow:hidden;position:relative;transition:transform var(--transition-base,.3s ease)}.topic-card:hover{transform:translateY(-8px)}.topic-poster{background-position:50%;background-repeat:no-repeat;background-size:cover;filter:grayscale(100%);height:100%;left:0;position:absolute;top:0;transform:scale(1);transition:filter var(--transition-slow,.6s ease),transform var(--transition-slow,.6s ease);width:100%}.topic-card:hover .topic-poster{filter:grayscale(0);transform:scale(1.1)}.topic-overlay{background:linear-gradient(180deg,transparent 0,rgba(0,0,0,.3) 50%,rgba(0,0,0,.8));height:100%;top:0;z-index:1}.topic-content,.topic-overlay{left:0;position:absolute;width:100%}.topic-content{bottom:0;padding:var(--space-xl,3rem);transition:transform var(--transition-base,.3s ease);z-index:2}.topic-card:hover .topic-content{transform:translateY(-20px)}.topic-content-visible{transition:opacity var(--transition-base,.3s ease)}.topic-card:hover .topic-content-visible{opacity:.9}.topic-title{color:#fff;font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:600;line-height:1.2;margin-bottom:var(--space-sm,1rem)}.topic-hook{color:var(--primary-gold,#c9a961);font-family:Inter,sans-serif;font-size:1rem;font-weight:500;margin:0}.topic-content-hidden{margin-top:var(--space-md,1.5rem);max-height:0;opacity:0;overflow:hidden;transition:opacity var(--transition-slow,.6s ease),max-height var(--transition-slow,.6s ease)}.topic-card:hover .topic-content-hidden{max-height:500px;opacity:1}.topic-takeaways{color:hsla(0,0%,100%,.9);font-family:Inter,sans-serif;font-size:.95rem;line-height:1.6;margin-bottom:var(--space-lg,2rem)}.topic-takeaways ol,.topic-takeaways ul{margin:0;padding-left:var(--space-lg,2rem)}.topic-takeaways li{margin-bottom:var(--space-sm,1rem)}.topic-booking-btn{display:inline-block;margin-top:var(--space-md,1.5rem)}@media (max-width:768px){.topics-grid{gap:var(--space-lg,2rem);grid-template-columns:1fr;padding:var(--space-3xl,3rem) var(--space-md,1.5rem)}.topic-card{height:400px}.topic-title{font-size:1.75rem}}