[data-view="inicio"] { background: #fff; }

.ip-home-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(64px,8vw,112px) 0 clamp(74px,9vw,126px);
  background: radial-gradient(circle at 12% 10%,rgba(152,200,40,.16),transparent 27rem),radial-gradient(circle at 91% 18%,rgba(48,192,200,.2),transparent 31rem),linear-gradient(135deg,#fbfdf8 0%,#f0faf8 58%,#e7f8f8 100%);
}
.ip-home-hero::after { position:absolute; top:-180px; right:-110px; width:520px; height:520px; border:1px solid rgba(48,192,200,.16); border-radius:50%; box-shadow:0 0 0 65px rgba(48,192,200,.045),0 0 0 130px rgba(152,200,40,.035); content:""; }
.ip-home-hero__grid { position:relative; z-index:2; display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:clamp(44px,7vw,96px); }
.ip-home-hero__copy h1 { max-width:730px; margin:16px 0 23px; color:#303030; font:800 clamp(48px,6vw,78px)/.98 Manrope,Arial,sans-serif; letter-spacing:-.055em; }
.ip-home-hero__copy h1 span { color:#087a80; }
.ip-home-hero__copy>p:not(.ip-eyebrow) { max-width:630px; color:#596565; font-size:clamp(17px,1.7vw,21px); line-height:1.7; }
.ip-home-hero__actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; margin-top:34px; }
.ip-home-hero__actions .ip-button,.ip-home-cta .ip-button { display:inline-flex; align-items:center; gap:10px; }
.ip-home-hero__actions .ip-icon,.ip-home-cta .ip-icon { width:18px; height:18px; }
.ip-home-hero__link { color:#087a80; font-weight:780; text-decoration:underline; text-decoration-color:rgba(48,192,200,.35); text-underline-offset:7px; }
.ip-home-hero__trust { display:flex; flex-wrap:wrap; gap:21px; margin-top:37px; color:#3e5050; }
.ip-home-hero__trust span { display:inline-flex; align-items:center; gap:9px; font-size:12px; }
.ip-home-hero__trust .ip-icon { width:20px; height:20px; color:#30c0c8; }
.ip-home-hero__visual { position:relative; min-width:0; }
.ip-home-hero__image { position:relative; height:clamp(420px,47vw,610px); overflow:hidden; border-radius:46% 46% 28px 28px; box-shadow:0 34px 75px rgba(7,87,91,.22); }
.ip-home-hero__image::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(8,72,74,.26)); content:""; }
.ip-home-hero__image img { width:100%; height:100%; object-fit:cover; transition:transform 4s cubic-bezier(.16,1,.3,1); }
.ip-home-hero__visual:hover img { transform:scale(1.055); }
.ip-home-hero__seal { position:absolute; left:-45px; bottom:33px; display:flex; align-items:center; gap:13px; padding:17px 22px 17px 15px; border:1px solid rgba(255,255,255,.6); border-radius:17px; background:rgba(255,255,255,.94); color:inherit; text-decoration:none; box-shadow:0 16px 38px rgba(12,45,39,.18); backdrop-filter:blur(10px); cursor:pointer; transition:border-color 180ms ease,box-shadow 180ms ease; animation:ipHomeFloatingCard 5s ease-in-out infinite; }
.ip-home-hero__seal:hover { border-color:rgba(152,200,40,.55); box-shadow:0 18px 42px rgba(12,45,39,.24); }
.ip-home-hero__seal>i { width:43px; height:43px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:#f1f8e3; color:#30c0c8; font-style:normal; }
.ip-home-hero__seal .ip-icon { width:28px; height:28px; }
.ip-home-hero__seal span { display:grid; }
.ip-home-hero__seal strong { color:#303030; font-size:15px; }
.ip-home-hero__seal small { color:#687272; font-size:11px; }
@keyframes ipHomeFloatingCard { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-8px); } }

.ip-home-impact { position:relative; z-index:4; margin-top:-35px; }
.ip-home-impact__grid { display:grid; grid-template-columns:repeat(4,1fr); overflow:hidden; border:1px solid rgba(48,192,200,.2); border-radius:24px; background:rgba(255,255,255,.94); box-shadow:0 22px 55px rgba(7,87,91,.1); backdrop-filter:blur(14px); }
.ip-home-impact article { min-height:132px; display:grid; align-content:center; gap:5px; padding:24px 30px; border-right:1px solid rgba(48,192,200,.16); }
.ip-home-impact article:last-child { border:0; }
.ip-home-impact strong { color:#087a80; font:800 32px/1 Manrope,Arial,sans-serif; }
.ip-home-impact span { color:#4d5959; font-size:12px; font-weight:700; line-height:1.45; }

.ip-home-mission__grid { display:grid; grid-template-columns:.92fr 1.08fr; align-items:center; gap:clamp(50px,8vw,110px); }
.ip-home-mission__media { position:relative; min-height:540px; }
.ip-home-mission__media img { width:100%; height:540px; object-fit:cover; border-radius:28px 130px 28px 28px; box-shadow:0 26px 65px rgba(7,87,91,.14); }
.ip-home-mission__media span { position:absolute; left:25px; bottom:25px; padding:18px 22px; border-radius:15px; background:#303030; color:#fff; font-weight:760; line-height:1.4; }
.ip-home-mission__copy>p:not(.ip-eyebrow) { color:#5e6868; font-size:16px; line-height:1.8; }
.ip-home-mission__services { display:grid; grid-template-columns:repeat(3,1fr); gap:11px; margin:28px 0 32px; }
.ip-home-mission__services span { min-height:105px; display:grid; align-content:center; gap:10px; padding:17px; border:1px solid rgba(48,192,200,.17); border-radius:15px; background:#f7fbfa; color:#303030; font-size:11px; }
.ip-home-mission__services .ip-icon { width:22px; height:22px; color:#30c0c8; }

.ip-home-paths { background:linear-gradient(180deg,#f6fbfa,#fff); }
.ip-home-paths__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:38px; }
.ip-home-paths__grid a { min-height:225px; display:grid; align-content:end; gap:9px; padding:30px; border:1px solid rgba(48,192,200,.18); border-radius:24px; background:#fff; box-shadow:0 14px 40px rgba(7,87,91,.07); color:#303030; transition:transform 800ms cubic-bezier(.16,1,.3,1),box-shadow 800ms ease,border-color 600ms ease; }
.ip-home-paths__grid a:hover { transform:translateY(-6px) scale(1.012); border-color:rgba(48,192,200,.46); box-shadow:0 26px 55px rgba(7,87,91,.13); }
.ip-home-paths__grid a>span:first-child { width:52px; height:52px; display:grid; place-items:center; margin-bottom:auto; border-radius:15px; background:#e9f9fa; color:#087a80; }
.ip-home-paths__grid a:nth-child(2)>span:first-child { background:#f2f8e5; color:#648500; }
.ip-home-paths__grid .ip-icon { width:25px; height:25px; }
.ip-home-paths__grid strong { font:770 22px/1.2 Manrope,Arial,sans-serif; }
.ip-home-paths__grid small { color:#687272; font-size:12px; }

.ip-home-news__head { display:flex; justify-content:space-between; align-items:end; gap:25px; margin-bottom:35px; }
.ip-home-news__head>a { display:inline-flex; align-items:center; gap:7px; color:#087a80; font-weight:760; }
.ip-home-news__head .ip-icon,.ip-home-news__content .ip-icon { width:16px; height:16px; }
.ip-home-news__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.ip-home-news__card { overflow:hidden; border:1px solid rgba(48,192,200,.18); border-radius:22px; background:#fff; color:#303030; box-shadow:0 14px 36px rgba(7,87,91,.075); }
.ip-home-news__image { display:block; height:220px; overflow:hidden; background:#eaf8f7; }
.ip-home-news__image img { width:100%; height:100%; object-fit:cover; transition:transform 1800ms cubic-bezier(.16,1,.3,1); }
.ip-home-news__card:hover img { transform:scale(1.055); }
.ip-home-news__content { min-height:210px; display:flex; flex-direction:column; gap:12px; padding:25px; }
.ip-home-news__content small { color:#648500; font-size:10px; font-weight:820; letter-spacing:.08em; text-transform:uppercase; }
.ip-home-news__content strong { font:760 20px/1.35 Manrope,Arial,sans-serif; }
.ip-home-news__content>span { display:inline-flex; align-items:center; gap:7px; margin-top:auto; color:#087a80; font-size:11px; font-weight:760; }

.ip-home-cta { padding:clamp(64px,8vw,100px) 0; background:radial-gradient(circle at 85% 0,rgba(48,192,200,.24),transparent 25rem),linear-gradient(135deg,#303030,#174f52); color:#fff; }
.ip-home-cta .ip-container { display:flex; align-items:center; justify-content:space-between; gap:50px; }
.ip-home-cta h2 { max-width:700px; margin:9px 0 12px; color:#fff; font:800 clamp(35px,4vw,55px)/1.05 Manrope,Arial,sans-serif; letter-spacing:-.04em; }
.ip-home-cta p:not(.ip-eyebrow) { max-width:720px; color:rgba(255,255,255,.72); line-height:1.7; }
.ip-home-cta .ip-eyebrow { color:#b5de4a; }
.ip-home-cta .ip-button { flex:0 0 auto; }

@media (max-width:960px) {
  .ip-home-hero__grid,.ip-home-mission__grid { grid-template-columns:1fr; }
  .ip-home-hero__visual { max-width:680px; }
  .ip-home-impact__grid { grid-template-columns:repeat(2,1fr); }
  .ip-home-impact article:nth-child(2) { border-right:0; }
  .ip-home-impact article:nth-child(-n+2) { border-bottom:1px solid rgba(48,192,200,.16); }
  .ip-home-news__grid { grid-template-columns:repeat(2,1fr); }
  .ip-home-paths__grid { grid-template-columns:1fr; }
}
@media (max-width:640px) {
  .ip-home-hero { padding-top:48px; }
  .ip-home-hero__copy h1 { font-size:clamp(42px,13vw,58px); }
  .ip-home-hero__image { height:430px; border-radius:110px 110px 24px 24px; }
  .ip-home-hero__seal { left:12px; bottom:18px; }
  .ip-home-impact__grid,.ip-home-news__grid,.ip-home-mission__services { grid-template-columns:1fr; }
  .ip-home-impact article { min-height:105px; border-right:0; border-bottom:1px solid rgba(48,192,200,.16); }
  .ip-home-impact article:last-child { border-bottom:0; }
  .ip-home-mission__media,.ip-home-mission__media img { min-height:0; height:430px; }
  .ip-home-news__head,.ip-home-cta .ip-container { align-items:flex-start; flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) { .ip-home-hero__image img,.ip-home-paths__grid a,.ip-home-news__image img { transition:none; } }

/* Home completa, alinhada à estrutura editorial do site oficial. */
.ip-home-hero__copy h1 em { display:block; color:#087a80; font-family:Georgia,"Times New Roman",serif; font-weight:500; letter-spacing:-.045em; }
.ip-home-hero__trust { align-items:center; }
.ip-home-hero__trust>span:last-child { display:grid; gap:1px; }
.ip-home-hero__trust small { color:#6b7474; font-size:10px; }
.ip-home-hero__avatars { display:flex !important; gap:0 !important; }
.ip-home-hero__avatars i { width:30px; height:30px; display:grid; place-items:center; margin-left:-5px; border:3px solid #eef9f6; border-radius:50%; background:#087a80; color:#fff; font:800 9px/1 Manrope,Arial,sans-serif; }
.ip-home-hero__avatars i:nth-child(2) { background:#30c0c8; }
.ip-home-hero__avatars i:nth-child(3) { background:#e5f1c8; color:#587900; }

.ip-home-quick { position:relative; z-index:5; margin-top:-34px; }
.ip-home-quick__grid { display:grid; grid-template-columns:repeat(3,1fr); overflow:hidden; border:1px solid rgba(48,192,200,.19); border-radius:24px; background:rgba(255,255,255,.95); box-shadow:0 22px 58px rgba(7,87,91,.11); backdrop-filter:blur(16px); }
.ip-home-quick__grid a { position:relative; min-height:124px; display:grid; grid-template-columns:auto 1fr auto; grid-template-rows:auto auto; align-content:center; column-gap:15px; padding:25px 28px; border-right:1px solid rgba(48,192,200,.15); color:#303030; transition:background 450ms ease,transform 700ms cubic-bezier(.16,1,.3,1); }
.ip-home-quick__grid a:last-child { border:0; }
.ip-home-quick__grid a:hover { background:#f0faf8; }
.ip-home-quick__grid a>span { grid-row:1/3; width:46px; height:46px; display:grid; place-items:center; border-radius:14px; background:#e9f9fa; color:#087a80; }
.ip-home-quick__grid a:nth-child(2)>span { background:#f1f8e3; color:#648500; }
.ip-home-quick__grid .ip-icon { width:19px; height:19px; }
.ip-home-quick__grid a>.ip-icon { grid-column:3; grid-row:1/3; align-self:center; color:#30c0c8; }
.ip-home-quick__grid strong { align-self:end; font-size:14px; }
.ip-home-quick__grid small { color:#697272; font-size:10px; }

.ip-home-about__grid { display:grid; grid-template-columns:.92fr 1.08fr; align-items:center; gap:clamp(54px,8vw,112px); }
.ip-home-about__media { position:relative; min-height:570px; }
.ip-home-about__media>img { width:100%; height:570px; object-fit:cover; border-radius:26px 130px 26px 26px; box-shadow:0 28px 66px rgba(7,87,91,.15); }
.ip-home-about__media>span { position:absolute; right:-24px; top:38px; width:112px; height:112px; display:grid; place-content:center; border:8px solid #fff; border-radius:50%; background:#98c828; color:#303030; text-align:center; box-shadow:0 15px 34px rgba(48,48,48,.16); }
.ip-home-about__media>span small { font-size:10px; font-weight:800; text-transform:uppercase; }
.ip-home-about__media>span strong { font:800 29px/1 Manrope,Arial,sans-serif; }
.ip-home-about__media>b { position:absolute; left:-25px; bottom:30px; padding:17px 22px; border-radius:0 15px 15px 0; background:#303030; color:#fff; font-size:12px; letter-spacing:.12em; line-height:1.45; text-transform:uppercase; }
.ip-home-about__copy>p:not(.ip-eyebrow) { color:#5d6767; font-size:16px; line-height:1.8; }
.ip-home-about__copy ul { display:grid; gap:11px; margin:27px 0 31px; padding:0; list-style:none; }
.ip-home-about__copy li { display:flex; align-items:center; gap:11px; color:#3d4a4a; font-size:13px; font-weight:700; }
.ip-home-about__copy li .ip-icon { width:20px; height:20px; padding:4px; border-radius:50%; background:#e9f9fa; color:#087a80; }

.ip-home-services { overflow:hidden; background:radial-gradient(circle at 90% 0,rgba(48,192,200,.1),transparent 28rem),linear-gradient(180deg,#f6fbfa,#fff); }
.ip-home-services__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:38px; }
.ip-home-services__grid>a { position:relative; min-height:390px; display:flex; flex-direction:column; overflow:hidden; padding:31px; border:1px solid rgba(48,192,200,.18); border-radius:25px; background:rgba(255,255,255,.86); color:#303030; box-shadow:0 12px 28px rgba(38,72,67,.06); transition:transform .25s,background .25s,box-shadow .25s,border-color .25s; }
.ip-home-services__grid>a:hover { transform:translateY(-7px); border-color:rgba(48,192,200,.38); background:#fff; box-shadow:0 18px 38px rgba(38,72,67,.11); }
.ip-home-services__grid>a.ip-home-service-card--featured { background:#f7fbe9; }
.ip-home-services__grid>a>small { position:absolute; top:27px; right:29px; color:rgba(48,48,48,.26); font:800 42px/1 Manrope,Arial,sans-serif; }
.ip-home-services__grid>a>span { width:58px; height:58px; display:grid; place-items:center; margin-bottom:55px; border-radius:18px; background:#e9f9fa; color:#087a80; transition:transform .3s ease,background .3s ease,color .3s ease; }
.ip-home-services__grid>a:nth-child(2)>span { background:#f1f8e3; color:#648500; }
.ip-home-services__grid>a:hover>span { transform:translateY(-4px) rotate(4deg); background:#b5de4a; color:#174f52; }
.ip-home-services__grid>a>span .ip-icon { width:27px; height:27px; }
.ip-home-services__grid h3 { margin:0 0 13px; font:780 24px/1.2 Manrope,Arial,sans-serif; letter-spacing:-.025em; }
.ip-home-services__grid p { color:#687272; font-size:13px; line-height:1.7; }
.ip-home-services__grid b { display:inline-flex; align-items:center; gap:7px; margin-top:auto; color:#087a80; font-size:11px; }
.ip-home-services__grid b .ip-icon { width:15px; height:15px; }
.ip-home-motion-ready .ip-home-service-card { opacity:0; transform:translateY(52px) scale(.965); filter:blur(6px); will-change:opacity,transform,filter; }
.ip-home-motion-ready .ip-home-service-card.is-visible { animation:ipHomeRevealEnter .8s cubic-bezier(.2,.75,.25,1) var(--ip-home-reveal-delay,0ms) both; }
@keyframes ipHomeRevealEnter { from { opacity:0; transform:translateY(52px) scale(.965); filter:blur(6px); } to { opacity:1; transform:translateY(0) scale(1); filter:blur(0); } }

.ip-home-residences { background:#fff; }
.ip-home-residences__head { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:33px; }
.ip-home-residences__head>div { max-width:800px; }
.ip-home-residences__head .ip-button { flex:0 0 auto; display:inline-flex; align-items:center; gap:8px; }
.ip-home-residences__head .ip-icon { width:17px; height:17px; }
.ip-home-map { height:540px; overflow:hidden; border:1px solid rgba(48,192,200,.2); border-radius:26px; background:#eaf8f7; box-shadow:0 22px 55px rgba(7,87,91,.1); }
.ip-home-map .residence-marker-wrap { width:44px; height:52px; display:grid; place-items:start center; margin:0; padding:0; border:0; background:transparent; cursor:pointer; }
.ip-home-map .residence-marker { position:relative; width:42px; height:42px; display:grid; place-items:center; border:3px solid #fff; border-radius:50%; background:#087a80; color:#fff; box-shadow:0 8px 20px rgba(7,87,91,.32); transition:transform .55s cubic-bezier(.16,1,.3,1),background .35s ease; }
.ip-home-map .residence-marker::after { position:absolute; bottom:-7px; left:50%; border-width:8px 6px 0; border-style:solid; border-color:#087a80 transparent transparent; content:""; transform:translateX(-50%); }
.ip-home-map .residence-marker svg { width:20px; height:20px; display:block; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.ip-home-map .residence-marker-wrap:hover .residence-marker,.ip-home-map .residence-marker-wrap:focus-visible .residence-marker { background:#98c828; transform:translateY(-4px) scale(1.06); }
.ip-home-map .residence-marker-wrap:hover .residence-marker::after,.ip-home-map .residence-marker-wrap:focus-visible .residence-marker::after { border-top-color:#98c828; }
.ip-home-residences__meta { display:flex; justify-content:space-between; gap:25px; padding:17px 7px 0; color:#667070; font-size:11px; }
.ip-home-residences__meta strong { color:#087a80; }

.ip-section.ip-home-impact { margin:0; padding-block:clamp(70px,8vw,110px); background:linear-gradient(135deg,#303030 0%,#174f52 58%,#087a80 100%); color:#fff; }
.ip-home-impact .ip-section-title { color:#fff; }
.ip-home-impact .ip-section__lead { color:rgba(255,255,255,.7); }
.ip-home-impact .ip-eyebrow { color:#b5de4a; }
.ip-home-impact__grid { margin-top:39px; border-color:rgba(255,255,255,.14); background:rgba(255,255,255,.07); box-shadow:none; backdrop-filter:blur(12px); }
.ip-home-impact__grid article { min-height:190px; place-items:start; align-content:center; border-color:rgba(255,255,255,.12); }
.ip-home-impact__grid article>span { width:42px; height:42px; display:grid; place-items:center; margin-bottom:14px; border-radius:13px; background:rgba(48,192,200,.14); color:#30c0c8; }
.ip-home-impact__grid article>span .ip-icon { width:21px; height:21px; }
.ip-home-impact__grid strong { color:#fff; font-size:42px; }
.ip-home-impact__grid small { color:rgba(255,255,255,.72); font-size:10px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }

.ip-home-career__grid { display:grid; grid-template-columns:.95fr 1.05fr; overflow:hidden; border:1px solid rgba(48,192,200,.18); border-radius:30px; background:#fff; box-shadow:0 24px 65px rgba(7,87,91,.11); }
.ip-home-career__media { min-height:660px; overflow:hidden; }
.ip-home-career__media img { width:100%; height:100%; object-fit:cover; transition:transform 3.5s cubic-bezier(.16,1,.3,1); }
.ip-home-career__grid:hover .ip-home-career__media img { transform:scale(1.04); }
.ip-home-career__copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(38px,6vw,78px); background:radial-gradient(circle at 100% 0,rgba(152,200,40,.11),transparent 18rem),#fff; }
.ip-home-career__copy>p:not(.ip-eyebrow) { color:#606a6a; line-height:1.75; }
.ip-home-career__copy ul { display:grid; gap:13px; margin:28px 0 34px; padding:0; list-style:none; }
.ip-home-career__copy li { display:grid; grid-template-columns:auto 1fr; gap:13px; align-items:center; padding:13px; border:1px solid rgba(48,192,200,.14); border-radius:14px; background:#f8fcfb; }
.ip-home-career__copy li>span { width:40px; height:40px; display:grid; place-items:center; border-radius:12px; background:#e9f9fa; color:#087a80; }
.ip-home-career__copy li .ip-icon { width:19px; height:19px; }
.ip-home-career__copy li div { display:grid; gap:3px; }
.ip-home-career__copy li strong { color:#303030; font-size:12px; }
.ip-home-career__copy li small { color:#707878; font-size:10px; line-height:1.45; }
.ip-home-career__copy .ip-button { align-self:flex-start; display:inline-flex; align-items:center; gap:8px; }
.ip-home-career__copy .ip-button .ip-icon { width:17px; height:17px; }

.ip-home-news__content p { margin:0; color:#6c7575; font-size:11px; line-height:1.6; }

@media (max-width:960px) {
  .ip-home-quick__grid,.ip-home-services__grid { grid-template-columns:1fr; }
  .ip-home-quick__grid a { border-right:0; border-bottom:1px solid rgba(48,192,200,.15); }
  .ip-home-about__grid,.ip-home-career__grid { grid-template-columns:1fr; }
  .ip-home-about__media { max-width:690px; }
  .ip-home-career__media { min-height:520px; }
  .ip-home-residences__head { align-items:flex-start; flex-direction:column; }
  .ip-home-impact__grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:640px) {
  .ip-home-motion-ready .ip-home-service-card { transform:translateY(24px) scale(.985); filter:none; }
  .ip-home-motion-ready .ip-home-service-card.is-visible { animation-name:ipHomeRevealEnterMobile; animation-duration:620ms; }
  @keyframes ipHomeRevealEnterMobile { from { opacity:0; transform:translateY(24px) scale(.985); } to { opacity:1; transform:translateY(0) scale(1); } }
}

/* Movimento mantido nesta experiência por solicitação explícita do projeto. */
@media (prefers-reduced-motion:reduce) {
  .ip-home-hero__seal { animation:ipHomeFloatingCard 5s ease-in-out infinite !important; transition-duration:180ms !important; }
  .ip-home-hero__image img { transition:transform 4s cubic-bezier(.16,1,.3,1) !important; }
  .ip-home-services__grid>a { transition-duration:.25s !important; }
  .ip-home-services__grid>a>span { transition-duration:.3s !important; }
  .ip-home-motion-ready .ip-home-service-card.is-visible { animation:ipHomeRevealEnter .8s cubic-bezier(.2,.75,.25,1) var(--ip-home-reveal-delay,0ms) both !important; }
}
@media (max-width:640px) and (prefers-reduced-motion:reduce) {
  .ip-home-motion-ready .ip-home-service-card.is-visible { animation-name:ipHomeRevealEnterMobile !important; animation-duration:620ms !important; }
}

@media (max-width:640px) {
  .ip-home-about__media,.ip-home-about__media>img { min-height:0; height:440px; }
  .ip-home-about__media>span { right:12px; }
  .ip-home-about__media>b { left:0; }
  .ip-home-map { height:460px; }
  .ip-home-impact__grid { grid-template-columns:1fr; }
  .ip-home-impact__grid article { min-height:155px; border-right:0; border-bottom:1px solid rgba(255,255,255,.12); }
  .ip-home-career__media { min-height:400px; }
  .ip-home-career__copy { padding:34px 24px; }
}
