@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600&display=swap');

.occasions>.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.5px;color:#a70d60}
.occasions h2{font-size:clamp(43px,4.6vw,61px);line-height:1.12;color:#382b35;margin-bottom:48px}
.occasions h2::after{content:"";display:block;width:122px;height:2px;margin:18px auto 0;background:linear-gradient(90deg,transparent,#c91478 26%,#c91478 74%,transparent)}
.occasion-list{padding:10px 20px;background:rgba(255,251,249,.94)}
.occasion{position:relative;grid-template-columns:68px minmax(0,1.15fr) minmax(0,1fr);gap:24px;padding:30px 22px;border-radius:8px;transition:background .3s ease,box-shadow .3s ease,transform .3s ease}
.occasion::before{content:"";position:absolute;top:16px;bottom:16px;left:0;width:3px;border-radius:3px;background:#c91478;transform:scaleY(0);transform-origin:center;transition:transform .3s ease}
.occasion span{display:inline-flex;align-items:center;justify-content:center;width:44px;height:38px;border:1px solid #ddb4c5;border-radius:50px;background:#fffaf7;color:#aa145f;font:600 19px/1 'Cormorant Garamond',Georgia,serif;box-shadow:0 4px 12px rgba(90,48,68,.07)}
.occasion h3{font:600 clamp(29px,2.5vw,37px)/1.07 'Cormorant Garamond',Georgia,serif;color:#392935;letter-spacing:-.015em}
.occasion p{color:#493c45;font:500 clamp(15px,1.15vw,17px)/1.6 Montserrat,Arial,sans-serif}
@media(hover:hover){.occasion:hover{background:#fff5f9;box-shadow:0 12px 26px rgba(90,48,68,.1);transform:translateY(-3px)}.occasion:hover::before{transform:scaleY(1)}.occasion:hover h3{color:#9e145e}}
@media(max-width:700px){.occasions h2{font-size:clamp(36px,8vw,48px);margin-bottom:33px}.occasion-list{padding:8px 12px}.occasion{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:22px 10px}.occasion span{width:39px;height:35px;font-size:17px}.occasion h3{font-size:clamp(27px,6vw,34px)}.occasion p{grid-column:2;font-size:15px}}
@media(prefers-reduced-motion:reduce){.occasion,.occasion::before{transition:none}.occasion:hover{transform:none}}
