@import "tailwindcss"; @theme { --color-primary: #1e9a83; --color-dark-bg: #f5f5f0; --color-glass-bg: rgba(0, 0, 0, 0.02); --color-glass-border: rgba(0, 0, 0, 0.08); } :root { --background: #f5f5f0; --foreground: #1a1a1a; --accent: #1e9a83; --border: rgba(0, 0, 0, 0.1); } body { background-color: var(--background); color: var(--foreground); font-family: var(--font-martian), monospace; overflow-x: hidden; -webkit-font-smoothing: antialiased; } /* ===== DIAGONAL LINE DECORATION ===== */ .diagonal-line { position: relative; } .diagonal-line::after { content: ''; position: absolute; top: 0; right: 0; width: 1px; height: 141%; background: var(--border); transform: rotate(-25deg); transform-origin: top right; } /* ===== EDITORIAL GRID ===== */ .editorial-grid { display: grid; border: 1px solid var(--border); } .editorial-cell { border: 1px solid var(--border); position: relative; overflow: hidden; transition: background 0.4s ease; } .editorial-cell:hover { background: rgba(30, 154, 131, 0.03); } /* ===== SECTION DIVIDER ===== */ .section-divider { width: 100%; height: 1px; background: var(--border); } /* ===== BUTTONS ===== */ .button-primary { display: inline-flex; align-items: center; gap: 0.5rem; padding: 1rem 2rem; border: 1px solid var(--foreground); font-family: var(--font-martian), monospace; font-size: 11px; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; transition: all 0.4s ease; color: var(--foreground); background: transparent; } .button-primary:hover { background: var(--foreground); color: var(--background); } .button-secondary { display: inline-flex; align-items: center; gap: 0.5rem; padding: 1rem 2rem; border: 1px solid var(--border); font-family: var(--font-martian), monospace; font-size: 11px; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; transition: all 0.4s ease; color: var(--foreground); } .button-secondary:hover { border-color: var(--foreground); } /* ===== NAV LINK HOVER ===== */ .nav-link-hover { position: relative; } .nav-link-hover::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 0; height: 1px; background: var(--foreground); transition: width 0.3s ease; } .nav-link-hover:hover::after { width: 100%; } /* ===== ANIMATIONS ===== */ @keyframes reveal-up { from { transform: translateY(30px); opacity: 0; } to { transform: translateY(0); opacity: 1; } } .reveal { animation: reveal-up 1s cubic-bezier(0.16, 1, 0.3, 1) forwards; } .reveal-delayed-1 { animation-delay: 0.1s; } .reveal-delayed-2 { animation-delay: 0.2s; } .reveal-delayed-3 { animation-delay: 0.3s; } .reveal-delayed-4 { animation-delay: 0.4s; } .reveal-delayed-5 { animation-delay: 0.5s; } .stagger-item { opacity: 0; animation: reveal-up 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards; } /* ===== STROKE TEXT ===== */ .stroke-text { -webkit-text-stroke: 1px rgba(0, 0, 0, 0.15); color: transparent; } .stroke-text:hover { -webkit-text-stroke: 1px var(--accent); } /* ===== CUSTOM SCROLLBAR ===== */ ::-webkit-scrollbar { width: 4px; } ::-webkit-scrollbar-track { background: var(--background); } ::-webkit-scrollbar-thumb { background: rgba(0, 0, 0, 0.15); border-radius: 10px; } ::-webkit-scrollbar-thumb:hover { background: rgba(0, 0, 0, 0.3); } /* ===== MARQUEE ===== */ @keyframes marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } } .animate-marquee { animation: marquee 30s linear infinite; } .animate-marquee:hover { animation-play-state: paused; } /* ===== EDITORIAL TYPOGRAPHY ===== */ .editorial-headline { font-family: var(--font-martian), monospace; font-weight: 400; text-transform: uppercase; letter-spacing: -0.02em; line-height: 1.1; } /* ===== CELL DIAGONAL ===== */ .cell-diagonal::before { content: ''; position: absolute; top: 0; left: 0; width: 141%; height: 1px; background: var(--border); transform: rotate(-20deg); transform-origin: top left; pointer-events: none; } /* Glass utility for admin panel compatibility */ @utility glass { background: rgba(0, 0, 0, 0.02); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(0, 0, 0, 0.08); }