/* Current concept-page design. The archived theme and recovered text stay intact. */
.template-modern .concept-page{
  --concept-blue:#0a9cbc;--concept-ink:#182b32;--concept-line:#cbd7d7;
}
.concept-page .page-heading{position:relative;margin-bottom:28px}
.concept-page .page-kicker{gap:12px;margin-bottom:28px;letter-spacing:.14em;font-size:.65rem}
.concept-page .page-kicker>span{color:#08738b}
.concept-page .page-kicker::before{content:"";width:7px;height:7px;background:var(--concept-blue);border-radius:50%}
.concept-page .page-title{
  max-width:13ch;font-size:clamp(2.75rem,5.6vw,5.45rem);
  line-height:1.02;letter-spacing:-.065em;text-wrap:balance;
  margin-bottom:30px;color:var(--concept-ink);overflow-wrap:normal;
}
.concept-page .heading-rule{height:1px;background:var(--concept-line)}
.concept-page .heading-rule>span{width:80px;height:3px;background:var(--concept-blue)}
.concept-page .page-content{max-width:none}
.concept-page .page-content>p{max-width:62ch;font-size:1rem;line-height:1.8;color:#4d6269;margin:0 0 20px}
.concept-page .page-content>p:first-child{font-size:clamp(1.12rem,1.65vw,1.32rem);line-height:1.65;color:var(--concept-ink);max-width:48ch}
.concept-page .page-content>p:has(>a){display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin:26px 0 38px}
.concept-page .page-content>p>a{display:inline-flex;align-items:center;gap:18px;min-height:48px;font-size:.78rem;font-weight:700;text-decoration:none;color:#24525f}
.concept-page .page-content>p>a::after{content:"↗";font-size:1rem;font-weight:400}
.concept-page .page-content>p>a:first-child{padding:13px 20px;background:var(--concept-ink);color:#fff;border-bottom:3px solid var(--concept-blue)}
.concept-page .page-content>p>a:hover{text-decoration:underline;text-underline-offset:5px}
.concept-page .page-content>blockquote{
  margin:0 0 60px;padding:21px 24px;border:0;border-left:3px solid var(--concept-blue);
  background:#e8efee;color:#4d6269;box-shadow:none;font:400 .82rem/1.7 Metropolis,Arial,sans-serif;
}
.concept-page .page-content>blockquote::before,.concept-page .page-content>blockquote::after{content:none}
.concept-page .page-content>blockquote p{margin:0;font:inherit}
.concept-page .page-content>blockquote strong{display:inline-block;margin-bottom:4px;color:var(--concept-ink);font-weight:700}
.concept-page .page-content>h2{max-width:29ch;margin:0 0 28px;font-size:clamp(1.6rem,2.6vw,2.35rem);line-height:1.22;letter-spacing:-.04em;color:var(--concept-ink)}
.concept-page .page-content>ul{
  list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 30px;counter-reset:concept-service;
}
.concept-page .page-content>ul>li{position:relative;padding:26px 0 24px;margin:0;border-top:1px solid var(--concept-line);counter-increment:concept-service}
.concept-page .page-content>ul>li::before{content:"0" counter(concept-service);display:block;margin-bottom:14px;color:#08738b;font:600 .65rem/1 Arial,sans-serif;letter-spacing:.12em}
.concept-page .page-content>ul p{font-size:.86rem;line-height:1.75;color:#4d6269;margin:0}
.concept-page .page-content>ul li>p:first-child{margin:0 0 12px;font-size:1.03rem;line-height:1.4;letter-spacing:-.02em}
.concept-page .page-content>ul li>p:first-child a{color:var(--concept-ink);text-decoration:none;display:inline-flex;gap:12px;min-height:44px;align-items:center}
.concept-page .page-content>ul li>p:first-child a::after{content:"↗";color:#08738b;font-weight:400}
.concept-page .page-content>ul li>p:first-child a:hover{text-decoration:underline;text-underline-offset:5px}
.concept-page .expertise{margin-top:52px;padding-top:26px;border-top:1px solid var(--concept-line)}
.concept-page .expertise .section-heading>span,.concept-page .expertise-arrow{color:#08738b}
.concept-page a:focus-visible{outline:2px solid #08738b;outline-offset:5px}
@media(max-width:45rem){
  .concept-page .page-title{font-size:clamp(2.5rem,8.8vw,3.6rem);max-width:15ch}
  .concept-page .page-content>blockquote{margin-bottom:42px;padding:18px}
  .concept-page .page-content>ul{grid-template-columns:1fr}
  .concept-page .page-content>ul>li{padding:22px 0 22px 35px}
  .concept-page .page-content>ul>li::before{position:absolute;left:0;top:39px}
  .concept-page .page-content>ul li>p:first-child{margin-bottom:6px}
}
