/*
Theme Name: Tydemans Residential
Description: Bespoke navy and gold theme for Tydemans Residential.
Version: 1.6.26
Text Domain: tydemans
*/
:root{--navy:#071d36;--navy2:#0d2c4c;--gold:#d7a746;--gold2:#efc46b;--cream:#f7f4ee;--text:#17263a;--muted:#687386;--line:#e4e7eb;--white:#fff;--shadow:0 12px 32px rgba(7,29,54,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.container{width:min(1120px,calc(100% - 48px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(7,29,54,.985);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.nav{min-height:82px;display:flex;align-items:center;gap:28px}.logo{width:205px;display:block}.brand-text{font-family:Georgia,'Times New Roman',serif;font-size:23px;font-weight:700}
.nav-links{margin-left:auto}.nav-links>ul{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0}.nav-links li{position:relative}.nav-links a{display:block;padding:29px 0 27px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;border-bottom:2px solid transparent}.nav-links a:hover,.nav-links .current-menu-item>a,.nav-links .current-menu-ancestor>a{color:var(--gold2);border-color:var(--gold)}
.nav-links .sub-menu{display:none;position:absolute;top:100%;left:-18px;min-width:260px;background:var(--navy);list-style:none;margin:0;padding:12px 18px;box-shadow:0 16px 35px rgba(0,0,0,.25)}.nav-links .menu-item-has-children:hover>.sub-menu,.nav-links .menu-item-has-children:focus-within>.sub-menu{display:block}.nav-links .sub-menu li{width:100%}.nav-links .sub-menu a{padding:11px 0;border:0;text-transform:none;letter-spacing:0;font-size:14px}
.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border:1px solid var(--gold);font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:700}.button.gold{background:var(--gold);color:var(--navy)}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:26px;margin-left:auto}
.hero{min-height:520px;background:linear-gradient(90deg,rgba(3,16,29,.9),rgba(3,16,29,.6),rgba(3,16,29,.14)),url('assets/hero.jpg') center/cover;display:flex;align-items:center;color:#fff}.hero.no-image{background:linear-gradient(135deg,var(--navy),var(--navy2))}.hero-content{max-width:650px;padding:82px 0}.eyebrow{color:var(--gold);font-weight:700;text-transform:uppercase;letter-spacing:.13em;font-size:12px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.08;margin:0 0 18px}h1{font-size:60px;color:#fff}h2{font-size:40px}h3{font-size:23px}.hero p{font-size:17px;max-width:590px}.actions{display:flex;gap:14px;margin-top:28px}
.section{padding:76px 0}.section.alt{background:var(--cream)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px}.section-head p{color:var(--muted);max-width:650px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.card-image{width:100%;height:210px;object-fit:cover;background:#eef1f4;display:block}.card-body{padding:20px}.meta{display:flex;gap:12px;color:var(--muted);font-size:13px;margin:10px 0 16px;flex-wrap:wrap}.price{font-size:19px;font-weight:800;color:var(--navy)}.card .button{width:100%;margin-top:16px}
.page-hero{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:72px 0}.page-hero h1{font-size:50px}.page-hero p{max-width:720px;color:#dfe7ef}.site-detail-hero{background:linear-gradient(90deg,rgba(7,29,54,.9),rgba(7,29,54,.35)),var(--site-bg) center/cover;padding:92px 0;color:#fff}.site-detail-hero h1{font-size:54px}
.tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin-bottom:28px;flex-wrap:wrap}.tab{padding:13px 20px;border:0;background:none;font-weight:700;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent}.tab.active{color:var(--navy);border-color:var(--gold)}
.doc-list{display:grid;gap:12px}.doc{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);padding:18px 20px;border-radius:7px;background:#fff}.doc small{display:block;color:var(--muted)}.download{font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:var(--navy);border:1px solid var(--gold);padding:10px 14px;white-space:nowrap}.notice{background:#fff8e8;border-left:4px solid var(--gold);padding:18px 20px;margin-bottom:25px}.managed-sites-section{margin-top:56px;padding-top:40px;border-top:1px solid var(--line)}
.info-panel{border:1px solid var(--line);padding:28px;border-radius:8px;background:#fff}.info-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.info-row:last-child{border:0}.property-detail{display:grid;grid-template-columns:1.15fr .85fr;gap:42px}.property-main-image{width:100%;border-radius:8px;box-shadow:var(--shadow)}
footer{background:#061a30;color:#fff;padding:54px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}.footer-logo{width:190px;margin-bottom:14px}.footer p,.footer a{color:#c8d2dd;font-size:13px}.footer h4{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--gold2)}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:35px;padding-top:18px;font-size:12px;color:#9eabb8;display:flex;justify-content:space-between}
@media(max-width:900px){.nav-links{display:none}.nav-links.is-open{display:block;position:absolute;left:0;right:0;top:82px;background:var(--navy);padding:15px 24px}.nav-links.is-open>ul{display:block}.nav-links .sub-menu{display:block;position:static;padding:0 0 0 16px;box-shadow:none}.nav-links a{padding:12px 0}.nav>.button{display:none}.menu-toggle{display:block}.grid3,.property-detail{grid-template-columns:1fr}h1{font-size:46px}.section{padding:58px 0}.section-head{align-items:start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.container{width:min(100% - 30px,1120px)}.actions{flex-direction:column}.button{width:100%}.footer-grid{grid-template-columns:1fr}.copyright{flex-direction:column;gap:8px}.doc{align-items:flex-start;flex-direction:column}}


.header-contact{
  border:1px solid var(--gold);
  border-left:0;
  position:relative;
  gap:8px;
  padding-left:18px;
}
.header-contact::before{
  content:"☎";
  color:var(--gold);
  font-size:15px;
  line-height:1;
}
.header-contact:hover{background:rgba(215,167,70,.08)}

/* Managed-site document library — Theme 1.4.3 */
.documents-intro{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:22px;
  align-items:center;
  padding:24px 28px;
  margin-bottom:28px;
  background:linear-gradient(135deg,#f4f7fb,#edf2f8);
  border:1px solid #e0e6ee;
  border-radius:10px;
}
.documents-intro-icon{
  width:64px;height:64px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--navy);
  color:var(--gold);
  font-size:28px;
}
.documents-intro h2{margin-bottom:6px;color:var(--navy)}
.documents-intro p{margin:0;color:var(--muted)}

.document-groups{display:grid;gap:20px}
.document-group{
  border:1px solid #dfe5ec;
  border-radius:10px;
  background:#fff;
  box-shadow:0 6px 20px rgba(7,29,54,.06);
  overflow:hidden;
}
.document-group-header{
  width:100%;
  border:0;
  background:linear-gradient(90deg,var(--navy),var(--navy2));
  color:#fff;
  padding:16px 20px;
  display:flex;
  align-items:center;
  gap:12px;
  text-align:left;
  cursor:default;
}
.document-group-icon{
  color:var(--gold);
  font-size:22px;
  flex:0 0 auto;
}
.document-group-title{
  font-family:Georgia,'Times New Roman',serif;
  font-size:25px;
  line-height:1.15;
  flex:1;
}
.document-group-toggle{
  display:none;
  color:#fff;
  font-size:20px;
  transition:transform .2s ease;
}
.document-group-body{display:block}
.document-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 150px 150px;
  gap:20px;
  align-items:center;
  padding:14px 18px;
  border-top:1px solid #edf0f4;
}
.document-row:first-child{border-top:0}
.document-name{display:flex;gap:12px;align-items:flex-start;min-width:0}
.document-pdf-icon{
  color:#c73232;
  font-size:18px;
  line-height:1.2;
  flex:0 0 auto;
}
.document-title{
  font-weight:600;
  color:var(--navy);
  overflow-wrap:anywhere;
}
.document-date{
  color:var(--muted);
  font-size:13px;
}
.document-download{
  justify-self:end;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid var(--gold);
  color:var(--navy);
  padding:9px 13px;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.03em;
  white-space:nowrap;
  border-radius:4px;
}
.document-download:hover{
  background:var(--gold);
  color:var(--navy);
}
.documents-help{
  margin-top:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:16px 20px;
  border:1px solid #ead5a5;
  background:#fff9ec;
  border-radius:8px;
}
.documents-help p{margin:0}
.documents-help .button{flex:0 0 auto}

@media(max-width:700px){
  .documents-intro{grid-template-columns:1fr;padding:20px}
  .documents-intro-icon{width:52px;height:52px}
  .document-group-header{cursor:pointer;padding:14px 16px}
  .document-group-title{font-size:21px}
  .document-group-toggle{display:block}
  .document-group.is-collapsed .document-group-body{display:none}
  .document-group.is-collapsed .document-group-toggle{transform:rotate(-90deg)}
  .document-row{
    grid-template-columns:1fr;
    gap:8px;
    padding:14px 16px;
  }
  .document-date{padding-left:30px}
  .document-download{justify-self:stretch;width:100%;margin-top:4px}
  .documents-help{align-items:stretch;flex-direction:column}
  .documents-help .button{width:100%}
}

.property-card{position:relative}.property-status{position:absolute;top:14px;left:14px;z-index:2;padding:8px 12px;border-radius:3px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 4px 12px rgba(0,0,0,.15)}.property-status.available{background:var(--gold);color:var(--navy)}.property-status.let-agreed{background:var(--navy);color:#fff;border:1px solid var(--gold)}.property-address{font-size:14px;color:var(--muted);margin-bottom:8px}.property-summary{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;margin:9px 0 14px}
.property-gallery{margin-bottom:28px}.property-gallery-main{position:relative;border-radius:10px;overflow:hidden;background:#eef1f4;aspect-ratio:16/10;box-shadow:var(--shadow)}.property-gallery-main img{width:100%;height:100%;object-fit:cover;display:block;cursor:pointer}.property-gallery-count{position:absolute;right:14px;bottom:14px;background:rgba(7,29,54,.9);color:#fff;padding:7px 10px;border-radius:4px;font-size:12px}.property-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px}.property-thumb{border:2px solid transparent;padding:0;background:none;border-radius:5px;overflow:hidden;cursor:pointer;aspect-ratio:4/3}.property-thumb img{width:100%;height:100%;object-fit:cover}.property-thumb.active{border-color:var(--gold)}.property-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.property-fact{border:1px solid var(--line);padding:16px;border-radius:7px;background:#fff;text-align:center}.property-fact strong{display:block;color:var(--navy);font-size:18px}.property-fact span{font-size:12px;color:var(--muted);text-transform:uppercase}.gallery-lightbox{display:none;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.94);align-items:center;justify-content:center;padding:30px}.gallery-lightbox.open{display:flex}.gallery-lightbox img{max-width:min(1100px,90vw);max-height:86vh;object-fit:contain}.gallery-close,.gallery-prev,.gallery-next{position:absolute;border:0;background:rgba(255,255,255,.1);color:#fff;font-size:30px;width:48px;height:48px;border-radius:50%;cursor:pointer}.gallery-close{top:20px;right:20px}.gallery-prev{left:22px}.gallery-next{right:22px}@media(max-width:700px){.property-thumbs{display:none}.property-gallery-main{aspect-ratio:4/3}.property-facts{grid-template-columns:1fr 1fr}}

@media(min-width:901px){.property-facts{grid-template-columns:repeat(5,1fr)}}

/* Homepage split hero with editable feature image */
.hero.split-hero{
  background:linear-gradient(135deg,var(--navy),var(--navy2));
  min-height:520px;
}
.hero-split{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:52px;
  align-items:center;
  min-height:520px;
  padding:56px 0;
}
.hero-split .hero-content{padding:0}
.hero-visual{
  position:relative;
  min-height:390px;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 22px 55px rgba(0,0,0,.28);
  background:#0b2745;
}
.hero-visual::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(7,29,54,.35),rgba(7,29,54,0) 38%),linear-gradient(0deg,rgba(7,29,54,.6),rgba(7,29,54,0) 45%);
  pointer-events:none;
}
.hero-visual img{
  width:100%;
  height:100%;
  min-height:390px;
  object-fit:cover;
  display:block;
}
.hero-image-caption{
  position:absolute;
  left:20px;
  right:20px;
  bottom:18px;
  z-index:2;
  color:#fff;
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  border-left:3px solid var(--gold);
  padding-left:11px;
  text-shadow:0 1px 3px rgba(0,0,0,.45);
}
.hero-visual-placeholder{
  height:100%;
  min-height:390px;
  display:grid;
  place-items:center;
  padding:36px;
  color:#dfe7ef;
  text-align:center;
  border:1px solid rgba(255,255,255,.1);
}
@media(max-width:900px){
  .hero-split{grid-template-columns:1fr;gap:28px;min-height:auto;padding:46px 0}
  .hero-visual{min-height:320px}
  .hero-visual img,.hero-visual-placeholder{min-height:320px}
}
@media(max-width:520px){
  .hero-split{padding:38px 0}
  .hero-visual{min-height:250px;border-radius:8px}
  .hero-visual img,.hero-visual-placeholder{min-height:250px}
  .hero-image-caption{left:14px;right:14px;bottom:14px}
}

/* Restored trust / benefits strip — Theme 1.4.8 */
.trust{
  background:#fff;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:34px 0;
}
.trust-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:30px;
  align-items:start;
}
.trust-item{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:14px;
  align-items:start;
  min-width:0;
}
.trust-icon{
  width:46px;
  height:46px;
  border:1.5px solid var(--gold);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  background:#fff;
  font-size:20px;
  line-height:1;
  font-weight:700;
}
.trust-item strong{
  display:block;
  margin:1px 0 5px;
  color:var(--navy);
  font-family:Georgia,'Times New Roman',serif;
  font-size:17px;
  line-height:1.2;
}
.trust-item span{
  display:block;
  color:var(--muted);
  font-size:13px;
  line-height:1.55;
}
@media(max-width:900px){
  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
}
@media(max-width:560px){
  .trust{padding:28px 0}
  .trust-grid{grid-template-columns:1fr;gap:20px}
  .trust-item{grid-template-columns:44px minmax(0,1fr)}
  .trust-icon{width:42px;height:42px;font-size:18px}
}

.service-hero{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:68px 0}.service-hero .eyebrow{color:var(--gold)}.service-hero h1{color:#fff;font-size:clamp(38px,5vw,62px);margin:8px 0 16px}.service-hero p{max-width:800px;color:#e2eaf1;font-size:18px;line-height:1.7}.service-page{padding:55px 0}.service-intro{max-width:850px;margin:0 auto 38px;text-align:center}.service-intro h2,.service-section h2{color:var(--navy);font-size:32px}.service-intro p{color:var(--muted);font-size:17px;line-height:1.7}.package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.package-card,.service-card{background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden}.package-head{background:var(--navy);color:#fff;padding:24px;border-bottom:4px solid var(--gold)}.package-head h2{color:#fff;margin:0 0 6px}.package-head p{margin:0;color:#dce5ee}.package-body{padding:26px}.package-body h3{color:var(--navy);margin:23px 0 9px}.package-body li{margin:8px 0;line-height:1.5}.fee-box{margin-top:24px;padding:19px;background:#fbf7ea;border:1px solid #e6d5a5;border-radius:8px}.fee-box strong{display:block;color:var(--navy);font-size:21px}.service-section{padding:52px 0}.service-section.alt{background:#f5f7f9}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-card{padding:24px}.service-icon{width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);margin-bottom:14px}.service-card h3{color:var(--navy);margin:0 0 9px}.service-card p{color:var(--muted);line-height:1.6}.service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 28px;margin-top:24px}.service-list div{position:relative;padding:14px 15px 14px 40px;background:#fff;border:1px solid var(--line);border-radius:8px}.service-list div:before{content:"✓";position:absolute;left:14px;color:var(--gold);font-weight:700}.service-cta{background:var(--navy);color:#fff;text-align:center;padding:48px 0}.service-cta h2{color:#fff}.service-cta p{max-width:720px;margin:0 auto 22px;color:#dce5ee;line-height:1.65}@media(max-width:850px){.package-grid,.service-grid,.service-list{grid-template-columns:1fr}}

/* Theme 1.5.4 refinements */
.single-nav-back{margin:0 0 24px}
.single-nav-back .button{background:#fff;color:var(--navy)}
.single-nav-back .button:hover{background:var(--gold);color:var(--navy)}

footer{padding:38px 0 20px}
.footer-grid{gap:30px}
.footer-grid p{margin:5px 0;line-height:1.35}
.footer-grid h4{margin:0 0 10px}
.footer-logo{margin-bottom:8px}
.copyright{margin-top:24px;padding-top:14px}

.about-page .about-intro{max-width:850px;font-size:18px;line-height:1.75}
.about-page .about-content{max-width:900px}
.about-page .about-content h2{color:var(--navy);margin-top:38px}
.about-page .about-content p{color:var(--muted);font-size:16px;line-height:1.75}
.about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:42px 0}
.about-value{border:1px solid var(--line);background:#fff;border-radius:9px;padding:24px;box-shadow:var(--shadow)}
.about-value h3{color:var(--navy);margin-bottom:8px}
.about-value p{margin:0;color:var(--muted)}

@media(max-width:700px){
  .tabs{flex-wrap:nowrap;gap:0;justify-content:space-between}
  .tab{padding:11px 7px;font-size:11px;letter-spacing:0;flex:1 1 auto;white-space:nowrap}
  .property-detail h2{font-size:28px;white-space:nowrap}
  .about-values{grid-template-columns:1fr}
  .hero-split .hero-content h1{white-space:normal}
  .hero-split .hero-content h1 .mobile-line{display:block}
}

/* 1.5.5 property-card alignment */
.grid3{align-items:stretch}
.property-card{display:flex;flex-direction:column;height:100%}
.property-card .card-image{flex:0 0 210px}
.property-card .card-body{
  display:grid;
  grid-template-rows:minmax(58px,auto) minmax(46px,auto) minmax(48px,auto) auto auto;
  align-content:start;
  flex:1;
  width:100%;
}
.property-card .card-body h3{margin-bottom:10px}
.property-card .property-address{margin-bottom:8px}
.property-card .property-summary{align-self:start}
.property-card .price{align-self:end;margin-top:4px}
.property-card .button{align-self:end;margin-top:16px}

/* Footer accreditation logos */
.footer-accreditations{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
  margin-top:16px;
}
.footer-accreditations img{
  display:block;
  width:auto;
  max-width:115px;
  max-height:62px;
  object-fit:contain;
  background:#fff;
  border-radius:4px;
  padding:5px;
}
.footer-accreditations-label{
  width:100%;
  margin:0 0 2px;
  color:var(--gold2);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.logo{background:var(--navy);mix-blend-mode:normal}

@media(max-width:900px){
  .property-card .card-body{
    grid-template-rows:auto;
  }
}
@media(max-width:520px){
  .footer-accreditations{gap:12px}
  .footer-accreditations img{max-width:95px;max-height:54px}
}

/* 1.5.6 refinements */
.logo img,
.site-logo img,
header .logo img{
  max-height:72px;
  width:auto;
}
.logo,
.site-logo{
  display:flex;
  align-items:center;
}

.footer-accreditations{
  flex-wrap:nowrap !important;
  gap:16px;
  overflow-x:auto;
}
.footer-accreditations-label{
  flex:0 0 auto;
  width:auto;
  margin:0 8px 0 0;
}
.footer-accreditations img{
  flex:0 0 auto;
  max-width:110px;
  max-height:58px;
}
@media(max-width:600px){
  .footer-accreditations{
    gap:10px;
  }
  .footer-accreditations-label{
    display:none;
  }
  .footer-accreditations img{
    max-width:88px;
    max-height:50px;
  }
  .logo img,
  .site-logo img,
  header .logo img{
    max-height:64px;
  }
}

/* 1.5.7 footer accreditation layout */
.footer-accreditations{
  display:grid !important;
  grid-template-columns:repeat(3,max-content);
  align-items:center;
  justify-content:start;
  gap:12px 16px;
  margin-top:16px;
  overflow:visible !important;
  flex-wrap:unset !important;
}
.footer-accreditations-label{
  grid-column:1 / -1;
  width:auto !important;
  margin:0 0 2px !important;
  color:var(--gold2);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.footer-accreditations img{
  width:auto;
  max-width:110px;
  max-height:58px;
  object-fit:contain;
  background:#fff;
  border-radius:4px;
  padding:5px;
}
@media(max-width:600px){
  .footer-accreditations{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
  }
  .footer-accreditations-label{
    display:block !important;
    grid-column:1 / -1;
  }
  .footer-accreditations img{
    max-width:100%;
    max-height:50px;
    justify-self:start;
  }
}

/* 1.5.8 header logo blend fix */
.logo,
.site-logo,
header .logo,
.site-header .logo{
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
  border:0 !important;
}

/* 1.5.9 Managed Site Overview styling */
.site-overview-panel{
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  box-shadow:var(--shadow);
  padding:34px;
}
.site-overview-heading{
  margin:0 0 8px;
  color:var(--navy);
}
.site-overview-subheading{
  margin:0 0 24px;
  color:var(--muted);
}
.site-facts-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin:8px 0 28px;
}
.site-fact{
  background:var(--cream);
  border:1px solid var(--line);
  border-radius:10px;
  padding:18px 18px 16px;
}
.site-fact-label{
  display:block;
  margin-bottom:6px;
  color:var(--gold);
  font-size:11px;
  line-height:1.2;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.site-fact-value{
  display:block;
  color:var(--navy);
  font-size:16px;
  line-height:1.45;
  font-weight:700;
}
.site-overview-content{
  padding-top:26px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:16px;
  line-height:1.75;
}
.site-overview-content > *:first-child{margin-top:0}
.site-overview-content > *:last-child{margin-bottom:0}
.site-overview-content h2,
.site-overview-content h3{
  color:var(--navy);
  margin-top:28px;
  margin-bottom:10px;
}
.site-overview-content p{margin:0 0 16px}
.site-overview-content ul{
  margin:12px 0 18px 20px;
  padding:0;
}
.site-overview-content li{margin-bottom:7px}
@media(max-width:900px){
  .site-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .site-overview-panel{padding:22px 18px}
  .site-facts-grid{grid-template-columns:1fr}
}

/* 1.6.1 manual site overview boxes */
.site-facts-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.site-fact{
  min-height:118px;
}
@media(max-width:900px){
  .site-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:620px){
  .site-facts-grid{grid-template-columns:1fr;}
}

.hero-content h1 .hero-line{display:block;}

/* 1.6.3: force homepage hero heading onto two lines at all screen sizes */
.hero-split .hero-content h1 .hero-line{display:block;}

/* 1.6.4: hard line break for homepage hero on all devices */
.hero-forced-break{display:none !important;}
.hero-split .hero-content h1 .hero-line{display:block !important;width:100%;}
@media(max-width:700px){
  .hero-split .hero-content h1 .hero-line{display:block !important;width:100%;float:none !important;}
}

/* 1.6.5 mobile hero heading fit */
.hero-content h1 .hero-line,
.hero-content h1 .mobile-line{
  display:block !important;
  white-space:nowrap !important;
}

@media(max-width:700px){
  .hero-content h1{
    font-size:clamp(34px,10.5vw,48px) !important;
    line-height:1.04 !important;
    letter-spacing:-0.035em !important;
    max-width:none !important;
    width:100% !important;
  }
  .hero-content h1 .hero-line,
  .hero-content h1 .mobile-line{
    display:block !important;
    white-space:nowrap !important;
    width:100% !important;
  }
}

@media(max-width:390px){
  .hero-content h1{
    font-size:clamp(31px,9.6vw,38px) !important;
    letter-spacing:-0.04em !important;
  }
}

/* 1.6.6 tighter To Let and Managed Site page spacing */

/* Properties To Let listing banner */
.property-listing-hero{
  padding:42px 0 38px !important;
}
.property-listing-hero h1{
  margin-bottom:10px;
}
.property-listing-hero p{
  margin-bottom:0;
}

/* Individual property banner */
.property-detail-hero{
  padding:38px 0 34px !important;
}
.property-detail-hero h1{
  font-size:23px !important;
  line-height:1.18 !important;
  margin:6px 0 8px !important;
  max-width:900px;
}
.property-detail-hero p{
  margin:0;
}

/* Reduce gap from property address/hero to back button */
.property-single-content{
  padding-top:28px !important;
}
.property-single-content .single-nav-back{
  margin-bottom:20px;
}

/* More compact property fact boxes */
.property-facts{
  gap:10px;
  margin:18px 0 24px;
}
.property-fact{
  padding:11px 10px 10px !important;
  min-height:66px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.property-fact strong{
  font-size:16px !important;
  line-height:1.15;
}
.property-fact span{
  font-size:10px !important;
  margin-top:4px;
}

/* All individual managed-site banners */
.site-detail-hero{
  padding:50px 0 46px !important;
}
.site-detail-hero h1{
  font-size:clamp(34px,4.3vw,46px) !important;
  margin:7px 0 9px;
}
.site-detail-hero p{
  margin:0;
}

/* Reduce gap from site address/hero to Back to Managed Sites */
.site-single-content{
  padding-top:28px !important;
}
.site-single-content .single-nav-back{
  margin-bottom:20px;
}

@media(max-width:700px){
  .property-listing-hero{
    padding:32px 0 29px !important;
  }
  .property-detail-hero{
    padding:30px 0 27px !important;
  }
  .property-detail-hero h1{
    font-size:22px !important;
    line-height:1.2 !important;
  }
  .property-single-content,
  .site-single-content{
    padding-top:22px !important;
  }
  .property-fact{
    min-height:60px;
    padding:9px 8px !important;
  }
  .site-detail-hero{
    padding:36px 0 33px !important;
  }
  .site-detail-hero h1{
    font-size:32px !important;
  }
}

/* 1.6.7 Managed Sites archive + stronger mobile spacing rules */

/* Match Managed Sites archive banner to Properties To Let */
.managed-sites-listing-hero{
  padding:42px 0 38px !important;
}
.managed-sites-listing-hero h1{
  margin-bottom:10px !important;
}
.managed-sites-listing-hero p{
  margin-bottom:0 !important;
}

/* Strong page-specific rules so older responsive CSS cannot override them */
body.post-type-archive-tr_property .property-listing-hero,
body.post-type-archive-tr_site .managed-sites-listing-hero{
  padding-top:42px !important;
  padding-bottom:38px !important;
}

body.single-tr_property .property-detail-hero{
  padding-top:38px !important;
  padding-bottom:34px !important;
}
body.single-tr_property .property-single-content{
  padding-top:28px !important;
}
body.single-tr_property .property-detail-hero h1{
  font-size:23px !important;
  line-height:1.18 !important;
}
body.single-tr_property .property-fact{
  min-height:66px !important;
  padding:11px 10px 10px !important;
}

body.single-tr_site .site-detail-hero{
  padding-top:50px !important;
  padding-bottom:46px !important;
}
body.single-tr_site .site-single-content{
  padding-top:28px !important;
}

@media(max-width:900px){
  body.post-type-archive-tr_property .property-listing-hero,
  body.post-type-archive-tr_site .managed-sites-listing-hero{
    padding-top:30px !important;
    padding-bottom:28px !important;
  }

  body.single-tr_property .property-detail-hero{
    padding-top:28px !important;
    padding-bottom:25px !important;
  }
  body.single-tr_property .property-detail-hero h1{
    font-size:21px !important;
    line-height:1.18 !important;
    margin-top:5px !important;
    margin-bottom:7px !important;
  }
  body.single-tr_property .property-single-content{
    padding-top:18px !important;
  }
  body.single-tr_property .property-single-content .single-nav-back{
    margin-bottom:16px !important;
  }
  body.single-tr_property .property-facts{
    gap:8px !important;
    margin-top:14px !important;
    margin-bottom:20px !important;
  }
  body.single-tr_property .property-fact{
    min-height:56px !important;
    padding:8px 7px !important;
  }
  body.single-tr_property .property-fact strong{
    font-size:15px !important;
  }
  body.single-tr_property .property-fact span{
    font-size:9px !important;
  }

  body.single-tr_site .site-detail-hero{
    padding-top:32px !important;
    padding-bottom:29px !important;
  }
  body.single-tr_site .site-detail-hero h1{
    font-size:30px !important;
    line-height:1.12 !important;
    margin-top:5px !important;
    margin-bottom:7px !important;
  }
  body.single-tr_site .site-single-content{
    padding-top:18px !important;
  }
  body.single-tr_site .site-single-content .single-nav-back{
    margin-bottom:16px !important;
  }
}

/* 1.6.8 property card alignment + compact spacing */

/* Keep each property card the same height within a row */
.property-card{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
}

/* Compact image slightly */
.property-card .card-image{
  flex:0 0 195px !important;
  height:195px !important;
}

/* Use a flex column so rent + button are pushed to the bottom */
.property-card .card-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  width:100% !important;
  padding:18px 18px 16px !important;
}

/* Reserve consistent space for title/subtitle/details */
.property-card .card-body h3{
  min-height:48px !important;
  margin:0 0 7px !important;
  line-height:1.18 !important;
}
.property-card .property-address{
  min-height:38px !important;
  margin:0 0 10px !important;
  line-height:1.35 !important;
}
.property-card .property-summary{
  min-height:42px !important;
  margin:0 0 10px !important;
}

/* Price always starts the aligned bottom section */
.property-card .price{
  margin-top:auto !important;
  margin-bottom:10px !important;
  padding-top:4px !important;
}

/* Button aligned across all cards */
.property-card .button{
  margin-top:0 !important;
  width:100% !important;
}

/* Reduce excess blank space at bottom of cards */
.property-card .card-body > *:last-child{
  margin-bottom:0 !important;
}

/* Slightly tighter card gaps */
.property-grid,
.grid3{
  gap:18px !important;
}

@media(max-width:900px){
  .property-card .card-body h3,
  .property-card .property-address,
  .property-card .property-summary{
    min-height:0 !important;
  }
  .property-card .price{
    margin-top:14px !important;
  }
}

@media(max-width:700px){
  .property-card .card-image{
    flex-basis:180px !important;
    height:180px !important;
  }
  .property-card .card-body{
    padding:16px 16px 14px !important;
  }
}
\n/* 1.6.9 property price alignment */\n.property-card .price{\n  text-align:left !important;\n  align-self:stretch !important;\n}\n
/* 1.6.10 keep archive titles on one line on mobile */
@media(max-width:700px){
  body.post-type-archive-tr_property .property-listing-hero h1,
  body.post-type-archive-tr_site .managed-sites-listing-hero h1{
    white-space:nowrap !important;
    font-size:clamp(30px,8.8vw,40px) !important;
    line-height:1.08 !important;
    letter-spacing:-0.025em !important;
    width:100% !important;
    max-width:none !important;
  }
}

@media(max-width:390px){
  body.post-type-archive-tr_property .property-listing-hero h1,
  body.post-type-archive-tr_site .managed-sites-listing-hero h1{
    font-size:clamp(27px,8vw,32px) !important;
  }
}

/* 1.6.11 force property-card rent/price to the left */
body.post-type-archive-tr_property .property-card .price,
body.post-type-archive-tr_property .property-card .property-price,
body.post-type-archive-tr_property .property-card [class*="price"],
body.home .property-card .price,
body.home .property-card .property-price,
body.home .property-card [class*="price"]{
  text-align:left !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
  align-self:stretch !important;
  width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* If the price row is a flex container, keep its contents at the left edge */
body.post-type-archive-tr_property .property-card .price *,
body.post-type-archive-tr_property .property-card .property-price *,
body.home .property-card .price *,
body.home .property-card .property-price *{
  text-align:left !important;
  margin-left:0 !important;
  margin-right:auto !important;
}

/* 1.6.12 compact managed-site overview information boxes */
.site-overview-panel .site-facts,
.site-overview-panel .overview-facts,
.site-overview-panel .overview-grid{
  align-items:start !important;
}

.site-overview-panel .site-fact,
.site-overview-panel .overview-fact,
.site-overview-panel .fact-card{
  min-height:0 !important;
  height:auto !important;
  padding:16px 18px !important;
  align-self:start !important;
}

.site-overview-panel .site-fact strong,
.site-overview-panel .overview-fact strong,
.site-overview-panel .fact-card strong{
  margin-bottom:4px !important;
  line-height:1.2 !important;
}

.site-overview-panel .site-fact span,
.site-overview-panel .overview-fact span,
.site-overview-panel .fact-card span{
  margin-bottom:0 !important;
  line-height:1.35 !important;
}

@media(max-width:700px){
  .site-overview-panel .site-fact,
  .site-overview-panel .overview-fact,
  .site-overview-panel .fact-card{
    padding:13px 15px !important;
  }
}

/* 1.6.13 compact Client Information page hero banners */
body.page .service-hero,
body.page .page-hero{
  /* general service templates may use either class; page-specific selectors below limit effect */
}

body.page-template-page-block-estate-management .page-hero,
body.page-template-page-block-estate-management .service-hero,
body.page-template-page-landlord-information .page-hero,
body.page-template-page-landlord-information .service-hero{
  padding-top:42px !important;
  padding-bottom:38px !important;
}

@media(max-width:700px){
  body.page-template-page-block-estate-management .page-hero,
  body.page-template-page-block-estate-management .service-hero,
  body.page-template-page-landlord-information .page-hero,
  body.page-template-page-landlord-information .service-hero{
    padding-top:30px !important;
    padding-bottom:28px !important;
  }
}

/* 1.6.14 make Landlord and Block & Estate Management hero banners equal height */
body.page-template-page-block-estate-management .page-hero,
body.page-template-page-block-estate-management .service-hero,
body.page-template-page-landlord-information .page-hero,
body.page-template-page-landlord-information .service-hero{
  height:240px !important;
  min-height:240px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  display:flex !important;
  align-items:center !important;
}

body.page-template-page-block-estate-management .page-hero > .container,
body.page-template-page-block-estate-management .service-hero > .container,
body.page-template-page-landlord-information .page-hero > .container,
body.page-template-page-landlord-information .service-hero > .container{
  width:100% !important;
}

@media(max-width:700px){
  body.page-template-page-block-estate-management .page-hero,
  body.page-template-page-block-estate-management .service-hero,
  body.page-template-page-landlord-information .page-hero,
  body.page-template-page-landlord-information .service-hero{
    height:220px !important;
    min-height:220px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
  }
}

/* 1.6.17 compact client-information banners */
body.page-template-page-landlord-information .service-hero,
body.page-template-page-block-estate-management .service-hero{
  height:auto !important;
  min-height:0 !important;
  padding:30px 0 28px !important;
  display:block !important;
}
body.page-template-page-landlord-information .service-hero h1,
body.page-template-page-block-estate-management .service-hero h1{
  margin-top:5px !important;
  margin-bottom:6px !important;
  line-height:1.08 !important;
}
body.page-template-page-landlord-information .service-title-line{
  display:block !important;
  white-space:nowrap !important;
}
@media(max-width:700px){
  body.page-template-page-landlord-information .service-hero,
  body.page-template-page-block-estate-management .service-hero{
    padding:22px 0 20px !important;
  }
  body.page-template-page-landlord-information .service-hero h1,
  body.page-template-page-block-estate-management .service-hero h1{
    font-size:clamp(29px,8.2vw,38px) !important;
    line-height:1.05 !important;
  }
}
@media(max-width:390px){
  body.page-template-page-landlord-information .service-hero h1,
  body.page-template-page-block-estate-management .service-hero h1{
    font-size:clamp(26px,7.7vw,31px) !important;
  }
}

/* 1.6.18 robust Client Information hero sizing */
.client-info-hero{
  height:auto !important;
  min-height:0 !important;
  padding:28px 0 26px !important;
  display:block !important;
}
.client-info-hero .eyebrow{
  margin-bottom:5px !important;
}
.client-info-hero h1{
  margin-top:0 !important;
  margin-bottom:0 !important;
  line-height:1.08 !important;
}
.client-info-hero p{
  margin-top:7px !important;
  margin-bottom:0 !important;
}
.service-title-first,
.service-title-second{
  display:inline !important;
  white-space:normal !important;
}
@media(max-width:700px){
  .client-info-hero{
    padding:20px 0 18px !important;
  }
  .client-info-hero h1{
    font-size:clamp(28px,8vw,36px) !important;
    line-height:1.05 !important;
  }
  body .client-info-hero .service-title-first,
  body .client-info-hero .service-title-second{
    display:block !important;
    white-space:nowrap !important;
  }
}
@media(max-width:390px){
  .client-info-hero h1{
    font-size:clamp(25px,7.5vw,30px) !important;
  }
}

/* 1.6.19 align Client Information heroes with archive heroes */
.client-info-hero .container{
  width:min(1120px,calc(100% - 48px)) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.client-info-hero h1{
  font-size:50px !important;
  line-height:1.08 !important;
  letter-spacing:normal !important;
  max-width:none !important;
}

/* Keep the compact vertical sizing while matching archive alignment */
.client-info-hero{
  padding:28px 0 26px !important;
}

@media(max-width:900px){
  .client-info-hero .container{
    width:min(1120px,calc(100% - 36px)) !important;
  }
}

@media(max-width:700px){
  .client-info-hero{
    padding:20px 0 18px !important;
  }
  .client-info-hero h1{
    font-size:clamp(32px,9vw,42px) !important;
    line-height:1.05 !important;
  }
  .client-info-hero .container{
    width:calc(100% - 32px) !important;
  }
  .client-info-hero .service-title-first,
  .client-info-hero .service-title-second{
    display:block !important;
    white-space:nowrap !important;
  }
}

@media(max-width:390px){
  .client-info-hero h1{
    font-size:clamp(29px,8.4vw,34px) !important;
  }
}

/* 1.6.20 About Us hero matched to updated main-page banners */
.about-us-hero{
  height:auto !important;
  min-height:0 !important;
  padding:28px 0 26px !important;
}
.about-us-hero .container{
  width:min(1120px,calc(100% - 48px)) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.about-us-hero h1{
  font-size:50px !important;
  line-height:1.08 !important;
  margin-top:0 !important;
  margin-bottom:8px !important;
  letter-spacing:normal !important;
}
.about-us-hero p{
  margin-top:0 !important;
  margin-bottom:0 !important;
  max-width:720px !important;
}
@media(max-width:900px){
  .about-us-hero .container{
    width:min(1120px,calc(100% - 36px)) !important;
  }
}
@media(max-width:700px){
  .about-us-hero{
    padding:20px 0 18px !important;
  }
  .about-us-hero .container{
    width:calc(100% - 32px) !important;
  }
  .about-us-hero h1{
    font-size:clamp(32px,9vw,42px) !important;
    line-height:1.05 !important;
    margin-bottom:6px !important;
  }
}
@media(max-width:390px){
  .about-us-hero h1{
    font-size:clamp(29px,8.4vw,34px) !important;
  }
}

/* 1.6.21 Contact page hero matched to updated main-page banners */
.contact-page-hero{
  height:auto !important;
  min-height:0 !important;
  padding:28px 0 26px !important;
}
.contact-page-hero .container{
  width:min(1120px,calc(100% - 48px)) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.contact-page-hero h1{
  font-size:50px !important;
  line-height:1.08 !important;
  margin-top:0 !important;
  margin-bottom:8px !important;
  letter-spacing:normal !important;
}
.contact-page-hero p{
  margin-top:0 !important;
  margin-bottom:0 !important;
  max-width:720px !important;
}
@media(max-width:900px){
  .contact-page-hero .container{
    width:min(1120px,calc(100% - 36px)) !important;
  }
}
@media(max-width:700px){
  .contact-page-hero{
    padding:20px 0 18px !important;
  }
  .contact-page-hero .container{
    width:calc(100% - 32px) !important;
  }
  .contact-page-hero h1{
    font-size:clamp(32px,9vw,42px) !important;
    line-height:1.05 !important;
    margin-bottom:6px !important;
  }
}
@media(max-width:390px){
  .contact-page-hero h1{
    font-size:clamp(29px,8.4vw,34px) !important;
  }
}

/* 1.6.22 mobile Get In Touch navigation item */
.nav-links .menu-item-tyd-mobile-contact{
  display:none;
}

@media(max-width:900px){
  /* Header button is hidden in compact mobile header; show equivalent inside opened menu */
  .nav-links .menu-item-tyd-mobile-contact{
    display:block !important;
  }

  .nav-links .menu-item-tyd-mobile-contact > a{
    color:var(--gold2) !important;
    font-weight:800 !important;
  }
}


/* 1.6.23 menu, About Us spacing, Contact page and Privacy Policy */

/* Client Information is a dropdown heading, not a destination. */
.nav-links a.menu-parent-static{
  cursor:default !important;
}
.nav-links a.menu-parent-static:hover{
  border-bottom-color:transparent;
}

/* About Us: remove the extra top margin before the first three cards. */
.about-page .about-values{
  margin-top:0 !important;
}

/* Contact page refinements. */
.contact-page-content .contact-detail-card{
  min-height:0 !important;
}

.business-hours-box{
  border:1px solid var(--line) !important;
  border-left:4px solid var(--gold) !important;
  background:#fff !important;
  border-radius:9px !important;
  padding:22px 24px !important;
  box-shadow:var(--shadow);
  margin-top:24px;
  margin-bottom:14px;
}
.business-hours-box h2,
.business-hours-box h3,
.business-hours-box h4{
  color:var(--navy);
  margin-top:0 !important;
  margin-bottom:10px !important;
}

.office-location-card{
  display:flex;
  align-items:center;
  gap:14px;
  border:1px solid var(--line);
  background:#f7f9fb;
  border-radius:9px;
  padding:14px 16px;
  margin:0 0 28px;
}
.office-location-pin{
  flex:0 0 34px;
  width:34px;
  height:34px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--navy);
  color:var(--gold2);
  font-size:20px;
}
.office-location-card strong{
  display:block;
  color:var(--navy);
}
.office-location-card span{
  display:block;
  color:var(--muted);
  font-size:13px;
}
.office-location-card .button{
  margin-left:auto;
  padding:9px 14px;
}

/* Privacy Policy page */
.privacy-policy-hero{
  height:auto !important;
  min-height:0 !important;
  padding:28px 0 26px !important;
}
.privacy-policy-hero .container{
  width:min(1120px,calc(100% - 48px)) !important;
  margin:auto !important;
}
.privacy-policy-hero h1{
  font-size:50px !important;
  line-height:1.08 !important;
  margin:0 0 8px !important;
}
.privacy-policy-hero p{
  margin:0;
}
.privacy-policy-content{
  max-width:900px;
}
.privacy-policy-content h2{
  color:var(--navy);
  margin:34px 0 10px;
  font-size:25px;
}
.privacy-policy-content p,
.privacy-policy-content li{
  color:var(--muted);
  line-height:1.75;
}
.privacy-policy-content a{
  text-decoration:underline;
  text-decoration-color:var(--gold);
  text-underline-offset:3px;
}

@media(max-width:900px){
  .privacy-policy-hero .container{
    width:min(1120px,calc(100% - 36px)) !important;
  }
}

@media(max-width:700px){
  .about-page{
    padding-top:38px !important;
  }

  /* Phone/email cards should feel compact on a phone, not like large feature panels. */
  .contact-page-content .contact-detail-card{
    padding:14px 16px !important;
    margin-bottom:12px !important;
    min-height:0 !important;
  }
  .contact-page-content .contact-detail-card h2,
  .contact-page-content .contact-detail-card h3,
  .contact-page-content .contact-detail-card h4{
    margin:0 0 5px !important;
    font-size:18px !important;
  }
  .contact-page-content .contact-detail-card p{
    margin:3px 0 !important;
  }
  .contact-page-content .contact-detail-card a{
    overflow-wrap:anywhere;
    word-break:break-word;
  }

  .business-hours-box{
    padding:17px 18px !important;
    margin-top:18px;
  }

  .office-location-card{
    align-items:flex-start;
    flex-wrap:wrap;
    gap:10px 12px;
    padding:13px 14px;
  }
  .office-location-card .button{
    width:100%;
    margin-left:0;
    margin-top:2px;
  }

  .privacy-policy-hero{
    padding:20px 0 18px !important;
  }
  .privacy-policy-hero .container{
    width:calc(100% - 32px) !important;
  }
  .privacy-policy-hero h1{
    font-size:clamp(32px,9vw,42px) !important;
    line-height:1.05 !important;
  }
  .privacy-policy-content h2{
    font-size:22px;
    margin-top:28px;
  }
}


/* 1.6.24 Site Management Terms link and page */
.terms-link-box{
  margin-top:22px !important;
}
.terms-link-box strong{
  display:block;
  margin-bottom:7px;
}
.terms-link-box span{
  display:block;
  margin-bottom:12px;
}
.terms-link-box a{
  display:inline-block;
  color:var(--navy);
  font-weight:800;
  text-decoration:underline;
  text-decoration-color:var(--gold);
  text-underline-offset:3px;
}

.site-management-terms-hero{
  height:auto !important;
  min-height:0 !important;
  padding:28px 0 26px !important;
}
.site-management-terms-hero .container{
  width:min(1120px,calc(100% - 48px)) !important;
  margin:auto !important;
}
.site-management-terms-hero h1{
  font-size:50px !important;
  line-height:1.08 !important;
  margin:0 0 8px !important;
}
.site-management-terms-hero p{
  margin:0 !important;
  max-width:760px;
}
.site-management-terms-content{
  max-width:900px;
}
.site-management-terms-content h2{
  color:var(--navy);
  margin:34px 0 10px;
  font-size:25px;
}
.site-management-terms-content h3{
  color:var(--navy);
  margin:25px 0 8px;
  font-size:20px;
}
.site-management-terms-content p,
.site-management-terms-content li{
  color:var(--muted);
  line-height:1.75;
}
.terms-awaiting-content{
  border:1px solid var(--line);
  border-left:4px solid var(--gold);
  border-radius:8px;
  background:#fff;
  padding:22px 24px;
}
.terms-awaiting-content p{
  margin-bottom:0;
}

@media(max-width:900px){
  .site-management-terms-hero .container{
    width:min(1120px,calc(100% - 36px)) !important;
  }
}
@media(max-width:700px){
  .terms-link-box{
    margin-top:18px !important;
    padding:16px !important;
  }
  .site-management-terms-hero{
    padding:20px 0 18px !important;
  }
  .site-management-terms-hero .container{
    width:calc(100% - 32px) !important;
  }
  .site-management-terms-hero h1{
    font-size:clamp(29px,8.5vw,38px) !important;
    line-height:1.08 !important;
  }
  .site-management-terms-content h2{
    font-size:22px;
    margin-top:28px;
  }
}


/* 1.6.25 supplied Site Management Terms formatting */
.site-management-terms-content .terms-document{
  max-width:900px;
}
.site-management-terms-content .terms-document > h2:first-child{
  margin-top:0;
}
.site-management-terms-content .terms-document h2{
  padding-top:4px;
  border-bottom:1px solid var(--line);
  padding-bottom:8px;
}
.site-management-terms-content .terms-roman,
.site-management-terms-content .terms-fees-list{
  padding-left:24px;
}
.site-management-terms-content .terms-roman li,
.site-management-terms-content .terms-fees-list li{
  margin-bottom:12px;
}
.site-management-terms-content .terms-fees-list{
  border:1px solid var(--line);
  border-left:4px solid var(--gold);
  background:#fff;
  border-radius:8px;
  padding:20px 22px 8px 42px;
}


/* 1.6.26 Block & Estate Management alignment and card spacing */

/* Keep the two lower package cards and their gold accent boxes aligned. */
body.page-id-0 .package-grid,
.page .package-grid{
  align-items:stretch;
}

.page-template-page-block-estate-management .package-card,
body.page .service-section .package-grid .package-card{
  display:flex;
  flex-direction:column;
}

.page-template-page-block-estate-management .package-body,
body.page .service-section .package-grid .package-body{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
}

.page-template-page-block-estate-management .package-body .fee-box,
body.page .service-section .package-grid .package-body .fee-box{
  margin-top:auto !important;
}

/* Match the height/position of the two gold boxes even when the body text above differs. */
.page-template-page-block-estate-management .package-grid .fee-box,
body.page .service-section .package-grid .fee-box{
  min-height:112px;
  box-sizing:border-box;
}

/* Compact the service cards on Block & Estate Management. */
.page-template-page-block-estate-management .service-grid .service-card,
body.page .service-page .service-grid .service-card{
  min-height:0 !important;
  padding-bottom:18px !important;
}

.page-template-page-block-estate-management .service-grid .service-card p:last-child,
body.page .service-page .service-grid .service-card p:last-child{
  margin-bottom:0 !important;
}

@media(max-width:700px){
  .page-template-page-block-estate-management .package-grid .fee-box,
  body.page .service-section .package-grid .fee-box{
    min-height:0;
  }

  .page-template-page-block-estate-management .service-grid .service-card,
  body.page .service-page .service-grid .service-card{
    padding-bottom:15px !important;
  }
}
