img,video{max-width:100%}
@media(max-width:720px){.links{display:flex;gap:15px}.links a:not([href='/contact/']){display:none}.nav .wrap{gap:10px}.nav .btn{padding:10px 12px;gap:8px}}
.hero-grid>*,.cards>*,.story>*,.check-grid>*{min-width:0}
.cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.card .pic{height:auto;aspect-ratio:4/3;display:block;overflow:hidden;background:#102e29;position:relative}
.card .pic img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:center}
.card:nth-child(2) .pic img{object-position:58% 50%;filter:saturate(.9) contrast(1.02)}
.card:hover .pic img{transform:none}
.card .pic--video{aspect-ratio:4/3;align-self:start;background:#102e29}
.card .wax-video{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center;display:block;max-height:100%;border:0}
.card .wax-video:fullscreen{width:100%;height:100%;max-height:100%;object-fit:cover;background:#000}
.card .pic img.repair-closeup,.card:hover .pic img.repair-closeup{object-position:50% 65%;transform:scale(1.8);transform-origin:55% 70%;filter:saturate(.9) contrast(1.02)}
.hero-photo{height:auto;aspect-ratio:3/4;width:100%;max-width:340px;justify-self:end;display:flex;flex-direction:column}
.hero-photo>img{position:static;height:auto;aspect-ratio:9/16;object-fit:contain;flex:1;min-height:0}
.photo-bottom{position:static;background:#10382f;padding:16px 20px}
.portrait{height:auto;aspect-ratio:auto;border-radius:24px;overflow:hidden;display:flex;flex-direction:column}
.portrait img{width:100%;height:auto;object-fit:contain;aspect-ratio:3/4}
.portrait-caption{position:static;margin:0;max-width:100%;border-radius:0;padding:16px 22px;background:#e3eee6}
.logo img{object-fit:contain}.footer-logo{height:auto;object-fit:contain}
@media(min-width:721px) and (max-width:1100px){
.cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.card:last-child{grid-column:1/-1;width:calc((100% - 30px)/2);justify-self:center}
.hero-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:30px}
.hero h1{font-size:clamp(46px,6.1vw,68px)}
.nav .wrap{gap:16px}.links{gap:14px}.links a{font-size:12px}.nav .btn{padding:12px 16px;font-size:12px;gap:14px}
.story,.check-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
.sheet .btn{width:100%;gap:12px;font-size:13px;padding:12px 16px}
}
@media(max-width:720px){
.cards{grid-template-columns:minmax(0,1fr)}
.card:last-child{grid-column:auto;width:100%}
.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0}
.hero-copy{padding:32px 0 24px;min-width:0}.hero-copy>p{margin-bottom:22px}.hero-note{margin-top:22px}
.hero-photo{display:block;align-self:stretch;height:auto;width:100%;max-width:none;aspect-ratio:4/3;margin:0 0 28px;min-height:0;border-radius:16px;overflow:hidden}
.hero-photo>img{position:absolute;inset:0;height:100%;max-height:none;width:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 56%}
.hero-photo .photo-bottom{position:absolute;inset:auto 0 0;padding:28px 16px 14px;background:linear-gradient(transparent,#092b30ed);max-width:100%}
.hero-photo .photo-bottom strong{font-size:18px;line-height:1.3}.hero-photo .photo-bottom small{font-size:12px}
.portrait{height:auto;max-width:480px;width:100%;margin:auto;border-radius:20px}
.card .pic{height:auto}.card .pic--video{aspect-ratio:4/3}
.sheet .btn{width:100%;gap:12px;font-size:13px;padding:12px 16px}
.hero h1{font-size:clamp(42px,11.8vw,68px)}
.btn{max-width:100%}.footer a{overflow-wrap:anywhere}
}
@media(max-height:540px) and (orientation:landscape){
.hero-grid{min-height:0}.hero-copy{padding-top:38px;padding-bottom:38px}
.hero-photo{margin-bottom:30px}
.nav .wrap{height:70px}.logo{width:58px;height:58px}
}
@media(min-width:721px){
.hero-grid{align-items:center}
.hero-grid .hero-photo{position:relative;display:block;align-self:center;justify-self:end;width:100%;max-width:420px;height:auto;aspect-ratio:4/5;margin:0;overflow:hidden;border:0;box-shadow:none;padding:0}
.hero-grid .hero-photo>img{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 56%;display:block}
.hero-grid .hero-photo .photo-bottom{position:absolute;inset:auto 0 0;padding:48px 24px 22px;background:linear-gradient(transparent,#092b30e6);max-width:100%}
}