/* Services follows the site's original photo, quote, service and pricing cards. */
.rest-services-page .container { max-width: 1240px; }
.rest-services-page p { color: #5d7476; text-transform: none; }
.rest-services-page .rest-eyebrow { color: var(--primary-color); font-size: 13px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; margin-bottom: 14px; }
.rest-services-page .section-title { margin-bottom: 28px; }
.rest-services-page .section-title.text-center { max-width: 800px; margin-left: auto; margin-right: auto; margin-bottom: 40px; }
.rest-services-page .section-title h2 { margin-bottom: 18px; }
.rest-offer { padding: 17px 0; background: #e7f3ec; border-block: 1px solid #d5e6dc; }
.rest-offer-overview { display: flex; align-items: baseline; justify-content: space-between; gap: 12px 30px; flex-wrap: wrap; }
.rest-offer h3 { font-size: 17px; line-height: 1.5; }
.rest-offer-overview p { font-size: 16px; font-weight: 700; color: var(--primary-color); margin: 0; }
.rest-offer summary { cursor: pointer; width: fit-content; margin-top: 6px; color: #42635a; font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }
.rest-offer-details { max-width: 850px; padding-top: 16px; }
.rest-offer-details p { margin-bottom: 8px; font-size: 15px; }
.rest-services-header.page-header { background-image: url('../assets/vibelle/web/hand-reflexology-session-koffi-amani.webp'); background-position: center 42%; margin-top: 16px; padding: 82px 0; }
.rest-services-header .page-header-content { max-width: 740px; }
.rest-services-header .page-header-content h1 { font-size: clamp(23.4px, 2.73vw, 39px); color: #fff; font-weight: 500; line-height: 1.12; margin-bottom: 22px; }
.rest-services-header .page-header-content h1 > span { background: none; -webkit-text-fill-color: #fff; font-weight: inherit; }
.rest-services-header .page-header-content h2 { color: #e3efea; font-size: 21px; font-weight: 400; line-height: 1.5; max-width: 570px; margin-bottom: 26px; }
.rest-services-header .rest-eyebrow { color: var(--accent-color); }
.rest-services-page .rest-intro { padding: 70px 0; }
.rest-intro .vibelle-copy-card { padding: 30px 34px; }
.rest-intro .vibelle-copy-card p { font-size: 17px; line-height: 1.75; margin-bottom: 18px; }
.rest-intro .vibelle-copy-card p:last-child { margin-bottom: 0; }
.rest-intro .vibelle-quote-panel { margin-left: 12px; padding: 40px 34px; }
.rest-intro .vibelle-quote-panel > p { color: #fff; font-size: 27px; line-height: 1.45; }
.rest-intro .vibelle-quote-panel h3 { font-size: 27px; line-height: 1.35; margin-bottom: 22px; }
.rest-quote-detail p { color: #c6dcd8; font-size: 16px; line-height: 1.7; margin: 0; }
.rest-services-page .rest-sessions { padding: 72px 0; }
.rest-session-grid > div { display: flex; }
.rest-session-card { display: flex; flex-direction: column; width: 100%; padding: 32px 28px; }
.rest-session-icon { font-size: 25px; color: var(--dark-color); margin-bottom: 24px; }
.rest-session-card h3 { background: none; -webkit-text-fill-color: var(--primary-color); font-size: 25px; line-height: 1.3; margin-bottom: 14px; }
.rest-session-card .rest-session-price { color: var(--dark-color); font-size: 27px; font-weight: 800; margin-bottom: 24px; }
.rest-session-card h4 { font-size: 19px; line-height: 1.5; margin-bottom: 18px; }
.rest-session-card p { font-size: 16px; line-height: 1.75; margin-bottom: 18px; }
.rest-session-card .btn-default { align-self: flex-start; margin-top: auto; padding-top: 17px; text-transform: none; }
.rest-session-card p:last-of-type { margin-bottom: 28px; }
.rest-session-card.vibelle-price-card-featured h3 { -webkit-text-fill-color: #fff; }
.rest-session-card.vibelle-price-card-featured :is(h4, p) { color: #d5e5e1; }
.rest-session-card.vibelle-price-card-featured :is(.rest-session-icon, .rest-session-price) { color: var(--accent-color); }
.rest-focus { margin-top: 55px; padding-top: 45px; border-top: 1px solid var(--divider-color); }
.rest-focus .section-title.text-center { margin-bottom: 26px; }
.rest-focus h2 { font-size: 18.2px; }
.rest-focus-card strong { color: var(--primary-color); }
.rest-focus-card { display: flex; align-items: flex-start; gap: 20px; padding: 25px; }
.rest-focus-card::after { display: none; }
.rest-focus-card .icon-box { flex: 0 0 52px; height: 52px; width: 52px; padding: 12px; margin: 0; }
.rest-focus-card p { font-size: 16px; margin: 0; }
.rest-regular { padding: 50px 0; }
.rest-regular .section-title { margin: 0; }
.rest-regular .section-title h2 { font-size: 22.1px; margin: 0; }
.rest-regular p { margin-bottom: 14px; }
.rest-regular p:last-child { margin: 0; }
.rest-services-page .rest-location { padding: 65px 0; }
.rest-location .company-growth-image { margin-right: 20px; }
.rest-location .company-growth-image img { width: 100%; height: 530px; object-fit: cover; object-position: center; border-radius: 26px; }
.rest-location .company-growth-content { margin-left: 0; }
.rest-location-detail { padding: 24px 28px; background: #fff; border: 1px solid var(--divider-color); border-radius: 22px; }
.rest-location-detail h3 { font-size: 20px; margin-bottom: 16px; }
.rest-location-detail ul { padding-left: 20px; margin-bottom: 14px; color: #5d7476; }
.rest-location-detail li { margin-bottom: 12px; }
.rest-location-detail p { font-size: 15px; margin: 0; }
.rest-together { padding: 20px 0 75px; }
.rest-together .vibelle-quote-panel { margin: 0; padding: 36px; }
.rest-together .vibelle-quote-panel h2 { color: #fff; font-size: 27.3px; margin-bottom: 18px; }
.rest-together .vibelle-quote-panel h3 { font-size: 23px; line-height: 1.45; margin-bottom: 20px; }
.rest-together .vibelle-quote-panel p { color: #d5e5e1; font-size: 18px; margin: 0; }
.rest-together .vibelle-copy-card p { font-size: 17px; line-height: 1.75; }
.rest-services-page .rest-philosophy { padding: 72px 0; }
.rest-philosophy .vibelle-story-card { padding: 28px; }
.rest-philosophy .vibelle-story-number { margin-bottom: 18px; font-size: 22px; }
.rest-philosophy .vibelle-story-card p { font-size: 17px; }
.rest-closing { max-width: 780px; margin: 40px auto 0; text-align: center; }
.rest-closing .btn-default { margin-bottom: 28px; text-transform: none; }
.rest-closing p:last-child { font-size: 14px; line-height: 1.7; margin: 0; }
@media (max-width: 991px) {
  .rest-services-header.page-header { padding: 64px 0; }
  .rest-services-header .page-header-content { max-width: 680px; }
  .rest-intro .vibelle-quote-panel { margin: 0; }
  .rest-session-grid { max-width: 720px; margin-inline: auto; }
  .rest-session-card { padding: 32px; }
  .rest-focus-card .icon-box { margin: 0; }
  .rest-location .company-growth-image { margin: 0; }
  .rest-location .company-growth-image img { height: 380px; }
  .rest-together .vibelle-quote-panel { padding: 32px; }
}
@media (max-width: 575px) {
  .rest-offer { padding: 13px 0; }
  .rest-offer h3 { font-size: 15px; }
  .rest-offer-overview { gap: 5px; }
  .rest-offer-overview p { font-size: 14px; }
  .rest-services-header.page-header { padding: 48px 0; margin-top: 10px; background-position: 60% center; }
  .rest-services-header .page-header-box { padding-inline: 14px; }
  .rest-services-header .page-header-content h1 { font-size: 23.4px; }
  .rest-services-header .page-header-content h2 { font-size: 18px; }
  .rest-services-page :is(.rest-intro, .rest-sessions, .rest-location, .rest-philosophy) { padding: 46px 0; }
  .rest-intro .vibelle-copy-card { padding: 25px; }
  .rest-intro .vibelle-quote-panel { padding: 28px; }
  .rest-intro .vibelle-quote-panel > p { font-size: 24px; }
  .rest-session-grid { margin-inline: -15px; }
  .rest-session-card { padding: 28px; }
  .rest-regular { padding: 32px 0; }
  .rest-location .company-growth-image img { height: 300px; }
  .rest-location-detail { padding: 22px; }
  .rest-together { padding: 8px 0 46px; }
}
