/* Corrections explicitly requested in the September 24 PDF review. */

/* Shared navigation: stable text underlines without changing link geometry. */
.site-header nav > a,
.subpage-breadcrumb a,
.consulting-breadcrumb a,
.footer-legal a > span{
  text-decoration-line:none;
  text-decoration-thickness:1px;
  text-underline-offset:5px;
}
.site-header nav > a.is-current,
.site-header nav > a:focus-visible,
.subpage-breadcrumb a:focus-visible,
.consulting-breadcrumb a:focus-visible,
.footer-legal a:focus-visible > span{text-decoration-line:underline}
.footer-legal a::after{content:none}

@media(hover:hover) and (pointer:fine){
  .site-header nav > a:hover,
  .subpage-breadcrumb a:hover,
  .consulting-breadcrumb a:hover,
  .footer-legal a:hover > span{text-decoration-line:underline}
}

/* Only the buttons and cards marked in the supplied PDFs receive motion. */
.site-header .header-contact,
.site-header .mobile-menu-contact > .outline-button,
.consulting-cta > a,
body:is(.page-profile,.page-reviews,.page-service,.page-theory,.page-site-policy,.page-privacy-policy,.page-recruit,.page-information-security-policy) .subpage-cta > a,
.page-theory .theory-link,
.page-reviews :is(.featured-card,.review-card){
  transition:translate .35s cubic-bezier(.22,1,.36,1),scale .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease;
}
.page-reviews :is(.featured-card,.review-card) img{transition:filter .35s ease}
.page-service .filter-pills button,
.page-reviews .filter-pills button{cursor:pointer}

@media(hover:hover) and (pointer:fine){
  .site-header .header-contact:is(:hover,:focus-visible),
  .site-header .mobile-menu-contact > .outline-button:is(:hover,:focus-visible),
  .consulting-cta > a:is(:hover,:focus-visible),
  body:is(.page-profile,.page-reviews,.page-service,.page-theory,.page-site-policy,.page-privacy-policy,.page-recruit,.page-information-security-policy) .subpage-cta > a:is(:hover,:focus-visible){
    translate:0 -4px;
    scale:1.025;
    box-shadow:0 10px 24px rgba(0,0,0,.3);
  }
  .page-theory .theory-link:is(:hover,:focus-visible),
  .page-reviews :is(.featured-card,.review-card):hover{
    translate:0 -5px;
    scale:1.01;
    box-shadow:0 12px 28px rgba(0,0,0,.35);
  }
  .page-reviews :is(.featured-card,.review-card):hover img{filter:brightness(1)}
}
@media(hover:none){
  .site-header .mobile-menu-contact > .outline-button:active,
  .consulting-cta > a:active,
  body:is(.page-profile,.page-reviews,.page-service,.page-theory,.page-site-policy,.page-privacy-policy,.page-recruit,.page-information-security-policy) .subpage-cta > a:active,
  .page-theory .theory-link:active,
  .page-reviews :is(.featured-card,.review-card):active{translate:0 -3px;scale:1.01}
  .page-reviews :is(.featured-card,.review-card):active img{filter:brightness(1)}
}

/* Contact: align numbers with the heading line, not its supporting description. */
.page-contact .form-step-title{--step-heading-height:33px}
.page-contact .form-step-title > b,
.page-contact .form-step-title h3{line-height:var(--step-heading-height)}
.page-contact .form-step-title h3{display:flex;align-items:center;gap:12px}
.page-contact .form-step-title h3 > .required{margin-left:0;line-height:1.8;flex-shrink:0}
@media(min-width:901px){
  .page-contact .form-step-title{--step-heading-height:39px}
}
@media(max-width:560px){
  .page-contact .form-step-title{--step-heading-height:23px}
}

/* Consulting: equal breathing room on either side of each divider. */
.page-consulting .consulting-phase .consulting-phase-content > .consulting-point{
  min-height:0;
  padding-top:56px;
  padding-bottom:56px;
}
.page-consulting .consulting-phase .consulting-phase-content > .consulting-point:first-child{padding-top:0}
.page-consulting .consulting-phase .consulting-statement{margin-top:0}

/* Profile: retain the native aspect ratio of the two marked book covers. */
.page-profile .publication:nth-child(2) img,
.page-profile .publication:nth-child(3) img{
  align-self:start;
  width:auto;
  max-width:100%;
  height:300px;
  object-fit:contain;
  object-position:left top;
  background:transparent;
}

@media(min-width:901px){
  /* Publications: match the neighboring cover widths and balance the guide's spacing. */
  .page-profile .publication:nth-child(2) img,
  .page-profile .publication:nth-child(3) img{
    width:210px;
    height:auto;
  }
  .page-profile .publication:nth-child(3){
    padding-top:27px;
    padding-bottom:27px;
  }
  /* Service: remove the excessive gap below the first process image. */
  .page-service .process-row:first-child{padding-bottom:50px;margin-bottom:0}
  /* Security: align the last text baselines, including two-line headings. */
  .page-information-security-policy .policy-group-heading{align-items:last baseline}
  .page-information-security-policy .policy-group-heading h2{margin-bottom:0}
  .page-information-security-policy .policy-content{padding-top:24px}
}
@media(max-width:900px){
  .page-consulting .consulting-phase .consulting-phase-content > .consulting-point{
    padding-top:24px;
    padding-bottom:24px;
  }
  .page-consulting .consulting-phase .consulting-phase-content > .consulting-point:first-child{padding-top:0}
  .page-profile .publication:nth-child(2) img,
  .page-profile .publication:nth-child(3) img{width:100%;height:145px}
}
@media(prefers-reduced-motion:reduce){
  .site-header .header-contact,
  .site-header .mobile-menu-contact > .outline-button,
  .consulting-cta > a,
  body:is(.page-profile,.page-reviews,.page-service,.page-theory,.page-site-policy,.page-privacy-policy,.page-recruit,.page-information-security-policy) .subpage-cta > a,
  .page-theory .theory-link,
  .page-reviews :is(.featured-card,.review-card),
  .page-reviews :is(.featured-card,.review-card) img{transition:none;translate:none;scale:none}
}
