244 lines
5.4 KiB
CSS
244 lines
5.4 KiB
CSS
@tailwind base;
|
||
@tailwind components;
|
||
@tailwind utilities;
|
||
|
||
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500&display=swap');
|
||
|
||
:root {
|
||
--color-orange: #f97316;
|
||
--color-orange-light: #fb923c;
|
||
--color-blue: #2563eb;
|
||
--color-blue-light: #60a5fa;
|
||
--color-dark: #18212f;
|
||
--color-darker: #111925;
|
||
}
|
||
|
||
* {
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
html {
|
||
scroll-behavior: smooth;
|
||
}
|
||
|
||
body {
|
||
background-color: #f0f4f8;
|
||
color: #1a202c;
|
||
font-family: 'Inter', system-ui, sans-serif;
|
||
-webkit-font-smoothing: antialiased;
|
||
}
|
||
|
||
.dark body {
|
||
background-color: #18212f;
|
||
color: #f1f5f9;
|
||
}
|
||
|
||
@layer components {
|
||
/* Primary button – orange, darkens on hover */
|
||
.btn-primary {
|
||
@apply inline-flex items-center justify-center rounded-xl
|
||
bg-orange-500 text-white font-bold
|
||
transition-all duration-200
|
||
hover:bg-orange-600 hover:scale-[1.03]
|
||
hover:shadow-lg hover:shadow-orange-900/40
|
||
active:scale-[0.98];
|
||
}
|
||
|
||
/* Secondary button – outlined, fills subtly on hover */
|
||
.btn-secondary {
|
||
@apply inline-flex items-center justify-center rounded-xl
|
||
border border-slate-300 text-slate-700 font-semibold
|
||
transition-all duration-200
|
||
hover:bg-slate-100 hover:border-slate-400 hover:text-slate-900
|
||
active:scale-[0.98]
|
||
dark:border-gray-600 dark:text-slate-300
|
||
dark:hover:bg-white/5 dark:hover:border-gray-400 dark:hover:text-white;
|
||
}
|
||
|
||
/* Small nav button */
|
||
.btn-nav {
|
||
@apply px-4 py-2 rounded-lg bg-orange-500 text-white text-sm font-bold
|
||
transition-all duration-200
|
||
hover:bg-orange-600 hover:shadow-md hover:shadow-orange-900/30
|
||
active:scale-[0.97];
|
||
}
|
||
}
|
||
|
||
@layer utilities {
|
||
.text-gradient {
|
||
@apply bg-gradient-to-r from-blue-400 to-blue-600 bg-clip-text text-transparent;
|
||
}
|
||
|
||
.text-gradient-orange {
|
||
@apply bg-gradient-to-r from-orange-400 to-orange-500 bg-clip-text text-transparent;
|
||
}
|
||
|
||
/* Dot matrix – default background pattern */
|
||
.bg-grid {
|
||
background-image: radial-gradient(rgba(249, 115, 22, 0.06) 1px, transparent 1px);
|
||
background-size: 28px 28px;
|
||
}
|
||
|
||
/* Alt: subtle line grid */
|
||
.bg-grid-lines {
|
||
background-image: linear-gradient(rgba(249, 115, 22, 0.05) 1px, transparent 1px),
|
||
linear-gradient(90deg, rgba(249, 115, 22, 0.05) 1px, transparent 1px);
|
||
background-size: 60px 60px;
|
||
}
|
||
|
||
/* Alt: diagonal hatching */
|
||
.bg-diagonal {
|
||
background-image: repeating-linear-gradient(
|
||
-45deg,
|
||
rgba(249, 115, 22, 0.04) 0px,
|
||
rgba(249, 115, 22, 0.04) 1px,
|
||
transparent 1px,
|
||
transparent 14px
|
||
);
|
||
}
|
||
|
||
.card-hover {
|
||
@apply transition-all duration-300 hover:-translate-y-1 hover:shadow-lg hover:shadow-orange-500/10;
|
||
}
|
||
}
|
||
|
||
/* Dark-mode bg-grid override — must live outside @layer so it wins over the base rule */
|
||
.dark .bg-grid {
|
||
background-image: radial-gradient(rgba(249, 115, 22, 0.15) 1px, transparent 1px);
|
||
}
|
||
|
||
/* Tagline ticker animation */
|
||
@keyframes ticker-scroll {
|
||
0% { transform: translateX(0); }
|
||
100% { transform: translateX(-50%); }
|
||
}
|
||
|
||
.animate-ticker {
|
||
animation: ticker-scroll 25s linear infinite;
|
||
}
|
||
|
||
/* Legal pages content styling */
|
||
.legal-content section {
|
||
margin-bottom: 2.5rem;
|
||
}
|
||
.legal-content h2 {
|
||
font-size: 1.25rem;
|
||
font-weight: 700;
|
||
color: #1a202c;
|
||
margin-bottom: 0.75rem;
|
||
margin-top: 2rem;
|
||
padding-bottom: 0.5rem;
|
||
border-bottom: 1px solid #cbd5e0;
|
||
}
|
||
.legal-content h3 {
|
||
font-size: 0.95rem;
|
||
font-weight: 600;
|
||
color: #ea6c00;
|
||
margin-top: 1.25rem;
|
||
margin-bottom: 0.4rem;
|
||
text-transform: uppercase;
|
||
letter-spacing: 0.05em;
|
||
}
|
||
.legal-content p {
|
||
color: #4a5568;
|
||
line-height: 1.8;
|
||
margin-bottom: 0.75rem;
|
||
font-size: 0.925rem;
|
||
}
|
||
.legal-content ul {
|
||
list-style: none;
|
||
padding: 0;
|
||
margin: 0.75rem 0 1rem 0;
|
||
}
|
||
.legal-content ul li {
|
||
color: #4a5568;
|
||
font-size: 0.925rem;
|
||
line-height: 1.75;
|
||
padding-left: 1.25rem;
|
||
position: relative;
|
||
margin-bottom: 0.5rem;
|
||
}
|
||
.legal-content ul li::before {
|
||
content: '';
|
||
position: absolute;
|
||
left: 0;
|
||
top: 0.65rem;
|
||
width: 6px;
|
||
height: 6px;
|
||
border-radius: 50%;
|
||
background: #f97316;
|
||
}
|
||
.legal-content a {
|
||
color: #2563eb;
|
||
text-decoration: underline;
|
||
text-underline-offset: 3px;
|
||
}
|
||
.legal-content a:hover {
|
||
color: #f97316;
|
||
}
|
||
.legal-content strong {
|
||
color: #1a202c;
|
||
font-weight: 600;
|
||
}
|
||
.legal-content .note {
|
||
background: #e8eef4;
|
||
border-left: 3px solid #f97316;
|
||
padding: 0.75rem 1rem;
|
||
border-radius: 0 0.5rem 0.5rem 0;
|
||
margin: 0.75rem 0;
|
||
}
|
||
.legal-content .note p {
|
||
margin-bottom: 0;
|
||
font-size: 0.875rem !important;
|
||
}
|
||
|
||
/* Legal pages – dark mode overrides */
|
||
.dark .legal-content h2 {
|
||
color: #f1f5f9;
|
||
border-bottom-color: #2d3748;
|
||
}
|
||
.dark .legal-content h3 {
|
||
color: #fb923c;
|
||
}
|
||
.dark .legal-content p,
|
||
.dark .legal-content ul li {
|
||
color: #94a3b8;
|
||
}
|
||
.dark .legal-content a {
|
||
color: #60a5fa;
|
||
}
|
||
.dark .legal-content a:hover {
|
||
color: #fb923c;
|
||
}
|
||
.dark .legal-content strong {
|
||
color: #e2e8f0;
|
||
}
|
||
.dark .legal-content .note {
|
||
background: #1e2a3d;
|
||
}
|
||
|
||
/* Scrollbar */
|
||
::-webkit-scrollbar {
|
||
width: 6px;
|
||
}
|
||
::-webkit-scrollbar-track {
|
||
background: #e8eef4;
|
||
}
|
||
::-webkit-scrollbar-thumb {
|
||
background: #94a3b8;
|
||
border-radius: 3px;
|
||
}
|
||
::-webkit-scrollbar-thumb:hover {
|
||
background: #f97316;
|
||
}
|
||
|
||
.dark ::-webkit-scrollbar-track {
|
||
background: #18212f;
|
||
}
|
||
.dark ::-webkit-scrollbar-thumb {
|
||
background: #2d3748;
|
||
}
|
||
.dark ::-webkit-scrollbar-thumb:hover {
|
||
background: #f97316;
|
||
}
|