Changed around line 1
+ :root {
+ --primary-color: #ff6b6b;
+ --secondary-color: #f9f1f1;
+ --text-color: #4a4a4a;
+ --accent-color: #ffd3d3;
+ }
+
+ * {
+ margin: 0;
+ padding: 0;
+ box-sizing: border-box;
+ }
+
+ body {
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
+ color: var(--text-color);
+ line-height: 1.6;
+ background: linear-gradient(135deg, #fff5f5 0%, #ffe9e9 100%);
+ }
+
+ header {
+ text-align: center;
+ padding: 2rem;
+ position: relative;
+ }
+
+ .heart-container {
+ height: 100px;
+ position: relative;
+ margin-bottom: 1rem;
+ }
+
+ .heart {
+ position: absolute;
+ left: 50%;
+ transform: translateX(-50%);
+ width: 50px;
+ height: 50px;
+ background-color: var(--primary-color);
+ transform-origin: center;
+ animation: heartbeat 1.5s ease-in-out infinite;
+ }
+
+ .heart:before,
+ .heart:after {
+ content: '';
+ position: absolute;
+ width: 50px;
+ height: 50px;
+ background-color: var(--primary-color);
+ border-radius: 50%;
+ }
+
+ .heart:before {
+ left: -25px;
+ }
+
+ .heart:after {
+ top: -25px;
+ }
+
+ h1 {
+ color: var(--primary-color);
+ font-size: 3rem;
+ margin-bottom: 1rem;
+ text-shadow: 2px 2px 4px rgba(0,0,0,0.1);
+ }
+
+ .hero {
+ text-align: center;
+ padding: 4rem 2rem;
+ position: relative;
+ overflow: hidden;
+ }
+
+ .floating-hearts {
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ top: 0;
+ left: 0;
+ pointer-events: none;
+ }
+
+ .love-letter {
+ padding: 2rem;
+ display: flex;
+ justify-content: center;
+ }
+
+ .paper {
+ background: var(--secondary-color);
+ padding: 3rem;
+ max-width: 600px;
+ border-radius: 10px;
+ box-shadow: 0 10px 30px rgba(0,0,0,0.1);
+ transform: rotate(-1deg);
+ transition: transform 0.3s ease;
+ }
+
+ .paper:hover {
+ transform: rotate(0deg) scale(1.02);
+ }
+
+ .signature {
+ text-align: right;
+ font-style: italic;
+ margin-top: 2rem;
+ }
+
+ .gallery {
+ padding: 4rem 2rem;
+ text-align: center;
+ }
+
+ .photo-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
+ gap: 2rem;
+ padding: 2rem;
+ }
+
+ .photo-frame {
+ background: var(--secondary-color);
+ height: 250px;
+ border-radius: 10px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ box-shadow: 0 5px 15px rgba(0,0,0,0.1);
+ transition: transform 0.3s ease;
+ }
+
+ .photo-frame:hover {
+ transform: translateY(-10px);
+ }
+
+ footer {
+ text-align: center;
+ padding: 2rem;
+ background: var(--accent-color);
+ margin-top: 4rem;
+ }
+
+ @keyframes heartbeat {
+ 0% { transform: translateX(-50%) scale(1); }
+ 50% { transform: translateX(-50%) scale(1.1); }
+ 100% { transform: translateX(-50%) scale(1); }
+ }
+
+ @media (max-width: 768px) {
+ h1 { font-size: 2rem; }
+ .paper { padding: 1.5rem; }
+ .photo-grid { padding: 1rem; }
+ }