.upper-wrap{--upper-wrap-max:1267px;width:calc(100% - 80px);max-width:var(--upper-wrap-max);margin-inline:auto}.upper-hero,.upper-premium{position:relative;overflow:hidden}.upper-background{position:absolute;inset:0;width:100%;height:100%;display:block}.upper-background img{width:100%;height:100%;object-fit:cover}.upper-hero{height:974px;color:#fff;text-align:center}.upper-hero-copy{position:relative;padding-top:388px;text-shadow:0 10px 50px #000}.upper-hero h1{font-size:35px;font-weight:600;line-height:1.45;margin:0}.upper-hero p{font-size:18px;font-weight:600;margin-top:25px;line-height:1.8}.upper-premium{height:970px;background:#000;color:#fff;text-align:center}.upper-premium .upper-background img{height:163.21%;object-fit:cover;position:absolute;bottom:0;left:50%;transform:translateX(-50%)}.upper-premium-copy{position:relative;padding-top:60px}.upper-premium h2,.upper-wrap h2{font-size:36px;line-height:1.45;font-weight:400;margin:0}.upper-premium-copy>p{font-size:18px;line-height:1.8;margin:11px 0 15.43px}.upper-cost{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;background:#FF0000;color:#fff;height:55px;width:260px;font-size:18px;font-weight:600;text-decoration:none}.upper-premium small{display:block;max-width:392px;margin:10px auto 0;font-size:14px;line-height:1.8}.upper-results{padding-top:183px;padding-bottom:184px}.upper-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:36px}.upper-result-image{height:326px;border-radius:30px;overflow:hidden;position:relative}.upper-result-image img{width:100%;height:100%;object-fit:cover}.upper-result-1 .upper-result-image img{width:162.82%;max-width:none;position:absolute;left:-60.28%}.upper-result-2 .upper-result-image img{height:122.84%;position:absolute;top:-22.84%}.upper-red,.upper-number{color:red;font-size:18px;line-height:2;margin:0}.upper-result>.upper-red{margin-top:23px;line-height:1.45}.upper-result-stat{display:flex;align-items:baseline;gap:13px;flex-wrap:wrap}.upper-result h3{font-size:30px;line-height:1.45;font-weight:400;margin:0}.upper-result small{font-size:18px;color:#838383;line-height:1.45}.upper-result-description{font-size:18px;line-height:1.8;margin:13px 0 0}.upper-cost-question{border:0;width:100%;height:104px;margin-top:28px;border-radius:100px;background:#f8f8f8;color:#3b3b3b;font:inherit;font-size:23px;cursor:pointer}.upper-cost-question .directional-icon{width:15px;height:15px;margin-left:13px}.upper-intro{padding-bottom:0}.upper-intro-grid{margin-top:39px;display:grid;grid-template-columns:2.066fr 1fr;grid-template-rows:261px 261px 263px;gap:20px}.upper-video{position:relative;overflow:hidden;border:0;border-radius:30px;padding:0;text-align:left;color:white;cursor:pointer;background:#666}.upper-video-0{grid-row:span 2}.upper-video-3{grid-column:span 2}.upper-video-photo{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.upper-video-2 .upper-video-photo{height:149.45%;width:129.74%;max-width:none;top:-49.45%;object-fit:cover}.upper-video-3 .upper-video-photo{height:267.82%;top:-42.87%;object-fit:cover}.upper-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:53px;height:53px}.upper-play img{width:100%;height:100%}.upper-video-1 .upper-play,.upper-video-2 .upper-play{width:34px;height:34px}.upper-video-copy{position:absolute;bottom:33px;left:39px}.upper-video-label{display:table;background:#0003;backdrop-filter:blur(25px);border-radius:10px;padding:10px 12px;font-size:20px;line-height:1.3}.upper-video-title{display:block;font-size:35px;line-height:1.3;letter-spacing:-.7px;margin-top:28px}.upper-video-1 .upper-video-copy,.upper-video-2 .upper-video-copy{left:29px;bottom:17px}.upper-video-1 .upper-video-label,.upper-video-2 .upper-video-label{font-size:16px}.upper-video-1 .upper-video-title,.upper-video-2 .upper-video-title{font-size:25px;margin-top:14px}.upper-slider-controls{display:flex;justify-content:flex-end;gap:17px;margin-top:25px}.upper-slider-controls button{display:grid;place-items:center;width:32px;height:24px;border:0;border-radius:30px;background:#eee;cursor:pointer}.upper-slider-controls .directional-control__icon{width:18px;height:15px}.upper-slider-controls .directional-control--prev .directional-control__icon{transform:rotate(180deg)}.upper-intro>.upper-slider-controls{display:none}.upper-details{background:linear-gradient(#fff,#f4f3f3 10%);padding-top:126px;padding-bottom:177px;overflow:hidden}.upper-detail-marker{width:3px;height:79px;background:linear-gradient(#dedede 67%,#000 67%);margin:0 auto 125px}.upper-number{margin:0 0 19px}.upper-women h2{max-width:350px}.upper-description{font-size:18px;line-height:1.8;margin:18px 0 0}.upper-profiles{margin-top:55px}.upper-profile-track{display:flex;gap:41px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:1px}.upper-profile-track::-webkit-scrollbar{display:none}
/* Figma card shadows need paint space inside the native scroll viewport.
 * Content-box keeps percentage card widths unchanged; negative margins preserve
 * the rail origin and surrounding flow. 120px covers the 80px blur tail;
 * inline space also reaches the screen edge on wide layouts so moving cards
 * are clipped at the screen, not along an interior vertical seam.
 */
.upper-profiles--women,.upper-profiles--prosecutors{display:flow-root;--profile-shadow-space:120px;--profile-shadow-inline:max(120px,calc((100vw - var(--upper-wrap-max))/2))}
/* Keep the focus outline on the visible group; the rail may extend for shadow paint. */
.upper-profile-track-focus{display:flow-root;width:100%}
@media (min-width:1200px){
:is(.upper-profiles--women,.upper-profiles--prosecutors) .upper-profile-track{box-sizing:content-box;width:100%;padding:var(--profile-shadow-space) var(--profile-shadow-inline);padding-bottom:calc(var(--profile-shadow-space) + 1px);margin:calc(-1 * var(--profile-shadow-space)) calc(-1 * var(--profile-shadow-inline));scroll-padding-inline:var(--profile-shadow-inline)}
}

/* Result card labels use the compact 14px treatment at every viewport. */
.upper-result > .upper-red{font-size:14px}

/* Keep the published home-card arrow aligned after its link expands to the
 * full card; preview-only buttons keep their existing hit box. */
.upper-profile-more[href] {
  --detail-action-visual-right: 33px;
  --detail-action-visual-bottom: 30px;
}
@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .upper-profile-more[href] {
    --detail-action-visual-right: 17.67px;
    --detail-action-visual-bottom: 14px;
  }
}
:is(.upper-profiles--women,.upper-profiles--prosecutors) .upper-profile{box-shadow:0 10px 80px rgba(0,0,0,.05)}
@media(max-width:767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){
 :is(.upper-profiles--women,.upper-profiles--prosecutors) .upper-profile-track{box-sizing:content-box;width:calc(100% + 25px)!important;padding:var(--profile-shadow-space) var(--profile-shadow-inline);padding-bottom:calc(var(--profile-shadow-space) + 1px);margin:calc(-1 * var(--profile-shadow-space)) calc(-1 * var(--profile-shadow-inline));scroll-padding-inline:var(--profile-shadow-inline)}
}
.upper-profile{flex:0 0 395px;min-width:0;min-height:633px;position:relative;background:#fff;border-radius:30px;padding:31px 33px 37px;scroll-snap-align:start}.upper-profiles--women .upper-profile-track{width:calc(100% + (100vw - 100%)/2)}.upper-profile-photo{width:305px;height:378px;margin:0 auto 20px;position:relative;overflow:hidden}.upper-profile-photo img{position:absolute;max-width:none;width:100%;height:100%;object-fit:cover}.upper-crop-imgRectangle3471429 img{width:96.78%;height:120.8%;left:1.61%;top:0;object-fit:cover}.upper-crop-imgRectangle3471528 img{width:136.41%;height:166.47%;left:-16.11%;top:-30.22%;object-fit:cover}.upper-crop-imgRectangle3471527 img{width:118.35%;height:120.31%;left:-9.18%;top:-14.31%;object-fit:cover}.upper-crop-imgRectangle3470550 img{width:132.51%;height:106.95%;left:-19.1%;top:-5.89%;object-fit:cover}.upper-crop-imgRectangle3471550 img{width:130.45%;height:106.13%;left:-15.23%;top:-6.13%;object-fit:cover}.upper-crop-imgRectangle3471553 img{width:130.9%;height:107.99%;left:-19.05%;top:-7.99%;object-fit:cover}.upper-crop-imgRectangle3471552 img{width:166.56%;height:203.31%;left:-33.28%;top:-48.17%;object-fit:cover}.upper-profile h3,.upper-evidence-bio h3{font-size:18px;line-height:1.8;font-weight:400;margin:0}.upper-profile ul,.upper-evidence-bio ul{padding-left:24px;margin:0;font-size:16px;line-height:1.8}.upper-profile-more{position:absolute;bottom:30px;right:33px;display:grid;place-items:center;border:0;border-radius:50%;width:31px;height:31px;background:#FF0000;cursor:pointer}.upper-profile-more .directional-icon{width:16px;height:15px}.upper-prosecutors{padding-top:132px}.upper-prosecutors h2{max-width:490px}.upper-profiles--prosecutors .upper-slider-controls{display:none}.upper-evidence{display:grid;grid-template-columns:431px 1fr;column-gap:41px;margin-top:188px}.upper-evidence-photo{grid-row:span 2;height:517px;position:relative;overflow:hidden;border-radius:30px}.upper-evidence-photo>img{width:100%;height:100%;object-fit:cover}.upper-evidence-copy{padding-top:14px;max-width:540px}.upper-evidence-copy .upper-number{margin-bottom:9px}.upper-evidence-copy h2{white-space:normal}.upper-evidence-bio{align-self:end;padding-bottom:0}.upper-evidence-logos{position:absolute;bottom:36px;left:24px;right:24px;display:flex;align-items:center;gap:8px;opacity:.55}.upper-evidence-logos img{width:55px;height:30px;object-fit:contain}.upper-psychologists{padding-top:187px}.upper-recovery-grid{display:grid;grid-template-columns:831px 1fr;gap:41px;margin-top:54px}.upper-recovery-grid .upper-profiles{margin:0}.upper-profiles--psychologists .upper-profile{padding:0;background:transparent;min-height:610px}.upper-profiles--psychologists .upper-profile-photo{width:395px;height:382px;border-radius:30px;margin-bottom:20px}.upper-profiles--psychologists .upper-profile-more,.upper-profiles--psychologists .upper-slider-controls{display:none}.upper-recovery{position:relative;margin:0;width:calc(100vw - (100vw - 1267px)/2 - 872px);min-width:395px;height:598px;overflow:hidden;border-radius:30px 0 0 30px}.upper-recovery>img{width:1216px;height:850px;max-width:none;position:absolute;top:-103px;left:-29px;object-fit:cover}.upper-recovery figcaption{position:absolute;bottom:20px;left:0;width:100%;color:#fff;text-align:center;font-size:18px;line-height:1.4}.upper-contact{min-height:973px;text-align:center;background:#fff;padding:263px 20px 100px;color:#3b3b3b}.upper-mobile-copy{display:none}
@media(max-width:1400px) and (min-width:768px){.upper-profile{flex-basis:calc((100% - 82px)/3);padding-inline:20px}.upper-profile-photo{width:100%;max-width:305px}.upper-recovery-grid{grid-template-columns:66% 1fr}.upper-profiles--psychologists .upper-profile{flex-basis:calc((100% - 41px)/2)}.upper-profiles--psychologists .upper-profile-photo{width:100%}.upper-evidence-copy h2{white-space:normal}.upper-recovery{width:calc(100vw - 80px);min-width:0}.upper-result-stat{gap:5px}.upper-result small{font-size:14px}}
@media(max-width:767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){.upper-wrap{width:calc(100% - 50px);max-width:none}.upper-hero{height:727px}.upper-hero-copy{padding-top:275px}.upper-hero h1{font-size:25px;line-height:1.45}.upper-hero p{font-size:16px;margin-top:8px}.upper-hero .upper-background img{object-fit:cover;width:107.25%;max-width:none}.upper-premium{height:729px}.upper-premium .upper-background img{height:112.95%;width:100%;object-fit:cover}.upper-premium-copy{padding-top:71px}.upper-premium h2{font-size:21px;line-height:1.4}.upper-premium-copy>p{font-size:14px;line-height:1.8;margin:24px 20px 20.13px}.upper-cost{width:236px;height:50px;font-size:16px}.upper-premium small{font-size:12px;max-width:330px;line-height:1.8;margin-top:17px}.upper-results{padding-top:175px;padding-bottom:181px}.upper-wrap h2,.upper-teams h2{font-size:23px;line-height:1.45}.upper-result-grid{display:block;margin-top:25px}.upper-result{margin-bottom:62px}.upper-result-image{height:auto;aspect-ratio:362/373.44;border-radius:30px;margin-inline:-5px}.upper-result-image img{position:absolute}.upper-result>.upper-red{font-size:14px;margin-top:24px}.upper-result h3{font-size:20px;line-height:1.45}.upper-result-stat small{display:none}.upper-result-description{font-size:14px;line-height:1.8;margin-top:9px}.upper-result:last-child{margin-bottom:0}.upper-cost-question{height:55px;font-size:14px;margin-top:65px;width:calc(100% + 10px);margin-left:-5px}.upper-cost-question .directional-icon{width:12px;height:12px;margin-left:5px}.upper-intro{padding-bottom:0}.upper-intro-grid{display:flex;gap:12px;margin-top:62px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;width:calc(100% + 25px);margin-left:-5px}.upper-video{flex:0 0 326px;height:210px;scroll-snap-align:start;border-radius:26px}.upper-video-copy,.upper-video-1 .upper-video-copy,.upper-video-2 .upper-video-copy{left:21px;bottom:14px}.upper-video-label,.upper-video-1 .upper-video-label,.upper-video-2 .upper-video-label{font-size:12px;padding:9px 10px}.upper-video-title,.upper-video-1 .upper-video-title,.upper-video-2 .upper-video-title{font-size:17px;line-height:1.3;margin-top:8px;letter-spacing:-.3px}.upper-play,.upper-video-1 .upper-play,.upper-video-2 .upper-play{width:30px;height:30px}.upper-intro>.upper-slider-controls{display:flex;margin-top:25px}.upper-details{padding-top:64px;padding-bottom:0}.upper-detail-marker{height:43px;margin-bottom:54px}.upper-number{font-size:14px;margin-bottom:13px}.upper-women h2{max-width:300px}.upper-description{font-size:14px;line-height:1.8;margin-top:12px}.upper-desktop-break{display:none}.upper-profiles{margin-top:62px}.upper-profile-track{gap:30px;width:calc(100% + 25px)!important;overflow-x:auto}.upper-profile{box-sizing:border-box;flex:0 0 289px;width:289px;height:494px;min-height:494px;padding:34.5px 33px}.upper-profile-photo{width:224px;height:277px;margin:0 auto 20px}.upper-profile h3{font-size:16px;font-weight:500;line-height:1.8}.upper-profile ul{font-size:14px;line-height:1.8;padding-left:18px}.upper-profile-more{bottom:14px;right:17.67px;width:30.66px;height:30.66px;background:#3b3b3b}.upper-profile-more .directional-icon{width:16px;height:15px}.upper-slider-controls{gap:17px;margin-top:25px}.upper-prosecutors{padding-top:128px}.upper-prosecutors h2{max-width:335px}.upper-profiles--prosecutors .upper-slider-controls{display:flex}.upper-evidence{display:flex;flex-direction:column;gap:0;margin-top:128px}.upper-evidence-copy{padding:0;order:0}.upper-evidence-copy h2{white-space:normal}.upper-evidence-copy .upper-number{margin-bottom:13px}.upper-evidence-photo{order:1;width:calc(100% + 14px);margin:26px -7px 0;height:373px;border-radius:30px}.upper-evidence-photo>img{object-fit:cover;object-position:center 35%}.upper-evidence-bio{order:2;align-self:stretch;margin-top:14px}.upper-evidence-bio h3{font-size:16px}.upper-evidence-bio ul{font-size:14px;line-height:1.8;padding-left:21px}.upper-evidence-logos{bottom:26px}.upper-psychologists{padding-top:160px}.upper-recovery-grid{display:block;margin-top:61px}.upper-profiles--psychologists .upper-profile{flex-basis:280px;min-height:474px;padding:0}.upper-profiles--psychologists .upper-profile-photo{width:280px;height:286px;border-radius:30px;margin-bottom:10px}.upper-profiles--psychologists .upper-profile h3{font-size:14px;font-weight:400}.upper-profiles--psychologists .upper-profile ul{font-size:12px}.upper-recovery{margin:60px -25px 0;width:100vw;height:529px;min-width:0;border-radius:0}.upper-recovery>img{width:100%;height:100%;left:0;top:0;object-fit:cover}.upper-recovery figcaption{font-size:14px;line-height:1.8;bottom:16px;left:15px;width:calc(100% - 30px)}.upper-contact{min-height:735px;padding-top:225px}.upper-desktop-copy{display:none}.upper-mobile-copy{display:inline}.upper-result-description.upper-mobile-copy{display:block}}
@media(max-width:767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){.upper-result-stat small{display:inline;font-size:14px}.upper-result-stat{gap:13px}}
.upper-evidence-photo>picture,.upper-evidence-photo>picture>img{display:block;width:100%;height:100%;object-fit:cover}
@media(min-width:768px) and (max-width:1400px){.upper-recovery-grid>*{min-width:0}.upper-recovery{width:100%;min-width:0}.upper-recovery figcaption{padding-inline:20px;font-size:15px}.upper-profile-track{min-width:0}}@media(min-width:768px) and (max-width:1100px){.upper-recovery-grid{grid-template-columns:1fr}.upper-recovery{height:540px;border-radius:30px}.upper-recovery>img{width:100%;height:100%;top:0;left:0;object-fit:cover}.upper-profiles--psychologists .upper-profile{flex-basis:calc((100% - 41px)/2)}.upper-evidence{grid-template-columns:38% 1fr;column-gap:28px}.upper-evidence-copy h2{font-size:29px}.upper-evidence-bio ul{font-size:14px}}
.upper-profile-track.is-dragging{scroll-snap-type:none;scroll-behavior:auto;user-select:none;cursor:grabbing}
.upper-profile-track{overflow-y:hidden}
@media(hover:hover) and (pointer:fine){.upper-profile-track{scroll-snap-type:none}}

/* Device-specific member credentials supplied by the design. */
.upper-details .upper-team-member-qualifications-mobile{display:none}
@media(max-width:767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){.upper-details .upper-team-member-qualifications-desktop{display:none}.upper-details .upper-team-member-qualifications-mobile{display:block}}



/* Let copy expand without covering the profile action. */
.upper-profile-copy{padding-bottom:20px;overflow-wrap:anywhere}
@media(min-width:768px){.upper-hero-copy,.upper-premium-copy{padding-inline:24px}}
@media(max-width:767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){.upper-hero-copy{padding-inline:25px}}

/* BEGIN FIGMA TYPOGRAPHY */
@media(min-width:768px){
/* 584:856 */
.iel-copy-hero-title{width:100%;max-width:100%;font-size:36px;font-weight:500;line-height:1.45;letter-spacing:0em}
/* 584:857 */
.iel-copy-hero-description{width:100%;max-width:100%;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 584:857 */
.iel-copy-hero-lead{width:100%;max-width:100%;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 584:857 */
.iel-copy-hero-detail{width:100%;max-width:100%;font-size:18px;font-weight:400;line-height:1.5;letter-spacing:0em}
/* 584:857 */
.iel-copy-hero-brand{width:100%;max-width:100%;font-size:18px;font-weight:600;line-height:1.8;letter-spacing:0em}
/* 584:60 */
.iel-copy-premium-title{width:100%;max-width:472px;font-size:36px;font-weight:400;line-height:1.45;letter-spacing:0em;margin-inline:auto}
/* 418:158 */
.iel-copy-results-title{width:100%;max-width:695.229px;font-size:36px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 418:163 */
.iel-copy-result-0{width:100%;max-width:379px;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 418:168 */
.iel-copy-result-1{width:100%;max-width:339px;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 418:171 */
.iel-copy-result-2{width:100%;max-width:375px;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 418:206 */
.iel-copy-intro-title{width:100%;max-width:756.259px;font-size:36px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 584:913 */
.iel-copy-teams-title{width:100%;max-width:1011.485px;font-size:36px;font-weight:400;line-height:1.45;letter-spacing:0em;margin-inline:auto}
/* 418:229 */
.iel-copy-women-title{width:100%;max-width:332.082px;font-size:36px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 418:227 */
.iel-copy-women-description{width:100%;max-width:871.845px;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 418:230 */
.iel-copy-prosecutors-title{width:100%;max-width:480.983px;font-size:36px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 418:228 */
.iel-copy-prosecutors-description{width:100%;max-width:1265px;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 418:269 */
.iel-copy-evidence-title{width:100%;max-width:476.078px;font-size:36px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 418:268 */
.iel-copy-evidence-description{width:100%;max-width:528.971px;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 418:334 */
.iel-copy-psychologists-title{width:100%;max-width:367.841px;font-size:36px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 418:333 */
.iel-copy-psychologists-description{width:100%;max-width:950.299px;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 418:337 */
.iel-copy-recovery-caption{width:100%;max-width:722.243px;font-size:18px;font-weight:400;line-height:1.4;letter-spacing:0em;margin-inline:auto}
/* 418:148 */
.iel-copy-contact-title{width:100%;max-width:772.027px;font-size:32px;font-weight:400;line-height:1.35;letter-spacing:0em;margin-inline:auto}
/* 584:911 */
.iel-copy-team-0-description{width:100%;max-width:100%;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em;margin-inline:auto}
/* 584:907 */
.iel-copy-team-1-description{width:100%;max-width:100%;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em;margin-inline:auto}
/* 584:903 */
.iel-copy-team-2-description{width:100%;max-width:100%;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em;margin-inline:auto}
/* 584:900 */
.iel-copy-team-3-description{width:100%;max-width:100%;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:0em;margin-inline:auto}
/* 584:832 */
.iel-copy-premium-note{width:100%;max-width:501.906px;font-size:16px;font-weight:400;line-height:1.8;letter-spacing:0em;margin-inline:auto}
/* 584:63 */
.upper-cost{font-size:18px;font-weight:600;line-height:2;letter-spacing:0em}
/* 418:178 */
.upper-cost-question{font-size:23px;font-weight:400;line-height:1.3;letter-spacing:0em}
/* 584:910 */
.upper-team h3{font-size:25px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 584:912 */
.upper-team .upper-red{font-size:18px;font-weight:600;line-height:2;letter-spacing:0em}
}
@media(max-width:767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){
/* 584:2621 */
.iel-copy-hero-title{width:100%;max-width:100%;font-size:25px;font-weight:500;line-height:1.45;letter-spacing:0em}
/* 584:2622 */
.iel-copy-hero-description{width:100%;max-width:100%;font-size:15px;font-weight:400;line-height:1.5;letter-spacing:0em}
/* 584:2622 */
.iel-copy-hero-lead{width:100%;max-width:100%;font-size:15px;font-weight:400;line-height:1.5;letter-spacing:0em}
/* 584:2622 */
.iel-copy-hero-detail{width:100%;max-width:100%;font-size:15px;font-weight:400;line-height:1.5;letter-spacing:0em}
/* 584:2622 */
.iel-copy-hero-brand{width:100%;max-width:100%;font-size:15px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 584:2602 */
.iel-copy-premium-title{width:100%;max-width:263px;font-size:20px;font-weight:400;line-height:1.45;letter-spacing:0em;margin-inline:auto}
/* 445:100 */
.iel-copy-results-title{width:100%;max-width:362px;font-size:23px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 445:106 */
.iel-copy-result-0{width:100%;max-width:295px;font-size:14px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 445:103 */
.iel-copy-result-1{width:100%;max-width:264px;font-size:14px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 445:40 */
.iel-copy-result-2{width:100%;max-width:264px;font-size:14px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 445:233 */
.iel-copy-intro-title{width:100%;max-width:312.795px;font-size:23px;font-weight:400;line-height:1.35;letter-spacing:0em}
/* 584:1981 */
.iel-copy-teams-title{width:100%;max-width:312.795px;font-size:23px;font-weight:400;line-height:1.45;letter-spacing:0em;margin-inline:auto}
/* 445:255 */
.iel-copy-women-title{width:100%;max-width:332.082px;font-size:23px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 445:254 */
.iel-copy-women-description{width:100%;max-width:351.336px;font-size:14px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 445:274 */
.iel-copy-prosecutors-title{width:100%;max-width:332.082px;font-size:23px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 445:271 */
.iel-copy-prosecutors-description{width:100%;max-width:351.336px;font-size:14px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 445:276 */
.iel-copy-evidence-title{width:100%;max-width:332.082px;font-size:23px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 445:273 */
.iel-copy-evidence-description{width:100%;max-width:351.336px;font-size:14px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 445:275 */
.iel-copy-psychologists-title{width:100%;max-width:332.082px;font-size:23px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 445:272 */
.iel-copy-psychologists-description{width:100%;max-width:351.336px;font-size:14px;font-weight:400;line-height:1.8;letter-spacing:0em}
/* 445:288 */
.iel-copy-recovery-caption{width:100%;max-width:425.317px;font-size:13px;font-weight:400;line-height:1.3;letter-spacing:0em;margin-inline:auto}
/* 445:287 */
.iel-copy-contact-title{width:100%;max-width:369.968px;font-size:20px;font-weight:400;line-height:1.45;letter-spacing:0em;margin-inline:auto}
/* 584:1989 */
.iel-copy-team-0-description{width:100%;max-width:100%;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0em;margin-inline:auto}
/* 584:1991 */
.iel-copy-team-1-description{width:100%;max-width:100%;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0em;margin-inline:auto}
/* 584:1990 */
.iel-copy-team-2-description{width:100%;max-width:100%;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0em;margin-inline:auto}
/* 584:1996 */
.iel-copy-team-3-description{width:100%;max-width:100%;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0em;margin-inline:auto}
/* 584:2601 */
.iel-copy-premium-note{width:100%;max-width:351.336px;font-size:12px;font-weight:400;line-height:1.6;letter-spacing:0em;margin-inline:auto}
/* 584:2605 */
.upper-cost{font-size:16px;font-weight:600;line-height:2;letter-spacing:0em}
/* 445:116 */
.upper-cost-question{font-size:15px;font-weight:400;line-height:1.3;letter-spacing:0em}
/* 584:1986 */
.upper-team h3{font-size:18px;font-weight:400;line-height:1.45;letter-spacing:0em}
/* 584:1992 */
.upper-team .upper-red{font-size:14px;font-weight:600;line-height:2;letter-spacing:0em}
}
/* END FIGMA TYPOGRAPHY */

/* Responsive stabilization: preserve image ratios and give tablet its own flow. */
.upper-background img,
.upper-video-photo,
.upper-profile-photo img,
.upper-evidence-photo>picture>img,
.upper-evidence-photo>img,
.upper-recovery>img,
.upper-teams-canvas>.upper-background img{object-fit:cover}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){
 .upper-wrap{width:calc(100% - 50px)}
 .upper-hero{height:auto;min-height:729px}
 .upper-premium{height:1120.601px;min-height:0}
 .upper-hero-copy,.upper-premium-copy{box-sizing:border-box}
 .upper-result-image{height:auto;aspect-ratio:362 / 373.44}
 .upper-result-image picture,
 .upper-result-image picture>img{display:block;width:100%;height:100%}
 .upper-intro-grid{min-width:0}
 .upper-profile-track{min-width:0}
 .upper-evidence-photo>picture{display:block;width:100%;height:100%}
 .upper-recovery{height:529px;min-height:0}
}

/* Figma 887:6130 mobile result cards: 362x230 media, 13px copy offset, 30px rail gap. */
@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){
 .upper-result-image{aspect-ratio:362 / 230}
 .upper-result>.upper-red{margin:13px 5px 0}
 .upper-result-stat,.upper-result-description{margin-inline:5px}
 .upper-result{margin-bottom:30px}
 .upper-result:last-child{margin-bottom:0}
}

@media (min-width: 768px) and (max-width: 1199px){
 .upper-wrap{width:calc(100% - 64px);max-width:none}
 .upper-hero{height:760px}
 .upper-hero-copy{padding:250px 0 0}
 .upper-results{padding-top:120px;padding-bottom:120px}
 .upper-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px}
 .upper-result-image{height:auto;aspect-ratio:4 / 3}
 .upper-result-image picture,
 .upper-result-image picture>img{display:block;width:100%;height:100%}
 .upper-result-1 .upper-result-image img,
 .upper-result-2 .upper-result-image img{position:static;width:100%;height:100%;max-width:none}
 .upper-intro{padding-bottom:0}
 .upper-intro>.upper-slider-controls{display:flex}
 .upper-intro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(200px,auto));grid-auto-rows:minmax(200px,auto);gap:clamp(14px,2.4vw,24px);margin:32px 0 0;width:auto;overflow:visible}
 .upper-video-0{grid-row:span 2}
 .upper-video-3{grid-column:1 / -1}
 .upper-video{min-width:0;min-height:200px;height:auto}
 .upper-video-photo,
 .upper-video-2 .upper-video-photo,
 .upper-video-3 .upper-video-photo{inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
 .upper-video-copy{left:clamp(20px,3.5vw,39px);right:clamp(20px,3.5vw,39px);bottom:clamp(16px,3vw,33px);max-width:calc(100% - clamp(40px,7vw,78px));overflow-wrap:anywhere}
 .upper-video-title{font-size:clamp(22px,3.2vw,35px)}
 .upper-video-1 .upper-video-copy,
 .upper-video-2 .upper-video-copy{left:clamp(16px,2.6vw,29px);right:clamp(16px,2.6vw,29px)}
 .upper-video-photo{object-position:50% 50%}
 .upper-video-0 .upper-video-photo{object-position:50% 40%}
 .upper-video-1 .upper-video-photo{object-position:80% 35%}
 .upper-video-2 .upper-video-photo{object-position:50% 68%}
 .upper-video-3 .upper-video-photo{object-position:50% 35%}

 /* Premium owns its tablet composition here; the desktop Figma height is
  * intentionally scoped to >=1200px in home-design.css. */
 .upper-premium{
  height:auto;
  min-height:clamp(760px,84vw,970px);
  padding:0 clamp(24px,4vw,64px);
  display:grid;
  align-content:start;
 }
 .upper-premium .upper-background{top:clamp(220px,27vw,300px);bottom:0;height:auto}
 .upper-premium .upper-background img{inset:0;left:0;width:100%;height:100%;transform:none;object-fit:cover;object-position:center bottom}
 .upper-premium-copy{position:relative;z-index:1;width:min(100%,620px);margin:0 auto;padding-top:clamp(72px,12vw,144px)}
 .upper-premium h2{max-width:min(100%,620px);margin-inline:auto;font-size:clamp(28px,4.2vw,36px);line-height:1.45}
 .upper-premium h2>.iel-design-copy{max-width:min(100%,620px)}
 .upper-premium-copy>p{max-width:454.028px;margin:clamp(24px,3.5vw,34px) auto clamp(20px,3vw,30px);font-size:18px;line-height:1.8;overflow-wrap:anywhere}
 .upper-premium-note{max-width:502px;margin:14.55px auto 0;padding-inline:20px;text-align:center;color:#3b3b3b}

 /* The question control is a single flex component for both links and
  * pending buttons, keeping the label centered without an icon. */
 .upper-cost-question{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:clamp(72px,8.5vw,104px);height:auto;padding:16px 20px;font-size:clamp(15px,1.86cqi,23px);text-align:center}

 /* Profiles are cards in a real tablet grid.  Crop classes remain untouched
  * except for the explicit p4 frame that the old reset flattened. */
 .upper-profiles>.upper-slider-controls{display:none}
 .upper-profile-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,41px);width:100%;box-sizing:border-box;padding:0;margin:0;overflow:visible;scroll-snap-type:none}
 .upper-profiles--women .upper-profile-track{width:100%}
 .upper-profile{display:flex;flex-direction:column;flex:none;width:auto;min-width:0;min-height:0;height:auto;padding:clamp(22px,3vw,31px) clamp(18px,3vw,33px) clamp(24px,3vw,37px)}
 .upper-profile-photo{width:100%;max-width:305px;height:auto;aspect-ratio:305 / 378;margin-inline:auto}
 .upper-profile-copy{min-width:0;flex:1;padding-bottom:32px;overflow-wrap:anywhere;text-align:left}
 .upper-profile-copy h3,
 .upper-profile-copy ul{margin-inline:0;text-align:left}
 .upper-profile-more{bottom:clamp(20px,2.8vw,30px);right:clamp(18px,3vw,33px)}
 .upper-profile[data-analytics-content="p4"] .upper-profile-photo img{width:96.78%;height:120.8%;left:1.61%;top:0;object-fit:cover}
 .upper-profiles--psychologists .upper-profile{min-height:0;padding:0;background:transparent}
 .upper-profiles--psychologists .upper-profile-photo{width:100%;max-width:395px;aspect-ratio:395 / 382}
 .upper-details{padding-top:96px;padding-bottom:120px}
 .upper-prosecutors{padding-top:96px}
 .upper-recovery-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:32px}
 .upper-recovery{margin:0;width:100%;height:auto;aspect-ratio:16 / 9;min-width:0;border-radius:30px}
 .upper-recovery>img{inset:0;width:100%;height:100%;object-fit:cover}
 .upper-contact{min-height:720px;padding-top:180px}
}

@media (min-width: 768px) and (max-width: 1024px){
 /* Evidence follows the reading order at the first tablet width. */
 .upper-evidence{display:flex;flex-direction:column;gap:clamp(24px,4vw,36px);margin-top:clamp(120px,15vw,180px)}
 .upper-evidence-copy{order:0;max-width:none;min-width:0;padding-top:0}
 .upper-evidence-copy h2{max-width:476.078px;font-size:clamp(29px,4.2vw,36px)}
 .upper-evidence-copy .upper-description{max-width:528.971px;font-size:clamp(16px,2.35vw,18px);overflow-wrap:anywhere}
 .upper-evidence-photo{order:1;width:min(100%,clamp(431px,70vw,560px));height:auto;aspect-ratio:431 / 517;margin-inline:auto}
 .upper-evidence-bio{order:2;align-self:stretch;width:min(100%,clamp(431px,70vw,560px));margin-inline:auto;min-width:0}
 .upper-evidence-bio ul{overflow-wrap:anywhere}
}

@media (min-width: 1025px) and (max-width: 1199px){
 .upper-evidence{display:grid;grid-template-columns:minmax(280px,38%) minmax(0,1fr);column-gap:clamp(20px,3vw,28px);margin-top:clamp(160px,18vw,224px)}
 .upper-evidence-photo{width:100%;height:auto;aspect-ratio:431 / 517}
 .upper-evidence-copy{max-width:none;min-width:0}
 .upper-evidence-bio{min-width:0}
}

/* Keep anchored sections clear of the fixed header without making the
 * responsive layer responsible for component geometry. */
.upper-teams,.upper-details,.upper-intro,.upper-profiles{scroll-margin-top:calc(var(--nav-clearance,0px) + 24px)}

/* The question action is one component whether it renders as an anchor or a
 * pending button. Keep its label centered at every approved endpoint. */
.upper-cost-question{display:flex;align-items:center;justify-content:center;box-sizing:border-box;text-align:center}

@media (min-width: 1200px){
  .upper-background img,
  .upper-video-photo,
  .upper-profile-photo img,
  .upper-evidence-photo>picture>img,
  .upper-evidence-photo>img,
  .upper-recovery>img,
  .upper-teams-canvas>.upper-background img{object-fit:cover}
}



/* The cost question keeps a quiet surface response instead of the shared
 * hover shadow used by larger interactive surfaces. */
@media (hover: hover) and (pointer: fine) {
	.upper-cost-question:hover {
		background-color: #f3f3f3;
		box-shadow: none !important;
	}
}

/* The cost CTA reuses the shared shadow and adds a subtle desktop lift. */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
	.iel-home .upper-premium .upper-cost.iel-hover-surface:not(.directional-control):not(.detail-action):not(.upper-profile-more):not(.lower-case-study-link):not(.directory-case-study-detail):not(.directory-team-member-link) {
		transition:
			transform var(--iel-motion-fast) var(--iel-motion-ease),
			background-color var(--iel-motion-fast) var(--iel-motion-ease),
			color var(--iel-motion-fast) var(--iel-motion-ease),
			box-shadow var(--iel-motion-fast) var(--iel-motion-ease) !important;
	}

	.iel-home .upper-premium .upper-cost:is(:hover, :focus-visible) {
		transform: translateY(-2px) !important;
	}
}

/* Video cards use a slow, editorial image settle without moving the card,
 * its copy, or the play control. */
.upper-video-photo{transform-origin:center;transition:transform 420ms var(--iel-motion-ease)}
@media(hover:hover) and (pointer:fine){.upper-video:hover .upper-video-photo{transform:scale(1.02)}}
.upper-video:focus-visible .upper-video-photo{transform:scale(1.02)}
@media(prefers-reduced-motion:reduce){.upper-video-photo{transform:none!important;transition:none!important}}

@media(max-width:767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){.iel-home .upper-profile-more{--detail-action-hit-size:30.66px;--detail-action-circle-size:30.66px;--detail-action-icon-width:16px;--detail-action-icon-height:15px}.iel-home .upper-profile-more::before{background:#3b3b3b}}
@media(min-width:768px){.iel-home .upper-profiles .upper-profile h3{font-size:18px}.iel-home .upper-profiles .upper-profile ul{font-size:16px;padding-left:24px}}
@media(max-width:767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){.iel-home .upper-profiles .upper-profile h3{font-size:16px}.iel-home .upper-profiles .upper-profile ul{font-size:14px;padding-left:22px}}

/* Shared mobile geometry is supplied by home-responsive.css. */
@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
	.iel-home .upper-wrap {
		width: min(100%, var(--mobile-wide-frame, calc(100% - 40px)));
	}

	.iel-home .upper-intro-grid {
		width: min(100%, var(--mobile-rail-frame, calc(100vw - 20px)));
	}

	.iel-home .upper-video {
		flex-basis: var(--mobile-video-width, 325px);
		height: auto;
		aspect-ratio: 325 / 210;
	}

	.iel-home .upper-profile {
		flex-basis: var(--mobile-profile-width, 289px);
		width: var(--mobile-profile-width, 289px);
		height: auto;
		min-height: var(--mobile-profile-min-height, 494px);
	}

	.iel-home .upper-profile-photo {
		width: var(--mobile-profile-photo-width, 224px);
		height: auto;
		aspect-ratio: 224 / 277;
	}
}

/* Lawyer profile section stays neutral behind the white cards. */
.iel-home .upper-details { background: #fff; }

/* Tablet and desktop geometry tokens are supplied by home-responsive.css. */
@media (min-width: 768px) {
	.iel-home .upper-profile-track {
		gap: var(--responsive-profile-gap, 41px);
	}

	.iel-home .upper-intro-grid {
		gap: var(--responsive-intro-gap, 18px);
	}
}

/* PC profile copy must determine the card height instead of overflowing a
 * fixed Figma frame when a qualification wraps to an additional line. */
@media (min-width: 1200px) {
	.iel-home .upper-profiles--women .upper-profile,
	.iel-home .upper-profiles--prosecutors .upper-profile {
		box-sizing: border-box;
		height: auto;
	}

	.iel-home .upper-profiles--women .upper-profile-copy,
	.iel-home .upper-profiles--prosecutors .upper-profile-copy {
		min-width: 0;
		padding-bottom: 20px;
	}

	.iel-home .upper-profiles--women .upper-profile-copy ul,
	.iel-home .upper-profiles--prosecutors .upper-profile-copy ul {
		overflow-wrap: anywhere;
		word-break: keep-all;
	}
}

.iel-video-play{pointer-events:none}
.iel-video-play picture,.iel-video-play img{display:block;width:100%;height:100%}
.iel-video-play-default,.iel-video-play-active{position:absolute;inset:0;transition:opacity 180ms ease}
.iel-video-play-active{opacity:0}
@media(hover:hover) and (pointer:fine){:is(.upper-video,.center-video-card):hover .iel-video-play-default{opacity:0}:is(.upper-video,.center-video-card):hover .iel-video-play-active{opacity:1}}
:is(.upper-video,.center-video-card):focus-visible .iel-video-play-default{opacity:0}
:is(.upper-video,.center-video-card):focus-visible .iel-video-play-active{opacity:1}
@media(min-width:768px){
	.upper-video-picture{position:absolute;inset:0;display:block}
	.upper-video-2{background-image:linear-gradient(248.041983deg,rgb(228 229 223) .624%,rgb(174 169 157) 100%);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px)}
	.upper-video-2::before{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(to bottom,rgb(167 137 100 / 50%),rgb(117 92 69 / 50%))}
	.upper-video-label{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:9px 18px;border-radius:100px;background:rgb(0 0 0 / 50%);backdrop-filter:none;font-size:20px;font-weight:500;line-height:1.3;text-align:center}
	.upper-video-1 .upper-video-label,.upper-video-2 .upper-video-label{font-size:20px}
	.upper-video .upper-video-copy{left:30px;right:30px;bottom:29px}
	.upper-video-title,.upper-video-1 .upper-video-title,.upper-video-2 .upper-video-title{font-size:30px;font-weight:400;line-height:1.3;letter-spacing:-.6px;color:#fff;white-space:nowrap;margin-top:10px}
	.upper-play{z-index:4;width:60px;height:60px}
	.upper-video-1 .upper-play,.upper-video-2 .upper-play{width:60px;height:60px}
	.upper-video-2 .upper-video-copy{z-index:3}
	.upper-video-photo--pc,.upper-video-2 .upper-video-photo--pc,.upper-video-3 .upper-video-photo--pc{inset:0;left:0;top:0;width:100%;height:100%;max-width:100%;object-fit:cover}
	.upper-video-2 .upper-video-photo--pc{z-index:2;left:47.85%;top:9.45%;width:52.15%;height:90.55%;max-width:none;object-fit:contain;object-position:center bottom}
}
@media(max-width:767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px){
	.upper-video-picture{position:absolute;inset:0;display:block}
	.upper-video-0 .upper-video-photo{left:-18.96%;top:0;width:156.13%;height:134.87%;max-width:none}
	.upper-video-1 .upper-video-photo{inset:0;width:100%;height:100%;object-fit:cover}
	.upper-video-2{background-image:linear-gradient(255.272deg,rgb(228 229 223) .624%,rgb(174 169 157) 100%);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px)}
	.upper-video-2::before{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(to bottom,rgb(167 137 100 / 50%),rgb(117 92 69 / 50%))}
	.upper-video-2 .upper-video-photo{z-index:2;left:94.125px;top:31.769px;width:230.657px;height:178.231px;max-width:none;object-fit:fill}
	.upper-video-3 .upper-video-photo{left:-111.75%;top:0;width:311.37%;height:100%;max-width:none;object-position:50% 35%}
	.upper-video .upper-video-copy{z-index:3;right:auto;bottom:19.159px}
	.upper-video-0 .upper-video-copy{left:27.288px}
	.upper-video-1 .upper-video-copy{left:33.186px}
	.upper-video-2 .upper-video-copy{left:32.968px}
	.upper-video-3 .upper-video-copy{left:33.257px}
	.upper-video-label,.upper-video-1 .upper-video-label,.upper-video-2 .upper-video-label{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:100px;background:rgb(0 0 0 / 50%);backdrop-filter:none;font-size:10px;font-weight:500;line-height:1.3;text-align:center}
	.upper-video-title,.upper-video-1 .upper-video-title,.upper-video-2 .upper-video-title{font-size:18px;font-weight:400;line-height:1.3;letter-spacing:-.36px;color:#fff;white-space:nowrap;margin-top:4px}
	.upper-play,.upper-video-1 .upper-play,.upper-video-2 .upper-play{z-index:4;width:30px;height:30px}
	:is(.upper-video,.center-video-card):active .iel-video-play-default{opacity:0}
	:is(.upper-video,.center-video-card):active .iel-video-play-active{opacity:1}
}
@media(prefers-reduced-motion:reduce){.iel-video-play-default,.iel-video-play-active{transition:none!important}}

/* Figma team overview: the preceding flow node owns the transition gap and the canvas owns its internal flow. */
.iel-home {
  --upper-teams-transition-gap: 88px;
  --upper-intro-base-bottom: 190px;
}

@media (min-width: 1200px) {
  .iel-home {
    --upper-intro-base-bottom: var(--desktop-intro-padding-bottom);
  }
}

.iel-home .upper-intro.upper-teams-flow-owner {
  padding-bottom: calc(var(--upper-intro-base-bottom) + var(--upper-teams-transition-gap));
}

.iel-home .upper-teams-flow-anchor {
  display: block;
  height: var(--upper-teams-transition-gap);
}
.upper-teams {
  height: auto;
  min-height: 0;
  margin-top: 0;
  padding: 0 0 18.8px;
  background: #fff;
  color: #3b3b3b;
  text-align: center;
  overflow: visible;
}

.upper-teams-canvas {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(48px, 4.55vw, 93px);
  box-sizing: border-box;
  width: min(1819.148px, calc(100% - 80px));
  margin: 0 auto;
  padding: clamp(80px, 9.72vw, 199px) clamp(24px, 7.96vw, 163px) clamp(80px, 10.2vw, 209px);
}

.upper-teams-canvas > .upper-background {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: 100px;
  overflow: hidden;
}

.upper-teams-canvas > .upper-background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.upper-teams-canvas > h2 {
  position: relative;
  z-index: 1;
  width: 100%;
  margin: 0;
}

.upper-teams-canvas > h2 > .iel-design-copy {
  width: min(1011.485px, 100%);
  margin-inline: auto;
}

.upper-teams-canvas > .upper-team-grid {
  position: relative;
  z-index: 1;
  display: flex;
  width: min(1470px, 100%);
  max-width: none;
  margin: 0;
}

.upper-teams-canvas .upper-team {
  position: relative;
  display: grid;
  flex: 1 1 0;
  place-items: center;
  box-sizing: border-box;
  min-width: 0;
  aspect-ratio: 1;
  padding: 24px 12px;
}

.upper-teams-canvas .upper-team + .upper-team {
  margin-left: -5px;
}

.upper-teams-canvas .upper-team-circle {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: rgb(255 255 255 / 20%);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  pointer-events: none;
}

.upper-teams-canvas .upper-team > div {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  width: 100%;
  min-width: 0;
  overflow-wrap: anywhere;
}

.upper-teams-canvas .upper-team h3 {
  margin: 0;
  font-size: 25px;
  line-height: 1.45;
  font-weight: 400;
}

.upper-teams-canvas .upper-team > div > p:last-child {
  width: 100%;
  margin: 0;
  font-size: 18px;
  line-height: 1.8;
}

.upper-teams-canvas .upper-team > div > p:last-child > .iel-design-copy {
  display: block;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}

@media (min-width: 768px) and (max-width: 1199px) {
  .iel-home {
    --upper-intro-base-bottom: 120px;
    --upper-teams-transition-gap: 120px;
  }

  .upper-teams {
    padding-bottom: clamp(80px, 12vw, 140px);
  }

  .upper-teams-canvas {
    width: calc(100% - 64px);
    max-width: none;
    aspect-ratio: auto;
    gap: clamp(40px, 6vw, 64px);
    padding: clamp(72px, 10vw, 112px) clamp(24px, 4vw, 64px) clamp(64px, 9vw, 112px);
  }

  .upper-teams-canvas > .upper-background {
    border-radius: 48px;
    transform: none;
  }

  .upper-teams-canvas > h2 {
    position: relative;
    top: auto;
    left: auto;
    width: auto;
    padding: 0;
    margin: 0 auto clamp(40px, 6vw, 64px);
  }

  .upper-teams-canvas > h2 > .iel-design-copy {
    display: block;
    width: 100%;
    max-width: min(100%, 640px);
    margin-inline: auto;
    font-size: clamp(28px, 4.2vw, 36px);
    line-height: 1.45;
  }

  .upper-teams-canvas > h2 > .iel-design-copy > br.iel-break-mobile {
    display: revert;
  }

  .upper-teams-canvas > .upper-team-grid {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    max-width: none;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(20px, 3vw, 32px);
    margin: 0;
    padding: 0;
    transform: none;
  }

  .upper-teams-canvas .upper-team {
    flex: none;
    width: auto;
    max-width: none;
    min-width: 0;
    min-height: clamp(300px, 34vw, 400px);
    height: auto;
    aspect-ratio: 1;
    padding: clamp(24px, 4vw, 48px) clamp(16px, 3vw, 40px);
    display: grid;
    place-items: center;
  }

  .upper-teams-canvas .upper-team + .upper-team {
    margin: 0;
  }

  .upper-teams-canvas .upper-team-circle {
    inset: 50% auto auto 50%;
    width: min(100%, 420px);
    height: auto;
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
  }

  .upper-teams-canvas .upper-team > div {
    position: relative;
    inset: auto;
    z-index: 1;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    text-align: center;
  }

  .upper-teams-canvas .upper-team > div > .upper-red,
  .upper-teams-canvas .upper-team > div > h3,
  .upper-teams-canvas .upper-team > div > p:last-child {
    position: static;
    left: auto;
    width: auto;
    margin-inline: auto;
  }

  .upper-teams-canvas .upper-team > div > .upper-red {
    margin-bottom: 8px;
  }

  .upper-teams-canvas .upper-team > div > h3 {
    margin-bottom: 8px;
    font-size: clamp(19px, 2.4vw, 25px);
  }

  .upper-teams-canvas .upper-team > div > p:last-child {
    font-size: clamp(14px, 1.8vw, 18px);
    line-height: 1.8;
  }
}

@media (max-width: 767px), (pointer: coarse) and (min-width: 768px) and (max-width: 1199px) {
  .iel-home {
    --upper-intro-base-bottom: 62.79px;
    --upper-teams-transition-gap: calc(87px + clamp(96px, 26.616915vw, 107px));
  }

  .upper-teams {
    padding: 0 0 11px;
  }

  .upper-teams-canvas {
    width: min(355.335px, 100%);
    min-height: 1280px;
    height: auto;
    gap: 32px;
    padding: 85px 2px;
    border-radius: 30px;
    background: #dfcfc2;
  }

  .upper-teams-canvas > h2 {
    width: min(351.335px, 100%);
  }

  .upper-teams-canvas > h2 > .iel-design-copy {
    width: 100%;
    font-size: 25px;
    line-height: 1.45;
  }

  .upper-teams-canvas > .upper-team-grid {
    width: min(250px, 100%);
    flex-direction: column;
    align-items: stretch;
  }

  .upper-teams-canvas .upper-team {
    flex: none;
    width: 100%;
    min-height: 250px;
    height: auto;
    aspect-ratio: auto;
    padding: 30px 8px;
  }

  .upper-teams-canvas .upper-team + .upper-team {
    margin: -10px 0 0;
  }

  .upper-teams-canvas .upper-team-circle {
    inset: 50% auto auto 50%;
    width: min(250px, 100%);
    height: auto;
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
    background: rgb(255 255 255 / 20%);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
  }

  .upper-teams-canvas .upper-team h3 {
    max-width: 100%;
    font-size: 18px;
    white-space: normal;
  }

  .upper-teams-canvas .upper-team .upper-red {
    font-size: 15px;
    font-weight: 600;
  }

  .upper-teams-canvas .upper-team > div > p:last-child,
  .upper-teams-canvas .upper-team > div > p:last-child > .iel-design-copy {
    font-size: 14px;
    line-height: 1.8;
  }
}

@media (min-width: 768px) {
  @container home-shell (max-width: 767px) {
    .iel-home .upper-teams {
      height: auto;
      min-height: 0;
      margin-top: 40px;
      padding: 0 20px 120px;
      overflow: visible;
    }

    .iel-home .upper-teams-canvas {
      width: 100%;
      max-width: none;
      padding: 72px 2px;
      border-radius: 30px;
    }

    .iel-home .upper-teams-canvas > .upper-team-grid {
      display: flex;
      width: min(250px, 100%);
      max-width: 100%;
      flex-direction: column;
      margin-inline: auto;
    }

    .iel-home .upper-teams-canvas .upper-team {
      flex: none;
      width: 100%;
      min-width: 0;
      min-height: 250px;
      height: auto;
      aspect-ratio: auto;
    }
  }
}
