/* Inline cutout walkaround. Keep the photographic gallery independent. */
.car-viewport {
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
  perspective:1200px;
  mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)
}
.car-object {
  width:min(var(--car-width,826px),78%);
  height:auto;
  aspect-ratio:2.01;
  bottom:80px;
  pointer-events:auto;
  transform-origin:50% 75%;
  transition:none
}
.car-object img {
  position:absolute;
  max-width:none;
  width:104.7757%;
  height:158.309%;
  left:-2.6773%;
  top:-39.0671%;
  object-fit:fill;
  filter:drop-shadow(0 12px 12px #0006);
  pointer-events:none
}
.car-object:focus-visible {
  outline:1px dashed #a4d6f96b;
  outline-offset:12px;
  border-radius:6px
}
.angle-dots {
  gap:20px;
  height:14px;
  margin-top:5px
}
.angle-dots:before {
  left:7px;
  right:7px
}
.angle-dots button {
  position:relative;
  padding:6px;
  background:transparent;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  width:14px;
  height:14px
}
.angle-dots button:before {
  content:'';
  display:block;
  width:3px;
  height:3px;
  background:#7d98ad;
  border-radius:50%;
  transition:background .2s,box-shadow .2s,transform .2s
}
.angle-dots button.selected:before {
  background:var(--blue);
  transform:scale(2);
  box-shadow:0 0 8px #a4d6f9a0
}
.angle-dots button:hover:before {
  background:#d1ecff;
  transform:scale(2)
}
.stage-hint {
  min-height:15px
}
.ambient-glow {
  transition:opacity .45s,transform .8s
}
.orbit {
  transition:transform .75s,box-shadow .75s
}
.is-turning .ambient-glow {
  opacity:1.5;
  transform:scale(1.12)
}
.is-turning .orbit {
  transform:rotate(-3deg) scale(1.035);
  box-shadow:0 0 24px #99d6ff19,inset 0 0 16px #99d6ff10
}
.stage-tag {
  right:5%;
  bottom:24%
}
.audio-links {
  display:flex;
  gap:28px;
  flex-wrap:wrap
}
.factory-options {
  margin-top:30px
}
.factory-options>.eyebrow {
  color:var(--muted);
  font-size:8px;
  margin-bottom:16px
}
.factory-options>div {
  display:flex;
  gap:9px;
  flex-wrap:wrap
}
.factory-options>div>span {
  font-size:10px;
  padding:9px 12px;
  border:1px solid var(--line);
  border-radius:3px;
  color:#becbd7
}
.repair-archive {
  padding-top:0
}
.archive-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:15px
}
.archive-photo {
  position:relative;
  overflow:hidden;
  border-radius:4px;
  background:#141e28;
  padding:0;
  display:block;
  text-align:left
}
.archive-photo>img {
  width:100%;
  height:260px;
  object-fit:cover;
  transition:transform .5s
}
.archive-photo:hover>img {
  transform:scale(1.03)
}
.archive-photo>span {
  display:block;
  padding:21px 20px 23px;
  position:relative;
  background:#101820
}
.archive-photo small {
  display:block;
  font-size:8px;
  letter-spacing:.14em;
  color:var(--blue);
  margin-bottom:10px
}
.archive-photo b {
  display:block;
  font-weight:500;
  font-size:13px;
  letter-spacing:-.02em;
  padding-right:18px
}
.archive-photo i {
  position:absolute;
  right:19px;
  bottom:24px;
  font-style:normal;
  color:var(--blue);
  font-size:18px
}
.archive-note {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:45px;
  border-top:1px solid var(--line);
  padding-top:22px;
  margin-top:24px
}
.archive-note p {
  font-size:11px;
  color:var(--muted);
  line-height:1.9;
  max-width:660px
}
.archive-note button {
  white-space:nowrap;
  font-size:10px
}
.sale-reason {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9%;
  padding-top:0;
  padding-bottom:100px
}
.reason-heading {
  position:relative
}
.reason-paws {
  display:block;
  font-size:40px;
  opacity:.45;
  margin-top:23px;
  transform:rotate(-14deg);
  width:max-content
}
.reason-copy {
  padding-top:30px
}
.reason-copy p {
  font-size:12px;
  line-height:1.95;
  color:var(--muted);
  margin-top:18px
}
.reason-copy .reason-lead {
  font-size:16px;
  font-weight:600;
  line-height:1.8;
  color:#dfecf5;
  margin-top:0
}
.reason-copy .text-button {
  margin-top:25px
}
.header-price {
  position:relative;
  padding-top:1px
}
.header-price>small {
  display:block;
  position:absolute;
  right:0;
  bottom:-13px;
  font-size:8px;
  font-weight:500;
  letter-spacing:.02em;
  color:var(--muted)
}
.included-package {
  padding:26px 0;
  border-bottom:1px solid var(--line)
}
.included-package>.eyebrow {
  color:var(--blue);
  font-size:8px;
  margin-bottom:17px
}
.included-package>div {
  display:grid;
  grid-template-columns:1fr 2fr;
  gap:30px
}
.included-package b {
  display:block;
  font-weight:600;
  font-size:16px;
  letter-spacing:-.03em
}
.included-package p>span {
  display:block;
  color:var(--muted);
  font-size:10px;
  margin-top:7px;
  line-height:1.8
}
.closing-action .closing-price {
  margin-bottom:5px
}
.closing-content .closing-action .firm-price {
  font-size:11px;
  color:var(--blue);
  margin:0 0 21px;
  line-height:1.4;
  font-weight:600
}
.mobile-bar>span {
  line-height:1.1
}
.mobile-bar>span>em {
  display:block;
  font-size:8px;
  letter-spacing:.02em;
  font-style:normal;
  font-weight:500;
  color:var(--muted);
  margin-top:5px
}
@media(max-width:760px) {
  .included-package>div {
    grid-template-columns:1fr;
    gap:23px
  }
  .included-package b {
    font-size:15px
  }
  .included-package p>span {
    font-size:10px
  }
  .header-price>small {
    font-size:7px;
    bottom:-11px
  }
  .closing-content .closing-action .firm-price {
    font-size:10px;
    margin-bottom:18px
  }
}
@media(max-width:760px) {
  .sale-reason {
    grid-template-columns:1fr;
    gap:14px;
    padding-bottom:64px
  }
  .reason-copy {
    padding-top:0
  }
  .reason-paws {
    position:absolute;
    right:7px;
    bottom:0;
    font-size:35px;
    opacity:.3;
    margin:0
  }
  .reason-copy .reason-lead {
    font-size:14px
  }
  .reason-copy p {
    font-size:12px
  }
}
@media(max-width:1100px) {
  .archive-photo>img {
    height:220px
  }
  .archive-photo>span {
    padding:18px 15px
  }
  .archive-photo b {
    font-size:12px
  }
  .archive-photo i {
    right:12px;
    bottom:20px
  }
  .archive-note {
    gap:25px
  }
  .archive-note p {
    font-size:10px
  }
}
@media(max-width:760px) {
  .audio-links {
    gap:20px
  }
  .audio-links .text-button {
    font-size:11px
  }
  .factory-options>div>span {
    font-size:9px;
    padding:8px 10px
  }
  .archive-grid {
    grid-template-columns:1fr;
    gap:16px
  }
  .archive-photo>img {
    height:255px
  }
  .archive-photo>span {
    padding:21px
  }
  .archive-photo b {
    font-size:14px
  }
  .archive-photo i {
    right:21px;
    bottom:22px
  }
  .archive-note {
    display:block
  }
  .archive-note p {
    font-size:11px
  }
  .archive-note button {
    margin-top:18px
  }
}
@media(min-width:1550px) {
  .car-object {
    width:min(var(--car-width,826px),78%);
    bottom:95px
  }
}
@media(max-width:1100px) and (min-width:761px) {
  .car-object {
    width:min(calc(var(--car-width,826px)*.84),78%);
    bottom:75px
  }
}
@media(max-width:760px) {
  .car-object {
    width:min(var(--car-width,826px),93%);
    bottom:109px
  }
  .stage-controls {
    bottom:48px
  }
  .angle-dots {
    gap:18px
  }
  .stage-hint {
    font-size:8px
  }
  .car-viewport {
    mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent)
  }
}
@media(max-width:380px) {
  .car-object {
    width:94%;
    bottom:108px
  }
}
