/* Shared service page styles (consolidated)
   - All sections use pure white backgrounds
   - Increased padding and larger card sizes
   - Replaces per-page duplicated <style> blocks
*/
:root{ --brand-red:#d9302e; --brand-black:#0b0b0b; --brand-white:#ffffff; --card-radius:10px; }
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior: smooth; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; line-height:1.6; color:var(--brand-black); background-color:var(--brand-white); }
/* keep main content width consistent with other pages */
.container { max-width:1400px; margin:0 auto; padding:0 2rem; }
/* generous but consistent section spacing */
section { padding:4rem 2rem; background:var(--brand-white); }
section h2 { font-size:2.4rem; margin-bottom:1rem; text-align:center; color:var(--brand-red); }
section h3 { font-size:1.25rem; margin-bottom:1.25rem; font-weight:500; }
section h6 { font-size:1rem; font-weight:400; color:#666; margin-bottom:1rem; }

/* Intro/video */
.intro { background:#fff; }
.intro-content { display:grid; grid-template-columns:1fr 1fr; gap:2rem; align-items:center; max-width:1400px; margin:0 auto; }
.intro-text h3 { font-size:2.2rem; margin-bottom:1.25rem; color:var(--brand-black); }
.intro-text p { margin-bottom:1.25rem; line-height:1.8; color:#555; font-size:1.02rem; }
.intro-video { background-color:#000; aspect-ratio:16/9; display:flex; align-items:center; justify-content:center; color:white; font-size:1.2rem; border-radius:8px; position:relative; }
.video-play-btn { width:80px; height:80px; background-color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:transform 0.3s ease; font-size:1.4rem; }
.video-play-btn:hover { transform:scale(1.05); }

/* Clients / logos */
.clients { background:#fff; }
.clients-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:1.25rem; align-items:center; max-width:1400px; margin:0 auto; }
.client-logo { display:flex; align-items:center; justify-content:center; height:120px; background:var(--brand-white); border-radius:var(--card-radius); font-weight:700; color:var(--brand-black); font-size:1rem; padding:1rem; border:1px solid rgba(0,0,0,0.06); text-align:center; }
/* Make client-logo interactive when used as a link */
.client-logo {
   text-decoration: none;
   transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}
.client-logo:hover,
.client-logo:focus {
   transform: translateY(-4px);
   box-shadow: 0 8px 18px rgba(11,11,11,0.06);
   border-color: rgba(217,48,46,0.25);
   color: var(--brand-black);
}
.client-logo:active { transform: translateY(-2px); }
.client-logo strong{ display:block; color:var(--brand-black); margin-bottom:6px; }

/* Testimonials */
.testimonials { background:#fff; }
.testimonials-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(400px,1fr)); gap:2rem; max-width:1400px; margin:0 auto; }
.testimonial-card { background:var(--brand-white); padding:2.5rem; border-radius:var(--card-radius); border:1px solid rgba(0,0,0,0.06); min-height:280px; display:flex; flex-direction:column; justify-content:space-between; box-shadow: 0 2px 8px rgba(0,0,0,0.04); transition: transform 0.2s ease, box-shadow 0.2s ease; }
.testimonial-card:hover { transform: translateY(-4px); box-shadow: 0 6px 16px rgba(0,0,0,0.08); }
.testimonial-text { font-size:1.15rem; line-height:1.8; color:var(--brand-black); font-style:normal; }
.testimonial-text strong { font-size:1.35rem; display:block; margin-bottom:0.75rem; color:var(--brand-black); font-style:normal; font-weight:700; }

/* Topics / cards */
.topics { background:#fff; }
.topics-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(350px,1fr)); gap:1.5rem; max-width:1400px; margin:0 auto; }
.topic-card { background:var(--brand-black); border-radius:var(--card-radius); display:flex; align-items:center; justify-content:center; color:var(--brand-white); font-size:1.6rem; font-weight:700; cursor:pointer; transition:transform 0.18s ease; position:relative; overflow:hidden; min-height:200px; padding:1rem; }
.topic-card:hover { transform:translateY(-6px); }
.topic-label { position:relative; z-index:2; text-align:center; padding:.75rem; font-size:1rem; }

/* Experience / images */
.experience { background:#fff; }
.experience-content { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; max-width:1400px; margin:0 auto; }
.experience-text h2 { text-align:left; margin-bottom:1.5rem; font-size:2rem; }
.experience-text p { margin-bottom:1.5rem; line-height:1.9; color:#555; font-size:1.05rem; }
.experience-image { background:linear-gradient(135deg,#ff6b6b 0%,#ff8c42 100%); aspect-ratio:16/9; border-radius:10px; display:flex; align-items:center; justify-content:center; color:white; font-size:1.25rem; }

.about { background:#fff; }
.about-header { background:linear-gradient(135deg,#5d5050 0%,#232222 100%); color:#fff; padding:3rem 2rem; border-radius:10px; margin-bottom:2rem; text-align:center; }
.about-content { max-width:1000px; margin:0 auto; }
.about-text { font-size:1.05rem; line-height:1.9; color:#555; margin-bottom:1.5rem; text-align:center; }

@media (max-width:1024px){
   .intro-content, .experience-content{ grid-template-columns:1fr; }
   .intro-text h3, .experience-text h2{ text-align:center; }
   section{ padding:3rem 1.25rem; }
   section h2{ font-size:2rem; }
   .topic-card{ font-size:1.2rem; min-height:180px; }
   .client-logo{ height:110px; }
   .testimonials-grid{ grid-template-columns:1fr; }
   .topics-grid{ grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); }
}
@media (max-width:768px){
   .container{ padding:0 1rem; }
   .testimonials-grid{ grid-template-columns:1fr; gap:1.5rem; }
   .testimonial-card{ padding:2rem 1.5rem; min-height:auto; }
   .testimonial-text{ font-size:1rem; }
   .intro-content{ gap:1.5rem; }
   .intro-text h3{ font-size:1.8rem; }
   .intro-text p{ font-size:0.95rem; }
   section h2{ font-size:1.75rem; }
   .topics-grid{ grid-template-columns:1fr; gap:1rem; }
}
@media (max-width:640px){
   .video-play-btn{ width:64px; height:64px; }
   section{ padding:2rem 0.75rem; }
   .topic-card{ font-size:1rem; min-height:140px; }
   .client-logo{ height:90px; }
   .testimonial-card{ padding:1.5rem 1rem; }
   .testimonial-text{ font-size:1.05rem; line-height:1.7; }
   .testimonial-text strong{ font-size:1.15rem; }
   section h2{ font-size:1.5rem; }
   .intro-text h3{ font-size:1.5rem; }
}
@media (max-width:480px){
   section{ padding:1.5rem 0.5rem; }
   .container{ padding:0 0.75rem; }
   .testimonial-card{ padding:1.25rem 0.75rem; }
   .testimonial-text{ font-size:1rem; line-height:1.65; }
   .testimonial-text strong{ font-size:1.1rem; }
   section h2{ font-size:1.35rem; margin-bottom:1.5rem; }
   .intro-text h3{ font-size:1.35rem; }
   .intro-text h6{ font-size:0.9rem; }
   .intro-text p{ font-size:0.9rem; }
}
