/* AnA Business R23 — homepage migration redesign */
html,body{overflow-x:hidden}
:root{
  --r23-accent:#4f8cff;
  --r23-accent-2:#74b3ff;
  --r23-ink:#eef6ff;
  --r23-muted:#9fb4c7;
  --r23-card:rgba(8,22,36,.82);
  --r23-card-strong:#0d2233;
  --r23-line:rgba(148,183,219,.18);
  --r23-success:#52dbc8;
  --r23-shadow:0 26px 70px rgba(0,0,0,.28);
}
html[data-theme="daylight"]{
  --r23-ink:#102132;
  --r23-muted:#607284;
  --r23-card:rgba(255,255,255,.94);
  --r23-card-strong:#f6f9fc;
  --r23-line:rgba(26,62,99,.14);
  --r23-shadow:0 22px 60px rgba(15,42,70,.12);
}
html[data-theme="laguna"]{
  --r23-accent:#53d7ca;
  --r23-accent-2:#91eee3;
  --r23-success:#91eee3;
}
html[data-theme="contrast"]{
  --r23-accent:#fff;
  --r23-accent-2:#fff;
  --r23-ink:#fff;
  --r23-muted:#d1d5db;
  --r23-card:#050505;
  --r23-card-strong:#111;
  --r23-line:rgba(255,255,255,.28);
  --r23-success:#fff;
}
.site-nav .r23-nav-migration{
  position:relative;
  color:var(--r23-accent)!important;
  font-weight:800;
}
.site-nav .r23-nav-migration::after{
  content:"NEW";
  position:absolute;
  top:-10px;
  right:-16px;
  padding:2px 5px;
  border-radius:999px;
  font-size:8px;
  line-height:1;
  letter-spacing:.08em;
  color:#fff;
  background:linear-gradient(135deg,#3c74ff,#6cb7ff);
}
.hero-home{
  position:relative;
  overflow:hidden;
  padding-top:clamp(66px,7vw,110px)!important;
  padding-bottom:clamp(58px,7vw,100px)!important;
}
.hero-home::before{
  content:"";
  position:absolute;
  inset:-10% -20% auto;
  height:86%;
  pointer-events:none;
  background:
    radial-gradient(circle at 72% 34%,rgba(65,126,255,.18),transparent 34%),
    radial-gradient(circle at 22% 26%,rgba(73,225,207,.07),transparent 28%);
}
.hero-home .hero-grid{
  position:relative;
  z-index:1;
  gap:clamp(34px,5vw,78px);
  align-items:center;
}
.hero-home .hero-copy{
  max-width:660px;
}
.hero-home .hero-copy .eyebrow{
  color:var(--r23-accent);
  letter-spacing:.13em;
  font-weight:850;
}
.hero-home .hero-copy h1{
  max-width:720px;
  font-size:clamp(2.8rem,5.2vw,5rem);
  line-height:.98;
  letter-spacing:-.055em;
  margin-bottom:22px;
}
.hero-home .hero-copy h1 span{
  display:block;
}
.hero-home .hero-copy h1 span[data-r23-key="heroTitle"]{
  margin-top:0;
  font-size:1em;
  line-height:.98;
  letter-spacing:-.055em;
  color:inherit;
  font-weight:inherit;
}
.hero-home .hero-copy h1 span[data-r23-key="heroSpan"]{
  margin-top:12px;
  font-size:.44em;
  line-height:1.15;
  letter-spacing:-.025em;
  color:var(--r23-muted);
  font-weight:650;
}
.hero-home .hero-lede{
  max-width:650px;
  font-size:clamp(1rem,1.4vw,1.16rem);
  line-height:1.7;
}
.hero-home .action-row{
  gap:12px;
  flex-wrap:wrap;
}
.hero-home .action-row .r23-primary{
  min-height:48px;
  padding:0 22px;
  border-radius:12px;
  background:linear-gradient(135deg,#3d72ff,#68a8ff)!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(56,112,255,.28);
  border:1px solid rgba(255,255,255,.14);
  font-weight:800;
}
.hero-home .action-row .r23-secondary{
  min-height:48px;
  padding:0 20px;
  border-radius:12px;
  border:1px solid var(--r23-line);
  background:color-mix(in srgb,var(--r23-card) 82%,transparent);
  color:var(--r23-ink);
  font-weight:750;
  backdrop-filter:blur(14px);
}
.hero-home .marketing-stage{
  position:relative;
  min-height:520px;
}
.r23-migration-card{
  position:absolute;
  z-index:8;
  top:-28px;
  left:-48px;
  width:min(420px,88%);
  border:1px solid color-mix(in srgb,var(--r23-accent) 38%,var(--r23-line));
  background:linear-gradient(180deg,color-mix(in srgb,var(--r23-card) 94%,transparent),color-mix(in srgb,var(--r23-card-strong) 96%,transparent));
  border-radius:22px;
  padding:18px;
  color:var(--r23-ink);
  box-shadow:var(--r23-shadow);
  backdrop-filter:blur(18px);
}
.r23-migration-card::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(107,161,255,.28),transparent 35%,rgba(75,222,208,.12));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  padding:1px;
}
.r23-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.r23-card-top small{
  display:block;
  margin-bottom:3px;
  color:var(--r23-accent-2);
  font-size:10px;
  letter-spacing:.13em;
  font-weight:850;
}
.r23-card-top strong{
  display:block;
  font-size:17px;
}
.r23-card-badge{
  flex:0 0 auto;
  padding:5px 8px;
  border-radius:999px;
  color:var(--r23-success);
  background:color-mix(in srgb,var(--r23-success) 9%,transparent);
  border:1px solid color-mix(in srgb,var(--r23-success) 33%,transparent);
  font-size:10px;
  font-weight:800;
}
.r23-file-box{
  display:flex;
  gap:11px;
  align-items:center;
  padding:12px;
  border-radius:14px;
  border:1px dashed color-mix(in srgb,var(--r23-accent) 38%,var(--r23-line));
  background:color-mix(in srgb,var(--r23-card-strong) 88%,transparent);
}
.r23-file-icon{
  width:40px;height:40px;
  display:grid;place-items:center;
  border-radius:12px;
  background:linear-gradient(135deg,#315dff,#72afff);
  color:#fff;
  font-weight:900;
  font-size:12px;
}
.r23-file-copy{
  min-width:0;
  flex:1;
}
.r23-file-copy strong{
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:12px;
}
.r23-file-copy span{
  display:block;
  margin-top:3px;
  color:var(--r23-muted);
  font-size:10px;
}
.r23-card-flow{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:7px;
  margin:13px 0 11px;
}
.r23-card-flow span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:5px 4px;
  text-align:center;
  border-radius:10px;
  border:1px solid var(--r23-line);
  background:rgba(255,255,255,.025);
  color:var(--r23-muted);
  font-size:9px;
  font-weight:750;
}
.r23-card-note{
  display:flex;
  align-items:flex-start;
  gap:8px;
  color:var(--r23-muted);
  font-size:10px;
  line-height:1.45;
}
.r23-card-note i{
  flex:0 0 auto;
  width:18px;height:18px;
  display:grid;place-items:center;
  border-radius:50%;
  background:var(--r23-success);
  color:#042420;
  font-style:normal;
  font-size:11px;
  font-weight:900;
}
.r23-card-export{
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid var(--r23-line);
  color:var(--r23-accent-2);
  font-size:10px;
  font-weight:750;
}
.r23-migration-flow{
  position:relative;
  margin-top:-26px;
  padding:0 0 clamp(58px,7vw,100px);
}
.r23-flow-shell{
  border:1px solid var(--r23-line);
  border-radius:24px;
  padding:clamp(20px,3vw,34px);
  background:color-mix(in srgb,var(--r23-card) 92%,transparent);
  box-shadow:var(--r23-shadow);
  backdrop-filter:blur(16px);
}
.r23-flow-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:22px;
}
.r23-flow-head span{
  color:var(--r23-accent);
  font-size:11px;
  font-weight:850;
  letter-spacing:.12em;
}
.r23-flow-head h2{
  margin:5px 0 0;
  color:var(--r23-ink);
  font-size:clamp(1.65rem,3vw,2.5rem);
  letter-spacing:-.04em;
}
.r23-flow-head p{
  max-width:520px;
  margin:0;
  color:var(--r23-muted);
  line-height:1.55;
}
.r23-steps{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.r23-step{
  min-height:150px;
  padding:17px;
  border:1px solid var(--r23-line);
  border-radius:16px;
  background:var(--r23-card-strong);
}
.r23-step b{
  display:grid;
  place-items:center;
  width:31px;height:31px;
  margin-bottom:20px;
  border-radius:10px;
  background:color-mix(in srgb,var(--r23-accent) 13%,transparent);
  color:var(--r23-accent-2);
  font-size:12px;
}
.r23-step strong{
  display:block;
  margin-bottom:6px;
  color:var(--r23-ink);
  font-size:14px;
}
.r23-step span{
  display:block;
  color:var(--r23-muted);
  font-size:12px;
  line-height:1.55;
}
.r23-data-owner{
  margin-top:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:15px 16px;
  border-radius:15px;
  border:1px solid color-mix(in srgb,var(--r23-success) 30%,var(--r23-line));
  background:color-mix(in srgb,var(--r23-success) 5%,transparent);
}
.r23-data-owner strong{
  color:var(--r23-ink);
}
.r23-data-owner span{
  color:var(--r23-muted);
  font-size:12px;
}
.r23-data-owner a{
  flex:0 0 auto;
  color:var(--r23-success);
  font-size:12px;
  font-weight:800;
}
@media(max-width:1080px){
  .r23-migration-card{left:0;top:-12px;width:min(390px,86%)}
  .hero-home .marketing-stage{padding-top:90px}
}
@media(max-width:820px){
  .site-nav .r23-nav-migration::after{display:none}
  .hero-home .hero-grid{grid-template-columns:1fr!important}
  .hero-home .hero-copy{max-width:none}
  .hero-home .marketing-stage{min-height:500px;padding-top:100px}
  .r23-migration-card{left:50%;transform:translateX(-50%);width:min(430px,94%)}
  .r23-flow-head{display:block}
  .r23-flow-head p{margin-top:10px}
  .r23-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .hero-home{padding-top:42px!important}
  .hero-home .site-container.hero-grid{
    width:100%!important;
    max-width:100%!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .hero-home .hero-copy{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .hero-home .hero-copy h1{font-size:clamp(2.35rem,10.5vw,3.2rem)}
  .hero-home .action-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
  }
  .hero-home .action-row>a{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    justify-content:center!important;
  }
  .hero-home .hero-ai-entry{
    width:100%!important;
    max-width:100%!important;
  }
  .hero-home .marketing-stage{
    width:100%!important;
    max-width:100%!important;
    min-height:455px;
    padding-top:136px;
  }
  .r23-migration-card{
    top:0;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:100%!important;
    transform:none!important;
  }
  .r23-card-flow{grid-template-columns:repeat(2,1fr)}
  .r23-migration-flow .site-container{
    width:100%!important;
    max-width:100%!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .r23-flow-shell{padding:18px!important}
  .r23-flow-head h2{font-size:clamp(1.8rem,9vw,2.2rem)}
  .r23-steps{grid-template-columns:1fr}
  .r23-data-owner{align-items:flex-start;flex-direction:column}
}

/* =========================================================
   R23.1 CLEAN HERO — remove visual stacking from first screen
   ========================================================= */
.hero-home{
  padding-top:clamp(54px,5vw,82px)!important;
  padding-bottom:clamp(58px,6vw,92px)!important;
}
.hero-home .hero-grid{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;
  gap:clamp(52px,6vw,96px)!important;
  align-items:center!important;
}
.hero-home .hero-copy{
  max-width:610px!important;
}
.hero-home .hero-copy h1{
  max-width:600px!important;
  font-size:clamp(2.85rem,4.35vw,4.45rem)!important;
  line-height:.98!important;
  margin-bottom:20px!important;
}
.hero-home .hero-copy h1 span[data-r23-key="heroSpan"]{
  max-width:560px;
  margin-top:14px!important;
  font-size:.39em!important;
  line-height:1.18!important;
  letter-spacing:-.02em!important;
}
.hero-home .hero-lede{
  max-width:610px!important;
  margin-top:0!important;
  font-size:1.03rem!important;
  line-height:1.68!important;
}
.hero-home .action-row{
  margin-top:26px!important;
  gap:12px!important;
}
.hero-home .action-row>a{
  min-width:0!important;
}
.hero-home .marketing-stage{
  position:relative!important;
  min-height:500px!important;
  padding-top:0!important;
}
.hero-home .marketing-desktop{
  transform:translateY(12px) scale(.98);
  transform-origin:center center;
}
.hero-home .marketing-stage-phone{
  transform:translate(2%,4%) rotate(4deg) scale(.94);
  transform-origin:center center;
}
.r231-migration-badge{
  position:absolute;
  z-index:9;
  left:18px;
  bottom:20px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  width:min(430px,76%);
  min-height:66px;
  padding:10px 12px;
  border:1px solid color-mix(in srgb,var(--r23-accent) 34%,var(--r23-line));
  border-radius:16px;
  background:color-mix(in srgb,var(--r23-card) 94%,transparent);
  color:var(--r23-ink);
  box-shadow:0 18px 46px rgba(0,0,0,.24);
  backdrop-filter:blur(16px);
  text-decoration:none;
}
.r231-migration-badge:hover{
  border-color:color-mix(in srgb,var(--r23-accent) 62%,var(--r23-line));
  transform:translateY(-2px);
}
.r231-badge-formats{
  display:grid;
  place-items:center;
  min-width:88px;
  height:38px;
  padding:0 9px;
  border-radius:11px;
  background:linear-gradient(135deg,#3d72ff,#65a5ff);
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.03em;
  white-space:nowrap;
}
.r231-badge-copy{
  min-width:0;
}
.r231-badge-copy strong{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
  line-height:1.25;
}
.r231-badge-copy small{
  display:block;
  margin-top:3px;
  color:var(--r23-success);
  font-size:10px;
  font-weight:800;
}
.r231-badge-arrow{
  color:var(--r23-accent-2);
  font-size:21px;
  line-height:1;
}
.r23-migration-flow{
  margin-top:0!important;
  padding-top:16px!important;
}
.r23-flow-shell{
  padding:clamp(26px,3vw,38px)!important;
  box-shadow:0 14px 42px rgba(0,0,0,.12)!important;
}
.r23-flow-head{
  align-items:center!important;
  margin-bottom:24px!important;
}
.r23-flow-head h2{
  max-width:620px;
  font-size:clamp(1.75rem,2.7vw,2.35rem)!important;
  line-height:1.12!important;
}
.r23-flow-head p{
  max-width:480px!important;
  font-size:13px!important;
}
.r23-step{
  min-height:138px!important;
  padding:16px!important;
}
.r23-step b{
  margin-bottom:14px!important;
}
.r23-data-owner{
  margin-top:12px!important;
  padding:13px 15px!important;
}

@media(max-width:1080px){
  .hero-home .hero-grid{
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;
    gap:36px!important;
  }
  .hero-home .hero-copy h1{
    font-size:clamp(2.7rem,4.8vw,4rem)!important;
  }
  .r231-migration-badge{
    left:10px;
    bottom:14px;
    width:min(390px,82%);
  }
}
@media(max-width:820px){
  .hero-home .hero-grid{
    grid-template-columns:1fr!important;
    gap:32px!important;
  }
  .hero-home .hero-copy{
    max-width:680px!important;
  }
  .hero-home .marketing-stage{
    min-height:460px!important;
    padding-top:0!important;
  }
  .r231-migration-badge{
    left:50%;
    bottom:8px;
    width:min(430px,90%);
    transform:translateX(-50%);
  }
  .r231-migration-badge:hover{
    transform:translateX(-50%) translateY(-2px);
  }
}
@media(max-width:560px){
  .hero-home{
    padding-top:36px!important;
    padding-bottom:48px!important;
  }
  .hero-home .hero-copy h1{
    font-size:clamp(2.25rem,10vw,3rem)!important;
  }
  .hero-home .hero-copy h1 span[data-r23-key="heroSpan"]{
    font-size:.48em!important;
    line-height:1.2!important;
  }
  .hero-home .hero-lede{
    font-size:.98rem!important;
    line-height:1.62!important;
  }
  .hero-home .marketing-stage{
    min-height:390px!important;
  }
  .hero-home .marketing-desktop{
    transform:translateY(4px) scale(.95);
  }
  .hero-home .marketing-stage-phone{
    transform:translate(5%,5%) rotate(3deg) scale(.86);
  }
  .r231-migration-badge{
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    max-width:100%!important;
    transform:none!important;
    grid-template-columns:auto minmax(0,1fr) auto;
  }
  .r231-migration-badge:hover{
    transform:none!important;
  }
  .r231-badge-formats{
    min-width:74px;
    font-size:9px;
  }
  .r23-migration-flow{
    padding-top:4px!important;
  }
}
