/* Shared inner-page interpretation of the Survate Experience System.
   Loaded by aboutus.html and recruit.html after home-concept.css. */

.inner-brand-concept {
  background: var(--home-ivory) !important;
}

.inner-brand-concept main {
  color: var(--home-ink);
  background: transparent;
}

.inner-brand-concept .page-hero {
  position: relative;
  min-height: 650px;
  overflow: hidden;
  color: var(--home-navy);
  background:
    radial-gradient(circle at 87% 12%, rgba(109,138,122,.17) 0 230px, transparent 231px),
    radial-gradient(circle at 15% 84%, rgba(199,164,90,.12) 0 170px, transparent 171px),
    linear-gradient(115deg, #f8f6f0 0%, var(--home-ivory) 58%, #e6ebe5 100%);
  isolation: isolate;
}

.inner-brand-concept .page-hero::before,
.inner-brand-concept .page-hero::after {
  display: none !important;
  content: none !important;
}

.inner-brand-concept .page-hero-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: url("../img/home-connection-pattern.svg") 89% center / min(760px, 61vw) auto no-repeat !important;
  opacity: .2 !important;
}

.inner-brand-concept .page-hero-grid {
  position: relative;
  z-index: 1;
  grid-template-columns: minmax(0, 1.08fr) minmax(340px, .72fr);
  gap: clamp(48px, 7vw, 96px);
  align-items: center;
  padding-block: clamp(92px, 10vw, 142px);
}

.inner-brand-concept .page-hero-copy { max-width: 720px; }
.inner-brand-concept .breadcrumb,
.inner-brand-concept .breadcrumb a { color: var(--home-muted); }
.inner-brand-concept .breadcrumb a:hover { color: var(--home-gold-text); }
.inner-brand-concept .page-hero .eyebrow { color: var(--home-gold-text); }
.inner-brand-concept .page-hero h1 {
  margin-block: 20px 28px;
  color: var(--home-navy);
  font-size: clamp(2.25rem, 4.7vw, 4.3rem);
  font-weight: 700;
  line-height: 1.22;
  letter-spacing: -.05em;
  text-shadow: none;
}
.inner-brand-concept .page-hero .page-lead {
  max-width: 690px;
  color: var(--home-muted);
  font-size: clamp(1rem, 1.25vw, 1.14rem);
  line-height: 2;
  text-shadow: none;
}
.inner-brand-concept .page-hero .hero-actions { margin-top: 32px; }
.inner-brand-concept .page-hero .button-primary {
  color: #fff;
  background: var(--home-navy);
  border-color: var(--home-navy);
}
.inner-brand-concept .page-hero .button-primary:hover {
  color: #fff;
  background: var(--home-navy-soft);
  border-color: var(--home-navy-soft);
}
.inner-brand-concept .page-hero .button-secondary {
  color: var(--home-navy);
  background: rgba(255,255,255,.55);
  border-color: rgba(10,24,46,.27);
}
.inner-brand-concept .page-hero .button-secondary:hover {
  color: var(--home-navy);
  background: #fff;
  border-color: var(--home-sage);
}

.inner-brand-concept .page-hero-card {
  position: relative;
  overflow: hidden;
  padding: clamp(32px, 4vw, 52px);
  color: #fff;
  background: var(--home-navy);
  border: 1px solid rgba(199,164,90,.42);
  border-radius: 2px 58px 2px 2px;
  box-shadow: 0 26px 64px rgba(10,24,46,.18);
}
.inner-brand-concept .page-hero-card::after {
  position: absolute;
  right: -130px;
  bottom: -160px;
  width: 430px;
  height: 430px;
  content: "";
  background: url("../img/home-connection-pattern.svg") center / contain no-repeat;
  opacity: .32;
}
.inner-brand-concept .page-hero-card > * { position: relative; z-index: 1; }
.inner-brand-concept .page-hero-card :where(.hero-card-label, dt) { color: #f0dca9; }
.inner-brand-concept .page-hero-card dd { color: rgba(255,255,255,.82); }
.inner-brand-concept .quick-facts > div { border-color: rgba(255,255,255,.16); }

.inner-brand-concept .anchor-nav {
  color: var(--home-navy);
  background: rgba(244,242,236,.95);
  border-color: var(--home-line);
  box-shadow: none;
  backdrop-filter: blur(16px);
}
.inner-brand-concept .anchor-nav a {
  color: var(--home-navy);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
}
.inner-brand-concept .anchor-nav a:hover {
  color: var(--home-gold-text);
  background: rgba(199,164,90,.12);
}
.inner-brand-concept .site-nav a[aria-current="page"] {
  color: var(--home-navy);
  background: rgba(199,164,90,.18);
  box-shadow: inset 0 -2px var(--home-gold);
}

.inner-brand-concept .section { position: relative; }
.inner-brand-concept .section:nth-of-type(even):not(.section-dark) { background: #fff; }
.inner-brand-concept .section-heading h2 { color: var(--home-navy); }
.inner-brand-concept .section-heading > p:not(.eyebrow) { color: var(--home-muted); }
.inner-brand-concept .section-heading .eyebrow { color: var(--home-gold-text); }
.inner-brand-concept .section-muted { background: var(--home-ivory); }

.inner-brand-concept :where(
  .about-stat-card,
  .profile-card,
  .business-list article,
  .message-card,
  .access-showcase,
  .feature-card,
  .job-card,
  .benefit-card,
  .faq-list details,
  .recruit-philosophy-card,
  .recruit-video-card
) {
  color: var(--home-ink);
  background: rgba(255,255,255,.85);
  border: 1px solid var(--home-line);
  border-radius: 2px;
  box-shadow: none;
}
.inner-brand-concept :where(
  .about-stat-card h3,
  .business-list h3,
  .message-card h2,
  .access-card h3,
  .feature-card h3,
  .job-card h3,
  .benefit-card h3,
  .faq-list summary,
  .recruit-philosophy-card h2,
  .recruit-video-card h3
) { color: var(--home-navy); }

.inner-brand-concept .about-stat-card {
  padding: 30px;
  border-top: 3px solid var(--home-sage);
}
.inner-brand-concept .about-stat-card strong { color: var(--home-navy); }
.inner-brand-concept .about-stat-card span { color: var(--home-muted); }
.inner-brand-concept .profile-card { overflow: hidden; border-radius: 2px 46px 2px 2px; }
.inner-brand-concept .profile-table :where(th, td) {
  color: var(--home-ink);
  border-color: var(--home-line);
}
.inner-brand-concept .profile-table th {
  color: var(--home-navy);
  background: rgba(109,138,122,.12);
}
.inner-brand-concept .profile-table td { background: rgba(255,255,255,.78); }
.inner-brand-concept .profile-table a { color: var(--home-gold-text); }

.inner-brand-concept .business-list article {
  min-height: 118px;
  padding: 28px;
  border-left: 4px solid var(--home-sage);
}
.inner-brand-concept .business-list article span {
  color: var(--home-gold-text);
  background: transparent;
  border-color: rgba(199,164,90,.52);
}

.about-brand-concept #philosophy {
  background:
    url("../img/home-connection-pattern.svg") 92% 45% / min(760px, 60vw) auto no-repeat,
    var(--home-navy);
}
.about-brand-concept #philosophy .section-heading :where(h2, p:not(.eyebrow)) { color: #fff; }
.about-brand-concept #philosophy .eyebrow { color: #f0dca9; }
.about-brand-concept .philosophy-panel {
  color: #fff;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.17);
  border-radius: 2px 34px 2px 2px;
  box-shadow: none;
}
.about-brand-concept .philosophy-panel :where(h3, p) { color: #fff; }
.about-brand-concept .philosophy-panel .philosophy-label { color: #f0dca9; }
.about-brand-concept .credo-list-detailed li {
  color: rgba(255,255,255,.86);
  background: rgba(255,255,255,.055);
  border-color: rgba(255,255,255,.14);
  box-shadow: none;
}
.about-brand-concept .credo-list-detailed li span { color: #f0dca9; }
.about-brand-concept .credo-list-detailed li strong { color: #fff; }

.about-brand-concept .message-card {
  overflow: hidden;
  padding: clamp(34px, 5vw, 62px);
  border-radius: 2px 60px 2px 2px;
}
.about-brand-concept .president-photo { border-radius: 2px 42px 2px 2px; box-shadow: none; }
.about-brand-concept .message-body p { color: var(--home-muted); }
.about-brand-concept .access-showcase { overflow: hidden; border-radius: 2px 62px 2px 2px; }
.about-brand-concept .access-card { color: var(--home-ink); background: rgba(255,255,255,.94); }
.about-brand-concept .access-card :where(p, li) { color: var(--home-muted); }
.about-brand-concept .access-card .access-label { color: var(--home-gold-text); }
.about-brand-concept .access-card .button-primary {
  color: #fff;
  background: var(--home-navy);
  border-color: var(--home-navy);
}
.about-brand-concept .access-card .button-secondary {
  color: var(--home-navy);
  background: transparent;
  border-color: rgba(10,24,46,.28);
}

.recruit-brand-concept .recruit-philosophy-intro { background: #fff; }
.recruit-brand-concept .recruit-philosophy-card {
  overflow: hidden;
  padding: clamp(34px, 5vw, 62px);
  border-radius: 2px 60px 2px 2px;
}
.recruit-brand-concept .recruit-philosophy-copy :where(p, blockquote) { color: var(--home-muted); }
.recruit-brand-concept .recruit-philosophy-copy blockquote {
  border-left-color: var(--home-gold);
  background: rgba(199,164,90,.08);
}
.recruit-brand-concept .recruit-philosophy-copy .hero-actions .button-primary {
  color: #fff !important;
  background: var(--home-navy) !important;
  border-color: var(--home-navy) !important;
  box-shadow: 0 14px 30px rgba(10,24,46,.18);
}
.recruit-brand-concept .recruit-philosophy-copy .hero-actions .button-primary:hover,
.recruit-brand-concept .recruit-philosophy-copy .hero-actions .button-primary:focus-visible {
  color: #fff !important;
  background: var(--home-navy-soft) !important;
  border-color: var(--home-navy-soft) !important;
}
.recruit-brand-concept .recruit-philosophy-copy .hero-actions .button-secondary {
  color: var(--home-navy) !important;
  background: rgba(255,255,255,.82) !important;
  border-color: rgba(10,24,46,.3) !important;
}
.recruit-brand-concept .recruit-philosophy-copy .hero-actions .button-secondary:hover,
.recruit-brand-concept .recruit-philosophy-copy .hero-actions .button-secondary:focus-visible {
  color: var(--home-navy) !important;
  background: #fff !important;
  border-color: var(--home-sage) !important;
}
.recruit-brand-concept .recruit-philosophy-points { background: rgba(109,138,122,.1); }
.recruit-brand-concept .recruit-philosophy-points :where(p, li, span) { color: var(--home-muted); }
.recruit-brand-concept .recruit-philosophy-points strong { color: var(--home-navy); }

.recruit-brand-concept .recruit-movie-section {
  background:
    url("../img/home-connection-pattern.svg") 92% 40% / min(760px, 60vw) auto no-repeat,
    var(--home-navy);
}
.recruit-brand-concept .recruit-movie-section .section-heading :where(h2, p) { color: #fff; }
.recruit-brand-concept .recruit-movie-section .eyebrow { color: #f0dca9; }
.recruit-brand-concept .recruit-video-card {
  overflow: hidden;
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.18);
}
.recruit-brand-concept .recruit-video-card h3 { color: #fff; }
.recruit-brand-concept .recruit-video-card span { color: #f0dca9; }

.recruit-brand-concept .feature-card { border-top: 3px solid var(--home-sage); }
.recruit-brand-concept .feature-card .card-number { color: var(--home-gold-text); }
.recruit-brand-concept .job-card {
  overflow: hidden;
  border-radius: 2px 44px 2px 2px;
}
.recruit-brand-concept .job-card-highlight { border-top: 4px solid var(--home-gold); }
.recruit-brand-concept .job-card-highlight::before { background: var(--home-gold) !important; }
.recruit-brand-concept :where(.job-kicker, .ai-dx-role-label) {
  color: var(--home-gold-text);
  background: rgba(199,164,90,.12);
  border-color: rgba(199,164,90,.42);
}
.recruit-brand-concept .job-badge,
.recruit-brand-concept .job-badge:not(.job-badge-gold):not(.job-badge-navy),
.recruit-brand-concept .job-badge.job-badge-red {
  color: var(--home-navy) !important;
  background: rgba(199,164,90,.18) !important;
  border-color: rgba(199,164,90,.56) !important;
  box-shadow: none !important;
}
.recruit-brand-concept .job-card :where(p, li, td) { color: var(--home-muted); }
.recruit-brand-concept .job-table :where(th, td) { border-color: var(--home-line); }
.recruit-brand-concept .job-table th { color: var(--home-navy); background: rgba(109,138,122,.1); }
.recruit-brand-concept .job-apply-button {
  color: #fff !important;
  background: var(--home-navy);
  border-color: var(--home-navy);
}
.recruit-brand-concept .job-apply-button:hover,
.recruit-brand-concept .job-apply-button:focus-visible {
  color: #fff !important;
  background: var(--home-navy-soft);
  border-color: var(--home-navy-soft);
}
.recruit-brand-concept .flow-icon {
  color: var(--home-gold-text) !important;
  background: rgba(199,164,90,.13) !important;
  border-color: rgba(199,164,90,.38) !important;
}
.recruit-brand-concept .holiday-fact dd { font-size: .86rem; line-height: 1.65; }
.recruit-brand-concept :where(.ai-dx-role-card, .ai-dx-fit-box, .job-salary-note) {
  color: var(--home-ink);
  background: rgba(109,138,122,.08);
  border-color: var(--home-line);
  box-shadow: none;
}
.recruit-brand-concept :where(.ai-dx-role-card, .ai-dx-fit-box, .job-salary-note) :where(h3, h4, strong) { color: var(--home-navy); }
.recruit-brand-concept :where(.ai-dx-role-card, .ai-dx-fit-box, .job-salary-note) :where(p, li) { color: var(--home-muted); }

.recruit-brand-concept #training {
  background:
    url("../img/home-connection-pattern.svg") 88% center / min(820px, 65vw) auto no-repeat,
    var(--home-navy);
}
.recruit-brand-concept #training :where(h2, h3, h4) { color: #fff; }
.recruit-brand-concept #training :where(p, li) { color: rgba(255,255,255,.78); }
.recruit-brand-concept #training .eyebrow { color: #f0dca9; }
.recruit-brand-concept #training :where(.su-curriculum-card, .su-msb-card, .su-system-list > div) {
  color: var(--home-ink) !important;
  background: rgba(255,255,255,.94) !important;
  border-color: rgba(255,255,255,.26) !important;
}
.recruit-brand-concept #training :where(.su-curriculum-card, .su-msb-card, .su-system-list > div) :where(h3, h4, p) {
  color: var(--home-ink) !important;
}
.recruit-brand-concept #training .su-cycle-flow > div {
  color: #fff !important;
  background: rgba(255,255,255,.08) !important;
  border-color: rgba(255,255,255,.18) !important;
}
.recruit-brand-concept #training .su-cycle-flow :where(h4, p) { color: #fff !important; }

.recruit-brand-concept .benefit-card { border-top: 3px solid var(--home-sage); }
.recruit-brand-concept .benefit-card :where(p, li) { color: var(--home-muted); }
.recruit-brand-concept .timeline li {
  color: var(--home-ink);
  background: rgba(255,255,255,.84);
  border-color: var(--home-line);
  box-shadow: none;
}
.recruit-brand-concept .timeline li > span { color: var(--home-gold-text); }
.recruit-brand-concept .timeline :where(h3, p) { color: var(--home-navy); }
.recruit-brand-concept .faq-list details { overflow: hidden; }
.recruit-brand-concept .faq-list summary {
  padding: 25px 66px 25px 28px;
  color: var(--home-navy);
}
.recruit-brand-concept .faq-list summary::after { color: var(--home-gold-text); }
.recruit-brand-concept .faq-list details p { padding: 0 28px 26px; color: var(--home-muted); }

.inner-brand-concept .cta-section {
  padding-block: 90px;
  color: var(--home-ink);
  background: var(--home-ivory);
}
.inner-brand-concept .entry-box {
  position: relative;
  overflow: hidden;
  padding: clamp(48px, 7vw, 82px);
  color: #fff;
  background: var(--home-navy);
  border: 0;
  border-radius: 2px 80px 2px 2px;
  box-shadow: none;
}
.inner-brand-concept .entry-box::after {
  position: absolute;
  right: -90px;
  bottom: -160px;
  width: 460px;
  height: 460px;
  content: "";
  background: url("../img/home-connection-pattern.svg") center / contain no-repeat;
  opacity: .3;
}
.inner-brand-concept .entry-box > * { position: relative; z-index: 1; }
.inner-brand-concept .entry-box .eyebrow { color: #f0dca9; }
.inner-brand-concept .entry-box h2 {
  color: #fff;
  font-size: clamp(1.9rem, 3.4vw, 3.15rem);
  line-height: 1.32;
}
.inner-brand-concept .entry-box > div > p:not(.eyebrow),
.inner-brand-concept .entry-box .entry-list li { color: rgba(255,255,255,.82); }
.inner-brand-concept .entry-box .button-light {
  color: var(--home-navy) !important;
  background: var(--home-gold) !important;
  border-color: var(--home-gold) !important;
  box-shadow: none !important;
}
.inner-brand-concept .entry-box .button-light:hover {
  color: var(--home-navy) !important;
  background: #d8bc7a !important;
  border-color: #d8bc7a !important;
}
.inner-brand-concept .entry-box .button-secondary {
  color: #fff;
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.42);
}
.inner-brand-concept .entry-box .button-secondary:hover {
  color: #fff;
  background: rgba(255,255,255,.16);
  border-color: #fff;
}
.inner-brand-concept .site-footer {
  color: rgba(255,255,255,.82);
  background: #071322 !important;
}
.inner-brand-concept .site-footer :where(.footer-brand, p, a, li, small) {
  color: rgba(255,255,255,.82) !important;
}
.inner-brand-concept .site-footer .footer-brand { color: #fff !important; }

@media (max-width: 980px) {
  .inner-brand-concept .page-hero-grid { grid-template-columns: 1fr; }
  .inner-brand-concept .page-hero-card { width: min(100%, 760px); }
}

@media (max-width: 760px) {
  .inner-brand-concept .page-hero { min-height: auto; }
  .inner-brand-concept .page-hero-grid { padding-block: 82px 68px; }
  .inner-brand-concept .page-hero h1 {
    font-size: clamp(2rem, 9vw, 2.7rem);
    line-height: 1.3;
  }
  .inner-brand-concept .page-hero h1 br { display: none; }
  .inner-brand-concept .page-hero .hero-actions .button { width: 100%; }
  .inner-brand-concept .page-hero-card { border-radius: 2px 38px 2px 2px; }
  .inner-brand-concept .entry-box { border-radius: 2px 42px 2px 2px; }
  .inner-brand-concept :where(.profile-card, .message-card, .access-showcase, .recruit-philosophy-card, .job-card) {
    border-radius: 2px 32px 2px 2px;
  }
}
