.corporate-service { background: #fff; color: #1b1d21; }
.corporate-service .service-cover,
.corporate-service .service-action { background: #17191d; color: #fff; }
.corporate-service :is(.service-cover,.service-guide,.service-action,.service-extra) { padding-block: clamp(2.25rem, 6vw, 5rem); }
.service-split { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(1.5rem,5vw,4.5rem); align-items: center; }
.corporate-service .service-split img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: .85rem; }
.corporate-service .service-cover h1 { font-size: clamp(2.5rem,6vw,5rem); line-height: 1.03; margin: .25em 0; }
.corporate-service h2 { line-height: 1.18; }
.service-label { color: #654c00; font-size: .8rem; letter-spacing: .12em; font-weight: 800; }
.service-cover .service-label { color: #fbc904; }
.service-cover p { font-size: 1.15rem; max-width: 37ch; margin-bottom: 1.4rem; }
.service-guide details { background: #f7f7f8; border: 1px solid #dcdee3; border-radius: .6rem; margin-top: .65rem; }
.service-guide summary { padding: .85rem 1rem; cursor: pointer; font-weight: 800; }
.service-guide details[open] summary { background: #fff0af; border-radius: .6rem .6rem 0 0; }
.service-guide details p { padding: .8rem 1rem; margin: 0; }
.corporate-service :is(a,summary):focus-visible { outline: 3px solid #ac7900; outline-offset: 3px; }
.service-extra { background: #eeeef0; }
.service-extra .contactdetails a { text-decoration: underline; }
.corporate-service .booking-visual { min-height: 0; background: #17191d; }
.corporate-service .booking-visual > div { position: relative; inset: auto; padding: 2rem; }
.corporate-service .booking-section { scroll-margin-top: 7rem; }
@media (max-width: 740px) { .service-split { grid-template-columns: 1fr; } }
.corporate-service .booking-visual,
.corporate-service .booking-box,
.corporate-service .contactdetails a { color: #fff; }
