/* --- Page Hero --- */
.page-hero {
    position: relative;
    background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), url('https://images.unsplash.com/photo-1548013146-72479768bada?ixlib=rb-4.0.3&auto=format&fit=crop&w=1920&q=80') center/cover no-repeat;
    color: var(--white);
    padding: 250px 0 150px;
    margin-top: -80px; 
}
.page-hero h1 { font-size: 50px; margin-bottom: 15px; font-weight: 700; color: #ffffff !important; font-family: "Playfair Display", serif; font-style: italic; }
.page-hero p { font-size: 20px; font-weight: 300; color: rgba(255, 255, 255, 0.9) !important; font-style: italic; }

/* --- Utilities --- */
.pt-100 { padding-top: 100px; }
.pb-100 { padding-bottom: 100px; }
.mt-4 { margin-top: 1.5rem; }
.mb-3 { margin-bottom: 1rem; }
.text-center { text-align: center; }
.img-fluid { max-width: 100%; height: auto; }
.border-radius-custom { border-radius: 20px; }
.shadow-lg { box-shadow: 0 15px 40px rgba(0,0,0,0.15); }

/* --- Our Story Grid --- */
.story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.story-content p { margin-bottom: 20px; color: #555; line-height: 1.8; }

.timeline { border-left: 2px solid var(--primary-color); padding-left: 20px; margin-top: 30px; }
.timeline-item { position: relative; margin-bottom: 25px; }
.timeline-item:last-child { margin-bottom: 0; }
.timeline-dot { position: absolute; left: -27px; top: 5px; width: 12px; height: 12px; background-color: var(--primary-color); border-radius: 50%; box-shadow: 0 0 0 4px rgba(230, 126, 34, 0.2); }
.timeline-item h4 { margin-bottom: 5px; color: var(--secondary-color); }
.timeline-item p { font-size: 14px; margin-bottom: 0; }

/* --- Values Grid --- */
.values-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; }
.value-card { background: var(--white); padding: 40px 30px; border-radius: 15px; text-align: center; box-shadow: 0 5px 20px rgba(0,0,0,0.05); transition: var(--transition); }
.value-card:hover { transform: translateY(-10px); box-shadow: 0 15px 30px rgba(0,0,0,0.1); }
.value-icon { width: 80px; height: 80px; background-color: rgba(230, 126, 34, 0.1); color: var(--primary-color); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 20px; font-size: 32px; transition: var(--transition); }
.value-card:hover .value-icon { background-color: var(--primary-color); color: var(--white); }
.value-card h3 { margin-bottom: 15px; font-size: 20px; color: var(--secondary-color); }
.value-card p { color: #666; font-size: 15px; }

/* --- Responsive Adjustments --- */
@media (max-width: 992px) { .values-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 768px) {
.page-hero h1 { font-size: 50px; margin-bottom: 15px; font-weight: 700; color: #ffffff !important; font-family: "Playfair Display", serif; font-style: italic; }
.page-hero p { font-size: 20px; font-weight: 300; color: rgba(255, 255, 255, 0.9) !important; font-style: italic; }
    .story-grid { grid-template-columns: 1fr; gap: 40px; }
    .story-image { order: -1; }
    .values-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
    .value-card { padding: 20px 15px; }
    .value-icon { width: 50px; height: 50px; font-size: 20px; margin: 0 auto 10px; }
    .value-card h3 { font-size: 16px; margin-bottom: 8px; }
    .value-card p { font-size: 12px; }
}

@media (max-width: 768px) {
    .page-hero {
        padding: 190px 0 110px;
    }
}
