FCDM-website-new/app/globals.css

212 lines
5.5 KiB
CSS

@tailwind base;
@tailwind components;
@tailwind utilities;
@layer base {
:root {
--background: 0 0% 100%;
--foreground: 222.2 84% 4.9%;
--card: 0 0% 100%;
--card-foreground: 222.2 84% 4.9%;
--popover: 0 0% 100%;
--popover-foreground: 222.2 84% 4.9%;
--primary: 222.2 47.4% 11.2%;
--primary-foreground: 210 40% 98%;
--secondary: 210 40% 96%;
--secondary-foreground: 222.2 47.4% 11.2%;
--muted: 210 40% 96%;
--muted-foreground: 215.4 16.3% 46.9%;
--accent: 210 40% 96%;
--accent-foreground: 222.2 47.4% 11.2%;
--destructive: 0 84.2% 60.2%;
--destructive-foreground: 210 40% 98%;
--border: 214.3 31.8% 91.4%;
--input: 214.3 31.8% 91.4%;
--ring: 222.2 84% 4.9%;
--radius: 0.5rem;
--chart-1: 12 76% 61%;
--chart-2: 173 58% 39%;
--chart-3: 197 37% 24%;
--chart-4: 43 74% 66%;
--chart-5: 27 87% 67%;
--font-oswald: var(--font-oswald);
--font-permanent-marker: var(--font-permanent-marker);
--font-playfair-display: var(--font-playfair-display);
--font-roboto: var(--font-roboto);
}
.dark {
--background: 222.2 84% 4.9%;
--foreground: 210 40% 98%;
--card: 222.2 84% 4.9%;
--card-foreground: 210 40% 98%;
--popover: 222.2 84% 4.9%;
--popover-foreground: 210 40% 98%;
--primary: 210 40% 98%;
--primary-foreground: 222.2 47.4% 11.2%;
--secondary: 217.2 32.6% 17.5%;
--secondary-foreground: 210 40% 98%;
--muted: 217.2 32.6% 17.5%;
--muted-foreground: 215 20.2% 65.1%;
--accent: 217.2 32.6% 17.5%;
--accent-foreground: 210 40% 98%;
--destructive: 0 62.8% 30.6%;
--destructive-foreground: 210 40% 98%;
--border: 217.2 32.6% 17.5%;
--input: 217.2 32.6% 17.5%;
--ring: 212.7 26.8% 83.9%;
--chart-1: 220 70% 50%;
--chart-2: 160 60% 45%;
--chart-3: 30 80% 55%;
--chart-4: 280 65% 60%;
--chart-5: 340 75% 55%;
}
}
@layer base {
* {
@apply border-border;
}
body {
@apply bg-background text-foreground;
font-family: var(--font-oswald), sans-serif;
font-weight: 300;
/* Ensure smooth font rendering */
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: optimizeLegibility;
}
/* All headings use Permanent Marker */
h1,
h2,
h3,
h4,
h5,
h6 {
font-family: var(--font-permanent-marker), cursive;
font-weight: 400;
/* Optimize font rendering for headings */
font-display: swap;
}
/* Navigation uses Oswald */
nav,
nav a {
font-family: var(--font-oswald), sans-serif;
font-weight: 300;
}
/* Ensure all text elements use Oswald by default */
p,
span,
div,
a,
button,
input,
textarea,
label {
font-family: var(--font-oswald), sans-serif;
font-weight: 300;
}
/* Specific font classes */
.font-oswald {
font-family: var(--font-oswald), sans-serif !important;
font-weight: 300 !important;
}
.font-roboto {
font-family: var(--font-roboto), sans-serif !important;
}
.font-permanent-marker {
font-family: var(--font-permanent-marker), cursive !important;
}
.font-playfair {
font-family: var(--font-playfair-display), serif !important;
}
/* Hero title - using Permanent Marker */
.hero-title {
font-family: var(--font-permanent-marker), cursive !important;
font-weight: 400 !important;
letter-spacing: -0.02em;
font-display: swap;
}
/* Section titles - using Permanent Marker */
.section-title {
font-family: var(--font-permanent-marker), cursive !important;
font-weight: 400 !important;
font-display: swap;
}
/* Service card titles - using Permanent Marker */
.service-title {
font-family: var(--font-permanent-marker), cursive !important;
font-weight: 400 !important;
font-display: swap;
}
/* Testimonial names - using Permanent Marker */
.testimonial-name {
font-family: var(--font-permanent-marker), cursive !important;
font-weight: 400 !important;
font-display: swap;
}
/* Prevent font flash during load */
.font-loading {
visibility: hidden;
}
.fonts-loaded .font-loading {
visibility: visible;
}
/* Custom height for larger logos */
.max-h-30 {
max-height: 7.5rem; /* 120px */
}
/* Text shadow */
.text-shadow-sm {
text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8);
}
}
/* Critical font loading optimization */
@font-face {
font-family: "Oswald";
font-style: normal;
font-weight: 300;
font-display: swap;
src: url("https://fonts.gstatic.com/s/oswald/v53/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvsUtiZTaR.woff2") format("woff2");
unicode-range:
U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
font-family: "Roboto";
font-style: normal;
font-weight: 400;
font-display: swap;
src: url("https://fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4mxKKTU1Kg.woff2") format("woff2");
unicode-range:
U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
font-family: "Roboto";
font-style: normal;
font-weight: 300;
font-display: swap;
src: url("https://fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmEU9fBBc4AMP6lQ.woff2") format("woff2");
unicode-range:
U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}