/* landing page styles moved from Index */
.hero {
    background: #0b57a1;/*#0278f7;*/
    color: #fff;
    padding: 6rem 1rem 5rem;
    text-align: center;
    position: relative;
    overflow: hidden
}
.hero .eyebrow{font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:.5rem;font-size:1rem;opacity:.95}
.hero .headline{font-weight:900;font-size:clamp(48px,9vw,140px);line-height:.9;margin:.2rem 0 1rem;letter-spacing:-2px}
.hero .lead{max-width:700px;margin:1.5rem auto 2.5rem;color:rgba(255,255,255,.95);font-size:1.05rem;line-height:1.6}
.cta {
    display: inline-block;
    background: #e80700;
    color: #fff;
    padding: .75rem 1.25rem;
    border-radius: 8px;
    font-weight: 700;
    text-decoration: none
}
.hero .circle {
    width: 96px;
    height: 96px;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    box-shadow: 0 6px 18px rgba(0,0,0,.25)
}
.hero .circle.c1{left:8%;top:18%}.hero .circle.c2{right:9%;top:22%}.hero .circle.c3{left:12%;bottom:6%}
.intro{padding:4.5rem 1rem 3rem;text-align:center;max-width:980px;margin:0 auto}.intro h2{font-size:2.25rem;font-weight:600;margin-bottom:1rem}.intro p.lead-detail{color:#444;max-width:720px;margin:0 auto;line-height:1.8}
.services{max-width:1100px;margin:3rem auto 6rem;padding:0 1rem}.service-item{padding:2.25rem 0;border-top:1px solid #cfcfcf;display:flex;align-items:center;justify-content:space-between}.service-item h3{margin:0;font-size:2.25rem;font-weight:500}.service-item .plus{font-size:1.75rem;color:#111;padding-left:1rem}
button.plus{background:transparent;border:0;width:36px;height:36px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.25rem;color:#111;padding:0}
button.plus:focus{outline:0;box-shadow:none}button.plus::after{content:'+';display:block}button.plus:not(.collapsed)::after{content:'−'}
@media (max-width:700px){.hero .headline{font-size:48px}.service-item h3{font-size:1.5rem}}

/* Services page hero responsive styles */
.services-hero{display:flex;gap:3rem;align-items:center;justify-content:space-between}
.services-content{flex:1;min-width:320px;padding-right:1rem}
.services-title{font-size:4rem;margin-top:0.6rem;line-height:1.02;font-weight:700}
.services-desc{color:#444;max-width:560px;margin-top:1.25rem;line-height:1.9;font-size:1.05rem}
.services-image{width:460px;flex-shrink:0}
.services-image img{width:100%;height:auto;border-radius:6px;box-shadow:0 8px 28px rgba(0,0,0,0.14)}

/* Reusable section utilities for services */
.section {padding:4rem 1rem;background:#fff}
.container-narrow{max-width:1100px;margin:0 auto;padding:0 1rem}
.eyebrow-strong{font-weight:700;letter-spacing:.08em;color:var(--brand-blue);font-size:.85rem;text-transform:uppercase}
.section-title{font-size:3.5rem;font-weight:700;line-height:1.03;margin-top:1rem;margin-bottom:1.25rem}
.section-copy{max-width:560px;color:#333;margin-bottom:1.5rem}
.media-image{height:520px;overflow:hidden;border-radius:4px}
.media-image img{width:100%;height:100%;object-fit:cover;object-position:center right}
.cta-btn {
    background: #e80700;
    color: #001;
    padding: .6rem 1rem;
    border-radius: 8px;
    display: inline-block;
    font-weight: 600;
    text-decoration: none
}

@media (max-width:1100px){
    .services-hero{gap:2rem}
    .services-image{width:360px}
    .services-title{font-size:3rem}
}

@media (max-width:900px){
    .services-hero{flex-direction:column;align-items:flex-start}
    .services-image{width:100%;order:2;margin-top:1.25rem}
    .services-title{font-size:2rem}
}
