/* T&S GROUP v2-4-2 — Principles: stable desktop/mobile composition. */
.principles-page{background:#fff;color:#0b2b4d;overflow-x:hidden}
.principles-page main{overflow:hidden}
.principles-page .shell{min-width:0}
.pr-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 40px;font-size:11px;color:#7b91a7}
.pr-breadcrumb a{color:inherit;text-decoration:none}.pr-breadcrumb a:hover{color:#0b2b4d}

.pr-hero{padding:64px 0 84px;background:#fff}
.pr-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,560px);gap:68px;align-items:center;min-width:0}
.pr-hero__copy{min-width:0}.pr-hero .eyebrow{margin-bottom:16px}
.pr-hero h1{font-size:58px;line-height:1;max-width:760px;font-weight:400;letter-spacing:-.035em;margin:0 0 24px;overflow-wrap:normal;word-break:normal}
.pr-hero p{max-width:720px;margin:0;color:#58738d;font-size:16px;line-height:1.68}
.pr-hero__media{margin:0;width:100%;max-width:560px;justify-self:end;overflow:hidden;background:#e8eef3;aspect-ratio:4/3}
.pr-hero__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

.pr-foundation{padding:72px 0;border-top:1px solid #d6e0e8;border-bottom:1px solid #d6e0e8;background:#fbfcfd}
.pr-foundation__grid{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:74px;align-items:start;min-width:0}
.pr-foundation h2{font-size:38px;line-height:1.04;font-weight:400;letter-spacing:-.025em;margin:12px 0 0;max-width:500px}
.pr-foundation p{font-size:15px;line-height:1.72;color:#58738d;margin:2px 0 0;max-width:800px}

.pr-principles{padding:82px 0 90px}.pr-principles__head{margin-bottom:40px}
.pr-principles__head h2{font-size:44px;line-height:1.03;font-weight:400;letter-spacing:-.03em;margin:10px 0 0}
.pr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch}
.pr-card{border:1px solid #b7c8d7;background:#fff;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.pr-card>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;display:block;background:#e8eef3}
.pr-card__body{padding:25px 27px 29px;display:flex;flex-direction:column;min-height:236px}
.pr-card h3{font-size:22px;line-height:1.1;font-weight:400;margin:0 0 16px}.pr-card p{font-size:13px;line-height:1.6;color:#58738d;margin:0}.pr-card .num{margin-bottom:13px}

.pr-result{padding:80px 0 90px;background:#f5f8fa;border-top:1px solid #d6e0e8}
.pr-result__intro{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:72px;align-items:end;margin-bottom:40px;min-width:0}
.pr-result__intro h2{font-size:40px;line-height:1.03;font-weight:400;letter-spacing:-.025em;margin:10px 0 0}
.pr-result__intro>p{font-size:14px;line-height:1.68;color:#58738d;margin:0}
.pr-result__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.pr-result-card{background:#fff;border:1px solid #c6d3df;padding:26px;min-height:244px;min-width:0}
.pr-result-card>span{display:block;color:#4c8bbd;font-size:11px;font-weight:800;letter-spacing:.1em;margin-bottom:32px}
.pr-result-card h3{font-size:19px;line-height:1.1;font-weight:400;margin:0 0 14px}.pr-result-card p{font-size:12.5px;line-height:1.62;color:#58738d;margin:0}

.principles-page .diagnostics{padding:66px 0 72px}
.principles-page .diagnostic-box{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:stretch;overflow:hidden}
.principles-page .diagnostic-photo{width:100%;height:100%;min-height:520px;object-fit:cover;object-position:center}
.principles-page .diagnostic-form{min-width:0;padding:38px 42px}

.pr-reveal{opacity:0;transform:translateY(16px);transition:opacity .45s ease,transform .55s cubic-bezier(.2,.75,.25,1)}
.pr-reveal.pr-in,.cms-editor-page .pr-reveal{opacity:1;transform:none}

@media (min-width:1021px) and (max-width:1599px){
  .pr-hero{padding:48px 0 66px}.pr-hero__grid{grid-template-columns:minmax(0,1fr) 470px;gap:48px}.pr-hero__media{max-width:470px}.pr-hero h1{font-size:46px}.pr-hero p{font-size:14px}.pr-breadcrumb{margin-bottom:30px}
  .pr-foundation,.pr-principles,.pr-result{padding-top:62px;padding-bottom:68px}.pr-foundation__grid{gap:58px}.pr-foundation h2{font-size:32px}.pr-foundation p{font-size:13px}
  .pr-principles__head h2{font-size:36px}.pr-card__body{min-height:206px;padding:21px 23px 24px}.pr-card h3{font-size:19px}.pr-card p{font-size:12px}
  .pr-result__intro{gap:54px}.pr-result__intro h2{font-size:34px}.pr-result__intro>p{font-size:12.5px}.pr-result-card{min-height:210px;padding:22px}.pr-result-card h3{font-size:17px}.pr-result-card p{font-size:11.5px}
  .principles-page .diagnostic-photo{min-height:460px}.principles-page .diagnostic-form{padding:34px 38px}
}

@media(max-width:1020px){
  .pr-hero{padding:44px 0 62px}.pr-hero__grid,.pr-foundation__grid,.pr-result__intro{grid-template-columns:1fr;gap:28px}
  .pr-hero__media{max-width:720px;justify-self:start}.pr-hero h1{font-size:46px;max-width:680px}.pr-breadcrumb{margin-bottom:26px}
  .pr-foundation,.pr-principles,.pr-result{padding:62px 0}.pr-grid{grid-template-columns:1fr 1fr}.pr-result__grid{grid-template-columns:1fr 1fr}.pr-card__body{min-height:auto}
  .principles-page .diagnostic-box{grid-template-columns:1fr}.principles-page .diagnostic-photo{height:auto;min-height:0;aspect-ratio:16/10}.principles-page .diagnostic-form{padding:34px 28px}
}

@media(max-width:700px){
  .principles-page .shell{width:calc(100% - 28px)!important;max-width:none!important}
  .pr-hero{padding:30px 0 46px}.pr-breadcrumb{margin-bottom:20px;font-size:10px}.pr-hero__grid{gap:22px}.pr-hero h1{font-size:36px;line-height:1.04;letter-spacing:-.025em;margin-bottom:16px}.pr-hero p{font-size:14px;line-height:1.58}.pr-hero__media{width:100%;max-width:none;aspect-ratio:4/3}
  .pr-foundation,.pr-principles,.pr-result{padding:50px 0}.pr-foundation__grid{gap:18px}.pr-foundation h2,.pr-principles__head h2,.pr-result__intro h2{font-size:30px;line-height:1.06}.pr-foundation p,.pr-result__intro>p{font-size:13px;line-height:1.62}
  .pr-principles__head{margin-bottom:28px}.pr-grid,.pr-result__grid{grid-template-columns:1fr;gap:16px}.pr-card__body{padding:21px 20px 23px}.pr-card h3{font-size:20px}.pr-card p{font-size:12.5px}.pr-result__intro{gap:18px;margin-bottom:28px}.pr-result-card{min-height:0;padding:21px}.pr-result-card>span{margin-bottom:20px}.pr-result-card h3{font-size:18px}.pr-result-card p{font-size:12px}
  .principles-page .diagnostics{padding:50px 0 54px}.principles-page .diagnostic-photo{aspect-ratio:4/3}.principles-page .diagnostic-form{padding:28px 18px}.principles-page .diagnostic-form h2{font-size:30px!important;line-height:1.08!important}.principles-page .diagnostic-form label{font-size:9px}.principles-page .diagnostic-form input,.principles-page .diagnostic-form select{font-size:14px}
}

@media(max-width:430px){
  .principles-page .shell{width:calc(100% - 22px)!important}.pr-hero h1{font-size:33px}.pr-foundation h2,.pr-principles__head h2,.pr-result__intro h2{font-size:28px}.pr-card h3{font-size:19px}
}
@media(prefers-reduced-motion:reduce){.pr-reveal{opacity:1;transform:none;transition:none}}

/* Editor device preview uses the preview width, not the host monitor width. */
@container cmsPreview (max-width:900px){
  .pr-hero__grid,.pr-foundation__grid,.pr-result__intro{grid-template-columns:1fr!important;gap:28px!important}
  .pr-hero__media{max-width:720px!important;justify-self:start!important}.pr-grid{grid-template-columns:1fr 1fr!important}.pr-result__grid{grid-template-columns:1fr 1fr!important}
  .principles-page .diagnostic-box{grid-template-columns:1fr!important}.principles-page .diagnostic-photo{height:auto!important;min-height:0!important;aspect-ratio:16/10!important}
}
@container cmsPreview (max-width:640px){
  .pr-hero{padding:30px 0 46px!important}.pr-breadcrumb{margin-bottom:20px!important}.pr-hero h1{font-size:36px!important}.pr-hero p{font-size:14px!important}.pr-hero__media{max-width:none!important}
  .pr-foundation,.pr-principles,.pr-result{padding:50px 0!important}.pr-foundation h2,.pr-principles__head h2,.pr-result__intro h2{font-size:30px!important}.pr-grid,.pr-result__grid{grid-template-columns:1fr!important}.pr-card__body,.pr-result-card{min-height:0!important}
  .principles-page .diagnostic-photo{aspect-ratio:4/3!important}.principles-page .diagnostic-form{padding:28px 18px!important}
}
