@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@500;600;700&family=Roboto:wght@500;600;700&display=swap');

:root {
  --mac-main: #00A2A2;
  --mac-navy: #153A5B;
  --mac-orange: #F28C28;
  --mac-back: #F8FBFB;
  --mac-gray: #EAF0F2;
  --mac-text: #252525;
  --mac-line: #CFE3E3;
  --mac-white: #fff;
  --mac-serif: "Noto Serif JP", serif;
  --mac-roboto: "Roboto", sans-serif;
  --mac-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  --mac-subsection-title-size: clamp(1.5rem, 2vw, 2rem);
}

.mac-service-page {
  overflow: hidden;
  background: var(--mac-back);
  color: var(--mac-text);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(18px, 1.0417vw, 20px);
  line-height: 1.8;
  letter-spacing: .02em;
}

.mac-service-page a:hover {
  text-decoration: none;
}

.mac-service-page,
.mac-service-page *,
.mac-service-page *::before,
.mac-service-page *::after {
  box-sizing: border-box;
}

.mac-service-page h1,
.mac-service-page h2,
.mac-service-page h3,
.mac-service-page p {
  margin: 0;
}

.mac-service-page img {
  max-width: 100%;
  vertical-align: middle;
}

.mac-shell {
  width: min(1500px, calc(100% - 40px));
  margin-inline: auto;
}

.mac-section {
  padding: clamp(5rem, 6.6667vw, 6.25rem) 0;
}

.mac-section--soft {
  background: var(--mac-back);
}

.mac-section--navy {
  background: linear-gradient(115deg, #153a5b 0%, #225f95 100%);
  color: #fff;
}

.mac-section-subtitle {
  position: relative;
  display: inline-block;
  overflow: visible;
  margin-bottom: .95em;
  padding-bottom: .4375rem;
  color: var(--mac-navy);
  font-family: var(--mac-roboto);
  font-size: clamp(.875rem, 1.0417vw, 1.25rem);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .045em;
  text-transform: uppercase;
}

.mac-section-subtitle::before {
  content: "";
  position: absolute;
  top: -1.6875rem;
  left: -2.125rem;
  width: 2.5rem;
  aspect-ratio: 1;
  background: url("../images/title-bee.png") no-repeat center / contain;
  opacity: .9;
  pointer-events: none;
}

.mac-section-subtitle::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 2.75rem;
  height: .125rem;
  background: var(--mac-orange);
  transform: translateX(-50%);
}

.mac-scheme-navy-gradient .mac-section-subtitle,
.mac-scheme-green-gradient .mac-section-subtitle,
.mac-scheme-navy-gradient .mac-small-label,
.mac-scheme-green-gradient .mac-small-label {
  color: var(--mac-orange);
}

.mac-scheme-navy-gradient .mac-section-subtitle::before,
.mac-scheme-green-gradient .mac-section-subtitle::before {
  background-image: url("../images/title-bee-light.png");
  opacity: 1;
}

.mac-scheme-white .mac-section-subtitle,
.mac-scheme-light-gray .mac-section-subtitle,
.mac-scheme-mint .mac-section-subtitle,
.mac-scheme-warm .mac-section-subtitle,
.mac-scheme-soft-gradient .mac-section-subtitle,
.mac-scheme-white .mac-small-label,
.mac-scheme-light-gray .mac-small-label,
.mac-scheme-mint .mac-small-label,
.mac-scheme-warm .mac-small-label,
.mac-scheme-soft-gradient .mac-small-label {
  color: var(--mac-navy);
}

.mac-title-box {
  max-width: 61.25rem;
  margin: 0 auto clamp(3rem, 5vw, 4.5rem);
  text-align: center;
}

.mac-title-box--left {
  text-align: left;
  margin: 0;
  padding-left: .5rem;
}

.mac-title-box h2,
.mac-value-message h2,
.mac-cta h2 {
  font-family: var(--mac-serif);
  font-size: clamp(2.5rem, 2.5vw, 3rem);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: .015em;
  margin-bottom: 0.5em;
}

.mac-section-description {
  max-width: 61.25rem;
  margin: .5em auto 0;
  line-height: 1.8;
}

.mac-title-box--left .mac-section-description {
  margin-left: 0;
}

.mac-title-box--light h2,
.mac-title-box--light .mac-section-description {
  color: #fff;
}

.mac-small-label {
  color: var(--mac-main);
  font-family: var(--mac-roboto);
  font-size: .875rem;
  font-weight: 700;
  letter-spacing: .12em;
}

.mac-hero__actions,
.mac-cta__actions {
  display: flex;
  gap: 1.125rem;
  flex-wrap: wrap;
}

.mac-button {
  display: inline-flex;
  min-width: 200px;
  align-items: center;
  justify-content: center;
  gap: .8125rem;
  padding: .9375rem 1.375rem;
  border: 1px solid transparent;
  border-radius: 6px;
  font-weight: 700;
  line-height: 1.2;
  box-shadow: var(--mac-shadow);
  transition: .3s ease-in;
}

a.mac-button--primary {
  background: var(--mac-orange);
  border-color: var(--mac-orange);
  color: #fff;
}

a.mac-button--primary:hover {
  background: #fff;
  color: var(--mac-orange);
}

a.mac-button--white {
  background: #fff;
  border-color: var(--mac-main);
  color: var(--mac-main);
}

a.mac-button--white:hover {
  background: var(--mac-main);
  color: #fff;
}

a.mac-button--secondary {
  background: #fff;
  border-color: var(--mac-navy);
  color: var(--mac-navy);
}

a.mac-button--secondary:hover {
  background: var(--mac-navy);
  color: #fff;
}

a.mac-button--main {
  background: var(--mac-main);
  border-color: var(--mac-main);
  color: #fff;
}

a.mac-button--main:hover {
  background: #fff;
  color: var(--mac-main);
}

.mac-reveal {
  opacity: 0;
  transform: translateY(.5rem);
  transition: opacity .6s ease, transform .6s ease;
}

.mac-reveal.is-visible {
  opacity: 1;
  transform: none;
}

.mac-center-action {
  text-align: center;
  margin-top: 2.5rem;
}

.mac-center-action .mac-button {
  display: inline-flex;
}

.mac-scheme-white {
  background: #fff;
}

.mac-scheme-light-gray {
  background: #f6f6f6;
}

.mac-scheme-mint {
  background: #f2fbfa;
}

.mac-scheme-warm {
  background: #fff5e9;
}

.mac-scheme-soft-gradient {
  background: linear-gradient(135deg, #eefaf7 0%, #edf3f8 100%);
}

.mac-scheme-navy-gradient {
  background: linear-gradient(115deg, #153a5b 0%, #225f95 100%);
}

.mac-scheme-green-gradient {
  background: linear-gradient(135deg, #087f7d 0%, #075f66 55%, #164a5c 100%);
}

:is(.mac-scheme-white, .mac-scheme-light-gray, .mac-scheme-mint, .mac-scheme-warm, .mac-scheme-soft-gradient) :is(.mac-title-box, .mac-value-message, .mac-cta__inner) h2,
:is(.mac-scheme-white, .mac-scheme-light-gray, .mac-scheme-mint, .mac-scheme-warm, .mac-scheme-soft-gradient) .mac-hero__copy h1 {
  color: var(--mac-navy);
}

:is(.mac-scheme-white, .mac-scheme-light-gray, .mac-scheme-mint, .mac-scheme-warm, .mac-scheme-soft-gradient) :is(.mac-title-box, .mac-value-message, .mac-cta__inner) :is(.mac-section-description, p),
:is(.mac-scheme-white, .mac-scheme-light-gray, .mac-scheme-mint, .mac-scheme-warm, .mac-scheme-soft-gradient) .mac-hero__copy :is(.mac-hero__subcatch, .mac-hero__text) {
  color: var(--mac-text);
}

:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) .mac-title-box,
:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) .mac-title-box :where(h1, h2, h3, h4, h5, h6, p, span, small, strong, em, a):not(.mac-section-subtitle) {
  color: #fff;
}

:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) :is(.mac-value-message, .mac-cta__inner) h2,
:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) :is(.mac-value-message, .mac-cta__inner) :is(.mac-section-description, p),
:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) .mac-hero__copy :is(h1, .mac-hero__service, .mac-hero__subcatch, .mac-hero__text, .mac-hero__note) {
  color: #fff;
}

:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) .mac-small-label {
  color: var(--mac-orange);
}

:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) :is(.mac-workflow-card, .mac-table-card, .mac-step, .mac-value-card, .mac-voice-card, .mac-faq-item, .mac-related-card) {
  color: var(--mac-text);
}

.mac-hero {
  margin-top: 4.1875rem;
  flex-direction: column;
  position: relative;
  display: flex;
  overflow: hidden;
  background: radial-gradient(circle at 48% 42%, #fff 0%, #f5ffff 38%, #e3f7f5 70%, #d4efed 100%);
  border-bottom: 1px solid rgba(0, 162, 162, .14);
  min-height: 620px;
  align-items: stretch;
}

.mac-hero__page-title-band {
  position: relative;
  z-index: 2;
  display: grid;
  width: 100%;
  min-height: 8rem;
  place-items: center;
  background: linear-gradient(115deg, #087f7d 0%, #075f66 55%, #164a5c 100%);
  color: #fff;
}

.mac-hero__page-title-band .mac-shell {
  position: relative;
  display: grid;
  min-height: 8rem;
  place-items: center;
}

.mac-hero__page-title-band p {
  font-family: var(--mac-serif);
  font-size: clamp(2rem, 3.125vw, 3.75rem);
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0.1em;
}

.mac-hero__page-title-band .mac-breadcrumb {
  position: absolute;
  left: 20px;
  bottom: .75rem;
  width: auto;
  margin: 0;
  padding: 0;
  color: #fff;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: .5rem;
  line-height: 1;
  font-size: 0.8rem;
}

.mac-hero__page-title-band .mac-breadcrumb a,
.mac-hero__page-title-band .mac-breadcrumb span {
  color: #fff;
  transition: ease-in 0.3s;
}

.mac-breadcrumb a:hover {
  color: var(--mac-orange);
}

.mac-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--mac-hero-image) center/cover no-repeat;
  opacity: .12;
}

.mac-hero__mesh {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(0, 162, 162, .17) 1px, transparent 1px);
  background-size: 11px 11px;
  mask-image: linear-gradient(90deg, rgba(0, 0, 0, .55), transparent 58%);
  opacity: .52;
}

.mac-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.16fr) minmax(400px, .84fr);
  align-items: center;
  width: 100%;
  text-align: left;
  margin-bottom: 1.5rem;
}

.mac-hero__inner {
  position: relative;
  z-index: 1;
  padding: 3rem 0;
  display: block;
  width: min(1320px, calc(100% - 48px));
}

.mac-hero__content {
  max-width: 650px;
}

.mac-service-name {
  margin-bottom: .875rem;
  color: var(--mac-navy);
  font-family: var(--mac-roboto);
  font-size: .875rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.mac-hero h1 strong {
  color: inherit;
  font-weight: 700;
}

.mac-hero h1.mac-text-weight--normal,
.mac-hero__subcatch.mac-text-weight--normal {
  font-weight: 400;
}

.mac-hero h1.mac-text-weight--bold,
.mac-hero__subcatch.mac-text-weight--bold {
  font-weight: 700;
}

p.mac-hero__subcatch {
  max-width: 36em;
  margin: 0 0 1.5rem;
  color: var(--mac-text);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 1.4vw, 1.5rem);
  line-height: 1.7;
  text-align: left;
}

.mac-hero__subcatch strong {
  font-weight: 700;
}

p.mac-hero__note {
  margin-top: .875rem;
  color: #4b6668;
  font-size: .875rem;
}

.mac-hero-illustration::before {
  content: "";
  position: absolute;
  inset: 10% 4% 12% 2%;
  border-radius: 50%;
  background: rgba(255, 255, 255, .4);
  filter: blur(1px);
}

.mac-hero-illustration__panel {
  position: absolute;
  right: 0;
  top: 46px;
  width: 82%;
  height: 295px;
  background: rgba(255, 255, 255, .78);
  border: 2px solid rgba(0, 162, 162, .62);
  border-radius: 14px;
  box-shadow: var(--mac-shadow);
  transform: rotate(3deg);
}

.mac-flow-dot {
  position: absolute;
  width: 42px;
  height: 28px;
  border: 2px solid var(--mac-main);
  border-radius: 4px;
  background: #fff;
}

.mac-flow-dot--1 {
  left: 18%;
  top: 20%;
}

.mac-flow-dot--2 {
  left: 48%;
  top: 43%;
}

.mac-flow-dot--3 {
  right: 11%;
  top: 18%;
}

.mac-flow-line {
  position: absolute;
  height: 2px;
  background: var(--mac-main);
  transform-origin: left center;
}

.mac-flow-line--1 {
  left: 26%;
  top: 31%;
  width: 125px;
  transform: rotate(20deg);
}

.mac-flow-line--2 {
  left: 55%;
  top: 43%;
  width: 110px;
  transform: rotate(-24deg);
}

.mac-document-stack {
  position: absolute;
  right: 10%;
  bottom: 13%;
  width: 86px;
  height: 72px;
}

.mac-document-stack i {
  position: absolute;
  inset: auto 0 0;
  height: 48px;
  background: #fff;
  border: 1px solid #b9dddd;
  border-radius: 3px;
  box-shadow: var(--mac-shadow);
}

.mac-document-stack i:nth-child(1) {
  transform: translate(-14px, -16px) rotate(-5deg);
}

.mac-document-stack i:nth-child(2) {
  transform: translate(-7px, -8px) rotate(2deg);
}

.mac-hero-issues {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .625rem .75rem;
  width: 100%;
  max-width: 560px;
  margin: 1rem 0 0 auto;
}

.mac-hero-issues span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .5625rem .8125rem;
  background: #fff;
  border: 1px solid rgba(0, 162, 162, .35);
  border-radius: 6px;
  color: var(--mac-navy);
  font-size: .8125rem;
  font-weight: 600;
  box-shadow: var(--mac-shadow);
}

.mac-problem-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: .875rem;
}

.mac-problem-card {
  min-height: 154px;
  padding: 1.5625rem 1.125rem;
  background: #fff;
  border: 1px solid #d9eded;
  border-top: 4px solid var(--mac-main);
  border-radius: 6px;
  text-align: center;
  box-shadow: var(--mac-shadow);
}

.mac-problem-icon {
  display: grid;
  width: 34px;
  height: 34px;
  margin: 0 auto .9375rem;
  place-items: center;
  border-radius: 50%;
  background: var(--mac-gray);
  color: var(--mac-navy);
  font-family: var(--mac-roboto);
  font-weight: 700;
}

.mac-problem-card p {
  font-weight: 600;
  line-height: 1.65;
}

#breadcrumb,
.breadcrumb,
.breadcrumbs,
.breadcrumb-area,
.breadcrumb_wrap,
.breadcrumb-wrap,
.breadcrumb-list,
.pankuzu {
  display: none;
}

.mac-hero__text {
  margin-top: 1.5625rem;
  font-weight: 500;
  line-height: 1.9;
  max-width: 720px;
  font-size: clamp(16px, 1.2vw, 18px);
}

.mac-hero-illustration {
  position: relative;
  min-height: 390px;
}

.mac-hero__worry-label {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  margin: 2rem 0 .25rem;
  padding: .4375rem 1.125rem;
  border-radius: 999px;
  background: var(--mac-navy);
  color: #fff;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .04em;
  text-align: center;
}

.mac-hero__worry-label::after {
  content: "";
  position: absolute;
  bottom: -7px;
  left: 24px;
  width: 0;
  height: 0;
  border-top: 8px solid var(--mac-navy);
  border-right: 8px solid transparent;
}

.mac-hero__worry-label+.mac-hero__text {
  margin-top: 1.125rem;
}

[class*="breadcrumb"]:not(.mac-breadcrumb),
[id*="breadcrumb"]:not(.mac-breadcrumb),
[class*="pankuzu"]:not(.mac-breadcrumb),
[id*="pankuzu"]:not(.mac-breadcrumb) {
  display: none;
}

.mac-hero__service {
  display: inline-block;
  margin: 0 0 1rem;
  padding: .25em .75em;
  border-left: .25rem solid var(--mac-orange);
  color: var(--mac-navy);
  font-family: var(--mac-serif);
  font-size: clamp(1.5rem, 1.6667vw, 2rem);
  font-weight: 700;
  line-height: 1.4;
  text-align: left;
}

p.mac-hero__kicker {
  display: inline-block;
  margin-bottom: 1.125rem;
  background: rgba(0, 162, 162, .82);
  border-radius: 4px;
  padding: .4375rem 1rem;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
}

.mac-hero h1 {
  position: static;
  float: none;
  display: block;
  width: 100%;
  max-width: 720px;
  margin: 0;
  padding: 0;
  color: var(--mac-text);
  font-family: var(--mac-serif);
  font-size: clamp(2.5rem, 3.2vw, 3.25rem);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: .01em;
  text-align: left;
  word-break: auto-phrase;
  overflow-wrap: normal;
  white-space: normal;
}

.mac-hero__text,
.mac-hero__note {
  text-align: left;
}

.mac-hero__image {
  display: block;
  width: 100%;
  max-width: 560px;
  height: auto;
  margin: 0 0 0 auto;
  object-fit: contain;
}

.mac-hero__grid:not(:has(.mac-hero__visual)) {
  grid-template-columns: minmax(0, 1fr);
}

.mac-hero__grid:not(:has(.mac-hero__visual)) .mac-hero__copy {
  max-width: 820px;
}

.mac-workflow-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5rem 4rem;
}

.mac-workflow-support {
  display: grid;
  grid-template-columns: minmax(150px, .2fr) minmax(0, 1.8fr);
  align-items: center;
  gap: 2rem;
  max-width: 900px;
  margin: 0 auto 3rem;
}

.mac-workflow-support--single {
  display: block;
  max-width: 820px;
}

.mac-workflow-support__image img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
}

.mac-workflow-support--single .mac-workflow-support__image {
  width: 80%;
  margin-inline: auto;
}

.mac-workflow-support__text {
  margin: 0;
  color: var(--mac-text);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 2;
  text-align: left;
}

.mac-workflow-support__text a {
  color: var(--mac-main);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
  transition: 0.3s ease-in-out;
}

.mac-workflow-support__text a:hover {
  color: var(--mac-navy);
}

:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) .mac-workflow-support__text {
  color: #fff;
}

:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) .mac-workflow-support__text a {
  color: var(--mac-orange);
}

.mac-workflow-card {
  --mac-workflow-accent: var(--mac-main);
  --mac-workflow-card-bg: #fff;
  --mac-workflow-head-bg: #f0fbfa;
  --mac-workflow-step-bg: var(--mac-back);
  --mac-workflow-border: #d8e8e9;
  background: var(--mac-workflow-card-bg);
  border: 1px solid var(--mac-workflow-border);
  border-radius: 8px;
  box-shadow: var(--mac-shadow);
  overflow: hidden;
}

.mac-workflow-card:nth-child(3n+2) {
  --mac-workflow-accent: #537b9d;
  --mac-workflow-card-bg: #f7f9fc;
  --mac-workflow-head-bg: #eaf0f6;
  --mac-workflow-step-bg: #edf3f8;
  --mac-workflow-border: #cfdde8;
}

.mac-workflow-card:nth-child(3n) {
  --mac-workflow-accent: #e58a32;
  --mac-workflow-card-bg: #fffaf4;
  --mac-workflow-head-bg: #fff1df;
  --mac-workflow-step-bg: #fff3e6;
  --mac-workflow-border: #f1d7b8;
}

.mac-workflow-card:last-child:nth-child(odd) {
  grid-column: 1/-1;
  width: calc(50% - 12px);
  justify-self: center;
}

.mac-workflow-card__head {
  display: flex;
  align-items: center;
  gap: .9375rem;
  padding: 1.25rem 1.5rem;
  background: linear-gradient(90deg, var(--mac-workflow-head-bg), var(--mac-workflow-card-bg));
  border-bottom: 1px solid var(--mac-workflow-border);
}

.mac-workflow-card__head span {
  color: var(--mac-workflow-accent);
  font-family: var(--mac-roboto);
  font-size: 1.875rem;
  font-weight: 700;
}

.mac-workflow-card h3 {
  color: var(--mac-navy);
  font-family: var(--mac-serif);
  font-size: 1.4rem;
  line-height: 1.5;
  text-align: left;
}

.mac-workflow-card ol {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  padding: 1.5em 1em;
  list-style: none;
  counter-reset: flow;
}

.mac-workflow-card li {
  font-size: 1.2rem;
  position: relative;
  padding: .75rem .5625rem;
  background: var(--mac-workflow-step-bg);
  border-bottom: 1px dashed var(--mac-workflow-border);
  text-align: center;
  font-weight: 500;
  line-height: 1.45;
  word-break: keep-all;
  overflow-wrap: normal;
  line-break: strict;
}

.mac-workflow-card li+li::before {
  content: "↓";
  position: absolute;
  color: var(--mac-workflow-accent);
  left: 50%;
  top: -26px;
  transform: translateX(-50%);
}

.mac-tags {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: .625rem;
  margin-top: 2.25rem;
}

.mac-tags strong {
  margin-right: .1875rem;
  color: var(--mac-navy);
}

.mac-tags span {
  padding: .4375rem .75rem;
  border: 1px solid #cce5e4;
  border-radius: 999px;
  background: #f6fbfb;
  color: #31595c;
  font-size: .875rem;
}

.mac-outsourcing-highlight {
  margin-top: 2.875rem;
  position: relative;
  padding: 1.75rem 1.625rem 1.625rem;
  background: #fff;
  border-radius: 8px;
  box-shadow: var(--mac-shadow);
  text-align: center;
  overflow: hidden;
}

.mac-outsourcing-highlight::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, var(--mac-main) 0%, var(--mac-navy) 100%);
}

.mac-outsourcing-highlight__title {
  width: fit-content;
  margin: 0 auto;
  padding-left: 1rem;
  border-left: 3px solid var(--mac-orange);
  color: var(--mac-navy);
  font-family: var(--mac-serif);
  font-size: var(--mac-subsection-title-size);
  line-height: 1.5;
  text-align: left;
}

.mac-outsourcing-highlight__tags {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: .75rem;
  padding: 1.5rem 0;
}

.mac-outsourcing-highlight__tags span {
  padding: .5em 1.5em;
  border-radius: 999px;
  background: var(--mac-main);
  color: var(--mac-white);
  font-size: 1rem;
  font-weight: 600;
  box-shadow: var(--mac-shadow);
}

p.mac-outsourcing-highlight__note {
  margin: 0 auto;
  max-width: 760px;
  color: #244a57;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.9;
}

.mac-scope-visual {
  margin-top: 1.875rem;
  padding-top: 1.75rem;
  border-top: 1px solid #b9dddb;
}

.mac-scope-visual h4 {
  margin: 0 0 1.25rem;
  color: var(--mac-navy);
  font-family: var(--mac-serif);
  font-size: 1.3125rem;
}

.mac-scope-visual h4:has(+ .mac-scope-visual__subtitle) {
  margin-bottom: 0;
}

p.mac-scope-visual__subtitle {
  margin: 0.25rem 0 0;
  color: var(--mac-navy);
  font-size: .875rem;
  text-align: center;
}

.mac-scope-visual__subtitle + .mac-scope-visual__rows {
  margin-top: 1.5rem;
}

.mac-scope-visual__rows {
  display: grid;
  gap: .75rem;
  margin: 0 auto;
}

.mac-scope-row {
  display: grid;
  grid-template-columns: 150px 1fr;
  align-items: center;
  gap: 1.125rem;
  padding: .875rem 1.125rem;
  border-radius: 8px;
  background: #edf3f8;
  border: 1px solid #cfdde8;
  text-align: left;
}

.mac-scope-row>strong {
  color: var(--mac-navy);
  font-size: .9375rem;
  text-align: center;
}

.mac-scope-row--partial {
  background: #fff8ef;
  border: 1px solid #f2d4ad;
}

.mac-scope-row--partial>strong {
  color: #a85c00;
}

.mac-scope-flow {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 1.25rem;
  min-width: 0;
}

.mac-scope-flow span {
  position: relative;
  display: flex;
  flex: 1 1 10rem;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: .625rem .5rem;
  border: 1px solid #cfe6e5;
  background: #f8fcfc;
  color: var(--mac-navy);
  font-size: .8125rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

.mac-scope-flow span+span::before {
  content: "→";
  position: absolute;
  left: -17px;
  top: 50%;
  color: var(--mac-main);
  font-size: 1rem;
  transform: translateY(-50%);
}

.mac-scope-row--partial .mac-scope-flow span {
  border-color: #f0c88f;
  background: #fffaf3;
}

.mac-scope-partial-cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .625rem;
  min-width: 0;
}

.mac-scope-partial-card {
  flex: 0 1 calc((100% - 1.25rem) / 3);
  max-width: calc((100% - 1.25rem) / 3);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: .375rem;
  min-width: 0;
  padding: .875rem .625rem;
  border: 1px solid #f0c88f;
  border-radius: 6px;
  background: #fffaf3;
  color: var(--mac-navy);
  text-align: left;
}

.mac-scope-partial-card b {
  font-size: .875rem;
  line-height: 1.5;
}

.mac-scope-partial-card small {
  color: #56636f;
  font-size: .75rem;
  line-height: 1.6;
}

.mac-scope-partial-cards--4 .mac-scope-partial-card {
  flex-basis: calc((100% - .625rem) / 2);
  max-width: calc((100% - .625rem) / 2);
}

@media (min-width: 1025px) {
  .mac-scope-partial-cards--align-5-4 {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .625rem;
  }

  .mac-scope-partial-cards--align-5-4 .mac-scope-partial-card {
    width: auto;
    max-width: none;
  }

  .mac-scope-partial-cards--align-5-4 .mac-scope-partial-card:nth-child(3) {
    grid-column: span 2;
  }
}

@media (max-width: 1024px) {
  .mac-scope-partial-card {
    flex-basis: calc((100% - .625rem) / 2);
    max-width: calc((100% - .625rem) / 2);
  }
}

@media (max-width: 580px) {
  .mac-scope-partial-card {
    flex-basis: 100%;
    max-width: 100%;
  }
}

.mac-price-section {
  --mac-section-label-color: var(--mac-main);
}

.mac-price-section:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) {
  color: #fff;
}

.mac-price-section.mac-scheme-navy-gradient {
  --mac-section-label-color: var(--mac-orange);
}

.mac-price-section.mac-scheme-green-gradient {
  --mac-section-label-color: var(--mac-navy);
}

.mac-price-section .mac-section-subtitle {
  color: var(--mac-section-label-color);
}

h3.mac-price-subtitle {
  margin: .5em 0;
  font-size: clamp(18px, 1.7vw, 26px);
  font-family: var(--mac-serif);
}

.mac-table-card {
  background: #fff;
  border-radius: 8px;
  box-shadow: var(--mac-shadow);
  overflow: auto;
  margin-bottom: 5rem;
}

.mac-table-card table {
  width: 100%;
  border-collapse: collapse;
  color: var(--mac-text);
}

.mac-table-card th {
  background: #f3f9fa;
  color: var(--mac-navy);
}

@media (min-width: 769px) {
  }


.mac-table-card {
  background: transparent;
  border: 0;
  box-shadow: none;
  overflow: visible;
  font-family: "Noto Sans JP", sans-serif;
  text-align: left;
}

.mac-table-card table {
  display: block;
  width: 100%;
  min-width: 0;
  border-collapse: separate;
}

.mac-table-card thead {
  display: none;
}

.mac-table-card tbody {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.125rem;
}

.mac-table-card tr {
  display: grid;
  flex: 0 1 calc((100% - 2.25rem) / 3);
  max-width: calc((100% - 2.25rem) / 3);
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "category category"
    "example example"
    "volume monthly";
  gap: .5rem 1rem;
  min-width: 0;
  padding: 1.35rem 1.4rem 1.25rem;
  background: #fff;
  border: 1px solid #d9dedf;
  border-radius: 8px;
}

.mac-table-card td {
  display: block;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #0d2944;
}

.mac-table-card td:nth-child(1) {
  grid-area: category;
  position: relative;
  padding-top: 1.45rem;
  font-size: 1.18rem;
  font-weight: 700;
  line-height: 1.45;
}

.mac-table-card td:nth-child(1)::before {
  content: var(--mac-price-label-1);
  position: absolute;
  top: 0;
  left: 0;
  color: #2d6c55;
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.2;
}

.mac-table-card td:nth-child(2) {
  position: relative;
  grid-area: example;
  min-height: 3.7rem;
  padding: 1.5rem 0 1rem;
  color: #56636f;
  font-size: .92rem;
  line-height: 1.75;
  border-bottom: 1px dashed #cfd6d9;
}

.mac-table-card td:nth-child(2)::before {
  content: var(--mac-price-label-2);
  position: absolute;
  top: 0;
  left: 0;
  color: #6c7882;
  font-size: .74rem;
  font-weight: 500;
  line-height: 1.2;
}


.mac-table-card td:nth-child(3) {
  grid-area: volume;
  position: relative;
  align-self: end;
  padding-top: 1.5rem;
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.35;
  white-space: nowrap;
}

.mac-table-card td:nth-child(3)::before {
  content: var(--mac-price-label-3);
  position: absolute;
  top: 0;
  left: 0;
  color: #6c7882;
  font-size: .74rem;
  font-weight: 500;
  line-height: 1.2;
}

.mac-table-card td:nth-child(4) {
  position: relative;
  grid-area: monthly;
  align-self: end;
  padding-top: 1.5rem;
  color: #e58a32;
  font-size: 1.62rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  text-align: left;
}

.mac-table-card td:nth-child(4)::before {
  content: var(--mac-price-label-4);
  position: absolute;
  top: 0;
  left: 0;
  color: #6c7882;
  font-size: .74rem;
  font-weight: 500;
  line-height: 1.2;
}


.mac-table-card td:nth-child(4)::after {
  content: "/月";
  margin-left: .2rem;
  color: #71808d;
  font-family: inherit;
  font-size: .72rem;
  font-weight: 400;
}

@media (max-width: 1024px) {
  .mac-table-card tr {
    flex-basis: calc((100% - 1.125rem) / 2);
    max-width: calc((100% - 1.125rem) / 2);
  }
}

@media (max-width: 640px) {
  .mac-table-card tr {
    flex-basis: 100%;
    max-width: 100%;
  }

.mac-table-card tr {
    padding: 1.2rem;
  }
}

.mac-price-note {
  margin: 0;
  padding: 1rem 1.25rem 1.125rem;
  color: #fff;
  font-size: .9375rem;
  line-height: 1.75;
  text-align: left;
}

.mac-team-panel,
.mac-compare-panel {
  color: inherit;
  margin-bottom: 5rem;
}

.mac-team-panel h3,
.mac-compare-panel h3,
.mac-outcomes h3 {
  display: block;
  width: fit-content;
  padding-left: 1rem;
  border-left: 3px solid var(--mac-orange);
  text-align: left;
}

.mac-outcomes h3 {
  margin-top: .375rem;
  margin-bottom: 1.125rem;
  font-family: var(--mac-serif);
  font-size: var(--mac-subsection-title-size);
  color: inherit;
}

.mac-team-panel h3,
.mac-compare-panel h3 {
  margin-bottom: .5em;
  font-family: var(--mac-serif);
  font-size: var(--mac-subsection-title-size);
  color: inherit;
}

.mac-team-diagram {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: .875rem;
  max-width: 920px;
  margin: 1.75rem auto 0;
}

.mac-team-node {
  position: relative;
  display: flex;
  align-items: center;
  gap: .75rem;
  min-height: 72px;
  padding: .9375rem 1.125rem;
  background: #eff9f8;
  border: 1px solid #cfe8e8;
  border-radius: 6px;
  color: var(--mac-navy);
}

.mac-team-node span {
  display: grid;
  place-items: center;
  flex: 0 0 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--mac-main);
  color: #fff;
  font-size: .75rem;
  font-weight: 800;
}

.mac-team-node strong {
  font-size: .9375rem;
}

.mac-compare-grid {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-end;
  padding: 2rem 0 3rem;
}

.mac-compare-side {
  min-width: 0;
  flex: 1;
  padding: 2rem;
}

.mac-compare-side+.mac-compare-side {
  border-left: 1px solid color-mix(in srgb, currentColor 22%, transparent);
}

.mac-compare-side__image {
  width: 80%;
  margin: 0 auto 1.5rem;
}

.mac-compare-side__image img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
}

.mac-compare-side__content {
  padding: 1.75rem;
  border-radius: 8px;
  color: var(--mac-navy);
}

.mac-compare-side--employee .mac-compare-side__content {
  background: #eef1f3;
}

.mac-compare-side--mac .mac-compare-side__content {
  background: #fff4df;
}

.mac-compare-side h4 {
  margin: 0 0 1.25rem;
  text-align: center;
  font-family: var(--mac-serif);
  font-size: 1.4375rem;
  color: var(--mac-navy);
  position: relative;
}

.mac-compare-side h4::after {
  content: "";
  height: 1px;
  width: 3rem;
  background-color: var(--mac-main);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.mac-compare-flow {
  display: flex;
  align-items: stretch;
  justify-content: center;
  text-align: center;
  gap: 1.125rem;
  overflow-x: auto;
  padding: 0 0 1.2rem;
}

.mac-compare-flow span {
  position: relative;
  display: grid;
  place-items: center;
  min-width: 0;
  min-height: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--mac-navy);
  text-align: center;
  font-size: 1rem;
  font-weight: 600;
}

.mac-compare-flow span+span::before {
  content: "→";
  position: absolute;
  left: -20px;
  color: var(--mac-main);
  font-weight: 800;
}

.mac-compare-tags {
  position: relative;
  padding: 2rem 0 0;
}

.mac-compare-tags::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 0;
  border-top: 1rem solid var(--mac-main);
  border-right: 0.8rem solid transparent;
  border-left: 0.8rem solid transparent;
  transform: translateX(-50%);
}

.mac-compare-tags span {
  padding: .25rem .375rem;
  border-radius: 0;
  background: transparent;
  border: 0;
  color: var(--mac-navy);
  font-size: 1.2rem;
  font-weight: 700;
}

.mac-compare-side--mac .mac-compare-tags span {
  color: var(--mac-orange);
  font-weight: 800;
}

.mac-compare-conclusion {
  position: relative;
  max-width: 820px;
  padding: 3rem 0 0.5em;
  border-top: 0;
  color: inherit;
  text-align: center;
  font-family: var(--mac-serif);
  font-size: clamp(24px, 2vw, 30px);
  font-weight: 700;
  border-bottom: 0.5px solid var(--mac-line);
}

.mac-compare-conclusion::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 0;
  border-top: 2rem solid var(--mac-orange);
  border-right: 2.2rem solid transparent;
  border-left: 2.2rem solid transparent;
  transform: translateX(-50%);
}

.mac-outcomes {
  margin-top: 1.75rem;
  color: inherit;
  text-align: center;
}

.mac-outcome-list {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 1.5rem;
  padding: 2rem 0 3rem;
}

.mac-outcome-list span {
  position: relative;
  display: block;
  padding: 1rem 1.125rem;
  background: #fffdf5;
  color: var(--mac-navy);
  text-align: left;
  border: 1px solid #e8e2cc;
  border-left: .3125rem solid var(--mac-main);
  border-radius: 2px;
  box-shadow: var(--mac-shadow);
}

p.mac-outcome-conclusion {
  margin: 0 auto;
  font-family: var(--mac-serif);
  font-size: clamp(24px, 2.2vw, 30px);
  font-weight: 700;
  line-height: 1.6;
  color: var(--mac-orange);
  text-align: center;
  width: min(100%, 820px);
  text-wrap: balance;
}

.mac-price-section .mac-team-panel .mac-panel-intro,
.mac-price-section .mac-compare-panel .mac-panel-intro {
  width: 100%;
  max-width: 950px;
  text-align: left;
  text-wrap: balance;
}

.mac-price-section .mac-compare-conclusion {
  display: block;
  width: min(100%, 820px);
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  text-wrap: balance;
}

.mac-price-section .mac-outcomes .mac-panel-intro {
  width: 100%;
  max-width: 900px;
  text-align: left;
  text-wrap: balance;
}

.mac-price-section .mac-compare-flow span {
  text-align: center;
  justify-content: center;
}

.mac-panel-image {
  width: 60%;
  max-width: 850px;
  margin: 1.5rem auto 1.75rem;
}

.mac-panel-image img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  margin: 0 auto;
  object-fit: contain;
}

.mac-steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.375rem;
}

.mac-steps::before {
  content: "";
  position: absolute;
  left: 7%;
  right: 7%;
  top: 44px;
  height: 2px;
  background: linear-gradient(90deg, var(--mac-main), var(--mac-navy));
  z-index: 0;
}

.mac-step {
  --mac-step-accent: var(--mac-main);
  --mac-step-number-bg: #f0faf9;
  --mac-step-body-bg: #fff;
  --mac-step-border: #d9e8e8;
  --mac-step-title: var(--mac-navy);
  position: relative;
  z-index: 1;
  background: var(--mac-step-body-bg);
  border: 1px solid var(--mac-step-border);
  border-radius: 7px;
  box-shadow: var(--mac-shadow);
  overflow: hidden;
}

.mac-step:nth-child(n+3) {
  --mac-step-accent: #168f8c;
  --mac-step-number-bg: #e2f4f2;
  --mac-step-border: #c5e3e0;
}

.mac-step:nth-child(n+5) {
  --mac-step-accent: #537b9d;
  --mac-step-number-bg: #eaf1f7;
  --mac-step-border: #cfdde8;
}

.mac-step:last-child {
  --mac-step-accent: #fff;
  --mac-step-number-bg: var(--mac-navy);
  --mac-step-border: var(--mac-navy);
  --mac-step-title: var(--mac-orange);
}

.mac-step__number {
  display: flex;
  height: 88px;
  align-items: center;
  justify-content: center;
  gap: .375rem;
  background: var(--mac-step-number-bg);
  color: var(--mac-step-accent);
  font-family: var(--mac-roboto);
  font-size: 1.5rem;
  font-weight: 700;
}

.mac-step__number small {
  font-size: .6875rem;
  letter-spacing: .08em;
}

.mac-step__body {
  padding: 1.375rem 1.125rem 1.5625rem;
  background: var(--mac-step-body-bg);
}

.mac-step h3 {
  margin-bottom: .625rem;
  color: var(--mac-step-title);
  font-family: var(--mac-serif);
  font-size: 1.1875rem;
}

.mac-step p {
  font-size: .875rem;
  line-height: 1.7;
}

.mac-step__icon {
  display: block;
  width: 64px;
  height: 64px;
  margin: 0 auto .875rem;
  object-fit: contain;
}

.mac-value-section {
  --mac-section-label-color: var(--mac-main);
  --mac-value-rule: #efcda7;
  position: relative;
}

.mac-value-section:is(.mac-scheme-white, .mac-scheme-light-gray, .mac-scheme-mint, .mac-scheme-warm) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='120' viewBox='0 0 140 120'%3E%3Cg fill='none' stroke='%2300A2A2' stroke-opacity='.07'%3E%3Cpath d='M35 2l34 20v40L35 82 1 62V22zM105 38l34 20v40l-34 20-34-20V58z'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: repeat;
}

.mac-value-section:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) {
  --mac-value-rule: var(--mac-orange);
  color: #fff;
}

.mac-value-section.mac-scheme-navy-gradient {
  --mac-section-label-color: var(--mac-orange);
}

.mac-value-section.mac-scheme-green-gradient {
  --mac-section-label-color: var(--mac-navy);
}

.mac-value-section .mac-section-subtitle {
  color: var(--mac-section-label-color);
}

.mac-value-overview {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 3.75rem;
  align-items: center;
  margin-bottom: 7rem;
}

.mac-value-message h2 {
  margin: .5rem 0 1.5rem;
  color: inherit;
}

.mac-value-message>p:last-child {
  line-height: 2;
}

h3.mac-values-title {
  margin-top: .5rem;
  margin-bottom: 0.8em;
  color: inherit;
  font-family: var(--mac-serif);
  font-size: var(--mac-subsection-title-size);
  font-weight: 600;
  line-height: 1.55;
  width: fit-content;
  padding-left: 1rem;
  border-left: 3px solid var(--mac-orange);
  text-align: left;
}

.mac-value-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: .875rem;
}

.mac-value-card {
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: 1.25rem;
  background: #fff;
  border: 1px solid #d7e9e8;
  border-radius: 6px;
  box-shadow: var(--mac-shadow);
  font-weight: 600;
}

.mac-value-card span {
  flex: 0 0 auto;
  color: var(--mac-orange);
  font-size: 1.5rem;
  line-height: 1;
}

.mac-remains {
  margin-bottom: 5rem;
}

.mac-remains h3 {
  width: fit-content;
  padding-left: 1rem;
  border-left: 3px solid var(--mac-orange);
  text-align: left;
  margin: 0;
  color: inherit;
  font-family: var(--mac-serif);
  font-size: var(--mac-subsection-title-size);
}

p.mac-remains__text {
  max-width: 850px;
  line-height: 1.9;
  text-align: left;
  margin-bottom: 1.5rem;
}

.mac-remains__body {
  display: grid;
  grid-template-columns: minmax(0, 3.5fr) minmax(0, 6.5fr);
  gap: clamp(2.5rem, 5vw, 5rem);
  align-items: center;
}

.mac-remains__image {
  width: 100%;
  margin: 0;
  text-align: center;
}

.mac-remains__image img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
}

.mac-remains__content {
  min-width: 0;
}

.mac-remains__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.35rem;
  max-width: 40rem;
  margin: 0 auto 2.5rem;
}

.mac-remains__item {
  display: block;
  padding: .5em 1.5em;
  background: var(--mac-main);
  border-radius: 999px;
  font-weight: 600;
  color: var(--mac-white);
}

.mac-remains__conclusion {
  margin: 0 auto;
  padding-top: 1.375rem;
  border-top: 1px solid var(--mac-value-rule);
  color: inherit;
  font-family: var(--mac-serif);
  font-size: clamp(19px, 1.8vw, 25px);
  font-weight: 600;
  line-height: 1.7;
  text-align: center;
}

.mac-future {
  max-width: 800px;
  padding: 2.5rem 2.5rem 3rem;
  background: var(--mac-navy);
  border-radius: 8px;
  color: #fff;
  text-align: center;
  box-shadow: var(--mac-shadow);
  margin: auto;
}

.mac-future .mac-small-label {
  display: inline-block;
  margin: 0 0 .875rem;
  color: var(--mac-orange);
  font-family: var(--mac-roboto);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .16em;
}

p.mac-future__main {
  margin: 0 auto 0.5em;
  font-family: var(--mac-serif);
  font-size: clamp(22px, 2vw, 30px);
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: .02em;
}

.mac-future__detail {
  margin: 0 auto;
  font-family: inherit;
  font-size: .9375rem;
  font-weight: 400;
  line-height: 1.9;
  opacity: .9;
}

.mac-future .mac-button {
  margin: 1.5rem auto 0;
  display: inline-flex;
}

.mac-pws-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .8125rem;
  margin-top: 1.5rem;
  padding: .75rem 1.25rem;
  border-radius: 999px;
  background: #fff;
  color: #1a2744;
  text-decoration: none;
  font-weight: 700;
  box-shadow: var(--mac-shadow);
  transition: transform .2s ease;
}

.mac-pws-link:hover {
  transform: translateY(-2px);
}

.mac-pws-symbol {
  display: block;
  width: 42px;
  height: 42px;
  object-fit: contain;
  flex: 0 0 42px;
}

.mac-pws-link b {
  font-size: 1.15em;
}

p.mac-value-detail {
  margin-top: 1.125rem;
  padding-top: 1.125rem;
  border-top: 1px solid var(--mac-value-rule);
  font-size: .9375rem;
  line-height: 1.9;
  color: inherit;
}

.mac-voice-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.375rem;
}

.mac-voice-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 220px;
  padding: 1.75rem 1.625rem 1.625rem;
  background: #fff;
  border-radius: 6px;
  box-shadow: var(--mac-shadow);
  text-decoration: none;
  color: inherit;
  transition: transform .2s ease, box-shadow .2s ease;
  overflow: hidden;
  border-top: 0;
}

.mac-voice-card[href]:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 34px rgba(21, 58, 91, .14);
}

p.mac-voice-card__meta {
  font-size: 1.25rem;
  color: var(--mac-navy);
  font-weight: 700;
  padding: 1em 0;

}

.mac-voice-card>p:nth-child(2) {
  line-height: 1.8;
}

.mac-voice-card__link b {
  font-size: 1.1875rem;
  font-weight: 400;
  transition: transform .2s ease;
}

.mac-voice-card[href]:hover .mac-voice-card__link b {
  transform: translateX(4px);
}

.mac-voice-card__link {
  position: static;
  display: inline-flex;
  align-items: center;
  gap: .625rem;
  margin-top: auto;
  padding-top: 1.375rem;
  color: var(--mac-main);
  font-size: .875rem;
  width: 100%;
  font-weight: 700;
  justify-content: flex-end;
  text-align: right;
}

.mac-voice-card--extra {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .5s ease, transform .5s ease;
}

.mac-voice-card--extra[hidden] {
  display: none;
}

.mac-voice-card--extra.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.mac-voice-expand-wrap {
  display: flex;
  justify-content: center;
  margin-top: 2rem;
}

.mac-voice-expand {
  position: relative;
  appearance: none;
  cursor: pointer;
  min-width: 0;
  gap: .75rem;
  padding: .5rem .25rem .625rem;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--mac-orange);
  font-weight: 700;
}

.mac-voice-expand::after {
  content: "";
  position: absolute;
  right: .25rem;
  bottom: 0;
  left: .25rem;
  height: 2px;
  background: var(--mac-orange);
  transition: transform .25s ease;
}

.mac-voice-expand:hover {
  background: transparent;
  color: var(--mac-orange);
}

.mac-voice-expand:hover::after {
  transform: translateY(-.1875rem);
}

.mac-voice-expand b {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  transition: transform .25s ease;
}

.mac-voice-expand[aria-expanded="true"] b {
  transform: rotate(45deg);
}

.mac-voice-list-action {
  margin-top: 1.125rem;
}

.mac-voice-expand-wrap+.mac-voice-list-action {
  margin-top: 2.5rem;
}

.mac-voice-card__image {
  width: 85%;
  margin: 0 auto 1rem;
}

.mac-voice-card .mac-voice-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  box-sizing: border-box;
  padding: 0;
  background: #fff;
  border-radius: 8px;
}

.mac-voice-card img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.mac-voice-card img[src] {
  clip-path: none;
  transform: none;
}

.mac-voice-card::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, var(--mac-main) 0%, var(--mac-navy) 100%);
}

.mac-faq-layout {
  display: grid;
  grid-template-columns: .38fr .62fr;
  gap: 4.375rem;
  align-items: start;
}

.mac-faq-list {
  border-top: 1px solid #cfe0e2;
}

.mac-faq-item {
  border-bottom: 1px solid #cfe0e2;
}

.mac-faq-question {
  display: grid;
  width: 100%;
  grid-template-columns: auto 1fr auto;
  gap: .875rem;
  align-items: center;
  padding: 1.5rem .25rem;
  border: 0;
  background: none;
  color: var(--mac-text);
  text-align: left;
  cursor: pointer;
}

.mac-faq-question span {
  color: var(--mac-main);
  font-family: var(--mac-roboto);
  font-size: 1.25rem;
  font-weight: 700;
}

.mac-faq-question em {
  font-style: normal;
  font-weight: 600;
  font-size: 1rem;
}

.mac-faq-question b {
  color: var(--mac-main);
  font-size: 1.5rem;
  font-weight: 400;
  transition: .2s;
}

.mac-faq-answer {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .25s;
}

.mac-faq-answer p {
  overflow: hidden;
  padding: 0 2.75rem;
  line-height: 1.8;
}

.mac-faq-item.is-open .mac-faq-answer {
  grid-template-rows: 1fr;
}

.mac-faq-item.is-open .mac-faq-answer p {
  padding-bottom: 1.5rem;
}

.mac-faq-item.is-open .mac-faq-question b {
  transform: rotate(45deg);
}

.mac-faq-answer,
.mac-faq-answer p {
  text-align: left;
}

.mac-faq-visual {
  width: min(100%, 300px);
  margin: 1.75rem auto 0;
}

.mac-faq-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 260px;
  object-fit: contain;
}

.mac-cta {
  position: relative;
  background: linear-gradient(rgba(247, 252, 252, .86), rgba(247, 252, 252, .86)), radial-gradient(circle at 30% 30%, #d6f2ef, #edf6f6 55%, #d9e7ea);
  min-height: 460px;
  display: flex;
  align-items: center;
  --mac-cta-bg: none;
  isolation: isolate;
}

.mac-cta__inner {
  text-align: center;
}

.mac-cta h2 {
  color: var(--mac-navy);
}

.mac-cta__inner>div:first-child>p:last-child {
  margin-top: 1rem;
}

.mac-cta__actions {
  justify-content: center;
  gap: 2.625rem;
}

.mac-cta__actions .mac-button {
  min-width: 300px;
}

.mac-cta::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background: var(--mac-cta-bg) center / cover no-repeat;
}

.mac-cta__overlay {
  width: 100%;
  padding: 5.125rem 0;
  position: relative;
  z-index: 1;
  background: rgba(247, 252, 252, .74);
}

.mac-cta:is(.mac-scheme-navy-gradient, .mac-scheme-green-gradient) .mac-cta__overlay {
  background: rgba(8, 52, 65, .68);
}

.mac-related {
  background: #fff;
}

.mac-related-grid {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}

.mac-related-card {
  max-width: 470px;
  position: relative;
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #d4e6e6;
  border-radius: 8px;
  color: var(--mac-text);
  box-shadow: var(--mac-shadow);
  text-decoration: none;
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
  overflow: hidden;
}

.mac-related-card::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, var(--mac-main), var(--mac-navy));
}

.mac-related-card:hover {
  transform: translateY(-4px);
  border-color: #a9dada;
  box-shadow: 0 18px 38px rgba(21, 58, 91, .13);
}

.mac-related-card__body {
  padding: 2rem 2rem 1.75rem;
}

.mac-related-card h3 {
  margin: 0 0 .875rem;
  color: var(--mac-navy);
  font-family: var(--mac-serif);
  font-size: 1.5rem;
  line-height: 1.45;
}

.mac-related-card__body>p {
  margin: 0;
  line-height: 1.9;
}

.mac-related-card__footer {
  display: grid;
  min-height: 9rem;
  margin-top: auto;
  grid-template-columns: minmax(0, 1.4fr) minmax(7.5rem, 1fr);
}

.mac-related-card__footer--no-image,
.mac-related-card__footer--no-link {
  grid-template-columns: 1fr;
}

.mac-related-card__link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .875rem;
  padding: 1.25rem;
  background: #5db2b4;
  color: #fff;
  font-weight: 700;
  text-align: center;
  transition: background-color .3s ease;
}

.mac-related-card__link b {
  font-size: 1.0625rem;
  font-weight: 500;
  transition: transform .3s ease;
}

.mac-related-card__image {
  display: block;
  overflow: hidden;
  background: #eaf3f4;
}

.mac-related-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}

.mac-related-card:hover .mac-related-card__link {
  background: var(--mac-navy);
}

.mac-related-card:hover .mac-related-card__link b {
  transform: translateX(.25rem);
}

.mac-related-card:hover .mac-related-card__image img {
  transform: scale(1.05);
}

@media (min-width: 1025px) {
  .mac-steps {
    overflow: visible;
  }

  .mac-steps::before {
    z-index: 0;
  }

  .mac-steps .mac-step {
    overflow: visible;
  }

  .mac-steps .mac-step__number {
    border-radius: 7px 7px 0 0;
  }

  .mac-steps .mac-step__body {
    border-radius: 0 0 7px 7px;
  }

  .mac-steps .mac-step:nth-child(5)::after,
  .mac-steps .mac-step:nth-child(6)::after {
    content: "";
    position: absolute;
    top: 44px;
    left: 100%;
    width: 23px;
    height: 2px;
    background: linear-gradient(90deg, var(--mac-main), var(--mac-navy));
    z-index: 0;
    pointer-events: none;
  }

  .mac-steps .mac-step:nth-child(4)::before,
  .mac-steps .mac-step:nth-child(4)::after {
    content: none;
    display: none;
  }
}

@media (max-width: 1024px) {
  .mac-voice-card__image {
    width: 80%;
  }

  .mac-title-box--left {
    text-align: center;
    margin-inline: auto;
  }

  .mac-title-box--left .mac-section-description {
    margin-inline: auto;
  }

  .mac-hero__inner {
    grid-template-columns: minmax(0, 1fr) minmax(330px, .82fr);
    gap: 1.25rem 2rem;
  }

  .mac-hero__grid {
    grid-template-columns: minmax(0, 1fr) minmax(330px, .82fr);
    gap: 2.125rem;
  }

  .mac-hero h1 {
    font-size: clamp(32px, 4vw, 42px);
  }

  .mac-problem-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .mac-compare-side {
    padding: 2rem 1rem;
  }

  .mac-steps {
    grid-template-columns: repeat(2, 1fr);
  }

  .mac-steps::before {
    display: none;
  }

  .mac-steps .mac-step:nth-child(4)::before,
  .mac-steps .mac-step:nth-child(4)::after,
  .mac-steps .mac-step:nth-child(5)::after,
  .mac-steps .mac-step:nth-child(6)::after {
    content: none;
  }

  .mac-value-overview {
    grid-template-columns: 1fr;
    margin-bottom: 4rem;
  }

  .mac-faq-layout {
    grid-template-columns: 1fr;
    gap: 2.625rem;
  }
}

@media (max-width: 768px) {
  .mac-service-page {
    font-size: 1rem;
  }

  .mac-title-box {
    margin-bottom: 2.125rem;
  }

  .mac-title-box--left {
    padding-left: 0;
  }

  .mac-section-subtitle {
    padding-bottom: .375rem;
    font-size: .875rem;
  }

  .mac-section-subtitle::before {
    top: -1.25rem;
    left: -1.5625rem;
    width: 1.9375rem;
  }

  .mac-section-subtitle::after {
    width: 2.375rem;
  }

  .mac-section-description {
    text-align: left;
    max-width: 34em;
    margin-left: auto;
    margin-right: auto;
    font-size: .875rem;
    line-height: 1.85;
  }

  .mac-section-description br {
    display: none;
  }

  .mac-title-box h2,
  .mac-value-message h2,
  .mac-cta h2 {
    font-size: clamp(26px, 7.4vw, 34px);
    line-height: 1.45;
  }

  .mac-hero {
    min-height: 0;
  }

  .mac-hero__inner {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1.625rem;
    width: min(100% - 32px, 680px);
    padding: 4.75rem 0 3.25rem;
  }

  .mac-hero__content {
    max-width: none;
  }

  .mac-hero h1 {
    max-width: none;
    font-size: clamp(31px, 8.8vw, 42px);
    line-height: 1.42;
  }

  .mac-hero__visual {
    order: 2;
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .mac-hero-illustration {
    min-height: 260px;
  }

  .mac-hero-illustration__panel {
    top: 36px;
    right: 5%;
    width: 82%;
    height: 190px;
  }

  .mac-flow-dot {
    transform: scale(.72);
  }

  .mac-document-stack {
    transform: scale(.7);
    transform-origin: bottom right;
  }

  .mac-hero__actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: .625rem;
  }

  .mac-problem-grid {
    grid-template-columns: 1fr 1fr;
  }

  .mac-problem-card {
    min-height: 132px;
    padding: 1.3125rem .875rem;
  }

  .mac-hero__copy {
    width: 100%;
  }

  .mac-hero__image {
    max-width: 100%;
    margin: 0 auto;
  }

  .mac-hero-issues {
    max-width: none;
    margin: .875rem 0 0;
  }

  .mac-hero__grid {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }

  .mac-hero__actions .mac-button {
    width: min(100%, 360px);
    margin-inline: auto;
  }

  .mac-hero__note {
    text-align: center;
    line-height: 1.7;
  }

  .mac-workflow-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .mac-workflow-support {
    grid-template-columns: 1fr;
    gap: 1.25rem;
    margin-bottom: 2.25rem;
  }

  .mac-workflow-support__image,
  .mac-workflow-support--single .mac-workflow-support__image {
    width: 100%;
  }

  .mac-workflow-support__text {
    font-size: 1rem;
    line-height: 1.9;
  }

  .mac-workflow-card:last-child:nth-child(odd) {
    grid-column: auto;
    width: auto;
  }

  .mac-outsourcing-highlight {
    margin-top: 1.875rem;
    padding: 1.625rem 1rem;
  }

  .mac-outsourcing-highlight__tags {
    gap: .5rem;
    justify-content: center;
  }

  .mac-outsourcing-highlight__tags span {
    padding: .5625rem .8125rem;
    font-size: .8125rem;
  }

  .mac-scope-row {
    grid-template-columns: 1fr;
    gap: .625rem;
    padding: .9375rem;
  }

  .mac-scope-row>strong {
    text-align: left;
  }

  .mac-scope-flow {
    display: grid;
    grid-template-columns: 1fr;
  }

  .mac-scope-flow span+span::before {
    content: "↓";
    left: 50%;
    top: -20px;
    transform: translateX(-50%);
  }

  .mac-workflow-card__head {
    padding: 1.125rem 1rem;
  }

  .mac-workflow-card__head h3 {
    font-size: 1.3rem;
    line-height: 1.3;
  }

  .mac-team-diagram {
    grid-template-columns: 1fr;
    gap: .625rem;
  }

  .mac-compare-grid {
    flex-direction: column;
    gap: 1rem;
  }

  .mac-compare-side+.mac-compare-side {
    border-top: 1px solid color-mix(in srgb, currentColor 22%, transparent);
    border-left: 0;
  }

  .mac-compare-flow {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.375rem;
    width: 100%;
    justify-content: center;
    overflow: visible;
    padding: 0;
  }

  .mac-compare-flow span+span::before {
    display: block;
    content: "↓";
    left: 50%;
    top: -21px;
    transform: translateX(-50%);
  }

  .mac-outcome-list {
    grid-template-columns: 1fr;
    gap: .5625rem;
  }

  .mac-price-section .mac-team-panel .mac-panel-intro,
  .mac-price-section .mac-compare-panel .mac-panel-intro,
  .mac-price-section .mac-compare-conclusion,
  .mac-price-section .mac-outcome-conclusion {
    text-wrap: wrap;
  }

  .mac-price-section .mac-outcomes .mac-panel-intro {
    text-wrap: wrap;
  }

  .mac-panel-image {
    width: 100%;
    margin: 1.25rem auto 1.5rem;
  }

  .mac-team-node {
    min-height: 62px;
  }

  .mac-compare-side {
    padding: 1rem 0;
  }

  .mac-compare-flow span {
    margin-bottom: 1em;
  }

  p.mac-compare-conclusion {
    width: 100%;
  }

  .mac-steps {
    grid-template-columns: 1fr;
  }

  .mac-step {
    display: block;
  }

  .mac-step__number {
    min-height: 58px;
    height: 58px;
    flex-direction: row;
  }

  .mac-step__icon {
    width: 54px;
    height: 54px;
    margin-bottom: .75rem;
  }

  .mac-step__body {
    padding: 1.125rem 1rem 1.3125rem;
    text-align: center;
  }

  .mac-step h3 {
    font-size: 1.1875rem;
  }

  p.mac-value-detail {
    font-size: .875rem;
    max-width: 34em;
    margin-left: auto;
    margin-right: auto;
  }

  .mac-value-message {
    text-align: center;
  }

  .mac-future {
    padding: 1.625rem 1rem 1.75rem;
  }

  .mac-future .mac-future__main {
    font-size: 1.25rem;
    line-height: 1.75;
  }

  .mac-voice-card {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 0;
    padding: 2rem 1.1rem 1.3rem;
  }

  .mac-voice-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
    align-items: stretch;
  }

  .mac-faq-question {
    grid-template-columns: 34px minmax(0, 1fr) 24px;
    gap: .5rem;
    padding: 1.125rem 0;
  }

  .mac-faq-answer p {
    padding-left: 2.625rem;
    padding-right: .25rem;
    text-align: left;
  }

  .mac-faq-visual {
    max-width: 240px;
    margin-top: 1.375rem;
  }

  .mac-faq-layout {
    gap: 1.625rem;
  }

  .mac-faq-layout .mac-title-box--left {
    text-align: center;
  }

  .mac-faq-question em {
    line-height: 1.55;
  }

  .mac-cta__actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
    gap: .875rem;
  }

  .mac-cta__actions .mac-button {
    min-width: 0;
  }

  .mac-related-card__body {
    padding: 1.75rem 1.375rem 1.5rem;
  }

  .mac-related-card__footer {
    min-height: 8rem;
    grid-template-columns: minmax(0, 1.5fr) minmax(7rem, 1fr);
  }

  .mac-related-card__footer--no-image,
  .mac-related-card__footer--no-link {
    grid-template-columns: 1fr;
  }

  .mac-related-card h3 {
    font-size: 1.3125rem;
  }
}

@media (max-width: 767px) {
  .mac-voice-card__image {
    width: 75%;
  }

  .mac-remains {
    margin-bottom: 4rem;
  }

  .mac-remains__body {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .mac-remains__conclusion {
    font-size: 1.1875rem;
  }

  .mac-pws-link {
    gap: .625rem;
    padding: .625rem 1rem;
  }

  .mac-pws-symbol {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
  }
}

@media (max-width: 600px) {
  .mac-hero__inner {
    width: min(100% - 28px, 560px);
    padding-bottom: 2.875rem;
  }

  .mac-hero__grid {
    gap: 1.5rem;
  }

  .mac-hero h1 {
    font-size: clamp(27px, 7.4vw, 32px);
    line-height: 1.52;
    letter-spacing: 0;
    word-break: auto-phrase;
    overflow-wrap: normal;
  }

  .mac-hero__text {
    font-size: .9375rem;
    line-height: 1.85;
  }

  .mac-hero__worry-label {
    min-height: 34px;
    margin-top: 1.125rem;
    padding: .375rem .9375rem;
    font-size: .8125rem;
  }

  .mac-hero-issues {
    grid-template-columns: 1fr;

    margin-top: .875rem;

    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 100%;
    gap: .625rem;
    margin: 1rem auto 0;
  }

  .mac-hero-issues span,
  .mac-hero-issues span:nth-child(n) {

    font-size: .875rem;
    line-height: 1.55;

    box-sizing: border-box;
    width: min(100%, 430px);
    max-width: 430px;
    min-height: 46px;
    margin: 0 auto;
    padding: .6875rem 1rem;
    justify-content: center;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: break-word;
  }
}

@media (max-width: 580px) {
  .mac-value-grid {
    grid-template-columns: 1fr;
    place-items: center;
  }

  .mac-value-card {
    width: 100%;
    min-width: 0;
    max-width: 400px;
    min-height: 62px;
    padding: 1rem;
  }
}

@media (max-width: 480px) {
  .mac-hero__kicker {
    font-size: .875rem;
  }

  .mac-hero h1 {
    font-size: 2rem;
  }

  .mac-hero__visual {
    margin-bottom: -.5rem;
  }

  .mac-problem-grid {
    grid-template-columns: 1fr;
  }

  .mac-team-diagram {
    grid-template-columns: 1fr;
  }

  .mac-cta__overlay {
    padding: 4.25rem 0;
  }

  .mac-value-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 420px) {
  .mac-section-subtitle {
    font-size: .75rem;
  }

  .mac-section-subtitle::before {
    width: 1.6875rem;
  }

  .mac-shell {
    width: calc(100% - 24px);
  }

  .mac-section {
    padding: 3.125rem 0;
  }

  .mac-title-box h2,
  .mac-value-message h2,
  .mac-cta h2 {
    font-size: 1.6875rem;
  }

  .mac-hero h1 {
    font-size: 1.875rem;
  }
}

@media (max-width: 390px) {
  .mac-hero h1 {
    font-size: 1.625rem;
    line-height: 1.5;
  }
}


@media (max-width: 768px) {

  .mac-price-section .mac-shell,
  .mac-value-section .mac-shell,
  .mac-voice-section .mac-shell {
    min-width: 0;
  }

  .mac-value-overview,
  .mac-value-message,
  .mac-value-story,
  .mac-remains,
  .mac-remains__body,
  .mac-remains__image,
  .mac-remains__content,
  .mac-future,
  .mac-voice-grid,
  .mac-voice-card {
    min-width: 0;
    max-width: 100%;
  }

  .mac-value-story {
    width: 100%;
  }

  .mac-value-grid {
    width: 100%;
  }

  .mac-value-card p,
  .mac-remains__item,
  .mac-remains__conclusion,
  .mac-future__main,
  .mac-future__detail,
  .mac-voice-card p {
    overflow-wrap: anywhere;
  }

  .mac-remains__image img,
  .mac-voice-card img {
    max-width: 100%;
    height: auto;
  }
}

@media (max-width: 580px) {
  .mac-value-grid {
    width: 100%;
  }

  .mac-value-card {
    width: min(100%, 400px);
  }

  .mac-future {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .mac-voice-card {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .mac-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

.mac-scope-partial-cards--align-5-4 .mac-scope-partial-card {
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: .625rem;
}

.mac-scope-partial-cards--align-5-4 .mac-scope-partial-card b {
  font-size: 1rem;
}

.mac-scope-partial-cards--align-5-4 .mac-scope-partial-card b em {
  color: #b7661f;
  font-style: normal;
}

.mac-scope-partial-card__icon {
  flex: 0 0 2rem;
  width: 2rem;
  height: 2rem;
  background: currentColor;
  color: var(--mac-navy);
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: contain;
}

.mac-scope-partial-card__icon--1 {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 3h16v14H4zM2 19h20v2H2zM7 6h10v2H7zm0 4h4v4H7zm6 0h4v4h-4z'/%3E%3C/svg%3E");
}

.mac-scope-partial-card__icon--2 {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2h2v2h8V2h2v2h3v18H3V4h3V2zm13 8H5v10h14V10zM7 12h3v3H7zm4 0h3v3h-3zm4 0h2v3h-2z'/%3E%3C/svg%3E");
}

.mac-scope-partial-card__icon--3 {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 2h14v20H5V2zm2 2v4h10V4H7zm0 6v2h2v-2H7zm4 0v2h2v-2h-2zm4 0v2h2v-2h-2zM7 14v2h2v-2H7zm4 0v2h2v-2h-2zm4 0v6h2v-6h-2zM7 18v2h6v-2H7z'/%3E%3C/svg%3E");
}

.mac-scope-partial-card__icon--4 {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 2h10l4 4v16H5V2zm9 2.5V7h2.5L14 4.5zM8 11h8v2H8zm0 4h8v2H8z'/%3E%3C/svg%3E");
}

.mac-scope-partial-cards--align-5-4 .mac-scope-partial-card {
  align-items: flex-start;
}

.mac-scope-partial-card__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .35rem;
}

.mac-scope-partial-cards--align-5-4 .mac-scope-partial-card b {
  white-space: nowrap;
  line-height: 1.45;
}

.mac-scope-partial-cards--align-5-4 .mac-scope-partial-card small {
  display: block;
  width: 100%;
  line-height: 1.55;
}

@media (min-width: 1025px) and (max-width: 1455px) {
  .mac-scope-partial-cards--align-5-4 .mac-scope-partial-card {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    align-items: start;
    column-gap: .625rem;
    row-gap: .45rem;
  }

  .mac-scope-partial-cards--align-5-4 .mac-scope-partial-card__content {
    display: contents;
  }

  .mac-scope-partial-cards--align-5-4 .mac-scope-partial-card__icon {
    grid-column: 1;
    grid-row: 1;
  }

  .mac-scope-partial-cards--align-5-4 .mac-scope-partial-card b {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    white-space: normal;
  }

  .mac-scope-partial-cards--align-5-4 .mac-scope-partial-card small {
    grid-column: 1 / -1;
    grid-row: 2;
    padding-left: 0;
  }
}

@media (min-width: 1025px) and (max-width: 1249px) {
  .mac-scope-partial-cards--align-5-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mac-scope-partial-cards--align-5-4 .mac-scope-partial-card:nth-child(3) {
    grid-column: auto;
  }
}

@media (max-width: 555px) {
  .mac-scope-partial-cards--4 .mac-scope-partial-card,
  .mac-scope-partial-cards--align-5-4 .mac-scope-partial-card {
    flex-basis: 100%;
    max-width: 100%;
    width: 100%;
  }
}
