/* PSOne v2.0.0: topic hubs, visible breadcrumbs, search and 404 UX. */
.psone-breadcrumbs-v200 {
  width: min(calc(100% - 48px), 1200px);
  margin: 20px auto 0;
  color: #647081;
  font-size: .78rem;
  line-height: 1.5;
}
.psone-breadcrumbs-v200 ol { display:flex; flex-wrap:wrap; gap:6px 10px; margin:0; padding:0; list-style:none; }
.psone-breadcrumbs-v200 li { display:inline-flex; align-items:center; gap:10px; }
.psone-breadcrumbs-v200 li:not(:last-child)::after { color:#b79355; content:"/"; }
.psone-breadcrumbs-v200 a { color:#3e4b5c; text-decoration:none; }
.psone-breadcrumbs-v200 a:hover,.psone-breadcrumbs-v200 a:focus-visible { color:#7e6032; text-decoration:underline; text-underline-offset:3px; }

/* Defensive responsive rules: long B2B headings and Gutenberg children must
   remain inside the viewport at every supported mobile width. */
html,body { max-width:100%; overflow-x:clip; }
.wp-site-blocks,.wp-site-blocks > *,main,.wp-block-post-content,
.wp-block-post-content > *, .wp-block-group,.wp-block-cover,
.wp-block-cover__inner-container,.wp-block-columns,.wp-block-column { min-width:0; }
.wp-block-post-content h1,.wp-block-post-content h2,.wp-block-post-content h3,
.psone-hero-v4 h1,.psone-topic-hero-v200 h1,
.psone-v200-search h1,.psone-v200-404 h1 {
  max-width:100%; overflow-wrap:anywhere; word-break:normal; hyphens:auto;
}
.wp-block-post-content img { max-width:100%; height:auto; }

.psone-topic-hero-v200 { padding-block:clamp(54px,8vw,104px); background:radial-gradient(circle at 88% 12%,rgba(183,147,85,.18),transparent 30%),linear-gradient(140deg,#f7f3eb 0%,#fff 76%); }
.psone-topic-hero-v200 h1 { max-width:920px; font-size:clamp(2.5rem,5vw,4.7rem); line-height:1.04; }
.psone-topic-hero-v200 p:not(.psone-eyebrow) { max-width:780px; font-size:clamp(1rem,1.5vw,1.18rem); line-height:1.75; }
.psone-topic-section-v200 { padding-block:clamp(52px,7vw,92px); }
.psone-topic-section-v200:nth-of-type(even) { background:#fbfaf7; }
.psone-topic-section-v200 .wp-block-columns { align-items:stretch; }
.psone-topic-card-v200 { height:100%; padding:clamp(22px,3vw,34px); border:1px solid rgba(23,33,50,.12); border-radius:18px; background:#fff; box-shadow:0 14px 38px rgba(23,33,50,.06); }
.psone-topic-card-v200 h2,.psone-topic-card-v200 h3 { margin-top:0; }
.psone-topic-card-v200 .wp-block-button__link { min-height:46px; }
.psone-topic-links-v200 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:24px; }
.psone-topic-links-v200 a { display:flex; min-height:88px; align-items:center; padding:18px; border:1px solid rgba(23,33,50,.12); border-radius:14px; background:#fff; color:#172132; font-weight:700; text-decoration:none; box-shadow:0 9px 25px rgba(23,33,50,.045); }
.psone-topic-links-v200 a:hover,.psone-topic-links-v200 a:focus-visible { border-color:rgba(183,147,85,.55); color:#76572a; transform:translateY(-1px); }

.psone-v200-search main,.psone-v200-404 main { width:min(calc(100% - 48px),1200px); margin:clamp(48px,8vw,96px) auto; }
.psone-v200-search main > h1,.psone-v200-404 main > h1 { font-size:clamp(2.4rem,5vw,4.6rem); line-height:1.06; }
.psone-v200-search main > .wp-block-query { margin-top:34px; }
.psone-v200-search main .wp-block-post-template { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; padding:0; }
.psone-v200-search main .wp-block-post-template > li { padding:24px; border:1px solid rgba(23,33,50,.12); border-radius:18px; background:#fff; box-shadow:0 12px 32px rgba(23,33,50,.055); }
.psone-v200-search main .wp-block-post-title { margin:0 0 12px; font-size:1.35rem !important; line-height:1.25; }
.psone-v200-search main .wp-block-post-title a { color:#172132; text-decoration:none; }
.psone-v200-search main .wp-block-post-title a:hover { color:#7e6032; }
.psone-v200-search main .wp-block-post-excerpt { color:#566172; line-height:1.65; }
.psone-404-panel-v200 { width:min(calc(100% - 48px),960px); margin:0 auto clamp(60px,8vw,100px); padding:clamp(30px,5vw,54px); border:1px solid rgba(23,33,50,.12); border-radius:24px; background:radial-gradient(circle at 100% 0%,rgba(183,147,85,.18),transparent 34%),#f7f3eb; box-shadow:0 20px 55px rgba(23,33,50,.08); }
.psone-404-panel-v200 h2 { margin:8px 0 12px; color:#172132; font-size:clamp(1.8rem,3vw,2.8rem); }
.psone-404-links-v200 { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.psone-404-links-v200 a { display:inline-flex; min-height:46px; align-items:center; padding:11px 18px; border:1px solid #172132; border-radius:999px; color:#172132; font-weight:700; text-decoration:none; }
.psone-404-links-v200 a:first-child { background:#172132; color:#fff; }

@media(max-width:900px){
  .psone-topic-links-v200,.psone-v200-search main .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:600px){
  .psone-top-trust-bar > .wp-block-group{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;}
  .psone-top-trust-bar p{min-width:0;padding-right:0!important;white-space:normal!important;overflow-wrap:anywhere;}
  .psone-hero-v4 .psone-hero-copy-v4{box-sizing:border-box;width:min(calc(100% - 32px),560px)!important;margin-inline:auto;padding-inline:0!important;}
  .psone-hero-v4 h1{font-size:clamp(2.2rem,11vw,2.85rem)!important;line-height:1.02;}
  body.psone-service-layout-v193 .wp-block-post-content>.psone-hero h1,
  body.psone-product-inner-v191 .wp-block-post-content>.psone-hero h1,
  .psone-topic-hero-v200 h1{font-size:clamp(2rem,9vw,2.5rem)!important;line-height:1.08;}
  .wp-block-buttons,.wp-block-button,.wp-block-button__link{max-width:100%;}
  .psone-breadcrumbs-v200{width:calc(100% - 32px);margin-top:14px;font-size:.72rem;}
  .psone-topic-hero-v200{padding-block:44px;}
  .psone-topic-hero-v200 h1{font-size:clamp(2.05rem,10vw,2.8rem);}
  .psone-topic-section-v200{padding-block:46px;}
  .psone-topic-links-v200,.psone-v200-search main .wp-block-post-template{grid-template-columns:1fr;}
  .psone-topic-links-v200 a{min-height:0;}
  .psone-v200-search main,.psone-v200-404 main{width:calc(100% - 32px);margin-block:40px;}
  .psone-v200-search main .wp-block-post-template > li{padding:20px;}
  .psone-404-panel-v200{width:calc(100% - 32px);padding:26px 20px;border-radius:18px;}
  .psone-404-links-v200,.psone-404-links-v200 a{width:100%;}
  .psone-404-links-v200 a{justify-content:center;}
}
