
/* John Bramley v3 — wider site, cool blue/white palette, stronger About hero */
:root{
  --jb-rail:1440px;
  --jb-gutter:32px;
  --jb-mobile-gutter:14px;
  --fg-ink:#14283a;
  --fg-deep:#071c31;
  --fg-deep2:#0d2b47;
  --fg-paper:#f5f8fb;
  --fg-cream:#ffffff;
  --fg-fog:#e8f1f8;
  --fg-sage:#8ea6b9;
  --fg-rust:#4f98d1;
  --fg-clay:#78b9f6;
  --fg-line:rgba(7,28,49,.15);
  --fg-white-line:rgba(255,255,255,.24);
  --fg-shadow:0 20px 48px rgba(4,24,43,.13);
}

body.jb-fieldguide{background:#f5f8fb!important;color:#14283a!important}

/* WIDER MASTER GRID — one wall for nav, heroes, body and footer. */
body.jb-fieldguide .site-nav.jb31-site-nav,
body.jb-fieldguide .hero-shell,
body.jb-fieldguide main>.hero,
body.jb-fieldguide main>.intro,
body.jb-fieldguide main>.page-hero,
body.jb-fieldguide .about-hero-v3,
body.jb-fieldguide .realtor-hero-v2{
  width:min(var(--jb-rail),calc(100% - 48px))!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.jb-fieldguide .section-inner,
body.jb-fieldguide .resource-switcher>.section-inner,
body.jb-fieldguide footer .section-inner{
  width:min(var(--jb-rail),calc(100% - 48px))!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* NAV — wider, darker, cleaner. */
body.jb-fieldguide .site-nav.jb31-site-nav{
  top:10px!important;
  margin-top:10px!important;
  min-height:76px!important;
  background:linear-gradient(90deg,#071c31 0%,#0a2947 54%,#123a5f 100%)!important;
  color:#fff!important;
  border:1px solid rgba(143,197,245,.28)!important;
  box-shadow:0 16px 36px rgba(4,24,43,.16)!important;
  clip-path:none!important;
  border-radius:0!important;
}
body.jb-fieldguide .jb31-nav-inner{
  width:100%!important;
  max-width:none!important;
  min-height:74px!important;
  padding:0 28px!important;
  gap:28px!important;
}
body.jb-fieldguide .jb31-brand strong{color:#fff!important;font-size:24px!important}
body.jb-fieldguide .jb31-brand span{color:#9cccf7!important}
body.jb-fieldguide .jb31-main-nav{gap:20px!important}
body.jb-fieldguide .jb31-link,
body.jb-fieldguide .jb31-menu-trigger{color:rgba(255,255,255,.88)!important;font-size:10.8px!important}
body.jb-fieldguide .jb31-link:hover,
body.jb-fieldguide .jb31-link.active,
body.jb-fieldguide .jb31-menu-trigger:hover,
body.jb-fieldguide .jb31-menu.current>.jb31-menu-trigger{color:#8fc5f5!important}
body.jb-fieldguide .jb31-link:hover:after,
body.jb-fieldguide .jb31-link.active:after,
body.jb-fieldguide .jb31-menu:hover>.jb31-menu-trigger:after,
body.jb-fieldguide .jb31-menu.current>.jb31-menu-trigger:after{background:#78b9f6!important}
body.jb-fieldguide .jb31-desktop-phone{
  color:#fff!important;
  background:rgba(120,185,246,.14)!important;
  border:1px solid rgba(120,185,246,.62)!important;
  min-height:42px!important;
}
body.jb-fieldguide .jb31-desktop-phone:hover{background:#2f6ea5!important;border-color:#78b9f6!important}
body.jb-fieldguide .jb31-dropdown{background:#fff!important;border:1px solid #d6e3ee!important}
body.jb-fieldguide .jb31-dropdown a{background:#fff!important;color:#17314a!important}
body.jb-fieldguide .jb31-dropdown a:hover,
body.jb-fieldguide .jb31-dropdown a.active{background:#edf6ff!important;color:#174f7c!important}

/* Replace the field-guide beige with crisp white / cool blue surfaces. */
body.jb-fieldguide .home-content,
body.jb-fieldguide .meet-section,
body.jb-fieldguide .story,
body.jb-fieldguide .principles,
body.jb-fieldguide .options,
body.jb-fieldguide .summary,
body.jb-fieldguide .program-index,
body.jb-fieldguide .program-sections,
body.jb-fieldguide .faq,
body.jb-fieldguide .resource-grid-section,
body.jb-fieldguide .article,
body.jb-fieldguide .calc-section,
body.jb-fieldguide .calculator-section,
body.jb-fieldguide .legal-main{background:#f5f8fb!important}
body.jb-fieldguide .meet-card,
body.jb-fieldguide .program-card,
body.jb-fieldguide .resource-card,
body.jb-fieldguide .compare-card,
body.jb-fieldguide .content-block,
body.jb-fieldguide .wall-card,
body.jb-fieldguide .crm-cta-card{background:#fff!important}
body.jb-fieldguide .faq-card{background:#eef5fb!important}
body.jb-fieldguide .wall{background:#e8f1f8!important}
body.jb-fieldguide .resource-switcher{background:#eaf2f8!important;border-color:#cfdee9!important}
body.jb-fieldguide input,
body.jb-fieldguide select,
body.jb-fieldguide textarea{background:#fff!important;border-color:#c8d8e5!important}
body.jb-fieldguide .legal-side{background:#eaf2f8!important;border-color:#cddce8!important}
body.jb-fieldguide .eyebrow{color:#2f6ea5!important}
body.jb-fieldguide .stars{color:#2f6ea5!important}
body.jb-fieldguide .outline-btn{color:#17314a!important;border-color:#98afc1!important}
body.jb-fieldguide .outline-btn:hover{background:#0d2b47!important;color:#fff!important}
body.jb-fieldguide a.hero-btn.primary,
body.jb-fieldguide .btn.primary,
body.jb-fieldguide .btn-primary{background:#5ea8ef!important;border-color:#5ea8ef!important;color:#071c31!important}
body.jb-fieldguide a.hero-btn.primary:hover,
body.jb-fieldguide .btn.primary:hover,
body.jb-fieldguide .btn-primary:hover{background:#8fc5f5!important;border-color:#8fc5f5!important;color:#071c31!important}

/* Make the major hero blocks feel broad rather than boxed-in. */
body.jb-fieldguide .hero-shell,
body.jb-fieldguide main>.hero,
body.jb-fieldguide main>.intro,
body.jb-fieldguide main>.page-hero,
body.jb-fieldguide .realtor-hero-v2{
  border-radius:0!important;
  margin-top:14px!important;
}
body.jb-fieldguide .hero-shell .hero-art{background-image:linear-gradient(90deg,rgba(4,20,32,.93) 0%,rgba(4,20,32,.78) 37%,rgba(4,20,32,.26) 70%,rgba(4,20,32,.14) 100%),url('images/neighborhood-day.png')!important}
body.jb-fieldguide .hero-panel{background:rgba(7,28,49,.62)!important;border-color:rgba(143,197,245,.30)!important}
body.jb-fieldguide .hero-panel:before{color:#8fc5f5!important}
body.jb-fieldguide .hero-panel h1{color:#fff!important}
body.jb-fieldguide .hero-copy-text{color:rgba(255,255,255,.88)!important}

/* ABOUT V3 — flag is atmosphere, not the entire idea. */
body.jb-fieldguide .about-hero-v2{display:none!important}
.about-hero-v3{
  position:relative;
  overflow:hidden;
  margin-top:14px!important;
  min-height:630px;
  color:#fff;
  background:#071c31;
  border:1px solid rgba(143,197,245,.20);
  box-shadow:var(--fg-shadow);
}
.about-hero-v3:before{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(5,23,40,.98) 0%,rgba(7,28,49,.92) 43%,rgba(7,28,49,.60) 69%,rgba(7,28,49,.28) 100%),
    url('images/about-flag.svg') right center/auto 118% no-repeat;
  opacity:1;
}
.about-hero-v3:after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 35%,rgba(4,18,31,.22));
}
.about-hero-v3-grid{
  position:relative;
  z-index:2;
  min-height:630px;
  display:grid;
  grid-template-columns:minmax(0,1.26fr) minmax(360px,.74fr);
  gap:72px;
  align-items:center;
}
.about-hero-v3-copy{padding:78px 0 82px}
.about-hero-v3-copy .eyebrow{color:#8fc5f5!important;margin-bottom:28px!important}
.about-hero-v3-copy h1{
  margin:0;
  max-width:900px;
  color:#fff!important;
  font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif!important;
  font-weight:400!important;
  font-size:clamp(54px,5.2vw,82px)!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
  text-wrap:balance;
}
.about-hero-v3-copy .lede{max-width:760px;margin:28px 0 0;color:rgba(255,255,255,.84)!important;font-size:18px;line-height:1.7}
.about-hero-v3-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.about-hero-v3-actions .btn{min-height:52px;padding:0 24px}
.about-hero-v3-actions .btn.secondary{color:#fff!important;border-color:rgba(255,255,255,.48)!important;background:rgba(255,255,255,.03)!important}
.about-hero-v3-actions .btn.secondary:hover{background:rgba(255,255,255,.10)!important}
.about-hero-v3-card{
  align-self:center;
  background:rgba(7,28,49,.70);
  border:1px solid rgba(143,197,245,.34);
  box-shadow:0 24px 55px rgba(0,0,0,.20);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  padding:34px 34px 30px;
}
.about-hero-v3-card .service-label{margin:0 0 18px;color:#8fc5f5;font:500 10px/1.3 "Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}
.about-hero-v3-card h2{margin:0 0 26px;color:#fff!important;font-size:34px!important;line-height:1.06!important;letter-spacing:-.02em!important}
.about-cred-list{display:grid;border-top:1px solid rgba(255,255,255,.18)}
.about-cred{display:grid;grid-template-columns:110px 1fr;gap:18px;align-items:baseline;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.about-cred strong{font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif;font-weight:400;font-size:29px;line-height:1;color:#fff}
.about-cred span{color:rgba(255,255,255,.72);font:400 10px/1.4 "Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.about-hero-v3-card .micro{margin:22px 0 0;color:rgba(255,255,255,.68);font-size:13px;line-height:1.6}

/* About body: more contrast, less beige sameness. */
.about-profile{background:#fff!important;padding:108px 0!important}
.about-photo{background:#e8f1f8!important;border-color:#ccdbe7!important;box-shadow:0 18px 42px rgba(4,24,43,.10)}
.about-photo-cap{background:#0d2b47!important;color:rgba(255,255,255,.78)!important;border-color:rgba(255,255,255,.10)!important}
.about-story-head{border-color:#cddbe7!important}
.about-story-head h2,.about-story-copy .lead{color:#071c31!important}
.about-story-copy p{color:#4f6273!important}
.about-years{color:#2f6ea5!important}
.about-years small{color:#65788a!important}
.about-stats{background:linear-gradient(90deg,#071c31,#0b3152)!important}
.about-stat{border-color:rgba(143,197,245,.20)!important}
.about-stat strong{color:#fff!important}
.about-stat span{color:#a9cce9!important}
.about-standard{background:#eaf2f8!important}
.about-standard-head p,.about-principle p{color:#4c6274!important}
.about-principles,.about-principle{border-color:#c9d9e5!important}
.about-principle .num{color:#6ca6d4!important}
.about-path{background:#fff!important}
.about-timeline{border-color:#9abbd5!important}
.about-step:before{background:#4f98d1!important}
.about-step .kicker{color:#2f6ea5!important}
.about-step p{color:#4e6273!important}
.about-cta{background:linear-gradient(90deg,#071c31,#0d3558)!important}
.about-cta .eyebrow{color:#8fc5f5!important}
.about-cta h2{color:#fff!important}
.about-cta p{color:rgba(255,255,255,.76)!important}

/* Realtor page — remove remaining tan surfaces. */
.partner-proof{background:#eaf2f8!important;border-color:#cadbe8!important}
.partner-proof-stat{border-color:#cadbe8!important}
.partner-benefits{background:#f5f8fb!important}
.partner-card{background:#fff!important;border-color:#cfdee9!important}
.partner-card .num{color:#4f98d1!important}
.partner-process{background:linear-gradient(90deg,#071c31,#0d3150)!important}
.partner-desk-preview{background:#eaf2f8!important}
.desk-sheet{background:#fff!important;border-color:#c9d9e5!important;box-shadow:0 20px 44px rgba(4,24,43,.12)!important}
.desk-sheet:before{color:#071c31!important;border-color:#2f6ea5!important}
.desk-line{border-color:#d7e3ec!important}
.desk-line span{color:#61788c!important}
.desk-line strong{color:#071c31!important}
.partner-cta{background:linear-gradient(90deg,#071c31,#0d3558)!important}

/* Footer follows the same wider rail. */
body.jb-fieldguide .jb-standard-footer .section-inner{width:min(var(--jb-rail),calc(100% - 48px))!important;max-width:none!important}

@media(max-width:1180px){
  body.jb-fieldguide .jb31-main-nav{gap:14px!important}
  body.jb-fieldguide .jb31-nav-inner{padding:0 18px!important;gap:18px!important}
  body.jb-fieldguide .jb31-brand span{display:none!important}
}
@media(max-width:980px){
  body.jb-fieldguide .site-nav.jb31-site-nav,
  body.jb-fieldguide .hero-shell,
  body.jb-fieldguide main>.hero,
  body.jb-fieldguide main>.intro,
  body.jb-fieldguide main>.page-hero,
  body.jb-fieldguide .about-hero-v3,
  body.jb-fieldguide .realtor-hero-v2{width:calc(100% - 24px)!important}
  body.jb-fieldguide .section-inner,
  body.jb-fieldguide .resource-switcher>.section-inner,
  body.jb-fieldguide footer .section-inner{width:calc(100% - 32px)!important}
  body.jb-fieldguide .site-nav.jb31-site-nav{top:8px!important;margin-top:8px!important;border-radius:0!important}
  body.jb-fieldguide .jb31-mobile-menu{background:#fff!important;border-top:1px solid #c9d9e5!important}
  body.jb-fieldguide .jb31-mobile-menu a{color:#17314a!important}
  .about-hero-v3-grid{grid-template-columns:1fr;gap:0;padding:0 24px}
  .about-hero-v3-copy{padding:66px 0 26px}
  .about-hero-v3-card{margin:0 0 54px;max-width:620px}
}
@media(max-width:640px){
  body.jb-fieldguide .site-nav.jb31-site-nav,
  body.jb-fieldguide .hero-shell,
  body.jb-fieldguide main>.hero,
  body.jb-fieldguide main>.intro,
  body.jb-fieldguide main>.page-hero,
  body.jb-fieldguide .about-hero-v3,
  body.jb-fieldguide .realtor-hero-v2{width:calc(100% - 20px)!important;margin-top:10px!important}
  body.jb-fieldguide .section-inner,
  body.jb-fieldguide .resource-switcher>.section-inner,
  body.jb-fieldguide footer .section-inner{width:calc(100% - 24px)!important}
  .about-hero-v3{min-height:0}
  .about-hero-v3:before{background:linear-gradient(180deg,rgba(5,23,40,.96),rgba(7,28,49,.86)),url('images/about-flag.svg') 62% center/cover no-repeat}
  .about-hero-v3-grid{min-height:0;padding:0 10px}
  .about-hero-v3-copy{padding:52px 8px 26px}
  .about-hero-v3-copy h1{font-size:clamp(42px,12vw,54px)!important;line-height:1!important}
  .about-hero-v3-copy .lede{font-size:16px;line-height:1.58}
  .about-hero-v3-actions{display:grid;grid-template-columns:1fr}
  .about-hero-v3-actions a{width:100%;justify-content:center}
  .about-hero-v3-card{margin:0 8px 28px;padding:26px 22px;background:rgba(7,28,49,.82)}
  .about-cred{grid-template-columns:92px 1fr;gap:14px}
  .about-profile,.about-standard,.about-path{padding:74px 0!important}
}
