/* Use the supplied logo consistently; preserve the source image and its ratio. */
.brand .will-brand-logo{width:166px;height:auto;max-width:none;flex-shrink:0;object-fit:contain}.brand-logo-link{display:inline-block;line-height:0}.brand-logo-link .will-brand-logo,.footer-brand .will-brand-logo{width:200px;height:auto}.brand{gap:14px}.contact-watermark{width:500px;line-height:0;opacity:.045;bottom:35px;right:30px;letter-spacing:0}.contact-watermark img{width:100%;height:auto}
@media(max-width:680px){.brand .will-brand-logo{width:128px}.brand{gap:8px}.brand-caption{padding-left:9px}.footer-brand .will-brand-logo,.brand-logo-link .will-brand-logo{width:170px}.contact-watermark{width:300px;right:-10px;bottom:20px}}
/* Tablet copy needs a usable reading measure, rather than narrow desktop columns. */
@media(min-width:681px) and (max-width:1180px){
  .section-shell{width:calc(100% - 64px)}
  main :is(h1,h2,h3),dialog :is(h2,h3){letter-spacing:.025em;text-wrap:balance}
  main :is(p,li,td,th,summary){letter-spacing:.015em}
  main p:not(.eyebrow):not(.signature):not(.region-catch) br{display:none}
  main p:not(.eyebrow):not(.signature):not(.region-catch){line-height:2!important;text-wrap:pretty}
  .service-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .service-card{display:grid;grid-template-columns:180px minmax(0,1fr)}
  .service-art{height:100%;min-height:240px;overflow:hidden}
  .service-body{padding:28px 30px}.service-body h3{font-size:26px}.service-body>p{font-size:14px!important;max-width:42em}
  .approach{grid-template-columns:minmax(0,1fr);gap:36px}.approach-photo{height:400px}.approach-copy{max-width:760px}.approach-copy h2{font-size:30px}.approach-row h3{font-size:17px}.approach-row p{font-size:14px!important}
  .flow-list,.region-flow-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.flow-list h3,.region-flow-list h3{font-size:17px}.flow-list p,.region-flow-list p{font-size:14px!important}.flow-list li:after{display:none}
  .faq-layout,.region-faq-layout,.region-guide-grid{grid-template-columns:minmax(0,1fr);gap:30px}.faq h2 br,.region-faq-layout h2 br{display:none}.faq details>p,.region-faqs details>p{font-size:14px!important}.faq summary,.region-faqs summary{font-size:14px!important}
  .area-layout{grid-template-columns:minmax(0,1fr)!important;gap:30px!important}.area-layout .area-local-copy{grid-column:1;grid-row:1}.area-layout .area-selector{grid-column:1;grid-row:2}.area-layout .area-portrait{display:none}.area-layout>.area-local-copy>p:not(.eyebrow){font-size:14px!important}.area-local-copy h2{font-size:32px}
  .will-example-grid{grid-template-columns:minmax(0,1fr);gap:20px}.will-example-grid article{padding:30px}.will-example-grid p{font-size:14px!important;max-width:48em}
  .evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.evidence-grid>article:last-child{grid-column:1/-1}.evidence-grid h3{font-size:23px}.evidence-grid p{font-size:14px!important}
  .will-contact-layout{grid-template-columns:minmax(0,1fr)!important;gap:32px}.will-contact-line-mobile{display:block}.will-contact-card{display:none}.will-contact-layout>section{width:100%;max-width:760px;margin:auto}.will-contact-intro>p{max-width:55em}.will-contact-intro h1{font-size:36px}.will-contact-intro p:not(.eyebrow){font-size:14px!important}
  .will-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.will-form-grid .will-field-wide{grid-column:1/-1}.will-real-form label{font-size:14px}.will-privacy p{font-size:12px!important;line-height:2!important}.will-line-choice h3{font-size:23px}.will-line-choice p:not(.eyebrow){font-size:14px}.will-line-entry{font-size:14px}.will-line-entry span{white-space:nowrap}.will-contact-actions{flex-wrap:wrap}
  .will-gallery-heading{gap:24px}.will-gallery-heading h3{font-size:27px}.will-gallery-heading>p{max-width:28em}
  .region-service-grid p:not(.eyebrow),.region-service-grid li,.region-guide-title>p:not(.eyebrow):not(.region-small),.region-guide-steps p,.region-lead{font-size:14px!important}
  .region-guide-title{max-width:760px}.region-guide-title h2{font-size:31px}.region-guide-steps h3{font-size:19px}.region-checklist{grid-template-columns:1fr;gap:22px}.region-checklist ul{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:681px) and (max-width:960px){.region-hero{grid-template-columns:minmax(0,1fr);gap:30px}.region-hero-image{min-height:400px}.region-lead{max-width:52em}.hero-copy{padding-left:32px;padding-right:32px}.hero h1{font-size:40px}.pr-layout{grid-template-columns:minmax(0,1fr)}.pr-heading{display:block}.pr-heading>p{max-width:50em;margin-top:20px;font-size:14px!important}.pr-caption p:not(.eyebrow){font-size:14px!important}}

@media(min-width:681px) and (max-width:1180px){main .will-contact-intro .will-response br,main .region-editorial p br{display:initial!important}}

@media(max-width:360px){.site-header .brand-caption{display:none}}

/* Keep the existing vector illustrations inside their narrow artwork panels. */
@media(max-width:1180px){
 .service-grid .service-art{min-width:0;position:relative}
 .service-grid .service-art svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:calc(100% - 24px);max-width:156px;height:auto;aspect-ratio:240/150;margin:0;display:block}
 .service-grid .service-art .art-circle{width:min(132px,calc(100% - 20px));height:auto;aspect-ratio:1;left:50%;top:50%;transform:translate(-50%,-50%)}
 .service-grid .service-art .art-note{left:8px;right:8px;bottom:14px;width:auto;transform:none;writing-mode:horizontal-tb;text-align:center;font-size:clamp(8px,1vw,10px);line-height:1.6;white-space:normal}
}

/* Transparent wordmark has less internal padding than the supplied JPEG. */
.brand .will-brand-logo{width:142px}.brand-logo-link .will-brand-logo,.footer-brand .will-brand-logo{width:170px}
@media(max-width:680px){.brand .will-brand-logo{width:110px}.brand-logo-link .will-brand-logo,.footer-brand .will-brand-logo{width:150px}}

.signature .signature-logo{display:inline-block;width:104px;height:auto;max-width:100%;vertical-align:middle;margin-left:0}

/* Keep footer navigation together instead of spreading it across the row. */
.footer-links{grid-template-columns:max-content max-content;column-gap:28px;row-gap:10px;width:max-content;max-width:100%;justify-content:start;font-size:12px}
.footer-links a{display:block;padding:4px 0;line-height:1.8}
@media(max-width:680px){.footer-links{column-gap:26px;row-gap:8px;padding-top:0;font-size:12px}}
