/* MERITUS GROUP - Sitewide v3 (matched to live site screenshot) */
:root{
  --ink:#2a2d42;
  --ink-deep:#1f2132;
  --ice:#e1eef8;
  --gray:#f7f7f7;
  --steel:#7090ae;
  --white:#ffffff;
  --body-font:'Poppins',sans-serif;
  --head-font:'Glacial Indifference','Poppins',sans-serif;
  --max:1180px;
  /* SWAP IN THE REAL HERO IMAGE URL FROM THE WP MEDIA LIBRARY: */
  --hero-image:url('../images/hero.jpg');
  --listings-hero-image:url('../images/listings-hero-clean.jpg');
  /* SWAP IN THE REAL FOOTER BUILDING PHOTO URL: */
  --footer-image:linear-gradient(23deg,rgba(120,150,190,.16) 0 14%,rgba(60,80,115,.2) 14% 15%,rgba(90,115,155,.12) 15% 34%,rgba(50,68,100,.22) 34% 35%,rgba(105,135,175,.14) 35% 58%,rgba(55,75,110,.2) 58% 59%,rgba(80,105,145,.1) 59% 100%),linear-gradient(115deg,#262a40 0%,#2c3049 45%,#343a58 100%);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--body-font);font-weight:300;font-size:18px;line-height:1.85;color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;transition:all .25s ease;}
a:hover{color:var(--steel);}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--steel);outline-offset:2px;}
h1,h2,h3,h4,h5{font-family:var(--head-font);text-transform:uppercase;font-weight:700;line-height:1.3;color:var(--ink);letter-spacing:1px;}
h1{font-size:clamp(2.2rem,4.6vw,3.6rem);letter-spacing:1px;line-height:1.12;}
h2{font-size:clamp(1.7rem,3.2vw,2.65rem);line-height:1.3;}
h3{font-size:1rem;}
h4{font-size:.85rem;letter-spacing:2px;}
p{margin-bottom:1.15em;}
.eyebrow{font-family:var(--head-font);text-transform:uppercase;letter-spacing:2px;font-size:.95rem;font-weight:700;color:var(--steel);margin-bottom:1rem;}
.eyebrow--light{color:var(--ice);}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px;}
.section{padding:80px 0;}
.section--gray{background:var(--gray);}
.section--ice{background:var(--ice);}
.section--ink{background:var(--ink);color:var(--white);}
.section--ink h1,.section--ink h2,.section--ink h3,.section--ink h4{color:var(--white);}
.section--navy{background:#252739;color:var(--white);position:relative;padding-bottom:70px;overflow:hidden;}
.section--navy::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 16% 6%,rgba(255,255,255,.07),transparent 44%),linear-gradient(115deg,transparent 54%,rgba(9,11,22,.5) 54.3%),linear-gradient(245deg,transparent 76%,rgba(9,11,22,.35) 76.3%);pointer-events:none;}
.section--navy>*{position:relative;}
.section--navy h2,.section--navy h3{color:var(--white);}
.center{text-align:center;}
.lead{font-size:18px;max-width:880px;margin-left:auto;margin-right:auto;}
.mt-2{margin-top:2rem;}.mb-2{margin-bottom:2rem;}

/* Buttons */
.btn{display:inline-block;font-family:var(--head-font);text-transform:uppercase;letter-spacing:2.5px;font-weight:700;font-size:.74rem;line-height:1.5;padding:20px 42px;border:1px solid var(--ink);color:var(--ink);background:transparent;cursor:pointer;-webkit-appearance:none;appearance:none;border-radius:0;}
.btn:hover{background:var(--ink);color:var(--white);}
.btn--solid{background:var(--ink);color:var(--white);border-color:var(--ink);}
.btn--solid:hover{background:var(--steel);border-color:var(--steel);color:var(--white);}
.btn--light{border-color:rgba(255,255,255,.85);color:var(--white);}
.btn--light:hover{background:var(--white);color:var(--ink);}
.btn--chip{background:var(--ice);color:var(--ink);border:1px solid var(--ice);}
.btn--chip:hover{background:var(--steel);border-color:var(--steel);color:var(--white);}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:var(--white);box-shadow:0 1px 6px rgba(42,45,66,.08);}
.nav-bar{display:flex;align-items:center;justify-content:space-between;gap:clamp(16px,2vw,40px);padding:22px clamp(20px,2.2vw,40px);max-width:1560px;margin:0 auto;}
.nav-bar>nav{flex:1 1 auto;min-width:0;}
.logo img{height:70px;width:auto;}
.nav-toggle{display:none;background:none;border:none;font-size:1.5rem;color:var(--ink);cursor:pointer;}
.nav-menu{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:clamp(14px,1.6vw,32px);list-style:none;min-width:0;}
.nav-menu a{font-family:var(--head-font);text-transform:uppercase;font-size:clamp(1rem,1.18vw,1.3rem);letter-spacing:.6px;font-weight:400;color:var(--ink);white-space:nowrap;}
.nav-menu a:hover{color:var(--steel);}
.nav-menu>li:first-child{margin-left:auto;}
.nav-cta{margin-left:auto;}
.nav-cta a{background:var(--ice);color:var(--ink);padding:18px clamp(16px,1.6vw,28px);font-weight:400;}
.nav-cta a:hover{background:var(--steel);color:var(--white);}
/* Dropdown. .has-sub is the static markup, .menu-item-has-children is what
   WordPress outputs. Both must be handled or the sub-menu loses its positioning
   context and anchors to the page instead of the tab. */
.has-sub,.menu-item-has-children{position:relative;}
.has-sub>a::after,.menu-item-has-children>a::after{content:" \25BE";font-size:.7em;}
.sub-menu{display:none;position:absolute;top:100%;left:0;background:var(--white);min-width:200px;box-shadow:0 8px 24px rgba(42,45,66,.14);list-style:none;padding:8px 0;z-index:120;}
.has-sub:hover>.sub-menu,.has-sub:focus-within>.sub-menu,
.menu-item-has-children:hover>.sub-menu,.menu-item-has-children:focus-within>.sub-menu,
.nav-menu li.open>.sub-menu{display:block;}
.sub-menu a{display:block;padding:9px 20px;text-transform:none;letter-spacing:.4px;font-family:var(--body-font);font-weight:400;font-size:.95rem;}

/* Hero - left-aligned with floating buy box */
.hero{background-image:linear-gradient(90deg,rgba(16,20,34,.55) 0%,rgba(16,20,34,.28) 50%,rgba(16,20,34,.12) 100%),var(--hero-image);background-size:cover;background-position:center 30%;color:var(--white);min-height:92vh;display:flex;align-items:center;padding:90px 0;}
.hero-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:center;}
.hero h1{color:var(--white);margin:12px 0 26px;}
.hero p{max-width:620px;font-size:18px;line-height:1.7;color:var(--white);margin-bottom:34px;}
.hero .eyebrow{color:#8fb3d4;letter-spacing:2.5px;font-size:.95rem;}
.hero-buy{background:rgba(38,42,62,.78);border:none;border-top:5px solid var(--ice);padding:42px 36px;max-width:380px;width:100%;justify-self:end;}
.hero-buy h3{color:var(--white);margin-bottom:26px;font-size:1.15rem;line-height:1.5;letter-spacing:1.5px;}
.hero--inner{min-height:auto;padding:90px 0;}
.hero--inner .hero-grid{grid-template-columns:1fr;}

/* Logo strip */
.logo-strip{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:40px;padding:75px 24px;background:var(--white);max-width:1180px;margin:0 auto;}
.logo-strip img{height:auto;object-fit:contain;}
.logo-strip img:nth-of-type(1){width:200px;}   /* BizBuySell */
.logo-strip img:nth-of-type(2){width:205px;}   /* BRG */
.logo-strip img:nth-of-type(3){width:212px;}   /* ASA */
.logo-strip img:nth-of-type(4){width:128px;}   /* AASBC */
.logo-strip img:nth-of-type(5){width:195px;}   /* BusinessBroker.net */
@media (max-width:860px){.logo-strip img{width:auto!important;max-width:44vw;max-height:64px;}}
@media (max-width:860px){.logo-strip{justify-content:center;gap:36px;padding:50px 24px;}}

/* Layout blocks */
.grid{display:grid;gap:40px;}
.grid--2{grid-template-columns:repeat(2,1fr);}
.grid--3{grid-template-columns:repeat(3,1fr);}
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;}

/* Photo cards (image on top, plain white) */
.photo-card{text-align:center;}
.photo-card img{width:100%;aspect-ratio:4/3;object-fit:cover;}
.photo-card h3{margin:22px 0 12px;}
.photo-card p{font-size:18px;max-width:440px;margin:0 auto;}

/* Listings on navy */
.listing-card{background:transparent;display:flex;flex-direction:column;text-align:center;box-shadow:0 14px 38px rgba(8,10,22,.35);}
.listing-card img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.listing-body{background:var(--white);padding:38px 30px 42px;display:flex;flex-direction:column;gap:14px;align-items:center;flex:1;}
.listing-body h3{font-size:1.4rem;line-height:1.35;}
.listing-body h3 a{color:var(--ink);}
.listing-loc{font-family:var(--body-font);letter-spacing:1px;font-size:1.05rem;color:var(--ink);text-transform:uppercase;font-weight:400;}
.listing-price{font-family:var(--head-font);font-size:1.5rem;font-weight:700;color:var(--ink);margin-top:6px;}
.listing-body .btn{margin-top:auto;}

/* Process steps */
.step{border-bottom:1px solid var(--ice);padding:32px 0;}
.step-label{font-family:var(--head-font);text-transform:uppercase;letter-spacing:2px;font-size:.72rem;color:var(--steel);font-weight:700;margin-bottom:6px;}
.step h2{font-size:1.2rem;margin-bottom:10px;}
.step p{margin-bottom:0;max-width:820px;}

/* Testimonial */
.testimonial{background:var(--white);padding:150px 24px 120px;text-align:center;}
.testimonial h3{margin-bottom:30px;text-transform:none;font-family:var(--body-font);font-weight:600;font-size:1.3rem;letter-spacing:0;}
.testimonial blockquote{max-width:920px;margin:0 auto;font-size:18px;font-style:normal;line-height:1.85;}
.testimonial cite{display:block;margin-top:60px;font-style:italic;font-family:var(--body-font);text-transform:none;letter-spacing:0;font-size:1.05rem;font-weight:700;}

/* Blog cards */
.post-card{background:var(--white);display:flex;flex-direction:column;}
.post-card img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.post-body{padding:30px 28px 34px;display:flex;flex-direction:column;gap:12px;flex:1;}
.post-card h3{font-size:1.35rem;line-height:1.35;}
.post-card h3 a{color:var(--ink);}
.post-cat{font-size:.85rem;letter-spacing:2px;text-transform:uppercase;font-family:var(--head-font);font-weight:700;color:var(--steel);}
.post-cat a{color:inherit;}
.post-card p{font-size:18px;margin-bottom:0;}
.read-more{margin-top:auto;font-family:var(--head-font);text-transform:uppercase;letter-spacing:2px;font-size:.7rem;font-weight:700;}

/* FAQ */
.faq details{border-bottom:1px solid var(--ice);padding:18px 0;}
.faq summary{font-family:var(--head-font);text-transform:uppercase;letter-spacing:1px;font-weight:700;font-size:.88rem;cursor:pointer;list-style:none;position:relative;padding-right:34px;}
.faq summary::after{content:"+";position:absolute;right:0;top:0;font-size:1.2rem;color:var(--steel);}
.faq details[open] summary::after{content:"\2212";}
.faq details p{margin:12px 0 0;max-width:860px;}

/* Forms */
.form{display:grid;gap:16px;max-width:660px;margin:0 auto;}
.form input,.form textarea{width:100%;padding:14px 16px;border:1px solid var(--steel);font-family:var(--body-font);font-weight:300;font-size:.9rem;color:var(--ink);background:var(--white);}
.form textarea{min-height:130px;resize:vertical;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}

/* Footer - navy with photo-dark treatment */
.site-footer{background:linear-gradient(rgba(38,42,62,.72),rgba(34,37,55,.82)),var(--footer-image);background-size:cover;background-position:center;color:var(--ice);padding:80px 0 0;position:relative;}
.site-footer::before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent 0 34px,rgba(255,255,255,.028) 34px 35px),repeating-linear-gradient(60deg,transparent 0 34px,rgba(255,255,255,.028) 34px 35px),repeating-linear-gradient(120deg,transparent 0 34px,rgba(255,255,255,.028) 34px 35px);pointer-events:none;}
.site-footer>*{position:relative;}
.site-footer h2{color:var(--white);letter-spacing:3px;}
.site-footer h4{color:var(--white);margin-bottom:14px;display:flex;align-items:center;gap:16px;font-size:1.02rem;letter-spacing:1.5px;}
.site-footer h4 img{height:40px;width:auto;}
.footer-locs{display:grid;grid-template-columns:repeat(3,1fr);gap:80px 40px;margin:60px 0;}
.footer-locs p{margin-bottom:4px;font-size:18px;line-height:1.9;color:#c7d3e2;padding-left:56px;}
.footer-locs strong{color:var(--white);}
.newsletter-block{grid-column:span 2;}
.newsletter{display:block;max-width:820px;margin-top:24px;}
.newsletter input{display:block;width:100%;background:transparent;border:none;border-bottom:1px solid rgba(225,238,248,.55);color:var(--white);padding:12px 2px;margin-bottom:30px;font-family:var(--body-font);font-size:.95rem;}
.newsletter input::placeholder{color:rgba(225,238,248,.7);}
.newsletter-submit{text-align:center;}
.newsletter .btn--light{border:none;letter-spacing:2px;}
.footer-help{border-top:1px solid rgba(225,238,248,.18);padding:44px 0;}
.footer-help h3{color:var(--white);margin-bottom:12px;}
.footer-help p{max-width:960px;font-size:18px;margin-bottom:0;}
.footer-bottom{border-top:1px solid rgba(225,238,248,.28);padding:34px 0;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;font-size:.98rem;color:#c7d3e2;}
.footer-social{display:flex;gap:16px;}
.footer-social a{color:var(--ice);font-family:var(--head-font);text-transform:uppercase;letter-spacing:1px;font-size:.7rem;font-weight:700;}
.footer-social a:hover{color:var(--white);}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*{transition:none!important;animation:none!important;}}
@media (max-width:1024px){.footer-locs{grid-template-columns:repeat(2,1fr);}.newsletter-block{grid-column:span 2;}}
@media (max-width:1140px){
  .nav-toggle{display:block;}
  .nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);flex-direction:column;align-items:flex-start;gap:0;padding:10px 0;box-shadow:0 12px 24px rgba(42,45,66,.14);}
  .nav-menu>li:first-child,.nav-cta{margin-left:0;}
  .nav-menu.open{display:flex;}
  .nav-menu li{width:100%;}
  .nav-menu a{display:block;padding:12px 24px;font-size:1rem;}
  .sub-menu{position:static;box-shadow:none;display:block;padding-left:16px;min-width:0;}
}
@media (max-width:860px){
  .nav-toggle{display:block;}
  .nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);flex-direction:column;align-items:flex-start;gap:0;padding:10px 0;box-shadow:0 12px 24px rgba(42,45,66,.14);}
  .nav-menu>li:first-child,.nav-cta{margin-left:0;}
  .nav-menu.open{display:flex;}
  .nav-menu li{width:100%;}
  .nav-menu a{display:block;padding:12px 24px;}
  .sub-menu{position:static;box-shadow:none;display:block;padding-left:16px;min-width:0;}
  .hero-grid,.grid--2,.grid--3,.split{grid-template-columns:1fr;}
  .hero-buy{justify-self:start;}
  .section{padding:60px 0;}
  .form-row,.newsletter{grid-template-columns:1fr;}
  .footer-locs{grid-template-columns:1fr;}
  .newsletter-block{grid-column:span 1;}
}

/* Full-bleed right image split (seller services) */
.bleed-right{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;}
.bleed-text{padding:90px 70px 90px max(24px,calc((100vw - 1180px)/2));}
.bleed-text h2{font-size:clamp(1.55rem,2.3vw,2.3rem);}
.bleed-right>img{width:100%;height:100%;min-height:560px;object-fit:cover;}
/* Stone gray band */
.section--stone{background:#ececec;}
@media (max-width:860px){
  .bleed-right{grid-template-columns:1fr;}
  .bleed-text{padding:60px 24px;}
  .bleed-right>img{min-height:320px;}
}

/* Meritus Means: image overlaps into the navy band below */
.bleed-right--overlap{align-items:start;}
.bleed-right--overlap .bleed-text{padding-top:70px;padding-bottom:70px;}
.bleed-right--overlap>img{margin-bottom:-130px;position:relative;z-index:2;min-height:600px;}
.listing-btn{background:#eceef1;border:1px solid #eceef1;color:var(--ink);}
.listing-btn:hover{background:var(--ink);border-color:var(--ink);color:var(--white);}
@media (max-width:860px){
  .bleed-right--overlap>img{margin-bottom:0;min-height:320px;}
}

/* Listing cards overlap out of the navy band into the section below */
.listings-grid{position:relative;z-index:2;margin-bottom:0;column-gap:90px;row-gap:60px;}
.viewall-row{position:relative;z-index:2;text-align:center;margin:0 0 50px;}
.section--stone .split{position:relative;z-index:1;}
@media (max-width:860px){
  .listings-grid{margin-bottom:40px;}
  .viewall-row{margin:0 0 40px;}
}

/* Ice offset block behind an image */
.img-offset{position:relative;max-width:640px;justify-self:center;}
.img-offset::before{content:"";position:absolute;left:-100px;top:70px;right:110px;bottom:-70px;background:var(--ice);z-index:0;}
.img-offset img{position:relative;z-index:1;width:100%;}
@media (max-width:860px){.img-offset::before{left:-16px;right:40px;}}

@media (max-width:860px){.footer-locs p{padding-left:0;}}

.hours-block{grid-column:1;}
.newsletter-block .newsletter-intro{padding-left:56px;max-width:860px;}
.footer-social{display:flex;gap:26px;align-items:center;}
.footer-social svg{width:17px;height:17px;fill:#c7d3e2;transition:fill .25s ease;}
.footer-social a:hover svg{fill:var(--white);}
.footer-strip{background:#d8dadd;color:var(--ink);text-align:center;padding:15px 24px;font-size:.9rem;}
@media (max-width:860px){.hours-block{grid-column:auto;}.newsletter-block .newsletter-intro{padding-left:0;}}

.nowrap{white-space:nowrap;}
@media (max-width:480px){.nowrap{white-space:normal;}}

/* Meritus Means: laptop image with ice block offset behind top-right, no overlap */
.laptop-wrap{position:relative;align-self:center;padding-top:75px;}
.laptop-wrap::before{content:"";position:absolute;top:0;left:120px;right:0;height:55%;background:#e9eff6;z-index:0;}
.laptop-wrap img{position:relative;z-index:1;width:100%;}
.bleed-meritus{padding:40px 0 90px;}
@media (max-width:860px){.laptop-wrap{padding-top:40px;}.laptop-wrap::before{left:40px;}}

/* Fading image slider (seller services) */
.fade-slider{position:relative;overflow:hidden;min-height:560px;height:100%;}
.fade-slider img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.4s ease;}
.fade-slider img.active{opacity:1;}
.fade-slider img:nth-of-type(2){object-position:center;}
.fade-slider img:nth-of-type(3){object-position:73% center;}
@media (max-width:860px){.fade-slider{min-height:340px;}}
@media (prefers-reduced-motion:reduce){.fade-slider img{transition:none;}}

/* ===== How It Works: hero card + zigzag timeline ===== */
.process-hero{position:relative;background:#272a3f;min-height:660px;display:flex;align-items:center;overflow:hidden;}
.process-hero-img{position:absolute;top:0;right:0;bottom:0;width:50%;height:100%;object-fit:cover;}
.process-card{background:var(--white);padding:64px 72px;width:min(720px,54vw);margin:90px 0 90px max(24px,calc((100vw - 1180px)/2));position:relative;z-index:2;}
.process-card h1{font-size:clamp(2.2rem,3.8vw,3.3rem);margin:12px 0 20px;}
.process-card p{font-size:18px;}
.timeline{position:relative;max-width:1040px;margin:0 auto;padding:90px 24px;}
.timeline::before{content:"";position:absolute;top:110px;bottom:110px;left:50%;width:1px;background:#c9ced6;transform:translateX(-.5px);}
.tl-row{display:grid;grid-template-columns:1fr 64px 1fr;align-items:center;margin:34px 0;position:relative;}
.tl-label{font-family:var(--head-font);font-weight:700;font-size:1.05rem;color:var(--ink);opacity:0;transition:opacity .7s ease,transform .7s ease;}
.tl-row--right .tl-label{text-align:right;transform:translateX(-34px);}
.tl-row--left  .tl-label{grid-column:3;grid-row:1;text-align:left;transform:translateX(34px);}
.tl-dot{grid-column:2;grid-row:1;justify-self:center;width:34px;height:34px;border-radius:50%;border:1px solid #c9ced6;background:var(--white);color:var(--ink);font-size:1.1rem;line-height:1;cursor:pointer;transition:background .5s ease,color .5s ease,border-color .5s ease;z-index:2;}
.tl-card{background:#efefef;padding:30px 32px;opacity:0;transform:translateY(34px);transition:opacity .7s ease,transform .7s ease;}
.tl-row--right .tl-card{grid-column:3;grid-row:1;}
.tl-row--left  .tl-card{grid-column:1;grid-row:1;}
.tl-card h3{font-size:1.02rem;margin-bottom:10px;}
.tl-card p{margin-bottom:0;font-size:18px;line-height:1.7;}
.tl-row.inview .tl-label{opacity:1;transform:none;}
.tl-row.inview .tl-card{opacity:1;transform:none;}
.tl-row.inview .tl-dot{background:var(--ink);color:var(--white);border-color:var(--ink);}
.tl-row.collapsed .tl-card{display:none;}
.timeline-cta{text-align:center;padding:0 24px 90px;}
@media (max-width:900px){
  .process-hero{display:block;padding-bottom:0;}
  .process-hero-img{position:static;width:100%;height:auto;min-height:280px;}
  .process-card{margin:40px 24px;width:auto;padding:40px 30px;}
  .timeline::before{left:20px;}
  .tl-row{grid-template-columns:44px 1fr;margin:26px 0;}
  .tl-row--right .tl-label,.tl-row--left .tl-label{grid-column:2;grid-row:1;text-align:left;transform:translateY(20px);margin-bottom:8px;}
  .tl-dot{grid-column:1;grid-row:1;align-self:start;}
  .tl-row--right .tl-card,.tl-row--left .tl-card{grid-column:2;grid-row:2;margin-top:12px;}
}
@media (prefers-reduced-motion:reduce){.tl-label,.tl-card,.tl-dot{transition:none;}}

/* ===== Our Listings page ===== */
.listings-hero{position:relative;background:#272a3f;height:46.5vw;min-height:560px;}
.listings-hero::before{content:"";position:absolute;top:0;left:0;bottom:0;width:50%;background:var(--listings-hero-image,linear-gradient(115deg,#3a4058,#272a3f));background-size:cover;background-position:top center;}
.listings-hero-card{position:absolute;left:14.9vw;top:9.85vw;width:46.9vw;z-index:4;background:var(--white);padding:3.9vw 3.3vw;}
.listings-hero-card .eyebrow{font-size:clamp(.8rem,1.05vw,1.4rem);margin-bottom:1vw;}
.listings-hero-card h1{font-size:clamp(2rem,3.73vw,4.8rem);margin:.5vw 0 1.2vw;line-height:1.12;}
.listings-hero-card p{font-size:clamp(15px,1.26vw,27px);line-height:1.6;margin-bottom:0;}
.alerts-card{position:absolute;left:calc(14.9vw + 46.9vw);top:15.5vw;width:23.3vw;z-index:3;background:#7d9cbb;color:var(--white);padding:4.3vw 3.2vw 3.8vw;}
.alerts-card h3{font-size:clamp(1rem,1.5vw,2.2rem);margin-bottom:1.3vw;}
.alerts-card p{font-size:clamp(14px,1.17vw,24px);margin-bottom:1.2vw;}
.alerts-card form{margin-top:2.6vw;}
.alerts-card .btn{margin-top:.8vw;font-size:clamp(.7rem,.95vw,1.1rem);padding:1vw 1.4vw;}
.alerts-card h3{color:var(--white);font-size:1.05rem;margin-bottom:14px;}
.alerts-card p{font-size:16px;color:#eaf2fa;}
.alerts-card input{display:block;width:100%;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.85);color:var(--white);padding:.6vw 2px;margin-bottom:2.1vw;font-family:var(--body-font);font-size:clamp(14px,1.05vw,23px);}
.alerts-card input::placeholder{color:rgba(255,255,255,.85);}
.alerts-card .btn{border-color:var(--white);color:var(--white);width:100%;text-align:center;}
.alerts-card .btn:hover{background:var(--white);color:var(--steel);}
.region-tiles{display:grid;grid-template-columns:repeat(3,1fr);}
.region-tile{position:relative;display:flex;align-items:center;justify-content:center;min-height:270px;background:linear-gradient(rgba(31,33,50,.12),rgba(31,33,50,.22)),var(--tile-image,linear-gradient(135deg,#3a4058,#22243a));background-size:cover;background-position:center;color:var(--white);font-family:var(--head-font);font-weight:700;text-transform:uppercase;letter-spacing:2px;font-size:clamp(1.05rem,1.5vw,1.7rem);transition:filter .3s ease;}
.region-tile:hover{filter:brightness(1.25);color:var(--white);}
.region-section{padding:80px 0;}
.region-section h2{margin-bottom:50px;}
.region-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:60px 70px;max-width:1040px;}
.region-card{border:none;box-shadow:0 12px 34px rgba(20,24,44,.16);display:flex;flex-direction:column;text-align:center;background:var(--white);transition:box-shadow .3s ease,transform .3s ease;}
.region-card:hover{box-shadow:0 20px 48px rgba(20,24,44,.22);transform:translateY(-4px);}
.region-card img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.region-body{padding:34px 30px 40px;display:flex;flex-direction:column;gap:12px;align-items:center;flex:1;}
.region-body h3{font-size:1.25rem;line-height:1.35;}
.region-body h3 a{color:var(--ink);}
.region-loc{font-family:var(--head-font);letter-spacing:2px;font-size:.85rem;color:var(--steel);text-transform:uppercase;font-weight:700;}
.region-body p{font-size:18px;margin-bottom:0;}
.region-price{font-family:var(--head-font);font-size:1.35rem;font-weight:700;color:var(--ink);margin-top:8px;}
.region-body .btn{margin-top:auto;}
.faq-band{background:#272a3f;color:var(--white);display:grid;grid-template-columns:1fr 1.1fr;align-items:center;overflow:hidden;}
.faq-band-img{width:100%;height:100%;min-height:460px;background:linear-gradient(rgba(31,33,50,.25),rgba(31,33,50,.25)),url("https://static.showit.co/1200/MwqKAzm4QbOJqu9qCCGWoQ/141948/charting_your_course_for_success_with_meritus_group_business_brokerage.png") center/cover no-repeat;}
.faq-band-body{padding:80px max(24px,calc((100vw - 1180px)/2)) 80px 70px;}
.faq-band-body h2{color:var(--white);}
.faq-band-body p{color:#dfe8f2;font-size:18px;}
.faq-band-body ul{list-style:none;margin:24px 0 34px;}
.faq-band-body li{padding:7px 0 7px 22px;position:relative;font-size:18px;color:#eaf2fa;}
.faq-band-body li::before{content:"\2013";position:absolute;left:0;color:var(--steel);}
@media (max-width:980px){
  .listings-hero{height:auto;min-height:0;padding-bottom:40px;}
  .listings-hero::before{width:100%;opacity:.25;}
  .listings-hero-card{position:static;width:auto;margin:60px 24px 24px;padding:40px 32px;}
  .listings-hero-card p{font-size:17px;}
  .alerts-card{position:static;width:auto;height:auto;margin:0 24px;padding:40px 32px;}
  .alerts-card p,.alerts-card input{font-size:16px;}
  .region-tiles{grid-template-columns:repeat(2,1fr);}
  .region-tile{min-height:220px;}
  .region-grid{grid-template-columns:1fr;}
  .faq-band{grid-template-columns:1fr;}
  .faq-band-img{min-height:280px;}
  .faq-band-body{padding:60px 24px;}
}

/* ===== Business Valuations page ===== */
.val-hero{position:relative;background:var(--white);min-height:56vw;overflow:hidden;}
.val-hero::before{content:"";position:absolute;top:0;bottom:0;left:52.8vw;right:0;background:url('../images/val-hero-bg.jpg') center/cover no-repeat;background-attachment:fixed;}
.val-hero-img{position:absolute;left:49vw;top:6.1vw;width:39.1vw;height:42.9vw;object-fit:cover;z-index:2;opacity:0;transform:translateX(70px);transition:opacity .9s ease,transform .9s cubic-bezier(.22,.7,.3,1);}
.val-hero-img.inview{opacity:1;transform:none;}
.val-hero-text{position:relative;z-index:3;max-width:44vw;padding:13vw 0 8vw max(24px,calc((100vw - 1180px)/2));}
.val-hero-text .btn{margin-top:32px;}
.val-hero-text .eyebrow{letter-spacing:2px;white-space:nowrap;font-size:min(.95rem,1.15vw);}
.val-hero-text h1{margin:.8vw 0 1.4vw;font-size:min(3.3rem,calc(2.82vw - 2px));}
.val-hero-text p{font-size:18px;}
.val-sub{font-family:var(--head-font);text-transform:uppercase;letter-spacing:2px;color:var(--ink);font-size:.95rem;text-align:center;margin-top:12px;}
.valwhy-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:5.5vw;align-items:start;margin-top:64px;}
.valwhy-img{position:sticky;top:120px;}
.valwhy-img img{width:100%;height:auto;display:block;}
.reasons-acc details{border-bottom:1px solid var(--ice);padding:22px 0;}
.reasons-acc details:first-child{padding-top:0;}
.reasons-acc summary{display:flex;align-items:baseline;gap:18px;cursor:pointer;list-style:none;position:relative;padding-right:44px;}
.reasons-acc summary::-webkit-details-marker{display:none;}
.reasons-acc .num{font-family:var(--head-font);font-weight:700;letter-spacing:3px;color:var(--steel);font-size:.85rem;}
.reasons-acc summary h3{font-size:1rem;letter-spacing:1.5px;color:var(--ink);margin:0;transition:color .25s ease;}
.reasons-acc summary:hover h3,.reasons-acc details[open] summary h3{color:var(--steel);}
.reasons-acc summary::after{content:"";position:absolute;right:6px;top:2px;width:10px;height:10px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg);transition:transform .3s ease,border-color .25s ease;}
.reasons-acc details[open] summary::after{transform:rotate(-135deg);top:8px;border-color:var(--steel);}
.reasons-acc details p{font-size:18px;margin:14px 0 0;}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease;}
.reveal.inview{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}}
/* Process band with baked background + live cards */
.val-band{position:relative;background:#252739;padding:80px 0;overflow:hidden;}
.val-band::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 16% 6%,rgba(255,255,255,.07),transparent 44%),linear-gradient(115deg,transparent 54%,rgba(9,11,22,.5) 54.3%),linear-gradient(245deg,transparent 76%,rgba(9,11,22,.35) 76.3%);pointer-events:none;}
.val-band .wrap{position:relative;}
.val-band-card{background:var(--white);padding:64px 68px;}
.steps--2col{display:grid;grid-template-columns:1fr 1fr;gap:6px 58px;}
.steps--2col .step{padding-bottom:30px;}
.steps--2col .step::before{display:none;}
.band-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--ice);margin-top:22px;padding-top:30px;flex-wrap:nowrap;}
.band-cta p{margin:0;white-space:nowrap;font-size:min(15.5px,1.31vw);}
.band-cta .btn{flex-shrink:0;white-space:nowrap;}
.val-band-card h2{margin-bottom:18px;text-align:center;}
.val-band-card>p{font-size:18px;margin-bottom:44px;text-align:center;max-width:720px;margin-left:auto;margin-right:auto;}
.steps{position:relative;padding-left:0;}
.step{position:relative;padding:0 0 34px 74px;}
.step::before{content:"";position:absolute;left:23px;top:8px;bottom:-8px;width:2px;background:var(--ice);}
.step:last-child::before{display:none;}
.step-num{position:absolute;left:0;top:0;width:48px;height:48px;border-radius:50%;background:var(--ink);color:var(--white);display:flex;align-items:center;justify-content:center;font-family:var(--head-font);font-weight:700;font-size:1rem;z-index:1;}
.step h3{font-size:1rem;letter-spacing:1.5px;color:var(--ink);margin:10px 0 8px;}
.step p{font-size:18px;margin-bottom:0;}
.val-form{position:sticky;top:110px;background:#7d9cbb;color:var(--white);padding:46px 42px;}
.val-form h3{color:var(--white);font-size:1.1rem;margin-bottom:12px;}
.val-form p{font-size:16px;color:#f0f6fb;margin-bottom:22px;}
.val-form input,.val-form textarea{display:block;width:100%;background:#f0f0f0;border:none;color:var(--ink);padding:13px 14px;margin-bottom:14px;font-family:var(--body-font);font-size:15px;}
.val-form textarea{min-height:130px;resize:vertical;}
.val-captcha{display:flex;align-items:center;gap:12px;}
.val-captcha span{font-size:15px;}
.val-captcha input{width:64px;margin-bottom:0;}
.val-form .btn{border-color:var(--white);color:var(--white);margin-top:18px;font-size:.72rem;padding:13px 26px;}
.val-form .btn:hover{background:var(--white);color:#7d9cbb;}
.val-form .trust{font-size:13.5px;color:#eaf2fa;margin:14px 0 0;letter-spacing:.4px;}
/* Why choose */
.choose-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px 7vw;max-width:1040px;margin:52px auto 0;}
.choose-card{text-align:center;}
.choose-card h3{color:var(--steel);font-size:1rem;letter-spacing:1.5px;margin-bottom:10px;}
.choose-card p{font-size:18px;margin-bottom:0;}
/* Buildings strip: static image flush to FAQ band */
.val-strip{display:block;width:100%;height:auto;}
/* FAQ on navy with ice panel */
.val-faq{background:#272a3f;padding:80px 0;}
.val-faq h2{color:var(--white);text-align:center;}
.faq-panel{background:#dfe9f4;max-width:1120px;margin:50px auto 0;padding:48px 56px;}
.faq-panel details{border-bottom:1px solid rgba(42,45,66,.18);padding:26px 0;}
.faq-panel details:last-child{border-bottom:none;}
.faq-panel summary{font-family:var(--head-font);text-transform:uppercase;letter-spacing:1px;font-weight:700;font-size:1rem;color:var(--ink);cursor:pointer;list-style:none;position:relative;padding-right:44px;transition:color .25s ease;}
.faq-panel summary:hover{color:var(--steel);}
.faq-panel details[open] summary{color:var(--steel);}
.faq-panel summary::after{content:"";position:absolute;right:6px;top:2px;width:10px;height:10px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg);transition:transform .3s ease,border-color .25s ease;}
.faq-panel details[open] summary::after{transform:rotate(-135deg);top:8px;border-color:var(--steel);}
.faq-panel details p{margin:14px 0 0;font-size:18px;}
.faq-more{text-align:center;color:#c9d8e8;font-size:17px;margin:34px 0 0;}
.faq-more a{color:var(--white);text-decoration:underline;text-underline-offset:3px;}
/* Contact band */
.val-contact{background:var(--white);color:var(--ink);padding:80px 0;}
.val-contact .split{align-items:start;}
.val-contact h2{color:var(--ink);}
.val-contact p{color:var(--ink);font-size:18px;}
.val-contact-info{display:flex;gap:34px;flex-wrap:wrap;margin-top:26px;}
.val-contact-info a{color:var(--white);font-family:var(--head-font);letter-spacing:1.5px;text-transform:uppercase;font-size:.92rem;border-bottom:2px solid var(--steel);padding-bottom:4px;}
.val-contact-info a:hover{color:var(--ice);}
.val-contact-form input,.val-contact-form textarea{display:block;width:100%;background:var(--gray);border:1px solid #e4e7ec;color:var(--ink);padding:14px 15px;margin-bottom:18px;font-family:var(--body-font);font-size:16px;}
.val-contact-form textarea{min-height:150px;resize:vertical;}
.val-contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.val-contact-form .btn--chip{float:right;margin-top:16px;}
@media (max-width:980px){
  .val-hero{min-height:0;}
  .val-hero::before{display:none;}
  .val-hero-img{position:static;width:100%;height:auto;opacity:1;transform:none;}
  .val-hero-text{max-width:none;padding:60px 24px 30px;}
  .val-hero-text .eyebrow{white-space:normal;font-size:.85rem;}
  .val-hero-text h1{font-size:min(2.2rem,calc(6.4vw - 5px));}
  .valwhy-grid,.choose-grid{grid-template-columns:1fr;}
  .valwhy-img{position:static;}
  .val-band{padding:60px 0;}
  .val-band-card{padding:38px 28px;}
  .steps--2col{grid-template-columns:1fr;}
  .step{padding-left:62px;}
  .step-num{width:42px;height:42px;}
  .band-cta{flex-direction:column;align-items:flex-start;}
  .band-cta p{white-space:normal;font-size:17px;}
  .val-contact .split{grid-template-columns:1fr;}
}

@media (prefers-reduced-motion:reduce){
  .val-hero-img{opacity:1;transform:none;transition:none;}
  .val-hero::before{background-attachment:scroll;}
}

/* One-line lock: Why Choose heading */
.h2-oneline{white-space:nowrap;font-size:min(2.32rem,3.02vw);}
@media (max-width:980px){.h2-oneline{white-space:normal;font-size:1.6rem;}}

/* One-line lock: Why Choose lead */
.lead-oneline{white-space:nowrap;font-size:min(18px,1.55vw);}
@media (max-width:980px){.lead-oneline{white-space:normal;font-size:17px;}}

/* Scrolling logo marquee (valuations) - homepage sizing */
.logo-marquee{overflow:hidden;background:var(--white);padding:80px 0;max-width:1180px;margin:0 auto;position:relative;}
.logo-track{display:flex;align-items:center;gap:90px;width:max-content;animation:logoscroll 30s linear infinite;}
.logo-track img{height:auto;object-fit:contain;flex:0 0 auto;}
@keyframes logoscroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.logo-marquee:hover .logo-track{animation-play-state:paused;}
@media (prefers-reduced-motion:reduce){.logo-track{animation:none;}}


/* Valuations page: 100px section rhythm */
.page-val .section,.page-val .val-band,.page-val .val-faq,.page-val .val-contact{padding-top:100px;padding-bottom:100px;}
.page-val .logo-marquee{padding-top:80px;padding-bottom:80px;}
@media (max-width:980px){.page-val .section,.page-val .val-band,.page-val .val-faq,.page-val .val-contact{padding-top:60px;padding-bottom:60px;}
.page-val .logo-marquee{padding-top:50px;padding-bottom:50px;}}

/* Two-line lock: contact heading */
.h2-contact{font-size:min(2.56rem,3.4vw);line-height:1.25;}
@media (max-width:980px){.h2-contact{font-size:1.7rem;}}

/* ===== Who We Are page ===== */
.about-hero{position:relative;background:linear-gradient(rgba(31,33,50,.68),rgba(31,33,50,.68)),var(--about-hero-image,linear-gradient(115deg,#3a4058,#22243a)) center/cover no-repeat;color:var(--white);}
.about-hero .wrap{padding-top:120px;padding-bottom:120px;}
.about-hero .eyebrow{color:#8fb3d4;}
.about-hero h1{color:var(--white);font-size:min(3.3rem,calc(2.9vw - 2px));}
.about-hero .wrap{text-align:center;}
.about-hero p{max-width:760px;margin-left:auto;margin-right:auto;font-size:18px;color:var(--white);}
.about-hero .btn{margin-top:32px;}
.about-intro h2{text-align:center;}
.about-intro .lead{text-align:center;}
.checker{display:grid;grid-template-columns:1fr 1.54fr;gap:2vw;max-width:1180px;margin:0 auto 2vw;padding:0 24px;}
.checker--flip{grid-template-columns:1.54fr 1fr;}
.checker-card{padding:54px 48px;display:flex;flex-direction:column;justify-content:center;}
.checker-card--ice{background:var(--ice);}
.checker-card--navy{background:#272a3f;color:var(--white);}
.checker-card--navy h3{color:var(--white);}
.checker-card h3{font-size:clamp(1.1rem,1.5vw,1.5rem);margin-bottom:14px;}
.checker-card p{font-size:18px;margin-bottom:0;}
.checker-card--navy p{color:#dfe8f2;}
.about-choose{display:grid;grid-template-columns:1fr 1.1fr;gap:5.5vw;align-items:stretch;}
.about-choose img{width:100%;height:100%;object-fit:cover;display:block;}
.choose-item{margin-bottom:26px;}
.choose-item h3{font-family:var(--body-font);text-transform:none;letter-spacing:0;font-weight:600;font-size:18px;color:var(--ink);margin-bottom:4px;}
.choose-item p{font-size:18px;margin-bottom:0;}
.about-choose .btn{margin-top:14px;}
.about-quote{text-align:center;max-width:980px;margin:0 auto;padding:0 24px;}
.about-quote h3{font-family:var(--body-font);text-transform:none;letter-spacing:0;font-weight:700;font-size:20px;margin-bottom:22px;}
.about-quote p{font-size:18px;}
.about-quote .attr{font-style:italic;font-weight:700;margin-top:24px;}
@media (max-width:980px){
  .checker,.checker--flip{grid-template-columns:1fr;gap:20px;margin-bottom:20px;}
  .about-choose{grid-template-columns:1fr;}
  .about-hero .wrap{padding-top:70px;padding-bottom:70px;}
  .about-hero h1{font-size:1.9rem;}
}

/* About elevation */
.stat-band{background:#272a3f;color:var(--white);}
.stat-band .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding-top:54px;padding-bottom:54px;}
.stat{text-align:center;}
.stat b{display:block;font-family:var(--head-font);font-weight:700;text-transform:uppercase;font-size:clamp(1.05rem,1.5vw,1.5rem);letter-spacing:1px;margin-bottom:6px;color:var(--white);}
.stat span{font-size:15.5px;color:#c9d8e8;letter-spacing:.4px;}
.checker-card{position:relative;transition:transform .3s ease;}
.checker-card:hover{transform:translateY(-4px);}
.checker-tag{font-family:var(--head-font);text-transform:uppercase;letter-spacing:2.5px;font-weight:700;font-size:.78rem;color:var(--steel);margin-bottom:12px;}
.checker-card--navy .checker-tag{color:#8fb3d4;}
.principals{background:var(--gray);}
.principals h2{text-align:center;}
.principals .lead{text-align:center;}
.principal-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:940px;margin:56px auto 0;}
.principal{background:var(--white);text-align:center;padding:0 0 40px;box-shadow:0 12px 34px rgba(20,24,44,.10);}
.principal-photo{height:360px;background:linear-gradient(160deg,#2a2d42,#3a4058);display:flex;align-items:center;justify-content:center;color:var(--ice);font-family:var(--head-font);font-weight:700;font-size:3rem;letter-spacing:4px;overflow:hidden;}
.principal-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;}
.principal h3{font-size:1.15rem;margin:28px 0 4px;}
.principal .role{font-family:var(--head-font);text-transform:uppercase;letter-spacing:2px;font-size:.8rem;color:var(--steel);font-weight:700;}
.principal p{font-size:17px;padding:16px 34px 0;margin:0;}
.quote-band{background:var(--white);}
.quote-band .about-quote{position:relative;padding-top:26px;}
.quote-band .about-quote::before{content:"\201C";position:absolute;top:-30px;left:50%;transform:translateX(-50%);font-family:var(--head-font);font-size:7rem;line-height:1;color:var(--steel);opacity:.45;}
.about-cta{background:#272a3f;color:var(--white);text-align:center;}
.about-cta h2{color:var(--white);}
.about-cta p{color:#dfe8f2;font-size:18px;max-width:640px;margin:0 auto 34px;}
@media (max-width:980px){
  .stat-band .wrap{grid-template-columns:1fr 1fr;gap:26px;}
  .principal-grid{grid-template-columns:1fr;}
}

.h2-oneline--l{white-space:nowrap;font-size:min(2.02rem,2.82vw);}
@media (max-width:980px){.h2-oneline--l{white-space:normal;font-size:1.6rem;}}

/* ===== Location pages ===== */
.loc-hero{position:relative;background:#272a3f;height:47.3vw;min-height:540px;}
.loc-hero::before{content:"";position:absolute;top:0;right:0;bottom:0;width:50%;background:var(--loc-hero-image,linear-gradient(115deg,#3a4058,#22243a)) center/cover no-repeat;}
.loc-hero-card{position:absolute;left:14.9vw;top:8vw;width:46.9vw;background:var(--white);padding:3.5vw 3.3vw;z-index:2;}
.loc-hero-card .eyebrow{letter-spacing:3px;font-size:clamp(.7rem,.85vw,1rem);}
.loc-hero-card h1{font-size:clamp(1.6rem,2.1vw,2.7rem);margin:.6vw 0 1.2vw;line-height:1.25;}
.loc-hero-card p{font-size:18px;margin-bottom:0;}
.loc-hero-card .btn{margin-top:2vw;}
.loc-stats{background:var(--white);color:var(--ink);}
.loc-stats h2{color:var(--ink);text-align:center;max-width:900px;margin:0 auto;}
.loc-stats .eyebrow{text-align:center;}
.loc-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:44px;margin:64px auto 0;max-width:1120px;}
.loc-stat{text-align:center;}
.loc-stat b{display:block;font-family:var(--head-font);font-weight:700;font-size:clamp(2.2rem,3.4vw,3.4rem);color:var(--steel);line-height:1;margin-bottom:14px;}
.loc-stat span{font-size:16.5px;color:var(--ink);line-height:1.6;display:block;}
.loc-stats .center{margin-top:60px;}
.loc-why{display:grid;grid-template-columns:minmax(0,1fr) 42vw;gap:5vw;align-items:stretch;}
.loc-why-copy{padding-left:max(24px,calc((100vw - 1180px)/2));}
.loc-why-img{position:relative;margin-top:36px;}
.loc-why-img::before{content:"";position:absolute;top:-36px;left:14%;right:0;height:240px;background:var(--ice);z-index:0;}
.loc-why-img img{position:relative;width:100%;height:100%;object-fit:cover;display:block;z-index:1;}
@media (max-width:980px){.loc-why-img::before{display:none;}.loc-why-copy{padding-left:24px;padding-right:24px;}}
.loc-features{display:grid;grid-template-columns:1fr 1fr;gap:30px 34px;margin-top:40px;}
.loc-feature{position:relative;padding-top:16px;}
.loc-feature::before{content:"";position:absolute;top:0;left:0;width:44px;height:3px;background:var(--steel);}
.loc-feature h3{font-size:1rem;margin-bottom:8px;}
.loc-feature p{font-size:17px;margin:0;}
.loc-process{background:var(--gray);}
.loc-process h2{text-align:center;}
.loc-process .eyebrow{text-align:center;}
.loc-process .lead{text-align:center;}
.loc-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:34px;margin-top:64px;position:relative;}
.loc-steps::before{content:"";position:absolute;top:24px;left:10%;right:10%;height:2px;background:#dfe5ec;}
.loc-step{text-align:center;position:relative;}
.loc-step .n{width:48px;height:48px;border-radius:50%;background:var(--ink);color:var(--white);display:flex;align-items:center;justify-content:center;font-family:var(--head-font);font-weight:700;margin:0 auto 18px;position:relative;z-index:1;}
.loc-step h3{font-size:1rem;margin-bottom:8px;}
.loc-step p{font-size:16.5px;margin:0;}
.loc-adv{background:var(--white);display:grid;grid-template-columns:40vw 1fr;padding:0;}
.loc-adv-photo{background:var(--loc-adv-image,linear-gradient(160deg,#2a2d42,#3a4058)) center/cover no-repeat;min-height:640px;}
.loc-adv-body{padding:80px 24px 80px 6vw;max-width:860px;}
.loc-adv-body .eyebrow{letter-spacing:3px;}
.loc-adv-body h2{font-weight:400;}
.loc-adv-body h2 strong{font-weight:700;}
.loc-quote{background:var(--ice);padding:40px 44px;margin:38px 0 34px;}
.loc-quote p{font-size:18px;font-style:italic;margin-bottom:20px;}
.loc-quote .src{font-family:var(--head-font);text-transform:uppercase;letter-spacing:1.5px;font-size:.78rem;color:var(--steel);font-weight:700;font-style:normal;}
.loc-sector-label{font-family:var(--head-font);text-transform:uppercase;letter-spacing:2px;font-size:.85rem;font-weight:700;color:var(--ink);margin:0 0 16px;}
.loc-sectors{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 30px;}
.loc-sector{background:var(--ice);padding:12px 20px;font-size:15.5px;letter-spacing:.3px;}
.loc-cities{font-size:17px;color:var(--steel);}
.loc-adv-body .btn{margin-top:30px;}
.loc-badges{border-top:1px solid var(--ice);border-bottom:1px solid var(--ice);}
.loc-badges .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;padding-top:80px;padding-bottom:80px;text-align:center;}
.loc-badge{font-family:var(--head-font);text-transform:uppercase;letter-spacing:2px;font-weight:700;font-size:.95rem;color:var(--ink);}
.loc-cta{background:var(--white);color:var(--ink);}
.loc-cta .split{align-items:center;}
.loc-cta h2{color:var(--ink);}
.loc-cta p{color:var(--ink);font-size:18px;}
.loc-form{background:transparent;padding:0;}
.loc-form input,.loc-form textarea{display:block;width:100%;background:var(--gray);border:1px solid #e4e7ec;color:var(--ink);padding:14px 15px;margin-bottom:16px;font-family:var(--body-font);font-size:16px;}
.loc-form textarea{min-height:130px;resize:vertical;}
.loc-form .btn--chip{width:100%;text-align:center;}
.loc-faq{background:#252739;position:relative;overflow:hidden;}
.loc-faq::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 16% 6%,rgba(255,255,255,.07),transparent 44%),linear-gradient(115deg,transparent 54%,rgba(9,11,22,.5) 54.3%),linear-gradient(245deg,transparent 76%,rgba(9,11,22,.35) 76.3%);pointer-events:none;}
.loc-faq>*{position:relative;}
.loc-faq h2{text-align:center;color:var(--white);}
@media (max-width:980px){
  .loc-hero{height:auto;min-height:0;padding-bottom:40px;}
  .loc-hero::before{position:static;display:block;width:100%;height:260px;}
  .loc-hero-card{position:static;width:auto;margin:24px 24px 0;padding:38px 28px;}
  .loc-stat-grid{grid-template-columns:1fr 1fr;gap:34px;}
  .loc-why,.loc-cta .split{grid-template-columns:1fr;}
  .loc-adv{grid-template-columns:1fr;}
  .loc-adv-photo{min-height:280px;}
  .loc-adv-body{padding:60px 24px;}
  .loc-steps{grid-template-columns:1fr;gap:26px;}
  .loc-steps::before{display:none;}
  .loc-features{grid-template-columns:1fr;}
  .loc-badges .wrap{grid-template-columns:1fr 1fr;}
}

/* One-line eyebrow lock (loc why column) */
.eyebrow-oneline{white-space:nowrap;font-size:min(12.3px,calc(1.32vw - 2.8px));}
@media (max-width:980px){.eyebrow-oneline{white-space:normal;font-size:.85rem;}}

/* Location conversion polish */
.loc-steps-cta{text-align:center;margin-top:56px;}
.loc-steps-cta p{font-size:18px;margin-bottom:22px;}
.faq-more{text-align:center;color:#c9d8e8;font-size:17px;margin:34px auto 0;}
.faq-more a{color:var(--white);font-weight:600;border-bottom:1px solid var(--steel);}


/* ============ LISTING DETAIL PAGE (template) ============ */
.lst-crumbs{background:var(--gray);border-bottom:1px solid #e7ebef;padding:14px 0;font-size:.82rem;letter-spacing:.6px;}
.lst-crumbs a{color:var(--ink);opacity:.7;}
.lst-crumbs a:hover{opacity:1;}
.lst-crumbs span{color:var(--ink);opacity:.6;}

.lst-hero{display:grid;grid-template-columns:1fr 1fr;}
.lst-hero-copy{background:#272a3f;color:var(--white);display:flex;flex-direction:column;justify-content:center;padding:78px 48px 78px min(calc((100vw - 1180px)/2 + 24px),80px);}
.lst-hero-copy .eyebrow{color:var(--ice);opacity:.9;}
.lst-hero-copy h1{color:var(--white);font-size:clamp(1.32rem,2.05vw,1.68rem);line-height:1.28;letter-spacing:1px;margin-bottom:20px;}
.lst-loc{font-family:var(--head-font);text-transform:uppercase;letter-spacing:2.4px;font-size:.82rem;font-weight:700;color:var(--ice);margin-bottom:26px;}
.lst-lead{color:rgba(255,255,255,.86);font-size:18px;line-height:1.8;max-width:36em;margin-bottom:34px;}
.lst-price{border-top:1px solid rgba(255,255,255,.22);padding-top:26px;margin-bottom:32px;}
.lst-price .lbl{display:block;font-family:var(--head-font);text-transform:uppercase;letter-spacing:2.4px;font-size:.7rem;font-weight:700;color:var(--steel);margin-bottom:6px;}
.lst-price .amt{display:block;font-family:var(--head-font);font-size:clamp(2rem,3.4vw,2.8rem);font-weight:700;line-height:1;letter-spacing:1px;color:var(--white);}
.lst-hero-btns{display:flex;gap:14px;flex-wrap:wrap;}
.lst-hero-btns .btn{padding:18px 28px;white-space:nowrap;}
.lst-hero-img{min-height:560px;background-position:center;background-size:cover;background-repeat:no-repeat;}

.lst-stats{background:var(--ice);}
.lst-stats-in{display:grid;grid-template-columns:repeat(5,1fr);}
.lst-stat{padding:38px 26px;border-right:1px solid rgba(42,45,66,.13);}
.lst-stat:last-child{border-right:none;}
.lst-stat .lbl{display:block;font-family:var(--head-font);text-transform:uppercase;letter-spacing:2px;font-size:.68rem;font-weight:700;color:var(--steel);margin-bottom:9px;}
.lst-stat .val{font-family:var(--head-font);text-transform:uppercase;font-size:1.42rem;font-weight:700;letter-spacing:.5px;line-height:1.2;color:var(--ink);}

.lst-detail{padding:80px 0;}
.lst-grid{display:grid;grid-template-columns:1fr 400px;gap:64px;align-items:start;}
.lst-block{margin-bottom:52px;}
.lst-block:last-child{margin-bottom:0;}
.lst-block h2{white-space:nowrap;font-size:min(1.3rem,2.9vw);line-height:1.32;letter-spacing:.8px;margin-bottom:0;}
.lst-rule{width:56px;height:2px;background:var(--steel);margin:24px 0;}
.lst-ck{list-style:none;margin:0;}
.lst-ck li{position:relative;padding-left:34px;margin-bottom:15px;line-height:1.7;}
.lst-ck li:last-child{margin-bottom:0;}
.lst-ck li::before{content:"";position:absolute;left:0;top:.62em;width:15px;height:8px;border-left:2px solid var(--steel);border-bottom:2px solid var(--steel);transform:rotate(-45deg);}
.lst-fitgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:#e4e7ec;}
.lst-fit{background:var(--gray);padding:26px 24px;}
.lst-fit h4{font-size:.82rem;letter-spacing:1.6px;margin-bottom:9px;}
.lst-fit p{font-size:18px;line-height:1.7;opacity:.82;margin:0;}

.lst-rail{position:sticky;top:120px;}
.lst-broker{background:#272a3f;color:var(--white);padding:30px;display:flex;gap:18px;align-items:center;}
.lst-broker img{width:74px;height:74px;object-fit:cover;object-position:center 22%;flex:0 0 74px;}
.lst-broker .nm{font-family:var(--head-font);text-transform:uppercase;font-size:.95rem;letter-spacing:1.6px;font-weight:700;line-height:1.3;margin:0;}
.lst-broker .rl{font-family:var(--head-font);text-transform:uppercase;font-size:.72rem;letter-spacing:1.8px;font-weight:700;color:var(--steel);line-height:1.3;margin:8px 0;}
.lst-broker a{display:inline-block;color:var(--white);font-size:18px;font-weight:500;line-height:1.3;letter-spacing:.3px;}
.lst-broker a:hover{color:var(--ice);}
.lst-formbox{background:var(--gray);border:1px solid #e4e7ec;border-top:none;padding:32px 30px 34px;}
.lst-formbox h3{font-size:1.05rem;letter-spacing:1.4px;margin-bottom:8px;}
.lst-formbox .sub{font-size:18px;line-height:1.65;opacity:.75;margin-bottom:24px;}
.lst-stepbar{display:flex;gap:6px;margin-bottom:22px;}
.lst-stepbar i{flex:1;height:3px;background:#e4e7ec;display:block;}
.lst-stepbar i.on{background:var(--steel);}
.lst-fld{margin-bottom:16px;}
.lst-fld label{display:block;font-family:var(--head-font);text-transform:uppercase;font-size:.68rem;letter-spacing:1.8px;font-weight:700;color:var(--ink);margin-bottom:7px;}
.lst-fld input,.lst-fld select,.lst-fld textarea{width:100%;font-family:var(--body-font);font-weight:300;font-size:17px;padding:14px 15px;border:1px solid #e4e7ec;background:var(--white);color:var(--ink);border-radius:0;-webkit-appearance:none;appearance:none;}
.lst-fld select{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 9'%3E%3Cpath fill='none' stroke='%237090ae' stroke-width='2' d='M1 1l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;background-size:13px;padding-right:40px;}
.lst-fld textarea{min-height:88px;resize:vertical;line-height:1.6;}
.lst-fld .opt{font-family:var(--body-font);text-transform:none;letter-spacing:0;font-weight:300;font-size:.78rem;opacity:.6;margin-left:5px;}
.lst-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.lst-consent{display:flex;gap:11px;align-items:flex-start;margin:20px 0 22px;font-size:.85rem;line-height:1.6;}
.lst-consent input{width:17px;height:17px;margin-top:4px;flex:0 0 17px;accent-color:var(--steel);}
.lst-btn-full{display:block;width:100%;text-align:center;padding:19px 20px;}
.lst-step2{display:none;}
.lst-step2.on{display:block;}
.lst-stepnote{font-size:.8rem;line-height:1.55;opacity:.65;margin:14px 0 0;text-align:center;}
.lst-back{background:none;border:none;font-family:var(--body-font);font-size:.82rem;color:var(--steel);cursor:pointer;padding:0;margin-top:14px;text-decoration:underline;}
.lst-thanks{display:none;text-align:center;padding:14px 0;}
.lst-thanks.on{display:block;}
.lst-thanks p{font-size:18px;line-height:1.7;opacity:.8;margin:12px 0 0;}

.lst-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(255,255,255,.14);}
.lst-stp{background:#252739;padding:32px 28px;}
.lst-stp .n{display:block;font-family:var(--head-font);font-size:.78rem;letter-spacing:2.4px;font-weight:700;color:var(--steel);margin-bottom:14px;}
.lst-stp h4{font-size:.92rem;letter-spacing:1.4px;margin-bottom:11px;line-height:1.35;color:var(--white);}
.lst-stp p{font-size:18px;line-height:1.7;color:rgba(255,255,255,.76);margin:0;}

.lst-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.lst-card{border:1px solid #e4e7ec;background:var(--white);display:flex;flex-direction:column;color:var(--ink);transition:border-color .25s ease,transform .25s ease;}
.lst-card:hover{border-color:var(--steel);transform:translateY(-4px);color:var(--ink);}
.lst-card .ph{aspect-ratio:16/10;background:#dfe6ee center/cover no-repeat;}
.lst-card .bd{padding:26px 24px 28px;flex:1;display:flex;flex-direction:column;}
.lst-card .loc{font-family:var(--head-font);text-transform:uppercase;font-size:.68rem;letter-spacing:2px;font-weight:700;color:var(--steel);margin-bottom:11px;}
.lst-card h3{font-size:.98rem;line-height:1.4;letter-spacing:1px;margin-bottom:14px;}
.lst-card .pr{font-family:var(--head-font);font-size:1.2rem;font-weight:700;letter-spacing:.6px;margin-top:auto;}
.lst-card .btn{display:block;text-align:center;margin-top:20px;padding:15px 20px;font-size:.7rem;letter-spacing:2.4px;}
.lst-card:hover .btn{background:var(--ink);color:var(--white);}

.lst-mbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:90;background:#272a3f;padding:12px 16px;align-items:center;justify-content:space-between;gap:12px;}
.lst-mbar .p{font-family:var(--head-font);text-transform:uppercase;color:var(--white);font-size:1.02rem;font-weight:700;letter-spacing:.6px;}
.lst-mbar .btn{padding:14px 22px;font-size:.68rem;}

@media (max-width:1080px){
  .lst-grid{grid-template-columns:1fr;gap:52px;}
  .lst-rail{position:static;}
  .lst-stats-in{grid-template-columns:repeat(3,1fr);}
  .lst-stat{border-bottom:1px solid rgba(42,45,66,.13);}
  .lst-stat:nth-child(3n){border-right:none;}
  .lst-steps{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:900px){
  .lst-hero{grid-template-columns:1fr;}
  .lst-hero-copy{order:2;padding:64px 24px;}
  .lst-hero-img{order:1;min-height:340px;}
  .lst-cards{grid-template-columns:1fr;}
  .lst-fitgrid{grid-template-columns:1fr;}
}
@media (max-width:620px){
  .lst-detail{padding:60px 0;}
  .lst-stats-in{grid-template-columns:repeat(2,1fr);}
  .lst-stat:nth-child(3n){border-right:1px solid rgba(42,45,66,.13);}
  .lst-stat:nth-child(2n){border-right:none;}
  .lst-steps{grid-template-columns:1fr;}
  .lst-hero-btns .btn{width:100%;text-align:center;}
  .lst-mbar{display:flex;}
  body.has-mbar{padding-bottom:72px;}
}

.lst-faq{background:var(--white);color:var(--ink);}
.lst-faq h2{color:var(--ink);}
.lst-faq .faq-panel summary{color:var(--ink);}
.lst-faq .faq-panel summary:hover{color:var(--steel);}
.lst-faq .faq-panel details[open] summary{color:var(--steel);}
.lst-faq .faq-panel details p{color:var(--ink);}

.lst-stats-in--6{grid-template-columns:repeat(6,1fr);}
.lst-stats-in--6 .lst-stat{padding:38px 18px;}
.lst-stats-in--6 .lst-stat .val{font-size:1.28rem;}
@media (max-width:1080px){.lst-stats-in--6{grid-template-columns:repeat(3,1fr);}}
@media (max-width:620px){.lst-stats-in--6{grid-template-columns:repeat(2,1fr);}}

.lst-stats-in--4{grid-template-columns:repeat(4,1fr);}
@media (max-width:1080px){.lst-stats-in--4{grid-template-columns:repeat(2,1fr);}.lst-stats-in--4 .lst-stat:nth-child(2n){border-right:none;}}
@media (max-width:620px){.lst-stats-in--4{grid-template-columns:repeat(2,1fr);}}


/* ============ PRIVATE LISTING PAGE (minimal template) ============ */
.lst-private .lst-detail{padding:80px 0;}
.lst-note{list-style:none;margin:0;}
.lst-note li{position:relative;padding-left:34px;margin-bottom:18px;line-height:1.7;}
.lst-note li:last-child{margin-bottom:0;}
.lst-note li::before{content:"";position:absolute;left:0;top:.62em;width:15px;height:8px;border-left:2px solid var(--steel);border-bottom:2px solid var(--steel);transform:rotate(-45deg);}


/* ============ BUYER FAQ / INSIGHTS FEED ============ */
.bf-hero{display:grid;grid-template-columns:1fr 1fr;}
.bf-hero-copy{background:#272a3f;color:var(--white);display:flex;flex-direction:column;justify-content:center;padding:88px 48px 88px min(calc((100vw - 1180px)/2 + 24px),80px);}
.bf-hero-copy .eyebrow{color:var(--ice);opacity:.9;}
.bf-hero-copy h1{color:var(--white);font-size:clamp(1.9rem,3.4vw,3rem);line-height:1.14;letter-spacing:1px;margin-bottom:22px;}
.bf-hero-copy p{color:rgba(255,255,255,.86);font-size:18px;line-height:1.8;max-width:34em;margin-bottom:34px;}
.bf-hero-btns{display:flex;gap:14px;flex-wrap:wrap;}
.bf-hero-btns .btn{padding:18px 28px;white-space:nowrap;}
.bf-hero-img{min-height:480px;background-position:center;background-size:cover;background-repeat:no-repeat;}

.bf-feature{display:grid;grid-template-columns:1.15fr 1fr;gap:0;border:1px solid #e4e7ec;background:var(--white);}
.bf-feature .ph{min-height:400px;background:#dfe6ee center/cover no-repeat;}
.bf-feature .bd{padding:52px 52px;display:flex;flex-direction:column;justify-content:center;}
.bf-feature h2{font-size:clamp(1.3rem,2.1vw,1.75rem);line-height:1.28;letter-spacing:.6px;margin-bottom:18px;}
.bf-feature p{font-size:18px;line-height:1.8;margin-bottom:26px;}

.bf-tag{display:inline-block;font-family:var(--head-font);text-transform:uppercase;font-size:.66rem;letter-spacing:2.2px;font-weight:700;color:var(--steel);margin-bottom:14px;}
.bf-more{display:inline-flex;align-items:center;gap:9px;font-family:var(--head-font);text-transform:uppercase;font-size:.7rem;letter-spacing:2.2px;font-weight:700;color:var(--ink);}
.bf-more::after{content:"";width:9px;height:9px;border-top:2px solid var(--steel);border-right:2px solid var(--steel);transform:rotate(45deg);transition:transform .25s ease;}
.bf-card:hover .bf-more::after,.bf-feature:hover .bf-more::after{transform:rotate(45deg) translate(3px,-3px);}

.bf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.bf-card{border:1px solid #e4e7ec;background:var(--white);display:flex;flex-direction:column;color:var(--ink);transition:border-color .25s ease,transform .25s ease;}
.bf-card:hover{border-color:var(--steel);transform:translateY(-4px);color:var(--ink);}
.bf-card .ph{aspect-ratio:16/10;background:#dfe6ee center/cover no-repeat;}
.bf-card .bd{padding:28px 26px 30px;flex:1;display:flex;flex-direction:column;}
.bf-card h3{font-size:1rem;line-height:1.42;letter-spacing:.7px;margin-bottom:13px;}
.bf-card p{font-size:16.5px;line-height:1.72;opacity:.84;margin-bottom:22px;}
.bf-card .bf-more{margin-top:auto;}

.bf-pager{display:flex;justify-content:center;margin-top:56px;}

@media (max-width:1080px){
  .bf-grid{grid-template-columns:repeat(2,1fr);}
  .bf-feature{grid-template-columns:1fr;}
  .bf-feature .ph{min-height:300px;}
  .bf-feature .bd{padding:42px 34px;}
}
@media (max-width:900px){
  .bf-hero{grid-template-columns:1fr;}
  .bf-hero-copy{order:2;padding:64px 24px;}
  .bf-hero-img{order:1;min-height:300px;}
}
@media (max-width:700px){
  .bf-grid{grid-template-columns:1fr;}
  .bf-hero-btns .btn{width:100%;text-align:center;}
}


/* ============ CONTACT PAGE ============ */
.ct-hero{display:grid;grid-template-columns:1fr 1fr;}
.ct-hero-copy{background:#272a3f;color:var(--white);display:flex;flex-direction:column;justify-content:center;padding:88px 48px 88px min(calc((100vw - 1180px)/2 + 24px),80px);}
.ct-hero-copy .eyebrow{color:var(--ice);opacity:.9;}
.ct-hero-copy h1{color:var(--white);font-size:clamp(1.9rem,3.4vw,3rem);line-height:1.14;letter-spacing:1px;margin-bottom:22px;}
.ct-hero-copy p{color:rgba(255,255,255,.86);font-size:18px;line-height:1.8;max-width:34em;margin-bottom:32px;}
.ct-quick{display:flex;flex-wrap:wrap;gap:36px;border-top:1px solid rgba(255,255,255,.22);padding-top:26px;}
.ct-quick .lbl{display:block;font-family:var(--head-font);text-transform:uppercase;letter-spacing:2.2px;font-size:.68rem;font-weight:700;color:var(--steel);margin-bottom:7px;}
.ct-quick a,.ct-quick span{color:var(--white);font-size:18px;font-weight:500;letter-spacing:.3px;}
.ct-quick a:hover{color:var(--ice);}
.ct-hero-img{min-height:520px;background-position:center;background-size:cover;background-repeat:no-repeat;}

.ct-grid{display:grid;grid-template-columns:1fr 440px;gap:64px;align-items:start;}
.ct-formbox{background:var(--gray);border:1px solid #e4e7ec;padding:38px 36px 40px;}
.ct-formbox h2{font-size:1.25rem;letter-spacing:1px;margin-bottom:10px;}
.ct-formbox .sub{font-size:18px;line-height:1.7;opacity:.78;margin-bottom:26px;}
.ct-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}

.ct-offices{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#e4e7ec;}
.ct-office{background:var(--white);padding:32px 28px;display:flex;flex-direction:column;}
.ct-office h3{font-size:.9rem;letter-spacing:1.6px;margin-bottom:14px;}
.ct-office .addr{font-size:17px;line-height:1.7;opacity:.84;margin-bottom:14px;}
.ct-office .ph{font-size:18px;font-weight:500;margin-bottom:14px;display:block;}
.ct-office .ph:hover{color:var(--steel);}
.ct-office .dir{margin-top:auto;font-family:var(--head-font);text-transform:uppercase;font-size:.66rem;letter-spacing:2.2px;font-weight:700;color:var(--steel);}
.ct-office .dir:hover{color:var(--ink);}

.ct-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.ct-path{border:1px solid rgba(255,255,255,.18);padding:34px 30px;display:flex;flex-direction:column;}
.ct-path h3{font-size:.92rem;letter-spacing:1.5px;color:var(--white);margin-bottom:12px;}
.ct-path p{font-size:17px;line-height:1.75;color:rgba(255,255,255,.78);margin-bottom:24px;}
.ct-path .btn{margin-top:auto;align-self:flex-start;padding:16px 26px;font-size:.68rem;}

@media (max-width:1080px){
  .ct-grid{grid-template-columns:1fr;gap:48px;}
  .ct-offices{grid-template-columns:repeat(2,1fr);}
  .ct-paths{grid-template-columns:1fr;}
}
@media (max-width:900px){
  .ct-hero{grid-template-columns:1fr;}
  .ct-hero-copy{order:2;padding:64px 24px;}
  .ct-hero-img{order:1;min-height:300px;}
}
@media (max-width:620px){
  .ct-offices{grid-template-columns:1fr;}
  .ct-row{grid-template-columns:1fr;}
  .ct-quick{gap:24px;}
}


/* ============ CONFIDENTIAL BUYER INTAKE ============ */
.bp-top{text-align:center;padding:70px 0 0;}
.bp-top h1{font-size:clamp(1.8rem,3.6vw,3rem);line-height:1.14;letter-spacing:1px;margin-bottom:20px;}
.bp-top p{font-size:18px;line-height:1.8;max-width:40em;margin:0 auto;opacity:.82;}

.bp-stepper{display:flex;align-items:flex-start;justify-content:center;gap:0;margin:46px auto 0;max-width:860px;padding:0 28px;}
.bp-node{display:flex;flex-direction:column;align-items:center;gap:12px;flex:0 0 auto;}
.bp-node .dot{width:46px;height:46px;border-radius:50%;border:1px solid #d3dae2;display:flex;align-items:center;justify-content:center;font-family:var(--head-font);font-size:1rem;font-weight:700;color:#a9b4c0;background:var(--white);transition:background .3s ease,color .3s ease,border-color .3s ease;}
.bp-node .lbl{font-family:var(--head-font);text-transform:uppercase;font-size:.7rem;letter-spacing:2px;font-weight:700;color:#a9b4c0;transition:color .3s ease;}
.bp-node.done .dot{background:var(--steel);border-color:var(--steel);color:var(--white);}
.bp-node.on .dot{background:var(--steel);border-color:var(--steel);color:var(--white);box-shadow:0 0 0 5px rgba(112,144,174,.2);}
.bp-node.on .lbl,.bp-node.done .lbl{color:var(--ink);}
.bp-line{flex:1 1 auto;height:1px;background:#d3dae2;margin:23px 10px 0;min-width:22px;transition:background .3s ease;}
.bp-line.done{background:var(--steel);}

.bp-card{max-width:900px;margin:44px auto 0;background:var(--gray);border-top:5px solid var(--ink);padding:44px 48px 0;}
.bp-eyebrow{font-family:var(--head-font);text-transform:uppercase;font-size:.7rem;letter-spacing:2.4px;font-weight:700;color:var(--steel);display:block;margin-bottom:14px;}
.bp-check{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.bp-check label{display:flex;align-items:center;gap:13px;background:var(--white);border:1px solid #e4e7ec;padding:16px 18px;cursor:pointer;transition:border-color .2s ease;}
.bp-check label:hover{border-color:var(--steel);}
.bp-check label.sel{border-color:var(--steel);background:var(--ice);}
.bp-check input{width:17px;height:17px;flex:0 0 17px;accent-color:var(--steel);}
.bp-check span{font-size:16.5px;line-height:1.5;}
.bp-help{font-size:15.5px;line-height:1.6;opacity:.66;margin:-4px 0 10px;}

@media (max-width:820px){
  .bp-card{padding:34px 22px 0;margin-top:34px;}
  .bp-check{grid-template-columns:1fr;}
  .bp-stepper{gap:0;padding:0 12px;}
  .bp-node .dot{width:36px;height:36px;font-size:.85rem;}
  .bp-node .lbl{font-size:.58rem;letter-spacing:1.2px;}
  .bp-line{margin-top:18px;min-width:8px;}
}


/* ============ MERGERS & ACQUISITIONS ============ */
.ma-hero{position:relative;background:#272a3f;display:flex;align-items:center;min-height:720px;overflow:hidden;}
.ma-hero-img{position:absolute;top:0;right:0;bottom:0;width:50.5%;background-position:center 32%;background-size:cover;background-repeat:no-repeat;}
.ma-hero-inner{position:relative;z-index:2;width:100%;}
.ma-hero-card{background:var(--white);margin-left:14%;width:min(700px,47%);padding:54px 58px;}
.ma-hero-card .eyebrow{color:var(--steel);margin-bottom:18px;}
.ma-hero-card h1{font-size:clamp(1.7rem,2.8vw,2.4rem);line-height:1.16;letter-spacing:1px;margin-bottom:22px;}
.ma-hero-card p{font-size:18px;line-height:1.8;margin-bottom:32px;}
.ma-hero-card .btn{padding:20px 42px;}

.ma-band{background:var(--ice);}
.ma-band-in{display:grid;grid-template-columns:repeat(4,1fr);}
.ma-stat{padding:38px 26px;border-right:1px solid rgba(42,45,66,.13);}
.ma-stat:last-child{border-right:none;}
.ma-stat .lbl{display:block;font-family:var(--head-font);text-transform:uppercase;letter-spacing:2px;font-size:.68rem;font-weight:700;color:var(--steel);margin-bottom:9px;}
.ma-stat .val{font-family:var(--head-font);text-transform:uppercase;font-size:1.3rem;font-weight:700;letter-spacing:.5px;line-height:1.25;color:var(--ink);}

.ma-oneline{white-space:nowrap;font-size:min(2.1rem,5.2vw);line-height:1.2;}
.ma-oneline-wide{white-space:nowrap;font-size:min(1.95rem,2.2vw);line-height:1.2;margin-bottom:44px;}
.ma-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.ma-split h2{margin-bottom:0;}
.ma-cost{list-style:none;margin:0;}
.ma-cost li{position:relative;padding-left:34px;margin-bottom:17px;line-height:1.75;}
.ma-cost li:last-child{margin-bottom:0;}
.ma-cost li::before{content:"";position:absolute;left:0;top:.62em;width:15px;height:8px;border-left:2px solid var(--steel);border-bottom:2px solid var(--steel);transform:rotate(-45deg);}

.ma-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.ma-pillar{background:var(--white);border-top:4px solid var(--steel);padding:38px 34px 40px;}
.ma-pillar .n{display:block;font-family:var(--head-font);font-size:.78rem;letter-spacing:2.4px;font-weight:700;color:var(--steel);margin-bottom:16px;}
.ma-pillar h3{font-size:1.02rem;letter-spacing:1px;line-height:1.35;margin-bottom:14px;}
.ma-pillar p{font-size:17px;line-height:1.75;margin-bottom:22px;}
.ma-pillar ul{list-style:none;margin:0;padding:0;border-top:1px solid #e4e7ec;padding-top:20px;}
.ma-pillar li{position:relative;padding-left:28px;margin-bottom:13px;font-size:16px;line-height:1.6;}
.ma-pillar li:last-child{margin-bottom:0;}
.ma-pillar li::before{content:"";position:absolute;left:0;top:.5em;width:13px;height:7px;border-left:2px solid var(--steel);border-bottom:2px solid var(--steel);transform:rotate(-45deg);}

.ma-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;background:rgba(255,255,255,.14);}
.ma-step{background:#252739;padding:34px 24px;text-align:center;}
.ma-step .n{display:block;font-family:var(--head-font);font-size:.76rem;letter-spacing:2.4px;font-weight:700;color:var(--steel);margin-bottom:14px;}
.ma-step h4{font-size:.88rem;letter-spacing:1.3px;margin-bottom:12px;line-height:1.35;color:var(--white);white-space:nowrap;}
.ma-step p{font-size:16px;line-height:1.7;color:rgba(255,255,255,.76);margin:0;min-height:6.8em;}

.ma-faq{background:transparent;max-width:none;margin:0;padding:0;}
.ma-stag{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start;margin-top:10px;}
.ma-stag-box{padding:46px 42px 50px;}
.ma-stag-box--light{background:var(--ice);}
.ma-stag-box--dark{background:#272a3f;color:var(--white);margin-top:86px;}
.ma-stag-box h3{font-family:var(--head-font);text-transform:none;font-size:clamp(1.2rem,1.9vw,1.55rem);line-height:1.26;letter-spacing:.3px;font-weight:700;margin-bottom:26px;}
.ma-stag-box h3 em{font-style:italic;font-weight:400;}
.ma-stag-box--dark h3{color:var(--white);}
.ma-stag-box .btn{margin-top:32px;}
.ma-list{list-style:none;margin:0;padding:0;}
.ma-list li{position:relative;padding:18px 0 18px 40px;font-size:16px;line-height:1.6;text-transform:uppercase;letter-spacing:1.1px;}
.ma-list--x li{border-bottom:1px solid rgba(42,45,66,.16);opacity:.78;}
.ma-list--x li:first-child{border-top:1px solid rgba(42,45,66,.16);}
.ma-list--x li::before,.ma-list--x li::after{content:"";position:absolute;left:6px;top:27px;width:15px;height:2px;background:var(--steel);}
.ma-list--x li::before{transform:rotate(45deg);}
.ma-list--x li::after{transform:rotate(-45deg);}
.ma-list--check li{border-bottom:1px solid rgba(255,255,255,.16);color:var(--white);}
.ma-list--check li:first-child{border-top:1px solid rgba(255,255,255,.16);}
.ma-list--check li::before{content:"";position:absolute;left:4px;top:24px;width:15px;height:8px;border-left:2px solid var(--ice);border-bottom:2px solid var(--ice);transform:rotate(-45deg);}
@media (max-width:900px){
  .ma-stag{grid-template-columns:1fr;gap:28px;}
  .ma-stag-box--dark{margin-top:0;}
  .ma-stag-box{padding:36px 26px 40px;}
}

.ma-feat{display:grid;grid-template-columns:repeat(2,1fr);gap:44px;max-width:1000px;margin:0 auto;}
.ma-feat .ma-card{border:none;background:var(--white);text-align:center;}
.ma-feat .ma-card .ph{aspect-ratio:16/11;}
.ma-feat .ma-card .bd{padding:30px 28px 34px;align-items:center;justify-content:flex-start;}
.ma-feat .ma-card h3{color:var(--ink);font-size:1.08rem;line-height:1.34;letter-spacing:1px;margin:0 0 12px;min-height:2.68em;display:flex;align-items:center;justify-content:center;}
.ma-feat .ma-card .loc{font-family:var(--body-font);text-transform:uppercase;letter-spacing:1.6px;font-size:.82rem;font-weight:400;color:var(--ink);opacity:.75;margin:0 0 16px;}
.ma-feat .ma-card .pr{font-size:1.35rem;margin:0 0 20px;}
.ma-feat .ma-card .btn{display:inline-block;background:var(--ice);color:var(--ink);border-color:var(--ice);margin-top:0;padding:15px 30px;}
.ma-feat .ma-card:hover .btn{background:var(--ink);color:var(--white);border-color:var(--ink);}
.ma-feat .ma-card:hover{transform:translateY(-4px);}
@media (max-width:820px){.ma-feat{grid-template-columns:1fr;gap:32px;}}

.ma-feed{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.ma-card{border:1px solid #e4e7ec;background:var(--white);display:flex;flex-direction:column;color:var(--ink);transition:border-color .25s ease,transform .25s ease;}
.ma-card:hover{border-color:var(--steel);transform:translateY(-4px);color:var(--ink);}
.ma-card .ph{aspect-ratio:16/10;background:#dfe6ee center/cover no-repeat;position:relative;}
.ma-card .tag{position:absolute;top:0;left:0;background:var(--ink);color:var(--white);font-family:var(--head-font);text-transform:uppercase;font-size:.62rem;letter-spacing:2px;font-weight:700;padding:8px 13px;}
.ma-card .bd{padding:26px 24px 28px;flex:1;display:flex;flex-direction:column;}
.ma-card .loc{font-family:var(--head-font);text-transform:uppercase;font-size:.68rem;letter-spacing:2px;font-weight:700;color:var(--steel);margin-bottom:11px;}
.ma-card h3{font-size:.98rem;line-height:1.4;letter-spacing:1px;margin-bottom:14px;}
.ma-card .pr{font-family:var(--head-font);font-size:1.2rem;font-weight:700;letter-spacing:.6px;margin-top:auto;}
.ma-card .btn{display:block;text-align:center;margin-top:20px;padding:15px 20px;font-size:.7rem;letter-spacing:2.4px;}
.ma-card:hover .btn{background:var(--ink);color:var(--white);}
.ma-empty{font-size:17px;opacity:.7;}

@media (max-width:1200px){
  .ma-hero{min-height:640px;}
  .ma-hero-img{width:46%;}
  .ma-hero-card{margin-left:7%;width:min(620px,56%);padding:46px 42px;}
}
@media (max-width:1080px){
  .ma-band-in{grid-template-columns:repeat(2,1fr);}
  .ma-stat{border-bottom:1px solid rgba(42,45,66,.13);}
  .ma-stat:nth-child(2n){border-right:none;}
  .ma-grid{grid-template-columns:repeat(2,1fr);}
  .ma-pillars{grid-template-columns:1fr;}

  .ma-steps{grid-template-columns:repeat(2,1fr);}
  .ma-feed{grid-template-columns:repeat(2,1fr);}
  .ma-split{grid-template-columns:1fr;gap:36px;}
}
@media (max-width:900px){
  .ma-hero{display:block;min-height:0;padding-bottom:0;}
  .ma-hero-img{position:relative;width:100%;height:320px;}
  .ma-hero-card{margin:0;width:100%;padding:44px 26px;}
}
@media (max-width:700px){
  .ma-band-in{grid-template-columns:1fr;}
  .ma-steps,.ma-feed{grid-template-columns:1fr;}
}


/* ============ SELL YOUR BUSINESS ============ */
.syb-hero{position:relative;background:#272a3f;display:flex;align-items:center;min-height:720px;overflow:hidden;}
.syb-hero-img{position:absolute;top:0;right:0;bottom:0;width:50.5%;background-position:center 30%;background-size:cover;background-repeat:no-repeat;}
.syb-hero-inner{position:relative;z-index:2;width:100%;}
.syb-hero-card{background:var(--white);margin-left:14%;width:min(700px,47%);padding:54px 58px;}
.syb-hero-card .eyebrow{color:var(--steel);margin-bottom:18px;}
.syb-hero-card h1{font-size:clamp(1.7rem,2.8vw,2.4rem);line-height:1.16;letter-spacing:1px;margin-bottom:22px;}
.syb-hero-card p{font-size:18px;line-height:1.8;margin-bottom:32px;}
.syb-hero-card .btn{padding:20px 42px;}

.syb-band{background:var(--ice);}
.syb-band-in{display:grid;grid-template-columns:repeat(4,1fr);}
.syb-stat{padding:38px 26px;border-right:1px solid rgba(42,45,66,.13);text-align:center;}
.syb-stat:last-child{border-right:none;}
.syb-stat .lbl{display:block;font-family:var(--head-font);text-transform:uppercase;letter-spacing:2px;font-size:.68rem;font-weight:700;color:var(--steel);margin-bottom:9px;}
.syb-stat .val{font-family:var(--head-font);text-transform:uppercase;font-size:1.3rem;font-weight:700;letter-spacing:.5px;line-height:1.25;color:var(--ink);}

.syb-value{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:stretch;}
.syb-value-img{background-position:center;background-size:cover;background-repeat:no-repeat;min-height:100%;}
.syb-value-copy .lst-rule{margin:22px 0;}
.syb-value-lead{font-size:18px;line-height:1.8;margin-bottom:30px;}
.syb-value-list{list-style:none;margin:0;padding:0;}
.syb-value-list li{padding:22px 0;border-bottom:1px solid #e4e7ec;}
.syb-value-list li:first-child{border-top:1px solid #e4e7ec;}
.syb-value-list h3{font-size:.95rem;letter-spacing:1.2px;margin-bottom:10px;}
.syb-value-list p{font-size:16.5px;line-height:1.72;margin:0;opacity:.86;}
@media (max-width:900px){
  .syb-value{grid-template-columns:1fr;gap:32px;}
  .syb-value-img{min-height:0;aspect-ratio:4/3;}
}

.syb-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;}
.syb-card{background:var(--white);border-top:4px solid var(--steel);padding:34px 30px 36px;}
.syb-card h3{font-size:.95rem;letter-spacing:1.2px;line-height:1.35;margin-bottom:13px;}
.syb-card p{font-size:16.5px;line-height:1.72;margin:0;min-height:8.6em;}

.syb-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(255,255,255,.14);}
.syb-step{background:#252739;padding:38px 32px;text-align:center;}
.syb-step .n{display:block;font-family:var(--head-font);font-size:.76rem;letter-spacing:2.4px;font-weight:700;color:var(--steel);margin-bottom:14px;}
.syb-step h4{font-size:.95rem;letter-spacing:1.3px;margin-bottom:12px;color:var(--white);white-space:nowrap;}
.syb-step p{font-size:16.5px;line-height:1.7;color:rgba(255,255,255,.78);margin:0;min-height:6.8em;}

.syb-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.syb-q{list-style:none;margin:0;padding:0;}
.syb-q li{position:relative;padding:20px 0 20px 40px;border-bottom:1px solid #e4e7ec;font-size:17.5px;line-height:1.6;}
.syb-q li:first-child{border-top:1px solid #e4e7ec;}
.syb-q li::before{content:"";position:absolute;left:4px;top:27px;width:15px;height:8px;border-left:2px solid var(--steel);border-bottom:2px solid var(--steel);transform:rotate(-45deg);}

.syb-trust{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:rgba(255,255,255,.14);}
.syb-trust div{background:#252739;padding:34px 32px;}
.syb-trust h3{font-size:.95rem;letter-spacing:1.2px;margin-bottom:11px;color:var(--white);}
.syb-trust p{font-size:16.5px;line-height:1.72;color:rgba(255,255,255,.78);margin:0;}

@media (max-width:1200px){
  .syb-hero{min-height:640px;}
  .syb-hero-img{width:46%;}
  .syb-hero-card{margin-left:7%;width:min(620px,56%);padding:46px 42px;}
}
@media (max-width:1080px){
  .syb-band-in{grid-template-columns:repeat(2,1fr);}
  .syb-stat{border-bottom:1px solid rgba(42,45,66,.13);}
  .syb-stat:nth-child(2n){border-right:none;}
  .syb-cards{grid-template-columns:repeat(2,1fr);}
  .syb-split{grid-template-columns:1fr;gap:36px;}
}
@media (max-width:900px){
  .syb-hero{display:block;min-height:0;}
  .syb-hero-img{position:relative;width:100%;height:320px;}
  .syb-hero-card{margin:0;width:100%;padding:44px 26px;}
  .syb-steps{grid-template-columns:1fr;}
  .syb-trust{grid-template-columns:1fr;}
}
@media (max-width:700px){
  .syb-band-in,.syb-cards{grid-template-columns:1fr;}
  .syb-card p,.syb-step p{min-height:0;}
}


/* ============ SELLER FAQ ============ */
.sfaq-h2{margin-bottom:30px;}
.sfaq-group{padding-bottom:8px;}
.sfaq-group + .sfaq-group{padding-top:8px;}
.sfaq-jump{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:34px;}
.sfaq-jump a{font-family:var(--head-font);text-transform:uppercase;font-size:.7rem;letter-spacing:2.2px;font-weight:700;padding:14px 22px;border:1px solid rgba(255,255,255,.4);color:var(--white);}
.sfaq-jump a:hover{background:var(--white);color:var(--ink);}


/* ============ OPINION OF VALUE QUESTIONNAIRE ============ */
.oov-hero{background:#272a3f;color:var(--white);padding:76px 0 70px;position:relative;overflow:hidden;}
.oov-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 16% 6%,rgba(255,255,255,.07),transparent 44%),linear-gradient(115deg,transparent 54%,rgba(9,11,22,.5) 54.3%);pointer-events:none;}
.oov-hero>*{position:relative;}
.oov-hero .eyebrow{color:var(--steel);}
.oov-hero h1{color:var(--white);white-space:nowrap;font-size:min(2.6rem,2.8vw);line-height:1.16;letter-spacing:1px;margin-bottom:20px;}
.oov-hero p{color:rgba(255,255,255,.85);font-size:18px;line-height:1.8;max-width:44em;margin:0;}

.oov-wrap{max-width:900px;margin:0 auto;padding:0 28px;}
.oov-card{background:var(--white);border:1px solid #e4e7ec;margin-top:-46px;position:relative;z-index:5;padding:44px 48px 0;}

.oov-progress{margin-bottom:32px;}
.oov-bars{display:flex;gap:5px;margin-bottom:14px;}
.oov-bars i{flex:1;height:4px;background:#e4e7ec;display:block;transition:background .3s ease;}
.oov-bars i.on{background:var(--steel);}
.oov-meta{display:flex;justify-content:space-between;align-items:baseline;gap:16px;}
.oov-meta .count{font-family:var(--head-font);text-transform:uppercase;font-size:.68rem;letter-spacing:2.2px;font-weight:700;color:var(--steel);}
.oov-meta .save{font-size:.82rem;opacity:.6;}

.oov-step{display:none;}
.oov-step.on{display:block;}
.oov-step h2{font-size:clamp(1.3rem,2.1vw,1.7rem);line-height:1.28;letter-spacing:.8px;margin-bottom:10px;}
.oov-step .hint{font-size:17px;line-height:1.7;opacity:.72;margin-bottom:0;}
.oov-sep{height:1px;background:#e4e7ec;margin:26px 0 30px;}

.oov-fld{margin-bottom:22px;}
.oov-fld label,.oov-glabel{display:block;font-size:16px;font-weight:400;color:var(--ink);margin-bottom:9px;}
.oov-fld .req,.oov-glabel .req{color:var(--steel);font-weight:600;}
.oov-fld .opt,.oov-glabel .opt{font-size:.86rem;opacity:.55;margin-left:5px;}
.oov-fld input[type=text],.oov-fld input[type=email],.oov-fld input[type=tel],.oov-fld select,.oov-fld textarea{width:100%;font-family:var(--body-font);font-weight:300;font-size:17px;padding:15px 16px;border:1px solid #e4e7ec;background:var(--gray);color:var(--ink);border-radius:0;-webkit-appearance:none;appearance:none;}
.oov-fld input[type=text],.oov-fld input[type=email],.oov-fld input[type=tel]{background:var(--white);}
.oov-fld select{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 9'%3E%3Cpath fill='none' stroke='%237090ae' stroke-width='2' d='M1 1l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:13px;padding-right:42px;}
.oov-fld input:focus,.oov-fld select:focus,.oov-fld textarea:focus{outline:none;border-color:var(--steel);}
.oov-fld textarea{min-height:130px;resize:vertical;line-height:1.7;}
.oov-row{display:grid;grid-template-columns:1fr 1fr;gap:22px;}

.oov-group{margin-bottom:26px;}
.oov-choices{display:grid;gap:10px;}
.oov-choices--inline{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));}
.oov-choice{display:flex;align-items:center;gap:13px;background:var(--gray);border:1px solid transparent;padding:17px 20px;cursor:pointer;transition:border-color .2s ease,background .2s ease;}
.oov-choice:hover{border-color:var(--steel);}
.oov-choice input{width:18px;height:18px;flex:0 0 18px;accent-color:var(--steel);}
.oov-choice span{font-size:17px;line-height:1.55;}
.oov-choice.sel{border-color:var(--steel);background:var(--ice);}

.oov-info{display:flex;gap:13px;background:var(--ice);padding:20px 22px;font-size:16.5px;line-height:1.65;margin-bottom:30px;}
.oov-info svg{flex:0 0 19px;margin-top:2px;}

.oov-drop{display:block;border:2px dashed #ccd4dd;background:var(--gray);padding:34px 20px;text-align:center;cursor:pointer;transition:border-color .2s ease,background .2s ease;}
.oov-drop:hover,.oov-drop.over{border-color:var(--steel);background:var(--ice);}
.oov-drop input[type=file]{display:none;}
.oov-drop .ico{display:block;margin:0 auto 12px;}
.oov-drop p{font-size:16.5px;margin:0;opacity:.8;}
.oov-drop .browse{color:var(--steel);text-decoration:underline;}
.oov-file{display:none;align-items:center;justify-content:space-between;gap:14px;background:var(--white);border:1px solid #e4e7ec;padding:14px 18px;}
.oov-file.on{display:flex;}
.oov-file .nm{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.oov-file .sz{opacity:.55;font-size:.86rem;margin-left:8px;}
.oov-file button{background:none;border:none;color:var(--steel);cursor:pointer;font-family:var(--body-font);font-size:.86rem;text-decoration:underline;padding:0;flex:0 0 auto;}

.oov-nav{display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--gray);border-top:1px solid #e4e7ec;margin:34px -48px 0;padding:26px 48px;}
.oov-back{background:none;border:none;font-family:var(--body-font);font-size:1rem;color:var(--ink);cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:8px;}
.oov-back::before{content:"";width:8px;height:8px;border-left:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg);}
.oov-back:hover{color:var(--steel);}
.oov-back[hidden]{visibility:hidden;}
.oov-err{color:#c0453f;font-size:.9rem;margin-top:16px;display:none;}
.oov-err.on{display:block;}
.oov-secure{display:flex;align-items:center;justify-content:center;gap:9px;font-size:.86rem;opacity:.6;margin:20px 0 0;}

.oov-done{display:none;text-align:center;padding:26px 0 48px;}
.oov-done.on{display:block;}
.oov-done h2{margin-bottom:14px;}
.oov-done p{font-size:18px;line-height:1.8;opacity:.82;max-width:38em;margin:0 auto 26px;}

.oov-assure{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.oov-assure div h3{font-size:.88rem;letter-spacing:1.5px;margin-bottom:11px;}
.oov-assure div p{font-size:17px;line-height:1.75;opacity:.82;margin:0;}

@media (max-width:820px){
  .oov-card{padding:36px 24px 0;margin-top:-32px;}
  .oov-nav{margin:30px -24px 0;padding:22px 24px;}
  .oov-row{grid-template-columns:1fr;gap:0;}
  .oov-assure{grid-template-columns:1fr;gap:28px;}
}

/* Footer links sit on navy and must stay legible now that links inherit */
.site-footer a{color:var(--ice);}
.site-footer a:hover{color:var(--white);}
.footer-strip a{color:var(--ice);}

/* ================= MOBILE OPTIMISATION PASS ================= */
html,body{max-width:100%;}
body{overflow-x:hidden;}
img,video,svg{max-width:100%;height:auto;}

@media (max-width:760px){
  .h2-oneline,.h2-oneline--l,.ma-oneline,.ma-oneline-wide,
  .lst-block h2,.oov-hero h1,.lead-oneline,.eyebrow-oneline,
  .val-hero-text .eyebrow,.band-cta p,
  .ma-step h4,.syb-step h4,.ma-feat .ma-card h3{white-space:normal;}
  .h2-oneline,.h2-oneline--l,.ma-oneline{font-size:clamp(1.5rem,6.4vw,2rem);line-height:1.22;}
  .ma-oneline-wide{font-size:clamp(1.4rem,5.8vw,1.9rem);line-height:1.24;margin-bottom:30px;}
  .lst-block h2{font-size:clamp(1.2rem,5.2vw,1.5rem);line-height:1.3;}
  .oov-hero h1{font-size:clamp(1.6rem,7vw,2.2rem);line-height:1.18;}
  .lead-oneline{font-size:17px;}
  .eyebrow-oneline,.val-hero-text .eyebrow{font-size:.8rem;letter-spacing:1.6px;}
  .band-cta p{font-size:16px;}
  .ma-step h4,.syb-step h4{font-size:1rem;}
  .ma-feat .ma-card h3{min-height:0;}

  .ma-hero-card,.syb-hero-card,.lst-hero-copy,.bf-hero-copy,.ct-hero-copy{padding-left:22px;padding-right:22px;}
  .ma-hero-card h1,.syb-hero-card h1{font-size:clamp(1.5rem,6.6vw,2rem);}
  .oov-card,.bp-card{padding-left:20px;padding-right:20px;}
  .oov-nav{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px;}

  .btn{padding:18px 26px;}
  .nav-menu a{padding:14px 0;display:block;}
  .faq-q,.faq-panel summary{padding-top:22px;padding-bottom:22px;}
  .oov-choice,.bp-check label{padding:16px 18px;}
  .lst-broker a,.ct-quick a{display:inline-block;padding:4px 0;}

  input,select,textarea{font-size:16.5px !important;}
  .oov-row,.ct-row,.lst-fld .oov-row{grid-template-columns:1fr;gap:0;}
  table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;}
}

@media (max-width:620px){
  .section{padding-top:56px;padding-bottom:56px;}
  .wrap{padding-left:20px;padding-right:20px;}
  h1{font-size:clamp(1.6rem,7.4vw,2.2rem);}
  h2{font-size:clamp(1.35rem,6vw,1.9rem);}
  .lead{font-size:17px;}
}

/* ============ ARTICLE (single post) ============ */
.art-wrap{max-width:820px;margin:0 auto;}
.art-title{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.18;letter-spacing:.6px;margin-bottom:16px;}
.art-meta{font-size:.9rem;letter-spacing:.6px;opacity:.62;margin:0;}
.art-dot{margin:0 8px;}
.art-hero{margin:0 0 34px;}
.art-hero img{width:100%;height:auto;display:block;}
.art-hero figcaption{font-size:.88rem;opacity:.62;margin-top:10px;}
.art-body{font-size:18px;line-height:1.85;}
.art-body h2{font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.3;letter-spacing:.6px;margin:44px 0 16px;}
.art-body h3{font-size:1.05rem;letter-spacing:1.2px;margin:34px 0 14px;}
.art-body p{margin-bottom:1.15em;}
.art-body ul,.art-body ol{margin:0 0 1.4em 1.2em;}
.art-body li{margin-bottom:11px;line-height:1.75;}
.art-body a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;}
.art-body blockquote{border-left:3px solid var(--steel);padding:6px 0 6px 26px;margin:32px 0;font-size:19px;line-height:1.75;}
.art-body img{max-width:100%;height:auto;display:block;margin:28px 0;}
.art-body figcaption,.art-body .wp-caption-text{font-size:.88rem;opacity:.62;margin-top:-16px;margin-bottom:28px;}
.art-tags{margin-top:40px;padding-top:24px;border-top:1px solid #e4e7ec;font-size:.9rem;}
.alignleft{float:left;margin:6px 28px 20px 0;}
.alignright{float:right;margin:6px 0 20px 28px;}
.aligncenter{margin-left:auto;margin-right:auto;}
.alignwide,.alignfull{max-width:100%;}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;}
.bf-pager .nav-links{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;align-items:center;}
.bf-pager .page-numbers{display:inline-block;font-family:var(--head-font);text-transform:uppercase;font-size:.72rem;letter-spacing:2.2px;font-weight:700;padding:16px 22px;border:1px solid var(--ink);color:var(--ink);}
.bf-pager .page-numbers:hover,.bf-pager .page-numbers.current{background:var(--ink);color:var(--white);}
@media (max-width:820px){.alignleft,.alignright{float:none;margin:20px 0;}.art-body{font-size:17px;}}


/* Dropdown: hover on desktop, tap on touch devices */
.nav-menu li.open > .sub-menu{display:block;}
.has-sub > .sub-menu,.menu-item-has-children > .sub-menu{display:none;}
.has-sub:hover > .sub-menu,.has-sub:focus-within > .sub-menu,
.menu-item-has-children:hover > .sub-menu,.menu-item-has-children:focus-within > .sub-menu{display:block;}
@media (max-width:1000px){
  .nav-menu .sub-menu{position:static;box-shadow:none;padding:0 0 6px 16px;min-width:0;}
}


/* =====================================================================
   MOBILE POLISH
   Everything below applies only to phones and small tablets. Desktop is
   untouched. Written defensively with !important where an inline style
   would otherwise win.
   ===================================================================== */

@media (max-width:900px){

  /* ---- nothing may push the page sideways ---- */
  html,body{max-width:100%;overflow-x:hidden;}
  img,svg,video,iframe{max-width:100%;height:auto;}

  /* ---- credential logo strip ---------------------------------------
     Each logo carries an inline width of about 200px, which is far too
     wide for a phone. Constrain by height and let width follow.        */
  .logo-marquee{padding:38px 0;max-width:100%;}
  .logo-track{gap:44px;animation-duration:22s;}
  .logo-track img{
    width:auto !important;
    height:auto !important;
    max-height:34px !important;
    max-width:132px !important;
    object-fit:contain;
  }

  /* ---- hero ---------------------------------------------------------
     92vh leaves the reader looking at a photo instead of a message.     */
  .hero{min-height:auto;padding:64px 0 56px;background-position:center;}
  .hero h1{margin:10px 0 20px;}
  .hero .lead,.hero p{font-size:16.5px;line-height:1.7;}

  /* ---- long uppercase headings --------------------------------------
     Headline case plus wide letter-spacing eats the line on a phone.    */
  h1{font-size:clamp(1.55rem,7vw,2.1rem);line-height:1.2;letter-spacing:.4px;}
  h2{font-size:clamp(1.3rem,5.6vw,1.75rem);line-height:1.24;letter-spacing:.4px;}
  h3{font-size:1rem;line-height:1.35;letter-spacing:.8px;}
  h4{letter-spacing:.8px;}
  .eyebrow{font-size:.7rem;letter-spacing:1.8px;}

  /* headings locked to one line on desktop must be released here */
  [class*="oneline"],.ma-oneline,.ma-oneline-wide,.h2-oneline,.h2-oneline--l,
  .lst-block h2,.oov-hero h1,.ma-step h4,.syb-step h4,.ma-feat .ma-card h3,
  .nowrap{white-space:normal !important;}

  /* ---- body copy ---- */
  p,li{font-size:16.5px;line-height:1.72;}
  .lead{font-size:17px;line-height:1.7;}

  /* ---- section rhythm ---- */
  .section{padding-top:52px;padding-bottom:52px;}
  .wrap{padding-left:22px;padding-right:22px;}

  /* ---- split and bleed layouts collapse cleanly ---- */
  .bleed-right,.bleed-left,.split,.ma-split,.syb-split,.syb-value,
  .ct-grid,.lst-grid,.val-split,.loc-adv{grid-template-columns:1fr !important;gap:28px !important;}
  .bleed-right>img,.bleed-left>img{min-height:240px !important;margin-bottom:0 !important;}
  .bleed-text{padding:44px 22px !important;}
  .bleed-meritus{padding:24px 0 56px;}

  /* ---- card grids ---- */
  .ma-pillars,.ma-feat,.bf-grid,.region-grid,
  .ct-offices,.oov-assure,.ma-steps,.syb-steps,.syb-trust,
  .ma-stag{grid-template-columns:1fr !important;}
  .ma-stag-box--dark{margin-top:0 !important;}

  /* ---- stat bands read as rows, not a squeezed table ---- */
  .ma-band-in,.syb-band-in,.lst-stats-in,.lst-stats-in--4,.lst-stats-in--6{grid-template-columns:1fr 1fr !important;}
  .ma-stat,.syb-stat,.lst-stat{padding:22px 14px;}
  .ma-stat .val,.syb-stat .val{font-size:1.05rem;}

  /* ---- region tiles ---- */
  .region-tiles{grid-template-columns:1fr 1fr;}
  .region-tile{min-height:150px;}

  /* ---- forms: 16px minimum stops iOS zooming on focus ---- */
  input,select,textarea{font-size:16.5px !important;}
  .oov-row,.ct-row{grid-template-columns:1fr !important;gap:0 !important;}
  .oov-card,.bp-card,.ct-formbox,.lst-formbox{padding-left:20px !important;padding-right:20px !important;}
  .oov-nav{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px;}

  /* ---- tap targets ---- */
  .btn{padding:17px 24px;font-size:.72rem;letter-spacing:2px;}
  .faq-panel summary,.faq-q{padding-top:20px;padding-bottom:20px;}

  /* ---- FAQ panel edge padding ---- */
  .faq-panel{padding:28px 20px;}

  /* ---- footer ---- */
  .footer-locs{grid-template-columns:1fr 1fr;gap:26px;}
  .footer-bottom{flex-direction:column;gap:14px;text-align:center;}

  /* ---- tables scroll rather than break the layout ---- */
  table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;}
}

@media (max-width:600px){
  .logo-track{gap:34px;}
  .logo-track img{max-height:28px !important;max-width:112px !important;}

  .region-tiles,.footer-locs{grid-template-columns:1fr;}
  .ma-band-in,.syb-band-in,.lst-stats-in,.lst-stats-in--4,
  .lst-stats-in--6{grid-template-columns:1fr !important;}

  .section{padding-top:44px;padding-bottom:44px;}
  .wrap{padding-left:18px;padding-right:18px;}
  .btn{width:100%;text-align:center;}
  .hero .btn,.ma-hero-card .btn,.syb-hero-card .btn{width:auto;}
}


/* =====================================================================
   MOBILE NAVIGATION
   The dropdown panel, tidied. Kept last so it wins over the polish pass.
   ===================================================================== */
@media (max-width:1140px){

  .site-header{position:relative;}

  .nav-menu{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    background:var(--white);
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:6px 0 10px;
    margin:0;
    box-shadow:0 14px 28px rgba(42,45,66,.16);
    border-top:1px solid #e4e7ec;
    max-height:calc(100vh - 90px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    z-index:200;
  }
  .nav-menu.open{display:flex;}

  .nav-menu > li{width:100%;margin:0;}
  .nav-menu > li + li{border-top:1px solid #eef1f4;}

  /* the padding that went missing */
  .nav-menu a{
    display:block;
    padding:15px 22px !important;
    font-size:.95rem;
    letter-spacing:1.4px;
    line-height:1.3;
  }
  .nav-menu a:active{background:var(--gray);}

  /* Locations: indented, quieter, and openable by tap */
  .nav-menu .sub-menu{
    position:static;
    display:none;
    box-shadow:none;
    background:var(--gray);
    padding:2px 0 6px;
    min-width:0;
    border:0;
  }
  .nav-menu li.open > .sub-menu{display:block;}
  .nav-menu .sub-menu a{
    padding:12px 22px 12px 38px !important;
    font-size:.9rem;
    text-transform:none;
    letter-spacing:.3px;
    opacity:.85;
  }
  .menu-item-has-children > a,.has-sub > a{position:relative;}
  .menu-item-has-children > a::after,.has-sub > a::after{
    position:absolute;right:22px;top:50%;transform:translateY(-50%);
  }

  /* the call to action reads as a button, not another list row */
  .nav-menu > li.nav-cta{margin-top:6px;border-top:1px solid #eef1f4;}
  .nav-menu > li.nav-cta a{
    background:var(--ice);
    color:var(--ink);
    font-weight:700;
    text-align:center;
    padding:17px 22px !important;
  }

  /* header bar: logo left, hamburger hard right, both larger, steel blue */
  .nav-bar{padding:12px 20px;}
  .nav-bar>nav{flex:0 0 0;min-width:0;}
  .logo img{height:92px;}   /* the logo file carries transparent padding; 92px shows the mark at ~36px */
  .nav-toggle{
    order:3;
    margin-left:auto;
    font-size:2.3rem;
    line-height:1;
    padding:6px 2px;
    color:var(--steel);
  }
  .nav-toggle:hover,.nav-toggle[aria-expanded="true"]{color:var(--ink);}
}
@media (max-width:400px){
  .logo img{height:84px;}
}


/* =====================================================================
   MOBILE HEROES
   Three heroes are built for desktop with absolute positioning measured
   in viewport width. On a phone that puts cards partly off screen and
   causes the overlapping, doubled appearance. Here they become ordinary
   stacked blocks. Kept last so it wins.
   ===================================================================== */
@media (max-width:900px){

  /* ---------- Our Listings ---------- */
  .listings-hero{
    position:relative;
    height:auto !important;
    min-height:0 !important;
    background:#272a3f;
    padding:0 0 26px;
    overflow:hidden;
  }
  .listings-hero::before{
    position:relative !important;
    display:block;
    width:100% !important;
    height:210px;
    top:auto;left:auto;bottom:auto;
    background-position:center !important;
  }
  .listings-hero-card{
    position:relative !important;
    left:auto !important;top:auto !important;
    width:auto !important;
    margin:-40px 18px 0;
    padding:30px 24px !important;
    z-index:4;
  }
  .listings-hero-card h1{font-size:clamp(1.6rem,7vw,2.2rem) !important;margin:8px 0 14px !important;line-height:1.18;}
  .listings-hero-card .eyebrow{font-size:.72rem !important;margin-bottom:10px !important;}
  .listings-hero-card p{font-size:16.5px !important;line-height:1.7;}

  .alerts-card{
    position:relative !important;
    left:auto !important;top:auto !important;
    width:auto !important;
    margin:18px 18px 0;
    padding:28px 24px !important;
    z-index:3;
  }
  .alerts-card h3{font-size:1.05rem !important;margin-bottom:12px !important;}
  .alerts-card p{font-size:16px !important;margin-bottom:12px !important;}
  .alerts-card form{margin-top:16px !important;}
  .alerts-card input{padding:10px 2px !important;margin-bottom:16px !important;font-size:16.5px !important;}
  .alerts-card .btn{margin-top:6px !important;padding:15px 22px !important;font-size:.72rem !important;width:100%;}

  /* ---------- Location pages ---------- */
  .loc-hero{
    position:relative;
    height:auto !important;
    min-height:0 !important;
    background:#272a3f;
    padding:0 0 26px;
    overflow:hidden;
  }
  .loc-hero::before{
    position:relative !important;
    display:block;
    width:100% !important;
    height:210px;
    top:auto;left:auto;bottom:auto;
    background-position:center !important;
  }
  .loc-hero-card{
    position:relative !important;
    left:auto !important;top:auto !important;
    width:auto !important;
    margin:-40px 18px 0;
    padding:30px 24px !important;
  }
  .loc-hero-card h1{font-size:clamp(1.55rem,6.6vw,2.1rem) !important;line-height:1.2;}
  .loc-hero-card p{font-size:16.5px !important;line-height:1.7;}
  .loc-hero-card .btn{margin-top:18px !important;width:100%;text-align:center;}

  /* ---------- Business Valuations ---------- */
  .val-hero{
    position:relative;
    min-height:0 !important;
    padding-bottom:0;
    overflow:hidden;
  }
  .val-hero::before{
    position:relative !important;
    display:block;
    left:auto !important;right:auto !important;top:auto;bottom:auto;
    width:100%;height:210px;
    background-attachment:scroll !important;
    background-position:center !important;
  }
  .val-hero-img{
    position:relative !important;
    left:auto !important;top:auto !important;
    width:100% !important;height:210px !important;
    margin:0;
  }
  .val-hero-text{
    max-width:none !important;
    padding:34px 22px 44px !important;
  }
  .val-hero-text h1{font-size:clamp(1.55rem,6.6vw,2.1rem) !important;line-height:1.2;}
  .val-hero-text p{font-size:16.5px !important;line-height:1.7;}

  /* ---------- credential strip stays white on every page ---------- */
  .logo-marquee,.logo-strip{background:var(--white) !important;}
  .page-val .logo-marquee{padding:34px 0 !important;}
}


/* Last resort: no element may push the page sideways on a phone. */
@media (max-width:900px){
  html,body{max-width:100vw;overflow-x:hidden;}
  main,section,header,footer,.wrap,.hero,.bleed-right,.bleed-left{max-width:100vw;}
  *{background-attachment:scroll !important;}
}


/* =====================================================================
   MOBILE EYEBROWS
   Eyebrows exist for SEO and structure; on a phone they should be small
   and quiet, never two or three lines. This block deliberately outranks
   every page-level eyebrow rule above (hero, listings, location, val,
   buyer profile), so keep it after MOBILE HEROES.
   ===================================================================== */
@media (max-width:900px){
  .eyebrow,.eyebrow--light,.bp-eyebrow,.eyebrow-oneline,
  .hero .eyebrow,.about-hero .eyebrow,
  .listings-hero-card .eyebrow,.loc-hero-card .eyebrow,.loc-adv-body .eyebrow,
  .val-hero-text .eyebrow,.ma-hero-card .eyebrow,.syb-hero-card .eyebrow,.oov-hero .eyebrow,
  .lst-hero-copy .eyebrow,.bf-hero-copy .eyebrow,.ct-hero-copy .eyebrow{
    font-size:.6rem !important;        /* 9.6px */
    letter-spacing:1.2px !important;
    line-height:1.5 !important;
    white-space:normal !important;
    margin-bottom:8px !important;
    opacity:1;
  }
}


/* =====================================================================
   LISTING BROCHURE QUESTIONNAIRE
   File inputs for the internal listing intake form; everything else on
   that page reuses the oov-* questionnaire styles.
   ===================================================================== */
.oov-fld input[type=file]{width:100%;font-family:var(--body-font);font-weight:300;font-size:15px;padding:13px 14px;border:1px dashed #b9c6d4;background:var(--gray);color:var(--ink);}
.oov-fld input[type=file]:focus{outline:none;border-color:var(--steel);}
.oov-fld input[type=file]::file-selector-button{font-family:var(--head-font);text-transform:uppercase;letter-spacing:1.6px;font-size:.68rem;font-weight:700;border:1px solid var(--steel);background:var(--white);color:var(--ink);padding:9px 16px;margin-right:14px;cursor:pointer;}
.oov-filehint{font-size:.84rem;opacity:.6;margin:8px 0 0;}
