/* The desktop welcome is a two-pane experience; only the card column scrolls.
   The preview reuses the exact SVG Farometro component from the receipt. */
.is-home .home-layout{min-width:0}
.is-home .home-radar-demo{display:none}
@media(min-width:980px){
 .is-home.wrap{
  /* Use roughly 80% of the viewport, centered with equal 10% side margins.
     Override swipe.css's 720px cap only for the desktop home. */
  width:min(80%,1550px);
  max-width:none;
  height:calc(100vh - 6px);
  height:calc(100dvh - 6px);
  min-height:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  padding:10px clamp(15px,1.6vw,28px) 14px;
 }
 .is-home .top{
  flex:none;
  padding:7px 0 13px;
  margin:0 0 4px;
 }
 .is-home .progress-row{display:none}
 .is-home #stage{flex:1 1 auto;min-height:0;display:flex;overflow:hidden}
 .is-home .home-page{flex:1;min-height:0;min-width:0;display:block;padding:0}
 .is-home .home-layout{
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);
  gap:clamp(24px,3vw,60px);
  height:100%;
  min-height:0;
 }
 .is-home .home-scroll-pane{
  min-width:0;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior-y:contain;
  /* Remain scrollable by trackpad, wheel, touch and keyboard, without a rail. */
  scrollbar-gutter:auto;
  scrollbar-width:none;
  -ms-overflow-style:none;
  padding:13px 12px 34px 4px;
 }
 .is-home .home-scroll-pane::-webkit-scrollbar{display:none;width:0;height:0}
 .is-home .home-scroll-pane:focus-visible{outline:2px dashed #8b6ad9;outline-offset:-2px}
 .is-home .home-hero h1{
  font-size:clamp(38px,4vw,55px);
  max-width:600px;
  margin:0;
  text-align:left;
 }
 .is-home .home-eyebrow{justify-content:flex-start;margin-bottom:15px}
 .is-home .home-coach{margin-top:13px}
 .is-home .home-first .deck{margin-bottom:28px}
 .is-home .home-first .deck .card.card-current{
  min-height:clamp(330px,43svh,438px);
  padding:clamp(25px,3.4vw,36px);
 }
 .is-home .home-first .deck .card.card-next{padding:clamp(25px,3.4vw,36px)}
 .is-home .home-first .card-main h2{font-size:clamp(29px,3.3vw,42px)}
 .is-home .home-first .card .story{font-size:clamp(16px,1.6vw,18px)}
 .is-home .home-start{min-height:68px;font-size:24px}
 .is-home .footer{
  flex:none;
  margin-top:0;
  padding-top:11px;
  background:var(--paper);
  z-index:2;
 }
 .is-home .home-radar-demo{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:13px;
  min-width:0;
  min-height:0;
  max-height:100%;
  overflow:hidden;
  padding:12px 2px 16px 0;
  color:#302159;
 }
 .is-home .home-demo-heading h2{
  margin:7px 0 8px;
  max-width:580px;
  color:#302159;
  font:900 clamp(25px,2.5vw,36px)/1.09 Arial,sans-serif;
  letter-spacing:-.047em;
  text-wrap:balance;
 }
 .is-home .home-demo-eyebrow{
  display:inline-block;
  color:#7a56ab;
  font:900 10px/1.2 "Courier New",monospace;
  letter-spacing:.13em;
 }
 .is-home .home-radar-visual{
  border:1px solid #d3c5e9;
  border-radius:23px;
  background:#fffefa;
  padding:12px 12px 13px;
  box-shadow:4px 5px 0 #e6d9f1;
  min-height:0;
  overflow:hidden;
 }
 .is-home .home-demo-status{
  display:flex;align-items:center;gap:8px;
  padding:2px 3px 11px;
  color:#7556a1;
  font:900 10px/1.2 "Courier New",monospace;
  letter-spacing:.08em;
 }
 .is-home .home-demo-step{margin-left:auto;color:#8d82a5}
 .is-home .home-demo-dot{
  flex:none;display:block;width:9px;height:9px;
  border-radius:50%;
  background:#ee7553;
  box-shadow:0 0 0 4px #fbe5db;
  animation:home-radar-beacon 2.2s ease-in-out infinite;
 }
 .is-home .home-radar-visual .faro-radar-board{
  border-radius:17px;
  padding:9px 8px 9px;
  background:#fcfaff;
  border-color:#d5c7eb;
 }
 .is-home .home-radar-visual .faro-radar-heading{padding:0 6px}
 .is-home .home-radar-visual .faro-radar-svg{
  width:100%;
  max-width:600px;
  max-height:min(40vh,385px);
  margin:0 auto;
 }
 .is-home .home-radar-visual .faro-radar-bottom{padding-top:6px}
 .is-home .home-radar-visual .faro-radar-bottom strong{font-size:clamp(19px,1.8vw,24px)}
 .is-home .home-demo-result{
  display:flex;justify-content:space-between;align-items:center;gap:8px;
  padding:11px 4px 1px;
  color:#64547e;font:900 11px/1.3 "Courier New",monospace;
  letter-spacing:.045em;
 }
 .is-home .home-demo-result strong{font:900 clamp(17px,1.7vw,23px)/1 Arial,sans-serif;color:#6640d3;white-space:nowrap}
 .is-home a.home-demo-explain{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  align-self:flex-start;max-width:100%;margin-top:2px;
  padding:12px 17px;
  border:1.5px solid #cbbdd9;border-radius:12px;
  background:transparent;color:#302159;text-decoration:none;
  font:900 13px/1.3 Arial,sans-serif;
  transition:background .16s ease,transform .16s ease;
 }
 .is-home a.home-demo-explain span{font-size:17px;line-height:1}
 .is-home a.home-demo-explain:hover{background:#fff9f1;transform:translateY(-1px)}
 .is-home a.home-demo-explain:focus-visible{outline:3px solid #6d44dd;outline-offset:3px}

}
@keyframes home-radar-beacon{
  50%{opacity:.45;box-shadow:0 0 0 8px #fbe5db}
}
@media(min-width:980px) and (max-height:790px){
 .is-home .home-radar-demo{gap:8px;padding-top:4px;padding-bottom:8px}
 .is-home .home-demo-heading h2{font-size:clamp(24px,2.1vw,30px);margin:4px 0}
 .is-home .home-radar-visual{padding:8px 10px}
 .is-home .home-demo-status{padding-bottom:6px}
 .is-home .home-radar-visual .faro-radar-svg{max-height:32vh}
 .is-home .home-radar-visual .faro-radar-bottom{padding-top:4px}
}
@media(prefers-reduced-motion:reduce){
 .is-home .home-demo-dot{animation:none}
}
