/* =========================================================
   アールズ株式会社 コーポレートサイト（たたき台）
   Design tokens — palette derived from UI UX Pro Max
   "Construction/Architecture" (industrial grey + safety orange)
   × "Trust & Authority" (navy ink). Fonts: Noto Serif JP / Noto Sans JP.
   ========================================================= */
:root{
  --ink:#0E1726; --ink-2:#17243A; --ink-3:#22324C;
  --steel-50:#F5F7F9; --steel-100:#E8ECF1; --steel-200:#D5DCE4; --steel-300:#B4BFCC;
  --steel-500:#64748B; --steel-600:#4A586B; --steel-700:#334155;
  --paper:#FFFFFF;
  --accent:#EA580C;          /* safety orange — fills, rules, CTA bg */
  --accent-ink:#B93E08;      /* orange for text on light (≥4.5:1) */
  --accent-soft:#FDEBDD;
  --on-dark:#E9EEF4; --on-dark-mute:#A9B6C6;
  --serif:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;
  --sans:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  --wrap:1200px; --gutter:clamp(20px,4vw,48px);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --radius:4px;
  --shadow:0 10px 30px -12px rgba(14,23,38,.22),0 2px 6px -2px rgba(14,23,38,.08);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scrollbar-color:var(--steel-500) var(--steel-100)}
body{margin:0;font-family:var(--sans);font-size:16px;line-height:1.9;color:var(--ink);background:var(--steel-50);
  font-feature-settings:"palt" 1;letter-spacing:.02em;caret-color:var(--accent);-webkit-font-smoothing:antialiased}
::selection{background:var(--accent);color:#fff}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--steel-100)}
::-webkit-scrollbar-thumb{background:var(--steel-500);border-radius:10px;border:2px solid var(--steel-100)}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-underline-offset:.28em;text-decoration-thickness:1px}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-999px;top:8px;background:var(--accent);color:#000;padding:8px 14px;z-index:100}
.skip:focus{left:8px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.num,table{font-variant-numeric:tabular-nums}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.45;letter-spacing:.04em;margin:0;text-wrap:balance}
h2{font-size:clamp(1.7rem,1.1rem + 2vw,2.6rem)}
h3{font-size:clamp(1.2rem,1rem + .6vw,1.5rem)}
p{margin:0 0 1em}
.lead{font-size:clamp(1rem,.95rem + .25vw,1.125rem);color:var(--steel-700);max-width:38em}
.todo{display:inline-block;background:#FFF4C2;color:#6B4E00;border:1px dashed #C9A100;padding:0 .4em;border-radius:3px;font-size:.88em;font-weight:500;line-height:1.6}
.muted{color:var(--steel-600)}
.small{font-size:.85rem}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:.6em;min-height:48px;padding:.7em 1.4em;border-radius:var(--radius);
  font-weight:700;font-size:.95rem;text-decoration:none;letter-spacing:.06em;cursor:pointer;border:1px solid transparent;
  transition:background-color .2s var(--ease-out),color .2s,border-color .2s,transform .2s var(--ease-out)}
.btn svg{width:18px;height:18px;flex:none;transition:transform .25s var(--ease-out)}
.btn:hover svg{transform:translateX(3px)}
.btn--primary{background:var(--accent);color:#140700}
.btn--primary:hover{background:#F26B22}
.btn--ghost{border-color:currentColor;color:inherit;background:transparent}
.btn--ghost:hover{background:rgba(255,255,255,.08)}
.btn--dark{background:var(--ink);color:#fff}.btn--dark:hover{background:var(--ink-3)}
.textlink{display:inline-flex;align-items:center;gap:.45em;font-weight:700;color:var(--accent-ink);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.textlink svg{width:16px;height:16px}
.on-dark .textlink{color:#FF9B5E}

/* ---------- Header ---------- */
.site-header{position:fixed;inset:0 0 auto 0;z-index:50;transition:background-color .3s,box-shadow .3s,color .3s;color:#fff}
.site-header .bar{display:flex;align-items:center;justify-content:space-between;height:76px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.brand img{height:30px;width:auto}
.brand .brand-ja{font-family:var(--serif);font-weight:600;font-size:1rem;letter-spacing:.12em;white-space:nowrap}
.site-header.is-dark-top .brand img{filter:brightness(0) invert(1)}
.site-header.is-solid{background:rgba(255,255,255,.97);color:var(--ink);box-shadow:0 1px 0 var(--steel-200)}
.site-header.is-solid .brand img{filter:none}
.nav{display:flex;align-items:center;gap:6px}
.nav a{text-decoration:none;font-size:.9rem;font-weight:500;padding:10px 12px;border-radius:3px;position:relative;white-space:nowrap}
.nav a:not(.btn)::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease-out)}
.nav a:not(.btn):hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.nav .btn{margin-left:10px;min-height:42px;padding:.5em 1.1em}
.menu-btn{display:none;background:none;border:0;color:inherit;width:48px;height:48px;cursor:pointer;padding:12px}
.menu-btn svg{width:24px;height:24px}
.site-header.is-light-top{color:var(--ink)}
@media (max-width:960px){
  .menu-btn{display:block}
  .nav{position:fixed;inset:76px 0 auto 0;background:#fff;color:var(--ink);flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gutter) 24px;
    box-shadow:0 20px 30px -20px rgba(0,0,0,.3);transform:translateY(-8px);opacity:0;visibility:hidden;transition:.25s var(--ease-out)}
  .nav.is-open{transform:none;opacity:1;visibility:visible}
  .nav a{padding:14px 4px;border-bottom:1px solid var(--steel-100);font-size:1rem}
  .nav a:not(.btn)::after{display:none}
  .nav .btn{margin:16px 0 0;justify-content:center}
  .site-header.menu-open{background:#fff;color:var(--ink)}
  .site-header.menu-open .brand img{filter:none}
}

/* ---------- Hero (top) ---------- */
.hero{position:relative;min-height:min(100svh,960px);background:var(--ink);color:var(--on-dark);overflow:hidden;display:flex;align-items:flex-end}
.hero .waves{z-index:0}
.hero .waves--fallback{background:radial-gradient(120% 80% at 80% 20%,#22324C 0%,transparent 60%)}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,23,38,.0) 30%,rgba(14,23,38,.85) 100%),linear-gradient(90deg,rgba(14,23,38,.88) 0%,rgba(14,23,38,.35) 50%,rgba(14,23,38,0) 80%);pointer-events:none;z-index:1}
.hero-inner{position:relative;z-index:2;width:100%;padding-top:140px;padding-bottom:clamp(48px,8vh,96px)}
.hero h1{font-size:clamp(2.2rem,1.2rem + 4.4vw,4.9rem);line-height:1.3;letter-spacing:.06em;color:#fff;font-weight:600}
.hero h1 .line{display:block;overflow:hidden;padding-bottom:.04em}
.hero h1 .line > span{display:inline-block}
.hero h1 em{font-style:normal;color:#FF8A45}
.hero .lead{color:var(--on-dark);margin-top:28px;max-width:36em}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.hero-meta{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:56px;padding-top:20px;border-top:1px solid rgba(233,238,244,.18);font-size:.85rem;color:var(--on-dark-mute)}
.hero-meta strong{color:#fff;font-weight:500}
.scroll-cue{position:absolute;right:var(--gutter);bottom:36px;z-index:2;writing-mode:vertical-rl;font-size:.8rem;letter-spacing:.3em;color:var(--on-dark-mute);display:flex;align-items:center;gap:12px}
.scroll-cue::after{content:"";width:1px;height:64px;background:linear-gradient(var(--on-dark-mute),transparent)}
@media (max-width:720px){.scroll-cue{display:none}.hero-meta{margin-top:36px}}

/* ---------- Sections ---------- */
section{position:relative}
.sec{padding:clamp(80px,11vw,150px) 0}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px 64px;align-items:end;margin-bottom:clamp(40px,6vw,72px)}
.sec-head .lead{margin:0}
@media (max-width:860px){.sec-head{grid-template-columns:1fr}}
.on-dark{background:var(--ink);color:var(--on-dark)}
.on-dark h2,.on-dark h3{color:#fff}
.on-dark .lead,.on-dark .muted{color:var(--on-dark-mute)}
.rule{height:1px;background:var(--steel-200);border:0;margin:0}

/* Two businesses — alternating full-width rows (not cards) */
.biz{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 32px;align-items:center;padding:clamp(40px,6vw,80px) 0;border-top:1px solid var(--steel-200)}
.biz:last-child{border-bottom:1px solid var(--steel-200)}
.biz-media{grid-column:1 / span 7;position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:var(--radius);background:var(--steel-100)}
.biz-media img{width:100%;height:118%;object-fit:cover;will-change:transform}
.biz-body{grid-column:9 / span 4}
.biz--rev .biz-media{grid-column:6 / span 7;order:2}
.biz--rev .biz-body{grid-column:1 / span 4;order:1}
.biz-tag{display:flex;align-items:center;gap:10px;font-size:.85rem;font-weight:700;color:var(--accent-ink);margin:0 0 14px;letter-spacing:.08em}
.biz-tag::before{content:"";width:28px;height:2px;background:var(--accent)}
.biz h3{font-size:clamp(1.5rem,1.1rem + 1.2vw,2.1rem);margin-bottom:18px}
.biz ul{list-style:none;padding:0;margin:22px 0 28px;border-top:1px solid var(--steel-200)}
.biz li{padding:12px 0;border-bottom:1px solid var(--steel-200);font-size:.95rem;display:flex;gap:12px}
.biz li svg{width:18px;height:18px;flex:none;margin-top:.45em;color:var(--accent-ink)}
.biz-links{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}
@media (max-width:860px){
  .biz,.biz--rev{grid-template-columns:1fr}
  .biz-media,.biz-body,.biz--rev .biz-media,.biz--rev .biz-body{grid-column:1/-1;order:initial}
  .biz-body{margin-top:28px}
}
/* App mock drawn in CSS (no fake photo) */
.appmock{position:absolute;inset:0;background:var(--ink-2);display:grid;place-items:center;padding:6%}
.appmock-win{width:100%;height:100%;background:#fff;border-radius:6px;box-shadow:0 30px 60px -20px rgba(0,0,0,.6);display:grid;grid-template-columns:22% 1fr;overflow:hidden}
.appmock-side{background:#0F2447;padding:10% 8%;display:flex;flex-direction:column;gap:7%}
.appmock-side img{width:80%;filter:brightness(0) invert(1);opacity:.95}
.appmock-side span{display:block;height:7px;border-radius:4px;background:rgba(255,255,255,.18)}
.appmock-side span.on{background:var(--accent)}
.appmock-main{padding:5%;display:grid;grid-template-rows:auto 1fr;gap:5%}
.appmock-title{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:clamp(.55rem,.9vw,.8rem);font-weight:700;color:var(--ink)}
.appmock-title b{background:var(--accent);color:#140700;font-size:.85em;padding:.25em .8em;border-radius:3px}
.appmock-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:6px}
.appmock-grid > div{background:var(--steel-100);border-radius:3px;position:relative;overflow:hidden}
.appmock-grid > div::after{content:attr(data-l);position:absolute;left:6%;bottom:6%;font-size:clamp(.45rem,.7vw,.68rem);font-weight:700;color:var(--steel-700);background:#fff;padding:1px 5px;border-radius:2px}
.appmock-grid .ph{background:url(../img/roof-ridge.jpg) center/cover}
.appmock-grid .ph2{background:url(../img/case-munebankin.jpg) center/cover}
.appmock-grid .ph3{background:url(../img/case-supergaltect.jpg) center 60%/cover}
.appmock-grid .doc{background:repeating-linear-gradient(180deg,#fff 0 10px,var(--steel-100) 10px 12px)}
.appmock-grid .chip{background:conic-gradient(from 90deg,#3d4f66 0 25%,#8a6f58 0 50%,#b9c2cd 0 75%,#2d3a2f 0)}

/* Vision / mission typographic block */
.vision{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px 80px}
.vision blockquote{margin:0;font-family:var(--serif);font-size:clamp(1.5rem,1rem + 1.8vw,2.5rem);line-height:1.6;color:#fff;font-weight:500}
.creed{list-style:none;padding:0;margin:0;counter-reset:c}
.creed li{display:grid;grid-template-columns:3.2em 1fr;padding:22px 0;border-top:1px solid rgba(233,238,244,.16);font-family:var(--serif);font-size:clamp(1.05rem,1rem + .3vw,1.25rem);color:#fff}
.creed li:last-child{border-bottom:1px solid rgba(233,238,244,.16)}
.creed li span{color:#FF8A45;font-family:var(--serif)}
@media (max-width:860px){.vision{grid-template-columns:1fr}}

/* Durability bars — the authored scroll moment */
.dura{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:40px 72px;align-items:start}
.bars{display:grid;gap:26px}
.bar-row{display:grid;grid-template-columns:7.5em 1fr;align-items:center;gap:16px}
.bar-row dt{font-weight:700}
.bar-row dd{margin:0}
.bar-track{position:relative;height:46px;background:var(--steel-100);border-radius:2px;overflow:hidden}
.bar-fill{position:absolute;inset:0 auto 0 0;background:var(--steel-500);display:flex;align-items:center;justify-content:flex-end;padding-right:14px;color:#fff;font-weight:700;font-size:.95rem;white-space:nowrap;transform-origin:left center}
.bar-row.is-galva .bar-fill{background:var(--accent);color:#140700}
.bar-scale{display:grid;grid-template-columns:repeat(4,1fr);margin-left:calc(7.5em + 16px);font-size:.8rem;color:var(--steel-600);border-top:1px solid var(--steel-300);padding-top:6px}
.bar-scale span:last-child{text-align:right}
.dura-table{width:100%;border-collapse:collapse;margin-top:36px;font-size:.92rem}
.dura-table th,.dura-table td{padding:12px 10px;border-bottom:1px solid var(--steel-200);text-align:left}
.dura-table thead th{font-size:.8rem;color:var(--steel-600);font-weight:500;border-bottom-color:var(--steel-300)}
.dura-table tr.hl td,.dura-table tr.hl th{color:var(--accent-ink);font-weight:700}
@media (max-width:860px){.dura{grid-template-columns:1fr}.bar-row{grid-template-columns:5.2em 1fr}.bar-scale{margin-left:calc(5.2em + 16px)}}

/* Works strip */
.works{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
.work{grid-column:span 4;text-decoration:none;display:flex;flex-direction:column;gap:14px}
.work:first-child{grid-column:span 6;grid-row:span 2}
.work:nth-child(2),.work:nth-child(3){grid-column:span 6}
.work:nth-child(2),.work:nth-child(3){display:grid;grid-template-columns:40% 1fr;gap:20px;align-items:start}
.work-img{overflow:hidden;border-radius:var(--radius);background:var(--steel-100);aspect-ratio:4/3}
.work:first-child .work-img{aspect-ratio:auto;height:100%;min-height:380px}
.work-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-out)}
.work:hover .work-img img{transform:scale(1.04)}
.work h3{font-size:1.1rem;line-height:1.6}
.work .meta{font-size:.8rem;color:var(--steel-600);margin:0 0 6px;display:flex;gap:12px;flex-wrap:wrap}
.work p{font-size:.9rem;color:var(--steel-700);margin:8px 0 0}
.work:first-child{display:grid;grid-template-rows:1fr auto}
@media (max-width:860px){.works{grid-template-columns:1fr}.work,.work:first-child,.work:nth-child(2),.work:nth-child(3){grid-column:1/-1;grid-row:auto}
  .work:first-child .work-img{min-height:0;aspect-ratio:4/3}}

/* Company summary table */
.dl-table{display:grid;grid-template-columns:11em 1fr;margin:0;border-top:1px solid var(--steel-300)}
.dl-table dt,.dl-table dd{margin:0;padding:18px 4px;border-bottom:1px solid var(--steel-200)}
.dl-table dt{font-weight:700;color:var(--steel-700);font-size:.92rem}
@media (max-width:600px){.dl-table{grid-template-columns:1fr}.dl-table dt{border-bottom:0;padding-bottom:0}.dl-table dd{padding-top:4px}}

/* CTA band */
.cta{background:var(--ink);color:var(--on-dark);position:relative;overflow:hidden}
.cta .wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:center;padding-top:clamp(64px,8vw,110px);padding-bottom:clamp(64px,8vw,110px)}
.cta h2{color:#fff}
.cta-routes{display:grid;gap:12px}
.cta-route{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;border:1px solid rgba(233,238,244,.22);border-radius:var(--radius);text-decoration:none;transition:border-color .2s,background-color .2s}
.cta-route:hover{border-color:var(--accent);background:rgba(234,88,12,.08)}
.cta-route b{display:block;color:#fff;font-size:1.05rem}
.cta-route small{color:var(--on-dark-mute)}
.cta-route svg{width:22px;height:22px;color:#FF8A45;flex:none}
.cta-stripes{position:absolute;inset:0;opacity:.5;pointer-events:none}
@media (max-width:860px){.cta .wrap{grid-template-columns:1fr}}

/* Footer */
.site-footer{background:#0A111D;color:var(--on-dark-mute);font-size:.88rem;padding:64px 0 28px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.site-footer .brand img{filter:brightness(0) invert(1);height:28px}
.site-footer .brand{color:#fff;margin-bottom:18px}
.site-footer h4{color:#fff;font-size:.9rem;margin:0 0 12px;font-weight:700;letter-spacing:.08em}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.site-footer a{text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}
.copy{margin-top:48px;padding-top:20px;border-top:1px solid rgba(233,238,244,.1);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.78rem}
@media (max-width:860px){.foot-grid{grid-template-columns:1fr}}

/* ---------- Sub page hero ---------- */
.page-hero{position:relative;background:var(--ink);color:var(--on-dark);padding:clamp(150px,18vw,210px) 0 clamp(56px,7vw,90px);overflow:hidden}
.page-hero .waves{opacity:.55}
.page-hero .wrap{position:relative;z-index:2}
.page-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,23,38,.92) 20%,rgba(14,23,38,.25));z-index:1;pointer-events:none}
.page-hero h1{font-size:clamp(2rem,1.2rem + 3vw,3.6rem);color:#fff;line-height:1.35}
.page-hero .lead{color:var(--on-dark);margin-top:22px}
.crumb{font-size:.8rem;color:var(--on-dark-mute);margin-bottom:22px;display:flex;gap:10px}
.crumb a{text-decoration:none}.crumb a:hover{color:#fff}
.page-hero .hero-actions{margin-top:30px}
.page-hero-media{position:absolute;inset:0 0 0 45%;z-index:0}
.page-hero-media img{width:100%;height:100%;object-fit:cover;opacity:.75}

/* Split content */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px 80px;align-items:center}
.split--top{align-items:start}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.figure{margin:0}
.figure img{border-radius:var(--radius);width:100%}
.figure figcaption{font-size:.8rem;color:var(--steel-600);margin-top:10px}

/* Points list (editorial, no cards) */
.points{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:2px solid var(--ink)}
.points li{padding:28px 28px 8px 0;border-right:1px solid var(--steel-200)}
.points li + li{padding-left:28px}
.points li:last-child{border-right:0}
.points b{display:block;font-family:var(--serif);font-size:1.2rem;font-weight:600;margin-bottom:10px;line-height:1.6}
.points p{font-size:.93rem;color:var(--steel-700)}
@media (max-width:860px){.points{grid-template-columns:1fr}.points li,.points li + li{padding:22px 0 6px;border-right:0;border-bottom:1px solid var(--steel-200)}}

.spec{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--steel-300);border-radius:var(--radius);background:#fff}
.spec div{padding:24px 26px;border-right:1px solid var(--steel-200)}
.spec div:last-child{border-right:0}
.spec dt{font-size:.8rem;color:var(--steel-600);margin-bottom:4px}
.spec dd{margin:0;font-size:1.25rem;font-weight:700}
@media (max-width:700px){.spec{grid-template-columns:1fr}.spec div{border-right:0;border-bottom:1px solid var(--steel-200)}}

.voices{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.voice{display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:start}
.voice img{width:120px;height:140px;object-fit:cover;border-radius:var(--radius)}
.voice cite{display:block;font-style:normal;font-weight:700;margin-bottom:8px}
.voice p{font-size:.93rem;color:var(--steel-700)}
@media (max-width:860px){.voices{grid-template-columns:1fr}.voice{grid-template-columns:88px 1fr}.voice img{width:88px;height:104px}}

.panel{background:#fff;border:1px solid var(--steel-200);border-radius:var(--radius);padding:clamp(24px,4vw,44px)}

/* MyROVA workflow rail */
.flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));position:relative}
.flow::before{content:"";position:absolute;left:0;right:0;top:27px;height:2px;background:rgba(233,238,244,.18)}
.flow .flow-progress{position:absolute;left:0;top:27px;height:2px;background:var(--accent);width:100%;transform-origin:left}
.flow li{position:relative;padding:0 14px 0 0}
.flow .dot{width:56px;height:56px;border-radius:50%;background:var(--ink-2);border:1px solid rgba(233,238,244,.25);display:grid;place-items:center;position:relative;z-index:1;color:#FF8A45}
.flow .dot svg{width:24px;height:24px}
.flow b{display:block;color:#fff;margin-top:18px;font-size:1rem;line-height:1.5}
.flow p{font-size:.85rem;color:var(--on-dark-mute);margin-top:8px;line-height:1.75}
@media (max-width:960px){.flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px}.flow::before,.flow .flow-progress{display:none}}
@media (max-width:640px){.flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 16px}}
@media (max-width:420px){.flow{grid-template-columns:1fr}.flow li{display:grid;grid-template-columns:56px 1fr;gap:0 18px;padding:0}.flow b{margin-top:6px}.flow p,.flow .flow-shot{grid-column:2}}

.feature{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px 72px;padding:48px 0;border-top:1px solid var(--steel-200)}
.feature:last-child{border-bottom:1px solid var(--steel-200)}
.feature h3{font-size:clamp(1.3rem,1rem + 1vw,1.8rem)}
.feature ul{margin:0;padding-left:1.2em;color:var(--steel-700)}
.feature li{margin-bottom:.5em}
@media (max-width:860px){.feature{grid-template-columns:1fr}}

/* Pricing */
.pricing{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--steel-300);border-radius:var(--radius);background:#fff;overflow:hidden}
.plan{padding:32px 26px 28px;border-right:1px solid var(--steel-200);display:flex;flex-direction:column;position:relative}
.plan:last-child{border-right:0}
.plan.is-rec{background:var(--ink);color:var(--on-dark)}
.plan.is-rec h3,.plan.is-rec .price{color:#fff}
.plan .rec{position:absolute;top:0;left:26px;transform:translateY(-50%);background:var(--accent);color:#140700;font-size:.8rem;font-weight:700;padding:2px 10px;border-radius:2px}
.plan h3{font-family:var(--sans);font-weight:700;font-size:1.2rem;letter-spacing:.06em}
.plan .seats{font-size:.88rem;color:var(--steel-600);margin:4px 0 18px}
.plan.is-rec .seats,.plan.is-rec .note,.plan.is-rec dt{color:var(--on-dark-mute)}
.price{font-size:2.1rem;font-weight:700;line-height:1.2;letter-spacing:0}
.price small{font-size:.9rem;font-weight:500;margin-left:2px}
.price .pre{display:block;font-size:.8rem;font-weight:500;color:inherit;opacity:.75;margin-bottom:4px}
.plan .note{font-size:.8rem;color:var(--steel-600);margin:6px 0 0}
.plan dl{margin:20px 0 24px;padding-top:16px;border-top:1px solid var(--steel-200);font-size:.85rem;display:grid;gap:6px}
.plan.is-rec dl{border-top-color:rgba(233,238,244,.18)}
.plan dt{color:var(--steel-600)}.plan dd{margin:0 0 8px;font-weight:700}
.plan .free{display:inline-block;margin-top:10px;font-size:.8rem;font-weight:700;color:var(--accent-ink);background:var(--accent-soft);padding:2px 8px;border-radius:2px}
.plan .btn{margin-top:auto;justify-content:center}
@media (max-width:1024px){.pricing{grid-template-columns:1fr 1fr}.plan:nth-child(2){border-right:0}.plan:nth-child(-n+2){border-bottom:1px solid var(--steel-200)}}
@media (max-width:600px){.pricing{grid-template-columns:1fr}.plan{border-right:0!important;border-bottom:1px solid var(--steel-200)}}

.faq details{border-bottom:1px solid var(--steel-200)}
.faq details:first-child{border-top:1px solid var(--steel-200)}
.faq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-weight:700;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:8px;top:50%;width:12px;height:12px;border-right:2px solid var(--steel-600);border-bottom:2px solid var(--steel-600);transform:translateY(-70%) rotate(45deg);transition:transform .25s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{color:var(--steel-700);font-size:.95rem;padding-bottom:12px;max-width:70ch}

.secure{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid rgba(233,238,244,.18)}
.secure > div{padding:28px 28px 8px 0}
.secure > div + div{padding-left:28px;border-left:1px solid rgba(233,238,244,.18)}
.secure b{color:#fff;display:block;margin-bottom:8px;font-size:1.05rem}
.secure p{color:var(--on-dark-mute);font-size:.9rem}
@media (max-width:860px){.secure{grid-template-columns:1fr}.secure > div + div{padding-left:0;border-left:0;border-top:1px solid rgba(233,238,244,.18)}}

/* Works page list */
.case{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px 64px;padding:56px 0;border-top:1px solid var(--steel-200);align-items:center}
.case:last-of-type{border-bottom:1px solid var(--steel-200)}
.case-img{aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius);background:var(--steel-100)}
.case-img img{width:100%;height:100%;object-fit:cover}
.case .meta{display:flex;gap:16px;flex-wrap:wrap;font-size:.85rem;color:var(--steel-600);margin:14px 0 18px}
.case .meta span{display:inline-flex;align-items:center;gap:6px}
.case .meta svg{width:15px;height:15px}
@media (max-width:860px){.case{grid-template-columns:1fr}}

/* Company */
.greeting{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px 80px}
.greeting p{font-family:var(--serif);font-size:clamp(1.1rem,1rem + .4vw,1.35rem);line-height:2.1}
.sign{margin-top:28px;font-family:var(--serif);font-size:1.05rem}
.sign b{font-size:1.4rem;margin-left:.6em;font-weight:600}
@media (max-width:860px){.greeting{grid-template-columns:1fr}}
.map{aspect-ratio:16/8;width:100%;border:0;border-radius:var(--radius);filter:grayscale(.85) contrast(1.05);background:var(--steel-100)}

/* Forms */
.form{display:grid;gap:26px}
.field label,.field legend{display:flex;align-items:center;gap:10px;font-weight:700;font-size:.95rem;margin-bottom:8px}
.req{font-size:.8rem;font-weight:700;background:var(--accent);color:#140700;padding:1px 7px;border-radius:2px}
.opt{font-size:.8rem;font-weight:700;background:var(--steel-200);color:var(--steel-700);padding:1px 7px;border-radius:2px}
.field input[type=text],.field input[type=email],.field input[type=tel],.field textarea,.field select{width:100%;font:inherit;font-size:1rem;padding:14px 16px;border:1px solid var(--steel-300);border-radius:var(--radius);background:#fff;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.field textarea{min-height:180px;resize:vertical}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(234,88,12,.2)}
.field input::placeholder,.field textarea::placeholder{color:#6B7787}
.field .hint{font-size:.8rem;color:var(--steel-600);margin-top:6px}
.field .err{display:none;font-size:.85rem;color:#B42318;margin-top:6px;font-weight:500}
.field.is-invalid input,.field.is-invalid textarea,.field.is-invalid select{border-color:#B42318}
.field.is-invalid .err{display:block}
fieldset{border:0;padding:0;margin:0}
.choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.choice{position:relative}
.choice input{position:absolute;opacity:0;inset:0;cursor:pointer}
.choice span{display:block;padding:14px 16px;border:1px solid var(--steel-300);border-radius:var(--radius);background:#fff;font-weight:500;font-size:.92rem;line-height:1.5;transition:.2s;height:100%}
.choice span small{display:block;color:var(--steel-600);font-weight:400;font-size:.78rem}
.choice input:checked + span{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#FFF8F3}
.choice input:focus-visible + span{outline:3px solid var(--accent);outline-offset:2px}
@media (max-width:700px){.choices{grid-template-columns:1fr}}
.agree{display:flex;gap:12px;align-items:flex-start;font-size:.92rem}
.agree input{width:20px;height:20px;accent-color:var(--accent);margin-top:.3em}
.form-done{display:none;padding:22px;border:1px solid var(--accent);background:#FFF8F3;border-radius:var(--radius)}
.form-done.is-shown{display:block}
.contact-aside{display:grid;gap:28px;align-content:start}
.contact-aside .panel h3{font-size:1.1rem;margin-bottom:10px}
.contact-layout{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:48px 64px}
@media (max-width:960px){.contact-layout{grid-template-columns:1fr}}

/* motion helpers */
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.page-hero h1 .line{display:block;overflow:hidden;padding-bottom:.04em}
.page-hero h1 .line>span{display:inline-block}
.flow-wrap{position:relative}
/* React Bits Waves base (from Waves.css) */
.waves{position:absolute;inset:0;overflow:hidden}
.waves__canvas{position:absolute;inset:0;display:block;width:100%;height:100%}
h1,h2,h3,blockquote,.biz h3{word-break:auto-phrase}
.pricing{overflow:visible}
.plan:first-child{border-radius:var(--radius) 0 0 var(--radius)}
.plan .rec{top:-1px;left:auto;right:18px;transform:translateY(-55%)}
.page-hero .brandmark{position:absolute;right:var(--gutter);bottom:clamp(56px,7vw,90px);z-index:2;width:min(30vw,380px);filter:brightness(0) invert(1);opacity:.92}
@media (max-width:860px){.page-hero .brandmark{position:static;width:180px;margin-bottom:24px}}
.flow-sec{background:var(--ink-2)}
.flow-sec .flow .dot{background:var(--ink)}
.bar-scale{display:flex;justify-content:space-between}
.mission-cap{margin-top:22px;color:var(--on-dark-mute);font-size:.9rem;letter-spacing:.12em}
.creed-h{font-size:1.25rem;margin-bottom:8px}
.biz-body{grid-column:8 / span 5}
.biz--rev .biz-body{grid-column:1 / span 5}
.biz-sub{font-family:var(--serif);font-size:1.15rem;margin:-6px 0 16px;color:var(--steel-700)}
.appmock-side .wm{color:#fff;font-weight:700;font-size:clamp(.5rem,.9vw,.85rem);letter-spacing:.02em}
.hero .waves{opacity:1}
@media (max-width:860px){.biz-body,.biz--rev .biz-body{grid-column:1/-1}}
.choice{display:block;width:100%}.choice span{width:100%}
.panel-h{font-size:1.1rem;margin-bottom:10px}
.site-footer h4{font-size:1rem}
.points--dark{border-top-color:#FF8A45}
.points--dark li{border-color:rgba(233,238,244,.16)!important}
.points--dark b{color:#fff;font-size:1.45rem}
.points--dark p{color:var(--on-dark-mute)}
.lineup{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;align-items:center;border:1px solid var(--steel-300);border-radius:var(--radius);padding:28px}
.product-fig{background:var(--steel-50);border-radius:var(--radius);padding:14px;aspect-ratio:4/3;display:grid;place-items:center}
.product-fig svg{width:100%;height:auto;max-height:100%}
.product h3{font-size:1.5rem;color:#1E4FA0}
.product-use{font-weight:700;font-size:.92rem;margin:6px 0 12px}
.tags{list-style:none;padding:0;margin:0 0 14px;display:flex;flex-wrap:wrap;gap:6px}
.tags li{font-size:.82rem;background:var(--steel-100);padding:3px 10px;border-radius:2px}
.mini{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:0;font-size:.88rem}
.mini dt{color:var(--steel-600)}.mini dd{margin:0;font-weight:500}
@media (max-width:960px){.lineup{grid-template-columns:1fr}}
@media (max-width:520px){.product{grid-template-columns:1fr}}
.video{position:relative;display:block;border-radius:var(--radius);overflow:hidden;aspect-ratio:16/9;background:var(--ink);text-decoration:none}
.video img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.video:hover img{transform:scale(1.03)}
.video .play{position:absolute;left:50%;top:50%;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;background:var(--accent);color:#140700;display:grid;place-items:center;box-shadow:0 10px 30px -8px rgba(0,0,0,.5)}
.video .play svg{width:34px;height:34px;margin-left:4px}
.video-cap{position:absolute;left:0;right:0;bottom:0;padding:28px 16px 12px;color:#fff;font-size:.85rem;font-weight:500;background:linear-gradient(transparent,rgba(14,23,38,.85))}
.site-footer a[href^="tel:"],.site-footer a[href^="mailto:"]{color:#fff}
.product{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);padding:24px}
.product-fig{padding:6px;aspect-ratio:auto;min-height:220px}
.product-fig svg{max-height:none}
.spec--2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:700px){.spec--2{grid-template-columns:1fr}}
.foot-label{display:block;color:#fff;font-size:.8rem;font-weight:700;letter-spacing:.08em;margin-bottom:2px}
.maps{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.maps .map{aspect-ratio:4/3}
.map-h{font-size:1.15rem;margin-bottom:12px}
.map-addr{margin-top:12px;font-size:.95rem}
@media (max-width:860px){.maps{grid-template-columns:1fr}}
/* 3つのポイント：写真付き */
.points--fig li{padding-top:32px}
.pt-fig{margin:0 0 22px;aspect-ratio:16/10;border-radius:var(--radius);overflow:hidden;background:#352B2A}
.pt-fig img{width:100%;height:100%;object-fit:cover;display:block}
.pt-fig--coat img{object-fit:contain;padding:6% 4%}
.pt-key b{color:#FF9B5E!important}
.points--fig .textlink{margin-top:10px}
.crack{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 40px;align-items:center;margin-top:clamp(40px,5vw,64px);padding:clamp(28px,4vw,48px);border:1px solid rgba(255,138,69,.45);border-radius:var(--radius);background:rgba(255,138,69,.06)}
.crack-fig{grid-column:1 / span 7;margin:0}
.crack-fig img{width:100%;height:auto;display:block;border-radius:var(--radius)}
.crack-fig figcaption{margin-top:14px;font-size:1.1rem;font-weight:700;color:#fff;padding-left:14px;border-left:3px solid #E5383B}
.crack-body{grid-column:8 / span 5}
.crack-body h3{font-family:var(--serif);font-size:clamp(1.4rem,2.2vw,1.75rem);color:#fff;margin:0 0 14px;word-break:auto-phrase}
.crack-body > p{color:var(--on-dark-mute);font-size:.95rem}
.crack-cmp{margin:20px 0 0;display:grid;gap:0;border-top:1px solid rgba(233,238,244,.16)}
.crack-cmp div{display:grid;grid-template-columns:7.5em 1fr;gap:12px;padding:12px 0;border-bottom:1px solid rgba(233,238,244,.16)}
.crack-cmp dt{font-weight:700;color:#fff}
.crack-cmp dd{margin:0;color:var(--on-dark-mute)}
.crack-cmp .is-gb dt,.crack-cmp .is-gb dd{color:#FF9B5E;font-weight:700}
@media (max-width:860px){.crack{gap:24px 0}.crack-fig,.crack-body{grid-column:1/-1}.crack-cmp div{grid-template-columns:6.5em 1fr}}
/* トップ 建材事業：下地比較 */
.biz-note{display:grid;grid-template-columns:160px 1fr;gap:16px;align-items:center;margin:4px 0 24px;padding:14px;border:1px solid var(--steel-200);border-radius:var(--radius);background:var(--steel-100)}
.biz-note img{width:100%;height:auto;border-radius:calc(var(--radius) - 2px);display:block}
.biz-note figcaption{font-size:.88rem;color:var(--steel-700);line-height:1.7}
.biz-note b{display:block;color:var(--ink);font-size:.95rem;margin-bottom:2px}
@media (max-width:480px){.biz-note{grid-template-columns:1fr}}
.crack-fig figcaption,.biz-note figcaption{word-break:auto-phrase}
.pt-fig--coat img{padding:3% 2%}
.dd-link{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.field[hidden]{display:none!important}
/* フォーム送信まわり */
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.form{position:relative}
.thanks{padding-top:clamp(140px,16vw,200px)}
.thanks-wrap > *{max-width:760px}
.thanks h1{font-family:var(--serif);font-size:clamp(1.8rem,3.4vw,2.6rem);margin:0 0 20px;word-break:auto-phrase}
.thanks-dl{display:grid;grid-template-columns:6em 1fr;gap:10px 16px;margin:28px 0 0;padding:20px 0;border-top:1px solid var(--steel-200);border-bottom:1px solid var(--steel-200)}
.thanks-dl dt{font-weight:700}.thanks-dl dd{margin:0}
.msg-page{background:var(--steel-100,#F4F6F8)}
.msg{min-height:100vh;display:grid;place-items:center;padding:40px 20px}
.msg-box{max-width:640px;width:100%;background:#fff;border:1px solid var(--steel-200);border-radius:var(--radius);padding:clamp(28px,5vw,48px)}
.msg-logo{display:inline-block;font-weight:700;color:var(--ink);text-decoration:none;margin-bottom:20px}
.msg-box h1{font-family:var(--serif);font-size:1.7rem;margin:0 0 12px}
.msg-errors{margin:16px 0 28px;padding:16px 20px 16px 2.2em;background:#FEF3F2;border:1px solid #FDA29B;border-radius:var(--radius);color:#912018}
.msg-errors li+li{margin-top:6px}
/* プライバシーポリシー */
.legal{display:grid;grid-template-columns:15em 1fr;gap:clamp(32px,5vw,72px);align-items:start}
.legal-toc{position:sticky;top:96px;border-left:2px solid var(--steel-200);padding-left:18px}
.legal-toc-h{font-weight:700;font-size:.9rem;color:var(--steel-700);margin:0 0 10px}
.legal-toc ol{list-style:none;margin:0;padding:0;counter-reset:toc;font-size:.9rem}
.legal-toc li{counter-increment:toc;margin:0 0 8px}
.legal-toc li::before{content:counter(toc) ". ";color:var(--accent-ink);font-weight:700}
.legal-toc a{color:var(--ink);text-decoration:none}
.legal-toc a:hover{color:var(--accent-ink);text-decoration:underline}
.legal-body{max-width:46em}
.legal-sec{padding:0 0 clamp(32px,4vw,48px);margin:0 0 clamp(32px,4vw,48px);border-bottom:1px solid var(--steel-200);scroll-margin-top:96px}
.legal-sec h2{font-size:clamp(1.25rem,1rem + .8vw,1.6rem);margin:0 0 18px;display:flex;gap:.5em;align-items:baseline}
.legal-no{color:var(--accent-ink);font-family:var(--sans,inherit);font-weight:700}
.legal-sec ul,.legal-sec ol{padding-left:1.4em;margin:0 0 1em}
.legal-sec li{margin:0 0 .5em}
.legal-sec .dl-table{margin-top:20px}
.legal-sec .dl-table dt{white-space:nowrap}
.legal-end{text-align:right}
.legal-end p{margin:0 0 6px}
@media (max-width:900px){.legal{grid-template-columns:1fr}.legal-toc{position:static}}

/* ===== Motion (assets/js/motion.js). Hidden state only under html.mo ===== */
html.mo .rv{opacity:0;transform:translateY(22px)}
html.mo .rv.in{opacity:1;transform:none;transition:opacity .8s var(--ease-out) calc(var(--i,0)*70ms),transform .9s var(--ease-out) calc(var(--i,0)*70ms)}
.hero,.page-hero{isolation:isolate}
html.mo .hero::after,html.mo .page-hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.06) 50%,transparent 60%);background-size:250% 100%;animation:sheen 2.6s var(--ease-out) .4s 1 both}
@keyframes sheen{from{background-position:120% 0}to{background-position:-20% 0}}
/* MyROVA layout additions */
.hero-badge{display:inline-block;margin-top:18px;padding:6px 14px;border:1px solid rgba(255,255,255,.25);border-radius:999px;font-size:.9rem;color:#fff}
.page-hero-mg{position:absolute;right:var(--gutter);top:110px;width:min(34vw,420px);z-index:1;opacity:.5}
@media (max-width:860px){.page-hero-mg{display:none}}
.pain{margin:24px 0 0;padding-left:1.2em;color:var(--steel-700)}.pain li{margin-bottom:.4em}
.feature--media{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center}
.feature--media.is-rev .feature-txt{order:2}
@media (max-width:860px){.feature--media.is-rev .feature-txt{order:0}}
.feat-no{display:block;color:var(--accent-ink);font-weight:700;letter-spacing:.08em;margin-bottom:10px}
.feature-txt h3{margin-bottom:18px}
.feature-media{min-width:0;display:grid;gap:16px}
.shot{margin:0}.shot img{display:block;width:100%;height:auto;border-radius:10px;box-shadow:0 30px 60px -24px rgba(14,23,38,.45)}
.shot figcaption{font-size:.8rem;color:var(--steel-500);margin-top:8px}
.devices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
@media (max-width:760px){.devices{grid-template-columns:1fr}}
.devices>div{border-top:1px solid var(--steel-200);padding-top:20px}.devices p{color:var(--steel-700);margin:.4em 0 0}
.dev{display:block;border:2px solid var(--ink-3);border-radius:8px;margin-bottom:14px}
.dev--phone{width:34px;height:60px}.dev--tab{width:84px;height:60px}.dev--land{width:60px;height:34px;margin-top:13px;margin-bottom:27px}
.faq-cat{font-size:1rem;color:var(--steel-500);margin:28px 0 8px}.faq-cat:first-child{margin-top:0}
.sec-ic{display:block;width:32px;height:32px;margin-bottom:12px;color:var(--accent)}
.sec-ic svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:24px}.stat b{font-size:2.4rem;display:block}
.cases{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.case-card img{width:100%;border-radius:8px}
.onboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;padding-left:1.2em}
/* Motion graphics (abstract, not UI) */
.mg{margin:0;width:100%;max-width:520px;justify-self:center}
.mg svg{display:block;width:100%;height:auto;overflow:visible}
.mg rect,.mg circle,.mg path{fill:none;stroke:var(--steel-300);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mg .mg-core,.mg .mg-node.n1{fill:var(--ink);stroke:var(--ink)}
.mg .mg-core-l{stroke:var(--steel-300)}
.mg .mg-acc{fill:var(--accent-soft);stroke:var(--accent)}
.mg .mg-line,.mg .mg-check{stroke:var(--accent);stroke-dasharray:6 6}
.mg .mg-check{stroke:#fff;stroke-width:3;stroke-dasharray:none}
.mg .p,.mg .s,.mg .pg,.mg .r,.mg .mg-card{fill:#fff;stroke:var(--steel-300)}
.mg .mg-folder{fill:var(--steel-100);stroke:var(--steel-500)}
.mg .mg-wall{fill:#D9C7A8;stroke:var(--ink-3)}.mg .mg-roof{stroke:var(--ink);stroke-width:5}.mg .mg-win{fill:#fff;stroke:var(--ink-3)}
.mg .mg-swatch circle:nth-child(1){fill:#D9C7A8}.mg .mg-swatch circle:nth-child(2){fill:#9FB3C8}.mg .mg-swatch circle:nth-child(3){fill:#B9C9A8}
.mg .mg-t{font-size:12px;fill:var(--steel-600)}
.mg .mg-draw{stroke:var(--steel-500)}
.on-dark .mg-draw,.sec-ic .mg-draw{stroke:currentColor}
.page-hero-mg rect,.page-hero-mg path{fill:none;stroke:#A9B7C9;stroke-width:1.5}
.page-hero-mg .mg-core{fill:rgba(234,88,12,.25);stroke:#FF7A2F}.page-hero-mg .mg-line{stroke:#FF7A2F;stroke-dasharray:5 6}
html.mo .mg.in .mg-line,html.mo .page-hero-mg .mg-line{animation:dash 1.6s linear infinite}
@keyframes dash{to{stroke-dashoffset:-24}}
html.mo .page-hero-mg .mg-card{animation:floaty 6s ease-in-out infinite}
html.mo .page-hero-mg .c2{animation-delay:-1.5s}html.mo .page-hero-mg .c3{animation-delay:-3s}html.mo .page-hero-mg .c4{animation-delay:-4.5s}
html.mo .page-hero-mg .mg-core,html.mo .mg.in .mg-core,html.mo .mg.in .mg-node.n1{animation:pulse 3s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes floaty{50%{transform:translateY(-8px)}}
@keyframes pulse{50%{transform:scale(1.05)}}
html.mo .mg.in .s{animation:gather 1.4s var(--ease-out) both;transform-box:fill-box}
html.mo .mg.in .s1{--x:40px;--y:-30px}html.mo .mg.in .s2{--x:-40px;--y:-30px}html.mo .mg.in .s3{--x:30px;--y:30px}html.mo .mg.in .s4{--x:-30px;--y:30px}
@keyframes gather{from{transform:translate(var(--x),var(--y)) rotate(-8deg);opacity:0}}
html.mo .mg.in .p{animation:fly 3.6s var(--ease-out) infinite;transform-box:fill-box}
html.mo .mg.in .p2{animation-delay:.5s}html.mo .mg.in .p3{animation-delay:1s}
@keyframes fly{0%,15%{transform:none;opacity:1}55%{transform:translate(185px,20px) scale(.5);opacity:0}56%,100%{transform:none;opacity:1}}
html.mo .mg.in .pg{transition:transform 1s var(--ease-out);transform-box:fill-box}
html.mo .mg--diag:not(.in) .g2,html.mo .mg--diag:not(.in) .g3{transform:translateX(-30px)}
html.mo .mg--diag:not(.in) .g3{transform:translateX(-60px)}
html.mo .mg.in .mg-draw{stroke-dasharray:120;animation:draw 1.4s var(--ease-out) both}
@keyframes draw{from{stroke-dashoffset:120}}
html.mo .mg.in .share{animation:floaty 3s ease-in-out infinite;transform-box:fill-box}
html.mo .mg.in .mg-wall{animation:paint 7.5s ease-in-out infinite}
@keyframes paint{0%,28%{fill:#D9C7A8}34%,61%{fill:#9FB3C8}67%,94%{fill:#B9C9A8}100%{fill:#D9C7A8}}
html.mo .mg.in .r{animation:row .7s var(--ease-out) both;transform-box:fill-box;transform-origin:left}
html.mo .mg.in .r2{animation-delay:.15s}html.mo .mg.in .r3{animation-delay:.3s}html.mo .mg.in .r4{animation-delay:.45s}
@keyframes row{from{transform:scaleX(0)}}
html.mo .mg.in .tag{animation:pulse 2.4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
@media (prefers-reduced-motion:reduce){html.mo .rv{opacity:1;transform:none}}

/* ===== MyROVA options + large CTA ===== */
.options{margin-top:48px;border:1px solid var(--steel-200);border-radius:12px;background:var(--steel-50);padding:clamp(24px,4vw,40px);display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:24px 48px;align-items:center}
@media (max-width:860px){.options{grid-template-columns:1fr}}
.options-head h3{font-size:clamp(1.3rem,1rem + 1vw,1.7rem);margin:0}
.options-head h3::after{content:"";display:block;width:36px;height:3px;background:var(--accent);margin-top:12px}
.options-head p{margin:14px 0 0;color:var(--steel-600)}
.options-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:860px){.options-list{grid-template-columns:1fr}}
.options-list li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;background:#fff;border:1px solid var(--steel-200);border-radius:10px;padding:22px 14px;font-weight:700;color:var(--ink);line-height:1.5}
@media (max-width:860px){.options-list li{flex-direction:row;text-align:left;padding:16px}}
.opt-ic{flex:none;width:48px;height:48px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink);display:grid;place-items:center}
.opt-ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cta-big-wrap{margin-top:40px;display:flex;justify-content:center}
.cta-big{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:14px;width:420px;max-width:100%;min-height:64px;padding:0 32px;border-radius:999px;background:var(--accent);color:#140700;font-weight:700;font-size:1.15rem;text-decoration:none;box-shadow:0 14px 30px -12px rgba(234,88,12,.6);transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out),background .3s}
.cta-big svg{width:22px;height:22px;flex:none;transition:transform .3s var(--ease-out)}
.cta-big::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.45) 50%,transparent 65%);transform:translateX(-100%);pointer-events:none}
html.mo .cta-big::after{animation:ctaShine 3.6s ease-in-out 1s infinite}
@keyframes ctaShine{0%{transform:translateX(-100%)}40%,100%{transform:translateX(100%)}}
.cta-big:hover,.cta-big:focus-visible{transform:translateY(-3px);box-shadow:0 20px 36px -12px rgba(234,88,12,.7);background:#F06A1F}
.cta-big:hover svg,.cta-big:focus-visible svg{transform:translateX(6px)}
.cta-big:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
@media (max-width:600px){.cta-big{width:100%}}
@media (prefers-reduced-motion:reduce){.cta-big,.cta-big svg{transition:none}.cta-big:hover{transform:none}.cta-big:hover svg{transform:none}.cta-big::after{display:none}}
.options-list li{word-break:keep-all;line-break:strict}
@media (max-width:600px){.cta-big{font-size:1.02rem;padding:0 20px;gap:10px}.cta-big span{white-space:nowrap}}

/* MyROVA problem section: isometric stacked screens (standing, skewY 30deg; back layers to upper-right) */
.stk{--gap:96px;position:relative;width:100%;max-width:580px;margin-inline:auto;aspect-ratio:1/.92}
.stk:hover{--gap:112px}
.stk-float{position:absolute;inset:0;animation:stkFloat 7s ease-in-out infinite}
.stk-plane{position:absolute;left:4%;top:34%;width:56%;aspect-ratio:16/10}
.stk-l{position:absolute;inset:0;margin:0;border-radius:8px;overflow:hidden;background:#fff;z-index:calc(10 - var(--n));transform-origin:0 0;box-shadow:0 0 0 1px rgba(15,35,80,.10),-14px 22px 36px rgba(15,35,80,.20);transform:translate(calc(var(--n)*var(--gap)*.866),calc(var(--n)*var(--gap)*-.5)) skewY(30deg) scaleX(.866);transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .7s ease;transition-delay:calc((3 - var(--n))*120ms)}
.stk:hover .stk-l{transition-delay:0s;transition-duration:.5s}
.stk-l img{display:block;width:100%;height:100%;object-fit:cover;object-position:top left}
.stk-l::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(255,255,255,.16),rgba(255,255,255,0) 45%,rgba(10,30,70,.07));pointer-events:none}
html.mo .stk:not(.in) .stk-l{transform:translate(0,0) skewY(30deg) scaleX(.866);opacity:0}
html.mo .stk:not(.in) .stk-l:last-child{opacity:1}
@keyframes stkFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media (max-width:860px){.stk{max-width:460px;--gap:76px}.stk:hover{--gap:88px}}
@media (max-width:480px){.stk{max-width:350px;--gap:58px}.stk:hover{--gap:66px}}
@media (prefers-reduced-motion:reduce){.stk-float{animation:none}.stk-l{transition:none}html.mo .stk:not(.in) .stk-l{transform:translate(calc(var(--n)*var(--gap)*.866),calc(var(--n)*var(--gap)*-.5)) skewY(30deg) scaleX(.866);opacity:1}}

/* MyROVA flow: screenshot under each step */
.flow li{display:flex;flex-direction:column}
.flow b{text-wrap:balance;word-break:keep-all;overflow-wrap:anywhere}
.flow p{flex:1 1 auto}
.flow .flow-shot{margin:16px 0 0;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:#fff;border:1px solid rgba(233,238,244,.22);box-shadow:0 10px 24px rgba(0,0,0,.28)}
.flow .flow-shot img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.flow li:hover .flow-shot img{transform:scale(1.05)}
@media (prefers-reduced-motion:reduce){.flow .flow-shot img{transition:none}.flow li:hover .flow-shot img{transform:none}}

/* MyROVA feature 02: share flow animation (12s loop) */
.sv{--d:12s;--red:#E61B1B;width:100%;max-width:560px;margin-inline:auto}
.sv-chips{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.sv-chips li{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;line-height:1.3;padding:6px 8px 6px 6px;border-radius:999px;white-space:nowrap;justify-content:center;background:#fff;color:#5b6b80;border:1px solid #dfe5ee;animation:svChip var(--d) infinite}
.sv-chips span{flex:none;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#e9eef5;color:#5b6b80;font-size:.68rem}
.sv-chips .c2,.sv-chips .c2 span{animation-delay:calc(var(--d)*-.6667)}
.sv-chips .c3,.sv-chips .c3 span{animation-delay:calc(var(--d)*-.3333)}
.sv-chips li span{animation:svChipN var(--d) infinite}
@keyframes svChip{0%,31%{background:#1F3A68;color:#fff;border-color:#1F3A68}35%,100%{background:#fff;color:#5b6b80;border-color:#dfe5ee}}
@keyframes svChipN{0%,31%{background:#F26B1D;color:#fff}35%,100%{background:#e9eef5;color:#5b6b80}}
.sv-stage{position:relative;aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:radial-gradient(120% 90% at 20% 10%,#ffffff 0,#eef3f9 55%,#e3eaf3 100%);border:1px solid #e1e7ef;box-shadow:0 18px 40px rgba(20,40,80,.10)}
.sv-sc{position:absolute;inset:0;opacity:0}
.sv-s1{animation:svS1 var(--d) infinite}
.sv-s2{animation:svS2 var(--d) infinite}
.sv-s3{animation:svS3 var(--d) infinite}
@keyframes svS1{0%{opacity:0;transform:scale(.97)}3%,30%{opacity:1;transform:none}34%,100%{opacity:0;transform:scale(1.03)}}
@keyframes svS2{0%,33%{opacity:0;transform:translateY(14px)}37%,63%{opacity:1;transform:none}67%,100%{opacity:0;transform:scale(1.04)}}
@keyframes svS3{0%,66%{opacity:0;transform:translateY(14px)}70%,97%{opacity:1;transform:none}100%{opacity:0}}
/* phone */
.sv-phone{position:absolute;top:5%;left:50%;height:90%;aspect-ratio:9/18.6;transform:translateX(-50%);border-radius:clamp(14px,4.4cqi,28px);background:#121a27;padding:2.2%;box-shadow:0 22px 40px rgba(15,30,60,.28),inset 0 0 0 1px rgba(255,255,255,.08)}
.sv-stage{container-type:inline-size}
.sv-phone{border-radius:5.2cqi;padding:1.3cqi}
.sv-scr{position:relative;width:100%;height:100%;border-radius:4cqi;overflow:hidden;background:#f1f4f9}
.sv-scr>img{display:block;width:100%;height:auto}
.sv-toast{position:absolute;left:7%;right:7%;bottom:6%;display:flex;gap:2cqi;align-items:center;padding:1.6cqi;border-radius:2.4cqi;background:#fff;box-shadow:0 8px 20px rgba(15,30,60,.22);animation:svToast var(--d) infinite}
.sv-toast img{width:9cqi;height:6cqi;object-fit:cover;border-radius:1cqi;flex:none}
.sv-toast div{flex:1;min-width:0}
.sv-toast b{display:block;font-size:2.3cqi;color:#1F3A68;white-space:nowrap;line-height:1.3}
.sv-toast i{display:block;height:1cqi;margin-top:1cqi;border-radius:9px;background:#e6ebf2;overflow:hidden}
.sv-toast em{display:block;height:100%;width:100%;background:#F26B1D;transform-origin:left;animation:svProg var(--d) infinite}
@keyframes svToast{0%,8%{opacity:0;transform:translateY(30%)}11%,26%{opacity:1;transform:none}29%,100%{opacity:0;transform:translateY(-20%)}}
@keyframes svProg{0%,11%{transform:scaleX(0)}24%,100%{transform:scaleX(1)}}
.sv-fly{position:absolute;left:4%;top:58%;width:22%;aspect-ratio:9/5;border-radius:1.4cqi;overflow:hidden;border:.6cqi solid #fff;box-shadow:0 10px 24px rgba(15,30,60,.25);animation:svFly var(--d) infinite}
.sv-fly img{display:block;width:100%;height:100%;object-fit:cover}
@keyframes svFly{0%,3%{opacity:0;transform:translate(0,20%) rotate(-8deg)}7%{opacity:1;transform:translate(0,0) rotate(-8deg)}11%{opacity:1;transform:translate(0,0) rotate(-6deg)}22%{opacity:1;transform:translate(138%,-150%) rotate(0) scale(.62)}25%,100%{opacity:0;transform:translate(138%,-150%) scale(.5)}}
.sv-tag{position:absolute;right:4%;top:44%;font-size:2.4cqi;font-weight:700;color:#1F3A68;background:#fff;padding:1.4cqi 2.2cqi;border-radius:999px;border:1px solid #dfe5ee;box-shadow:0 6px 16px rgba(15,30,60,.10);animation:svTag var(--d) infinite}
.sv-tag--r{top:12%;animation-name:svTag3}
@keyframes svTag{0%,14%{opacity:0;transform:translateX(10%)}18%,30%{opacity:1;transform:none}33%,100%{opacity:0}}
@keyframes svTag3{0%,70%{opacity:0;transform:translateX(10%)}74%,96%{opacity:1;transform:none}100%{opacity:0}}
/* browser */
.sv-win{animation:svZoom var(--d) infinite;transform-origin:80% 80%;position:absolute;left:4%;right:4%;top:50%;transform:translateY(-50%);border-radius:2cqi;overflow:hidden;background:#fff;box-shadow:0 24px 50px rgba(15,30,60,.22);border:1px solid #dbe2ec}
.sv-bar{display:flex;align-items:center;gap:1cqi;height:6cqi;padding:0 2cqi;background:#eef2f7;border-bottom:1px solid #dbe2ec}
.sv-bar i{width:1.6cqi;height:1.6cqi;border-radius:50%;background:#f26b5e}.sv-bar i:nth-child(2){background:#f5bf4f}.sv-bar i:nth-child(3){background:#61c454}
.sv-bar span{margin-left:2cqi;flex:1;font-size:1.9cqi;color:#6b7a8f;background:#fff;border-radius:99px;padding:.7cqi 2cqi;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sv-pc{position:relative;padding:2.4cqi;background:#f5f7fa}
.sv-pc>img{display:block;width:100%;height:auto;border-radius:1cqi}
.sv-pc>.sv-box,.sv-pc>.sv-row,.sv-pc>.sv-ripple,.sv-pc>.sv-cur{position:absolute}
.sv-box{inset:2.4cqi;width:calc(100% - 4.8cqi);height:calc(100% - 4.8cqi);overflow:visible;pointer-events:none}
.sv-box rect{fill:none;stroke:var(--red);stroke-width:3;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1}
.sv-box .b1{animation:svB1 var(--d) infinite}
.sv-box .b2{animation:svB2 var(--d) infinite}
@keyframes svB1{0%,38%{stroke-dashoffset:1;opacity:1}43%{stroke-dashoffset:0;opacity:1}44.5%{opacity:.5}46%{stroke-dashoffset:0;opacity:1}49%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes svB2{0%,48%{stroke-dashoffset:1;opacity:1}51%{stroke-dashoffset:0;opacity:1}53%{opacity:.5}55%,63%{stroke-dashoffset:0;opacity:1}67%,100%{stroke-dashoffset:0;opacity:0}}
.sv-row{left:calc(2.4cqi + 1.4%);right:calc(2.4cqi + 1.4%);top:calc(2.4cqi + 47%);height:22%;background:rgba(242,107,29,.12);border-radius:.6cqi;opacity:0;animation:svRow var(--d) infinite}
@keyframes svRow{0%,42%{opacity:0}45%,63%{opacity:1}67%,100%{opacity:0}}
.sv-cur{width:4.6cqi;height:4.6cqi;left:62%;top:110%;fill:#111;stroke:#fff;stroke-width:1.4;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3));animation:svCur var(--d) infinite}
@keyframes svCur{0%,48%{opacity:0;left:66%;top:98%;transform:none}50%{opacity:1;left:66%;top:96%}54%{left:79%;top:76%;transform:none}56%{transform:scale(.82)}58%,63%{left:79%;top:76%;transform:none;opacity:1}66%,100%{opacity:0;left:79%;top:76%}}
.sv-ripple{left:calc(79% + 1cqi);top:calc(76% + 1cqi);width:6cqi;height:6cqi;margin:-3cqi 0 0 -3cqi;border-radius:50%;border:.5cqi solid var(--red);opacity:0;animation:svRip var(--d) infinite}
@keyframes svRip{0%,55.5%{opacity:0;transform:scale(.3)}56%{opacity:.9;transform:scale(.3)}61%,100%{opacity:0;transform:scale(1.6)}}
/* pdf phone */
.sv-pdfbar{position:absolute;inset:0 0 auto 0;z-index:1;height:8cqi;padding:0 2.4cqi;display:flex;align-items:center;background:#2b2f36;color:#fff}
.sv-pdfbar b{font-size:2.1cqi;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sv-docwrap{position:absolute;inset:8cqi 0 0 0;overflow:hidden;background:#fff}
.sv-doc{display:block;width:100%;height:auto;background:#fff;transform-origin:0 0;animation:svDoc var(--d) infinite}
@keyframes svDoc{0%,74%{transform:translateY(0) scale(1)}80%{transform:translateY(0) scale(1.75)}84%{transform:translateY(0) scale(1.75)}96%,100%{transform:translateY(-42%) scale(1.75)}}
.sv.is-off *,.sv.is-off{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){
 .sv *{animation:none!important}
 .sv-sc{opacity:1;position:absolute}
 .sv-s1{inset:0 auto 0 0;width:50%}.sv-s1 .sv-phone{height:62%;top:4%}
 .sv-s3{inset:0 0 0 auto;width:50%}.sv-s3 .sv-phone{height:62%;top:4%}
 .sv-s2{inset:auto 0 0 0;height:40%}.sv-s2 .sv-win{top:auto;bottom:4%;transform:none;left:8%;right:8%}
 .sv-fly,.sv-toast,.sv-tag,.sv-cur,.sv-ripple{display:none}
 .sv-box rect{stroke-dashoffset:0}.sv-row{opacity:1}
 .sv-chips li{background:#fff}
}
@keyframes svZoom{0%,44%{transform:translateY(-50%) scale(1)}50%,63%{transform:translateY(-50%) scale(1.9)}67%,100%{transform:translateY(-50%) scale(1.9)}}
@media (max-width:480px){.sv-chips li{font-size:.6rem;white-space:normal;text-align:left;border-radius:12px;padding:5px 6px;gap:4px}.sv-chips span{width:15px;height:15px;font-size:.58rem}}
@media (prefers-reduced-motion:reduce){.sv-s2 .sv-win{transform:none}}
.sv-chips li{white-space:normal;font-size:.66rem;border-radius:12px;justify-content:flex-start}
@media (max-width:860px){.feature--media:has(.sv){grid-template-columns:1fr}.sv{max-width:520px}}
@media (max-width:480px){.sv-chips li{font-size:.6rem}}
@media (min-width:481px){.sv-chips li{white-space:nowrap;font-size:.6rem;letter-spacing:0;padding:6px 6px 6px 5px;gap:5px}}

/* MyROVA diagnosis: CSS scene animation over real screenshots (same technique as .sv in 02) */
.ds{--d:56s;--red:#E61B1B;width:100%;max-width:1080px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:24px;align-items:center}
.ds-chips{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ds-chips li{display:flex;align-items:center;gap:10px;font-size:.84rem;font-weight:700;line-height:1.35;padding:8px 12px 8px 8px;border-radius:14px;background:#fff;color:#5b6b80;border:1px solid #dfe5ee;animation:dsChip var(--d) infinite}
.ds-chips span{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e9eef5;color:#5b6b80;font-size:.74rem;animation:dsChipN var(--d) infinite}
.ds-chips li:nth-child(2),.ds-chips li:nth-child(2) span,.ds-cap p:nth-child(2){animation-delay:calc(var(--d)*-7/8)}
.ds-chips li:nth-child(3),.ds-chips li:nth-child(3) span,.ds-cap p:nth-child(3){animation-delay:calc(var(--d)*-6/8)}
.ds-chips li:nth-child(4),.ds-chips li:nth-child(4) span,.ds-cap p:nth-child(4){animation-delay:calc(var(--d)*-5/8)}
.ds-chips li:nth-child(5),.ds-chips li:nth-child(5) span,.ds-cap p:nth-child(5){animation-delay:calc(var(--d)*-4/8)}
.ds-chips li:nth-child(6),.ds-chips li:nth-child(6) span,.ds-cap p:nth-child(6){animation-delay:calc(var(--d)*-3/8)}
.ds-chips li:nth-child(7),.ds-chips li:nth-child(7) span,.ds-cap p:nth-child(7){animation-delay:calc(var(--d)*-2/8)}
.ds-chips li:nth-child(8),.ds-chips li:nth-child(8) span,.ds-cap p:nth-child(8){animation-delay:calc(var(--d)*-1/8)}
.ds-win{border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 24px 50px rgba(15,30,60,.22);border:1px solid #dbe2ec;container-type:inline-size}
.ds-bar{display:flex;align-items:center;gap:1cqi;height:4.4cqi;padding:0 1.6cqi;background:#eef2f7;border-bottom:1px solid #dbe2ec}
.ds-bar i{width:1.2cqi;height:1.2cqi;border-radius:50%;background:#f26b5e}.ds-bar i:nth-child(2){background:#f5bf4f}.ds-bar i:nth-child(3){background:#61c454}
.ds-bar span{margin-left:1.6cqi;flex:1;font-size:1.45cqi;color:#6b7a8f;background:#fff;border-radius:99px;padding:.45cqi 1.6cqi;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ds-stage{position:relative;aspect-ratio:1536/936;overflow:hidden;background:#f1f4f9;contain:paint;isolation:isolate}
.ds-sc{position:absolute;inset:0;opacity:0;overflow:hidden;will-change:opacity;backface-visibility:hidden}
.ds-s1{animation:dsS1 var(--d) infinite linear}
.ds-s2{animation:dsS2 var(--d) infinite linear}
.ds-s3{animation:dsS3 var(--d) infinite linear}
.ds-s4{animation:dsS4 var(--d) infinite linear}
.ds-s5{animation:dsS5 var(--d) infinite linear}
.ds-s6{animation:dsS6 var(--d) infinite linear}
.ds-s7{animation:dsS7 var(--d) infinite linear}
.ds-s8{animation:dsS8 var(--d) infinite linear}
.ds-sc img,.ds-sc video{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover}
.ds-sc .ds-ly{opacity:0}
.ds-zm{position:absolute;inset:0;will-change:transform}
.ds-ov{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:2}
.ds-ov rect{fill:none;stroke:var(--red);stroke-width:3;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1}
.ds-cur{position:absolute;width:3.4cqi;height:3.4cqi;margin:-.3cqi 0 0 -.5cqi;opacity:0;fill:#111;stroke:#fff;stroke-width:1.4;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3));z-index:4;will-change:left,top,transform}
.ds-rip{position:absolute;width:5cqi;height:5cqi;margin:-2.5cqi 0 0 -2.5cqi;border-radius:50%;border:.45cqi solid var(--red);opacity:0;z-index:3}
.ds-cap{display:grid;background:#1F3A68;color:#fff;border-top:3px solid #F26B1D}
.ds-cap p{grid-area:1/1;margin:0;padding:1.3cqi 2cqi;font-size:clamp(12px,1.9cqi,17px);font-weight:700;line-height:1.45;opacity:0;animation:dsCap var(--d) infinite}
.ds-s1 .ds-cur{animation:dsC1 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s1 .ds-rip{left:88.28%;top:92.63%;animation:dsR1 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s1 .l1{animation:dsL1a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s1 .l2{animation:dsL1b var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s1 .l3{animation:dsL1c var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s1 rect{animation:dsB1 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s2 rect{animation:dsB2 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s3 .l1{animation:dsL3a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s3 .l2{animation:dsL3b var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s3 rect{animation:dsB3 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s4 .l1{animation:dsL4a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s4 .l2{animation:dsL4b var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s5 .ds-cur{animation:dsC5 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s5 .ra{left:63.67%;top:16.88%;animation:dsR5a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s5 .rb{left:63.67%;top:34.40%;animation:dsR5b var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s5 .l1{animation:dsL5a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s5 .l2{animation:dsL5b var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s5 .l3{animation:dsL5c var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s5 .ba{animation:dsB5a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s5 .bc{animation:dsB5c var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s6 .ds-cur{animation:dsC6 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s6 .ds-rip{left:70.05%;top:80.13%;animation:dsR6 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s6 .l1{animation:dsL6a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s6 .l2{animation:dsL6b var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s6 rect{animation:dsB6 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s7 .ds-cur{animation:dsC7 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s7 .ds-rip{left:87.30%;top:74.36%;animation:dsR7 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s7 .l1{animation:dsL7a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s7 .ba{animation:dsB7a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s7 .bb{animation:dsB7b var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s7 .ds-zm{transform-origin:65.10% 53.42%;animation:dsZ7 var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s8 .ba{animation:dsB8a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s8 .l1{animation:dsL8a var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds-s8 .bb{animation:dsB8b var(--d) infinite cubic-bezier(.45,.05,.25,1)}
.ds.is-off *,.ds.is-off{animation-play-state:paused!important}
@media (max-width:860px){.ds{grid-template-columns:1fr;gap:14px}.ds-chips{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.ds-chips li{font-size:.72rem;padding:7px 8px 7px 7px;gap:6px;border-radius:12px}.ds-chips span{width:20px;height:20px;font-size:.66rem}}
@media (max-width:560px){.ds-win{border-radius:8px}.ds-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-cap p{font-size:13px;padding:8px 10px}}
@media (prefers-reduced-motion:reduce){
 .ds *,.ds{animation:none!important}
 .ds-sc{opacity:0}.ds-s4{opacity:1}.ds-s4 .ds-ly{opacity:0}
 .ds-cur,.ds-rip,.ds-ov{display:none}
 .ds-cap p{opacity:0}.ds-cap p:nth-child(4){opacity:1}
 .ds-chips li{background:#fff}
}
@keyframes dsS1{0%,11.238%{opacity:1;z-index:2}11.25%,12.625%{opacity:1;z-index:1}12.75%,99.0%{opacity:0;z-index:1}99.013%{opacity:0;z-index:2}100%{opacity:1;z-index:2}}
@keyframes dsS2{0%,11.5%{opacity:0;z-index:2}12.5%,23.738%{opacity:1;z-index:2}23.75%,25.125%{opacity:1;z-index:1}25.25%,100%{opacity:0;z-index:1}}
@keyframes dsS3{0%,24.0%{opacity:0;z-index:2}25.0%,36.237%{opacity:1;z-index:2}36.25%,37.625%{opacity:1;z-index:1}37.75%,100%{opacity:0;z-index:1}}
@keyframes dsS4{0%,36.5%{opacity:0;z-index:2}37.5%,48.737%{opacity:1;z-index:2}48.75%,50.125%{opacity:1;z-index:1}50.25%,100%{opacity:0;z-index:1}}
@keyframes dsS5{0%,49.0%{opacity:0;z-index:2}50.0%,61.237%{opacity:1;z-index:2}61.25%,62.625%{opacity:1;z-index:1}62.75%,100%{opacity:0;z-index:1}}
@keyframes dsS6{0%,61.5%{opacity:0;z-index:2}62.5%,73.737%{opacity:1;z-index:2}73.75%,75.125%{opacity:1;z-index:1}75.25%,100%{opacity:0;z-index:1}}
@keyframes dsS7{0%,74.0%{opacity:0;z-index:2}75.0%,86.237%{opacity:1;z-index:2}86.25%,87.625%{opacity:1;z-index:1}87.75%,100%{opacity:0;z-index:1}}
@keyframes dsS8{0%,86.5%{opacity:0;z-index:2}87.5%,98.737%{opacity:1;z-index:2}98.75%,100%{opacity:1;z-index:1}}
@keyframes dsChip{0%,12.125%{background:#1F3A68;color:#fff;border-color:#1F3A68}12.875%,100%{background:#fff;color:#5b6b80;border-color:#dfe5ee}}
@keyframes dsChipN{0%,12.125%{background:#F26B1D;color:#fff}12.875%,100%{background:#e9eef5;color:#5b6b80}}
@keyframes dsCap{0%,12.0%{opacity:1;transform:none}12.5%,99.5%{opacity:0;transform:translateY(4px)}100%{opacity:1;transform:none}}
@keyframes dsC1{0%,0.25%{opacity:0;left:74.87%;top:74.79%;transform:none}0.75%{opacity:1;left:74.87%;top:74.79%;transform:none}2.25%{opacity:1;left:88.28%;top:92.63%;transform:none}2.5%{opacity:1;left:88.28%;top:92.63%;transform:scale(.82)}2.875%{opacity:1;left:88.28%;top:92.63%;transform:none}3.5%,100%{opacity:0;left:88.28%;top:92.63%;transform:none}}
@keyframes dsR1{0%,2.5%{opacity:0;transform:scale(.3)}2.562%{opacity:.9;transform:scale(.3)}3.75%,100%{opacity:0;transform:scale(1.8)}}
@keyframes dsL1a{0%,3.0%{opacity:0}3.625%,13.125%{opacity:1}13.25%,100%{opacity:0}}
@keyframes dsL1b{0%,5.5%{opacity:0}6.125%,13.125%{opacity:1}13.25%,100%{opacity:0}}
@keyframes dsL1c{0%,8.0%{opacity:0}8.625%,13.125%{opacity:1}13.25%,100%{opacity:0}}
@keyframes dsB1{0%,9.25%{stroke-dashoffset:1;opacity:1}10.25%,11.875%{stroke-dashoffset:0;opacity:1}12.25%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes dsB2{0%,19.375%{stroke-dashoffset:1;opacity:1}20.375%,24.375%{stroke-dashoffset:0;opacity:1}24.75%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes dsL3a{12.5%,28.5%{opacity:0}29.125%,38.125%{opacity:1}38.25%,100%{opacity:1}}
@keyframes dsL3b{12.5%,31.25%{opacity:0}31.875%,38.125%{opacity:1}38.25%,100%{opacity:1}}
@keyframes dsB3{12.5%,32.5%{stroke-dashoffset:1;opacity:1}33.5%,36.875%{stroke-dashoffset:0;opacity:1}37.25%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes dsL4a{25.0%,42.0%{opacity:0}42.625%,50.625%{opacity:1}50.75%,100%{opacity:1}}
@keyframes dsL4b{25.0%,45.75%{opacity:0}46.375%,50.625%{opacity:1}50.75%,100%{opacity:1}}
@keyframes dsC5{37.5%,50.0%{opacity:0;left:71.61%;top:53.42%;transform:none}50.5%{opacity:1;left:71.61%;top:53.42%;transform:none}51.75%{opacity:1;left:63.67%;top:16.88%;transform:none}52.0%{opacity:1;left:63.67%;top:16.88%;transform:scale(.82)}52.375%{opacity:1;left:63.67%;top:16.88%;transform:none}54.25%{opacity:1;left:63.67%;top:16.88%;transform:none}55.25%{opacity:1;left:63.67%;top:34.40%;transform:none}55.5%{opacity:1;left:63.67%;top:34.40%;transform:scale(.82)}55.875%{opacity:1;left:63.67%;top:34.40%;transform:none}56.5%,100%{opacity:0;left:63.67%;top:34.40%;transform:none}}
@keyframes dsR5a{37.5%,52.0%{opacity:0;transform:scale(.3)}52.062%{opacity:.9;transform:scale(.3)}53.25%,100%{opacity:0;transform:scale(1.8)}}
@keyframes dsR5b{37.5%,55.5%{opacity:0;transform:scale(.3)}55.562%{opacity:.9;transform:scale(.3)}56.75%,100%{opacity:0;transform:scale(1.8)}}
@keyframes dsL5a{37.5%,52.375%{opacity:0}53.0%,63.125%{opacity:1}63.25%,100%{opacity:1}}
@keyframes dsB5a{37.5%,53.0%{stroke-dashoffset:1;opacity:1}54.0%,55.0%{stroke-dashoffset:0;opacity:1}55.375%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes dsL5b{37.5%,56.25%{opacity:0}56.875%,63.125%{opacity:1}63.25%,100%{opacity:1}}
@keyframes dsL5c{37.5%,59.0%{opacity:0}59.625%,63.125%{opacity:1}63.25%,100%{opacity:1}}
@keyframes dsB5c{37.5%,60.0%{stroke-dashoffset:1;opacity:1}61.0%,61.875%{stroke-dashoffset:0;opacity:1}62.25%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes dsC6{50.0%,62.75%{opacity:0;left:39.06%;top:85.47%;transform:none}63.25%{opacity:1;left:39.06%;top:85.47%;transform:none}64.25%{opacity:1;left:29.43%;top:74.47%;transform:none}64.625%{opacity:1;left:29.43%;top:74.47%;transform:scale(.82)}66.75%{opacity:1;left:49.28%;top:52.03%;transform:scale(.82)}67.125%{opacity:1;left:49.28%;top:52.03%;transform:none}68.75%{opacity:1;left:70.05%;top:80.13%;transform:none}69.0%{opacity:1;left:70.05%;top:80.13%;transform:scale(.82)}69.375%{opacity:1;left:70.05%;top:80.13%;transform:none}70.0%,100%{opacity:0;left:70.05%;top:80.13%;transform:none}}
@keyframes dsL6a{50.0%,66.625%{opacity:0}67.25%,75.625%{opacity:1}75.75%,100%{opacity:1}}
@keyframes dsR6{50.0%,69.0%{opacity:0;transform:scale(.3)}69.062%{opacity:.9;transform:scale(.3)}70.25%,100%{opacity:0;transform:scale(1.8)}}
@keyframes dsL6b{50.0%,69.75%{opacity:0}70.375%,75.625%{opacity:1}75.75%,100%{opacity:1}}
@keyframes dsB6{50.0%,71.0%{stroke-dashoffset:1;opacity:1}72.0%,74.375%{stroke-dashoffset:0;opacity:1}74.75%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes dsC7{62.5%,75.25%{opacity:0;left:78.12%;top:94.02%;transform:none}75.75%{opacity:1;left:78.12%;top:94.02%;transform:none}78.0%{opacity:1;left:87.30%;top:74.36%;transform:none}78.375%{opacity:1;left:87.30%;top:74.36%;transform:scale(.82)}78.75%{opacity:1;left:87.30%;top:74.36%;transform:none}79.375%,100%{opacity:0;left:87.30%;top:74.36%;transform:none}}
@keyframes dsR7{62.5%,78.375%{opacity:0;transform:scale(.3)}78.438%{opacity:.9;transform:scale(.3)}79.625%,100%{opacity:0;transform:scale(1.8)}}
@keyframes dsL7a{62.5%,78.75%{opacity:0}79.375%,88.125%{opacity:1}88.25%,100%{opacity:1}}
@keyframes dsB7a{62.5%,80.25%{stroke-dashoffset:1;opacity:1}81.25%,86.875%{stroke-dashoffset:0;opacity:1}87.25%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes dsB7b{62.5%,81.25%{stroke-dashoffset:1;opacity:1}82.25%,86.875%{stroke-dashoffset:0;opacity:1}87.25%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes dsZ7{62.5%,82.5%{transform:scale(1)}84.375%,88.125%{transform:scale(1.35)}88.25%,100%{transform:scale(1)}}
@keyframes dsB8a{75.0%,89.0%{stroke-dashoffset:1;opacity:1}90.0%,92.75%{stroke-dashoffset:0;opacity:1}93.125%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes dsL8a{75.0%,93.5%{opacity:0}94.125%,100%{opacity:1}100%,100%{opacity:1}}
@keyframes dsB8b{75.0%,95.0%{stroke-dashoffset:1;opacity:1}96.0%,99.375%{stroke-dashoffset:0;opacity:1}99.75%,100%{stroke-dashoffset:0;opacity:0}}
/* MyROVA estimate import (04): CSS scene animation over real screenshots */
.es{--d:17s;--red:#E61B1B;width:100%;max-width:1080px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:24px;align-items:center}
.es-chips{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.es-chips li{display:flex;align-items:center;gap:10px;font-size:.84rem;font-weight:700;line-height:1.35;padding:8px 12px 8px 8px;border-radius:14px;background:#fff;color:#5b6b80;border:1px solid #dfe5ee;animation:esChip var(--d) infinite}
.es-chips span{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e9eef5;color:#5b6b80;font-size:.74rem;animation:esChipN var(--d) infinite}
.es-chips li:nth-child(2),.es-chips li:nth-child(2) span,.es-cap p:nth-child(2){animation-delay:calc(var(--d)*-4/5)}
.es-chips li:nth-child(3),.es-chips li:nth-child(3) span,.es-cap p:nth-child(3){animation-delay:calc(var(--d)*-3/5)}
.es-chips li:nth-child(4),.es-chips li:nth-child(4) span,.es-cap p:nth-child(4){animation-delay:calc(var(--d)*-2/5)}
.es-chips li:nth-child(5),.es-chips li:nth-child(5) span,.es-cap p:nth-child(5){animation-delay:calc(var(--d)*-1/5)}
.es-win{border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 24px 50px rgba(15,30,60,.22);border:1px solid #dbe2ec;container-type:inline-size}
.es-bar{display:flex;align-items:center;gap:1cqi;height:4.4cqi;padding:0 1.6cqi;background:#eef2f7;border-bottom:1px solid #dbe2ec}
.es-bar i{width:1.2cqi;height:1.2cqi;border-radius:50%;background:#f26b5e}.es-bar i:nth-child(2){background:#f5bf4f}.es-bar i:nth-child(3){background:#61c454}
.es-bar span{margin-left:1.6cqi;flex:1;font-size:1.45cqi;color:#6b7a8f;background:#fff;border-radius:99px;padding:.45cqi 1.6cqi;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.es-stage{position:relative;aspect-ratio:1536/936;overflow:hidden;background:#f1f4f9;contain:paint;isolation:isolate}
.es-sc{position:absolute;inset:0;opacity:0;overflow:hidden;will-change:opacity;backface-visibility:hidden}
.es-s1{animation:esS1 var(--d) infinite linear}
.es-s2{animation:esS2 var(--d) infinite linear}
.es-s3{animation:esS3 var(--d) infinite linear}
.es-s4{animation:esS4 var(--d) infinite linear}
.es-s5{animation:esS5 var(--d) infinite linear}
.es-sc>img,.es-zm>img{position:absolute;inset:0;width:100%;height:100%;display:block}
.es-zm{position:absolute;inset:0;transform-origin:30% 40%;will-change:transform;animation:esZ5 var(--d) infinite ease-in-out}
.es-ov{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:3}
.es-ov rect{fill:none;stroke:var(--red);stroke-width:3;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1}
.es-cur{position:absolute;width:3.4cqi;height:3.4cqi;margin:-.3cqi 0 0 -.5cqi;opacity:0;fill:#111;stroke:#fff;stroke-width:1.4;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3));z-index:4;will-change:left,top,transform}
.es-rip{position:absolute;width:5cqi;height:5cqi;margin:-2.5cqi 0 0 -2.5cqi;border-radius:50%;border:.45cqi solid var(--red);opacity:0;z-index:3}
.es-file{position:absolute;left:2.47%;top:9.83%;width:19.40%;height:49.25%;opacity:0;z-index:2;box-shadow:0 18px 40px rgba(15,30,60,.35);border-radius:.4cqi;will-change:transform,opacity;animation:esFly var(--d) infinite cubic-bezier(.22,.8,.25,1)}
.es-file img{display:block;width:100%;height:100%}
.es-glow{position:absolute;left:2.08%;top:9.19%;width:20.18%;height:50.53%;border:.35cqi solid #F26B1D;border-radius:.8cqi;opacity:0;z-index:2;animation:esGlow var(--d) infinite cubic-bezier(.3,.7,.2,1)}
.es-sc>img.es-row{position:absolute;right:auto;bottom:auto;left:23.11%;width:74.74%;opacity:0;transform-origin:0 50%;will-change:transform,opacity}
.es-sc>.es-row.r1{top:16.67%;height:2.88%;animation:esRow1 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r2{top:19.44%;height:2.88%;animation:esRow2 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r3{top:22.22%;height:2.88%;animation:esRow3 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r4{top:25.00%;height:2.88%;animation:esRow4 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r5{top:27.78%;height:2.88%;animation:esRow5 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r6{top:30.56%;height:2.88%;animation:esRow6 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r7{top:33.33%;height:2.88%;animation:esRow7 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r8{top:36.11%;height:2.88%;animation:esRow8 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r9{top:38.89%;height:2.88%;animation:esRow9 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r10{top:41.67%;height:2.88%;animation:esRow10 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r11{top:44.44%;height:2.88%;animation:esRow11 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r12{top:47.22%;height:2.88%;animation:esRow12 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r13{top:50.00%;height:2.88%;animation:esRow13 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r14{top:52.78%;height:2.88%;animation:esRow14 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r15{top:55.56%;height:2.88%;animation:esRow15 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r16{top:58.33%;height:2.88%;animation:esRow16 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r17{top:61.11%;height:2.88%;animation:esRow17 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-sc>.es-row.r18{top:63.89%;height:2.88%;animation:esRow18 var(--d) infinite cubic-bezier(.34,1.4,.5,1)}
.es-cap{display:grid;background:#1F3A68;color:#fff;border-top:3px solid #F26B1D}
.es-cap p{grid-area:1/1;margin:0;padding:1.3cqi 2cqi;font-size:clamp(12px,1.9cqi,17px);font-weight:700;line-height:1.45;opacity:0;animation:esCap var(--d) infinite}
.es-s1 .es-cur{animation:esC1 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.es-s1 .es-rip{left:19.99%;top:94.98%;animation:esR1 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.es-s1 rect{animation:esB1 var(--d) infinite cubic-bezier(.3,.7,.2,1)}
.es-s3 rect{animation:esB3 var(--d) infinite cubic-bezier(.3,.7,.2,1)}
.es-s4 .b0{animation:esB40 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.es-s4 .b1{animation:esB41 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.es-s4 .b2{animation:esB42 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.es-s4 .b3{animation:esB43 var(--d) infinite cubic-bezier(.3,.7,.2,1)}
.es-s4 .es-cur{animation:esC4 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.es-s4 .es-rip{left:89.58%;top:4.91%;animation:esR4 var(--d) infinite cubic-bezier(.3,.7,.2,1)}
.es-s5 rect{animation:esB5 var(--d) infinite cubic-bezier(.3,.7,.2,1)}
.es.is-off *,.es.is-off{animation-play-state:paused!important}
@media (max-width:860px){.es{grid-template-columns:1fr;gap:14px}.es-chips{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.es-chips li{font-size:.7rem;padding:7px 6px;gap:5px;border-radius:12px}.es-chips span{width:20px;height:20px;font-size:.66rem}}
@media (max-width:560px){.es-win{border-radius:8px}.es-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.es-chips li:last-child{grid-column:1/-1}.es-cap p{font-size:13px;padding:8px 10px}}
@media (prefers-reduced-motion:reduce){
 .es *,.es{animation:none!important}
 .es-sc{opacity:0}.es-s3{opacity:1}.es-s3 .es-row{opacity:1}
 .es-cur,.es-rip,.es-ov,.es-file,.es-glow{display:none}
 .es-cap p{opacity:0}.es-cap p:nth-child(3){opacity:1}
 .es-chips li{background:#fff}
}
@keyframes esS1{0%,17.98%{opacity:1;z-index:2}18.0%,20.2%{opacity:1;z-index:1}20.4%,98.38%{opacity:0;z-index:1}98.4%{opacity:0;z-index:2}100%{opacity:1;z-index:2}}
@keyframes esS2{0%,18.4%{opacity:0;z-index:2}20.0%,37.98%{opacity:1;z-index:2}38.0%,40.2%{opacity:1;z-index:1}40.4%,100%{opacity:0;z-index:1}}
@keyframes esS3{0%,38.4%{opacity:0;z-index:2}40.0%,57.98%{opacity:1;z-index:2}58.0%,60.2%{opacity:1;z-index:1}60.4%,100%{opacity:0;z-index:1}}
@keyframes esS4{0%,58.4%{opacity:0;z-index:2}60.0%,77.98%{opacity:1;z-index:2}78.0%,80.2%{opacity:1;z-index:1}80.4%,100%{opacity:0;z-index:1}}
@keyframes esS5{0%,78.4%{opacity:0;z-index:2}80.0%,97.98%{opacity:1;z-index:2}98.0%,100%{opacity:1;z-index:1}}
@keyframes esChip{0%,19.4%{background:#1F3A68;color:#fff;border-color:#1F3A68}20.6%,100%{background:#fff;color:#5b6b80;border-color:#dfe5ee}}
@keyframes esChipN{0%,19.4%{background:#F26B1D;color:#fff}20.6%,100%{background:#e9eef5;color:#5b6b80}}
@keyframes esCap{0%,19.0%{opacity:1;transform:none}20.0%,99.0%{opacity:0;transform:translateY(4px)}100%{opacity:1;transform:none}}
@keyframes esC1{0%,1.0%{opacity:0;left:45.57%;top:74.79%;transform:none}2.0%{opacity:1;left:45.57%;top:74.79%;transform:none}9.0%{opacity:1;left:19.99%;top:94.98%;transform:none}10.0%{opacity:1;left:19.99%;top:94.98%;transform:scale(.82)}11.2%{opacity:1;left:19.99%;top:94.98%;transform:none}12.4%,100%{opacity:0;left:19.99%;top:94.98%;transform:none}}
@keyframes esR1{0%,10.0%{opacity:0;transform:scale(.3)}10.2%{opacity:.9;transform:scale(.3)}13.2%,100%{opacity:0;transform:scale(1.9)}}
@keyframes esB1{0%,6.0%{stroke-dashoffset:1;opacity:1}8.0%,18.0%{stroke-dashoffset:0;opacity:1}18.8%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes esFly{0%,21.2%{opacity:0;transform:translate(-55%,75%) rotate(-10deg) scale(.55)}23.2%{opacity:1;transform:translate(-40%,55%) rotate(-8deg) scale(.6)}32.4%{opacity:1;transform:translate(0,-3%) rotate(1deg) scale(1.02)}34.4%{opacity:1;transform:none}36.0%,100%{opacity:1;transform:none}}
@keyframes esGlow{0%,33.2%{opacity:0;transform:scale(.96)}34.4%{opacity:1;transform:scale(1)}39.0%,100%{opacity:0;transform:scale(1.04)}}
@keyframes esRow1{20.0%,40.8%{opacity:0;transform:translateY(30%) scale(.94)}41.8%{opacity:1;transform:translateY(-4%) scale(1.02)}42.6%,100%{opacity:1;transform:none}}
@keyframes esRow2{20.0%,41.6%{opacity:0;transform:translateY(30%) scale(.94)}42.6%{opacity:1;transform:translateY(-4%) scale(1.02)}43.4%,100%{opacity:1;transform:none}}
@keyframes esRow3{20.0%,42.4%{opacity:0;transform:translateY(30%) scale(.94)}43.4%{opacity:1;transform:translateY(-4%) scale(1.02)}44.2%,100%{opacity:1;transform:none}}
@keyframes esRow4{20.0%,43.2%{opacity:0;transform:translateY(30%) scale(.94)}44.2%{opacity:1;transform:translateY(-4%) scale(1.02)}45.0%,100%{opacity:1;transform:none}}
@keyframes esRow5{20.0%,44.0%{opacity:0;transform:translateY(30%) scale(.94)}45.0%{opacity:1;transform:translateY(-4%) scale(1.02)}45.8%,100%{opacity:1;transform:none}}
@keyframes esRow6{20.0%,44.8%{opacity:0;transform:translateY(30%) scale(.94)}45.8%{opacity:1;transform:translateY(-4%) scale(1.02)}46.6%,100%{opacity:1;transform:none}}
@keyframes esRow7{20.0%,45.6%{opacity:0;transform:translateY(30%) scale(.94)}46.6%{opacity:1;transform:translateY(-4%) scale(1.02)}47.4%,100%{opacity:1;transform:none}}
@keyframes esRow8{20.0%,46.4%{opacity:0;transform:translateY(30%) scale(.94)}47.4%{opacity:1;transform:translateY(-4%) scale(1.02)}48.2%,100%{opacity:1;transform:none}}
@keyframes esRow9{20.0%,47.2%{opacity:0;transform:translateY(30%) scale(.94)}48.2%{opacity:1;transform:translateY(-4%) scale(1.02)}49.0%,100%{opacity:1;transform:none}}
@keyframes esRow10{20.0%,48.0%{opacity:0;transform:translateY(30%) scale(.94)}49.0%{opacity:1;transform:translateY(-4%) scale(1.02)}49.8%,100%{opacity:1;transform:none}}
@keyframes esRow11{20.0%,48.8%{opacity:0;transform:translateY(30%) scale(.94)}49.8%{opacity:1;transform:translateY(-4%) scale(1.02)}50.6%,100%{opacity:1;transform:none}}
@keyframes esRow12{20.0%,49.6%{opacity:0;transform:translateY(30%) scale(.94)}50.6%{opacity:1;transform:translateY(-4%) scale(1.02)}51.4%,100%{opacity:1;transform:none}}
@keyframes esRow13{20.0%,50.4%{opacity:0;transform:translateY(30%) scale(.94)}51.4%{opacity:1;transform:translateY(-4%) scale(1.02)}52.2%,100%{opacity:1;transform:none}}
@keyframes esRow14{20.0%,51.2%{opacity:0;transform:translateY(30%) scale(.94)}52.2%{opacity:1;transform:translateY(-4%) scale(1.02)}53.0%,100%{opacity:1;transform:none}}
@keyframes esRow15{20.0%,52.0%{opacity:0;transform:translateY(30%) scale(.94)}53.0%{opacity:1;transform:translateY(-4%) scale(1.02)}53.8%,100%{opacity:1;transform:none}}
@keyframes esRow16{20.0%,52.8%{opacity:0;transform:translateY(30%) scale(.94)}53.8%{opacity:1;transform:translateY(-4%) scale(1.02)}54.6%,100%{opacity:1;transform:none}}
@keyframes esRow17{20.0%,53.6%{opacity:0;transform:translateY(30%) scale(.94)}54.6%{opacity:1;transform:translateY(-4%) scale(1.02)}55.4%,100%{opacity:1;transform:none}}
@keyframes esRow18{20.0%,54.4%{opacity:0;transform:translateY(30%) scale(.94)}55.4%{opacity:1;transform:translateY(-4%) scale(1.02)}56.2%,100%{opacity:1;transform:none}}
@keyframes esB3{20.0%,56.0%{stroke-dashoffset:1;opacity:1}58.0%,59.4%{stroke-dashoffset:0;opacity:1}60.2%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes esB40{40.0%,60.8%{stroke-dashoffset:1;opacity:1}62.8%,64.8%{stroke-dashoffset:0;opacity:1}65.6%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes esB41{40.0%,64.8%{stroke-dashoffset:1;opacity:1}66.8%,68.8%{stroke-dashoffset:0;opacity:1}69.6%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes esB42{40.0%,68.8%{stroke-dashoffset:1;opacity:1}70.8%,72.8%{stroke-dashoffset:0;opacity:1}73.6%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes esB43{40.0%,72.8%{stroke-dashoffset:1;opacity:1}74.8%,76.0%{stroke-dashoffset:0;opacity:1}76.8%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes esC4{40.0%,71.4%{opacity:0;left:84.64%;top:32.05%;transform:none}72.4%{opacity:1;left:84.64%;top:32.05%;transform:none}76.0%{opacity:1;left:89.58%;top:4.91%;transform:none}76.8%{opacity:1;left:89.58%;top:4.91%;transform:scale(.82)}77.6%{opacity:1;left:89.58%;top:4.91%;transform:none}78.8%,100%{opacity:0;left:89.58%;top:4.91%;transform:none}}
@keyframes esR4{40.0%,76.8%{opacity:0;transform:scale(.3)}77.0%{opacity:.9;transform:scale(.3)}80.0%,100%{opacity:0;transform:scale(1.9)}}
@keyframes esZ5{60.0%,81.0%{transform:scale(1)}92.0%,100%{transform:scale(1.07)}100%,100%{transform:scale(1)}}
@keyframes esB5{60.0%,83.0%{stroke-dashoffset:1;opacity:1}85.0%,99.0%{stroke-dashoffset:0;opacity:1}99.8%,100%{stroke-dashoffset:0;opacity:0}}

/* Features: one consistent row layout (text | media, alternating) */
.feature--media{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px 64px;align-items:center;padding:72px 0}
.feature--media.is-rev{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.feature--media.is-rev .feature-txt{order:2}
.feature-media{width:100%;max-width:none}
.sv,.ds,.es{width:100%;max-width:none;margin:0;display:flex;flex-direction:column;align-items:stretch;gap:10px}
.sv-stage{aspect-ratio:1280/858}
.sv-chips,.ds-chips,.es-chips{order:2;display:flex;flex-wrap:wrap;gap:6px;margin:0;justify-content:flex-start}
.sv-chips li,.ds-chips li,.es-chips li{font-size:.68rem;padding:4px 9px 4px 4px;gap:5px;border-radius:999px;white-space:nowrap;line-height:1.3;transform:none!important;justify-content:flex-start}
.sv-chips span,.ds-chips span,.es-chips span{width:16px;height:16px;font-size:.6rem}
.shot img{border-radius:12px;border:1px solid #dbe2ec;box-shadow:0 24px 50px rgba(15,30,60,.22)}
@media (max-width:860px){
 .feature--media,.feature--media.is-rev{grid-template-columns:minmax(0,1fr);gap:20px;padding:48px 0}
 .feature--media .feature-txt,.feature--media.is-rev .feature-txt{order:0}
 .sv-chips,.ds-chips,.es-chips{display:none}
}

/* Features: big editorial numbers */
.feature-txt .feat-no{display:block;font-family:var(--serif);font-weight:300;font-size:clamp(64px,4.5vw + 40px,120px);line-height:1;letter-spacing:-.04em;margin:0 0 18px -.04em;background:linear-gradient(135deg,#F26B1D 0%,#EA580C 45%,#B93E08 100%);-webkit-background-clip:text;background-clip:text;color:transparent;font-feature-settings:"lnum" 1,"tnum" 1}
.feature-txt .feat-no::after{content:"";display:block;width:40px;height:2px;margin-top:16px;background:var(--accent)}
@media (max-width:860px){.feature-txt .feat-no{font-size:68px;margin-bottom:12px}.feature-txt .feat-no::after{margin-top:12px;width:32px}}
/* MyROVA color simulation (05): CSS scene animation over real screenshots */
.feature--media:has(.cs) .feature-txt li{font-size:18px;line-height:1.8}
@media (max-width:860px){.feature--media:has(.cs) .feature-txt li{font-size:16px}}
.cs{--d:15s;--red:#E61B1B;width:100%;display:flex;flex-direction:column;align-items:stretch;gap:10px}
.cs-chips{order:2;list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.cs-chips li{display:flex;align-items:center;font-weight:700;font-size:.68rem;padding:4px 9px 4px 4px;gap:5px;border-radius:999px;white-space:nowrap;line-height:1.3;background:#fff;color:#5b6b80;border:1px solid #dfe5ee;animation:csChip var(--d) infinite}
.cs-chips span{flex:none;display:grid;place-items:center;width:16px;height:16px;font-size:.6rem;border-radius:50%;background:#e9eef5;color:#5b6b80;animation:csChipN var(--d) infinite}
.cs-chips li:nth-child(2),.cs-chips li:nth-child(2) span,.cs-cap p:nth-child(2){animation-delay:calc(var(--d)*-4/5)}
.cs-chips li:nth-child(3),.cs-chips li:nth-child(3) span,.cs-cap p:nth-child(3){animation-delay:calc(var(--d)*-3/5)}
.cs-chips li:nth-child(4),.cs-chips li:nth-child(4) span,.cs-cap p:nth-child(4){animation-delay:calc(var(--d)*-2/5)}
.cs-chips li:nth-child(5),.cs-chips li:nth-child(5) span,.cs-cap p:nth-child(5){animation-delay:calc(var(--d)*-1/5)}
.cs-win{border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 24px 50px rgba(15,30,60,.22);border:1px solid #dbe2ec;container-type:inline-size}
.cs-bar{display:flex;align-items:center;gap:1cqi;height:4.4cqi;padding:0 1.6cqi;background:#eef2f7;border-bottom:1px solid #dbe2ec}
.cs-bar i{width:1.2cqi;height:1.2cqi;border-radius:50%;background:#f26b5e}.cs-bar i:nth-child(2){background:#f5bf4f}.cs-bar i:nth-child(3){background:#61c454}
.cs-bar span{margin-left:1.6cqi;flex:1;font-size:1.45cqi;color:#6b7a8f;background:#fff;border-radius:99px;padding:.45cqi 1.6cqi;white-space:nowrap;overflow:hidden}
.cs-stage{position:relative;aspect-ratio:1680/888;overflow:hidden;background:#f1f4f9;contain:paint;isolation:isolate}
.cs-sc{position:absolute;inset:0;opacity:0;overflow:hidden;will-change:opacity;backface-visibility:hidden}
.cs-s1{animation:csS1 var(--d) infinite linear}
.cs-s2{animation:csS2 var(--d) infinite linear}
.cs-s3{animation:csS3 var(--d) infinite linear}
.cs-s4{animation:csS4 var(--d) infinite linear}
.cs-s5{animation:csS5 var(--d) infinite linear}
.cs-sc img,.cs-zm>img{position:absolute;inset:0;width:100%;height:100%;display:block}
.cs-ly{opacity:0;will-change:opacity}
.cs-zm{position:absolute;inset:0;transform-origin:50% 45%;will-change:transform;animation:csZ5 var(--d) infinite ease-in-out}
.cs-ov{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:3}
.cs-ov rect{fill:none;stroke:var(--red);stroke-width:3;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1}
.cs-ov rect.fl{stroke:#fff;stroke-width:5;stroke-dasharray:none;stroke-dashoffset:0;opacity:0;transform-box:fill-box;transform-origin:center}
.cs-cur{position:absolute;width:3.4cqi;height:3.4cqi;margin:-.3cqi 0 0 -.5cqi;opacity:0;fill:#111;stroke:#fff;stroke-width:1.4;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3));z-index:5}
.cs-rip{position:absolute;width:5cqi;height:5cqi;margin:-2.5cqi 0 0 -2.5cqi;border-radius:50%;border:.45cqi solid var(--red);opacity:0;z-index:4}
.cs-tag{position:absolute;z-index:4;opacity:0;transform:translate(-50%,-50%);padding:.45cqi 1.1cqi;border-radius:99px;background:#1F3A68;color:#fff;font-weight:800;font-size:1.6cqi;line-height:1.2;white-space:nowrap;box-shadow:0 .5cqi 1.4cqi rgba(10,20,40,.35);border:.2cqi solid #fff}
.cs-big{position:absolute;z-index:4;opacity:0;transform:translate(-50%,-50%);padding:1.2cqi 2.6cqi;border-radius:1.4cqi;background:#F26B1D;color:#fff;font-weight:900;font-size:4.4cqi;line-height:1.15;letter-spacing:.02em;white-space:nowrap;box-shadow:0 1cqi 3cqi rgba(10,20,40,.4);text-align:center}
.cs-big small{display:block;font-size:.5em;font-weight:800;opacity:.92;margin-top:.3em}
.cs-big.nv{background:#1F3A68;border:.3cqi solid #F26B1D}
.cs-cap{display:grid;background:#1F3A68;color:#fff;border-top:3px solid #F26B1D}
.cs-cap p{grid-area:1/1;margin:0;padding:1.3cqi 2cqi;font-size:clamp(13px,2.1cqi,18px);font-weight:700;line-height:1.45;opacity:0;animation:csCap var(--d) infinite}
.cs-s1 .cs-cur{animation:csC1 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.cs-s1 .cs-rip{left:19.76%;top:15.32%;animation:csR1 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.cs-s1 .cs-ly{animation:csL1 var(--d) infinite linear}.cs-s1 .cs-big{left:61.90%;top:50.68%;animation:csP1 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}
.cs-s2 .t0{left:44.05%;top:19.37%;animation:csT0 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}.cs-s2 .t1{left:36.43%;top:25.00%;animation:csT1 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}.cs-s2 .t2{left:52.68%;top:23.09%;animation:csT2 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}.cs-s2 .t3{left:50.89%;top:30.18%;animation:csT3 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}.cs-s2 .t4{left:35.71%;top:35.81%;animation:csT4 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}.cs-s2 .t5{left:44.35%;top:37.73%;animation:csT5 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}.cs-s2 .t6{left:54.46%;top:37.16%;animation:csT6 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}.cs-s2 .t7{left:47.62%;top:47.86%;animation:csT7 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}
.cs-s2 rect{animation:csB2 var(--d) infinite cubic-bezier(.3,.7,.2,1)}
.cs-s3 rect{animation:csB3 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.cs-s3 .cs-cur{animation:csC3 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.cs-s3 .cs-rip{left:39.52%;top:16.10%;animation:csR3 var(--d) infinite cubic-bezier(.3,.7,.2,1)}.cs-s3 .cs-big{left:63.10%;top:81.08%;animation:csP3 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}
.cs-s4 .l0{animation:csL40 var(--d) infinite linear}.cs-s4 .l1{animation:csL41 var(--d) infinite linear}.cs-s4 .l2{animation:csL42 var(--d) infinite linear}.cs-s4 .l3{animation:csL43 var(--d) infinite linear}.cs-s4 .f0{animation:csF40 var(--d) infinite ease-out}.cs-s4 .f1{animation:csF41 var(--d) infinite ease-out}.cs-s4 .f2{animation:csF42 var(--d) infinite ease-out}
.cs-s4 .cs-big{left:63.10%;top:56.31%;animation:csP4 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}
.cs-s5 .cs-big{left:50.00%;top:52.93%;animation:csP5 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}
.cs.is-off *,.cs.is-off{animation-play-state:paused!important}
@media (max-width:860px){.cs-chips{display:none}}
@media (max-width:560px){.cs-win{border-radius:8px}.cs-cap p{font-size:13px;padding:8px 10px}.cs-tag{font-size:2.4cqi}}
@media (prefers-reduced-motion:reduce){
 .cs *,.cs{animation:none!important}
 .cs-sc{opacity:0}.cs-s4{opacity:1}.cs-s4 .cs-ly{opacity:1}
 .cs-cur,.cs-rip,.cs-ov,.cs-big,.cs-tag{display:none}
 .cs-cap p{opacity:0}.cs-cap p:nth-child(4){opacity:1}
 .cs-chips li{background:#fff}
}
@keyframes csS1{0%,17.98%{opacity:1;z-index:2}18.0%,20.2%{opacity:1;z-index:1}20.4%,98.38%{opacity:0;z-index:1}98.4%{opacity:0;z-index:2}100%{opacity:1;z-index:2}}
@keyframes csS2{0%,18.4%{opacity:0;z-index:2}20.0%,37.98%{opacity:1;z-index:2}38.0%,40.2%{opacity:1;z-index:1}40.4%,100%{opacity:0;z-index:1}}
@keyframes csS3{0%,38.4%{opacity:0;z-index:2}40.0%,57.98%{opacity:1;z-index:2}58.0%,60.2%{opacity:1;z-index:1}60.4%,100%{opacity:0;z-index:1}}
@keyframes csS4{0%,58.4%{opacity:0;z-index:2}60.0%,77.98%{opacity:1;z-index:2}78.0%,80.2%{opacity:1;z-index:1}80.4%,100%{opacity:0;z-index:1}}
@keyframes csS5{0%,78.4%{opacity:0;z-index:2}80.0%,97.98%{opacity:1;z-index:2}98.0%,100%{opacity:1;z-index:1}}
@keyframes csChip{0%,19.4%{background:#1F3A68;color:#fff;border-color:#1F3A68}20.6%,100%{background:#fff;color:#5b6b80;border-color:#dfe5ee}}
@keyframes csChipN{0%,19.4%{background:#F26B1D;color:#fff}20.6%,100%{background:#e9eef5;color:#5b6b80}}
@keyframes csCap{0%,19.0%{opacity:1;transform:none}20.0%,99.0%{opacity:0;transform:translateY(4px)}100%{opacity:1;transform:none}}
@keyframes csC1{0%,0.2%{opacity:0;left:41.67%;top:56.31%;transform:none}1.2%{opacity:1;left:41.67%;top:56.31%;transform:none}6.0%{opacity:1;left:19.76%;top:15.32%;transform:none}6.8%{opacity:1;left:19.76%;top:15.32%;transform:scale(.82)}8.0%{opacity:1;left:19.76%;top:15.32%;transform:none}9.2%,100%{opacity:0;left:19.76%;top:15.32%;transform:none}}
@keyframes csR1{0%,6.8%{opacity:0;transform:scale(.3)}7.0%{opacity:.9;transform:scale(.3)}9.6%,100%{opacity:0;transform:scale(1.9)}}
@keyframes csL1{0%,8.4%{opacity:0}9.2%,100%{opacity:1}}
@keyframes csP1{0%,10.4%{opacity:0;transform:translate(-50%,-50%) scale(.3)}11.6%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}12.4%,19.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}19.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csT0{0%,21.2%{opacity:0;transform:translate(-50%,-50%) scale(.3)}22.4%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}23.2%,39.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}39.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csT1{0%,22.6%{opacity:0;transform:translate(-50%,-50%) scale(.3)}23.8%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}24.6%,39.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}39.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csT2{0%,24.0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}25.2%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}26.0%,39.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}39.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csT3{0%,25.4%{opacity:0;transform:translate(-50%,-50%) scale(.3)}26.6%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}27.4%,39.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}39.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csT4{0%,26.8%{opacity:0;transform:translate(-50%,-50%) scale(.3)}28.0%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}28.8%,39.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}39.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csT5{0%,28.2%{opacity:0;transform:translate(-50%,-50%) scale(.3)}29.4%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}30.2%,39.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}39.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csT6{0%,29.6%{opacity:0;transform:translate(-50%,-50%) scale(.3)}30.8%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}31.6%,39.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}39.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csT7{0%,31.0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}32.2%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}33.0%,39.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}39.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csB2{0%,32.8%{stroke-dashoffset:1;opacity:1}34.4%,39.4%{stroke-dashoffset:0;opacity:1}40.0%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes csB3{20.0%,41.6%{stroke-dashoffset:1;opacity:1}43.2%,52.0%{stroke-dashoffset:0;opacity:1}52.6%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes csC3{20.0%,41.0%{opacity:0;left:59.52%;top:67.57%;transform:none}42.0%{opacity:1;left:59.52%;top:67.57%;transform:none}47.2%{opacity:1;left:39.52%;top:16.10%;transform:none}48.4%{opacity:1;left:39.52%;top:16.10%;transform:scale(.82)}50.0%{opacity:1;left:39.52%;top:16.10%;transform:none}55.0%{opacity:1;left:53.57%;top:42.79%;transform:none}56.2%,100%{opacity:0;left:53.57%;top:42.79%;transform:none}}
@keyframes csR3{20.0%,48.4%{opacity:0;transform:scale(.3)}48.6%{opacity:.9;transform:scale(.3)}51.2%,100%{opacity:0;transform:scale(1.9)}}
@keyframes csP3{20.0%,50.0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}51.2%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}52.0%,59.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}59.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csL40{40.0%,63.2%{opacity:0}64.0%,100%{opacity:1}}
@keyframes csL41{40.0%,66.4%{opacity:0}67.2%,100%{opacity:1}}
@keyframes csL42{40.0%,70.0%{opacity:0}70.8%,100%{opacity:1}}
@keyframes csL43{40.0%,73.6%{opacity:0}74.4%,100%{opacity:1}}
@keyframes csF40{40.0%,63.2%{opacity:0;transform:scale(1.06)}63.8%{opacity:1;transform:scale(1)}66.0%,100%{opacity:0;transform:scale(1)}}
@keyframes csF41{40.0%,66.4%{opacity:0;transform:scale(1.06)}67.0%{opacity:1;transform:scale(1)}69.2%,100%{opacity:0;transform:scale(1)}}
@keyframes csF42{40.0%,73.6%{opacity:0;transform:scale(1.06)}74.2%{opacity:1;transform:scale(1)}76.4%,100%{opacity:0;transform:scale(1)}}
@keyframes csP4{40.0%,70.4%{opacity:0;transform:translate(-50%,-50%) scale(.3)}71.6%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}72.4%,79.4%{opacity:1;transform:translate(-50%,-50%) scale(1)}79.8%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes csZ5{60.0%,81.0%{transform:scale(1)}94.0%,100%{transform:scale(1.08)}100%,100%{transform:scale(1)}}
@keyframes csP5{60.0%,86.0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}87.2%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}88.0%,99.8%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
/* MyROVA time comparison: light, typographic rows; per-row zoom → zoom → glint sequence */
.tc{background:#fff;color:var(--ink);padding:clamp(80px,10vw,140px) 0 clamp(72px,9vw,120px)}
.tc ::selection{background:#F26B1D;color:#fff}
.tc-h{font-family:var(--serif);font-weight:500;font-size:clamp(34px,3vw + 14px,56px);letter-spacing:-.01em;line-height:1.2;margin:0;color:#1D2E5A}
.tc-lead{margin:18px 0 0;color:var(--steel-600);font-size:16px}
.tc-note{margin:32px 0 0;color:var(--steel-600);font-size:13px;line-height:1.9}
/* time rows (tr-): ring countdown, rows alternate sides, slide in from window edges one after another */
.tc{overflow-x:clip;--tr-navy:#1B2A5C;--tr-ease:cubic-bezier(.16,1,.3,1)}
.tr-rows{list-style:none;margin:clamp(48px,6vw,80px) auto 0;padding:0;max-width:1040px;display:flex;flex-direction:column;gap:16px;--tr-ring:clamp(176px,24vw,300px)}
.tr-row{position:relative;padding:clamp(40px,6vw,64px) 0;color:var(--tr-navy);font-feature-settings:"palt" 1;letter-spacing:0}
.tr-rule{position:absolute;left:0;right:0;height:2px;background:var(--tr-navy)}
.tr-top{top:0}.tr-bot{bottom:0}
.tr-top::before{content:"";position:absolute;left:0;top:0;width:72px;height:100%;background:var(--accent)}
.tr-rev .tr-top::before{left:auto;right:0}
.tr-pair{display:flex;align-items:center;justify-content:center;gap:clamp(16px,5vw,72px)}
.tr-rev .tr-pair{flex-direction:row-reverse}
.tr-copy{min-width:0}
.tr-ttl{margin:0;font-family:var(--serif);color:var(--accent);font-weight:900;font-size:clamp(32px,9.4vw,92px);line-height:1.1;letter-spacing:-.01em;text-wrap:wrap}
.tr-ttl span{display:block}
.tr-sub{font-size:.62em;letter-spacing:0}
.tr-sub.tr-long{font-size:.52em;letter-spacing:-.02em;white-space:nowrap}
.tr-from{margin:clamp(12px,2vw,22px) 0 0;font-size:clamp(14px,3.8vw,24px);font-weight:700;line-height:1.5;color:var(--tr-navy);font-variant-numeric:tabular-nums}
.tr-from s{text-decoration:line-through 2.5px var(--accent)}
.tr-ring{position:relative;flex:none;width:var(--tr-ring);height:var(--tr-ring);container-type:inline-size}
.tr-ring svg{display:block;width:100%;height:100%;transform:rotate(-90deg)}
.tr-num{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-variant-numeric:tabular-nums;padding-top:4.5cqw;line-height:1}
.tr-val{display:flex;align-items:baseline;color:var(--tr-navy);transition:transform .25s var(--tr-ease)}
.tr-val b{display:inline-block;width:2ch;text-align:right;font-size:42.6cqw;font-weight:700;line-height:1;letter-spacing:-.02em}
.tr-u{font-size:9.4cqw;font-weight:700;margin-left:1.3cqw}
.tr-mark{margin:2cqw 0 0;font-size:max(11px,4.4cqw);font-weight:500;color:#5B6578;line-height:1}
.tr-desc{margin:clamp(20px,3vw,32px) 0 0;padding:0 8px;font-size:clamp(14px,1.2vw + 9.5px,20px);font-weight:700;line-height:1.7;color:var(--tr-navy);text-align:center;word-break:keep-all;overflow-wrap:anywhere}
.tr-val.tr-sheen{background:linear-gradient(45deg,#1B2A5C 0%,#1B2A5C 40%,#4FB3E8 50%,#1B2A5C 60%,#1B2A5C 100%);background-size:300% 300%;background-position:100% 0%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:trSheen .9s ease-in-out forwards}
@keyframes trSheen{from{background-position:100% 0%}to{background-position:0% 100%}}
.tr-arm .tr-copy,.tr-arm .tr-ring,.tr-arm .tr-rule{will-change:transform}
.tr-arm .tr-desc{opacity:0;transform:translateY(12px);transition:opacity .4s ease-out .75s,transform .5s var(--tr-ease) .75s}
.tr-arm .tr-copy,.tr-arm .tr-ring{opacity:0;transition:transform .6s var(--tr-ease) .15s,opacity .35s ease-out .15s}
.tr-arm .tr-copy{transform:translateX(-100vw)}.tr-arm .tr-ring{transform:translateX(100vw)}
.tr-arm .tr-rev .tr-copy{transform:translateX(100vw)}.tr-arm .tr-rev .tr-ring{transform:translateX(-100vw)}
.tr-arm .tr-rule{transition:transform .8s cubic-bezier(.33,1,.68,1)}
.tr-arm .tr-top{transform:translateX(-100vw)}.tr-arm .tr-bot{transform:translateX(100vw)}
.tr-arm .tr-in .tr-copy,.tr-arm .tr-in .tr-ring,.tr-arm .tr-in .tr-rule,.tr-arm .tr-in .tr-desc{opacity:1;transform:none}
/* Kinetic step labels (01-04): text-only overlays over existing real-screen motion */
.feature--media .feature-txt li{font-size:18px;line-height:1.8}
@media (max-width:860px){.feature--media .feature-txt li{font-size:16px}}
.kp-shot{position:relative;container-type:inline-size}
.es-stage,.ds-stage,.sv-stage{container-type:inline-size}
.kp{position:absolute;z-index:8;opacity:0;transform:translate(-50%,-50%);padding:1.1cqi 2.4cqi;border-radius:1.3cqi;background:#F26B1D;color:#fff;font-weight:900;font-size:4.2cqi;line-height:1.15;letter-spacing:.02em;white-space:nowrap;box-shadow:0 1cqi 3cqi rgba(10,20,40,.4);pointer-events:none}
.kp.nv{background:#1F3A68;border:.3cqi solid #F26B1D}
.sv-stage .kp{font-size:3.6cqi}
@media (max-width:560px){.kp{font-size:5cqi}}
.es.is-off .kp,.ds.is-off .kp,.sv.is-off .kp{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){.kp{display:none}}
.kp.kpp10{left:50%;top:40%;animation:kpp10 10s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp11{left:50%;top:40%;animation:kpp11 10s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp12{left:50%;top:40%;animation:kpp12 10s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp13{left:50%;top:40%;animation:kpp13 10s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp20{left:50%;top:50%;animation:kpp20 17s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp21{left:50%;top:50%;animation:kpp21 17s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp22{left:50%;top:50%;animation:kpp22 17s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp23{left:50%;top:50%;animation:kpp23 17s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp24{left:50%;top:50%;animation:kpp24 17s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp30{left:75%;top:30%;animation:kpp30 12s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp31{left:50%;top:22%;animation:kpp31 12s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp32{left:27%;top:30%;animation:kpp32 12s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp40{left:62%;top:50%;animation:kpp40 56s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp41{left:50%;top:10%;animation:kpp41 56s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp42{left:78%;top:28%;animation:kpp42 56s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp43{left:50%;top:50%;animation:kpp43 56s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp44{left:35%;top:25%;animation:kpp44 56s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp45{left:50%;top:40%;animation:kpp45 56s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp46{left:30%;top:25%;animation:kpp46 56s infinite cubic-bezier(.34,1.56,.5,1)}
.kp.kpp47{left:58%;top:62%;animation:kpp47 56s infinite cubic-bezier(.34,1.56,.5,1)}
@keyframes kpp10{0%,3.000%{opacity:0;transform:translate(-50%,-50%) scale(.3)}6.000%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}8.000%,21.500%{opacity:1;transform:translate(-50%,-50%) scale(1)}23.500%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp11{0%,28.000%{opacity:0;transform:translate(-50%,-50%) scale(.3)}31.000%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}33.000%,46.500%{opacity:1;transform:translate(-50%,-50%) scale(1)}48.500%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp12{0%,53.000%{opacity:0;transform:translate(-50%,-50%) scale(.3)}56.000%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}58.000%,71.500%{opacity:1;transform:translate(-50%,-50%) scale(1)}73.500%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp13{0%,78.000%{opacity:0;transform:translate(-50%,-50%) scale(.3)}81.000%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}83.000%,96.500%{opacity:1;transform:translate(-50%,-50%) scale(1)}98.500%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp20{0%,1.765%{opacity:0;transform:translate(-50%,-50%) scale(.3)}3.529%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}4.706%,17.941%{opacity:1;transform:translate(-50%,-50%) scale(1)}19.118%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp21{0%,21.765%{opacity:0;transform:translate(-50%,-50%) scale(.3)}23.529%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}24.706%,37.941%{opacity:1;transform:translate(-50%,-50%) scale(1)}39.118%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp22{0%,41.765%{opacity:0;transform:translate(-50%,-50%) scale(.3)}43.529%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}44.706%,57.941%{opacity:1;transform:translate(-50%,-50%) scale(1)}59.118%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp23{0%,61.765%{opacity:0;transform:translate(-50%,-50%) scale(.3)}63.529%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}64.706%,77.941%{opacity:1;transform:translate(-50%,-50%) scale(1)}79.118%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp24{0%,81.765%{opacity:0;transform:translate(-50%,-50%) scale(.3)}83.529%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}84.706%,97.941%{opacity:1;transform:translate(-50%,-50%) scale(1)}99.118%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp30{0%,5.500%{opacity:0;transform:translate(-50%,-50%) scale(.3)}8.000%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}9.667%,27.083%{opacity:1;transform:translate(-50%,-50%) scale(1)}28.750%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp31{0%,39.500%{opacity:0;transform:translate(-50%,-50%) scale(.3)}42.000%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}43.667%,60.083%{opacity:1;transform:translate(-50%,-50%) scale(1)}61.750%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp32{0%,72.500%{opacity:0;transform:translate(-50%,-50%) scale(.3)}75.000%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}76.667%,94.083%{opacity:1;transform:translate(-50%,-50%) scale(1)}95.750%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp40{0%,0.536%{opacity:0;transform:translate(-50%,-50%) scale(.3)}1.071%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}1.429%,11.875%{opacity:1;transform:translate(-50%,-50%) scale(1)}12.232%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp41{0%,13.036%{opacity:0;transform:translate(-50%,-50%) scale(.3)}13.571%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}13.929%,24.375%{opacity:1;transform:translate(-50%,-50%) scale(1)}24.732%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp42{0%,25.536%{opacity:0;transform:translate(-50%,-50%) scale(.3)}26.071%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}26.429%,36.875%{opacity:1;transform:translate(-50%,-50%) scale(1)}37.232%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp43{0%,38.036%{opacity:0;transform:translate(-50%,-50%) scale(.3)}38.571%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}38.929%,49.375%{opacity:1;transform:translate(-50%,-50%) scale(1)}49.732%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp44{0%,50.536%{opacity:0;transform:translate(-50%,-50%) scale(.3)}51.071%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}51.429%,61.875%{opacity:1;transform:translate(-50%,-50%) scale(1)}62.232%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp45{0%,63.036%{opacity:0;transform:translate(-50%,-50%) scale(.3)}63.571%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}63.929%,74.375%{opacity:1;transform:translate(-50%,-50%) scale(1)}74.732%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp46{0%,75.536%{opacity:0;transform:translate(-50%,-50%) scale(.3)}76.071%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}76.429%,86.875%{opacity:1;transform:translate(-50%,-50%) scale(1)}87.232%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes kpp47{0%,88.036%{opacity:0;transform:translate(-50%,-50%) scale(.3)}88.571%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}88.929%,99.375%{opacity:1;transform:translate(-50%,-50%) scale(1)}99.732%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
/* MyROVA all-in-one (06): look-alike screens with kinetic headings */
.feature--media:has(.ao) .feature-txt li{font-size:18px;line-height:1.8}
@media (max-width:860px){.feature--media:has(.ao) .feature-txt li{font-size:16px}}
.ao{--d:18.0s;width:100%}
.ao-win{border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 24px 50px rgba(15,30,60,.22);border:1px solid #dbe2ec;container-type:inline-size}
.ao-bar{display:flex;align-items:center;gap:1cqi;height:4.4cqi;padding:0 1.6cqi;background:#eef2f7;border-bottom:1px solid #dbe2ec}
.ao-bar i{width:1.2cqi;height:1.2cqi;border-radius:50%;background:#f26b5e}.ao-bar i:nth-child(2){background:#f5bf4f}.ao-bar i:nth-child(3){background:#61c454}
.ao-url{margin-left:1.6cqi;flex:1;display:grid;font-size:1.45cqi;color:#6b7a8f;background:#fff;border-radius:99px;padding:.45cqi 1.6cqi;white-space:nowrap;overflow:hidden}
.ao-url span,.ao-cap p{grid-area:1/1;opacity:0;animation:aoT var(--d) infinite steps(1)}
.ao-stage{position:relative;aspect-ratio:16/9;overflow:hidden;background:#1D2E5A;contain:paint;isolation:isolate}
.ao-sc{position:absolute;inset:0;transform:translateX(104%);will-change:transform,opacity;backface-visibility:hidden;animation:aoS var(--d) infinite cubic-bezier(.2,.8,.2,1);box-shadow:-2cqi 0 4cqi rgba(0,0,0,.35)}
.ao-sc img{position:absolute;inset:0;width:100%;height:100%;display:block}
.ao-sc::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,25,50,0) 30%,rgba(15,25,50,.38))}
.ao-wh{position:absolute;top:-10%;left:0;width:22%;height:120%;z-index:6;background:linear-gradient(90deg,transparent,rgba(255,255,255,.75) 45%,#F26B1D 55%,transparent);mix-blend-mode:screen;opacity:0;animation:aoW var(--d) infinite cubic-bezier(.5,0,.3,1)}
.ao-h{position:absolute;left:50%;top:52%;z-index:5;transform:translate(-50%,-50%);opacity:0;white-space:nowrap;font-weight:900;font-size:8.2cqi;line-height:1;letter-spacing:.04em;color:#fff;text-shadow:0 .4cqi 2cqi rgba(5,15,40,.55);animation:aoH var(--d) infinite cubic-bezier(.2,.9,.25,1)}
.ao-h small{display:block;text-align:center;font-size:.2em;letter-spacing:.3em;color:#FFB27A;margin-bottom:.6em;font-weight:800}
.ao-bd{position:absolute;left:50%;top:52%;z-index:4;width:72%;height:24%;transform:translate(-50%,-50%) scaleX(0);transform-origin:left;background:linear-gradient(100deg,rgba(242,107,29,.94),rgba(185,62,8,.94));clip-path:polygon(3% 0,100% 0,97% 100%,0 100%);animation:aoB var(--d) infinite cubic-bezier(.7,0,.2,1)}
.ao-pg{position:absolute;left:0;right:0;bottom:0;height:.7cqi;z-index:7;background:#F26B1D;transform-origin:left;animation:aoP 1.5s infinite linear}
.ao-ct{position:absolute;right:2cqi;top:2cqi;z-index:7;display:grid;font:800 1.8cqi/1 system-ui,sans-serif;color:#fff;background:rgba(29,46,90,.85);padding:.6cqi 1.2cqi;border-radius:99px}
.ao-ct span{grid-area:1/1;opacity:0;animation:aoT var(--d) infinite steps(1)}
.ao-cap{display:grid;background:#1D2E5A;color:#fff;border-top:3px solid #F26B1D}
.ao-cap p{margin:0;padding:1.3cqi 2cqi;font-size:clamp(13px,2.1cqi,18px);font-weight:700;line-height:1.45}
.ao-s2,.ao-s2 *,.ao-url span:nth-child(2),.ao-cap p:nth-child(2),.ao-ct span:nth-child(2){animation-delay:-16.50s}
.ao-s3,.ao-s3 *,.ao-url span:nth-child(3),.ao-cap p:nth-child(3),.ao-ct span:nth-child(3){animation-delay:-15.00s}
.ao-s4,.ao-s4 *,.ao-url span:nth-child(4),.ao-cap p:nth-child(4),.ao-ct span:nth-child(4){animation-delay:-13.50s}
.ao-s5,.ao-s5 *,.ao-url span:nth-child(5),.ao-cap p:nth-child(5),.ao-ct span:nth-child(5){animation-delay:-12.00s}
.ao-s6,.ao-s6 *,.ao-url span:nth-child(6),.ao-cap p:nth-child(6),.ao-ct span:nth-child(6){animation-delay:-10.50s}
.ao-s7,.ao-s7 *,.ao-url span:nth-child(7),.ao-cap p:nth-child(7),.ao-ct span:nth-child(7){animation-delay:-9.00s}
.ao-s8,.ao-s8 *,.ao-url span:nth-child(8),.ao-cap p:nth-child(8),.ao-ct span:nth-child(8){animation-delay:-7.50s}
.ao-s9,.ao-s9 *,.ao-url span:nth-child(9),.ao-cap p:nth-child(9),.ao-ct span:nth-child(9){animation-delay:-6.00s}
.ao-s10,.ao-s10 *,.ao-url span:nth-child(10),.ao-cap p:nth-child(10),.ao-ct span:nth-child(10){animation-delay:-4.50s}
.ao-s11,.ao-s11 *,.ao-url span:nth-child(11),.ao-cap p:nth-child(11),.ao-ct span:nth-child(11){animation-delay:-3.00s}
.ao-s12,.ao-s12 *,.ao-url span:nth-child(12),.ao-cap p:nth-child(12),.ao-ct span:nth-child(12){animation-delay:-1.50s}
.ao.is-off *,.ao.is-off{animation-play-state:paused!important}
@media (max-width:560px){.ao-win{border-radius:8px}.ao-cap p{font-size:13px;padding:8px 10px}.ao-h{font-size:10.5cqi}.ao-bd{width:86%;height:28%}}
@media (prefers-reduced-motion:reduce){.ao *,.ao{animation:none!important}.ao-sc{transform:none;opacity:0}.ao-s1{opacity:1}.ao-wh,.ao-pg{display:none}.ao-s1 .ao-h,.ao-url span:first-child,.ao-cap p:first-child,.ao-ct span:first-child{opacity:1}.ao-s1 .ao-h{transform:translate(-50%,-50%)}.ao-s1 .ao-bd{transform:translate(-50%,-50%)}}
@keyframes aoS{0%{transform:translateX(104%) skewX(-6deg);opacity:1;z-index:2}1.444%{transform:none;opacity:1;z-index:2}8.333%{transform:scale(1.035);opacity:1;z-index:1}9.778%{transform:translateX(-30%) scale(1.035);opacity:0;z-index:1}9.788%,100%{transform:translateX(104%);opacity:0;z-index:0}}
@keyframes aoW{0%{transform:translateX(-120%) skewX(-20deg);opacity:0}0.111%{opacity:1}1.667%{transform:translateX(260%) skewX(-20deg);opacity:1}1.722%,100%{transform:translateX(260%) skewX(-20deg);opacity:0}}
@keyframes aoH{0%,1.111%{opacity:0;transform:translate(-50%,-50%) scale(1.9);filter:blur(6px)}2.0%{opacity:1;transform:translate(-50%,-50%) scale(.94);filter:none}2.556%,7.333%{opacity:1;transform:translate(-50%,-50%) scale(1)}8.111%{opacity:0;transform:translate(-120%,-50%) skewX(-12deg)}8.167%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.9)}}
@keyframes aoB{0%,1.0%{transform:translate(-50%,-50%) scaleX(0)}1.889%,7.333%{transform:translate(-50%,-50%) scaleX(1)}8.056%,100%{transform:translate(-50%,-50%) scaleX(0);transform-origin:right}}
@keyframes aoT{0%,8.222%{opacity:1}8.333%,100%{opacity:0}}
@keyframes aoP{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}

/* install section */
.inst-head{align-items:center;margin-bottom:clamp(28px,4vw,44px)}
.inst-note{margin:.8em 0 0;font-size:.9rem;color:var(--steel-500)}
.inst{margin:0;display:flex;flex-direction:column;align-items:center;position:relative}
.ip{width:184px;height:372px;border-radius:34px;background:#1B2A5C;padding:8px;box-shadow:0 0 0 1px #0f1a3d,0 24px 40px -24px rgba(14,23,38,.5)}
.ip-scr{position:relative;height:100%;border-radius:27px;overflow:hidden;background:linear-gradient(180deg,#dcefFA 0%,#f4f7fb 100%);padding:34px 14px 0}
.ip-isl{position:absolute;top:9px;left:50%;width:56px;height:16px;margin-left:-28px;border-radius:10px;background:#0f1a3d}
.ip-bar{position:absolute;top:9px;left:20px;right:18px;display:flex;justify-content:space-between;font-size:10px;color:#1B2A5C}
.ip-bar span{width:18px;height:8px;border:1px solid #1B2A5C;border-radius:2px;margin-top:3px}
.ip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px 10px;margin-top:8px}
.ip-app,.ip-slot,.ip-dock i{display:block;aspect-ratio:1;border-radius:9px;background:rgba(27,42,92,.12)}
.ip-app:nth-child(3n){background:rgba(79,179,232,.28)}.ip-app:nth-child(5n){background:rgba(234,88,12,.16)}
.ip-slot{background:none;outline:1px dashed rgba(27,42,92,.3);outline-offset:-1px;transition:outline-color .3s}
.ip-dock{position:absolute;left:10px;right:10px;bottom:10px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:8px;border-radius:18px;background:rgba(27,42,92,.08)}
.ip-fly{position:absolute;z-index:40;width:33px;height:33px;border-radius:9px;left:var(--tx,0);top:var(--ty,0);transform-origin:50% 50%;transform:translate(var(--fx,0),var(--fy,0)) scale(var(--fs,6));opacity:0;filter:blur(1.2px);box-shadow:0 60px 80px -20px rgba(14,23,38,.35)}
.inst.is-in .ip-fly{opacity:1;transform:none;filter:none;box-shadow:0 4px 8px -4px rgba(14,23,38,.5);transition:transform 1.4s cubic-bezier(.55,0,.75,.4) .5s,filter .9s ease-in .5s,box-shadow 1.4s ease-in .5s,opacity .45s ease-out}

.inst.is-in .ip-slot{outline-color:transparent;transition-delay:1.85s}
.inst.is-done .ip-fly{animation:ip-pop .35s ease-out}
@keyframes ip-pop{50%{transform:scale(1.12)}}
.inst figcaption{margin-top:14px;font-family:"Noto Serif JP",serif;font-weight:700;color:#1B2A5C;font-size:1rem}
.inst figcaption::before{content:"";display:inline-block;width:14px;height:2px;background:#EA580C;vertical-align:middle;margin-right:8px}

.devs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.devc{display:flex;gap:14px;align-items:flex-start;padding:18px 18px 16px;border:1px solid var(--steel-200);border-radius:0;background:#fff;transition:transform .25s ease,border-color .25s,box-shadow .25s}
.devc:hover{transform:translateY(-4px);border-color:#4FB3E8;box-shadow:0 10px 20px -14px rgba(27,42,92,.45)}
.devc-ic{flex:0 0 40px;width:40px;height:40px;color:#1B2A5C}
.devc-ic svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.devc h3{margin:0 0 4px;font-size:1.05rem;color:#1B2A5C;font-family:"Noto Serif JP",serif}
.devc h3::after{content:"";display:block;width:18px;height:2px;background:#EA580C;margin-top:5px}
.devc p{margin:0;font-size:.9rem;line-height:1.7;color:var(--steel-700)}
@media (max-width:860px){.devs{grid-template-columns:1fr;gap:10px}.devc{padding:14px}}
.ip-slot{position:relative}.inst.is-done .ip-fly{position:absolute;inset:0;left:0;top:0;width:100%!important;height:100%!important;transform:none;opacity:1;transition:none}
section[aria-labelledby=dev-h]{overflow-x:clip}
.inst.is-rm .ip-fly{filter:none;box-shadow:0 4px 8px -4px rgba(14,23,38,.5)}.inst.is-rm.is-in .ip-fly{transition:transform .9s cubic-bezier(.4,0,.6,1) .2s,opacity .3s ease-out!important}.inst.is-rm.is-done .ip-fly{animation:none}
@media all{.tr-arm .tr-copy,.tr-arm .tr-ring{transition:transform .42s var(--tr-ease) .05s,opacity .25s ease-out .05s}.tr-arm .tr-rule{transition-duration:.5s}.tr-arm .tr-desc{transition:opacity .3s ease-out .35s,transform .35s var(--tr-ease) .35s}}
/* ===== Install: add-to-home-screen demo (reuses .sv stage / chips / .kp badge) ===== */
.hv{--d:12s;max-width:600px;margin-left:auto}
.hv .sv-stage.hv-stage{aspect-ratio:6/5}
.hv-chips{display:flex!important}
.hv-phone{position:absolute;top:4%;left:50%;height:92%;aspect-ratio:9/19.5;transform:translateX(-50%);border-radius:6.4cqi;background:#1B2A5C;padding:1.3cqi;box-shadow:0 22px 40px rgba(15,30,60,.28),inset 0 0 0 1px rgba(255,255,255,.1)}
.hv-phone::before{content:"";position:absolute;z-index:5;top:2.6cqi;left:50%;width:11cqi;height:3cqi;margin-left:-5.5cqi;border-radius:9px;background:#0b1430}
.hv-scr{position:relative;width:100%;height:100%;border-radius:5.2cqi;overflow:hidden;background:#f1f4f9;container-type:inline-size}
.hv-st{position:absolute;z-index:3;inset:0 0 auto 0;height:11cqi;padding:0 9cqi;display:flex;align-items:center;justify-content:space-between;font-size:5cqi;color:#1B2A5C;background:#fff}
.hv-st i{width:8cqi;height:3.6cqi;border:1px solid currentColor;border-radius:1.2cqi}
.hv-st--lt{color:#fff;background:none}
.hv-web{position:absolute;inset:0}
.hv-web>img{position:absolute;top:11cqi;left:0;width:100%;height:auto}
.hv-tb{position:absolute;inset:auto 0 0 0;padding:3cqi 4cqi 5cqi;background:rgba(246,247,250,.96);border-top:1px solid #dde3eb;backdrop-filter:blur(6px)}
.hv-url{display:flex;align-items:center;justify-content:center;gap:1.6cqi;height:10cqi;border-radius:3cqi;background:#fff;box-shadow:0 1px 3px rgba(15,30,60,.12);font-size:5cqi;font-weight:700;color:#1B2A5C}
.hv-url svg{width:4.4cqi;height:4.4cqi;fill:none;stroke:#5b6b80;stroke-width:2.2}
.hv-tools{display:flex;justify-content:space-between;align-items:center;margin-top:3cqi;padding:0 3cqi}
.hv-tools i{width:5cqi;height:5cqi;border-radius:1.2cqi;border:1.5px solid #4FB3E8;opacity:.55}
.hv-share{position:relative;display:grid;place-items:center;width:8cqi;height:8cqi;color:#2b7cf0}
.hv-share svg{width:7cqi;height:7cqi;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.hv-rip{position:absolute;left:50%;top:50%;width:14cqi;height:14cqi;margin:-7cqi 0 0 -7cqi;border-radius:50%;border:.9cqi solid #EA580C;opacity:0}
.hv-sheet{position:absolute;inset:auto 0 0 0;z-index:4;padding:5cqi 5cqi 8cqi;border-radius:7cqi 7cqi 0 0;background:#f4f5f8;box-shadow:0 -10px 30px rgba(15,30,60,.25);transform:translateY(105%)}
.hv-sh-hd{display:flex;align-items:center;gap:3cqi;padding-bottom:4cqi;border-bottom:1px solid #e1e5ec}
.hv-sh-hd img{width:12cqi;height:12cqi;border-radius:2.8cqi;box-shadow:0 1px 3px rgba(0,0,0,.15)}
.hv-sh-hd b{display:block;font-size:5.2cqi;color:#1B2A5C;line-height:1.3}.hv-sh-hd small{font-size:4cqi;color:#7b8798}
.hv-sheet ul{list-style:none;margin:4cqi 0 0;padding:0;border-radius:3.6cqi;overflow:hidden;background:#fff}
.hv-sheet li{position:relative;display:flex;justify-content:space-between;align-items:center;padding:3.6cqi 4.4cqi;font-size:4.6cqi;color:#1f2a3c;border-top:1px solid #eef1f5;line-height:1.3}
.hv-sheet li:first-child{border-top:0}
.hv-sheet li svg{width:6cqi;height:6cqi;fill:none;stroke:#1f2a3c;stroke-width:1.8}
.hv-add{font-weight:700}
.hv-add .hv-rip{left:82%}
.hv-home{position:absolute;inset:0;opacity:0;background:radial-gradient(120% 70% at 85% 0%,#7cc6f0 0,transparent 60%),radial-gradient(90% 60% at 0% 100%,#EA580C 0,transparent 55%),linear-gradient(170deg,#2a4a8e 0%,#1B2A5C 55%,#3a2f5c 100%)}
.hv-grid{list-style:none;margin:0;padding:17cqi 6cqi 0;display:grid;grid-template-columns:repeat(4,1fr);gap:5cqi 5.4cqi}
.hv-grid li{display:flex;flex-direction:column;align-items:center;gap:1.4cqi;min-width:0}
.hv-grid li span{font-size:3.5cqi;color:#fff;white-space:nowrap;line-height:1.2;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.hv-ic{display:grid;place-items:center;width:100%;aspect-ratio:1;border-radius:23%;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.hv-ic svg{width:58%;height:58%;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hv-ic--dk svg{stroke:#e5483b}
.hv-ic--slot{background:none;box-shadow:none}
.hv-slot span{opacity:0;font-weight:700}
.hv-dock{position:absolute;left:4cqi;right:4cqi;bottom:4cqi;display:grid;grid-template-columns:repeat(4,1fr);gap:5.4cqi;padding:3.6cqi 4.4cqi;border-radius:8cqi;background:rgba(255,255,255,.22);backdrop-filter:blur(8px)}
.hv-fly{position:absolute;z-index:7;left:var(--x,0);top:var(--y,0);width:var(--w,30px);height:var(--w,30px);opacity:0;transform-origin:50% 50%;transform:translate(var(--sx,0),var(--sy,0)) scale(var(--s0,4)) rotate(8deg)}
.hv-fly img{display:block;width:100%;height:100%;border-radius:23%;box-shadow:0 .5cqi 1.2cqi rgba(10,20,40,.35)}
.hv .kp{opacity:0}
.hv-kp1{left:50%;top:30%}.hv-kp2{left:50%;top:66%}
/* timeline: same 12s loop / thirds / easing as the upload demo (.sv). Scene A (0-33%) = icon fly-in (svFly timing), B = browser, C = share sheet. Restarted from 0 on entry by motion.js */
.hv .sv-chips .c3,.hv .sv-chips .c3 span{animation-delay:0s}
.hv .sv-chips .c1,.hv .sv-chips .c1 span{animation-delay:calc(var(--d)*-.6667)}
.hv .sv-chips .c2,.hv .sv-chips .c2 span{animation-delay:calc(var(--d)*-.3333)}
.hv-home{animation:hvHome var(--d) infinite}
@keyframes hvHome{0%{opacity:0;transform:scale(.97)}3%,30%{opacity:1;transform:none}34%,100%{opacity:0;transform:scale(1.03)}}
.hv-fly{animation:hvFly var(--d) infinite}
@keyframes hvFly{0%,3%{opacity:0;transform:translate(var(--sx),calc(var(--sy) + var(--w)*.9)) scale(var(--s0)) rotate(8deg)}7%{opacity:1;transform:translate(var(--sx),var(--sy)) scale(var(--s0)) rotate(8deg)}11%{opacity:1;transform:translate(var(--sx),var(--sy)) scale(var(--s0)) rotate(6deg)}22%,30%{opacity:1;transform:none}34%,100%{opacity:0;transform:none}}
.hv-slot span{animation:hvLbl var(--d) infinite}
@keyframes hvLbl{0%,22%{opacity:0}25%,30%{opacity:1}34%,100%{opacity:0}}
.hv-web{animation:hvWeb var(--d) infinite}
@keyframes hvWeb{0%,33%{opacity:0;transform:translateY(14px)}37%,97%{opacity:1;transform:none}100%{opacity:0}}
.hv-share .hv-rip{animation:hvRip1 var(--d) infinite}
@keyframes hvRip1{0%,55.5%{opacity:0;transform:scale(.3)}56%{opacity:.9;transform:scale(.3)}61%,100%{opacity:0;transform:scale(1.6)}}
.hv-sheet{animation:hvSheet var(--d) infinite}
@keyframes hvSheet{0%,63%{transform:translateY(105%)}67%,100%{transform:none}}
.hv-add{animation:hvRow var(--d) infinite}
@keyframes hvRow{0%,82%{background:#fff}84%,100%{background:#fdeadf}}
.hv-add .hv-rip{animation:hvRip2 var(--d) infinite}
@keyframes hvRip2{0%,83.5%{opacity:0;transform:scale(.3)}84%{opacity:.9;transform:scale(.3)}89%,100%{opacity:0;transform:scale(1.6)}}
.hv .kp{opacity:0}
.hv .hv-kp2{animation:hvKp2 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}
@keyframes hvKp2{0%,21.5%{opacity:0;transform:translate(-50%,-50%) scale(.3)}24%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}25.667%,31%{opacity:1;transform:translate(-50%,-50%) scale(1)}33%,100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
.hv .hv-kp1{animation:kpp32 var(--d) infinite cubic-bezier(.34,1.56,.5,1)}
.sv.is-off .hv-web,.sv.is-off .hv-sheet{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){
 .hv-web,.hv-sheet{display:none}
 .hv-home{opacity:1;transform:none}
 .hv-fly{opacity:1;transform:none}
 .hv-slot span{opacity:1}
 .hv .sv-chips .c3,.hv .sv-chips .c3 span{background:#1F3A68;color:#fff;border-color:#1F3A68}
}
.inst-head .hv{width:100%}
@media (max-width:860px){.hv{max-width:none;margin:0}.hv .sv-stage.hv-stage{aspect-ratio:1/1.12}.hv-chips{order:2}.hv-chips li{white-space:normal;font-size:.62rem}.hv .kp{font-size:5cqi}}
/* ===== Pricing v=s: separate light cards, tighter rhythm, LP-style struck price, button motion ===== */
.pricing{gap:14px;border:0;background:none;border-radius:0;overflow:visible}
.pricing .plan{background:#fff;border:1px solid var(--steel-200);border-radius:var(--radius);padding:22px 20px 20px;line-height:1.5;transition:border-color .25s,box-shadow .25s}
.pricing .plan:hover{border-color:var(--steel-300);box-shadow:0 10px 24px -18px rgba(27,42,92,.35)}
.pricing .plan:first-child{border-radius:var(--radius)}
@media (max-width:1024px){.pricing .plan{border-bottom:1px solid var(--steel-200)}}
@media (max-width:600px){.pricing{gap:12px}.pricing .plan{border-right:1px solid var(--steel-200)!important}}
.pricing .plan h3{margin:0;line-height:1.3}
.pricing .plan .seats{margin:2px 0 10px;line-height:1.4}
.pricing .price{line-height:1.1}
.pricing .price .pre{margin-bottom:2px}
.pricing .plan .note{margin:4px 0 0;line-height:1.4}
.pricing .plan .free{margin-top:8px}
.pricing .plan dl{margin:12px 0 14px;padding-top:10px;gap:2px;line-height:1.4}
.pricing .plan dd{margin:0 0 4px}
/* LP (myrova.net/lp) small plan: grey 「月額 18,000円」 with a static 2px red line-through, then 初月 0円 */
.price-was{margin:0 0 2px;font-size:.9rem;color:#8a94a6;line-height:1.3}
.price-was s{text-decoration:line-through;text-decoration-color:#E53E3E;text-decoration-thickness:2px}
.pricing .price .pre-in{font-size:.95rem;font-weight:700;margin-right:6px;color:var(--ink)}
.pricing .plan:first-child .price{color:var(--accent)}
/* buttons: lift, arrow nudge (existing), shine sweep, press */
.pricing .plan .btn{position:relative;overflow:hidden;min-height:44px;transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out),background-color .2s}
.pricing .plan .btn::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);pointer-events:none}
.pricing .plan .btn:hover{transform:translateY(-2px);box-shadow:0 8px 16px -8px rgba(27,42,92,.45)}
.pricing .plan .btn:hover::after{left:130%;transition:left .6s var(--ease-out)}
.pricing .plan .btn:hover svg{transform:translateX(4px)}
.pricing .plan .btn:active{transform:translateY(0) scale(.98);box-shadow:0 2px 6px -3px rgba(27,42,92,.4)}
@media (prefers-reduced-motion:reduce){.pricing .plan .btn::after{display:none}}
.pricing .price{margin:0}.pricing .plan p{margin-block:0}.pricing .plan .note{margin-top:4px}.pricing .plan .seats{margin:2px 0 10px}.pricing .plan .free{align-self:flex-start;margin-top:8px}.pricing .price-was{margin-bottom:2px}
/* v=t: pricing card border = site navy #1F3A68 (same as the pills / navy badges), 1.5px */
.pricing .plan{border:1.5px solid #1F3A68}
.pricing .plan:hover{border-color:#1F3A68;box-shadow:0 14px 28px -16px rgba(31,58,104,.45)}
@media (max-width:1024px){.pricing .plan{border-bottom:1.5px solid #1F3A68}}
@media (max-width:600px){.pricing .plan{border-right:1.5px solid #1F3A68!important}}
.shot--vid video{display:block;width:100%;height:auto;aspect-ratio:1280/684;border-radius:12px;border:1px solid #dbe2ec;box-shadow:0 24px 50px rgba(15,30,60,.22);background:#eef1f5}
