/* Client supplied company profile, additional services and imagery. */
.topbar__whatsapp{margin-left:auto;color:#d6d9dc}
.topbar__whatsapp::before{display:none!important}
.footer address{font:400 .76rem/1.6 var(--body);color:#e1edf4;margin:2px 0 0}
.expanded-home{padding:82px 0 96px;background:#f6f8f8}
.expanded-home__head{text-align:center;max-width:720px;margin:0 auto 41px}
.expanded-home__head .eyebrow i{display:none}
.expanded-home__head h2{color:var(--navy);font-size:clamp(2rem,3vw,2.8rem);font-weight:400;margin:12px 0 15px}
.expanded-home__head p{font-size:1rem;line-height:1.7;color:var(--muted);margin-inline:auto}
.expanded-home__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.expanded-home__card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e4e8e9;box-shadow:0 10px 24px rgba(9,59,84,.045);transition:transform .3s,box-shadow .3s}
.expanded-home__card:hover{transform:translateY(-5px);box-shadow:0 18px 34px rgba(9,59,84,.12)}
.expanded-home__card>img{width:100%;height:188px;object-fit:cover;background:#e7ebea}
.expanded-home__body{display:flex;flex-direction:column;flex:1;padding:23px 22px 22px}
.expanded-home__body strong{font:500 1.08rem/1.3 var(--head);color:var(--deep);min-height:2.6em}
.expanded-home__body small{display:block;font:400 .8rem/1.55 var(--body);color:#5b6770;margin:9px 0 20px}
.expanded-home__body>span{display:flex;align-items:center;gap:8px;margin-top:auto;font:600 .7rem var(--head);color:var(--teal);letter-spacing:.015em}
.expanded-home__body svg{width:16px;height:16px}
.page-services .service-jump .container{grid-template-columns:repeat(4,minmax(0,1fr))}
.page-services .service-jump a{font-size:.76rem;min-height:53px}
.page-services .service-detail{scroll-margin-top:235px}
.page-services .service-detail__media{overflow:visible;isolation:isolate;margin:0 31px 30px 0}
.page-services .service-detail__main{width:100%;height:100%;display:block;object-fit:cover}
.page-services .service-detail__secondary{position:absolute;z-index:2;right:-31px;bottom:-29px;width:39%;height:36%;object-fit:cover;border:7px solid #fff;background:#fff;box-shadow:0 15px 35px rgba(8,37,54,.16)}
.page-services .service-detail__image-note{position:absolute;z-index:3;top:13px;right:13px;background:rgba(9,32,46,.76);padding:7px 10px;color:#fff;font:500 .62rem var(--head);letter-spacing:.02em}
.page-services .service-detail:nth-of-type(odd) .service-detail__media{margin-right:0;margin-left:31px}
.page-services .service-detail:nth-of-type(odd) .service-detail__secondary{right:auto;left:-31px}
.page-services .service-detail__copy p{font-size:1rem}
.page-services .service-detail__copy li{font-size:.92rem}
.page-projects .gallery-card img[src*="plano-"]{object-fit:cover;object-position:center;background:#f4f6f5}
.history{background:#fff}
.history__grid{display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:clamp(55px,7vw,115px);align-items:center}
.history__visual{position:relative;height:540px}
.history__visual img:first-child{width:83%;height:65%;object-fit:cover;object-position:center;background:#f4f5f4}
.history__visual img:last-child{position:absolute;right:0;bottom:0;width:72%;height:58%;object-fit:cover;border:9px solid #fff;box-shadow:0 22px 45px rgba(11,46,65,.13)}
.history__copy h2{font-size:clamp(2.2rem,3.1vw,3.2rem);font-weight:400;color:var(--deep);line-height:1.15;margin:17px 0 28px}
.history__copy p{font-size:1rem;line-height:1.75;color:#52616b;margin:0 0 18px}
.history__copy p:last-child{font-weight:600;color:var(--teal);font-size:.9rem}
.purpose{background:#f1f4f4}
.purpose__head{text-align:center;margin-bottom:40px}
.purpose__head .eyebrow i{display:none}
.purpose__head h2{font-size:clamp(2.1rem,3vw,3rem);color:var(--deep);font-weight:400;margin:13px 0 0}
.purpose__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.purpose__grid article{background:#fff;border-top:3px solid var(--gold);padding:clamp(34px,4vw,58px);min-height:365px}
.purpose__grid article>span{font:600 .7rem var(--head);letter-spacing:.1em;color:var(--teal)}
.purpose__grid h3{font-size:clamp(1.75rem,2.2vw,2.3rem);font-weight:400;color:var(--navy);margin:25px 0 22px}
.purpose__grid p{font-size:1rem;line-height:1.78;color:#4e5e67;margin:0}
.directory{background:#fff}
.directory__head{text-align:center;max-width:720px;margin:0 auto 45px}
.directory__head .eyebrow i{display:none}
.directory__head h2{font-size:clamp(2.2rem,3.1vw,3.2rem);font-weight:400;color:var(--deep);margin:15px 0}
.directory__head p{font-size:1rem;line-height:1.7;color:var(--muted);margin-inline:auto}
.directory__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.directory__grid article{background:#f5f7f7;border-bottom:3px solid var(--teal);padding:clamp(29px,3.2vw,45px);min-height:300px;display:flex;flex-direction:column}
.directory__number{font:300 2.1rem var(--head);color:#89a9b6;line-height:1}
.directory__grid h3{font-size:clamp(1.3rem,1.9vw,1.85rem);font-weight:500;color:var(--deep);line-height:1.25;margin:36px 0 16px}
.directory__grid p{font-size:.96rem;font-weight:600;line-height:1.45;color:var(--teal);margin:0 0 8px}
.directory__grid small{font-size:.79rem;line-height:1.55;color:#667780;margin-top:auto}
.page-contact .contact__info{gap:27px}
.page-contact .contact__info>div{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.page-contact .contact__info address{font:500 clamp(1.08rem,1.6vw,1.4rem)/1.4 var(--head);font-style:normal;color:var(--deep)}
.page-contact .contact__info a{font-size:clamp(1.02rem,1.4vw,1.27rem)}
.has-motion .expanded-home__card,.has-motion .history__visual,.has-motion .history__copy,.has-motion .purpose__grid article,.has-motion .directory__grid article{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
.has-motion .expanded-home__card.is-visible,.has-motion .history__visual.is-visible,.has-motion .history__copy.is-visible,.has-motion .purpose__grid article.is-visible,.has-motion .directory__grid article.is-visible{opacity:1;transform:none}
@media(max-width:1100px){
  .expanded-home__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .expanded-home__card>img{height:215px}
  .page-services .service-jump{position:relative;top:auto}
  .page-services .service-detail{scroll-margin-top:95px}
}
@media(max-width:760px){
  .expanded-home{padding:68px 0 76px}
  .history__grid{grid-template-columns:1fr;gap:45px}
  .history__visual{height:430px;max-width:650px;width:100%;margin-inline:auto}
  .purpose__grid{grid-template-columns:1fr}
  .purpose__grid article{min-height:0}
  .directory__grid{grid-template-columns:1fr}
  .directory__grid article{min-height:0}
  .directory__grid h3{margin-top:25px}
  .page-services .service-jump .container{display:flex;grid-template-columns:none}
  .page-services .service-detail:nth-of-type(odd) .service-detail__media,.page-services .service-detail__media{margin:0 0 30px}
  .page-services .service-detail__secondary,.page-services .service-detail:nth-of-type(odd) .service-detail__secondary{right:5px;left:auto;bottom:-22px;width:40%;height:34%;border-width:5px}
}
@media(max-width:520px){
  .topbar__inner{justify-content:center}
  .topbar__mail{display:none!important}
  .topbar__whatsapp{margin:0;font-size:.64rem}
  .expanded-home__grid{grid-template-columns:1fr}
  .expanded-home__card>img{height:210px}
  .expanded-home__body strong{min-height:0}
  .history__visual{height:330px}
  .history__visual img:first-child{width:88%;height:66%}
  .history__visual img:last-child{width:75%;height:55%;border-width:6px}
  .history__copy h2{font-size:2.15rem}
  .purpose__grid article{padding:32px 27px}
  .purpose__grid p{font-size:.94rem}
  .directory__grid article{padding:29px 25px}
  .page-services .service-detail__secondary,.page-services .service-detail:nth-of-type(odd) .service-detail__secondary{width:42%;height:32%;right:4px}
}
@media(prefers-reduced-motion:reduce){
  .expanded-home__card{transition:none}
  .has-motion .expanded-home__card,.has-motion .history__visual,.has-motion .history__copy,.has-motion .purpose__grid article,.has-motion .directory__grid article{opacity:1;transform:none}
}
