
:root{
  --navy:#061d43; --navy2:#0a3267; --blue:#2878d0; --sky:#68aff3;
  --ink:#0b2450; --gray:#5f6d82; --line:#dbe4ee; --pale:#f5f9fd; --white:#fff;
  --shadow:0 14px 36px rgba(6,29,67,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.55}
img{max-width:100%} a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.container{width:min(1420px,calc(100% - 70px));margin:auto}

/* HEADER — exact shared proportions */
.site-header,header{height:122px;background:#fff;border-bottom:1px solid #e8eef5;position:relative;z-index:20}
.header-inner{height:100%;display:flex;align-items:center}
.brand{display:flex;align-items:center;gap:13px;flex:0 0 auto}
.brand>img{width:115px;height:86px;object-fit:contain}
.brand-copy strong{display:block;font-size:31px;line-height:.82;letter-spacing:-1.2px}
.brand-copy img{width:185px;height:40px;object-fit:contain;object-position:left center;margin-top:8px}
nav{display:flex;gap:33px;margin-left:auto;align-items:center;font-size:13px;font-weight:800}
nav a{padding:49px 0 21px;border-bottom:3px solid transparent;white-space:nowrap}
nav a.active,nav a:hover{color:var(--blue);border-color:var(--blue)}
.phone{margin-left:48px;display:flex;align-items:center;gap:12px;white-space:nowrap}
.phone-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:20px}
.phone strong{display:block;color:var(--blue);font-size:27px;line-height:1}
.phone small{display:block;text-align:center;font-weight:700;margin-top:4px}
.mobile-menu{display:none;margin-left:auto;border:0;background:transparent;color:var(--navy);font-size:30px;line-height:1;cursor:pointer}

/* SHARED HERO */
.page-hero,.home-hero{
  position:relative;color:#fff;overflow:hidden;
  background:
    linear-gradient(90deg,rgba(4,26,61,.90) 0%,rgba(8,46,90,.68) 48%,rgba(8,46,90,.22) 100%),
    url('assets/dallas-skyline.webp') center/cover no-repeat;
}
.page-hero{min-height:395px}
.page-hero:after,.home-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.06),transparent 65%)}
.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 510px;gap:70px;align-items:center;padding:54px 0}
.kicker,.eyebrow{font-family:"Comic Sans MS","Segoe Print",cursive;color:var(--sky)}
.kicker{font-size:25px;margin-bottom:8px}.eyebrow{font-size:22px}
.page-hero h1{font-size:52px;line-height:1.03;margin:0 0 18px;letter-spacing:-1.8px}
.page-hero p{font-size:18px;line-height:1.55;max-width:720px}
.hero-points{display:flex;gap:27px;flex-wrap:wrap;margin-top:25px;font-weight:700;font-size:14px}
.hero-points span:before{content:"✓";color:#72b7ff;margin-right:8px}
.hero-side-card,.search-card{background:rgba(255,255,255,.97);color:var(--ink);border-radius:10px;padding:29px 30px;box-shadow:var(--shadow)}
.hero-side-card .kicker,.search-card h2{font-family:"Comic Sans MS","Segoe Print",cursive;color:var(--blue)}
.hero-side-card .kicker{font-size:20px}.hero-side-card h2{font-size:30px;line-height:1.08;margin:8px 0 10px}
.hero-side-card p,.search-card p{color:var(--gray);font-size:14px}
.search-card h2{font-size:26px;margin:0 0 7px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.full{grid-column:1/-1}
.search-card input,.search-card select,.search-card textarea,.contact-form input,.contact-form select,.contact-form textarea{
  width:100%;border:1px solid #d6dee8;border-radius:5px;padding:11px;background:#fff;color:#243653
}
.search-card textarea{height:64px;resize:none}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:5px;background:var(--blue);color:#fff;font-size:13px;font-weight:800;border:0;cursor:pointer}
.btn:hover{filter:brightness(.96)}.btn-outline{background:transparent;border:2px solid #fff}
.search-card .btn{width:100%;margin-top:12px}

/* HOME */
.home-hero{min-height:515px}
.home-hero .hero-inner{grid-template-columns:1.12fr 430px;padding:48px 0}
.home-hero h1{font-size:61px;line-height:1.02;letter-spacing:-2px;margin:0 0 18px}
.home-hero .home-sub{font-size:22px;font-weight:800;line-height:1.3;margin:0 0 18px}
.home-hero p{font-size:17px;max-width:600px}
.home-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}
.home-stats{background:var(--navy);color:white}
.home-stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.home-stat{min-height:132px;padding:25px 32px;display:flex;align-items:center;gap:18px;border-right:1px solid rgba(255,255,255,.2)}
.home-stat:last-child{border-right:0}.home-stat .stat-symbol{font-size:37px;color:#4d9bea}.home-stat strong{display:block;font-size:29px;color:#4d9bea}.home-stat span{display:block;font-size:12px;line-height:1.25}
.home-why{padding:58px 0}.home-why-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:48px;align-items:center}
.home-photo,.photo,.about-photo,.contact-photo,.map-photo{background-size:cover;background-position:center}
.home-photo{height:315px;border-radius:8px;background-image:url('assets/apartment-interior-wide.webp')}
.home-why h2{font-size:34px;line-height:1.08;margin:7px 0 18px}
.home-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:25px}
.home-benefit{display:grid;grid-template-columns:52px 1fr;gap:13px}.benefit-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#e8f3ff;color:var(--blue);font-size:22px}
.home-benefit h3{font-size:14px;margin:3px 0 6px}.home-benefit p{font-size:12px;color:var(--gray);margin:0}
.micro{font-size:10px!important;text-align:center!important;color:#8995a5!important}

/* SHARED SECTIONS */
.intro,.about-story,.contact-main,.process-visual,.about-values,.contact-map-strip{padding:68px 0}
.intro-grid,.about-story-grid,.contact-map-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:60px;align-items:center}
.photo{height:350px;border-radius:9px;background-image:url('assets/apartment-interior-wide.webp')}
.intro h2,.about-story h2,.about-values h2,.brokerage-strip h2,.contact-main h2,.contact-options h2,.contact-map-strip h2,.process-visual h2,.why-strip h2{
  font-size:36px;line-height:1.1;margin:6px 0 14px
}
.intro p,.about-story p,.about-values p,.brokerage-strip p,.contact-intro,.contact-map-strip p,.process-visual .lead,.why-strip p{color:var(--gray);line-height:1.65}
.feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.feature{border-left:3px solid var(--blue);padding-left:15px}.feature strong{display:block;font-size:15px}.feature span{font-size:12px;color:var(--gray)}
.text-link{display:inline-block;color:var(--blue);font-weight:800;font-size:13px;margin-top:10px}

/* FIND */
.process{background:var(--pale);padding:58px 0}.process-head{text-align:center}.process-head p{color:var(--gray)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:35px}
.step{background:#fff;border-radius:8px;padding:25px;border:1px solid var(--line);box-shadow:0 5px 18px rgba(6,29,67,.04)}
.num{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:#e7f2ff;color:var(--blue);font-size:20px;font-weight:800}
.step h3{font-size:17px;margin:15px 0 7px}.step p{font-size:13px;line-height:1.5;color:var(--gray)}

/* NEIGHBORHOODS */
.neighborhood-intro{padding:64px 0 28px}.neighborhood-intro h2{font-size:36px;line-height:1.1;margin:6px 0 12px}.neighborhood-intro p{max-width:900px;color:var(--gray);line-height:1.65}
.hood-grid-wrap{padding:20px 0 60px}.hood-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.hood-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(6,29,67,.05)}
.hood-image{height:205px;background-size:cover;background-position:center}.hood-copy{padding:22px}
.hood-copy h3{font-size:21px;margin:0 0 8px}.hood-copy p{font-size:13px;line-height:1.55;color:var(--gray);min-height:62px}.hood-copy a{display:inline-block;margin-top:8px;font-size:12px;font-weight:800;color:var(--blue)}
.hood-img-1{background-image:url('assets/dallas-skyline.webp')}
.hood-img-2{background-image:url('assets/apartment-interior-wide.webp')}
.hood-img-3{background-image:url('assets/apartment-living-room.webp')}
.hood-img-4{background-image:url('assets/apartment-kitchen.webp')}
.hood-img-5{background-image:url('assets/dallas-urban-3.webp')}
.hood-img-6{background-image:url('assets/apartment-kitchen.webp')}
.hood-img-7{background-image:url('assets/dallas-urban-1.webp')}
.hood-img-8{background-image:url('assets/dallas-urban-2.webp')}
.hood-img-9{background-image:url('assets/apartment-windows.webp')}
.area-strip,.brokerage-strip,.contact-options,.why-strip{background:#f4f8fc;padding:58px 0}
.area-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:45px}.area-strip h2{font-size:31px;margin:5px 0 8px}.area-strip p{max-width:850px;color:var(--gray)}

/* HOW IT WORKS */
.process-timeline{margin-top:38px;display:grid;gap:28px}
.process-step{display:grid;grid-template-columns:1fr 1.08fr;gap:42px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden;box-shadow:0 8px 26px rgba(6,29,67,.05)}
.process-step.reverse .step-photo{order:2}.process-step.reverse .step-copy{order:1}
.step-photo{min-height:270px;background-size:cover;background-position:center}.step-copy{padding:34px}
.step-number{font-size:46px;font-weight:800;color:#cde2f8}.step-copy h3{font-size:27px;margin:0 0 10px}.step-copy p{color:var(--gray);font-size:14px;line-height:1.65}
.step-photo-1{background-image:url('assets/apartment-interior-wide.webp')}
.step-photo-2{background-image:url('assets/dallas-skyline.webp')}
.step-photo-3{background-image:url('assets/apartment-living-room.webp')}
.step-photo-4{background-image:url('assets/apartment-kitchen.webp')}
.why-strip-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center}
.why-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.why-mini{background:#fff;border-radius:8px;border:1px solid var(--line);padding:20px}.why-mini strong{display:block;margin-bottom:6px}.why-mini span{font-size:12px;color:var(--gray);line-height:1.5}

/* ABOUT */
.about-photo{height:430px;border-radius:9px}.about-photo-main{background-image:url('assets/apartment-interior-wide.webp')}
.about-stats{background:var(--navy);color:#fff}.about-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);min-height:150px}
.about-stats-grid>div{display:flex;flex-direction:column;justify-content:center;padding:25px 35px;border-right:1px solid rgba(255,255,255,.15)}
.about-stats-grid>div:last-child{border-right:0}.about-stats strong{font-size:31px;color:#5daaff}.about-stats span{font-size:11px;line-height:1.45}
.about-value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:30px}.about-value-grid article{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff}.value-photo{height:210px;background-size:cover;background-position:center}.value-photo-1{background-image:url('assets/dallas-skyline.webp')}.value-photo-2{background-image:url('assets/apartment-kitchen.webp')}.value-photo-3{background-image:url('assets/apartment-living-room.webp')}.about-value-grid h3,.about-value-grid p{margin-left:20px;margin-right:20px}.about-value-grid h3{font-size:19px;margin-top:18px}.about-value-grid p{font-size:13px;margin-bottom:22px}
.brokerage-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.brokerage-links a{display:block;background:#fff;border:1px solid var(--line);border-radius:7px;padding:18px;margin:10px 0;color:var(--blue);font-size:13px;font-weight:800}

/* CONTACT */
.contact-call-card h2{font-size:39px;color:var(--blue);margin:7px 0 10px}
.contact-main-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:start}
.contact-form{margin-top:24px;border:1px solid var(--line);border-radius:10px;padding:27px;background:#fff;box-shadow:0 7px 22px rgba(6,29,67,.05)}
.contact-form textarea{height:100px;resize:none}.contact-form .btn{width:100%;margin-top:12px}.form-note{text-align:center;font-size:10px;color:#8793a2;margin-top:8px}
.contact-photo{height:330px;border-radius:9px;background-image:url('assets/apartment-interior-wide.webp')}
.contact-info-card{margin-top:-40px;margin-left:35px;margin-right:35px;position:relative;background:#fff;border:1px solid var(--line);border-radius:9px;padding:25px;box-shadow:var(--shadow)}
.contact-info-card h3{font-size:22px;line-height:1.2}.contact-line{display:grid;grid-template-columns:100px 1fr;padding:11px 0;border-top:1px solid #edf1f5;font-size:13px}.contact-line a{color:var(--blue);font-weight:800}
.contact-option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px}.contact-option-grid article{background:#fff;border:1px solid var(--line);border-radius:9px;padding:26px}.contact-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#e7f2ff;color:var(--blue);font-size:22px}.contact-option-grid h3{font-size:19px;margin:15px 0 8px}.contact-option-grid p{font-size:13px;color:var(--gray);line-height:1.55}.contact-option-grid a{font-size:12px;font-weight:800;color:var(--blue)}
.map-photo{height:340px;border-radius:9px;background-image:linear-gradient(rgba(6,29,67,.10),rgba(6,29,67,.10)),url('assets/dallas-skyline.webp')}

/* CTA / FOOTER */
.cta-wrap{padding:55px 0}.cta{background:linear-gradient(100deg,var(--navy),#174d89);border-radius:9px;padding:38px 48px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:34px;line-height:1.1;margin:0 0 7px}.cta p{margin:0;color:#dce9f7}.cta .btn{background:#fff;color:var(--blue)}
footer{background:var(--navy);color:#fff;padding:24px 0}.footer-inner{display:grid;grid-template-columns:1.05fr 1.55fr auto;gap:28px;align-items:center;font-size:11px}.footer-links{display:flex;gap:14px;flex-wrap:wrap}.footer-links a{text-decoration:underline;color:#dbe7f6}

/* MOBILE */
@media(max-width:1180px){
  nav{gap:19px;font-size:11px}.phone{margin-left:25px}.phone strong{font-size:22px}
}
@media(max-width:980px){
  .container{width:min(100% - 38px,1420px)}
  header,.site-header{height:auto;min-height:90px}.header-inner{min-height:90px;flex-wrap:wrap;padding:8px 0}
  .brand>img{width:76px;height:64px}.brand-copy strong{font-size:22px}.brand-copy img{width:135px;height:29px;margin-top:4px}
  .phone{margin-left:auto;margin-right:8px}.phone-icon{display:none}.phone strong{font-size:19px}.phone small{font-size:10px}
  .mobile-menu{display:block}
  nav{display:none;order:4;width:100%;margin:8px 0 0;padding:12px 0 17px;border-top:1px solid #edf1f5;gap:0;flex-direction:column;align-items:stretch}
  nav.open{display:flex}nav a{padding:10px 4px;border-bottom:0}
  .hero-inner,.intro-grid,.about-story-grid,.contact-map-grid,.contact-main-grid,.why-strip-grid,.brokerage-grid{grid-template-columns:1fr}
  .hero-inner{gap:30px}.home-hero .hero-inner{grid-template-columns:1fr}.page-hero h1{font-size:44px}.home-hero h1{font-size:49px}
  .home-stats-grid,.about-stats-grid{grid-template-columns:1fr 1fr}.home-benefits{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr}.hood-grid{grid-template-columns:1fr 1fr}.about-value-grid,.contact-option-grid{grid-template-columns:1fr}
  .process-step,.process-step.reverse{grid-template-columns:1fr}.process-step.reverse .step-photo,.process-step.reverse .step-copy{order:initial}
  .area-strip-inner{display:block}.area-strip .btn{margin-top:20px}
  .footer-inner{grid-template-columns:1fr}
}
@media(max-width:620px){
  .container{width:calc(100% - 28px)}.brand-copy{display:none}.phone small{display:none}.phone strong{font-size:17px}.phone{margin-right:0}
  .page-hero h1{font-size:38px}.home-hero h1{font-size:42px}.kicker{font-size:20px}.page-hero p{font-size:16px}
  .grid,.feature-row,.steps,.hood-grid,.home-benefits,.why-mini-grid{grid-template-columns:1fr}.full{grid-column:auto}
  .home-stats-grid,.about-stats-grid{grid-template-columns:1fr 1fr}.home-stat{min-height:105px;padding:15px}.home-stat strong{font-size:23px}.home-stat .stat-symbol{display:none}
  .cta{display:block;padding:30px 25px}.cta .btn{margin-top:20px}
  .hero-side-card,.search-card{padding:23px 20px}.contact-info-card{margin-left:15px;margin-right:15px}
}

button:disabled{opacity:.7;cursor:wait}




/* Final mobile launch QA refinements */
@media (max-width: 620px) {
  /* Keep the Why Apartment WORKS section fully stacked on phones */
  .home-why-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    align-items: start !important;
  }

  .home-why-copy,
  .home-why-grid > div {
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
  }

  .home-why-copy h2,
  .home-why-copy p {
    max-width: none !important;
    width: 100% !important;
  }

  .home-photo {
    width: 100% !important;
    max-width: none !important;
    height: 230px !important;
    min-height: 230px !important;
    object-fit: cover !important;
    border-radius: 10px !important;
    display: block !important;
  }

  .home-benefits {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    width: 100% !important;
  }

  .home-benefit {
    display: grid !important;
    grid-template-columns: 36px 1fr !important;
    gap: 12px !important;
    align-items: start !important;
    width: 100% !important;
  }

  .home-benefit h3,
  .home-benefit p {
    max-width: none !important;
  }

  /* Keep the mobile stats clean and readable */
  .stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .stat {
    min-width: 0 !important;
    padding: 22px 14px !important;
  }

  .stat strong {
    font-size: 26px !important;
    line-height: 1 !important;
  }

  .stat small {
    font-size: 10px !important;
    line-height: 1.25 !important;
  }

  footer,
  .footer {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
}


/* Final mobile header branding */
@media (max-width: 620px) {
  .site-header,
  header {
    min-height: 68px !important;
  }

  .header-inner {
    min-height: 68px !important;
    flex-wrap: nowrap !important;
    padding: 6px 0 !important;
  }

  .brand {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
  }

  .brand > img {
    width: 44px !important;
    height: 44px !important;
    object-fit: contain !important;
    flex: 0 0 44px !important;
  }

  .brand-copy {
    display: block !important;
    min-width: 0 !important;
  }

  .brand-copy strong {
    display: block !important;
    font-size: 15px !important;
    line-height: .85 !important;
    letter-spacing: -.4px !important;
    color: #082c66 !important;
    white-space: nowrap !important;
  }

  .brand-copy img {
    display: block !important;
    width: 86px !important;
    height: 15px !important;
    margin-top: 3px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .phone {
    margin-left: auto !important;
    margin-right: 8px !important;
    flex: 0 0 auto !important;
  }

  .phone strong {
    font-size: 13px !important;
  }

  .phone small,
  .phone-icon {
    display: none !important;
  }

  .mobile-menu {
    flex: 0 0 auto !important;
  }
}
