/* About-only variants. Shared homepage CSS remains unchanged. */
.im-about-page .im-about-ab-hero{position:relative;overflow:hidden;background:var(--navy-d);color:#FFFFFF}
.im-about-page .im-about-ab-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;animation:im-about-kb 18s ease-in-out infinite alternate}
@keyframes im-about-kb{from{transform:scale(1)}to{transform:scale(1.08)}}
.im-about-page .im-about-ab-hero-ov{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,17,80,.94) 0%,rgba(13,17,80,.78) 42%,rgba(13,17,80,.25) 100%)}
.im-about-page .im-about-ab-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));background:#FFFFFF;border-radius:24px;box-shadow:0 30px 60px rgba(13,17,80,.16);overflow:hidden}
.im-about-page .im-about-ab-stat{display:flex;flex-direction:column;gap:6px;padding:30px 28px;border-left:1px solid #E3E7F5}
.im-about-page .im-about-ab-stat:first-child{border-left:0}
.im-about-page .im-about-ab-stat b{font-family:'Oswald',sans-serif;font-size:48px;line-height:1;font-weight:700;color:var(--red)}
.im-about-page .im-about-ab-stat:nth-child(even) b{color:var(--navy)}
.im-about-page .im-about-ab-stat span{font-size:15px;color:#474D6E}
.im-about-page .im-about-val{display:flex;gap:16px;align-items:flex-start;padding:18px 20px;border-radius:18px;border:1px solid #E3E7F5;background:#FFFFFF;transition:border-color .3s ease,transform .3s ease}
.im-about-page .im-about-val:hover{border-color:var(--red);transform:translateX(6px)}
.im-about-page .im-about-val-ic{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;background:var(--red);color:#FFFFFF}
.im-about-page .im-about-val:nth-child(2) .im-about-val-ic{background:var(--yellow);color:var(--navy)}
.im-about-page .im-about-val:nth-child(3) .im-about-val-ic{background:var(--navy);color:var(--yellow)}
.im-about-page .im-about-vm{display:flex;flex-direction:column;gap:14px;padding:30px;border-radius:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.im-about-page .im-about-vm-tag{align-self:flex-start;padding:6px 14px;border-radius:999px;background:var(--yellow);color:var(--navy);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.im-about-page .im-about-cred{display:flex;flex-direction:column;gap:4px;padding:18px;border-radius:16px;background:var(--tint);font-size:14px;color:#474D6E}
.im-about-page .im-about-cred b{font-family:'Oswald',sans-serif;font-size:24px;color:var(--navy)}
.im-about-page .im-about-cred:first-child b{color:var(--red)}
.im-about-page .im-about-fwline{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.im-about-page .im-about-fwstep{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:14px;border:1px solid #E3E7F5;border-top:4px solid var(--red)}
.im-about-page .im-about-fwstep:nth-child(2){border-top-color:var(--yellow)}
.im-about-page .im-about-fwstep:nth-child(3){border-top-color:var(--blue)}
.im-about-page .im-about-fwstep:nth-child(4){border-top-color:var(--navy)}
.im-about-page .im-about-fwstep span{font-size:12px;color:#5F6585;font-weight:600}
.im-about-page .im-about-fwstep b{font-size:17px;color:var(--navy)}
.im-about-page .im-about-fwstep em{font-style:normal;font-size:13px;color:#474D6E}
.im-about-page .im-about-tm{position:relative;margin:0;border-radius:22px;overflow:hidden;background:#FFFFFF;aspect-ratio:640/883;box-shadow:0 12px 28px rgba(13,17,80,.08)}
.im-about-page .im-about-tm img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.im-about-page .im-about-tm:hover img{transform:scale(1.05)}
.im-about-page .im-about-tm figcaption{position:absolute;left:12px;right:12px;bottom:12px;display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:14px;background:rgba(13,17,80,.9);color:#FFFFFF;transform:translateY(8px);opacity:.96;transition:transform .35s ease,background .35s ease}
.im-about-page .im-about-tm:hover figcaption{transform:none;background:var(--red)}
.im-about-page .im-about-tm figcaption b{font-size:16px}
.im-about-page .im-about-tm figcaption span{font-size:13px;color:#E3E6F7}
.im-about-page .im-about-tm-join{display:flex;flex-direction:column;justify-content:flex-end;gap:10px;padding:26px;background:var(--red);color:#FFFFFF;transition:background-color .35s ease,color .35s ease}
.im-about-page .im-about-tm-join b{font-family:'Oswald',sans-serif;font-size:48px;line-height:1}
.im-about-page .im-about-tm-join span{font-size:15px;line-height:1.55;color:#FFE9E7}
.im-about-page .im-about-tm-join em{font-style:normal;font-weight:700;color:var(--yellow)}
.im-about-page .im-about-tm-join:hover{color:#FFFFFF;background:var(--navy)}
.im-about-page .im-about-bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:220px;gap:16px}
.im-about-page .im-about-bento figure{position:relative;margin:0;border-radius:22px;overflow:hidden}
.im-about-page .im-about-bento img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.im-about-page .im-about-bento figure:hover img{transform:scale(1.05)}
.im-about-page .im-about-bento figcaption{position:absolute;left:14px;bottom:14px;padding:6px 14px;border-radius:999px;background:#FFFFFF;color:var(--navy);font-size:13px;font-weight:700}
.im-about-page .im-about-bento-a{grid-column:span 2;grid-row:span 2}
.im-about-page .im-about-bento-b{grid-column:span 2}
.im-about-page .im-about-bento-c{grid-column:span 1}
.im-about-page .im-about-bento-d{grid-column:span 1}
@media (max-width:760px){.im-about-page .im-about-bento{grid-template-columns:repeat(2,minmax(0,1fr))}
.im-about-page .im-about-bento-a,.im-about-page .im-about-bento-b{grid-column:span 2}
}


.im-about-page .im-about-about-hero__s1{position: relative; z-index: 2; display: flex; flex-direction: column; gap: 22px; padding-top: 30px; padding-bottom: 150px}
.im-about-page .im-about-about-hero__s2{font-size: 14px; color: #C9CDF0; display: flex; gap: 8px; align-items: center}
.im-about-page .im-about-about-hero__s3{color: #C9CDF0}
.im-about-page .im-about-about-hero__s4{color: #FFFFFF; font-weight: 600}
.im-about-page .im-about-about-hero__s5{max-width: 720px; display: flex; flex-direction: column; gap: 22px; margin-top: 70px}
.im-about-page .im-about-about-hero__s6{font-size: 15px; font-weight: 600; color: var(--yellow)}
.im-about-page .im-about-about-hero__s7{display: inline-block; width: 28px; height: 4px; background: var(--yellow); border-radius: 2px; vertical-align: middle; margin-right: 10px}
.im-about-page .im-about-about-hero__s8{margin: 0; font-size: clamp(42px, 5.4vw, 80px); line-height: 1.05; font-weight: 800; letter-spacing: -.035em; color: #FFFFFF}
.im-about-page .im-about-about-hero__s9{color: var(--yellow)}
.im-about-page .im-about-about-hero__s10{margin: 0; font-size: clamp(17px, 1.5vw, 20px); line-height: 1.65; color: #E3E6F7; max-width: 600px}
.im-about-page .im-about-about-hero__s11{display: flex; gap: 14px; flex-wrap: wrap; margin-top: 6px}
.im-about-page .im-about-about-stats__s1{position: relative; z-index: 3; margin-top: -90px}
.im-about-page .im-about-about-intro__s1{padding: 120px 0}
.im-about-page .im-about-about-intro__s2{display: flex; flex-wrap: wrap; gap: 64px; align-items: center}
.im-about-page .im-about-about-intro__s3{flex: 1 1 460px; position: relative}
.im-about-page .im-about-about-intro__s4{position: absolute; right: -22px; bottom: -26px; background: var(--yellow); color: var(--navy); border-radius: 18px; padding: 16px 20px; box-shadow: 0 18px 40px rgba(13,17,80,.18); font-weight: 800; font-size: 18px}
.im-about-page .im-about-about-intro__s5{flex: 1 1 480px; display: flex; flex-direction: column; gap: 20px}
.im-about-page .im-about-about-intro__s6{font-size: clamp(30px, 3.4vw, 46px)}
.im-about-page .im-about-about-intro__s7{margin: 0; font-size: 17px; line-height: 1.8; color: #474D6E}
.im-about-page .im-about-about-intro__s8{display: flex; flex-direction: column; gap: 14px; margin-top: 6px}
.im-about-page .im-about-about-intro__s9{margin: 0 0 4px; font-size: 18px; font-weight: 700; color: var(--navy)}
.im-about-page .im-about-about-intro__s10{margin: 0; font-size: 15px; line-height: 1.6; color: #474D6E}
.im-about-page .im-about-about-vision__s1{background: radial-gradient(ellipse 60% 80% at 90% 0%, rgba(47,91,255,.35) 0%, rgba(47,91,255,0) 60%), var(--navy); color: #FFFFFF; padding: 120px 0}
.im-about-page .im-about-about-vision__s2{display: flex; flex-wrap: wrap; gap: 56px; align-items: stretch}
.im-about-page .im-about-about-vision__s3{flex: 1.2 1 520px; display: flex; flex-direction: column; gap: 20px}
.im-about-page .im-about-about-vision__s4{margin: 0; font-size: clamp(20px, 2vw, 26px); line-height: 1.5; font-weight: 600}
.im-about-page .im-about-about-vision__s5{margin: 0; font-size: 15px; line-height: 1.7; color: #C9CDF0}
.im-about-page .im-about-about-vision__s6{background: var(--red); color: #FFFFFF}
.im-about-page .im-about-about-vision__s7{display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px}
.im-about-page .im-about-about-vision__s8{display: flex; flex-direction: column; gap: 8px}
.im-about-page .im-about-about-vision__s9{color: var(--yellow)}
.im-about-page .im-about-about-vision__s10{flex: 1 1 420px; display: flex}
.im-about-page .im-about-about-vision__s11{flex: 1; display: flex}
.im-about-page .im-about-about-vision__s12{height: 100%; object-fit: cover}
.im-about-page .im-about-about-framework__s1{display: flex; flex-direction: column; gap: 14px; margin-top: 8px}
.im-about-page .im-about-about-framework__s2{margin: 0; font-size: 18px; font-weight: 700; color: var(--navy)}
.im-about-page .im-about-about-founder__s1{padding: 120px 0}
.im-about-page .im-about-about-founder__s2{display: flex; flex-wrap: wrap; gap: 64px; align-items: center}
.im-about-page .im-about-about-founder__s3{flex: 0 1 420px; position: relative}
.im-about-page .im-about-about-founder__s4{aspect-ratio: 4 / 5; border-radius: 28px}
.im-about-page .im-about-about-founder__s5{position: absolute; left: 20px; right: 20px; bottom: 20px; background: #FFFFFF; border-radius: 18px; padding: 16px 20px; box-shadow: 0 18px 40px rgba(13,17,80,.16)}
.im-about-page .im-about-about-founder__s6{font-size: 20px; font-weight: 800; color: var(--navy)}
.im-about-page .im-about-about-founder__s7{font-size: 14px; color: var(--red); font-weight: 600}
.im-about-page .im-about-about-founder__s8{flex: 1 1 520px; display: flex; flex-direction: column; gap: 22px}
.im-about-page .im-about-about-founder__s9{font-size: clamp(30px, 3.4vw, 46px)}
.im-about-page .im-about-about-founder__s10{list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px}
.im-about-page .im-about-about-founder__s11{display: flex; flex-direction: column; gap: 14px; margin-top: 8px}
.im-about-page .im-about-about-founder__s12{margin: 0; font-size: 18px; font-weight: 700; color: var(--navy)}
.im-about-page .im-about-about-team__s1{padding: 120px 0; background: var(--tint)}
.im-about-page .im-about-about-team__s2{display: flex; flex-direction: column; gap: 48px}
.im-about-page .im-about-about-team__s3{display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 24px}
.im-about-page .im-about-about-team__s4{display: flex; flex-direction: column; gap: 18px; max-width: 760px}
.im-about-page .im-about-about-team__s5{font-size: clamp(30px, 3.4vw, 46px)}
.im-about-page .im-about-about-team__s6{margin: 0; font-size: 17px; line-height: 1.7; color: #474D6E}
.im-about-page .im-about-about-team__s7{display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 20px}
.im-about-page .im-about-about-culture__s1{padding: 120px 0}
.im-about-page .im-about-about-culture__s2{display: flex; flex-direction: column; gap: 40px}
.im-about-page .im-about-about-culture__s3{display: flex; flex-direction: column; gap: 18px; max-width: 760px}
.im-about-page .im-about-about-culture__s4{font-size: clamp(30px, 3.4vw, 46px)}
/* Additional rules only for About; shared component styles are inherited. */
.im-about-page #im-about-main{isolation:isolate;font-size:16px;line-height:normal}
.im-about-page #im-about-main h3{line-height:normal}
.im-about-page #im-about-main .im-about-about-intro__s7 p,.im-about-page #im-about-main .im-about-about-team__s6 p{font-size:inherit;line-height:inherit;color:inherit}
.im-about-page #im-about-main section>h2.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.im-about-page :is(#im-about-main,#im-home-main) .im-home-wrap>*{min-width:0}
.im-about-page .im-home-pic{position:relative;overflow:hidden;border-radius:24px;box-shadow:0 24px 48px rgba(13,17,80,.14)}
.im-about-page .im-home-pic img{display:block;width:100%;height:auto;object-fit:cover}
.im-about-page .im-about-about-vision .im-home-pic img{height:100%}
.im-about-page .im-about-about-hero__s2>span+span::before{content:'›';display:inline-block;margin-right:8px;color:#c9cdf0}
.im-about-page .im-about-about-hero__s2 a{color:inherit}
.im-about-page .im-about-about-hero__s2 a:hover{color:var(--yellow)}
.im-about-page .im-about-about-hero__s2>span:last-child a{color:#fff;font-weight:600}
.im-about-page .im-about-about-hero__s2 [aria-current]{color:#fff;font-weight:600}
.im-about-page #im-about-main p{margin:0}
.im-about-page .im-about-val div p,.im-about-page .im-about-vm div p{font-size:inherit;line-height:inherit;color:inherit}
.im-about-page .im-about-about-hero__s10 p{font-size:inherit;line-height:inherit;color:inherit}
.im-about-page .im-about-vm-tag{margin:0;font-size:13px;line-height:normal}
.im-about-page .im-about-vm h3{margin:0;font-size:16px;font-weight:700;line-height:normal}
.im-about-page .im-about-val-ic svg,.im-about-page .im-about-val-ic img{width:24px;height:24px;object-fit:contain}
.im-about-page .im-about-founder-photo{padding:0;overflow:hidden;width:100%;min-height:300px}
.im-about-page .im-about-founder-photo img{width:100%;height:100%;object-fit:cover}
.im-about-page .im-about-about-founder__s3{width:100%}
.im-about-page .im-about-about-founder__s4{aspect-ratio:4/5}
.im-about-page .im-about-about-founder__s5{z-index:1}
.im-about-page .im-about-about-team .im-about-tm{max-width:100%}
.im-about-page .im-about-gallery-tile.im-about-tile-large{grid-column:span 2;grid-row:span 2}
.im-about-page .im-about-gallery-tile.im-about-tile-wide{grid-column:span 2}
.im-about-page .im-about-gallery-tile.im-about-tile-small{grid-column:span 1}
.im-about-page .im-about-project-heading{margin:0;font-weight:700}
.im-about-page .im-about-project-heading>span{display:block}
.im-about-page .im-home-projects__s13{margin:0}
.im-about-page :is(#im-about-main,#im-home-main) :is(.im-about-about-intro,.im-about-about-founder,.im-about-about-team,.im-about-about-culture) .im-home-h2{font-size:clamp(30px,3.4vw,46px)}
.im-about-page .im-home-booking .im-home-h2{color:#fff}
@media(max-width:960px){
 .im-about-page .im-about-ab-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 .im-about-page .im-about-ab-stat:nth-child(3){border-left:0;border-top:1px solid #e3e7f5}
 .im-about-page .im-about-ab-stat:nth-child(4){border-top:1px solid #e3e7f5}
 .im-about-page .im-about-about-intro__s2,.im-about-page .im-about-about-founder__s2{gap:40px}
 .im-about-page .im-about-about-founder__s3{flex:0 1 420px;margin:0 auto}
 .im-about-page .im-about-about-hero__s5{margin-top:40px}
 .im-about-page .im-about-about-vision .im-home-pic{min-height:340px}
}
@media(max-width:760px){
 .im-about-page .im-about-about-intro,.im-about-page .im-about-about-vision,.im-about-page .im-about-about-founder,.im-about-page .im-about-about-team,.im-about-page .im-about-about-culture{padding:72px 0}
 .im-about-page .im-about-about-hero__s1{padding-bottom:130px}
 .im-about-page .im-about-ab-stat{padding:24px 18px}
 .im-about-page .im-about-ab-stat b{font-size:40px}
 .im-about-page .im-about-ab-stat span{font-size:13px}
 .im-about-page .im-about-about-team__s7{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .im-about-page .im-about-tm figcaption{left:8px;right:8px;bottom:8px;padding:10px}
 .im-about-page .im-about-tm figcaption b{font-size:13px;line-height:1.4}
 .im-about-page .im-about-tm figcaption span{font-size:11px;line-height:1.4}
 .im-about-page .im-about-tm-join{padding:18px;gap:8px}
 .im-about-page .im-about-tm-join b{font-size:36px}
 .im-about-page .im-about-tm-join span,.im-about-page .im-about-tm-join em{font-size:12px}
 .im-about-page .im-about-bento{grid-auto-rows:170px;gap:12px}
 .im-about-page .im-about-bento figcaption{left:10px;right:10px;bottom:10px;padding:6px 10px;font-size:11px;border-radius:12px;line-height:1.5}
 .im-about-page .im-about-vm{padding:24px}
 .im-about-page .im-about-fwline{grid-template-columns:repeat(2,minmax(0,1fr))}
 .im-about-page .im-about-about-founder__s10{grid-template-columns:repeat(2,minmax(0,1fr))}
 .im-about-page .im-about-cred{padding:14px;font-size:13px}
 .im-about-page .im-about-cred b{font-size:21px}
}
@media(prefers-reduced-motion:reduce){.im-about-page .im-about-ab-hero-img{animation:none}}
