.section { padding: 80px 0; background: var(--color-bg-light); } .container { max-width: 1200px; margin: 0 auto; padding: 0 1.5rem; } .grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 5rem; align-items: center; } /* Left - Image Collage */ .imageCol { position: relative; width: 100%; } .collageWrap { position: relative; width: 100%; aspect-ratio: 1 / 1; max-width: 500px; margin: 0 auto; } .image { object-fit: cover; border-radius: 12px; } .imgLarge { position: absolute; top: 0; right: 0; width: 60%; height: 60%; border-radius: 16px; overflow: hidden; box-shadow: 0 15px 35px rgba(0,0,0,0.1); z-index: 2; border: 4px solid #fff; } .imgSmallBottom { position: absolute; bottom: 0; right: 15%; width: 45%; height: 45%; border-radius: 12px; overflow: hidden; box-shadow: 0 15px 35px rgba(0,0,0,0.1); z-index: 3; border: 4px solid #fff; } .imgSmallLeft { position: absolute; top: 35%; left: 0; width: 50%; height: 40%; border-radius: 12px; overflow: hidden; box-shadow: 0 15px 35px rgba(0,0,0,0.1); z-index: 4; border: 4px solid #fff; } .experienceBadge { position: absolute; bottom: 15%; left: 5%; background: var(--color-primary); padding: 1rem 1.5rem; border-radius: 12px; box-shadow: 0 10px 25px rgba(1, 77, 51, 0.25); z-index: 5; display: flex; flex-direction: column; justify-content: center; } .badgeNumber { font-family: var(--font-sans); font-size: 2.2rem; font-weight: 800; color: #fff; line-height: 1; display: flex; align-items: center; gap: 0.2rem; } .badgeNumber::after { content: '+'; font-size: 1.5rem; color: var(--color-secondary); } .badgeText { font-size: 0.8rem; font-weight: 600; color: rgba(255, 255, 255, 0.85); margin-top: 0.3rem; } /* Decorative restaurant elements (leaf top, plate bottom) */ .decorativeTop { position: absolute; top: -10px; left: -15px; z-index: 1; opacity: 0.9; animation: floatSlow 5s ease-in-out infinite; } .decorativeBottom { position: absolute; bottom: 20%; right: -15px; z-index: 1; opacity: 0.9; animation: floatSlow 5s ease-in-out infinite reverse; } @keyframes floatSlow { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } } /* Right - Content */ .contentCol { padding-right: 1rem; } .tag { display: inline-block; background: rgba(1, 77, 51, 0.1); color: var(--color-primary); padding: 0.4rem 1.2rem; border-radius: 20px; font-family: var(--font-sans); font-size: 0.85rem; font-weight: 700; margin-bottom: 1.5rem; text-transform: uppercase; letter-spacing: 1px; border: 1px solid rgba(1, 77, 51, 0.2); } .title { font-family: var(--font-serif); font-size: 2.5rem; font-weight: 700; color: var(--color-primary); line-height: 1.2; margin-bottom: 1.5rem; } .description { font-size: 1.05rem; line-height: 1.7; color: var(--color-text-medium); margin-bottom: 2.5rem; } .featureCards { display: flex; flex-direction: column; gap: 1.5rem; } .featureCard { display: flex; align-items: flex-start; gap: 1.2rem; padding: 1.8rem; border-radius: 12px; } .cardSolid { background: rgba(1, 77, 51, 0.07); border: 1px solid rgba(1, 77, 51, 0.15); } .cardOutline { background: #fff; border: 1px solid #e0e0e0; box-shadow: 0 4px 15px rgba(0,0,0,0.02); } .iconWrap { width: 60px; height: 60px; border-radius: 53% 47% 33% 67% / 60% 41% 59% 40%; display: flex; align-items: center; justify-content: center; font-size: 1.8rem; flex-shrink: 0; position: relative; z-index: 1; } /* Sparkle top left */ .iconWrap::before { content: ''; position: absolute; top: -8px; left: -10px; width: 20px; height: 20px; background-image: radial-gradient(circle 2px at 10px 2px, currentColor 100%, transparent), radial-gradient(circle 1.5px at 2px 10px, currentColor 100%, transparent), radial-gradient(circle 1px at 16px 16px, currentColor 100%, transparent); z-index: -1; opacity: 0.6; } /* Dotted curve right */ .iconWrap::after { content: ''; position: absolute; top: -4px; right: -6px; width: 30px; height: 30px; border-radius: 50%; border: 2px dashed currentColor; clip-path: polygon(50% 0, 100% 0, 100% 100%, 50% 100%); transform: rotate(45deg); z-index: -1; opacity: 0.4; } .cardSolid .iconWrap { background: var(--color-primary); color: #fff; box-shadow: 0 4px 10px rgba(1, 77, 51, 0.2); } .cardOutline .iconWrap { background: var(--color-bg-light); color: var(--color-primary); } .cardContent { flex: 1; } .cardTitle { font-family: var(--font-sans); font-size: 1.15rem; font-weight: 700; color: var(--color-text-dark); margin-bottom: 0.5rem; } .cardDesc { font-size: 0.9rem; line-height: 1.5; color: var(--color-text-medium); } @media (max-width: 1024px) { .grid { grid-template-columns: 1fr; gap: 4rem; } .collageWrap { margin-bottom: 2rem; } } @media (max-width: 768px) { .title { font-size: 2rem; } .featureCard { padding: 1.2rem; } } @media (max-width: 767px) { .section { padding: 80px 0; } } @media (max-width: 767px) { .section { padding: 40px 0; } } .eyebrow { display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-cursive), cursive; font-size: 1.15rem; color: #d4a017; margin-bottom: 14px; } .eyebrowIcon { font-size: 1.2rem; font-style: normal; font-family: var(--font-inter), sans-serif; } .title em { font-style: italic; color: #d4a017; } @media (max-width: 424px) { .experienceBadge { bottom: -70px; } }