/* Sakae partner page: editable copy over supplied section backgrounds. */
html body.sakae-page {
 --sakae-ink: #122c37;
 --sakae-muted: #425d6a;
 --sakae-accent: #b14d2d;
 --sakae-rule: #d4e1e7;
 font-family: var(--site-font, "DM Sans", sans-serif);
}
html body.sakae-page main#main#main {
 width: 100%;
 max-width: none;
 margin: 0;
 padding: var(--detail-header-space, 0px) 0 0;
 color: var(--sakae-ink);
 background: #fff;
 font-family: var(--site-font, "DM Sans", sans-serif);
}
html body.sakae-page main#main#main .sakae-section {
 position: relative;
 isolation: isolate;
 padding: clamp(44px, 5.5vw, 88px) 5.3%;
 scroll-margin-top: calc(var(--detail-header-space, 0px) + 16px);
}
html body.sakae-page main#main#main .sakae-container {
 width: 100%;
 max-width: 1600px;
 margin-inline: auto;
}
html body.sakae-page main#main#main .sakae-split {
 position: static;
 display: grid;
 grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
 gap: clamp(28px, 4vw, 72px);
 align-items: center;
}
html body.sakae-page main#main#main .sakae-copy {
 position: relative;
 z-index: 1;
 min-width: 0;
}
html body.sakae-page main#main#main .sakae-hero {
 display: grid;
 align-items: center;
 min-height: calc(100svh - var(--detail-header-space, 0px));
 background: #edf2f5;
}
html body.sakae-page main#main#main .sakae-eyebrow {
 margin: 0 0 20px;
 color: var(--sakae-muted);
 font-size: 13px;
 font-weight: 600;
 line-height: 1.6;
 letter-spacing: .13em;
}
html body.sakae-page main#main#main .sakae-lead {
 margin: 28px 0 20px;
 font-size: clamp(20px, 1.8vw, 28px);
 font-weight: 500;
 line-height: 1.45;
 letter-spacing: .01em;
}
html body.sakae-page main#main#main .sakae-body {
 max-width: 650px;
 margin: 24px 0 0;
 color: var(--sakae-muted);
 font-size: clamp(17px, 1.35vw, 21px);
 font-weight: 400;
 line-height: 1.75;
}
html body.sakae-page main#main#main .sakae-photo {
 position: absolute;
 inset: 0;
 z-index: 0;
 display: block;
 width: 100%;
 height: 100%;
 min-width: 0;
 margin: 0;
 overflow: hidden;
 border-radius: 0;
 pointer-events: none;
}
html body.sakae-page main#main#main .sakae-photo img {
 position: absolute !important;
 display: block;
 width: 100% !important;
 height: 100% !important;
 min-width: 0 !important;
 max-width: none !important;
 max-height: none !important;
 left: 0 !important;
 top: 0 !important;
 margin: 0 !important;
 padding: 0 !important;
 transform: none !important;
 object-fit: cover !important;
 object-position: center;
}
html body.sakae-page main#main#main .sakae-philosophy {
 background: #f7f6f5;
}
html body.sakae-page main#main#main .sakae-philosophy .sakae-eyebrow {
 color: #6b8291;
 font-size: clamp(24px, 3.5vw, 48px);
 font-weight: 400;
 letter-spacing: .15em;
}
html body.sakae-page main#main#main .sakae-history {
 background: #eee7e0;
}
html body.sakae-page main#main#main .sakae-history .sakae-eyebrow {
 color: var(--sakae-accent);
}
html body.sakae-page main#main#main .sakae-split--history {
 grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
}
html body.sakae-page main#main#main .sakae-split--history .sakae-copy {
 grid-column: 2;
 grid-row: 1;
}
html body.sakae-page main#main#main .sakae-timeline {
 list-style: none;
 margin: 28px 0 0;
 padding: 0;
 border-top: 1px solid #d8d0c6;
}
html body.sakae-page main#main#main .sakae-timeline li {
 display: grid;
 grid-template-columns: 72px minmax(0, 1fr);
 gap: 16px;
 padding: 15px 0;
 border-bottom: 1px solid #d8d0c6;
 font-size: 15px;
 line-height: 1.5;
}
html body.sakae-page main#main#main .sakae-timeline time,
html body.sakae-page main#main#main .sakae-timeline strong {
 color: var(--sakae-accent);
 font-weight: 600;
 font-variant-numeric: tabular-nums;
}
html body.sakae-page main#main#main .sakae-creations { background: #fff; }
html body.sakae-page main#main#main .sakae-offerings {
 display: grid;
 gap: 0;
 margin-top: 28px;
}
html body.sakae-page main#main#main .sakae-offerings article {
 padding: 20px 0;
 border-top: 1px solid var(--sakae-rule);
}
html body.sakae-page main#main#main .sakae-offerings p {
 margin: 10px 0 0;
 max-width: 550px;
 color: var(--sakae-muted);
 font-size: 17px;
 line-height: 1.65;
}
html body.sakae-page main#main#main .sakae-research {
 background: #e7e1ed;
}
html body.sakae-page main#main#main .sakae-certification {
 display: inline-flex;
 align-items: center;
 gap: 12px;
 margin: 26px 0 0;
 padding: 13px 18px;
 border: 1px solid #d9b4a8;
 border-radius: 6px;
 color: var(--sakae-accent);
 font-size: 15px;
 font-weight: 600;
 line-height: 1.5;
 letter-spacing: .025em;
}
html body.sakae-page main#main#main .sakae-certification i { font-size: 26px; }
html body.sakae-page main#main#main .sakae-visit {
 text-align: center;
 background: #fff;
 border-top: 1px solid var(--sakae-rule);
}
html body.sakae-page main#main#main .sakae-website {
 display: inline-flex;
 flex-wrap: wrap;
 align-items: center;
 justify-content: center;
 gap: 16px;
 max-width: 100%;
 margin-top: 28px;
 padding: 16px clamp(16px, 3vw, 36px);
 border: 1px solid var(--sakae-accent);
 border-radius: 5px;
 color: var(--sakae-accent);
 font-size: clamp(16px, 1.5vw, 21px);
 font-weight: 500;
 line-height: 1.5;
 overflow-wrap: anywhere;
 text-decoration: none;
 transition: background-color .2s, color .2s;
}
html body.sakae-page main#main#main .sakae-website:hover {
 color: #fff;
 background: var(--sakae-accent);
}
html body.sakae-page main#main#main .sakae-website:focus-visible {
 outline: 3px solid #266987;
 outline-offset: 5px;
}
html body.sakae-page main#main#main .sakae-sr-only {
 position: absolute;
 width: 1px;
 height: 1px;
 padding: 0;
 margin: -1px;
 overflow: hidden;
 clip-path: inset(50%);
 white-space: nowrap;
 border: 0;
}
@layer arotec-display-headings.spec {
 html body.sakae-page main#main#main h1,
 html body.sakae-page main#main#main h2 {
  margin: 0 !important;
  font-family: var(--site-font, "DM Sans", sans-serif) !important;
  font-size: clamp(36px, 4.4vw, 60px) !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  letter-spacing: -1.5px !important;
  color: var(--sakae-ink) !important;
 }
 html body.sakae-page main#main#main .sakae-offerings h3 {
  margin: 0 !important;
  font-family: var(--site-font, "DM Sans", sans-serif) !important;
  font-size: clamp(23px, 2vw, 30px) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: -.5px !important;
  color: var(--sakae-ink) !important;
 }
}
@media (max-width: 991px) {
 html body.sakae-page main#main#main .sakae-split,
 html body.sakae-page main#main#main .sakae-split--history {
  grid-template-columns: minmax(0, 1fr);
  gap: 30px;
 }
 html body.sakae-page main#main#main .sakae-hero { min-height: 0; }
 html body.sakae-page main#main#main .sakae-split--history .sakae-copy,
 html body.sakae-page main#main#main .sakae-split--history .sakae-photo {
  grid-column: auto;
  grid-row: auto;
 }
 html body.sakae-page main#main#main .sakae-photo {
  position: relative;
  inset: auto;
  height: auto;
  border-radius: 12px;
 }
 html body.sakae-page main#main#main .sakae-photo img {
  position: static !important;
  height: auto !important;
  object-fit: contain !important;
 }
}
@media (max-width: 480px) {
 html body.sakae-page main#main#main .sakae-section { padding-inline: 6%; }
 html body.sakae-page main#main#main .sakae-timeline li {
  grid-template-columns: 60px minmax(0, 1fr);
  gap: 10px;
  font-size: 14px;
 }
}
@media (prefers-reduced-motion: reduce) {
 html body.sakae-page main#main#main .sakae-website { transition: none; }
}
