:root{
  --navy:#062b57;
  --navy-2:#0a3b73;
  --blue:#2388d8;
  --blue-2:#5aa7e4;
  --ice:#edf6fd;
  --text:#0d2c52;
  --muted:#64758a;
  --line:#dbe6ef;
  --white:#fff;
  --shadow:0 18px 45px rgba(6,43,87,.10);
  --radius:22px;
  --radius-sm:14px;
  --shell:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  background:#fff;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height:1.55;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
.shell{width:min(calc(100% - 40px),var(--shell));margin-inline:auto}
.site-header{
  position:sticky;top:0;z-index:1000;
  background:rgba(255,255,255,.96);
  border-bottom:1px solid rgba(13,44,82,.08);
  backdrop-filter:blur(14px);
}
.site-header__inner{
  min-height:98px;display:flex;align-items:center;gap:28px;
}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{width:145px;max-height:88px;object-fit:contain}
.main-nav{display:flex;align-items:center;gap:26px;margin-left:auto}
.main-nav a{
  position:relative;padding:38px 0 34px;font-size:.95rem;font-weight:750;
}
.main-nav a::after{
  content:"";position:absolute;left:0;right:0;bottom:25px;height:2px;
  background:var(--blue);transform:scaleX(0);transition:.2s;
}
.main-nav a:hover::after,.main-nav a.is-active::after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:18px;margin-left:18px}
.phone-link{font-weight:800;color:var(--navy)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:48px;padding:0 22px;border-radius:10px;border:1px solid transparent;
  font-weight:850;transition:.18s ease;cursor:pointer;
}
.btn:hover{transform:translateY(-1px)}
.btn-primary{color:#fff;background:linear-gradient(135deg,var(--navy),var(--blue))}
.btn-outline{color:var(--navy);background:#fff;border-color:#aabfd1}
.btn-small{min-height:44px;padding-inline:18px}
.menu-toggle{display:none;margin-left:auto;background:none;border:0;padding:10px}
.menu-toggle span{display:block;width:25px;height:2px;background:var(--navy);margin:5px 0}
.eyebrow{
  color:var(--blue);font-size:.76rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;
}
.display{
  margin:.5rem 0 1rem;font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2.7rem,5vw,5.2rem);line-height:.94;letter-spacing:-.04em;color:var(--navy);
}
.display em{color:var(--blue);font-weight:500}
.section-title{
  margin:.35rem 0 .7rem;font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2rem,3.2vw,3.3rem);line-height:1.03;color:var(--navy);
}
.section-title em{color:var(--blue)}
.lead{max-width:630px;font-size:1.08rem;color:#2c4663}
.muted{color:var(--muted)}
.hero{
  min-height:560px;display:grid;align-items:center;
  background:
    linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.92) 34%,rgba(255,255,255,.20) 64%,rgba(255,255,255,0) 100%),
    radial-gradient(circle at 76% 45%,#d7eaf8 0%,#8fc0e1 24%,#527ca0 52%,#244a6a 75%,#0e3559 100%);
}
.hero__content{padding:70px 0;max-width:620px}
.hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-home-watch{
  background:
    linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.92) 38%,rgba(255,255,255,.14) 66%,rgba(255,255,255,0) 100%),
    radial-gradient(circle at 80% 45%,#d6e9f6 0%,#9cc5df 26%,#6488a4 54%,#274e6d 78%,#10334f 100%);
}
.hero-note{margin-top:22px;padding-left:16px;border-left:3px solid var(--blue);color:#425e7c}
.trust-bar{background:linear-gradient(135deg,#052850,#073768);color:#fff}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-item{padding:28px 26px;border-right:1px solid rgba(255,255,255,.15)}
.trust-item:last-child{border-right:0}
.trust-item strong{display:block;margin-bottom:5px}
.trust-item span{color:#c7d7e8;font-size:.9rem}
.icon-circle{
  width:48px;height:48px;display:grid;place-items:center;margin-bottom:12px;
  border-radius:50%;background:#e6f2fd;color:var(--blue);font-size:1.3rem;font-weight:900;
}
.section{padding:80px 0}
.section-soft{background:linear-gradient(180deg,#f8fbfe,#eef6fc)}
.two-col{display:grid;grid-template-columns:1.02fr .98fr;gap:64px;align-items:center}
.panel{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.image-placeholder{
  min-height:430px;border-radius:var(--radius);
  background:
    linear-gradient(145deg,rgba(7,52,96,.06),rgba(35,136,216,.14)),
    radial-gradient(circle at 70% 35%,#fff 0%,#e8f3fb 28%,#b9d7eb 64%,#799fbc 100%);
  border:1px solid #d6e4ee;
  position:relative;overflow:hidden;
}
.image-placeholder::before{
  content:"HOME PHOTO";position:absolute;inset:0;display:grid;place-items:center;
  color:rgba(6,43,87,.35);font-weight:900;letter-spacing:.14em;
}
.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 28px;margin-top:24px}
.check{display:flex;gap:10px;align-items:flex-start;color:#28445f}
.check::before{content:"✓";display:grid;place-items:center;flex:0 0 21px;height:21px;border-radius:50%;background:#e7f4ff;color:#087bd0;font-weight:900}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.feature-card{padding:26px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}
.feature-card h3{margin:5px 0 8px;color:var(--navy)}
.feature-card p{margin:0;color:var(--muted);font-size:.94rem}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:36px}
.step{text-align:center;padding:24px}
.step-number{width:32px;height:32px;display:grid;place-items:center;margin:0 auto 16px;border-radius:50%;background:var(--navy);color:#fff;font-weight:900}
.step h3{margin:0 0 8px}
.step p{margin:0;color:var(--muted);font-size:.92rem}
.hwit-band{padding:34px;background:linear-gradient(135deg,#f0f7fd,#e5f1fa);border:1px solid #cfe0ed;border-radius:var(--radius)}
.hwit-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:42px;align-items:center}
.hwit-devices{display:grid;grid-template-columns:1.45fr .75fr;gap:18px;align-items:end}
.device{
  min-height:340px;padding:18px;background:#fff;border:10px solid #101820;border-radius:28px;
  box-shadow:0 20px 40px rgba(6,43,87,.16);
}
.device.phone{min-height:290px;border-width:8px}
.device-screen{height:100%;border-radius:14px;background:linear-gradient(180deg,#f7fbfe,#e8f2f9);padding:18px}
.device-screen strong{display:block;color:var(--navy);margin-bottom:12px}
.fake-row{height:24px;border-radius:6px;background:#fff;border:1px solid #dce7ef;margin:8px 0}
.cta-band{background:linear-gradient(135deg,#062b57,#0a4c88);color:#fff;padding:42px 0}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.cta-inner h2{margin:0;font-family:Georgia,serif;font-size:2rem}
.cta-inner p{margin:.3rem 0 0;color:#d6e5f2}
.site-footer{padding:55px 0 20px;background:#052a53;color:#fff}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:45px}
.footer-brand img{width:175px;background:#fff;border-radius:10px;padding:8px}
.site-footer h3{margin-top:0;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}
.site-footer a,.site-footer p{display:block;margin:.5rem 0;color:#d1deea;font-size:.9rem}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:36px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);font-size:.78rem;color:#a9bed0}
.division-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:-74px;position:relative;z-index:2}
.division-card{padding:34px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.division-card h2{font-family:Georgia,serif;color:var(--navy)}
.division-card p{color:var(--muted)}
.division-card.is-featured{transform:translateY(-16px);border-color:#83bde8}
.contact-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px}
.contact-card{padding:30px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-field{display:flex;flex-direction:column;gap:7px}
.form-field.full{grid-column:1/-1}
.form-field label{font-weight:800;font-size:.88rem}
.form-field input,.form-field textarea,.form-field select{width:100%;padding:13px 14px;border:1px solid #cbd9e4;border-radius:9px;background:#fff}
.form-field textarea{min-height:150px;resize:vertical}
.page-hero{padding:70px 0;background:linear-gradient(135deg,#f8fbfe,#e6f2fb)}
.page-hero .lead{margin-bottom:0}
.reveal{opacity:0;transform:translateY(18px);transition:.5s ease}
.reveal.is-visible{opacity:1;transform:none}
.badge{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;background:#e9f4fc;color:#0a65aa;font-size:.78rem;font-weight:800}
@media (max-width: 1000px){
  .main-nav,.header-actions{display:none}
  .menu-toggle{display:block}
  .main-nav.is-open{position:absolute;display:flex;flex-direction:column;align-items:stretch;gap:0;top:98px;left:0;right:0;background:#fff;border-top:1px solid var(--line);box-shadow:var(--shadow)}
  .main-nav.is-open a{padding:16px 24px}
  .main-nav.is-open a::after{display:none}
  .two-col,.hwit-grid,.contact-wrap{grid-template-columns:1fr}
  .feature-grid{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr}
  .trust-grid{grid-template-columns:1fr 1fr}
  .division-grid{grid-template-columns:1fr;margin-top:30px}
  .division-card.is-featured{transform:none}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 680px){
  .shell{width:min(calc(100% - 26px),var(--shell))}
  .brand img{width:118px}
  .site-header__inner{min-height:84px}
  .main-nav.is-open{top:84px}
  .hero{min-height:auto}
  .hero__content{padding:55px 0}
  .trust-grid,.feature-grid,.steps,.footer-grid,.form-grid,.check-grid{grid-template-columns:1fr}
  .trust-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.13)}
  .cta-inner,.footer-bottom{align-items:flex-start;flex-direction:column}
  .hwit-devices{grid-template-columns:1fr}
  .device.phone{min-height:260px}
}

/* =========================================================
   VERSION 2 — VISUAL / PHOTOGRAPHY UPGRADE
   Shared framework preserved. These classes add the richer
   photographic treatment from the approved renderings.
   ========================================================= */

.photo-hero{
  position:relative;
  min-height:560px;
  overflow:hidden;
  background:#f5f9fc;
}
.photo-hero__media{
  position:absolute;
  inset:0 0 0 42%;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.photo-hero__media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.58) 22%,rgba(255,255,255,.04) 58%,rgba(255,255,255,0) 100%);
}
.photo-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 32%,rgba(255,255,255,.82) 48%,rgba(255,255,255,0) 69%);
}
.photo-hero .shell{position:relative;z-index:2}
.photo-hero__content{
  max-width:610px;
  padding:78px 0 86px;
}
.photo-hero--parent .photo-hero__media{
  background-image:url("images/parent-hero-house.jpg");
}
.photo-hero--home-watch .photo-hero__media{
  background-image:url("images/home-watch-hero.jpg");
}
.photo-hero--property .photo-hero__media{
  background-image:url("images/property-exterior.jpg");
}
.photo-hero__kicker{
  display:inline-flex;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(35,136,216,.10);
  color:#0d6cae;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.photo-card{
  position:relative;
  min-height:420px;
  overflow:hidden;
  border-radius:var(--radius);
  border:1px solid #d8e4ed;
  box-shadow:var(--shadow);
  background:#dfeaf2;
}
.photo-card img{
  width:100%;
  height:100%;
  min-height:420px;
  object-fit:cover;
}
.photo-card__overlay{
  position:absolute;
  left:24px;
  right:24px;
  bottom:24px;
  padding:18px 20px;
  border:1px solid rgba(255,255,255,.65);
  border-radius:14px;
  background:rgba(255,255,255,.93);
  box-shadow:0 15px 34px rgba(5,36,70,.16);
  backdrop-filter:blur(10px);
}
.photo-card__overlay strong{
  display:block;
  color:var(--navy);
  font-size:1rem;
}
.photo-card__overlay span{
  display:block;
  margin-top:4px;
  color:#5e7285;
  font-size:.88rem;
}
.visual-split{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:58px;
  align-items:center;
}
.visual-split--reverse{
  grid-template-columns:1.08fr .92fr;
}
.media-ribbon{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:18px;
  padding:20px;
  border:1px solid #d4e3ee;
  border-radius:20px;
  background:linear-gradient(135deg,#edf6fc,#f9fcfe);
  box-shadow:var(--shadow);
}
.media-ribbon__photo{
  min-height:310px;
  overflow:hidden;
  border-radius:15px;
}
.media-ribbon__photo img{
  width:100%;
  height:100%;
  min-height:310px;
  object-fit:cover;
}
.media-ribbon__stat{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:28px;
  color:white;
  border-radius:15px;
  background:linear-gradient(145deg,#062b57,#0a4b86);
}
.media-ribbon__stat strong{
  font-family:Georgia,serif;
  font-size:2rem;
}
.media-ribbon__stat span{
  margin-top:10px;
  color:#d0e0ee;
}
.tech-visual{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:42px;
  align-items:center;
}
.tech-photo{
  position:relative;
  min-height:410px;
  overflow:hidden;
  border-radius:22px;
  background:#dfeaf1;
  border:1px solid #cbdde9;
  box-shadow:var(--shadow);
}
.tech-photo img{
  width:100%;
  height:100%;
  min-height:410px;
  object-fit:cover;
  object-position:center;
}
.tech-photo::after{
  content:"Illustrative HWIT workflow preview";
  position:absolute;
  right:14px;
  bottom:14px;
  padding:7px 10px;
  border-radius:999px;
  color:#39546d;
  background:rgba(255,255,255,.91);
  font-size:.68rem;
  font-weight:800;
}
.image-band{
  min-height:320px;
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
  color:white;
  background:
    linear-gradient(90deg,rgba(3,32,63,.92),rgba(5,54,98,.63)),
    url("images/parent-feature-house.jpg") center/cover no-repeat;
}
.image-band .shell{
  position:relative;
  z-index:2;
}
.image-band h2{
  margin:0;
  max-width:680px;
  font-family:Georgia,serif;
  font-size:clamp(2rem,4vw,3.3rem);
}
.image-band p{
  max-width:620px;
  color:#d9e8f4;
}
.photo-service-card{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:#fff;
  box-shadow:var(--shadow);
}
.photo-service-card__img{
  height:210px;
  overflow:hidden;
}
.photo-service-card__img img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.photo-service-card__body{
  padding:26px;
}
.visual-note{
  margin-top:24px;
  padding:18px 20px;
  border-left:4px solid var(--blue);
  border-radius:0 12px 12px 0;
  color:#36536f;
  background:#f3f8fc;
}
@media (max-width:1000px){
  .photo-hero__media{inset:0}
  .photo-hero::before{background:rgba(255,255,255,.80)}
  .photo-hero__media::after{background:rgba(255,255,255,.20)}
  .visual-split,.visual-split--reverse,.tech-visual{grid-template-columns:1fr}
  .media-ribbon{grid-template-columns:1fr}
}
@media (max-width:680px){
  .photo-hero{min-height:auto}
  .photo-hero__content{padding:58px 0}
  .photo-card,.photo-card img{min-height:320px}
  .tech-photo,.tech-photo img{min-height:300px}
}



/* =========================================================
   VERSION 3 — PREMIUM VISUAL + HWIT-ALIGNED CONTENT
   ========================================================= */
.brand img{width:205px;max-height:104px}
.site-header__inner{min-height:112px}
.visual-accent{
  position:relative;
}
.visual-accent::after{
  content:"";
  position:absolute;
  width:110px;height:110px;
  right:-24px;top:-24px;
  border:18px solid rgba(35,136,216,.08);
  border-radius:50%;
  pointer-events:none;
}
.section-rule{
  width:72px;height:4px;border-radius:999px;
  background:linear-gradient(90deg,var(--navy),var(--blue));
  margin:16px 0 22px;
}
.service-visual-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.service-visual{
  position:relative;
  min-height:330px;
  overflow:hidden;
  border-radius:20px;
  box-shadow:var(--shadow);
  border:1px solid #d7e4ee;
  background:#dbe8f1;
}
.service-visual img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;
}
.service-visual::after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 35%,rgba(3,30,58,.86) 100%);
}
.service-visual__content{
  position:absolute;z-index:2;left:24px;right:24px;bottom:22px;color:#fff;
}
.service-visual__content h3{
  margin:0 0 5px;font-family:Georgia,serif;font-size:1.35rem;
}
.service-visual__content p{margin:0;color:#dce9f3;font-size:.9rem}
.process-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  overflow:hidden;
  border:1px solid #d7e4ed;
  border-radius:20px;
  background:#fff;
  box-shadow:var(--shadow);
}
.process-strip__item{
  position:relative;
  padding:30px 24px;
  border-right:1px solid #e1e9ef;
}
.process-strip__item:last-child{border-right:0}
.process-strip__item span{
  display:block;
  margin-bottom:10px;
  color:var(--blue);
  font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;
}
.process-strip__item strong{display:block;color:var(--navy);font-size:1.05rem}
.process-strip__item p{margin:.5rem 0 0;color:var(--muted);font-size:.88rem}
.report-preview{
  padding:24px;
  border-radius:20px;
  background:#f7fbfe;
  border:1px solid #d3e3ee;
  box-shadow:var(--shadow);
}
.report-preview__header{
  display:flex;justify-content:space-between;gap:20px;align-items:center;
  margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #dce7ef;
}
.report-preview__logo{
  width:88px;
}
.report-preview__status{
  padding:6px 10px;border-radius:999px;background:#e9f7ef;color:#207346;font-size:.72rem;font-weight:900;
}
.report-preview__photo{
  height:190px;overflow:hidden;border-radius:12px;margin:14px 0;
}
.report-preview__photo img{width:100%;height:100%;object-fit:cover}
.report-line{height:11px;border-radius:999px;background:#dce8f1;margin:10px 0}
.report-line.short{width:68%}
.report-check{
  display:flex;align-items:center;gap:10px;margin:12px 0;color:#35536f;font-size:.88rem;
}
.report-check::before{
  content:"✓";display:grid;place-items:center;width:20px;height:20px;border-radius:50%;
  background:#e7f4ff;color:#087bd0;font-weight:900;
}
.hwit-capability-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px;
}
.hwit-capability{
  padding:20px;border-radius:14px;background:#fff;border:1px solid #d7e5ef;
}
.hwit-capability strong{display:block;color:var(--navy);margin-bottom:5px}
.hwit-capability span{color:var(--muted);font-size:.85rem}
.page-subnav{
  background:#f6fafe;border-bottom:1px solid #dce8f1;
}
.page-subnav .shell{
  display:flex;gap:24px;overflow:auto;padding-top:12px;padding-bottom:12px;
}
.page-subnav a{
  white-space:nowrap;color:#4a657e;font-size:.85rem;font-weight:800;
}
.page-subnav a:hover{color:var(--blue)}
@media(max-width:1000px){
  .brand img{width:175px}
  .site-header__inner{min-height:102px}
  .service-visual-grid,.hwit-capability-grid{grid-template-columns:1fr 1fr}
  .process-strip{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .brand img{width:150px}
  .site-header__inner{min-height:92px}
  .service-visual-grid,.hwit-capability-grid,.process-strip{grid-template-columns:1fr}
  .process-strip__item{border-right:0;border-bottom:1px solid #e1e9ef}
}


/* =========================================================
   VERSION 4 — APPROVED HOME WATCH STYLE
   ========================================================= */

.site-header{
  position:sticky;
  top:0;
  z-index:1000;
  background:#fff;
  border-bottom:1px solid #dce5ec;
}
.site-header__inner{
  min-height:168px;
  gap:34px;
}
.brand{
  width:265px;
  height:150px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
}
.brand img{
  width:250px;
  max-height:145px;
  object-fit:contain;
}
.main-nav{
  gap:40px;
  margin-left:auto;
}
.main-nav a{
  padding:62px 0 54px;
  font-size:1.02rem;
  font-weight:800;
}
.main-nav a::after{
  bottom:42px;
}
.header-actions{
  gap:24px;
}
.phone-link{
  font-size:1rem;
}
.page-subnav{
  background:#f8fbfe;
  border-bottom:1px solid #d5e1ea;
}
.page-subnav .shell{
  gap:40px;
  padding-top:18px;
  padding-bottom:18px;
}
.page-subnav a{
  font-size:.95rem;
  font-weight:800;
}

.v4-hero{
  position:relative;
  min-height:560px;
  overflow:hidden;
  color:#fff;
  background:#082b50;
}
.v4-hero__bg{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(5,33,63,.92) 0%, rgba(5,33,63,.78) 30%, rgba(5,33,63,.25) 60%, rgba(5,33,63,.02) 100%),
    url("images/home-watch-hero-v4.jpg") center/cover no-repeat;
}
.v4-hero__content{
  position:relative;
  z-index:2;
  max-width:690px;
  padding:72px 0 78px;
}
.v4-hero .eyebrow{
  color:#2d92e0;
  font-size:.82rem;
}
.v4-hero h1{
  margin:.45rem 0 .8rem;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3.2rem,5.2vw,5.4rem);
  line-height:.98;
  color:#fff;
}
.v4-hero h1 em{
  color:#2d8fe0;
  font-weight:500;
}
.v4-hero p{
  max-width:650px;
  color:#f2f6f9;
  font-size:1.15rem;
}
.v4-hero .btn-primary{
  background:#1d78d2;
}
.v4-hero .btn-outline{
  color:#fff;
  border-color:rgba(255,255,255,.8);
  background:rgba(4,34,66,.35);
}

.v4-cap-strip{
  background:#fff;
  border-bottom:1px solid #dce5ec;
}
.v4-cap-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
}
.v4-cap{
  padding:24px 18px 26px;
  text-align:center;
  border-right:1px solid #dce5ec;
}
.v4-cap:last-child{border-right:0}
.v4-cap__icon{
  width:48px;height:48px;
  margin:0 auto 10px;
  display:grid;place-items:center;
  border-radius:12px;
  border:2px solid #0f4d93;
  color:#0f4d93;
  font-size:1.3rem;
  font-weight:900;
}
.v4-cap strong{
  display:block;
  color:#0a2f5f;
  font-size:.95rem;
}
.v4-cap span{
  display:block;
  margin-top:6px;
  color:#50677f;
  font-size:.82rem;
  line-height:1.45;
}

.v4-intro{
  padding:72px 0;
}
.v4-intro-grid{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:48px;
  align-items:center;
}
.v4-inspector{
  overflow:hidden;
  border-radius:18px;
  min-height:360px;
  box-shadow:var(--shadow);
  border:1px solid #d7e4ed;
}
.v4-inspector img{
  width:100%;
  height:100%;
  min-height:360px;
  object-fit:cover;
}
.v4-intro h2{
  margin:.4rem 0 .8rem;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.2rem,3.4vw,3.5rem);
  line-height:1.05;
  color:#0b2f5e;
}
.v4-intro p{
  color:#3d556e;
}
.v4-checks{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px 24px;
  margin-top:24px;
}
.v4-check{
  display:flex;
  gap:9px;
  align-items:flex-start;
  color:#29445f;
  font-size:.93rem;
}
.v4-check::before{
  content:"✓";
  color:#0d67b6;
  font-weight:900;
}
.v4-tech-row{
  display:grid;
  grid-template-columns:1fr .72fr;
  gap:28px;
  align-items:end;
  margin-top:28px;
}
.v4-tech-card{
  padding:22px;
  border:1px solid #d6e4ed;
  border-radius:16px;
  background:#f7fbfe;
}
.v4-tech-card strong{
  color:#0a2f5f;
}
.v4-tech-card p{
  margin:.5rem 0 0;
  font-size:.9rem;
}
.v4-report-preview{
  overflow:hidden;
  border-radius:14px;
  border:1px solid #d4e2eb;
  background:#fff;
  box-shadow:0 12px 30px rgba(6,43,87,.10);
}
.v4-report-preview img{
  width:100%;
  display:block;
}

.v4-note{
  margin-top:28px;
  padding:16px 18px;
  border-left:4px solid #2188d6;
  background:#f4f9fd;
  color:#43617d;
  border-radius:0 10px 10px 0;
  font-size:.88rem;
}

@media(max-width:1100px){
  .site-header__inner{min-height:120px}
  .brand{width:210px;height:110px}
  .brand img{width:205px;max-height:105px}
  .main-nav{gap:24px}
  .main-nav a{padding:40px 0 34px}
  .main-nav a::after{bottom:24px}
  .v4-cap-grid{grid-template-columns:repeat(3,1fr)}
  .v4-cap:nth-child(3){border-right:0}
  .v4-cap{border-bottom:1px solid #dce5ec}
  .v4-cap:nth-last-child(-n+3){border-bottom:0}
}
@media(max-width:900px){
  .site-header__inner{min-height:96px}
  .brand{width:175px;height:88px}
  .brand img{width:170px;max-height:86px}
  .main-nav,.header-actions{display:none}
  .menu-toggle{display:block}
  .main-nav.is-open{top:96px}
  .v4-intro-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  .v4-cap-grid{grid-template-columns:1fr 1fr}
  .v4-cap:nth-child(n){border-right:1px solid #dce5ec;border-bottom:1px solid #dce5ec}
  .v4-cap:nth-child(even){border-right:0}
  .v4-cap:nth-last-child(-n+2){border-bottom:0}
  .v4-checks,.v4-tech-row{grid-template-columns:1fr}
}


/* VERSION 5 BUILD COMPLETION */
.faq-list{max-width:980px}
.faq-list details{
  margin-bottom:14px;
  border:1px solid #d7e3ec;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 24px rgba(6,43,87,.05);
  overflow:hidden;
}
.faq-list summary{
  padding:20px 22px;
  cursor:pointer;
  color:#0b2f5e;
  font-weight:850;
}
.faq-list details p{
  margin:0;
  padding:0 22px 22px;
  color:#536a80;
}
.form-message{
  min-height:24px;
  padding:10px 12px;
  border-radius:8px;
  font-size:.9rem;
}
.form-message:empty{display:none}
.form-message--error{display:block;background:#fff0f0;color:#a22727;border:1px solid #f1c1c1}
.form-message--success{display:block;background:#eff8f2;color:#236b3b;border:1px solid #bfe0c8}


/* =========================================================
   BLAZOR WEBSITE FOUNDATION
   ========================================================= */
html, body { min-height: 100%; }
body { overflow-x: hidden; }
.blazor-error-boundary { display:none; }

.site-main {
  min-height: 60vh;
}

.mobile-only { display:none; }

.form-message {
  margin-top:12px;
  padding:12px 14px;
  border-radius:10px;
  background:#f4f9fd;
  color:#47627a;
  border:1px solid #d5e4ee;
  font-size:.88rem;
}

@media(max-width:900px){
  .mobile-only{display:block}
}

/* =========================================================
   L&A PROPERTY GROUP — FINAL BRAND / HEADER UPDATE
   ========================================================= */

.site-header {
    background: rgba(255,255,255,.98);
    border-bottom: 1px solid #dce5ec;
    box-shadow: 0 4px 18px rgba(6,43,87,.045);
}

.site-header .shell {
    width: min(calc(100% - 48px), 1460px);
}

.site-header__inner {
    min-height: 205px;
    gap: 28px;
}

.brand {
    width: 365px;
    height: 190px;
    flex: 0 0 365px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.brand img {
    width: 355px;
    max-height: 186px;
    object-fit: contain;
}

.main-nav {
    gap: 24px;
    margin-left: auto;
}

.main-nav a {
    padding: 80px 0 70px;
    font-size: .96rem;
    font-weight: 750;
    letter-spacing: -.01em;
    white-space: nowrap;
}

.main-nav a::after {
    bottom: 55px;
    height: 3px;
    border-radius: 999px;
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-left: 8px;
    flex: 0 0 auto;
}

.phone-link {
    display: grid;
    grid-template-columns: 38px auto;
    grid-template-rows: auto auto;
    column-gap: 10px;
    align-items: center;
    color: var(--navy);
    text-decoration: none;
    white-space: nowrap;
    padding: 8px 0;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: .94rem;
    font-weight: 800;
    letter-spacing: .01em;
}

.phone-link::before {
    content: "☎";
    grid-row: 1 / 3;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border: 2px solid var(--blue);
    border-radius: 50%;
    color: var(--blue);
    font-size: 1rem;
    line-height: 1;
    background: #f5faff;
}

.phone-link::after {
    content: "CALL L&A";
    grid-column: 2;
    grid-row: 1;
    align-self: end;
    color: #71869a;
    font-size: .61rem;
    font-weight: 900;
    letter-spacing: .11em;
    line-height: 1.1;
}

.phone-link:hover {
    color: var(--blue);
}

.phone-link:hover::before {
    color: #fff;
    background: var(--blue);
}

.header-actions .btn-small {
    min-height: 46px;
    padding: 0 19px;
    border-radius: 9px;
    font-size: .86rem;
    font-weight: 850;
    white-space: nowrap;
    box-shadow: 0 7px 18px rgba(6,43,87,.12);
}

/* Footer branding */
.footer-brand img {
    width: 220px;
    max-width: 100%;
    background: #fff;
    border-radius: 12px;
    padding: 10px;
}

.footer-brand-name {
    margin-top: 14px !important;
    color: #fff !important;
    font-weight: 850;
    font-size: 1rem !important;
}

/* Intermediate desktop */
@media (max-width: 1180px) and (min-width: 901px) {
    .site-header__inner {
        min-height: 148px;
        gap: 16px;
    }

    .brand {
        width: 225px;
        flex-basis: 225px;
    }

    .brand img {
        width: 215px;
        max-height: 132px;
    }

    .main-nav {
        gap: 18px;
    }

    .main-nav a {
        font-size: .89rem;
    }

    .header-actions {
        gap: 10px;
        margin-left: 2px;
    }

    .phone-link {
        grid-template-columns: 32px auto;
        column-gap: 7px;
        font-size: .85rem;
    }

    .phone-link::before {
        width: 32px;
        height: 32px;
        font-size: .86rem;
    }

    .phone-link::after {
        font-size: .55rem;
    }

    .header-actions .btn-small {
        padding-inline: 14px;
        font-size: .78rem;
    }
}

/* Mobile */
@media (max-width: 900px) {
    .site-header__inner {
        min-height: 96px;
    }

    .brand {
        width: 175px;
        height: 88px;
        flex-basis: 175px;
    }

    .brand img {
        width: 170px;
        max-height: 86px;
    }

    .main-nav,
    .header-actions {
        display: none;
    }

    .menu-toggle {
        display: block;
    }

    .main-nav.is-open {
        top: 96px;
    }
}

/* =========================================================
   HEADER LOGO — FORCE VISUAL SCALE
   Uses transform so older width/max-height rules cannot keep
   the logo visually small.
   ========================================================= */

@media (min-width: 901px) {

    .site-header .shell {
        width: min(calc(100% - 40px), 1580px) !important;
    }

    .site-header__inner {
        min-height: 250px !important;
        gap: 26px !important;
        align-items: center !important;
    }

    .site-header__inner > .brand {
        width: 360px !important;
        height: 225px !important;
        flex: 0 0 360px !important;
        overflow: visible !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }

    .site-header__inner > .brand > img {
        width: 250px !important;
        height: auto !important;
        max-width: none !important;
        max-height: none !important;
        transform: none !important;
        transform-origin: left center !important;
        object-fit: contain !important;
    }

    .main-nav {
        gap: 26px !important;
        margin-left: auto !important;
    }

    .main-nav a {
        font-size: 1.08rem !important;
        font-weight: 800 !important;
        white-space: nowrap !important;
    }

    .header-actions {
        flex: 0 0 auto !important;
    }
}



/* =========================================================
   FINAL DESKTOP HEADER / LOGO FIX
   Large logo without clipping or hero overlap
   ========================================================= */
@media (min-width: 1181px) {
    .site-header,
    .site-header__inner {
        overflow: visible !important;
    }

    .site-header__inner {
        min-height: 250px !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
        align-items: center !important;
    }

    .brand {
        width: 360px !important;
        height: 225px !important;
        flex: 0 0 360px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: visible !important;
    }

    .brand img {
        width: 350px !important;
        height: auto !important;
        max-width: none !important;
        max-height: 220px !important;
        object-fit: contain !important;
        transform: none !important;
        margin: 0 !important;
        position: static !important;
    }
}


/* HOME — THREE DIVISIONS / ONE STANDARD */
.division-showcase{padding:76px 0 88px;background:radial-gradient(circle at 50% 0%,rgba(35,136,216,.08),transparent 34%),linear-gradient(180deg,#fff 0%,#f7fbfe 100%);border-top:1px solid rgba(6,43,87,.06)}
.division-showcase__heading{max-width:760px;margin:0 auto 42px;text-align:center}
.division-showcase__heading h2{margin:8px 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.35rem,3.6vw,3.75rem);line-height:1.02;letter-spacing:-.025em;color:var(--navy)}
.division-showcase__heading h2 em{color:var(--blue);font-weight:500}
.division-showcase__heading p{max-width:650px;margin:0 auto;color:#526b83;font-size:1.03rem}
.division-grid.division-grid--home{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:0;position:relative;z-index:2;align-items:stretch}
.division-grid--home .division-card{position:relative;display:flex;min-height:360px;padding:34px 32px 30px;flex-direction:column;align-items:flex-start;text-align:left;overflow:hidden;border:1px solid #d9e5ee;border-radius:20px;background:#fff;box-shadow:0 16px 42px rgba(6,43,87,.08);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.division-grid--home .division-card:hover{transform:translateY(-5px);border-color:#b8d5e9;box-shadow:0 22px 48px rgba(6,43,87,.13)}
.division-grid--home .division-card::after{content:"";position:absolute;width:150px;height:150px;right:-68px;top:-68px;border-radius:50%;background:rgba(35,136,216,.055);pointer-events:none}
.division-card__icon{width:58px;height:58px;display:grid;place-items:center;margin-bottom:21px;border:1px solid #cfe3f2;border-radius:16px;background:linear-gradient(145deg,#eef7fd,#e0f0fb);color:#0877c8;font-size:1.65rem;font-weight:900}
.division-card__label{margin-bottom:7px;color:#1582cf;font-size:.72rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.division-grid--home .division-card h3{margin:0 0 12px;font-family:Georgia,"Times New Roman",serif;color:var(--navy);font-size:1.65rem;line-height:1.08}
.division-grid--home .division-card p{margin:0 0 24px;color:#62758a;font-size:.96rem;line-height:1.65}
.division-card__link{display:inline-flex;align-items:center;gap:9px;margin-top:auto;color:var(--navy);font-size:.92rem;font-weight:850}
.division-card__link span{color:var(--blue);font-size:1.15rem;transition:transform .18s ease}
.division-card__link:hover span{transform:translateX(4px)}
.division-grid--home .division-card--featured{border-color:#77b8e5;background:linear-gradient(180deg,rgba(232,245,254,.72),rgba(255,255,255,1) 48%);box-shadow:0 20px 48px rgba(6,79,139,.13)}
.division-card__topline{position:absolute;top:18px;right:18px;padding:6px 9px;border-radius:999px;background:var(--navy);color:#fff;font-size:.64rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
@media(max-width:1000px){.division-grid.division-grid--home{grid-template-columns:1fr;max-width:680px;margin-inline:auto}.division-grid--home .division-card{min-height:0}}
@media(max-width:680px){.division-showcase{padding:58px 0 64px}.division-showcase__heading{margin-bottom:30px}.division-grid--home .division-card{padding:28px 24px 25px}}



/* =========================================================
   HOME DIVISION CARDS — PHOTO VERSION
   ========================================================= */

.division-grid--home .division-card.division-card--photo{
    padding:0;
    min-height:455px;
    overflow:hidden;
}

.division-card__media{
    position:relative;
    width:100%;
    height:175px;
    overflow:hidden;
    background:#dfeaf2;
}

.division-card__media::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(4,34,66,0) 45%,rgba(4,34,66,.16) 100%);
    pointer-events:none;
}

.division-card__media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transition:transform .35s ease;
}

.division-card--photo:hover .division-card__media img{
    transform:scale(1.035);
}

.division-card__body{
    position:relative;
    display:flex;
    flex:1;
    flex-direction:column;
    align-items:flex-start;
    width:100%;
    padding:27px 30px 29px;
}

.division-card__body .division-card__icon{
    width:50px;
    height:50px;
    margin-top:-50px;
    margin-bottom:19px;
    position:relative;
    z-index:3;
    background:#fff;
    border:1px solid #cfe3f2;
    box-shadow:0 8px 20px rgba(6,43,87,.12);
}

.division-card--featured .division-card__media{
    border-bottom:1px solid rgba(35,136,216,.24);
}

.division-card--featured .division-card__media::after{
    background:linear-gradient(180deg,rgba(6,43,87,.02) 30%,rgba(6,43,87,.22) 100%);
}

.division-card--photo .division-card__topline{
    top:16px;
    right:16px;
    z-index:4;
    box-shadow:0 5px 14px rgba(6,43,87,.18);
}

@media(max-width:1000px){
    .division-grid--home .division-card.division-card--photo{
        min-height:0;
    }

    .division-card__media{
        height:220px;
    }
}

@media(max-width:680px){
    .division-card__media{
        height:185px;
    }

    .division-card__body{
        padding:25px 24px 26px;
    }
}
/* =========================================================
   L&A PROPERTY GROUP — COMPACT ICON HEADER
   FINAL SITE-WIDE HEADER OVERRIDE
   ========================================================= */

/* Header itself */
.site-header.site-header--compact {
    position: relative !important;
    top: auto !important;
    z-index: 1000;
    background: #fff;
    border-bottom: 1px solid #dce5ec;
    box-shadow: 0 4px 16px rgba(6,43,87,.04);
    overflow: visible !important;
}

.site-header--compact .site-header__inner,
.site-header__inner--compact {
    min-height: 132px !important;
    height: auto !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    gap: 24px !important;
    align-items: center !important;
    overflow: visible !important;
}

.site-header--compact .shell {
    width: min(calc(100% - 42px), 1540px) !important;
}

/* Compact logo */
.site-header--compact .brand,
.site-header--compact .brand--compact {
    width: 225px !important;
    height: 110px !important;
    flex: 0 0 225px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    overflow: visible !important;
}

    .site-header--compact .brand img,
    .site-header--compact .brand--compact img {
        width: 218px !important;
        height: auto !important;
        max-width: 218px !important;
        max-height: 108px !important;
        object-fit: contain !important;
        transform: none !important;
        margin: 0 !important;
        position: static !important;
    }

/* Primary navigation */
.site-header--compact .main-nav,
.site-header--compact .main-nav--icon {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px !important;
    margin-left: auto !important;
}

.site-header--compact .main-nav__item {
    position: relative;
    min-width: 94px;
    min-height: 92px;
    padding: 10px 10px 14px !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border-radius: 12px;
    color: var(--navy);
    font-size: .84rem !important;
    font-weight: 800 !important;
    line-height: 1.1;
    text-align: center;
    white-space: nowrap;
    transition: background .18s ease, color .18s ease, transform .18s ease;
}

    .site-header--compact .main-nav__item:hover {
        background: #f3f8fc;
        color: var(--blue);
        transform: translateY(-1px);
    }

    /* Remove the old underline behavior */
    .site-header--compact .main-nav__item::after {
        display: none !important;
    }

/* New icon */
.site-header--compact .main-nav__icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    color: #0a3971;
    transition: color .18s ease, transform .18s ease;
}

    .site-header--compact .main-nav__icon svg {
        width: 28px;
        height: 28px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.site-header--compact .main-nav__item:hover .main-nav__icon {
    color: var(--blue);
    transform: translateY(-1px);
}

/* Active page treatment */
.site-header--compact .main-nav__item.active,
.site-header--compact .main-nav__item.is-active {
    color: #086fc2;
    background: #f4f9fd;
}

    .site-header--compact .main-nav__item.active::before,
    .site-header--compact .main-nav__item.is-active::before {
        content: "";
        position: absolute;
        left: 18px;
        right: 18px;
        bottom: 5px;
        height: 3px;
        border-radius: 999px;
        background: var(--blue);
    }

/* Phone area */
.header-actions--compact {
    display: flex !important;
    align-items: center;
    gap: 16px !important;
    margin-left: 10px !important;
    flex: 0 0 auto;
}

.phone-card {
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
    color: var(--navy);
}

.phone-card__icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    flex: 0 0 44px;
    border: 2px solid var(--blue);
    border-radius: 50%;
    color: var(--blue);
    background: #f7fbff;
    transition: .18s ease;
}

    .phone-card__icon svg {
        width: 21px;
        height: 21px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.phone-card__text {
    display: flex;
    flex-direction: column;
    line-height: 1.05;
}

    .phone-card__text small {
        margin-bottom: 4px;
        color: #71869a;
        font-size: .60rem;
        font-weight: 900;
        letter-spacing: .10em;
    }

    .phone-card__text strong {
        color: var(--navy);
        font-size: .95rem;
        font-weight: 850;
    }

.phone-card:hover .phone-card__icon {
    color: #fff;
    background: var(--blue);
}

/* Quote button */
.header-quote {
    min-height: 46px !important;
    padding: 0 21px !important;
    border-radius: 9px !important;
    font-size: .84rem !important;
    white-space: nowrap;
    box-shadow: 0 8px 18px rgba(6,43,87,.12);
}

/* =========================================================
   LAPTOP / SMALLER DESKTOP
   ========================================================= */

@media (max-width: 1280px) and (min-width: 901px) {

    .site-header--compact .site-header__inner,
    .site-header__inner--compact {
        min-height: 118px !important;
        gap: 14px !important;
    }

    .site-header--compact .brand,
    .site-header--compact .brand--compact {
        width: 185px !important;
        height: 98px !important;
        flex-basis: 185px !important;
    }

        .site-header--compact .brand img,
        .site-header--compact .brand--compact img {
            width: 180px !important;
            max-width: 180px !important;
            max-height: 96px !important;
        }

    .site-header--compact .main-nav,
    .site-header--compact .main-nav--icon {
        gap: 4px !important;
    }

    .site-header--compact .main-nav__item {
        min-width: 80px;
        min-height: 82px;
        padding-inline: 7px !important;
        font-size: .76rem !important;
    }

    .site-header--compact .main-nav__icon {
        width: 30px;
        height: 30px;
    }

        .site-header--compact .main-nav__icon svg {
            width: 25px;
            height: 25px;
        }

    .header-actions--compact {
        gap: 10px !important;
        margin-left: 3px !important;
    }

    .phone-card__icon {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
    }

    .phone-card__text strong {
        font-size: .84rem;
    }

    .header-quote {
        padding-inline: 14px !important;
        font-size: .76rem !important;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 900px) {

    .site-header--compact .site-header__inner,
    .site-header__inner--compact {
        min-height: 88px !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }

    .site-header--compact .brand,
    .site-header--compact .brand--compact {
        width: 160px !important;
        height: 78px !important;
        flex-basis: 160px !important;
    }

        .site-header--compact .brand img,
        .site-header--compact .brand--compact img {
            width: 155px !important;
            max-width: 155px !important;
            max-height: 76px !important;
        }

    .site-header--compact .main-nav,
    .site-header--compact .header-actions {
        display: none !important;
    }

    .site-header--compact .menu-toggle {
        display: block !important;
        margin-left: auto;
    }

    .site-header--compact .main-nav.is-open {
        position: absolute;
        top: 88px;
        left: 0;
        right: 0;
        display: flex !important;
        flex-direction: column;
        align-items: stretch;
        gap: 0 !important;
        padding: 8px 14px 14px;
        background: #fff;
        border-top: 1px solid var(--line);
        box-shadow: var(--shadow);
    }

        .site-header--compact .main-nav.is-open .main-nav__item {
            min-width: 0;
            min-height: 54px;
            padding: 10px 14px !important;
            flex-direction: row;
            justify-content: flex-start;
            gap: 14px;
            text-align: left;
            font-size: .92rem !important;
        }

            .site-header--compact .main-nav.is-open .main-nav__item::before {
                display: none;
            }

        .site-header--compact .main-nav.is-open .main-nav__icon {
            width: 30px;
            height: 30px;
            flex: 0 0 30px;
        }
}
/* Keep Blazor page-focus behavior without showing a box around headings */
h1[tabindex="-1"]:focus {
    outline: none;
}

/* =========================================================
   REAL ESTATE — MOBILE REALTOR PROFILE ORDER
   Keep desktop alternating layout; show Lillian's photo first
   on tablet/mobile so both profiles read photo -> bio.
   ========================================================= */
@media (max-width: 1000px) {
    .realtor-lillian .lillian-photo {
        order: -1;
    }
}

/* =========================================================
   REAL ESTATE — MOBILE JOURNEY CARDS
   Stack Buying / Selling / Planning on narrow screens so
   the page never requires horizontal scrolling.
   ========================================================= */
@media (max-width: 768px) {
    .real-estate-journey-grid {
        grid-template-columns: 1fr !important;
        width: 100%;
        min-width: 0;
    }

    .real-estate-journey-grid > div {
        min-width: 0;
        width: 100%;
    }
}
