/* REVIT.Messenger landing v5 — sequential, screenshot-led product story. */
body:has(.revit-plugin-hero.is-messenger-hero) header.site,
body:has(.revit-plugin-hero.is-messenger-hero) .subnav{
  background:#0b1119!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.revit-plugin-hero.is-messenger-hero{
  position:relative;
  overflow:hidden;
  border-color:rgba(24,225,240,.2);
  background:
    radial-gradient(circle at 82% 12%,rgba(24,225,240,.13),transparent 34%),
    linear-gradient(135deg,rgba(24,225,240,.075),rgba(255,255,255,.018));
}
.revit-plugin-hero.is-messenger-hero::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(90deg,#000,transparent 72%);
}
.revit-plugin-hero.is-messenger-hero .container{position:relative;z-index:1}
.revit-plugin-hero.is-messenger-hero .commerce-hero-grid.detail-grid{
  grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);
  gap:clamp(30px,5vw,68px);
  align-items:center;
}
.revit-plugin-hero.is-messenger-hero h1{max-width:12ch;font-size:clamp(42px,5.6vw,78px);line-height:.96;letter-spacing:-.045em}
.revit-plugin-hero.is-messenger-hero .lead{max-width:68ch}
.revit-plugin-hero.is-messenger-hero .revit-plugin-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.revit-plugin-hero.is-messenger-hero .revit-plugin-kpi{min-height:94px;padding:14px 13px;background:rgba(4,8,14,.42);border-color:rgba(24,225,240,.13)}
.revit-plugin-hero.is-messenger-hero .revit-plugin-kpi strong{font-size:15px;line-height:1.2}
.revit-plugin-hero.is-messenger-hero .revit-plugin-kpi span{font-size:10px;line-height:1.35}
.messenger-hero-visual{display:grid;gap:12px}
.messenger-hero-media{
  position:relative;
  display:block;
  overflow:hidden;
  border:1px solid rgba(24,225,240,.22);
  border-radius:24px;
  background:#07101a;
  box-shadow:0 28px 80px rgba(0,0,0,.46),0 0 70px rgba(24,225,240,.07);
  cursor:zoom-in;
}
.messenger-hero-media::after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)}
.messenger-hero-media img{display:block;width:100%;height:auto;aspect-ratio:2048/1118;object-fit:cover}
.messenger-hero-badge{
  position:absolute;
  left:16px;
  bottom:16px;
  z-index:2;
  display:flex;
  align-items:center;
  gap:9px;
  max-width:calc(100% - 32px);
  padding:10px 12px;
  border:1px solid rgba(24,225,240,.3);
  border-radius:999px;
  background:rgba(5,12,18,.88);
  box-shadow:0 12px 30px rgba(0,0,0,.35);
  color:var(--text);
  font:500 12px/1.4 var(--font-mono);
}
.messenger-hero-badge::before{content:'';flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 14px var(--cyan)}
.messenger-hero-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.messenger-hero-summary span{min-width:0;padding:11px 12px;border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.24);color:var(--text-2);font:12px/1.45 var(--font-mono)}

.messenger-landing-v5{overflow:hidden}
.messenger-landing-v5 :where(h2,h3,p,span,a){font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.rm-section-nav{position:sticky;top:var(--header-h,72px);z-index:35;border-block:1px solid rgba(24,225,240,.13);background:#0b1119}
.rm-section-nav-inner{display:flex;gap:4px;overflow-x:auto;padding-block:8px;scrollbar-width:none}
.rm-section-nav-inner::-webkit-scrollbar{display:none}
.rm-section-nav a{flex:0 0 auto;padding:9px 12px;border:1px solid transparent;color:var(--text-3);font:600 11px/1 var(--font-mono);letter-spacing:.05em;text-transform:uppercase}
.rm-section-nav a:hover{border-color:rgba(24,225,240,.2);color:var(--text);background:rgba(24,225,240,.055)}
.rm-section-head{align-items:end}
.rm-section-head .lead{max-width:780px}

.rm-module-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.rm-module-card{position:relative;min-height:200px;padding:22px 18px;border:1px solid rgba(255,255,255,.11);background:linear-gradient(160deg,rgba(255,255,255,.038),rgba(0,0,0,.2));overflow:hidden}
.rm-module-card::before{content:attr(data-number);display:inline-grid;place-items:center;width:36px;height:36px;margin-bottom:26px;border:1px solid rgba(24,225,240,.28);color:var(--cyan);font:600 11px/1 var(--font-mono);letter-spacing:.1em}
.rm-module-card::after{content:'';position:absolute;width:126px;height:126px;right:-70px;top:-70px;border:1px solid rgba(24,225,240,.13);border-radius:50%}
.rm-module-card h3{margin:0 0 10px;font-size:20px;line-height:1.2}
.rm-module-card p{margin:0;color:var(--text-2);font-size:14px;line-height:1.58}

.rm-choice-panel{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:22px;margin-top:28px;padding:clamp(20px,3vw,34px);border:1px solid rgba(24,225,240,.16);background:linear-gradient(145deg,rgba(24,225,240,.055),rgba(0,0,0,.18))}
.rm-choice-heading h2{margin:7px 0 12px;font-size:clamp(28px,3vw,44px);line-height:1.06}
.rm-choice-heading p{margin:0;color:var(--text-2);line-height:1.65}
.rm-choice-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1)}
.rm-choice-card{position:relative;padding:22px;background:#0d151f}
.rm-choice-card::before{content:attr(data-step);display:block;margin-bottom:20px;color:var(--cyan);font:600 11px/1 var(--font-mono);letter-spacing:.12em}
.rm-choice-card:not(:last-child)::after{content:'→';position:absolute;right:-10px;top:50%;z-index:2;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--cyan);color:#071018;font:700 12px/1 var(--font-mono)}
.rm-choice-label{display:inline-block;margin-bottom:12px;padding:6px 8px;border:1px solid rgba(24,225,240,.25);color:var(--cyan);font:600 10px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}
.rm-choice-card h3{margin:0 0 9px;font-size:24px}
.rm-choice-card p{margin:0;color:var(--text-2);line-height:1.58}
.rm-choice-example{display:block;margin-top:17px;padding-top:14px;border-top:1px dashed rgba(255,255,255,.13);color:var(--text-3);font:11px/1.5 var(--font-mono)}

.rm-process{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid rgba(255,255,255,.11);background:rgba(0,0,0,.16)}
.rm-process article{position:relative;min-height:215px;padding:24px 18px;border-right:1px solid rgba(255,255,255,.1)}
.rm-process article:last-child{border-right:0}
.rm-process article::before{content:attr(data-step);display:grid;place-items:center;width:38px;height:38px;margin-bottom:28px;border:1px solid rgba(24,225,240,.28);color:var(--cyan);font:600 11px/1 var(--font-mono);letter-spacing:.1em}
.rm-process article:not(:last-child)::after{content:'';position:absolute;right:-1px;top:42px;width:34px;height:1px;background:linear-gradient(90deg,rgba(24,225,240,.1),var(--cyan));transform:translateX(50%)}
.rm-process h3{margin:0 0 9px;font-size:18px;line-height:1.25}
.rm-process p{margin:0;color:var(--text-2);font-size:13px;line-height:1.58}

.rm-screen-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.rm-screen-card{min-width:0;border:1px solid rgba(255,255,255,.11);background:linear-gradient(155deg,rgba(255,255,255,.028),rgba(0,0,0,.2))}
.rm-screen-card.is-wide{grid-column:1/-1}
.rm-screen-media{position:relative;display:grid;place-items:center;min-height:340px;padding:18px;overflow:hidden;background:radial-gradient(circle at 50% 0,rgba(24,225,240,.08),transparent 58%),#111923;cursor:zoom-in;contain:paint}
.rm-screen-card.is-wide .rm-screen-media{min-height:430px}
.rm-screen-media img{display:block;width:auto;max-width:100%;height:auto;max-height:570px;object-fit:contain}
.rm-screen-zoom{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(24,225,240,.28);background:rgba(5,12,18,.82);color:var(--cyan);font:14px/1 var(--font-mono)}
.rm-screen-copy{padding:20px 22px 23px}
.rm-screen-number{display:block;margin-bottom:9px;color:var(--cyan);font:600 11px/1 var(--font-mono);letter-spacing:.12em}
.rm-screen-copy h3{margin:0 0 8px;font-size:22px;line-height:1.2}
.rm-screen-copy p{margin:0;color:var(--text-2);font-size:14px;line-height:1.62}
.rm-communication-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.rm-task-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:2px}
.rm-task-tabs span{padding:8px 11px;border:1px solid rgba(24,225,240,.22);background:rgba(24,225,240,.045);color:var(--text-2);font:600 11px/1 var(--font-mono);letter-spacing:.04em}

.rm-team-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:18px}
.rm-roles-panel,.rm-scope-panel{padding:26px;border:1px solid rgba(255,255,255,.11);background:rgba(0,0,0,.17)}
.rm-roles-panel h3,.rm-scope-panel h3{margin:0 0 10px;font-size:24px}
.rm-roles-panel p,.rm-scope-panel p{margin:0;color:var(--text-2);line-height:1.65}
.rm-role-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.rm-role-list span{padding:9px 12px;border:1px solid rgba(24,225,240,.22);background:rgba(24,225,240,.045);color:var(--text-2);font:12px/1.35 var(--font-mono)}
.rm-scope-panel{border-color:rgba(255,184,77,.22);background:linear-gradient(145deg,rgba(255,184,77,.055),rgba(0,0,0,.18))}
.rm-scope-label{display:inline-block;margin-bottom:18px;padding:7px 9px;border:1px solid rgba(255,184,77,.25);color:#ffc468;font:600 10px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}

.rm-buy-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:18px;align-items:stretch}
.rm-buy-card,.rm-guide-card{display:grid;gap:20px;padding:clamp(22px,3vw,32px);border:1px solid rgba(255,255,255,.11);background:linear-gradient(150deg,rgba(255,255,255,.032),rgba(0,0,0,.2))}
.rm-buy-card{border-color:rgba(24,225,240,.2);background:linear-gradient(145deg,rgba(24,225,240,.065),rgba(0,0,0,.2))}
.rm-price-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.rm-price{display:block;color:var(--text);font:800 clamp(46px,6vw,78px)/.9 var(--font-display);letter-spacing:-.05em}
.rm-price-note{display:block;margin-top:9px;color:var(--text-3);font:11px/1.4 var(--font-mono)}
.rm-buy-card ul{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--text-2)}
.rm-buy-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}
.rm-guide-card{align-content:space-between}
.rm-guide-card h3{margin:6px 0 10px;font-size:clamp(26px,3vw,38px);line-height:1.08}
.rm-guide-card p{margin:0;color:var(--text-2);line-height:1.65}

@media(max-width:1180px){
  .revit-plugin-hero.is-messenger-hero .commerce-hero-grid.detail-grid{grid-template-columns:1fr}
  .revit-plugin-hero.is-messenger-hero h1{max-width:15ch}
  .revit-plugin-hero.is-messenger-hero .revit-plugin-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rm-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rm-choice-panel{grid-template-columns:1fr}
  .rm-process{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rm-process article:nth-child(3){border-right:0}
  .rm-process article:nth-child(n+4){border-top:1px solid rgba(255,255,255,.1)}
  .rm-process article:nth-child(3)::after{display:none}
  .rm-buy-grid{grid-template-columns:1fr}
}
@media(max-width:850px){
  .rm-section-head{display:block}
  .rm-module-grid,.rm-choice-flow,.rm-screen-grid,.rm-communication-grid,.rm-team-grid{grid-template-columns:1fr}
  .rm-choice-card:not(:last-child)::after{content:'↓';right:50%;top:auto;bottom:-10px;transform:translateX(50%)}
  .rm-process{grid-template-columns:1fr}
  .rm-process article,.rm-process article:nth-child(3){border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}
  .rm-process article:nth-child(n+4){border-top:0}
  .rm-process article:last-child{border-bottom:0}
  .rm-process article::after{display:none!important}
  .rm-screen-card.is-wide{grid-column:auto}
  .rm-price-row{align-items:flex-end}
}
@media(max-width:620px){
  .revit-plugin-hero.is-messenger-hero h1{font-size:clamp(39px,13vw,58px)}
  .revit-plugin-hero.is-messenger-hero .revit-plugin-kpis{grid-template-columns:1fr 1fr}
  .messenger-hero-summary{grid-template-columns:1fr}
  .messenger-hero-badge{position:static;max-width:none;border-width:1px 0 0;border-radius:0}
  .rm-module-grid{grid-template-columns:1fr}
  .rm-choice-panel{padding:18px}
  .rm-screen-media,.rm-screen-card.is-wide .rm-screen-media{min-height:220px;padding:10px}
  .rm-screen-copy{padding:18px}
  .rm-price-row{display:grid}
  .rm-buy-actions{display:grid}
  .rm-buy-actions .btn{width:100%}
}
