.services-offers { background:#F7F4EE; padding:20px 0; }
.services-offers>.container { max-width:1280px; }
.services-offer { padding:64px 0; border-bottom:2px solid #A9BCB2; }
.services-offer:last-child { border-bottom:0; }
.services-offer-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:64px; align-items:start; }
.services-offer-intro .eyebrow { color:#174A5B; font-size:11px; letter-spacing:.2em; }
.services-offer h2 { font-family:'Cormorant Garamond',Georgia,serif; font-size:48px; line-height:1.1; font-weight:500; color:#103C4A; margin:18px 0; }
.services-offer p { color:#385968; font-size:16px; line-height:1.7; margin:0 0 18px; }
.services-offer .service-topics { display:block; font-size:12px; color:#174A5B; margin:22px 0; }
.services-offer .service-detail-image { display:block; width:100%; height:auto; aspect-ratio:1.5; object-fit:cover; border-radius:14px; }
.services-offer-body h4 { font-family:'Cormorant Garamond',Georgia,serif; font-size:28px; font-weight:500; color:#103C4A; margin:0 0 18px; }
.services-offer .service-formats { border-top:1px solid #DCE8E1; padding-top:24px; margin-top:26px; }
.services-offer-button { display:inline-flex; align-items:center; gap:12px; max-width:100%; padding:16px 26px; border-radius:999px; background:#174A5B; color:#F7F4EE; font-size:14px; font-weight:600; min-height:48px; line-height:1.5; }
.services-offer-button:hover { background:#103C4A; }
.services-offer-button:focus-visible { outline:3px solid #B99A62; outline-offset:4px; }
.services-book { background:#F7F4EE; padding:12px 0 60px; }
.services-book .home-book-feature { margin:0 auto; }
.services-book h2 { font-family:'Cormorant Garamond',Georgia,serif; font-size:32px; line-height:1.15; font-weight:500; color:#103C4A; margin:10px 0; }
.services-book a:focus-visible { outline:3px solid #B99A62; outline-offset:4px; }
@media(max-width:599px) { .services-book { padding-bottom:42px; } .services-book h2 { font-size:25px; } }
@media(max-width:899px) { .services-offer-grid { grid-template-columns:1fr; gap:32px; } .services-offer { padding:44px 0; } .services-offer h2 { font-size:40px; } .services-offer-intro .service-detail-image { max-width:620px; } }
@media(max-width:599px) { .services-offers>.container { padding:0 20px; } .services-offer h2 { font-size:36px; } .services-offer p { font-size:15px; } .services-offer-button { font-size:13px; padding:15px 22px; } }
