:root { --red: #c82027; --green: #1f6d47; --text: #1f2937; --muted: #667085; --bg: #f7fbf8; } * { box-sizing: border-box; } body { margin: 0; font-family: 'Inter', Arial, Helvetica, sans-serif; color: var(--text); background: linear-gradient(180deg, #fff, var(--bg)); letter-spacing: .01em; } .container { width: min(1120px, calc(100% - 28px)); margin: 0 auto; } header { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.95); backdrop-filter: blur(10px); border-bottom: 1px solid rgba(0,0,0,.08); } .nav { min-height: 76px; display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; } .btn { border-radius: 999px; text-decoration: none; padding: 10px 16px; min-height: 44px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; border: 1px solid transparent; transition: transform .18s ease, box-shadow .18s ease; } .btn:focus-visible { outline: 2px solid var(--green); outline-offset: 2px; } .btn:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(0,0,0,.09); } .btn-red { background: var(--red); color: #fff; } .btn-green { background: var(--green); color: #fff; } .btn-soft { background: #eef8f2; color: #165b3a; border-color: rgba(31,109,71,.2); } .hero { padding: 28px 0 12px; } .hero-card { background: #fff; border: 1px solid rgba(0,0,0,.08); border-radius: 20px; padding: 22px; box-shadow: 0 12px 30px rgba(0,0,0,.08); } h1 { margin: 0 0 8px; color: var(--red); } .muted { color: var(--muted); } .grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; margin: 18px 0 34px; } .day-card { background: #fff; border: 1px solid rgba(0,0,0,.08); border-radius: 16px; padding: 14px; } .day-card h3 { margin: 0 0 10px; color: var(--green); } .slot { margin-bottom: 10px; } .slot strong { display: block; font-size: .86rem; color: #4b5563; text-transform: uppercase; } .slot span { display: block; margin-top: 3px; } .legend { font-size: .92rem; color: var(--muted); margin-top: 10px; } .package-picker { margin-top: 14px; display: grid; gap: 6px; max-width: 360px; } .package-picker label { font-size: .9rem; color: var(--muted); font-weight: 700; } .package-picker select { width: 100%; border: 1px solid rgba(0,0,0,.14); border-radius: 12px; padding: 10px 12px; min-height: 44px; font: inherit; background: #fff; color: var(--text); } .note { margin-top: 14px; padding: 12px; background: #fff7dc; border: 1px solid #f3e4a1; border-radius: 12px; color: #6f5800; font-size: .92rem; } @media (max-width: 980px) { .grid { grid-template-columns: repeat(2, minmax(0,1fr)); } } @media (max-width: 640px) { .grid { grid-template-columns: 1fr; } } @media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }
@media (max-width: 720px) { .container { width: min(1120px, calc(100% - 20px)); } .nav { justify-content: center; } .nav .btn { flex: 1 1 calc(50% - 8px); min-width: 140px; } .hero-card { padding: 16px; } .controls { grid-template-columns: 1fr !important; } }
