/* Site-Ten v3 — customer-facing evidence layer.
   Shared across Lifeofmorr businesses. It assumes each page's existing
   stylesheet defines --brand (preferred) or --accent. The design aim is
   restraint + evidence: the product/work product is visible immediately,
   type stays confident, surfaces are light, and every visual has content. */
:root{
  --v3-accent:var(--brand,var(--accent,#0071e3));
  --v3-accent-2:var(--brand-2,var(--accent-hover,#64d2ff));
  --v3-ink:#1d1d1f;
  --v3-copy:#424245;
  --v3-muted:#6e6e73;
  --v3-faint:#86868b;
  --v3-paper:#fff;
  --v3-wash:#f5f5f7;
  --v3-line:rgba(29,29,31,.09);
  --v3-shadow:0 24px 70px rgba(29,29,31,.13),0 3px 14px rgba(29,29,31,.06);
  --v3-shadow-small:0 10px 32px rgba(29,29,31,.09);
  --v3-radius:26px;
}
html{background:#fff}
body{letter-spacing:-.006em}
::selection{background:color-mix(in srgb,var(--v3-accent) 18%,#fff)}

/* Header: compact, calm, unmistakably product-grade. */
header.site,.site-header,header.top{background:rgba(255,255,255,.86)!important;border-bottom:1px solid var(--v3-line)}
header.site .wrap,.site-header .wrap,header.top .wrap{min-height:58px;padding-top:8px!important;padding-bottom:8px!important}
img.brand-logo{width:30px!important;height:30px!important;border-radius:8px}
header.site nav a,.site-header nav a,header.top nav a{font-size:13px!important}
header.site nav a.cta,.site-header nav a.cta,header.top nav a.cta{background:var(--v3-accent)!important;box-shadow:0 6px 18px color-mix(in srgb,var(--v3-accent) 24%,transparent)}

/* Hero: reduce the empty runway and make evidence part of first impression. */
.hero{position:relative;padding:68px 0 72px!important;overflow:hidden;background:radial-gradient(760px 420px at 50% -160px,color-mix(in srgb,var(--v3-accent) 10%,transparent),transparent 70%),#fff!important}
.hero .wrap{position:relative;z-index:1}
.hero h1{font-size:clamp(3rem,6.2vw,5.15rem)!important;line-height:.99!important;letter-spacing:-.045em!important;max-width:980px!important}
.hero .sub,.hero p.sub{font-size:clamp(1.08rem,1.55vw,1.34rem)!important;line-height:1.48!important;max-width:790px!important;color:#515154!important}
.hero .kicker,.hero .eyebrow{background:#fff!important;border:1px solid color-mix(in srgb,var(--v3-accent) 22%,#fff)!important;color:var(--v3-accent)!important;box-shadow:0 4px 16px rgba(29,29,31,.05);padding:7px 13px!important}
.hero .btn{background:var(--v3-accent)!important;box-shadow:0 10px 24px color-mix(in srgb,var(--v3-accent) 25%,transparent);padding:14px 28px!important}
.hero .btn.ghost{background:#f5f5f7!important;color:var(--v3-accent)!important;box-shadow:none}
.hero-visual{max-width:1120px!important;margin:42px auto 0!important;padding:0!important;animation:none!important}
.hero-visual::after{display:none!important}
.hero-visual .panel{border-radius:28px!important;border:1px solid rgba(29,29,31,.07)!important;box-shadow:var(--v3-shadow)!important;overflow:hidden;background:#fff}

/* Product evidence visual — detailed, structured, and legible at a glance. */
.pv{--pv-accent:var(--v3-accent);--pv-accent2:var(--v3-accent-2);background:#fff;color:var(--v3-ink);font-family:var(--font,-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Arial,sans-serif);text-align:left;border-radius:28px;overflow:hidden}
.pv *{box-sizing:border-box}
.pv-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 22px;border-bottom:1px solid var(--v3-line);background:rgba(251,251,253,.96)}
.pv-brand{display:flex;align-items:center;gap:11px;font-weight:700;letter-spacing:-.02em;font-size:15px}
.pv-mark{width:30px;height:30px;border-radius:9px;background:var(--pv-accent);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:800;letter-spacing:.02em;flex:none}
.pv-live{display:inline-flex;align-items:center;gap:7px;color:var(--v3-muted);font-size:12px;font-weight:650;white-space:nowrap}
.pv-live::before{content:"";width:8px;height:8px;border-radius:50%;background:#22a06b;box-shadow:0 0 0 5px rgba(34,160,107,.12)}
.pv-body{padding:24px;background:linear-gradient(180deg,#fff,#fbfbfd)}
.pv-grid{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(250px,.82fr);gap:18px}
.pv-main,.pv-side,.pv-card{background:#fff;border:1px solid var(--v3-line);border-radius:20px;box-shadow:0 8px 26px rgba(29,29,31,.055)}
.pv-main{padding:21px;min-width:0}
.pv-side{padding:21px;background:#fbfbfd;min-width:0}
.pv-label{font-size:11px;line-height:1.2;font-weight:750;letter-spacing:.09em;text-transform:uppercase;color:var(--pv-accent);margin-bottom:9px}
.pv-title{font-size:22px;line-height:1.12;font-weight:750;letter-spacing:-.03em;margin:0 0 8px;color:var(--v3-ink)}
.pv-copy{font-size:14px;line-height:1.5;color:var(--v3-muted);margin:0}
.pv-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--v3-line)}
.pv-row:last-child{border-bottom:0}
.pv-row-main{min-width:0}
.pv-row-name{font-size:14px;font-weight:700;line-height:1.25;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pv-row-sub{font-size:12.5px;color:var(--v3-muted);line-height:1.35;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pv-chip{display:inline-flex;align-items:center;gap:6px;border-radius:980px;padding:6px 9px;background:color-mix(in srgb,var(--pv-accent) 9%,#fff);color:var(--pv-accent);font-size:11.5px;font-weight:750;line-height:1;white-space:nowrap;flex:none}
.pv-chip.green{background:#eaf7f0;color:#087443}.pv-chip.amber{background:#fff3df;color:#945100}.pv-chip.red{background:#fdecec;color:#b42318}.pv-chip.grey{background:#f2f2f7;color:#515154}
.pv-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:16px}
.pv-stat{border-radius:16px;background:var(--v3-wash);padding:14px;min-width:0}
.pv-stat b{display:block;font-size:23px;line-height:1;letter-spacing:-.035em;color:var(--v3-ink)}
.pv-stat span{display:block;font-size:11.5px;line-height:1.3;color:var(--v3-muted);margin-top:6px}
.pv-progress{height:8px;border-radius:99px;background:#ececf0;overflow:hidden;margin-top:12px}
.pv-progress i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--pv-accent),var(--pv-accent2))}
.pv-steps{display:grid;gap:0;margin-top:4px}
.pv-step{display:grid;grid-template-columns:28px 1fr auto;gap:11px;align-items:start;padding:11px 0;border-bottom:1px solid var(--v3-line)}
.pv-step:last-child{border-bottom:0}
.pv-step-num{width:26px;height:26px;border-radius:50%;background:var(--pv-accent);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}
.pv-step b{display:block;font-size:13.5px;line-height:1.3}.pv-step p{font-size:12.5px;line-height:1.4;color:var(--v3-muted);margin:2px 0 0}
.pv-phone{max-width:330px;margin:0 auto;background:#1d1d1f;border-radius:34px;padding:10px;box-shadow:0 18px 45px rgba(29,29,31,.18)}
.pv-phone-screen{background:#f5f5f7;border-radius:26px;padding:18px 14px;min-height:360px}
.pv-bubble{max-width:88%;padding:10px 12px;border-radius:17px;background:#fff;box-shadow:0 3px 12px rgba(29,29,31,.06);font-size:12.5px;line-height:1.42;margin:0 0 9px;color:#333336}
.pv-bubble.out{margin-left:auto;background:var(--pv-accent);color:#fff}
.pv-bubble small{display:block;font-size:10.5px;opacity:.66;margin-top:4px}
.pv-table{width:100%;border-collapse:collapse;font-size:12.5px}
.pv-table th{text-align:left;color:var(--v3-faint);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;padding:8px 7px;border-bottom:1px solid var(--v3-line)}
.pv-table td{padding:10px 7px;border-bottom:1px solid var(--v3-line);color:#333336;vertical-align:top}
.pv-table tr:last-child td{border-bottom:0}
.pv-bars{display:grid;gap:11px;margin-top:13px}.pv-bar-row{display:grid;grid-template-columns:92px 1fr 36px;gap:10px;align-items:center;font-size:12px;color:var(--v3-muted)}
.pv-bar{height:8px;background:#ececf0;border-radius:99px;overflow:hidden}.pv-bar i{display:block;height:100%;background:var(--pv-accent);border-radius:99px}
.pv-note{margin-top:15px;padding:12px 13px;border-radius:14px;background:color-mix(in srgb,var(--pv-accent) 7%,#fff);color:#424245;font-size:12.5px;line-height:1.45}
.pv-note b{color:var(--v3-ink)}
.pv-foot{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:13px 22px;background:#f5f5f7;border-top:1px solid var(--v3-line);font-size:11.5px;color:var(--v3-muted)}
.pv-foot b{color:#424245}

/* Content rhythm: less cavernous, more editorial. */
section,.section{padding:82px 0!important}
section h2,h2.sec{letter-spacing:-.04em!important;line-height:1.04!important}
.lead,.lede,section .lead{font-size:19px!important;line-height:1.5!important;margin-bottom:42px!important}
.card,.feat,.tile,.price-card,.contact-card,.contact-box{border:1px solid rgba(29,29,31,.055)!important;box-shadow:0 10px 34px rgba(29,29,31,.065)!important;border-radius:22px!important}
.card:hover,.feat:hover,.tile:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(29,29,31,.09)!important}
.dark{background:#1d1d1f!important}
footer.site,footer{background:#f5f5f7!important;border-top:1px solid var(--v3-line)}

/* Pricing: price first, no ambiguity, tactile cards. */
.tier,.price-card{position:relative;overflow:hidden}
.tier.popular,.price-card.popular,.tier.featured,.price-card.featured{outline:2px solid var(--v3-accent)!important;box-shadow:0 24px 58px color-mix(in srgb,var(--v3-accent) 15%,transparent)!important}
.tier .price,.price-card .price,.price{letter-spacing:-.045em;color:var(--v3-ink)}
.tier .btn,.price-card .btn{width:100%;text-align:center;margin-left:0!important;margin-right:0!important}

/* Product/internal page heads should feel connected to the homepage. */
.page-head{padding:68px 0 38px!important}
.page-head h1{letter-spacing:-.04em!important;line-height:1.02!important}
.prose,.legal{font-size:16.5px;line-height:1.68;color:#333336}
.prose h2,.legal h2{margin-top:44px!important}

/* Reveal JS must never be the difference between evidence and a blank. */
.reveal{opacity:1!important;transform:none!important}
html:not(.js) .reveal{opacity:1!important;transform:none!important}

@media(max-width:860px){
  .hero{padding:52px 0 58px!important}.hero h1{font-size:clamp(2.65rem,13vw,4.2rem)!important}.hero-visual{margin-top:32px!important}
  .pv-body{padding:15px}.pv-grid{grid-template-columns:1fr}.pv-top{padding:14px 16px}.pv-stats{grid-template-columns:1fr 1fr 1fr}.pv-title{font-size:20px}
  section,.section{padding:64px 0!important}.pv-table th:nth-child(3),.pv-table td:nth-child(3){display:none}
}
@media(max-width:560px){
  .pv-stats{grid-template-columns:1fr}.pv-row{align-items:flex-start}.pv-row-sub,.pv-row-name{white-space:normal}.pv-step{grid-template-columns:26px 1fr}.pv-step .pv-chip{grid-column:2}.pv-phone-screen{min-height:0}.pv-foot{display:block}.pv-foot span{display:block;margin-top:4px}
  header.site nav,header.top nav,.site-header nav{display:none!important}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
