/* Preserve the angled phone design without mobile overflow or stretched images. */
.hero,.hero-copy,.fan{min-width:0}
.hero-copy{width:100%;max-width:100%;margin-inline:auto}
.hero-copy h1,.hero-copy p{margin-inline:auto}
.fan{box-sizing:border-box;width:min(1100px,100%);max-width:100%;margin-inline:auto;padding-bottom:clamp(28px,5svh,54px);gap:0;justify-content:center;align-items:flex-end}
.fan>.phone{box-sizing:border-box;flex:0 0 auto;min-width:0;max-width:none;width:min(16.4vw,190px,18.4svh);height:auto;aspect-ratio:237/512;margin-inline:-.3%}
.fan>.p3{width:min(18.4vw,216px,20svh)}
.fan .phone img{width:100%;height:100%;object-fit:cover;aspect-ratio:237/512}
/* The source LIFT. glass icon is square: always display it as a square. */
.step-card .icon-visual{display:flex;flex:1 1 auto;align-items:center;justify-content:center;min-width:0;min-height:0;padding:28px 0 36px}
.step-card .icon-visual>img{display:block;flex:0 0 auto;width:min(60vw,220px)!important;height:min(60vw,220px)!important;max-width:100%;max-height:220px;aspect-ratio:1/1!important;object-fit:contain;border-radius:22%;transform:none}
@media(max-width:800px){
 .hero{box-sizing:border-box;width:100%;min-height:0;max-height:none;height:calc(100svh - var(--nav));padding:clamp(16px,4svh,32px) 16px 0;grid-template-rows:auto minmax(0,1fr)}
 .hero h1{font-size:clamp(32px,9.4vw,55px)}
 .fan{width:min(100%,600px);height:min(44svh,390px);padding-bottom:clamp(32px,5svh,46px);overflow:visible}
 .fan>.phone{width:23%;flex:0 0 23%;margin-inline:-2.8%;padding:2px}
 .fan>.p3{width:25%;flex-basis:25%}
 .step-card .icon-visual>img{width:min(60vw,210px)!important;height:min(60vw,210px)!important}
}
@media(max-width:800px) and (max-height:700px){
 .fan{width:min(100%,74svh);height:min(44svh,320px)}
 .hero h1{font-size:clamp(29px,8.7vw,47px)}
 .hero-copy>p{margin-top:9px}
 .hero .primary{margin-top:12px;min-height:42px}
}
@media(max-width:350px){
 .topbar-inner{width:calc(100% - 24px)}
 .topbar nav{gap:12px}
 .topbar nav a{font-size:12px}
 .hero h1{font-size:clamp(28px,8.8vw,34px)}
}
