@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root {
  --navy:#092c4c;
  --ink:#172f47;
  --blue:#2165df;
  --muted:#607186;
  --line:#dce5ee;
  --cloud:#f3f7fc;
  --gold:#f8c846;
  --green:#237259;
  --radius:20px;
  --shadow:0 3px 8px #15355306,0 18px 40px -20px #15355335;
  font-family:'DM Sans',sans-serif;
  color:var(--ink);
  font-synthesis:none;
  font-size:16px
}

* {
  box-sizing:border-box
}

body {
  margin:0;
  background:#fff
}

a {
  color:inherit;
  text-decoration:none
}

button,input,textarea,select {
  font:inherit
}

button,a {
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation
}

button {
  cursor:pointer
}

button {
  color:inherit
}

img {
  display:block;
  max-width:100%
}

button,summary,a {
  transition:background .18s,color .18s,box-shadow .18s,transform .18s
}

button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible {
  outline:3px solid #e5ae19;
  outline-offset:4px
}

svg {
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
  vertical-align:middle;
  flex-shrink:0
}

h1,h2,h3,h4 {
  font-family:Manrope,sans-serif;
  color:var(--navy);
  margin:0;
  font-weight:750
}

h1 {
  font-size:70px;
  line-height:1.08;
  letter-spacing:-3.7px
}

h2 {
  font-size:44px;
  line-height:1.18;
  letter-spacing:-1.9px
}

h3 {
  font-size:23px;
  line-height:1.3;
  letter-spacing:-.6px
}

h4 {
  font-size:17px;
  line-height:1.4
}

p {
  font-size:17px;
  line-height:1.7;
  margin:18px 0 0;
  color:var(--muted)
}

.wrap {
  max-width:1220px;
  margin:0 auto;
  padding:0 40px
}

.skip {
  position:fixed;
  top:-80px;
  background:white;
  z-index:100;
  padding:15px
}

.skip:focus {
  top:10px
}

.eyebrow {
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--blue);
  font-size:12px;
  font-weight:750;
  letter-spacing:2.2px;
  text-transform:uppercase;
  margin-bottom:20px
}

.eyebrow svg {
  width:17px;
  height:17px
}

.center {
  text-align:center
}

.center .eyebrow {
  justify-content:center
}

.center>p {
  max-width:660px;
  margin:20px auto 0
}

.center h2 {
  max-width:740px;
  margin:auto
}

.blue-text {
  color:var(--blue)
}

.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:50px;
  padding:13px 22px;
  border-radius:9px;
  background:#fff;
  border:1px solid #d4dfeb;
  font-size:14px;
  font-weight:700;
  line-height:1.35;
  white-space:nowrap;
  box-shadow:0 2px 4px #163a5505
}

.button svg {
  width:18px;
  height:18px
}

.button:hover {
  background:#f2f6fd;
  transform:translateY(-1px)
}

.button.primary {
  background:linear-gradient(180deg,#397cea,#2165df 68%,#1c59ca);
  border-color:#2865cf;
  border-top-color:#6295eb;
  color:#fff;
  box-shadow:inset 0 1px 0 #ffffff48,0 4px 8px #164c9a13,0 7px 14px -8px #194dae80
}

.button.primary:hover {
  box-shadow:0 7px 15px #174a9e30
}

.button.dark {
  background:var(--navy);
  color:#fff;
  border-color:var(--navy)
}

.button.white {
  background:#fff;
  border-color:#fff;
  color:var(--navy)
}

.button.text {
  box-shadow:none;
  border:0;
  background:none;
  padding:10px 0
}

.button.text:hover {
  color:var(--blue)
}

.actions {
  display:flex;
  align-items:center;
  gap:25px;
  margin-top:30px
}

.small-note {
  font-size:12px;
  color:#738396;
  line-height:1.6
}

.checkline {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  color:#536d7e
}

.checkline svg {
  width:15px;
  height:15px;
  color:var(--green)
}

.site-header {
  height:92px;
  background:#ffffffed;
  position:relative;
  z-index:30;
  border-bottom:1px solid #edf1f6
}

.header-inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:100%;
  gap:24px
}

.brand {
  display:inline-flex;
  flex-shrink:0;
  align-items:center;
  width:192px
}

.brand img {
  width:192px;
  height:64px;
  object-fit:contain
}

.primary-nav {
  display:flex;
  align-items:center;
  gap:29px
}

.primary-nav a {
  font-size:14px;
  font-weight:550;
  color:#596c80;
  padding:12px 0
}

.primary-nav a:hover,.primary-nav a.active {
  color:var(--blue)
}

.primary-nav a.active {
  box-shadow:0 2px 0 var(--blue)
}

.header-actions {
  display:flex;
  align-items:center;
  gap:24px
}

.login {
  font-size:14px;
  font-weight:650
}

.header-actions .button {
  min-height:44px;
  padding:11px 17px;
  font-size:13px
}

.menu-toggle {
  display:none;
  background:none;
  border:1px solid var(--line);
  border-radius:8px;
  width:44px;
  height:44px
}

.hero {
  overflow:hidden;
  background:radial-gradient(ellipse at 78% 34%,#e9f2ff 0%,#f7faff 40%,#ffffff 77%);
  border-bottom:1px solid #e8eef6
}

.hero-inner {
  display:grid;
  grid-template-columns:1.03fr 1fr;
  gap:30px;
  align-items:center;
  min-height:690px;
  padding-top:56px;
  padding-bottom:66px
}

.hero-copy {
  position:relative;
  z-index:2
}

.hero-copy h1 {
  font-size:72px
}

.hero-copy p {
  max-width:475px;
  font-size:18px;
  line-height:1.7;
  margin-top:26px
}

.hero-copy .eyebrow {
  margin-bottom:25px
}

.hero-copy .small-note {
  margin-top:19px;
  font-size:12px
}

.hero-scene {
  position:relative;
  min-height:525px;
  margin-left:10px
}

.hero-house {
  width:100%;
  height:470px;
  object-fit:cover;
  border-radius:130px 24px 24px 24px;
  box-shadow:0 18px 35px -17px #13375040;
  object-position:46% center;
  margin-top:10px
}

.photo-label {
  position:absolute;
  left:28px;
  top:30px;
  display:inline-flex;
  gap:8px;
  align-items:center;
  color:white;
  font-size:11px;
  background:#102f456c;
  backdrop-filter:blur(14px);
  padding:9px 13px;
  border:1px solid #ffffff40;
  border-radius:20px
}

.photo-label svg {
  width:14px;
  height:14px
}

.floating {
  position:absolute;
  border:1px solid #fff;
  background:linear-gradient(145deg,#fff,#f8fbff);
  border-radius:15px;
  box-shadow:0 5px 10px #10375808,0 20px 45px -17px #15395a55
}

.approval-card {
  width:285px;
  bottom:0;
  left:-39px;
  padding:21px
}

.mini-label {
  font-size:10px;
  letter-spacing:1.6px;
  font-weight:750;
  color:#718298;
  text-transform:uppercase
}

.approval-title {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:12px;
  font-weight:750;
  color:var(--navy);
  margin-bottom:15px
}

.bell-icon {
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:8px;
  background:var(--navy);
  color:#fff
}

.bell-icon svg {
  width:17px;
  height:17px
}

.approval-card p {
  font-size:13px;
  color:#607085;
  line-height:1.6;
  margin:9px 0 14px
}

.approval-card strong {
  font-size:15px
}

.fake-actions {
  display:flex;
  gap:8px;
  margin-top:15px
}

.fake-actions span {
  flex:1;
  text-align:center;
  font-size:12px;
  border:1px solid #d9e4ed;
  border-radius:6px;
  padding:9px
}

.fake-actions span:first-child {
  background:#e7f3ec;
  border-color:#d4e9dc;
  color:var(--green);
  font-weight:700
}

.confirmed-card {
  right:-15px;
  top:106px;
  padding:15px 17px;
  display:flex;
  align-items:center;
  gap:12px
}

.success-icon {
  display:grid;
  place-items:center;
  border-radius:50%;
  width:31px;
  height:31px;
  background:#e6f3ec;
  color:var(--green)
}

.success-icon svg {
  width:16px;
  height:16px
}

.confirmed-card strong {
  font-size:13px;
  display:block
}

.confirmed-card small {
  font-size:11px;
  display:block;
  color:var(--muted);
  margin-top:4px
}

.scene-caption {
  position:absolute;
  right:0;
  bottom:9px;
  max-width:170px;
  text-align:right;
  font-size:11px;
  color:#7e8b9c;
  line-height:1.5
}

.value-strip {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  padding:28px 0;
  border-bottom:1px solid #e2eaf3
}

.value-strip>div {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  border-right:1px solid var(--line)
}

.value-strip>div:last-child {
  border:0
}

.value-strip strong {
  font-family:Manrope,sans-serif;
  color:var(--navy);
  font-weight:800;
  font-size:33px;
  letter-spacing:-1.4px
}

.value-strip span {
  font-size:13px;
  line-height:1.5;
  color:#688096;
  max-width:120px
}

.value-strip svg {
  width:29px;
  height:29px;
  color:var(--blue)
}

.section {
  padding:92px 0
}

.section.compact {
  padding:70px 0
}

.section.pale {
  background:var(--cloud)
}

.section-line {
  border-bottom:1px solid var(--line)
}

.split-heading {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:60px;
  margin-bottom:40px
}

.split-heading>div {
  max-width:640px
}

.split-heading>p {
  max-width:325px;
  font-size:16px;
  margin:0
}

.steps {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:40px;
  margin-top:45px
}

.step {
  position:relative;
  padding-top:26px;
  border-top:1px solid #d6e1ee
}

.step-number {
  font-size:12px;
  letter-spacing:1px;
  font-weight:750;
  color:var(--blue);
  margin-bottom:26px
}

.step h3 {
  font-size:21px
}

.step p {
  font-size:15px;
  margin-top:14px
}

.step svg {
  width:24px;
  height:24px;
  margin-bottom:18px;
  color:var(--blue)
}

.step-link {
  display:flex;
  justify-content:center;
  margin-top:35px
}

.showcase {
  display:grid;
  grid-template-columns:.76fr 1.24fr;
  gap:60px;
  align-items:center
}

.showcase-copy p {
  font-size:16px
}

.feature-list {
  list-style:none;
  padding:0;
  margin:25px 0;
  display:grid;
  gap:17px
}

.feature-list li {
  font-size:14px;
  display:flex;
  gap:10px;
  align-items:start;
  line-height:1.55
}

.feature-list svg {
  width:17px;
  height:17px;
  color:var(--green);
  margin-top:2px
}

.product-window {
  border-radius:14px;
  overflow:hidden;
  border:1px solid #d6e0ec;
  box-shadow:0 4px 10px #153f6005,0 22px 45px -24px #153f6050;
  background:white
}

.window-bar {
  height:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 15px;
  background:#f9fbfd;
  border-bottom:1px solid #e5ebf3;
  font-size:10px;
  color:#7a8ea1
}

.window-dots {
  display:flex;
  gap:4px
}

.window-dots i {
  width:5px;
  height:5px;
  background:#d9e2ec;
  border-radius:50%
}

.mini-app {
  display:grid;
  grid-template-columns:108px 1fr;
  min-height:380px
}

.mini-sidebar {
  padding:21px 10px;
  background:linear-gradient(145deg,#f3f7fc,#edf2f8);
  border-right:1px solid #e3eaf2
}

.mini-brand {
  width:86px;
  margin-bottom:26px
}

.mini-nav {
  display:grid;
  gap:6px
}

.mini-nav span {
  font-size:10px;
  color:#6f8295;
  padding:9px 8px;
  display:flex;
  gap:6px;
  align-items:center;
  border-radius:5px
}

.mini-nav svg {
  width:12px;
  height:12px
}

.mini-nav span:first-child {
  background:#e1ecff;
  color:var(--blue);
  font-weight:700
}

.mini-content {
  padding:24px 19px
}

.mini-content header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:17px
}

.mini-content header strong {
  font-family:Manrope,sans-serif;
  font-size:18px;
  letter-spacing:-.5px
}

.mini-content header small {
  font-size:10px;
  color:#8b9aab
}

.mini-stats {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border:1px solid #e2e8f1;
  border-radius:7px;
  margin-bottom:22px
}

.mini-stats>div {
  padding:12px 10px;
  border-right:1px solid #e2e8f1
}

.mini-stats>div:last-child {
  border:0
}

.mini-stats small {
  display:block;
  font-size:9px;
  color:#798b9e;
  margin-bottom:5px
}

.mini-stats b {
  font-family:Manrope,sans-serif;
  font-size:22px;
  color:var(--navy)
}

.mini-content h4 {
  font-size:11px;
  margin-bottom:11px
}

.mini-listing {
  display:flex;
  gap:10px;
  border-top:1px solid #e9eef4;
  padding:12px 0;
  align-items:center
}

.mini-listing img {
  width:55px;
  height:44px;
  object-fit:cover;
  border-radius:6px
}

.mini-listing>div {
  flex:1
}

.mini-listing b {
  display:block;
  font-size:10px;
  margin-bottom:5px
}

.mini-listing small {
  font-size:9px;
  color:#8191a2
}

.status {
  border-radius:5px;
  background:#eaf5ef;
  color:var(--green);
  padding:5px 7px;
  font-size:9px;
  font-weight:700;
  white-space:nowrap
}

.status.amber {
  background:#fff5df;
  color:#9a7224
}

.mockup-caption {
  font-size:11px;
  color:#8292a5;
  margin-top:15px;
  text-align:center
}

.benefit-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  margin-top:40px
}

.benefit-card {
  border:1px solid #e0e8f0;
  border-radius:18px;
  padding:34px;
  background:#fff;
  overflow:hidden
}

.benefit-card p {
  font-size:15px;
  max-width:430px
}

.benefit-card .eyebrow {
  font-size:11px;
  margin-bottom:18px
}

.benefit-card h3 {
  font-size:27px
}

.mini-message {
  margin-top:30px;
  padding:22px;
  background:#f2f6fc;
  border-radius:12px;
  display:flex;
  gap:14px;
  align-items:center
}

.mini-message p {
  font-size:13px;
  line-height:1.55;
  margin:5px 0 0
}

.mini-message b {
  font-size:13px
}

.mini-message .success-icon {
  flex-shrink:0
}

.feedback-bars {
  display:grid;
  gap:15px;
  margin-top:28px;
  padding:20px;
  border-radius:12px;
  background:#f3f7fc
}

.feedback-bar {
  display:grid;
  grid-template-columns:90px 1fr 63px;
  gap:12px;
  align-items:center;
  font-size:11px;
  color:#65778e
}

.bar-track {
  height:7px;
  background:#e1e9f4;
  border-radius:20px;
  overflow:hidden
}

.bar-track i {
  display:block;
  height:100%;
  background:#78a7ec;
  border-radius:20px
}

.feedback-bar strong {
  font-size:11px;
  font-weight:600
}

.property-band {
  background:var(--navy);
  color:#fff
}

.property-band h2 {
  color:#fff
}

.property-band .eyebrow {
  color:var(--gold)
}

.property-band p {
  color:#b6c9da
}

.property-types {
  display:flex;
  flex-wrap:wrap;
  gap:11px;
  margin-top:31px
}

.property-types span {
  font-size:13px;
  border:1px solid #54708a;
  border-radius:7px;
  padding:10px 14px;
  color:#e2edf8
}

.property-band-inner {
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:55px
}

.pricing-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:42px;
  align-items:stretch
}

.price-card {
  position:relative;
  border:1px solid #dce5ef;
  background:#fff;
  border-radius:16px;
  padding:29px;
  box-shadow:0 8px 24px -15px #123a5c1c;
  display:flex;
  flex-direction:column
}

.price-card h3 {
  font-size:19px
}

.price-description {
  font-size:13px;
  line-height:1.6;
  min-height:41px;
  margin:10px 0 17px
}

.price {
  font-family:Manrope,sans-serif;
  font-size:43px;
  font-weight:750;
  color:var(--navy);
  letter-spacing:-2px
}

.price>span {
  font-family:'DM Sans',sans-serif;
  font-size:13px;
  font-weight:400;
  color:#738398;
  letter-spacing:0;
  margin-left:4px
}

.listing-count {
  font-size:14px;
  font-weight:700;
  margin:15px 0 19px;
  color:var(--navy)
}

.price-card .button {
  width:100%;
  margin-top:auto
}

.price-card .small-note {
  text-align:center;
  font-size:11px;
  margin-top:13px
}

.price-card.featured {
  border:1px solid #3980e8;
  box-shadow:0 8px 30px -17px #2165df50;
  background:linear-gradient(145deg,#fff,#f6f9ff)
}

.price-badge {
  position:absolute;
  right:22px;
  top:27px;
  color:var(--blue);
  font-size:10px;
  font-weight:750;
  border-radius:20px;
  background:#e5efff;
  padding:6px 9px
}

.pricing-foot {
  display:flex;
  justify-content:center;
  gap:26px;
  margin-top:27px
}

.faq-layout {
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:95px
}

.faq-layout h2 {
  font-size:39px
}

.faq-layout p {
  font-size:15px
}

.faqs details {
  border-bottom:1px solid var(--line)
}

.faqs details:first-child {
  border-top:1px solid var(--line)
}

.faqs summary {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  list-style:none;
  cursor:pointer;
  padding:22px 0;
  font-weight:650;
  font-size:15px;
  line-height:1.5;
  color:var(--navy)
}

.faqs summary::-webkit-details-marker {
  display:none
}

.faqs summary::after {
  content:'+';
  font-size:22px;
  font-weight:400;
  color:#66819e
}

.faqs details[open] summary::after {
  content:'−'
}

.faqs details p {
  margin:0;
  padding:0 28px 23px 0;
  font-size:14px;
  line-height:1.7
}

.closing {
  padding:70px 0
}

.closing-inner {
  position:relative;
  overflow:hidden;
  border:1px solid #e0e8f4;
  background:linear-gradient(110deg,#eaf2ff,#f5f9ff 60%,#edf3ff);
  border-radius:25px;
  text-align:center;
  padding:65px 30px
}

.closing h2 {
  font-size:44px
}

.closing p {
  font-size:16px
}

.closing .actions {
  justify-content:center;
  margin-top:25px
}

.closing .small-note {
  margin-top:15px
}

.closing .bell-icon {
  margin:0 auto 23px;
  width:44px;
  height:44px;
  border-radius:12px;
  box-shadow:0 6px 17px #0c2d4d20
}

.closing .bell-icon svg {
  width:24px;
  height:24px
}

.site-footer {
  background:#f7f9fc;
  border-top:1px solid #e9eef4;
  padding:52px 0 24px
}

.footer-top {
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr 1fr;
  gap:44px
}

.footer-brand img {
  width:181px;
  height:60px;
  object-fit:contain;
  margin-top:-12px;
  margin-left:-8px
}

.footer-brand p {
  font-size:13px;
  line-height:1.7;
  max-width:245px;
  margin-top:8px
}

.footer-column h4 {
  font-family:'DM Sans',sans-serif;
  font-size:12px;
  letter-spacing:.4px;
  margin-bottom:18px
}

.footer-column a {
  display:block;
  color:#6a7c90;
  font-size:12px;
  line-height:1.6;
  margin:11px 0
}

.footer-column a:hover {
  color:var(--blue)
}

.footer-bottom {
  display:flex;
  justify-content:space-between;
  border-top:1px solid var(--line);
  margin-top:38px;
  padding-top:22px;
  color:#8795a5;
  font-size:11px;
  gap:20px
}

.preview-note {
  color:#708197
}

@media(min-width:1500px) {
  .wrap {
    max-width:1320px
  }

  .hero-copy h1 {
    font-size:80px
  }

  .hero-inner {
    min-height:740px;
    gap:50px
  }

  .hero-scene {
    min-height:560px
  }

  .hero-house {
    height:500px
  }

  .approval-card {
    bottom:0
  }

  .section {
    padding:100px 0
  }

}

@media(max-width:1100px) {
  .wrap {
    padding:0 30px
  }

  .primary-nav {
    gap:19px
  }

  .header-actions {
    gap:17px
  }

  .brand,.brand img {
    width:170px
  }

  .hero-copy h1 {
    font-size:60px;
    letter-spacing:-3px
  }

  .hero-inner {
    gap:20px;
    min-height:650px
  }

  .hero-copy p {
    font-size:17px
  }

  .hero-scene {
    min-height:480px
  }

  .hero-house {
    height:420px
  }

  .approval-card {
    width:255px;
    left:-18px
  }

  .confirmed-card {
    right:-10px;
    top:80px
  }

  .scene-caption {
    max-width:130px
  }

  .showcase {
    gap:35px;
    grid-template-columns:.8fr 1.2fr
  }

  h2 {
    font-size:39px
  }

  .faq-layout {
    gap:45px
  }

  .footer-top {
    gap:25px
  }

}

@media(max-width:860px) {
  .site-header {
    height:78px
  }

  .primary-nav {
    display:none;
    position:absolute;
    top:77px;
    left:0;
    right:0;
    background:white;
    padding:22px 30px;
    border-bottom:1px solid var(--line);
    box-shadow:0 15px 20px #183b590a;
    flex-direction:column;
    align-items:stretch;
    gap:5px
  }

  .primary-nav.is-open {
    display:flex
  }

  .primary-nav a {
    padding:12px
  }

  .primary-nav a.active {
    box-shadow:none;
    background:#f0f5ff;
    border-radius:6px
  }

  .menu-toggle {
    display:block
  }

  .header-actions .login {
    display:none
  }

  .header-actions {
    gap:12px
  }

  .hero-inner {
    grid-template-columns:1fr 1fr;
    gap:20px;
    padding-top:48px;
    padding-bottom:50px;
    min-height:610px
  }

  .hero-copy h1 {
    font-size:48px;
    letter-spacing:-2.5px
  }

  .hero-copy p {
    font-size:15px
  }

  .hero-copy .eyebrow {
    font-size:10px;
    letter-spacing:1.7px
  }

  .hero-copy .actions {
    align-items:start;
    flex-direction:column;
    gap:12px
  }

  .hero-scene {
    min-height:445px;
    margin-left:0
  }

  .hero-house {
    height:380px;
    border-radius:90px 18px 18px 18px
  }

  .approval-card {
    width:235px;
    left:-15px;
    padding:17px
  }

  .confirmed-card {
    right:-13px;
    top:74px;
    padding:12px;
    gap:8px
  }

  .confirmed-card strong {
    font-size:11px
  }

  .confirmed-card small {
    font-size:10px
  }

  .photo-label {
    left:25px;
    font-size:9px;
    top:28px
  }

  .scene-caption {
    display:none
  }

  .showcase {
    grid-template-columns:1fr;
    gap:40px
  }

  .showcase-copy {
    max-width:590px
  }

  .mini-app {
    min-height:360px
  }

  .mini-content {
    padding:25px
  }

  .mini-stats b {
    font-size:27px
  }

  .mini-content header strong {
    font-size:21px
  }

  .mini-listing {
    padding:14px 0
  }

  .mini-listing img {
    width:65px
  }

  .mini-listing b {
    font-size:12px
  }

  .mini-listing small {
    font-size:10px
  }

  .mini-nav span {
    font-size:11px
  }

  .split-heading {
    gap:30px
  }

  .split-heading>p {
    max-width:270px
  }

  .price-card {
    padding:23px
  }

  .price-badge {
    right:16px;
    font-size:9px;
    top:18px
  }

  .price {
    font-size:39px
  }

  .price-card.featured h3 {
    margin-top:25px
  }

  .property-band-inner {
    grid-template-columns:1fr;
    gap:28px
  }

  .property-band-inner>.button {
    justify-self:start
  }

  .faq-layout {
    gap:40px;
    grid-template-columns:.8fr 1.2fr
  }

  .footer-top {
    grid-template-columns:1.4fr 1fr 1fr
  }

  .footer-column:last-child {
    display:none
  }

  .section {
    padding:72px 0
  }

  .steps {
    gap:25px
  }

  .benefit-card {
    padding:25px
  }

  .benefit-card h3 {
    font-size:24px
  }

  .feedback-bar {
    grid-template-columns:75px 1fr 55px;
    gap:9px;
    font-size:10px
  }

}

@media(max-width:620px) {
  .wrap {
    padding:0 23px
  }

  .site-header {
    height:76px
  }

  .header-inner {
    gap:10px
  }

  .brand,.brand img {
    width:155px;
    height:53px
  }

  .header-actions .button {
    min-height:39px;
    padding:9px 12px;
    font-size:11px
  }

  .header-actions {
    gap:9px
  }

  .menu-toggle {
    width:37px;
    height:39px
  }

  .menu-toggle svg {
    width:18px
  }

  .hero-inner {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:28px;
    padding-top:37px;
    padding-bottom:35px;
    min-height:0
  }

  .hero-copy h1 {
    font-size:49px;
    line-height:1.1;
    letter-spacing:-2.7px;
    max-width:370px
  }

  .hero-copy .eyebrow {
    font-size:9px;
    letter-spacing:1.8px;
    margin-bottom:22px
  }

  .hero-copy p {
    font-size:16px;
    line-height:1.7;
    margin-top:22px
  }

  .hero-copy .actions {
    flex-direction:row;
    align-items:center;
    gap:17px;
    margin-top:25px;
    flex-wrap:wrap
  }

  .hero-copy .button {
    font-size:12px;
    min-height:47px;
    padding:12px 15px;
    gap:8px
  }

  .hero-copy .button.text {
    padding:10px 0;
    font-size:12px
  }

  .hero-copy .small-note {
    font-size:10px;
    margin-top:14px
  }

  .hero-scene {
    min-height:375px;
    margin:0 9px 0 12px
  }

  .hero-house {
    height:310px;
    margin-top:0;
    border-radius:86px 19px 19px 19px;
    object-position:center
  }

  .photo-label {
    top:20px;
    left:55px;
    font-size:9px
  }

  .approval-card {
    width:235px;
    bottom:0;
    left:-13px;
    padding:16px
  }

  .approval-card p {
    font-size:12px;
    margin-bottom:10px
  }

  .approval-title {
    font-size:11px;
    margin-bottom:12px
  }

  .approval-card strong {
    font-size:13px
  }

  .fake-actions {
    margin-top:11px
  }

  .fake-actions span {
    padding:8px
  }

  .confirmed-card {
    right:-9px;
    top:94px;
    padding:12px;
    gap:8px
  }

  .confirmed-card .success-icon {
    width:25px;
    height:25px
  }

  .confirmed-card strong {
    font-size:10px
  }

  .confirmed-card small {
    font-size:9px
  }

  .value-strip {
    padding:22px 0;
    gap:0
  }

  .value-strip>div {
    gap:5px;
    flex-direction:column;
    text-align:center
  }

  .value-strip strong {
    font-size:29px
  }

  .value-strip span {
    font-size:10px;
    max-width:95px;
    line-height:1.5
  }

  .value-strip svg {
    width:25px;
    height:25px;
    margin:4px 0
  }

  .section,.section.compact {
    padding:56px 0
  }

  h2 {
    font-size:33px;
    letter-spacing:-1.4px
  }

  h3 {
    font-size:22px
  }

  .eyebrow {
    font-size:10px;
    letter-spacing:1.9px;
    margin-bottom:18px
  }

  .center>p {
    font-size:15px;
    margin-top:17px
  }

  .split-heading {
    display:block;
    margin-bottom:27px
  }

  .split-heading>p {
    max-width:none;
    margin-top:20px;
    font-size:15px
  }

  .steps {
    grid-template-columns:1fr;
    gap:26px;
    margin-top:28px
  }

  .step {
    padding-top:20px
  }

  .step-number {
    margin-bottom:13px;
    font-size:11px
  }

  .step h3 {
    font-size:21px
  }

  .step p {
    font-size:15px;
    margin-top:10px
  }

  .step-link {
    justify-content:start;
    margin-top:23px
  }

  .showcase {
    gap:30px
  }

  .showcase-copy p {
    font-size:15px
  }

  .feature-list {
    gap:14px
  }

  .feature-list li {
    font-size:13px
  }

  .mini-app {
    grid-template-columns:64px 1fr;
    min-height:294px
  }

  .mini-sidebar {
    padding:16px 5px
  }

  .mini-brand {
    width:55px;
    margin-bottom:20px
  }

  .mini-nav span {
    font-size:0;
    padding:10px;
    justify-content:center
  }

  .mini-nav svg {
    width:16px;
    height:16px
  }

  .mini-content {
    padding:20px 11px
  }

  .mini-content header strong {
    font-size:16px
  }

  .mini-content header small {
    display:none
  }

  .mini-stats {
    margin-bottom:17px
  }

  .mini-stats>div {
    padding:10px 6px
  }

  .mini-stats small {
    font-size:8px
  }

  .mini-stats b {
    font-size:22px
  }

  .mini-listing {
    gap:7px;
    padding:11px 0
  }

  .mini-listing img {
    width:37px;
    height:35px
  }

  .mini-listing b {
    font-size:9px
  }

  .mini-listing small {
    font-size:8px
  }

  .status {
    font-size:8px;
    padding:4px
  }

  .mini-content h4 {
    font-size:10px
  }

  .window-bar {
    font-size:9px;
    padding:0 12px;
    height:29px
  }

  .mockup-caption {
    font-size:10px
  }

  .benefit-grid {
    grid-template-columns:1fr;
    gap:20px;
    margin-top:28px
  }

  .benefit-card {
    padding:26px 23px
  }

  .benefit-card h3 {
    font-size:26px
  }

  .benefit-card p {
    font-size:14px
  }

  .mini-message {
    padding:17px;
    margin-top:24px
  }

  .mini-message p {
    font-size:12px
  }

  .mini-message b {
    font-size:12px
  }

  .feedback-bars {
    padding:17px
  }

  .feedback-bar {
    grid-template-columns:77px 1fr 58px;
    font-size:11px
  }

  .property-band-inner {
    gap:27px
  }

  .property-band p {
    font-size:15px
  }

  .property-types {
    gap:9px;
    margin-top:25px
  }

  .property-types span {
    font-size:11px;
    padding:9px 11px
  }

  .pricing-grid {
    grid-template-columns:1fr;
    gap:19px;
    margin-top:29px
  }

  .price-card {
    padding:28px
  }

  .price-card h3 {
    font-size:20px
  }

  .price-description {
    min-height:0;
    font-size:14px;
    margin-bottom:15px
  }

  .price {
    font-size:47px
  }

  .price>span {
    font-size:14px
  }

  .listing-count {
    font-size:14px
  }

  .price-card.featured h3 {
    margin-top:0
  }

  .price-badge {
    top:28px;
    right:25px;
    font-size:10px
  }

  .price-card .button {
    font-size:14px
  }

  .price-card .small-note {
    font-size:11px
  }

  .pricing-foot {
    flex-direction:column;
    align-items:center;
    gap:12px
  }

  .faq-layout {
    grid-template-columns:1fr;
    gap:28px
  }

  .faq-layout h2 {
    font-size:33px
  }

  .faq-layout p {
    font-size:15px
  }

  .faqs summary {
    font-size:14px;
    padding:20px 0
  }

  .faqs details p {
    font-size:14px
  }

  .closing {
    padding:35px 0 47px
  }

  .closing-inner {
    padding:43px 24px;
    border-radius:21px
  }

  .closing h2 {
    font-size:34px
  }

  .closing p {
    font-size:14px
  }

  .closing .button {
    font-size:13px
  }

  .closing .small-note {
    font-size:10px
  }

  .site-footer {
    padding-top:36px
  }

  .footer-top {
    grid-template-columns:1fr 1fr;
    gap:30px 20px
  }

  .footer-brand {
    grid-column:1/-1
  }

  .footer-brand p {
    max-width:290px
  }

  .footer-column:last-child {
    display:block
  }

  .footer-column a {
    font-size:12px
  }

  .footer-column h4 {
    font-size:12px;
    margin-bottom:15px
  }

  .footer-bottom {
    flex-direction:column;
    gap:13px;
    font-size:10px;
    margin-top:29px;
    line-height:1.6
  }

  .footer-brand img {
    width:185px
  }

  .button {
    white-space:normal
  }

  .header-actions .button {
    white-space:nowrap
  }

  .mockup-caption {
    line-height:1.6
  }

}

@media(prefers-reduced-motion:reduce) {
  * {
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important
  }

}

/* Inner pages: one visual language, different page rhythms. */
.page-hero {
  padding:66px 0 42px;
  background:linear-gradient(#f5f9ff,#fff)
}

.page-hero h1 {
  font-size:57px;
  line-height:1.16;
  letter-spacing:-2.5px;
  max-width:960px;
  margin:0 auto
}

.page-hero p {
  font-size:17px;
  max-width:690px
}

.page-hero .eyebrow {
  margin-bottom:21px
}

.journey-strip {
  padding:20px 0;
  border-bottom:1px solid var(--line);
  margin-top:10px
}

.journey-strip .wrap {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:24px
}

.journey-strip span {
  font-size:12px;
  font-weight:600;
  color:#738399;
  white-space:nowrap
}

.journey-strip b {
  font-weight:650;
  color:var(--blue);
  margin-right:5px
}

.journey-strip i {
  height:1px;
  width:23px;
  background:#d1deee
}

.journey-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:88px
}

.journey-row.reversed .journey-copy {
  order:2
}

.journey-row.reversed .journey-visual {
  order:1
}

.journey-number {
  display:block;
  font:750 44px Manrope,sans-serif;
  letter-spacing:-1.5px;
  color:#c7d9ee;
  margin-bottom:22px
}

.journey-copy h2 {
  font-size:39px
}

.journey-copy p {
  font-size:16px
}

.journey-copy .eyebrow {
  font-size:11px;
  margin-bottom:16px
}

.journey-copy .feature-list {
  margin-bottom:0
}

.journey-visual {
  padding:38px;
  min-height:390px;
  border:1px solid #dce6f2;
  border-radius:24px;
  display:flex;
  align-items:center;
  justify-content:center
}

.blue-surface {
  background:linear-gradient(130deg,#f1f6ff,#e7f0ff)
}

.white-surface {
  background:#fff
}

.soft-surface {
  background:linear-gradient(145deg,#edf3f9,#e5eefa)
}

.settings-preview {
  background:white;
  border:1px solid #e0e8f3;
  border-radius:13px;
  padding:26px;
  width:100%;
  box-shadow:var(--shadow)
}

.settings-head {
  display:flex;
  gap:12px;
  align-items:center;
  padding-bottom:24px
}

.icon-tile {
  height:44px;
  width:44px;
  border:1px solid #dce6f7;
  border-radius:11px;
  display:inline-grid;
  place-items:center;
  background:#edf4ff;
  color:var(--blue);
  flex-shrink:0
}

.settings-head strong {
  font-size:15px;
  display:block
}

.settings-head small {
  font-size:12px;
  display:block;
  color:#7c8a9b;
  margin-top:5px
}

.settings-row {
  border-top:1px solid #e7edf5;
  padding:17px 0;
  display:flex;
  justify-content:space-between;
  gap:20px;
  font-size:12px
}

.settings-row>span {
  color:#748598
}

.settings-row>b {
  font-weight:550;
  color:var(--navy)
}

.inline-success {
  background:#eef7f1;
  border-radius:7px;
  color:var(--green);
  padding:12px;
  margin-top:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-size:11px
}

.inline-success svg {
  width:14px
}

.share-preview {
  background:white;
  box-shadow:var(--shadow);
  border:1px solid #dfe8f2;
  border-radius:14px;
  overflow:hidden;
  width:100%
}

.share-preview>img {
  width:100%;
  height:184px;
  object-fit:cover
}

.share-preview>div {
  padding:23px
}

.share-preview h3 {
  font-size:21px;
  margin-top:12px
}

.link-display {
  font-size:12px;
  color:var(--blue);
  display:flex;
  align-items:center;
  gap:9px;
  background:#f2f6ff;
  border:1px solid #dfe8f8;
  border-radius:7px;
  padding:12px 10px;
  margin-top:17px
}

.link-display svg {
  width:16px
}

.share-tags {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-top:18px
}

.share-tags span {
  font-size:10px;
  border:1px solid var(--line);
  border-radius:5px;
  padding:5px 7px;
  color:#6a7b8f
}

.booking-preview {
  background:white;
  border-radius:14px;
  border:1px solid #d9e4f0;
  overflow:hidden;
  box-shadow:var(--shadow);
  width:100%;
  max-width:360px
}

.booking-preview>img {
  width:100%;
  height:147px;
  object-fit:cover
}

.booking-body {
  padding:24px
}

.booking-body h3 {
  font-size:20px;
  margin-top:11px
}

.booking-body>p {
  font-size:12px;
  margin-top:7px
}

.date-row {
  display:flex;
  gap:7px;
  margin-top:21px
}

.date-row>span {
  flex:1;
  display:grid;
  text-align:center;
  gap:6px;
  border:1px solid #dce5ef;
  border-radius:7px;
  padding:10px 4px
}

.date-row small {
  font-size:8px;
  color:#778da2
}

.date-row b {
  font-size:15px;
  font-weight:600
}

.date-row .selected {
  background:#2165df;
  border-color:#2165df;
  color:white
}

.date-row .selected small {
  color:#d9e6ff
}

.time-row {
  display:flex;
  gap:7px;
  margin-top:12px
}

.time-row span {
  flex:1;
  text-align:center;
  font-size:10px;
  padding:9px 3px;
  border:1px solid #e0e8f2;
  border-radius:5px;
  color:#6d8198
}

.time-row .selected {
  border-color:#3f7ddf;
  background:#eef4ff;
  color:var(--blue)
}

.preview-primary {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:12px;
  background:var(--blue);
  color:white;
  font-size:11px;
  border-radius:7px;
  margin-top:18px
}

.preview-primary svg {
  width:15px;
  height:15px
}

.callout {
  border-left:3px solid #f8c846;
  margin-top:29px;
  padding-left:18px;
  font-size:17px;
  line-height:1.65;
  font-weight:650;
  color:var(--navy)
}

.phone-preview {
  background:#f9fbfd;
  width:243px;
  min-height:450px;
  border:7px solid #16374f;
  box-shadow:0 15px 35px -17px #0c294c60;
  border-radius:33px;
  padding:14px 13px 30px;
  position:relative
}

.phone-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:10px;
  padding:0 8px
}

.phone-contact {
  display:flex;
  flex-direction:column;
  align-items:center;
  margin:22px 0 18px;
  gap:7px
}

.phone-contact .bell-icon {
  width:35px;
  height:35px
}

.phone-contact strong {
  font-size:12px
}

.phone-contact small {
  font-size:8px;
  color:#7a889c;
  margin-top:7px
}

.message-bubble {
  background:#e9eef4;
  border-radius:12px;
  padding:14px;
  font-size:11px;
  line-height:1.65;
  color:#3b5067
}

.phone-approval {
  display:flex;
  gap:8px;
  margin-top:12px
}

.phone-approval span {
  font-size:10px;
  border-radius:6px;
  border:1px solid #d4dde8;
  padding:9px 11px;
  flex:1;
  text-align:center
}

.phone-approval span:first-child {
  background:#e4f1e9;
  color:var(--green);
  border-color:#d1e4d9;
  font-weight:600
}

.phone-home {
  height:3px;
  width:78px;
  background:#2c4257;
  border-radius:5px;
  position:absolute;
  bottom:9px;
  left:50%;
  transform:translateX(-50%)
}

.activity-preview {
  padding:30px;
  border-radius:13px;
  background:#fff;
  box-shadow:var(--shadow);
  border:1px solid #dfe8f2;
  width:100%
}

.activity-preview h3 {
  font-size:20px;
  margin-bottom:25px
}

.timeline-item {
  display:flex;
  gap:13px;
  padding:0 0 25px;
  position:relative
}

.timeline-item::before {
  content:'';
  position:absolute;
  width:1px;
  height:100%;
  background:#dce7ee;
  left:16px;
  top:5px
}

.timeline-item:last-child {
  padding-bottom:0
}

.timeline-item:last-child::before {
  display:none
}

.timeline-item>span {
  width:33px;
  height:33px;
  display:grid;
  place-items:center;
  background:#eff5fc;
  color:var(--blue);
  border:1px solid #e0e8f5;
  border-radius:50%;
  z-index:1;
  flex-shrink:0
}

.timeline-item>span svg {
  width:15px;
  height:15px
}

.timeline-item b {
  font-size:12px
}

.timeline-item p {
  font-size:11px;
  margin-top:5px;
  line-height:1.5
}

.timeline-item small {
  display:block;
  font-size:9px;
  color:#97a4b3;
  margin-top:7px
}

.feedback-preview {
  padding:29px;
  border:1px solid #dce5f0;
  border-radius:13px;
  box-shadow:var(--shadow);
  background:#fff;
  width:100%
}

.feedback-preview h3 {
  font-size:25px;
  margin-top:13px
}

.feedback-metrics {
  margin-top:24px;
  display:grid;
  gap:12px
}

.feedback-metrics>div {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  padding-bottom:12px;
  border-bottom:1px solid #e6ecf4;
  font-size:12px
}

.feedback-metrics span {
  color:#76869a
}

.feedback-metrics b {
  font-weight:600
}

.sample-quote {
  background:#f2f6fc;
  border-radius:8px;
  padding:16px;
  font-size:13px;
  color:#526880;
  line-height:1.65;
  margin-top:18px
}

.feedback-preview>small {
  display:block;
  color:#8393a4;
  font-size:9px;
  line-height:1.5;
  margin-top:13px
}

.pricing-main {
  padding:0 0 38px
}

.pricing-main .pricing-grid {
  margin-top:16px
}

.pricing-main .price-card {
  padding:32px
}

.pricing-main .feature-list {
  border-top:1px solid #e2eaf4;
  padding-top:24px;
  margin:4px 0 28px;
  gap:16px
}

.pricing-main .feature-list li {
  font-size:12px;
  gap:8px
}

.pricing-main .feature-list svg {
  width:15px;
  height:15px
}

.comparison-table {
  margin-top:40px;
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden
}

.comparison-table table {
  width:100%;
  border-collapse:collapse
}

.comparison-table th {
  text-align:left
}

.comparison-table thead {
  background:#f2f6fb
}

.comparison-table thead th {
  padding:22px 24px;
  font-size:13px;
  color:var(--navy)
}

.comparison-table th:not(:first-child),.comparison-table td {
  text-align:center;
  min-width:120px
}

.comparison-table tbody th {
  font-weight:450;
  font-size:14px;
  color:#536b82;
  padding:19px 24px;
  line-height:1.5
}

.comparison-table td {
  font-size:13px;
  color:#4c6a85
}

.comparison-table tbody tr {
  border-top:1px solid #e5ebf3
}

.table-check {
  display:inline-grid;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:#eaf5ef;
  color:var(--green)
}

.table-check svg {
  width:13px;
  height:13px
}

.types-feature {
  padding:20px 0 70px
}

.type-feature-inner {
  display:grid;
  grid-template-columns:1fr 1.03fr;
  gap:64px;
  align-items:center
}

.type-feature-inner>img {
  width:100%;
  height:490px;
  object-fit:cover;
  object-position:40% center;
  border-radius:95px 20px 20px 20px
}

.type-feature-inner h2 {
  font-size:38px
}

.type-feature-inner p {
  font-size:16px
}

.type-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px
}

.type-card {
  border:1px solid #dce5f0;
  background:#fff;
  padding:35px;
  border-radius:15px
}

.type-card .icon-tile {
  margin-bottom:22px
}

.type-card .mini-label {
  display:block;
  font-size:11px;
  line-height:1.5;
  margin-bottom:15px
}

.type-card h3 {
  font-size:26px;
  max-width:390px
}

.type-card p {
  font-size:15px
}

.type-card .button {
  margin-top:17px;
  font-size:12px
}

.brand-page-section {
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:65px;
  align-items:center
}

.brand-page-section p {
  font-size:16px
}

.brand-page-section>.button {
  margin-top:27px
}

.brand-page-section>div>.button {
  margin-top:25px
}

.portfolio-preview {
  border:1px solid #d7e2ed;
  border-radius:15px;
  overflow:hidden;
  background:#f8fafc;
  box-shadow:var(--shadow)
}

.portfolio-top {
  background:#fff;
  display:flex;
  align-items:center;
  gap:9px;
  padding:20px;
  border-bottom:1px solid #e4ebf3
}

.portfolio-monogram {
  background:#213f58;
  color:#f8d373;
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  font-size:12px;
  border-radius:50%
}

.portfolio-top strong {
  font-size:13px
}

.portfolio-top small {
  margin-left:auto;
  font-size:8px;
  letter-spacing:1px;
  color:#798b9d
}

.portfolio-title {
  text-align:center;
  padding:27px 20px 22px
}

.portfolio-title h3 {
  font-size:24px
}

.portfolio-title p {
  font-size:11px;
  margin-top:8px
}

.portfolio-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px;
  padding:0 24px 26px
}

.portfolio-grid>div {
  background:#fff;
  border-radius:9px;
  border:1px solid #e3eaf1;
  overflow:hidden
}

.portfolio-grid img {
  width:100%;
  height:135px;
  object-fit:cover
}

.portfolio-grid strong {
  display:block;
  font-size:11px;
  padding:14px 12px 8px
}

.portfolio-grid span {
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:9px;
  color:var(--blue);
  padding:0 12px 12px
}

.portfolio-grid svg {
  width:13px;
  height:13px
}

.portfolio-powered {
  text-align:center;
  padding:14px;
  background:#fff;
  color:#8594a5;
  font-size:9px;
  border-top:1px solid #e4ebf3
}

.guides-feature {
  padding:15px 0 0
}

.featured-guide {
  display:grid;
  grid-template-columns:1fr 1fr;
  background:#f0f5fc;
  border:1px solid #dfe7f0;
  border-radius:20px;
  overflow:hidden;
  align-items:center
}

.featured-guide>img {
  width:100%;
  height:354px;
  object-fit:cover
}

.featured-guide>div {
  padding:35px 43px
}

.featured-guide h2 {
  font-size:33px;
  letter-spacing:-1.3px
}

.featured-guide p {
  font-size:15px
}

.featured-guide .button {
  margin-top:15px
}

.featured-guide .eyebrow {
  font-size:10px;
  line-height:1.5
}

.guide-index-top {
  margin-bottom:30px
}

.guide-index-top>h2 {
  font-size:34px
}

.filter-row {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:25px
}

.filter {
  background:white;
  border:1px solid #dce5ef;
  border-radius:7px;
  padding:10px 15px;
  font-size:12px;
  color:#6d8197
}

.filter.selected {
  background:#eaf2ff;
  color:var(--blue);
  border-color:#bcd2f4;
  font-weight:650
}

.guide-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:23px
}

.guide-card {
  border:1px solid #dce5ef;
  overflow:hidden;
  border-radius:14px;
  display:flex;
  flex-direction:column;
  box-shadow:0 5px 15px -12px #21476b30
}

.guide-card:hover {
  box-shadow:var(--shadow);
  transform:translateY(-3px)
}

.guide-art {
  height:122px;
  padding:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:linear-gradient(140deg,#edf4ff,#e4eefb);
  color:var(--blue)
}

.guide-art>svg {
  width:36px;
  height:36px;
  stroke-width:1.2
}

.guide-art>span {
  font-size:10px;
  font-weight:650;
  letter-spacing:.3px
}

.guide-card:nth-child(3n+2) .guide-art {
  background:linear-gradient(140deg,#edf4f4,#e3edf0);
  color:#3a7480
}

.guide-card:nth-child(3n) .guide-art {
  background:linear-gradient(140deg,#fbf5e7,#f5ecd3);
  color:#9b7c37
}

.guide-card-body {
  padding:26px;
  display:flex;
  flex-direction:column;
  flex:1
}

.guide-card h3 {
  font-size:21px;
  line-height:1.4
}

.guide-card p {
  font-size:14px;
  margin-top:12px
}

.guide-read {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:var(--blue);
  font-size:12px;
  font-weight:650;
  margin-top:auto;
  padding-top:24px
}

.guide-read svg {
  width:17px
}

.guide-source-note {
  font-size:11px;
  margin-top:26px
}

.article-header {
  padding:38px 0 0;
  background:linear-gradient(#f5f8fd,#fff)
}

.back-link {
  font-size:12px;
  color:#71869b
}

.article-heading {
  max-width:940px;
  margin:48px auto 36px
}

.article-heading h1 {
  font-size:53px;
  letter-spacing:-2.4px;
  line-height:1.18
}

.article-heading>p {
  font-size:18px;
  max-width:720px;
  margin-top:22px
}

.article-byline {
  display:flex;
  align-items:center;
  gap:11px;
  margin-top:26px;
  font-size:12px;
  font-weight:650
}

.article-byline>span:last-child>span {
  display:block;
  font-size:10px;
  font-weight:400;
  color:#8a98a9;
  margin-top:5px
}

.article-hero-image {
  width:100%;
  height:330px;
  object-fit:cover;
  object-position:center 52%;
  border-radius:19px
}

.article-section {
  padding:58px 0 70px
}

.article-layout {
  display:grid;
  grid-template-columns:230px 1fr;
  gap:75px
}

.article-sidebar>.mini-label {
  display:block;
  margin-bottom:22px
}

.article-sidebar>a {
  font-size:12px;
  line-height:1.6;
  color:#6f839a;
  display:block;
  margin:18px 0
}

.article-sidebar>a:hover {
  color:var(--blue)
}

.article-aside-cta {
  background:#f0f5fd;
  border:1px solid #dce6f5;
  border-radius:13px;
  padding:24px;
  margin-top:37px
}

.article-aside-cta .bell-icon {
  margin-bottom:18px
}

.article-aside-cta h4 {
  font-size:16px
}

.article-aside-cta p {
  font-size:12px;
  margin-top:10px
}

.article-aside-cta .button {
  font-size:11px;
  min-height:42px;
  padding:11px 13px;
  margin-top:20px;
  width:100%
}

.article-body {
  max-width:710px
}

.article-body>p {
  font-size:16px;
  line-height:1.85;
  margin-top:17px
}

.article-body .article-lead {
  font-size:20px;
  line-height:1.8;
  margin:0;
  color:#425c77
}

.article-body h2 {
  font-size:28px;
  letter-spacing:-.8px;
  line-height:1.35;
  margin-top:37px;
  scroll-margin-top:25px
}

.article-pullout {
  border-left:3px solid var(--gold);
  padding:14px 0 14px 23px;
  margin:31px 0;
  font:650 22px/1.6 Manrope,sans-serif;
  color:var(--navy);
  letter-spacing:-.6px
}

.article-example {
  padding:28px 30px;
  background:#f1f6ff;
  border:1px solid #dce7f8;
  border-radius:12px;
  margin:32px 0
}

.article-example h3 {
  font-size:21px;
  margin-top:15px
}

.article-example p {
  font-size:15px;
  line-height:1.8;
  margin-top:16px
}

.article-checklist {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-top:26px;
  padding-top:23px;
  border-top:1px solid var(--line)
}

.article-related {
  display:grid;
  grid-template-columns:1.1fr 1fr 1fr;
  gap:40px;
  align-items:center
}

.article-related h2 {
  font-size:31px
}

.related-link {
  border-left:1px solid #d8e3ee;
  padding-left:25px
}

.related-link>span {
  font-size:9px;
  color:#7b8ba0;
  letter-spacing:1.3px;
  font-weight:650
}

.related-link h3 {
  font-size:20px;
  margin:15px 0 17px
}

.related-link svg {
  color:var(--blue);
  width:20px
}

.contact-section,.signup-section {
  padding:70px 0 85px;
  background:radial-gradient(ellipse at 13% 10%,#f2f7ff,#fff 70%)
}

.contact-layout,.signup-layout {
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:94px;
  align-items:start
}

.contact-copy {
  padding-top:29px
}

.contact-copy h1 {
  font-size:55px;
  line-height:1.18;
  letter-spacing:-2.7px
}

.contact-copy>p {
  font-size:17px;
  max-width:435px;
  margin-top:25px
}

.contact-human {
  border-top:1px solid #dce6f1;
  display:flex;
  gap:16px;
  padding-top:32px;
  margin-top:40px
}

.contact-human h3 {
  font-size:19px
}

.contact-human p {
  font-size:14px;
  margin-top:10px
}

.contact-links {
  display:flex;
  flex-direction:column;
  gap:20px;
  margin-top:38px
}

.contact-links a {
  font-size:13px;
  font-weight:600;
  color:#436b95;
  display:flex;
  align-items:center;
  gap:14px
}

.contact-links svg {
  width:16px;
  height:16px
}

.form-card {
  padding:36px;
  border:1px solid #dae4f0;
  border-top-color:#eef3f9;
  background:#fff;
  border-radius:18px;
  box-shadow:0 4px 12px #153d5905,0 18px 40px -24px #173e5960
}

.form-card h2 {
  font-size:29px;
  letter-spacing:-1px;
  margin-top:13px
}

.form-card form {
  display:grid;
  gap:19px;
  margin-top:28px
}

.form-card label {
  font-size:12px;
  font-weight:600;
  color:#415a73;
  display:block
}

.form-card input:not([type=checkbox]),.form-card select,.form-card textarea {
  display:block;
  width:100%;
  border:1px solid #d5e0ec;
  border-radius:7px;
  background:#fcfdff;
  color:#354f69;
  font-size:14px;
  line-height:1.5;
  padding:11px 13px;
  margin-top:8px;
  min-height:45px
}

.form-card textarea {
  resize:vertical;
  min-height:130px
}

.form-card input::placeholder,.form-card textarea::placeholder {
  color:#9aa7b7
}

.form-card select {
  appearance:auto
}

.form-card .button {
  width:100%;
  min-height:48px;
  margin-top:4px;
  font-size:13px
}

.form-card .form-note {
  font-size:10px;
  line-height:1.65;
  color:#8b99aa;
  margin:0;
  text-align:center
}

.form-success {
  padding:30px 0
}

.form-success>.success-icon {
  width:46px;
  height:46px;
  margin-bottom:23px
}

.form-success p {
  font-size:15px;
  margin:17px 0 24px
}

.form-success h3 {
  font-size:25px
}

.form-card [hidden] {
  display:none!important
}

.signup-layout {
  grid-template-columns:1fr .94fr;
  gap:100px
}

.signup-copy h1 {
  font-size:65px;
  line-height:1.12;
  letter-spacing:-3px
}

.signup-copy>p {
  font-size:16px;
  margin-top:25px
}

.signup-copy .feature-list {
  margin:27px 0;
  gap:15px
}

.signup-copy .feature-list li {
  font-size:13px
}

.signup-photo {
  position:relative;
  margin-top:35px;
  max-width:420px
}

.signup-photo>img {
  width:100%;
  height:230px;
  object-fit:cover;
  border-radius:70px 15px 15px 15px
}

.signup-photo-label {
  position:absolute;
  right:-18px;
  bottom:18px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:15px 17px;
  background:#fff;
  border-radius:12px;
  box-shadow:var(--shadow)
}

.signup-photo-label strong {
  display:block;
  font-size:12px
}

.signup-photo-label span:not(.success-icon) {
  display:block;
  font-size:10px;
  color:#7a8a9d;
  margin-top:5px
}

.form-subtitle {
  font-size:12px;
  margin-top:13px
}

.form-subtitle a {
  color:var(--blue);
  font-weight:600
}

.selected-plan {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:17px;
  background:#f2f6ff;
  border:1px solid #dae6f9;
  border-radius:9px;
  margin:22px 0
}

.selected-plan span {
  display:block;
  font-size:8px;
  font-weight:700;
  letter-spacing:1px;
  color:#7d92a9
}

.selected-plan strong {
  display:block;
  font-size:13px;
  margin-top:6px
}

.selected-plan small {
  font-size:11px;
  font-weight:450;
  color:#7289a1
}

.selected-plan a {
  font-size:10px;
  color:var(--blue);
  text-decoration:underline;
  text-underline-offset:3px
}

.signup-form form {
  margin-top:20px;
  gap:16px
}

.optional {
  color:#9aa7b6;
  font-weight:400
}

.form-card .agreement {
  display:flex;
  gap:10px;
  font-size:10px;
  line-height:1.65;
  font-weight:400;
  color:#7c8c9e
}

.agreement input {
  flex-shrink:0;
  width:15px;
  height:15px;
  margin:2px 0 0;
  accent-color:var(--blue)
}

.agreement a {
  color:var(--blue);
  text-decoration:underline
}

.password-preview {
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:#f8fafd;
  border:1px solid #dce5ef;
  border-radius:7px;
  padding:13px;
  margin-top:8px;
  font-size:14px;
  color:#7d8b9b;
  min-height:46px
}

.password-preview>span {
  font-size:9px;
  font-weight:400;
  color:#8e9bad
}

.window-bar>span>svg {
  width:11px;
  height:11px
}

@media(max-width:1100px) {
  .journey-row {
    gap:48px
  }

  .journey-visual {
    padding:26px
  }

  .contact-layout,.signup-layout {
    gap:60px
  }

  .contact-copy h1 {
    font-size:48px
  }

  .signup-copy h1 {
    font-size:58px
  }

  .form-card {
    padding:29px
  }

  .type-feature-inner {
    gap:40px
  }

  .featured-guide>div {
    padding:30px
  }

  .guide-card-body {
    padding:23px
  }

  .article-layout {
    gap:50px
  }

  .journey-strip .wrap {
    gap:17px
  }

  .journey-strip i {
    width:17px
  }

  .brand-page-section {
    gap:40px
  }

  .page-hero h1 {
    font-size:52px
  }

}

@media(max-width:860px) {
  .page-hero h1 {
    font-size:46px
  }

  .journey-row {
    gap:30px
  }

  .journey-copy h2 {
    font-size:32px
  }

  .journey-copy p {
    font-size:14px
  }

  .journey-visual {
    padding:20px;
    min-height:360px
  }

  .settings-preview {
    padding:20px
  }

  .settings-row {
    font-size:10px;
    gap:10px
  }

  .settings-head strong {
    font-size:12px
  }

  .settings-head small {
    font-size:10px
  }

  .inline-success {
    font-size:9px
  }

  .journey-strip .wrap {
    gap:10px
  }

  .journey-strip span {
    font-size:10px
  }

  .journey-strip i {
    width:10px
  }

  .journey-number {
    font-size:37px
  }

  .booking-body {
    padding:18px
  }

  .booking-preview>img {
    height:125px
  }

  .activity-preview {
    padding:20px
  }

  .activity-preview h3 {
    font-size:18px
  }

  .feedback-preview {
    padding:22px
  }

  .share-preview>img {
    height:160px
  }

  .share-preview>div {
    padding:20px
  }

  .share-preview h3 {
    font-size:18px
  }

  .link-display {
    font-size:10px
  }

  .pricing-main .price-card {
    padding:24px
  }

  .pricing-main .price-badge {
    top:15px
  }

  .pricing-main .price-card.featured h3 {
    margin-top:24px
  }

  .comparison-table th:not(:first-child),.comparison-table td {
    min-width:85px
  }

  .comparison-table tbody th {
    font-size:12px
  }

  .comparison-table thead th {
    font-size:12px;
    padding:20px 16px
  }

  .comparison-table tbody th {
    padding:17px
  }

  .types-feature {
    padding-bottom:55px
  }

  .type-feature-inner {
    gap:35px
  }

  .type-feature-inner>img {
    height:460px
  }

  .type-feature-inner h2 {
    font-size:30px
  }

  .type-feature-inner p {
    font-size:14px
  }

  .type-card {
    padding:29px
  }

  .type-card h3 {
    font-size:22px
  }

  .type-card p {
    font-size:14px
  }

  .brand-page-section {
    grid-template-columns:1fr;
    gap:40px
  }

  .brand-page-section>div:first-child {
    max-width:560px
  }

  .portfolio-preview {
    max-width:640px;
    width:100%
  }

  .portfolio-grid img {
    height:175px
  }

  .featured-guide h2 {
    font-size:27px
  }

  .featured-guide p {
    font-size:13px
  }

  .featured-guide>img {
    height:350px
  }

  .featured-guide>div {
    padding:27px
  }

  .guide-grid {
    grid-template-columns:1fr 1fr
  }

  .guide-card h3 {
    font-size:21px
  }

  .article-heading h1 {
    font-size:43px
  }

  .article-heading>p {
    font-size:17px
  }

  .article-hero-image {
    height:290px
  }

  .article-layout {
    grid-template-columns:175px 1fr;
    gap:35px
  }

  .article-aside-cta {
    padding:20px
  }

  .article-body .article-lead {
    font-size:18px
  }

  .article-body h2 {
    font-size:25px
  }

  .article-body>p {
    font-size:15px
  }

  .article-pullout {
    font-size:19px
  }

  .article-related {
    gap:27px
  }

  .article-related h2 {
    font-size:27px
  }

  .related-link {
    padding-left:20px
  }

  .related-link h3 {
    font-size:17px
  }

  .contact-layout,.signup-layout {
    gap:35px
  }

  .contact-copy h1 {
    font-size:38px;
    letter-spacing:-1.8px
  }

  .contact-copy>p {
    font-size:15px
  }

  .form-card {
    padding:26px
  }

  .form-card h2 {
    font-size:25px
  }

  .contact-human {
    gap:12px
  }

  .contact-human .icon-tile {
    width:37px;
    height:37px
  }

  .contact-human h3 {
    font-size:16px
  }

  .contact-human p {
    font-size:13px
  }

  .signup-copy h1 {
    font-size:50px
  }

  .signup-copy>p {
    font-size:14px
  }

  .signup-photo>img {
    height:230px
  }

  .signup-photo-label {
    right:-12px;
    padding:13px
  }

  .signup-photo-label strong {
    font-size:10px
  }

  .signup-photo-label span:not(.success-icon) {
    font-size:9px
  }

  .selected-plan {
    padding:13px
  }

  .selected-plan strong {
    font-size:12px
  }

  .selected-plan a {
    font-size:9px
  }

  .selected-plan small {
    display:block;
    font-size:10px;
    margin-top:5px
  }

}

@media(max-width:620px) {
  .page-hero {
    padding:41px 0 26px
  }

  .page-hero h1 {
    font-size:38px;
    line-height:1.19;
    letter-spacing:-1.8px
  }

  .page-hero .eyebrow {
    font-size:9px;
    line-height:1.8;
    letter-spacing:1.7px;
    max-width:290px;
    margin:0 auto 18px
  }

  .page-hero p {
    font-size:15px;
    margin-top:20px
  }

  .journey-strip {
    padding:15px 0;
    margin-top:0
  }

  .journey-strip .wrap {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px
  }

  .journey-strip i {
    display:none
  }

  .journey-strip span {
    font-size:10px;
    text-align:center
  }

  .journey-row {
    grid-template-columns:1fr;
    gap:30px
  }

  .journey-row.reversed .journey-copy {
    order:1
  }

  .journey-row.reversed .journey-visual {
    order:2
  }

  .journey-number {
    font-size:36px;
    margin-bottom:16px
  }

  .journey-copy h2 {
    font-size:32px;
    line-height:1.24
  }

  .journey-copy p {
    font-size:15px;
    line-height:1.75
  }

  .journey-copy .eyebrow {
    font-size:9px;
    margin-bottom:15px
  }

  .journey-visual {
    padding:24px 21px;
    min-height:320px;
    border-radius:17px
  }

  .settings-preview {
    padding:21px
  }

  .settings-head strong {
    font-size:13px
  }

  .settings-row {
    font-size:10px;
    gap:10px;
    padding:16px 0
  }

  .settings-head .icon-tile {
    width:36px;
    height:36px
  }

  .settings-head .icon-tile svg {
    width:19px
  }

  .inline-success {
    font-size:10px
  }

  .share-preview>img {
    height:160px
  }

  .share-preview>div {
    padding:22px
  }

  .share-preview h3 {
    font-size:20px
  }

  .link-display {
    font-size:11px;
    padding:11px 8px;
    gap:7px
  }

  .share-tags {
    gap:5px
  }

  .share-tags span {
    font-size:9px;
    padding:5px
  }

  .booking-body {
    padding:20px
  }

  .booking-preview>img {
    height:133px
  }

  .booking-body h3 {
    font-size:19px
  }

  .date-row {
    gap:5px
  }

  .time-row {
    gap:5px
  }

  .time-row span {
    font-size:9px
  }

  .phone-preview {
    width:231px;
    min-height:426px
  }

  .phone-contact {
    margin-top:17px
  }

  .callout {
    font-size:17px;
    margin-top:23px
  }

  .activity-preview {
    padding:23px 20px
  }

  .activity-preview h3 {
    font-size:19px
  }

  .timeline-item b {
    font-size:11px
  }

  .timeline-item p {
    font-size:10px
  }

  .feedback-preview {
    padding:23px
  }

  .feedback-preview h3 {
    font-size:24px
  }

  .feedback-metrics>div {
    font-size:11px;
    gap:10px
  }

  .sample-quote {
    font-size:12px
  }

  .pricing-main {
    padding-bottom:10px
  }

  .pricing-main .pricing-grid {
    margin-top:6px
  }

  .pricing-main .price-card {
    padding:27px
  }

  .pricing-main .price-card.featured h3 {
    margin-top:0
  }

  .pricing-main .price-badge {
    top:28px
  }

  .pricing-main .feature-list li {
    font-size:13px
  }

  .pricing-main .feature-list {
    margin-bottom:24px;
    gap:14px;
    padding-top:20px
  }

  .comparison-table {
    margin-top:30px;
    border-radius:10px
  }

  .comparison-table thead th {
    font-size:8px;
    padding:13px 5px;
    text-align:center
  }

  .comparison-table thead th:first-child {
    text-align:left;
    padding-left:11px;
    width:46%
  }

  .comparison-table th:not(:first-child),.comparison-table td {
    min-width:0;
    width:18%
  }

  .comparison-table tbody th {
    font-size:10px;
    padding:14px 9px;
    line-height:1.65
  }

  .comparison-table tbody td {
    font-size:9px;
    padding:8px 3px
  }

  .table-check {
    width:19px;
    height:19px
  }

  .table-check svg {
    width:11px;
    height:11px
  }

  .types-feature {
    padding:8px 0 49px
  }

  .type-feature-inner {
    grid-template-columns:1fr;
    gap:30px
  }

  .type-feature-inner>img {
    height:305px;
    border-radius:78px 17px 17px 17px
  }

  .type-feature-inner h2 {
    font-size:31px
  }

  .type-feature-inner p {
    font-size:15px
  }

  .type-feature-inner .eyebrow {
    font-size:9px
  }

  .type-grid {
    grid-template-columns:1fr;
    gap:20px
  }

  .type-card {
    padding:28px 24px
  }

  .type-card h3 {
    font-size:24px
  }

  .type-card .mini-label {
    font-size:10px
  }

  .type-card p {
    font-size:14px
  }

  .type-card .button {
    font-size:12px
  }

  .brand-page-section {
    gap:30px
  }

  .brand-page-section p {
    font-size:15px
  }

  .portfolio-top {
    padding:17px;
    gap:8px
  }

  .portfolio-top strong {
    font-size:12px
  }

  .portfolio-top small {
    font-size:7px
  }

  .portfolio-title h3 {
    font-size:23px
  }

  .portfolio-grid {
    gap:9px;
    padding:0 14px 22px
  }

  .portfolio-grid img {
    height:116px
  }

  .portfolio-grid strong {
    font-size:9px;
    padding:13px 9px 7px
  }

  .portfolio-grid span {
    font-size:8px;
    padding:0 9px 12px
  }

  .portfolio-grid svg {
    width:11px
  }

  .guides-feature {
    padding-top:7px
  }

  .featured-guide {
    grid-template-columns:1fr;
    border-radius:16px
  }

  .featured-guide>img {
    height:220px
  }

  .featured-guide>div {
    padding:29px 25px
  }

  .featured-guide h2 {
    font-size:30px
  }

  .featured-guide p {
    font-size:14px
  }

  .featured-guide .eyebrow {
    font-size:9px
  }

  .featured-guide .button {
    font-size:12px
  }

  .guide-index-top>h2 {
    font-size:29px
  }

  .filter-row {
    gap:7px;
    margin-top:22px
  }

  .filter {
    font-size:10px;
    padding:9px 11px
  }

  .guide-grid {
    grid-template-columns:1fr;
    gap:21px
  }

  .guide-art {
    height:111px;
    padding:25px
  }

  .guide-card-body {
    padding:25px
  }

  .guide-card h3 {
    font-size:23px
  }

  .guide-card p {
    font-size:14px
  }

  .guide-source-note {
    font-size:10px;
    line-height:1.7
  }

  .article-header {
    padding-top:25px
  }

  .back-link {
    font-size:11px
  }

  .article-heading {
    margin:32px auto 25px
  }

  .article-heading h1 {
    font-size:36px;
    letter-spacing:-1.6px;
    line-height:1.22
  }

  .article-heading h1 br {
    display:none
  }

  .article-heading>p {
    font-size:16px;
    line-height:1.7
  }

  .article-heading .eyebrow {
    font-size:9px;
    letter-spacing:1.7px
  }

  .article-byline {
    margin-top:23px;
    font-size:11px
  }

  .article-byline>span:last-child>span {
    font-size:9px
  }

  .article-hero-image {
    height:220px;
    border-radius:14px;
    object-position:center
  }

  .article-section {
    padding:33px 0 50px
  }

  .article-layout {
    grid-template-columns:1fr;
    gap:0
  }

  .article-sidebar {
    display:none
  }

  .article-body .article-lead {
    font-size:18px;
    line-height:1.8
  }

  .article-body h2 {
    font-size:25px;
    line-height:1.35;
    margin-top:30px
  }

  .article-body>p {
    font-size:15px;
    line-height:1.9;
    margin-top:14px
  }

  .article-pullout {
    font-size:21px;
    padding:7px 0 7px 19px;
    line-height:1.65;
    margin:27px 0
  }

  .article-example {
    padding:24px 22px;
    margin:28px 0
  }

  .article-example h3 {
    font-size:22px;
    line-height:1.4
  }

  .article-example p {
    font-size:15px;
    line-height:1.85
  }

  .article-example .mini-label {
    font-size:9px
  }

  .article-checklist {
    gap:16px 8px
  }

  .article-checklist .checkline {
    font-size:11px
  }

  .article-related {
    grid-template-columns:1fr;
    gap:27px
  }

  .article-related h2 {
    font-size:30px
  }

  .related-link {
    border:0;
    border-top:1px solid #d8e3ee;
    padding:24px 0 0
  }

  .related-link h3 {
    font-size:23px;
    margin:13px 0
  }

  .contact-section,.signup-section {
    padding:38px 0 50px
  }

  .contact-layout,.signup-layout {
    grid-template-columns:1fr;
    gap:35px
  }

  .contact-copy {
    padding-top:0
  }

  .contact-copy h1 {
    font-size:40px;
    line-height:1.2;
    letter-spacing:-1.8px
  }

  .contact-copy .eyebrow {
    font-size:9px
  }

  .contact-copy>p {
    font-size:16px;
    margin-top:22px
  }

  .contact-human {
    padding-top:25px;
    margin-top:28px;
    gap:14px
  }

  .contact-human h3 {
    font-size:18px
  }

  .contact-human p {
    font-size:14px;
    line-height:1.75
  }

  .contact-links {
    gap:17px;
    margin-top:27px
  }

  .contact-links a {
    font-size:12px
  }

  .form-card {
    padding:27px 23px;
    border-radius:16px
  }

  .form-card h2 {
    font-size:28px;
    line-height:1.3
  }

  .form-card .mini-label {
    font-size:9px
  }

  .form-card form {
    gap:20px;
    margin-top:25px
  }

  .form-card label {
    font-size:12px
  }

  .form-card input:not([type=checkbox]),.form-card select,.form-card textarea {
    font-size:16px;
    min-height:48px;
    padding:12px
  }

  .form-card .button {
    font-size:14px;
    min-height:49px
  }

  .form-card .form-note {
    font-size:10px;
    line-height:1.7
  }

  .signup-copy h1 {
    font-size:49px;
    letter-spacing:-2.3px;
    line-height:1.13
  }

  .signup-copy>p {
    font-size:16px
  }

  .signup-copy .eyebrow {
    font-size:9px
  }

  .signup-copy .feature-list li {
    font-size:13px
  }

  .signup-photo {
    max-width:none;
    margin:28px 9px 0 0
  }

  .signup-photo>img {
    height:214px
  }

  .signup-photo-label {
    padding:14px;
    right:-9px;
    bottom:17px
  }

  .signup-photo-label strong {
    font-size:11px
  }

  .signup-photo-label span:not(.success-icon) {
    font-size:9px
  }

  .selected-plan {
    padding:16px
  }

  .selected-plan strong {
    font-size:13px
  }

  .selected-plan small {
    display:inline;
    font-size:10px
  }

  .selected-plan a {
    font-size:10px
  }

  .form-card .agreement {
    font-size:11px;
    line-height:1.7;
    gap:11px
  }

  .password-preview {
    min-height:49px
  }

  .password-preview>span {
    font-size:10px
  }

  .form-subtitle {
    font-size:12px
  }

  .signup-form form {
    gap:18px
  }

  .form-success h3 {
    font-size:25px
  }

  .form-success p {
    font-size:14px
  }

}

/* Listing agent management app showcase. Screens are the actual redesign reference. */
.management-section {
  background:linear-gradient(180deg,#f3f7fd,#eef4fc 68%,#f7faff);
  border-top:1px solid #e7eef7;
  border-bottom:1px solid #e1eaf5
}

.management-section .split-heading {
  margin-bottom:34px
}

.workspace-tabs {
  display:flex;
  justify-content:center;
  gap:8px;
  margin:0 0 25px
}

.workspace-tabs button {
  display:inline-flex;
  align-items:center;
  gap:9px;
  border:1px solid transparent;
  border-radius:8px;
  background:none;
  color:#6c8299;
  padding:11px 22px;
  font-size:13px;
  font-weight:550
}

.workspace-tabs button svg {
  width:17px;
  height:17px
}

.workspace-tabs button[aria-selected=true] {
  background:white;
  border-color:#d3e1f2;
  color:var(--blue);
  box-shadow:0 4px 10px -6px #123c6c40
}

.workspace-frame {
  background:#fff;
  border:1px solid #d0def0;
  border-top-color:#fff;
  border-radius:15px;
  overflow:hidden;
  box-shadow:0 3px 7px #173f5e06,0 15px 35px -18px #15385842,0 40px 65px -40px #18457c50
}

.workspace-frame-bar {
  height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:0 20px;
  background:#fff;
  color:#7b8fa6;
  font-size:11px;
  border-bottom:1px solid #e1e9f3
}

.workspace-frame-bar>span:last-child {
  font-size:9px;
  letter-spacing:1px
}

.workspace-frame picture>img {
  width:100%;
  height:auto;
  object-fit:cover;
  object-position:top
}

.workspace-caption {
  text-align:center;
  font-size:13px;
  line-height:1.7;
  color:#6c8199;
  padding:20px 30px;
  border-top:1px solid #e0e8f2;
  min-height:64px
}

.workspace-benefits {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:43px;
  margin-top:38px
}

.workspace-benefits .icon-tile {
  width:36px;
  height:36px;
  background:#fff;
  margin-bottom:16px
}

.workspace-benefits .icon-tile svg {
  width:19px;
  height:19px
}

.workspace-benefits h3 {
  font-size:19px
}

.workspace-benefits p {
  font-size:14px;
  margin-top:12px
}

.management-section .mockup-caption {
  margin-top:32px;
  font-size:10px;
  color:#72879e
}

@media(max-width:860px) {
  .workspace-tabs button {
    padding:10px 18px
  }

  .workspace-benefits {
    gap:26px
  }

  .workspace-benefits h3 {
    font-size:17px
  }

  .workspace-benefits p {
    font-size:13px
  }

  .workspace-caption {
    font-size:12px;
    padding:17px 25px
  }

  .workspace-frame-bar {
    height:37px;
    font-size:10px
  }

}

@media(max-width:620px) {
  .management-section .split-heading {
    margin-bottom:26px
  }

  .workspace-tabs {
    gap:5px;
    justify-content:space-between;
    margin-bottom:17px
  }

  .workspace-tabs button {
    padding:10px 8px;
    font-size:10px;
    gap:5px
  }

  .workspace-tabs button svg {
    width:13px;
    height:13px
  }

  .workspace-frame {
    border-radius:10px
  }

  .workspace-frame-bar {
    height:31px;
    padding:0 10px;
    font-size:9px
  }

  .workspace-frame-bar>span:last-child {
    display:none
  }

  .workspace-frame picture>img {
    width:100%;
    aspect-ratio:auto
  }

  .workspace-caption {
    font-size:11px;
    padding:15px;
    line-height:1.7;
    text-align:left;
    min-height:87px
  }

  .workspace-benefits {
    grid-template-columns:1fr;
    gap:24px;
    margin-top:28px
  }

  .workspace-benefits>div {
    position:relative;
    padding-left:48px
  }

  .workspace-benefits .icon-tile {
    position:absolute;
    left:0;
    top:0;
    width:33px;
    height:33px;
    margin:0
  }

  .workspace-benefits h3 {
    font-size:19px
  }

  .workspace-benefits p {
    font-size:14px;
    margin-top:9px
  }

  .management-section .mockup-caption {
    font-size:9px;
    text-align:left;
    margin-top:26px
  }

}

@media(min-width:621px) and (max-width:860px) {
  .footer-column:last-child {
    display:block
  }

}

.form-error {
  border:1px solid #e4b4b4;
  background:#fff3f3;
  color:#8c3434;
  border-radius:8px;
  padding:13px 15px;
  font-size:13px;
  line-height:1.6;
  margin:15px 0
}

.field-error {
  display:block;
  color:#a13c3c;
  font-size:12px;
  line-height:1.5;
  margin-top:7px
}

.form-card [aria-invalid=true] {
  border-color:#b75151!important;
  background:#fffafa!important
}

/* Art direction review: stronger story and scale below the opening. */
.benefit-grid {
  grid-template-columns:1.07fr .93fr;
  gap:36px;
  align-items:stretch
}

.benefit-card {
  min-height:430px;
  border-radius:19px;
  padding:36px
}

.seller-benefit {
  background:linear-gradient(135deg,#eef5ff,#e4eefa);
  border:1px solid #d7e4f5
}

.feedback-benefit {
  border-color:transparent;
  background:#fff;
  padding-right:8px
}

.benefit-card h3 {
  font-size:30px;
  line-height:1.3
}

.seller-notification {
  background:#fff;
  margin-top:27px;
  padding:23px;
  border-radius:13px;
  box-shadow:0 8px 16px #15385c06,0 24px 38px -20px #15385c35;
  transform:rotate(-1deg);
  border:1px solid #e1e9f4
}

.seller-notification-top {
  display:flex;
  align-items:center;
  gap:10px
}

.seller-notification-top b {
  font-size:12px
}

.seller-notification-top small {
  font-size:10px;
  color:#8b9bae;
  margin-left:auto
}

.seller-notification h4 {
  font-size:21px;
  line-height:1.4;
  margin-top:20px
}

.seller-notification>p {
  font-size:13px;
  line-height:1.6;
  margin-top:11px
}

.notification-done {
  display:flex;
  align-items:center;
  gap:10px;
  border-top:1px solid #e6edf5;
  margin-top:18px;
  padding-top:17px
}

.notification-done strong {
  font-size:12px;
  font-weight:600
}

.notification-done .success-icon {
  width:25px;
  height:25px
}

.feedback-bars {
  padding:25px 0 0;
  background:none;
  border-radius:0;
  gap:24px;
  margin-top:23px
}

.feedback-card-label {
  border-bottom:1px solid #dce5f0;
  padding-bottom:19px
}

.feedback-card-label span {
  display:block;
  font-size:9px;
  letter-spacing:1.5px;
  font-weight:700;
  color:#70849b
}

.feedback-card-label b {
  display:block;
  font-size:17px;
  font-weight:650;
  color:var(--navy);
  margin-top:11px
}

.feedback-bar {
  grid-template-columns:95px 1fr 72px;
  font-size:12px;
  gap:13px
}

.feedback-bar strong {
  font-size:11px
}

.bar-track {
  height:9px;
  background:#e7edf6
}

.bar-track i {
  background:linear-gradient(90deg,#3f7ee3,#83b0f2)
}

.feedback-bottom-note {
  font-size:12px;
  line-height:1.6;
  padding-top:18px;
  border-top:1px solid #e2eaf4;
  color:#8192a5
}

.property-band {
  padding:73px 0!important
}

.property-band-inner {
  grid-template-columns:1fr 1fr;
  gap:75px
}

.property-band-inner h2 {
  font-size:45px;
  line-height:1.16
}

.property-band-inner p {
  font-size:16px;
  max-width:450px
}

.property-types {
  margin-top:23px;
  gap:8px
}

.property-types span {
  font-size:11px;
  border-color:#49657e;
  padding:8px 11px
}

.property-band-inner .button {
  margin-top:27px
}

.property-band-photo {
  position:relative
}

.property-band-photo>img {
  width:100%;
  height:416px;
  object-fit:cover;
  object-position:44% center;
  border-radius:95px 19px 19px 19px
}

.property-band-photo>span {
  position:absolute;
  left:22px;
  bottom:22px;
  right:22px;
  border:1px solid #ffffff3b;
  background:#12344d8c;
  backdrop-filter:blur(14px);
  color:white;
  padding:15px;
  border-radius:9px;
  font-size:12px;
  text-align:center
}

.faqs summary {
  font-size:16px;
  padding:24px 0
}

.faqs summary::after {
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  flex-shrink:0;
  border:1px solid #ccd9e8;
  border-radius:50%;
  font-size:19px;
  line-height:1
}

.faqs details p {
  font-size:15px;
  line-height:1.8
}

.comparison-table thead {
  background:#e6eefb
}

.comparison-table thead th {
  font-size:14px;
  color:#153b60
}

.comparison-table tbody th {
  color:#314f6d;
  font-size:14px
}

.comparison-table tbody tr:first-child {
  background:#f2f6fd
}

.comparison-table tbody tr:first-child th,.comparison-table tbody tr:first-child td {
  font-weight:650;
  color:var(--navy)
}

.table-check {
  width:25px;
  height:25px;
  background:#e1f0e7
}

.table-check svg {
  width:15px;
  height:15px;
  color:#22664f;
  stroke-width:2
}

.closing {
  padding:0;
  background:var(--navy);
  margin-top:35px
}

.closing-inner {
  padding:76px 0;
  background:none;
  border:0;
  border-radius:0;
  display:grid;
  grid-template-columns:1.45fr 1fr;
  gap:65px;
  text-align:left;
  align-items:center
}

.closing h2 {
  color:#fff;
  font-size:44px;
  line-height:1.23;
  letter-spacing:-1.7px
}

.closing p {
  color:#b9ccdd;
  font-size:16px;
  max-width:540px
}

.closing .eyebrow {
  color:#e6c468;
  font-size:10px;
  letter-spacing:1.8px;
  margin-bottom:26px;
  gap:12px
}

.closing-bell {
  color:var(--gold);
  display:inline-flex
}

.closing-bell svg {
  width:22px;
  height:22px
}

.closing-action {
  text-align:center;
  justify-self:end
}

.closing .small-note {
  color:#b0c3d6;
  font-size:12px;
  line-height:1.85;
  margin-top:18px
}

.button.gold {
  color:#17344e;
  background:linear-gradient(#ffdb6b,#f8c846);
  border-color:#f8c846;
  box-shadow:inset 0 1px 0 #fff9,0 5px 15px #031b3525;
  font-weight:750;
  min-height:55px
}

.button.gold:hover {
  background:#ffdc74;
  box-shadow:0 8px 20px #031b3540
}

.closing+.site-footer {
  border-top:0
}

.approval-chapter {
  background:#092c4c;
  color:#fff;
  padding:77px 0
}

.approval-chapter h2 {
  color:#fff;
  font-size:44px;
  line-height:1.22
}

.approval-chapter .eyebrow {
  color:#f8d477
}

.approval-chapter .journey-number {
  color:#728eaa
}

.approval-chapter p {
  color:#b6cadd;
  font-size:17px;
  line-height:1.8
}

.approval-chapter .callout {
  color:#e7eff7;
  border-color:var(--gold);
  font-size:17px
}

.approval-visual {
  position:relative;
  background:none;
  border:0;
  border-radius:0;
  min-height:530px;
  padding:0 45px 0 0
}

.approval-visual .phone-preview {
  width:281px;
  min-height:518px;
  border:8px solid #224762;
  border-top-color:#4a6b85;
  box-shadow:0 20px 35px -12px #031a32aa;
  transform:rotate(-3deg);
  padding:18px 17px 34px;
  border-radius:36px
}

.approval-visual .phone-top {
  font-size:12px;
  color:var(--navy)
}

.approval-visual .phone-contact {
  margin:25px 0
}

.approval-visual .phone-contact strong {
  font-size:14px;
  color:var(--navy)
}

.approval-visual .phone-contact small {
  font-size:10px
}

.approval-visual .message-bubble {
  font-size:13px;
  line-height:1.7;
  padding:18px
}

.approval-visual .phone-approval span {
  font-size:12px;
  padding:12px
}

.approval-outcome {
  position:absolute;
  right:-14px;
  bottom:65px;
  border-radius:12px;
  background:white;
  padding:19px;
  display:flex;
  align-items:center;
  gap:12px;
  box-shadow:0 14px 28px #031b3540;
  max-width:258px
}

.approval-outcome b {
  font-size:15px;
  color:var(--navy);
  display:block
}

.approval-outcome span:not(.success-icon) {
  display:block;
  font-size:12px;
  color:#76899d;
  line-height:1.6;
  margin-top:5px
}

.showing-chapter {
  padding:85px 0
}

.showing-chapter .journey-number {
  margin-bottom:16px;
  color:#8aa8ca
}

.showing-chapter h2 {
  font-size:39px;
  line-height:1.24
}

.showing-chapter .split-heading {
  gap:50px
}

.visit-property {
  display:flex;
  align-items:center;
  gap:14px;
  background:#f3f7fc;
  border:1px solid #dee7f2;
  border-radius:12px;
  padding:17px 21px;
  margin-top:28px
}

.visit-property>img {
  width:72px;
  height:53px;
  object-fit:cover;
  border-radius:7px
}

.visit-property b {
  font-size:15px;
  color:var(--navy)
}

.visit-property div>span {
  font-size:12px;
  color:#7b8ea3;
  display:block;
  margin-top:6px
}

.visit-example {
  margin-left:auto;
  font-size:9px;
  letter-spacing:1.4px;
  color:#8a9caf
}

.visit-timeline {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:29px;
  margin-top:42px
}

.visit-timeline article {
  position:relative;
  padding-top:25px;
  border-top:2px solid #dbe6f2
}

.timeline-node {
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  background:#edf4ff;
  color:var(--blue);
  border:1px solid #d7e5f8;
  border-radius:50%;
  margin-bottom:24px
}

.timeline-node svg {
  width:19px;
  height:19px
}

.visit-timeline article>small {
  font-size:10px;
  letter-spacing:1.1px;
  color:#7890a8;
  display:block;
  margin-bottom:15px
}

.visit-timeline h3 {
  font-size:21px
}

.visit-timeline p {
  font-size:14px;
  line-height:1.8;
  margin-top:13px
}

.visit-complete {
  border-top-color:#87b7a1!important
}

.visit-complete .timeline-node {
  background:#eaf5ee;
  border-color:#cfe5d9;
  color:var(--green)
}

.feedback-chapter {
  background:#f1f6fd;
  border-top:1px solid #e1eaf6;
  padding:82px 0
}

.feedback-chapter-inner {
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:74px;
  align-items:center
}

.feedback-chapter h2 {
  font-size:46px;
  line-height:1.18
}

.feedback-chapter .journey-number {
  color:#8faace
}

.feedback-chapter .journey-copy>p {
  font-size:16px
}

.feedback-promise {
  display:flex;
  align-items:center;
  gap:13px;
  border-top:1px solid #d5e3f4;
  margin-top:29px;
  padding-top:23px;
  font-size:14px;
  font-weight:550;
  line-height:1.7;
  color:#42688d
}

.feedback-report {
  background:#fff;
  border:1px solid #d5e2f1;
  border-top-color:#fff;
  border-radius:17px;
  padding:31px;
  box-shadow:0 4px 10px #24476c05,0 22px 40px -20px #224e7e30;
  transform:rotate(1deg)
}

.feedback-report-head {
  display:flex;
  justify-content:space-between;
  gap:15px;
  align-items:start
}

.feedback-report-head h3 {
  font-size:23px;
  line-height:1.4;
  margin-top:14px
}

.feedback-report-head p {
  font-size:12px;
  margin-top:9px
}

.feedback-report-head .mini-label {
  font-size:9px
}

.report-status {
  font-size:10px;
  color:var(--green);
  padding:6px 9px;
  border:1px solid #d7e9df;
  background:#eaf5ef;
  border-radius:20px;
  flex-shrink:0
}

.report-responses {
  margin-top:28px
}

.report-responses>div {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:19px 0;
  border-top:1px solid #dfe8f3;
  align-items:center
}

.report-responses>div>span:first-child {
  font-size:13px;
  color:#70869e
}

.report-responses strong {
  font-size:16px;
  font-weight:650;
  text-align:right;
  color:var(--navy)
}

.report-responses small {
  grid-column:1/-1;
  text-align:right;
  color:#8295a9;
  font-size:10px
}

.response-meter {
  grid-column:1/-1;
  display:flex;
  gap:5px;
  justify-content:flex-end
}

.response-meter i {
  height:5px;
  width:30px;
  background:#88b2ea;
  border-radius:2px
}

.response-meter i.off {
  background:#e4edf8
}

.report-comment {
  margin-top:7px;
  background:#f4f7fc;
  border-radius:9px;
  padding:23px
}

.report-comment .mini-label {
  font-size:9px
}

.report-comment p {
  font-size:15px;
  line-height:1.75;
  margin-top:12px;
  color:#4b6784
}

.report-footer {
  display:flex;
  align-items:center;
  gap:9px;
  font-size:11px;
  line-height:1.7;
  padding-top:23px;
  color:#607f9d
}

.report-footer svg {
  width:17px;
  height:17px
}

.report-disclaimer {
  font-size:9px;
  color:#8b9fb3;
  margin-top:13px;
  line-height:1.6
}

@media(max-width:1100px) {
  .benefit-grid {
    gap:25px
  }

  .benefit-card h3 {
    font-size:27px
  }

  .property-band-inner {
    gap:45px
  }

  .property-band-inner h2 {
    font-size:40px
  }

  .property-band-photo>img {
    height:390px
  }

  .closing-inner {
    gap:40px;
    grid-template-columns:1.25fr 1fr
  }

  .closing h2 {
    font-size:39px
  }

  .closing .button {
    font-size:12px
  }

  .feedback-chapter-inner {
    gap:45px
  }

  .feedback-chapter h2 {
    font-size:42px
  }

  .feedback-report {
    padding:26px
  }

  .approval-chapter h2 {
    font-size:39px
  }

  .approval-outcome {
    right:-18px;
    bottom:38px
  }

  .feedback-bar {
    grid-template-columns:83px 1fr 65px;
    gap:9px;
    font-size:11px
  }

}

@media(max-width:860px) {
  .benefit-card {
    padding:28px
  }

  .feedback-benefit {
    padding-right:0
  }

  .benefit-card h3 {
    font-size:25px
  }

  .seller-notification {
    padding:20px
  }

  .seller-notification h4 {
    font-size:18px
  }

  .notification-done strong {
    font-size:10px
  }

  .feedback-bar {
    grid-template-columns:1fr auto;
    gap:10px
  }

  .feedback-bar .bar-track {
    grid-column:1/-1;
    grid-row:auto;
    order:3
  }

  .feedback-bar strong {
    text-align:right
  }

  .feedback-bars {
    gap:20px
  }

  .property-band-inner {
    gap:32px
  }

  .property-band-inner h2 {
    font-size:36px
  }

  .property-band-photo>img {
    height:410px;
    border-radius:76px 17px 17px 17px
  }

  .property-band-inner p {
    font-size:14px
  }

  .property-band-photo>span {
    font-size:10px;
    left:16px;
    right:16px;
    padding:13px
  }

  .closing-inner {
    padding:59px 0;
    grid-template-columns:1fr;
    gap:29px
  }

  .closing h2 {
    font-size:40px
  }

  .closing-action {
    justify-self:start;
    text-align:left
  }

  .closing .small-note {
    font-size:11px
  }

  .closing .button {
    font-size:13px
  }

  .closing .small-note br {
    display:none
  }

  .approval-visual {
    padding-right:20px;
    min-height:510px
  }

  .approval-visual .phone-preview {
    width:255px;
    min-height:497px;
    padding:16px 13px 34px
  }

  .approval-visual .message-bubble {
    font-size:12px
  }

  .approval-outcome {
    right:-13px;
    bottom:23px;
    padding:16px;
    max-width:235px
  }

  .approval-outcome b {
    font-size:13px
  }

  .approval-outcome span:not(.success-icon) {
    font-size:11px
  }

  .approval-chapter h2 {
    font-size:35px
  }

  .approval-chapter p {
    font-size:15px
  }

  .approval-chapter .callout {
    font-size:15px
  }

  .showing-chapter h2 {
    font-size:33px
  }

  .visit-timeline {
    gap:22px
  }

  .visit-timeline h3 {
    font-size:19px
  }

  .visit-timeline p {
    font-size:13px
  }

  .visit-timeline article>small {
    font-size:9px;
    letter-spacing:.7px
  }

  .feedback-chapter-inner {
    gap:33px;
    grid-template-columns:.8fr 1.2fr
  }

  .feedback-chapter h2 {
    font-size:35px
  }

  .feedback-chapter .journey-copy>p {
    font-size:14px
  }

  .feedback-report {
    padding:23px
  }

  .feedback-report-head h3 {
    font-size:21px
  }

  .feedback-report-head {
    display:block
  }

  .report-status {
    display:inline-block;
    margin-top:14px
  }

  .report-responses strong {
    font-size:14px
  }

  .report-responses>div>span:first-child {
    font-size:12px
  }

  .report-comment {
    padding:19px
  }

  .report-comment p {
    font-size:13px
  }

  .feedback-promise {
    font-size:12px
  }

  .comparison-table tbody th {
    font-size:12px
  }

}

@media(max-width:620px) {
  .benefit-grid {
    grid-template-columns:1fr;
    gap:30px
  }

  .benefit-card {
    min-height:0;
    padding:29px 23px
  }

  .benefit-card h3 {
    font-size:28px
  }

  .feedback-benefit {
    padding:0 2px 5px;
    border:0
  }

  .seller-notification {
    padding:21px;
    transform:none;
    margin-top:25px
  }

  .seller-notification h4 {
    font-size:20px
  }

  .seller-notification>p {
    font-size:13px
  }

  .notification-done strong {
    font-size:11px;
    line-height:1.5
  }

  .feedback-bars {
    padding-top:20px;
    margin-top:8px;
    gap:22px
  }

  .feedback-card-label b {
    font-size:18px
  }

  .feedback-bar {
    grid-template-columns:90px 1fr 65px;
    font-size:12px;
    gap:10px
  }

  .feedback-bar .bar-track {
    grid-column:auto;
    order:0
  }

  .feedback-bar strong {
    font-size:11px
  }

  .feedback-bottom-note {
    font-size:12px
  }

  .property-band {
    padding:51px 0!important
  }

  .property-band-inner {
    grid-template-columns:1fr;
    gap:32px
  }

  .property-band-inner h2 {
    font-size:37px
  }

  .property-band-inner p {
    font-size:15px
  }

  .property-types {
    margin-top:22px
  }

  .property-types span {
    font-size:11px
  }

  .property-band-photo>img {
    height:275px;
    border-radius:71px 16px 16px 16px
  }

  .property-band-photo>span {
    font-size:11px;
    bottom:17px
  }

  .property-band-inner .button {
    margin-top:25px
  }

  .faqs summary {
    font-size:15px;
    padding:22px 0;
    gap:18px
  }

  .faqs details p {
    font-size:14px;
    padding-right:12px
  }

  .faqs summary::after {
    width:26px;
    height:26px;
    font-size:18px
  }

  .closing {
    margin-top:15px
  }

  .closing-inner {
    padding:50px 0 48px;
    gap:29px;
    display:block;
    text-align:left
  }

  .closing .eyebrow {
    font-size:8px;
    letter-spacing:1.5px;
    gap:9px;
    line-height:1.7;
    margin-bottom:22px
  }

  .closing-bell svg {
    width:20px
  }

  .closing h2 {
    font-size:34px;
    line-height:1.26;
    letter-spacing:-1.3px
  }

  .closing p {
    font-size:15px;
    line-height:1.8;
    margin-top:20px
  }

  .closing-action {
    margin-top:27px;
    text-align:left
  }

  .closing .button {
    font-size:13px;
    min-height:53px;
    width:100%;
    gap:10px;
    padding:15px
  }

  .closing .small-note {
    font-size:10px;
    line-height:1.8;
    margin-top:16px;
    text-align:center
  }

  .closing .small-note br {
    display:block
  }

  .approval-chapter {
    padding:52px 0
  }

  .approval-chapter h2 {
    font-size:35px
  }

  .approval-chapter p {
    font-size:16px
  }

  .approval-chapter .callout {
    font-size:16px
  }

  .approval-chapter .journey-number {
    font-size:34px
  }

  .approval-visual {
    min-height:590px;
    display:flex;
    align-items:center;
    flex-direction:column;
    padding:0;
    gap:17px
  }

  .approval-visual .phone-preview {
    width:267px;
    min-height:493px;
    transform:none;
    padding:17px 15px 33px
  }

  .approval-visual .message-bubble {
    font-size:13px
  }

  .approval-visual .phone-approval span {
    font-size:12px;
    padding:12px
  }

  .approval-outcome {
    position:static;
    max-width:none;
    width:267px;
    padding:18px;
    box-shadow:none;
    gap:12px
  }

  .approval-outcome b {
    font-size:14px
  }

  .approval-outcome span:not(.success-icon) {
    font-size:12px
  }

  .showing-chapter {
    padding:53px 0
  }

  .showing-chapter h2 {
    font-size:32px
  }

  .visit-property {
    gap:10px;
    padding:14px;
    margin-top:26px
  }

  .visit-property>img {
    width:55px;
    height:48px
  }

  .visit-property b {
    font-size:13px
  }

  .visit-property div>span {
    font-size:10px;
    line-height:1.6;
    margin-top:5px
  }

  .visit-example {
    display:none
  }

  .visit-timeline {
    grid-template-columns:1fr;
    gap:0;
    margin-top:30px
  }

  .visit-timeline article {
    padding:0 0 28px 57px;
    border:0;
    position:relative
  }

  .visit-timeline article::before {
    content:'';
    position:absolute;
    top:38px;
    left:18px;
    width:1px;
    bottom:0;
    background:#d8e4f0
  }

  .visit-timeline article:last-child {
    padding-bottom:0
  }

  .visit-timeline article:last-child::before {
    display:none
  }

  .timeline-node {
    position:absolute;
    left:0;
    top:0;
    width:37px;
    height:37px;
    margin:0
  }

  .visit-timeline article>small {
    font-size:9px;
    padding-top:5px;
    margin-bottom:13px;
    letter-spacing:.7px
  }

  .visit-timeline h3 {
    font-size:22px
  }

  .visit-timeline p {
    font-size:14px;
    line-height:1.8;
    margin-top:11px
  }

  .feedback-chapter {
    padding:53px 0
  }

  .feedback-chapter-inner {
    grid-template-columns:1fr;
    gap:32px
  }

  .feedback-chapter h2 {
    font-size:39px
  }

  .feedback-chapter .journey-copy>p {
    font-size:16px
  }

  .feedback-promise {
    font-size:14px;
    margin-top:25px;
    padding-top:21px
  }

  .feedback-report {
    transform:none;
    padding:24px 21px;
    border-radius:14px
  }

  .feedback-report-head h3 {
    font-size:24px;
    margin-top:12px
  }

  .feedback-report-head p {
    font-size:12px
  }

  .feedback-report-head .mini-label {
    font-size:9px
  }

  .report-status {
    font-size:10px;
    margin-top:15px
  }

  .report-responses>div {
    padding:19px 0;
    gap:11px
  }

  .report-responses>div>span:first-child {
    font-size:13px
  }

  .report-responses strong {
    font-size:15px
  }

  .report-responses small {
    font-size:10px
  }

  .report-comment {
    padding:20px
  }

  .report-comment p {
    font-size:15px;
    line-height:1.8
  }

  .report-footer {
    font-size:11px;
    align-items:start
  }

  .report-disclaimer {
    font-size:9px
  }

  .comparison-table {
    overflow-x:auto
  }

  .comparison-table table {
    min-width:580px
  }

  .comparison-table thead th {
    font-size:12px;
    padding:16px 12px
  }

  .comparison-table thead th:first-child {
    padding-left:16px
  }

  .comparison-table tbody th {
    font-size:12px;
    padding:16px;
    line-height:1.7
  }

  .comparison-table tbody td {
    font-size:12px;
    padding:12px
  }

  .comparison-table th:not(:first-child),.comparison-table td {
    width:80px
  }

  .table-check {
    width:23px;
    height:23px
  }

  .table-check svg {
    width:14px
  }

  .comparison-table tbody th {
    width:290px
  }

  .comparison-table::after {
    content:'Swipe to compare every plan →';
    display:block;
    position:sticky;
    left:0;
    font-size:11px;
    color:#647f99;
    background:#f1f6fd;
    padding:12px 14px;
    border-top:1px solid #dce5ef
  }

}
/* Maintain secondary-action contrast inside the navy approval chapter. */
.phone-approval span {
  color:var(--navy);
}
.phone-approval span:first-child {
  color:var(--green);
}
/* Agent app: explicit product identity and a dedicated marketing page. */
.management-link {
  display:flex;
  justify-content:center;
  margin-top:31px;
}

.journey-app-link {
  display:flex;
  justify-content:center;
  margin:-9px 0 22px;
}

.agent-app-hero {
  background:linear-gradient(130deg,#fff,#f0f6ff);
  border-bottom:1px solid #e0e9f4;
  overflow:hidden;
}

.agent-app-hero-inner {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:35px;
  align-items:center;
  min-height:720px;
  padding-top:65px;
  padding-bottom:85px;
}

.agent-app-copy h1 {
  font-size:66px;
  line-height:1.12;
  letter-spacing:-3px;
}

.agent-app-copy>p {
  font-size:18px;
  max-width:460px;
  line-height:1.8;
}

.agent-app-copy .actions {
  gap:22px;
  flex-wrap:wrap;
}

.app-access-note {
  display:flex;
  align-items:center;
  gap:9px;
  font-size:12px;
  line-height:1.7;
  margin-top:24px;
  color:#6b839b;
}

.app-access-note svg {
  width:17px;
  height:17px;
  color:var(--blue);
}

.agent-device-scene {
  position:relative;
  min-height:505px;
  padding-top:55px;
}

.agent-desktop-device {
  border:1px solid #d2e0f0;
  border-radius:15px;
  background:white;
  overflow:hidden;
  box-shadow:0 20px 50px -20px #193f7850;
  transform:rotate(-1deg);
  margin-right:14px;
}

.agent-desktop-device>img {
  width:100%;
  height:auto;
}

.agent-desktop-device .workspace-frame-bar {
  height:33px;
  font-size:9px;
}

.agent-mobile-device {
  position:absolute;
  right:-13px;
  bottom:5px;
  width:169px;
  max-height:368px;
  overflow:hidden;
  background:#fff;
  border:6px solid #143a5b;
  border-top-color:#345b7c;
  border-radius:24px;
  box-shadow:0 17px 30px #08274e38;
  transform:rotate(3deg);
}

.agent-mobile-device img {
  width:100%;
  height:auto;
}

.agent-device-caption {
  position:absolute;
  bottom:4px;
  left:20px;
  font-size:10px;
  color:#8094a9;
  max-width:190px;
  line-height:1.6;
}

.app-role-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:39px;
  margin-top:40px;
}

.app-role-grid article {
  border-top:1px solid #d9e4f0;
  padding-top:25px;
}

.app-role-grid .icon-tile {
  margin-bottom:22px;
}

.app-role-grid h3 {
  font-size:22px;
}

.app-role-grid p {
  font-size:15px;
  line-height:1.85;
}

.app-editorial {
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:85px;
}

.app-editorial h2 {
  font-size:37px;
}

.app-editorial h3 {
  font-size:23px;
  margin-top:32px;
}

.app-editorial h3:first-child {
  margin-top:0;
}

.app-editorial p {
  font-size:16px;
  line-height:1.9;
  margin-top:16px;
}

.app-editorial a {
  color:var(--blue);
  text-decoration:underline;
  text-underline-offset:3px;
}

@media(max-width:1100px) {
  .primary-nav {
    gap:20px;
  }

  .agent-app-hero-inner {
    gap:25px;
  }

  .agent-app-copy h1 {
    font-size:56px;
  }

  .agent-app-copy>p {
    font-size:16px;
  }

  .agent-mobile-device {
    width:151px;
  }

  .agent-device-scene {
    min-height:445px;
  }

  .agent-device-caption {
    left:12px;
    max-width:150px;
  }

  .app-role-grid {
    gap:29px;
  }

  .app-editorial {
    gap:50px;
  }

}

@media(max-width:860px) {
  .primary-nav {
    gap:5px;
  }

  .agent-app-hero-inner {
    grid-template-columns:1fr;
    gap:20px;
    padding-top:45px;
    padding-bottom:45px;
  }

  .agent-app-copy h1 {
    font-size:58px;
  }

  .agent-app-copy>p {
    max-width:600px;
    font-size:17px;
  }

  .agent-device-scene {
    min-height:505px;
    max-width:650px;
    width:100%;
    padding-top:15px;
  }

  .agent-desktop-device {
    margin-right:70px;
  }

  .agent-mobile-device {
    width:182px;
    right:0;
    bottom:20px;
  }

  .agent-device-caption {
    bottom:11px;
    left:15px;
    max-width:270px;
  }

  .app-role-grid {
    gap:25px;
  }

  .app-role-grid h3 {
    font-size:20px;
  }

  .app-role-grid p {
    font-size:14px;
  }

  .app-editorial {
    grid-template-columns:1fr;
    gap:30px;
  }

  .app-editorial>div:first-child {
    max-width:590px;
  }

}

@media(max-width:620px) {
  .agent-app-hero-inner {
    padding-top:39px;
    padding-bottom:42px;
    gap:23px;
  }

  .agent-app-copy h1 {
    font-size:49px;
    letter-spacing:-2.3px;
  }

  .agent-app-copy>p {
    font-size:16px;
    margin-top:22px;
    line-height:1.8;
  }

  .agent-app-copy .eyebrow {
    font-size:9px;
    letter-spacing:1.6px;
  }

  .agent-app-copy .actions {
    gap:11px;
    align-items:start;
    flex-direction:column;
    margin-top:26px;
  }

  .agent-app-copy .button {
    font-size:13px;
  }

  .app-access-note {
    font-size:11px;
    margin-top:19px;
    align-items:start;
  }

  .app-access-note svg {
    margin-top:2px;
  }

  .agent-device-scene {
    min-height:390px;
    padding-top:0;
  }

  .agent-desktop-device {
    margin-right:28px;
    border-radius:10px;
    transform:none;
  }

  .agent-desktop-device .workspace-frame-bar {
    font-size:8px;
    height:27px;
    padding:0 11px;
  }

  .agent-mobile-device {
    width:147px;
    right:0;
    bottom:13px;
    border-width:5px;
    border-radius:19px;
    transform:none;
    max-height:none;
  }

  .agent-device-caption {
    font-size:9px;
    max-width:168px;
    left:0;
    bottom:26px;
  }

  .app-role-grid {
    grid-template-columns:1fr;
    gap:27px;
    margin-top:27px;
  }

  .app-role-grid article {
    position:relative;
    padding-top:23px;
  }

  .app-role-grid h3 {
    font-size:23px;
  }

  .app-role-grid p {
    font-size:15px;
  }

  .app-role-grid .icon-tile {
    margin-bottom:18px;
  }

  .app-editorial h2 {
    font-size:32px;
  }

  .app-editorial h3 {
    font-size:24px;
    line-height:1.35;
  }

  .app-editorial p {
    font-size:16px;
    line-height:1.85;
  }

  .management-link .button {
    font-size:13px;
    width:100%;
  }

  .journey-app-link {
    margin:-6px 0 20px;
  }

}

@media(min-width:861px) {
  .agent-device-caption {
    bottom:-22px;
    left:10px;
    max-width:280px;
  }

}


/* Explain the product before asking visitors to explore it. */
.hero-promise {
  display:block;
  color:var(--navy);
  font-size:21px;
  font-weight:700;
  line-height:1.5;
  margin-bottom:12px;
}
@media(max-width:620px) {
  .hero-promise { font-size:18px; margin-bottom:10px; }
  .value-strip strong { font-size:24px; }
}

@media(min-width:621px) {
  .value-strip span { max-width:190px; }
}

/* Version 3: concise product proof and connected rental calendars. */
.hero-calendar-cue {
  display:flex;
  align-items:center;
  gap:9px;
  margin-top:20px;
  color:var(--blue);
  font-size:14px;
  font-weight:600;
  line-height:1.6;
}
.hero-calendar-cue svg { width:18px; height:18px; flex-shrink:0; }
.hero-calendar-cue svg:last-child { width:15px; }
.workflow-rail { background:white; border-bottom:1px solid var(--line); }
.workflow-rail-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:30px 0; }
.workflow-rail-grid>a { display:flex; gap:14px; padding:8px 22px; border-right:1px solid var(--line); }
.workflow-rail-grid>a:first-child { padding-left:0; }
.workflow-rail-grid>a:last-child { border-right:0; }
.workflow-icon { display:grid; place-items:center; width:37px; height:37px; border-radius:10px; background:#f0f5fc; color:var(--blue); flex-shrink:0; margin-top:17px; }
.workflow-icon svg { width:19px; height:19px; }
.workflow-rail small { display:block; font-size:12px; color:#8191a2; margin-bottom:7px; }
.workflow-rail strong { display:block; font-size:16px; color:var(--navy); }
.workflow-rail p { font-size:13px; line-height:1.6; margin:5px 0 0; }
.workflow-rail a:hover strong { color:var(--blue); }
.management-compact { padding:80px 0; }
.management-compact>.wrap { display:grid; grid-template-columns:330px minmax(0,1fr); column-gap:55px; row-gap:25px; align-items:start; }
.management-compact .split-heading { display:block; grid-column:1; grid-row:1; margin:0; }
.management-compact .split-heading h2 { font-size:37px; line-height:1.2; letter-spacing:-1.4px; }
.management-compact .split-heading>p { width:auto; font-size:16px; line-height:1.8; margin-top:21px; }
.management-compact .workspace-tabs { grid-column:1; grid-row:2; display:grid; grid-template-columns:1fr 1fr; gap:9px; margin:0; }
.management-compact .workspace-tabs button { justify-content:flex-start; padding:13px 11px; font-size:14px; border-color:#dce7f4; }
.management-compact .workspace-frame { grid-column:2; grid-row:1 / span 3; }
.management-compact .workspace-frame-bar { font-size:11px; height:35px; }
.management-compact .workspace-frame-bar>span:last-child { display:none; }
.management-compact .workspace-caption { font-size:14px; line-height:1.65; text-align:left; padding:18px 22px; }
.management-compact .management-link { grid-column:1; grid-row:3; justify-content:flex-start; margin:0; }
.management-compact .management-link .button { font-size:14px; }
.management-compact .mockup-caption { grid-column:2; margin:0; font-size:12px; line-height:1.6; }
.calendar-sync { background:var(--navy); color:white; padding:86px 0; overflow:hidden; }
.calendar-sync-layout { display:grid; grid-template-columns:.83fr 1.17fr; gap:62px; align-items:center; }
.calendar-sync .eyebrow { color:var(--gold); }
.calendar-sync-copy h2 { color:white; font-size:47px; letter-spacing:-1.8px; line-height:1.16; }
.calendar-sync-copy h2 span { color:#f7cd67; }
.calendar-sync-copy>p { color:#d2dfed; font-size:17px; line-height:1.85; margin-top:24px; }
.calendar-sync-copy .calendar-payoff { color:white; font-size:19px; font-weight:650; margin-top:20px; }
.calendar-sync-checks { display:flex; flex-direction:column; align-items:flex-start; gap:13px; font-size:14px; margin:25px 0 30px; color:#e0ebf6; }
.calendar-sync-checks svg { color:#f6c956; }
.calendar-sync-copy .button { font-size:14px; }
.sync-sources { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.sync-sources>div { display:flex; align-items:center; gap:11px; padding:15px; border-radius:12px; border:1px solid #4a6480; background:#143858; }
.sync-source-mark { display:grid; place-items:center; width:34px; height:34px; background:#fff3e9; color:#ba482e; font-weight:800; border-radius:9px; flex-shrink:0; }
.sync-source-mark.vrbo { background:#e4f0fd; color:#1c5898; }
.sync-sources strong { display:block; font-size:14px; font-weight:600; }
.sync-sources small { display:block; font-size:12px; color:#b9cee3; margin-top:3px; }
.sync-sources>div>svg { width:16px; height:16px; color:#f6cf72; margin-left:auto; }
.sync-direction { display:flex; justify-content:center; align-items:center; gap:8px; padding:20px 0; color:#c8d7e9; font-size:13px; }
.sync-direction svg { width:17px; height:17px; transform:rotate(90deg); color:var(--gold); }
.sync-calendar { background:#fff; color:var(--navy); border:1px solid #cbd8e6; border-radius:18px; padding:25px; box-shadow:0 20px 50px #03172940; }
.sync-calendar-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:26px; }
.sync-calendar-heading .mini-label { font-size:11px; color:#6d8195; letter-spacing:1.2px; }
.sync-calendar-heading h3 { font-size:25px; margin-top:10px; letter-spacing:-.6px; }
.sync-example { font-size:10px; letter-spacing:1px; border:1px solid #dde6ef; border-radius:5px; padding:5px 8px; color:#768b9f; }
.sync-week { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; }
.sync-day { text-align:center; padding:10px 0; border:1px solid #e2e7ed; border-radius:8px; min-width:0; transition:background-color .25s,border-color .25s; }
.sync-day small { display:block; font-size:10px; letter-spacing:.3px; color:#61798e; }
.sync-day strong { display:block; font-size:24px; line-height:1.25; margin:10px 0 8px; }
.sync-day>span { display:block; font-size:11px; font-weight:600; }
.sync-day.busy { background:#faf1df; border-color:#eedcb6; color:#866424; }
.sync-day.available { background:#eef5ff; border-color:#99bff5; color:#1e61b8; }
.sync-day.newly-blocked { box-shadow:0 0 0 2px #e3b858 inset; }
.sync-stays { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; margin:10px 0 22px; min-height:24px; }
.sync-stays span { font-size:11px; line-height:1.5; text-align:center; padding:5px 2px; border-radius:5px; }
.sync-stay.airbnb { grid-column:1 / span 2; background:#fff0e8; color:#ac5234; }
.sync-stay.vrbo { grid-column:5 / span 3; background:#e8f1fb; color:#2d628d; }
.sync-new-stay { grid-column:3; color:#926618; background:#fff0d2; }
.sync-legend { display:flex; flex-wrap:wrap; gap:10px 19px; font-size:12px; color:#60758a; margin-bottom:22px; }
.sync-legend>span { display:flex; align-items:center; gap:6px; }
.sync-legend i { width:10px; height:10px; border-radius:3px; display:block; }
.sync-legend i.busy { background:#ebd6a9; }
.sync-legend i.available { background:#8bb8f8; }
.sync-result { display:flex; align-items:flex-start; gap:12px; padding:18px 0; border-top:1px solid #e2e9ef; min-height:98px; }
.sync-result .success-icon { width:27px; height:27px; flex-shrink:0; }
.sync-result .success-icon svg { width:15px; height:15px; }
.sync-result p { margin:0; font-size:14px; line-height:1.7; color:#506b82; }
.sync-demo-button { display:flex; width:100%; align-items:center; gap:10px; border:1px solid #ccdcf0; border-radius:8px; background:#f1f6fe; color:#245fad; padding:13px 15px; font-size:13px; font-weight:600; min-height:46px; }
.sync-demo-button svg { width:17px; height:17px; flex-shrink:0; }
.sync-demo-button svg:last-child { margin-left:auto; }
.sync-demo-button:hover { background:#e4efff; }
.sync-refresh-note { margin:15px 8px 0; color:#b7cee3; font-size:12px; line-height:1.7; }
.property-band-light { background:#f3f7fc; color:var(--navy); border-top:1px solid #e1eaf2; border-bottom:1px solid #e1eaf2; }
.property-band-light h2 { color:var(--navy); font-size:39px; }
.property-band-light p { color:#59738c; }
.property-band-light .eyebrow { color:var(--blue); }
.property-band-light .property-types span { color:#46657e; border-color:#cdddec; background:#fff; }
.type-grid-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.type-grid-three .type-card h3 { font-size:25px; }
.type-grid-three .type-card p { font-size:16px; }
.app-role-grid p { font-size:16px; }
.sync-demonstration [hidden] { display:none!important; }
@media(max-width:1100px) {
  .primary-nav { gap:15px; }
  .workflow-rail-grid>a { padding:8px 13px; gap:10px; }
  .workflow-rail strong { font-size:14px; }
  .workflow-rail p { font-size:12px; }
  .management-compact>.wrap { grid-template-columns:300px minmax(0,1fr); gap:25px; }
  .management-compact .split-heading h2 { font-size:33px; }
  .calendar-sync-layout { gap:30px; grid-template-columns:.82fr 1.18fr; }
  .calendar-sync-copy h2 { font-size:40px; }
  .sync-calendar { padding:20px; }
  .sync-sources>div { padding:12px 10px; gap:8px; }
  .sync-sources strong { font-size:12px; }
  .sync-sources>div>svg { display:none; }
  .type-grid-three { gap:20px; }
}
@media(max-width:860px) {
  .primary-nav { gap:5px; }
  .workflow-rail-grid { grid-template-columns:1fr 1fr; gap:25px 0; padding:28px 0; }
  .workflow-rail-grid>a:nth-child(2) { border:0; }
  .workflow-rail-grid>a:nth-child(3) { padding-left:0; }
  .workflow-rail strong { font-size:16px; }
  .workflow-rail p { font-size:13px; }
  .management-compact>.wrap { display:block; }
  .management-compact .split-heading { max-width:600px; margin-bottom:24px; }
  .management-compact .workspace-tabs { display:flex; justify-content:flex-start; margin-bottom:24px; }
  .management-compact .management-link { margin-top:26px; }
  .management-compact .mockup-caption { margin-top:20px; }
  .calendar-sync-layout { grid-template-columns:1fr; gap:36px; }
  .calendar-sync-copy { max-width:650px; }
  .calendar-sync-copy h2 br:last-child { display:none; }
  .calendar-sync-copy h2 span { display:block; }
  .calendar-sync-checks { margin:22px 0; }
  .sync-demonstration { max-width:680px; width:100%; }
  .sync-sources strong { font-size:15px; }
  .sync-sources>div>svg { display:block; }
  .sync-day small { font-size:12px; }
  .sync-day>span { font-size:13px; }
  .sync-calendar { padding:26px; }
  .sync-stays span { font-size:12px; }
  .type-grid-three { grid-template-columns:1fr; }
}
@media(max-width:620px) {
  .hero-calendar-cue { font-size:12px; gap:7px; line-height:1.7; margin-top:18px; }
  .hero-calendar-cue svg:last-child { display:none; }
  .workflow-rail-grid { padding:23px 0; gap:22px 0; }
  .workflow-rail-grid>a { padding:0 12px; gap:9px; }
  .workflow-icon { width:27px; height:27px; border-radius:7px; margin-top:19px; }
  .workflow-icon svg { width:16px; height:16px; }
  .workflow-rail strong { font-size:14px; line-height:1.4; }
  .workflow-rail small { font-size:11px; margin-bottom:5px; }
  .workflow-rail p { font-size:12px; line-height:1.5; }
  .management-compact { padding:52px 0; }
  .management-compact .split-heading h2 { font-size:33px; letter-spacing:-1.2px; }
  .management-compact .split-heading>p { font-size:16px; margin-top:18px; }
  .management-compact .workspace-tabs { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:20px; }
  .management-compact .workspace-tabs button { font-size:14px; padding:12px; min-height:44px; }
  .management-compact .workspace-tabs button svg { width:16px; height:16px; }
  .management-compact .workspace-caption { font-size:14px; line-height:1.7; padding:17px; }
  .management-compact .workspace-frame-bar { font-size:11px; }
  .management-compact .mockup-caption { font-size:12px; }
  .calendar-sync { padding:53px 0; }
  .calendar-sync-layout { gap:29px; }
  .calendar-sync .eyebrow { font-size:11px; line-height:1.6; letter-spacing:1.3px; }
  .calendar-sync-copy h2 { font-size:37px; letter-spacing:-1.5px; line-height:1.18; }
  .calendar-sync-copy h2 br:last-child { display:initial; }
  .calendar-sync-copy>p { font-size:16px; line-height:1.8; margin-top:20px; }
  .calendar-sync-copy .calendar-payoff { font-size:17px; }
  .calendar-sync-checks { font-size:13px; gap:10px; }
  .calendar-sync-copy .button { font-size:13px; width:100%; justify-content:center; }
  .sync-sources { gap:9px; }
  .sync-sources>div { padding:11px 10px; gap:8px; }
  .sync-source-mark { width:27px; height:30px; font-size:15px; border-radius:7px; }
  .sync-sources strong { font-size:12px; }
  .sync-sources small { font-size:11px; }
  .sync-sources>div>svg { display:none; }
  .sync-direction { font-size:11px; gap:6px; padding:17px 0; }
  .sync-calendar { padding:17px 12px; border-radius:13px; }
  .sync-calendar-heading { margin:3px 4px 21px; }
  .sync-calendar-heading h3 { font-size:22px; }
  .sync-calendar-heading .mini-label { font-size:10px; }
  .sync-example { font-size:9px; padding:4px 5px; }
  .sync-week { gap:4px; }
  .sync-day { padding:10px 0; border-radius:6px; }
  .sync-day small { font-size:10px; letter-spacing:0; }
  .sync-day strong { font-size:22px; margin:8px 0; }
  .sync-day>span { font-size:11px; }
  .sync-stays { gap:4px; margin-bottom:19px; }
  .sync-stays span { font-size:10px; }
  .sync-legend { font-size:11px; flex-direction:column; gap:8px; margin:0 3px 16px; }
  .sync-result { padding:17px 3px; gap:9px; min-height:117px; }
  .sync-result p { font-size:13px; line-height:1.7; }
  .sync-demo-button { font-size:12px; padding:12px 9px; gap:8px; }
  .sync-refresh-note { font-size:12px; margin:14px 2px 0; }
  .property-band-light h2 { font-size:33px; }
  .property-band-light .property-band-inner { gap:27px; }
  .type-grid-three .type-card h3 { font-size:27px; }
  .app-role-grid p { font-size:16px; }
  .pricing-main .price-card .feature-list { display:none; }
  .pricing-main .price-card { padding-top:27px; padding-bottom:25px; }
  .pricing-main .price-card .small-note { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) {
  .sync-day { transition:none; }
}

/* Complete the shorter pricing, guide, and signup journeys. */
.calendar-sync-checks .checkline { color:#dae7f4; }
.included-features { display:grid; grid-template-columns:1fr 1fr; gap:0 55px; margin-top:45px; }
.included-features article { padding:31px 0; border-top:1px solid var(--line); }
.included-features .icon-tile { margin-bottom:20px; }
.included-features h3 { font-size:25px; line-height:1.35; }
.included-features p { font-size:16px; line-height:1.8; margin-top:14px; }
.included-features a { display:inline-flex; align-items:center; gap:9px; font-size:14px; color:var(--blue); margin-top:17px; font-weight:600; }
.included-features a svg { width:17px; height:17px; }
.included-extras { display:grid; grid-template-columns:1fr 1fr; gap:18px 40px; padding:30px; background:#f2f6fc; border-radius:12px; margin-top:24px; }
.included-extras .checkline { font-size:14px; }
.signup-steps { list-style:none; padding:0; margin:35px 0 0; max-width:465px; }
.signup-steps li { display:flex; gap:17px; padding:22px 0; border-top:1px solid #dce6f0; }
.signup-steps li>span { color:var(--blue); font-size:13px; font-weight:700; padding-top:4px; }
.signup-steps strong { font-size:18px; color:var(--navy); }
.signup-steps p { font-size:15px; line-height:1.75; margin:8px 0 0; }
.selected-plan-detail { font-size:13px; line-height:1.7; margin:9px 0 0; color:#526c84; }
.guide-art { height:95px; min-height:0; }
.article-hero-image { max-height:285px; object-fit:cover; }
@media(max-width:620px) {
  .included-features { grid-template-columns:1fr; gap:0; margin-top:25px; }
  .included-features article { padding:27px 0; }
  .included-features h3 { font-size:25px; }
  .included-features p { font-size:16px; }
  .included-extras { grid-template-columns:1fr; padding:22px; gap:17px; }
  .included-extras .checkline { font-size:14px; line-height:1.7; }
  .signup-steps { margin-top:26px; }
  .signup-steps li { padding:20px 0; gap:13px; }
  .signup-steps strong { font-size:18px; }
  .signup-steps p { font-size:15px; }
  .article-hero-image { max-height:170px; }
  .guide-art { height:68px; }
}

.property-summary { padding:52px 0; background:#f2f6fb; border-top:1px solid #e0e9f2; border-bottom:1px solid #e0e9f2; }
.property-summary>.wrap { display:flex; align-items:center; justify-content:space-between; gap:35px; }
.property-summary h2 { font-size:30px; letter-spacing:-.9px; line-height:1.3; }
.property-summary p { font-size:16px; margin-top:14px; max-width:640px; }
.property-summary .button { flex-shrink:0; }
@media(max-width:620px) {
  .property-summary { padding:42px 0; }
  .property-summary>.wrap { display:block; }
  .property-summary h2 { font-size:29px; }
  .property-summary .button { margin-top:22px; }
  .pricing-grid { gap:19px; }
  .price-card { display:grid; grid-template-columns:1fr 1fr; gap:10px 0; padding:25px 21px; }
  .price-card h3 { grid-column:1; grid-row:1; align-self:center; margin:0; font-size:23px; }
  .price-card .price-description { display:none; }
  .price-card .price { grid-column:2; grid-row:1; margin:0; font-size:31px; text-align:right; }
  .price-card .price>span { display:block; font-size:12px; margin-top:3px; }
  .price-card .listing-count { grid-column:1/-1; grid-row:2; margin:0 0 7px; padding:0; font-size:14px; border:0; }
  .price-card>.button { grid-column:1/-1; grid-row:3; margin:0; min-height:46px; font-size:13px; }
  .price-card>.small-note { grid-column:1/-1; grid-row:4; margin:2px 0 0; font-size:12px; text-align:center; }
  .price-card .price-badge { display:none; }
}

/* Keep the signup action ahead of supporting steps on a phone. */
@media(max-width:620px) {
  .signup-layout { display:flex; flex-direction:column; gap:0; }
  .signup-copy { display:contents; }
  .signup-form { order:5; margin-top:29px; width:100%; }
  .signup-steps { order:6; width:100%; margin-top:33px; }
}

/* ── Production bridge (Showing Bell, September 13, 2026) ────────────────────
   Everything above is the handoff stylesheet, untouched. The rules below let
   the few long-form fragments still written against the old sb-* classes
   (the open house sheet, legal text) sit inside the design's components, and
   give the article body the list, heading and table rhythm its markup uses. */
.sb-section{padding:48px 0}.sb-section--soft{background:var(--cloud)}.sb-wrap{max-width:1180px;margin:0 auto;padding:0 28px}
.sb-prose{max-width:720px;margin:0 auto;font-size:16px;line-height:1.85;color:var(--ink)}
.sb-prose h2,.article-body h2{font-family:'Manrope',sans-serif;font-size:28px;letter-spacing:-.8px;line-height:1.35;margin-top:37px;scroll-margin-top:25px}
.sb-prose h3,.article-body h3{font-family:'Manrope',sans-serif;font-size:21px;letter-spacing:-.4px;line-height:1.4;margin-top:28px;scroll-margin-top:25px}
.sb-prose p{margin:0 0 17px}.sb-prose ul,.sb-prose ol,.article-body ul,.article-body ol{padding-left:22px;margin:16px 0 0;font-size:16px;line-height:1.85}.sb-prose li,.article-body li{margin:6px 0}
.article-body p{font-size:16px;line-height:1.85;margin-top:17px}.article-body a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.article-body .comparison-table{margin:28px 0}.article-body .comparison-table td,.article-body .comparison-table th:not(:first-child){text-align:left}
.article-body .article-example p{margin-top:12px}.article-body .article-checklist{margin-top:20px}.article-checklist a.checkline{color:var(--ink);font-weight:550}.article-checklist a.checkline svg{color:var(--blue)}
.sb-eyebrow{display:inline-flex;color:var(--blue);font-size:12px;font-weight:750;letter-spacing:2.2px;text-transform:uppercase;margin-bottom:14px}
.sb-lede{font-size:18px;line-height:1.7;color:var(--muted)}
.sb-callout{padding:24px 28px;background:#f1f6ff;border:1px solid #dce7f8;border-radius:12px;margin:28px 0}.sb-callout p{margin:0}
.sb-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 20px;border-radius:10px;border:1px solid #d5e0ec;background:#fff;color:var(--navy);font-weight:600;font-size:14px}
.sb-btn--primary{background:linear-gradient(180deg,#397cea,#2165df 68%,#1c59ca);border-color:#2865cf;color:#fff}
.sb-hero__ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px}.sb-hero__fine{font-size:12px;color:#738396}
.legal-body{max-width:760px;margin:0 auto}.legal-body h2{font-size:22px;margin-top:34px}.legal-body p,.legal-body li{font-size:15px;line-height:1.8}
.security-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.security-groups .feature-list{margin:16px 0 0;gap:10px}
.journey-app-link .actions{margin-top:0}
.form-note a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.cf-turnstile{margin:0 0 4px}
.sb-legal h1,.sb-legal h2{font-family:'Manrope',sans-serif}
@media (max-width:620px){.security-groups{grid-template-columns:1fr}.article-checklist{grid-template-columns:1fr}}
/* Wide comparison tables scroll inside the article instead of widening it. */
.article-layout{grid-template-columns:230px minmax(0,1fr)}.article-body{min-width:0;max-width:none}.article-body .comparison-table{overflow-x:auto;-webkit-overflow-scrolling:touch}.article-body .comparison-table table{min-width:560px}
@media (max-width:860px){.article-layout{grid-template-columns:minmax(0,1fr)}}

/* Visitor flows: open house sign-in, showing feedback, gift claims. Small
   pieces the form card did not need until these pages moved onto it. */
.form-card .flow-actions{flex-direction:column;align-items:stretch;gap:10px;margin-top:18px}
.form-card .flow-actions .button{width:100%;min-height:48px;margin:0}
.form-card .form-success+.flow-box{margin-top:0}
.flow-box{margin-top:18px;padding:16px 18px;background:#f5f8fc;border:1px solid #dae4f0;border-radius:12px;font-size:13.5px;line-height:1.6;color:#415a73}
.flow-box strong{display:block;color:var(--navy);font-weight:650;margin-bottom:4px}
.flow-box p{margin:0;font-size:13.5px;line-height:1.6}
.flow-box .flow-link{display:block;margin-top:8px;font-size:13px;font-weight:600;color:var(--navy);word-break:break-all}
.flow-box .flow-more{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:13.5px;font-weight:600;color:var(--navy);text-decoration:none}
.flow-box .flow-more svg{width:14px;height:14px}
.flow-box .flow-q{display:block;font-size:12px;color:#738396;margin-bottom:5px}
.flow-quote{font-size:14.5px;line-height:1.6;color:var(--navy)}
.flow-rows{margin-top:16px;border-top:1px solid #eef3f8}
.flow-row{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid #eef3f8;font-size:13.5px}
.flow-row span{color:#738396}
.flow-row strong{color:var(--navy);text-align:right}
@media (max-width:860px){.signup-layout.form-first .form-card{order:-1;margin-bottom:34px}}
