:root {
--pharos-orange: #ec430b;
--pharos-dark-orange: #d53208;
--pharos-light-orange: #fff3e0;
--pharos-black: #1A1A1A;
--pharos-dark-gray: #2C2C2C;
--pharos-medium-gray: #666666;
--pharos-light-gray: #F5F5F5;
--pharos-white: #FFFFFF;
--pharos-font-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
--pharos-font-secondary: 'Georgia', 'Times New Roman', serif;
--pharos-border-radius: 8px;
--bs-primary: #FF6B35;
--bs-primary-rgb: 255, 107, 53;
--bs-btn-border-radius: 8px;
} body {
font-family: var(--pharos-font-primary);
line-height: 1.6;
color: var(--pharos-dark-gray);
background-color: var(--pharos-light-gray);
}
h1, h2, h3, h4, h5, h6 {
font-weight: 600;
line-height: 1.3;
color: var(--pharos-black);
} .pharos-header {
background-color: var(--pharos-orange);
}
.pharos-brand {
color: var(--pharos-white);
font-weight: 700;
text-decoration: none;
} .pharos-hero {
background-color: var(--pharos-black);
color: var(--pharos-white);
}
.hero-title {
font-weight: 700;
color: var(--pharos-black);
}
.hero-subtitle {
color: var(--pharos-black);
}
.hero-description {
color: var(--pharos-black);
max-width: 800px;
} .section-title {
position: relative;
}
.section-title::after {
content: '';
display: block;
width: 60px;
height: 3px;
background-color: var(--pharos-orange);
margin: 1rem auto 0;
} .text-ph-orange { color: var(--pharos-orange); }
.text-ph-dark-orange { color: var(--pharos-dark-orange); }
.text-ph-light-orange { color: var(--pharos-light-orange); }
.text-ph-black { color: var(--pharos-black); }
.text-ph-dark-gray { color: var(--pharos-dark-gray); }
.text-ph-medium-gray { color: var(--pharos-medium-gray); }
.text-ph-light-gray { color: var(--pharos-light-gray); }
.text-ph-white { color: var(--pharos-white); } .bg-ph-orange { background-color: var(--pharos-orange); }
.bg-ph-dark-orange { background-color: var(--pharos-dark-orange); }
.bg-ph-light-orange { background-color: var(--pharos-light-orange); }
.bg-ph-black { background-color: var(--pharos-black); }
.bg-ph-dark-gray { background-color: var(--pharos-dark-gray); }
.bg-ph-medium-gray { background-color: var(--pharos-medium-gray); }
.bg-ph-light-gray { background-color: var(--pharos-light-gray); }
.bg-ph-white { background-color: var(--pharos-white); } .ph-card-accent {
border-left: 4px solid var(--pharos-orange);
}
.ph-card-accent-lg {
border-left: 6px solid var(--pharos-orange);
}
.ph-card-bottom-accent {
border-bottom: 4px solid var(--pharos-orange);
}
.ph-card-background {
background: var(--pharos-light-orange);
}
.ph-card-hover:hover {
transform: translateY(-2px);
box-shadow: var(--bs-box-shadow-lg);
}
.ph-pill {
display: inline-block;
font-size: 0.75rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.5px;
padding: 0.25rem 0.75rem;
border-radius: 999px;
background: var(--pharos-light-gray);
color: var(--pharos-orange);
} .ph-circle {
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
color: var(--pharos-white);
}
.ph-circle--sm {
width: 30px;
height: 30px;
font-size: 0.875rem;
}
.ph-circle--md {
width: 40px;
height: 40px;
font-size: 1rem;
}
.ph-circle--lg {
width: 60px;
height: 60px;
font-size: 1.5rem;
}
.ph-circle--xl {
width: 80px;
height: 80px;
font-size: 2rem;
}
.ph-circle--orange {
background-color: var(--pharos-orange);
}
.ph-circle--black {
background-color: var(--pharos-black);
} .btn-primary {
--bs-btn-bg: var(--pharos-orange);
--bs-btn-border-color: var(--pharos-orange);
--bs-btn-hover-bg: var(--pharos-dark-orange);
--bs-btn-hover-border-color: var(--pharos-dark-orange);
--bs-btn-active-bg: var(--pharos-dark-orange);
--bs-btn-active-border-color: var(--pharos-dark-orange);
}
.btn-outline-primary {
--bs-btn-color: var(--pharos-orange);
--bs-btn-border-color: var(--pharos-orange);
--bs-btn-hover-bg: var(--pharos-orange);
--bs-btn-hover-border-color: var(--pharos-orange);
--bs-btn-hover-color: #fff;
--bs-btn-active-bg: var(--pharos-dark-orange);
--bs-btn-active-border-color: var(--pharos-dark-orange);
} .ph-text-muted {
color: var(--pharos-medium-gray);
}
.ph-text-accent {
color: var(--pharos-orange);
font-weight: 500;
font-style: italic;
}
.ph-text-light {
color: var(--pharos-light-gray);
} .pharos-cta-section {
background-color: var(--pharos-white);
border-radius: var(--pharos-border-radius);
}
.cta-note {
font-style: italic;
color: var(--pharos-medium-gray);
} .form-control,
.form-select {
border-radius: var(--pharos-border-radius);
}
.form-control:focus,
.form-select:focus {
border-color: var(--pharos-orange);
box-shadow: 0 0 0 0.2rem rgba(255, 107, 53, 0.25);
} .pharos-footer {
background-color: var(--pharos-black);
color: var(--pharos-white);
}
.footer-contact p {
color: var(--pharos-light-gray);
} .btn:focus {
outline: 2px solid var(--pharos-orange);
outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
* {
animation-duration: 0.01ms !important;
transition-duration: 0.01ms !important;
}
} @media print {
.pharos-header,
.pharos-footer {
display: none;
}
body {
background: white;
}
}