@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.0.1/css/all.min.css');

:root {
  --primary-color: #D01257;
  --secondary-color: #FB90B7;
  --accent-color: #FFCEE4;
  --light-color: #FDF2F8;
  --dark-color: #0F1021;
  --gradient-primary: linear-gradient(135deg, #D01257 0%, #FB90B7 100%);
  --hover-color: #A30D43;
  --background-color: #FFFFFF;
  --text-color: #374151;
  --border-color: rgba(208, 18, 87, 0.15);
  --divider-color: rgba(251, 144, 183, 0.2);
  --shadow-color: rgba(15, 16, 33, 0.08);
  --highlight-color: #FFCEE4;
  --main-font: 'Lora', serif;
  --alt-font: 'Inter', sans-serif;
}

html { scroll-behavior: smooth; }
body { margin: 0; padding: 0; }
.feature-card { transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
.feature-card:hover { transform: scale(1.03) translateY(-5px); border-color: var(--primary-color); }
.btn { transition: all 0.3s ease; }
.btn:hover { background-color: var(--hover-color) !important; color: #fff !important; transform: translateY(-3px); box-shadow: 0 10px 20px rgba(208, 18, 87, 0.3); }
.navigation { transition: all 0.3s ease; }
#menu-toggle:checked ~ .navigation { display: block; position: absolute; top: 100%; left: 0; width: 100%; background: var(--dark-color); padding: 30px 20px; z-index: 100; border-bottom: 3px solid var(--primary-color); }
#menu-toggle:checked ~ .navigation ul { display: flex; flex-direction: column; gap: 25px; align-items: center; }
details > summary { list-style: none; outline: none; transition: color 0.3s; }
details > summary::-webkit-details-marker { display: none; }
details > summary:hover { color: var(--dark-color) !important; }
details[open] summary ~ * { animation: slideDown 0.4s ease-out; }
@keyframes slideDown { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }