/*
Theme Name: MainStreet Reference Navy Gold
Description: Faithful adaptation of MainStreet_Website_Preview(2).html. Editable page content, customizable header/footer.
Version: 2.1.0
Requires PHP: 8.0
Text Domain: mainstreet-reference
*/
/*
Theme Name: MainStreet Property Management
Description: An accessible, responsive custom theme for MainStreet.Rentals. Install MainStreet Rentals Tools for starter pages, rental listings and inquiry forms.
Version: 1.1.0
Requires at least: 6.5
Requires PHP: 8.0
Author: MainStreet Property Management
License: GPL-2.0-or-later
Text Domain: mainstreet-pm
*/
:root{--navy:#153c43;--teal:#1c655b;--gold:#dab87a;--cream:#f6f4ed;--ink:#203b40;--muted:#53666a;--line:#d8e1dc;--white:#fff;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font:17px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--teal);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:5px}:focus-visible{outline:3px solid #ac711c}.skip-link{position:absolute;left:20px;top:-100px;background:white;padding:14px;z-index:100}.skip-link:focus{top:10px}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.topbar{background:var(--navy);color:#fff;font-size:12px;letter-spacing:1.4px;text-transform:uppercase;padding:9px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:20px}.topbar a{color:#fff}.site-header{background:#fff;border-bottom:1px solid var(--line)}.header-row{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--navy)}.brand-mark{width:46px;height:46px;display:grid;place-items:center;background:var(--navy);color:var(--gold);border-radius:50%;font:30px Georgia,serif}.brand strong{display:block;font:700 28px/1.1 Georgia,serif;letter-spacing:-1px}.brand small{display:block;font-size:10px;letter-spacing:2px;text-transform:uppercase}.custom-logo{width:190px;max-height:80px;object-fit:contain}.nav-list{display:flex;align-items:center;gap:22px;list-style:none;margin:0;padding:0;font-size:14px}.nav-list a{color:var(--ink);text-decoration:none}.nav-list .current-menu-item>a{text-decoration:underline}.nav-list li{position:relative}.nav-list .sub-menu{display:none;position:absolute;top:100%;left:0;padding:15px;min-width:220px;list-style:none;background:white;box-shadow:0 8px 20px #153c4320;z-index:10}.nav-list li:hover>.sub-menu,.nav-list li:focus-within>.sub-menu{display:block}.nav-list .sub-menu li{margin:8px 0}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:6px;padding:8px 12px}.button,.wp-block-button__link{display:inline-flex;justify-content:center;align-items:center;gap:12px;background:var(--teal);color:white;border:1px solid transparent;padding:13px 22px;border-radius:5px;text-decoration:none;font-weight:650;font-size:15px;cursor:pointer}.button:hover{background:var(--navy)}.button.light{background:var(--gold);color:var(--navy)}.button.outline{border-color:var(--line);background:transparent;color:var(--navy)}.hero{background:var(--cream);padding:70px 0 62px}.hero-grid{display:grid;grid-template-columns:1.03fr 1fr;gap:65px;align-items:center}.eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--teal);font-weight:750;margin:0 0 20px}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.12;letter-spacing:-1.3px}h1{font-size:clamp(40px,5vw,66px);margin:0 0 25px;font-weight:500}h1 em{font-weight:400;color:var(--teal)}h2{font-size:clamp(30px,3.7vw,45px);font-weight:500;margin:0 0 24px}h3{font-size:27px;font-weight:500;margin:0 0 15px;letter-spacing:-.5px}p{margin:0 0 22px}.lead{font-size:19px;line-height:1.7;color:var(--muted);max-width:660px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 20px}.micro{font-size:13px;color:var(--muted)}.hero-art{position:relative}.hero-art img{display:block;width:100%;aspect-ratio:1.05;object-fit:cover;border-radius:130px 18px 18px 18px}.art-caption{position:absolute;bottom:20px;left:20px;right:20px;background:#ffffffed;border-radius:8px;padding:17px 22px;font-size:13px}.art-caption strong{display:block;font:25px Georgia,serif;color:var(--navy)}.trust-strip{padding:20px 0;border-bottom:1px solid var(--line)}.trust-items{display:flex;justify-content:space-between;gap:16px;font-size:14px;color:var(--muted)}.section{padding:75px 0}.section.soft{background:var(--cream)}.section.dark{background:var(--navy);color:white}.section.dark .eyebrow{color:var(--gold)}.section.dark p{color:#d6e4df}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-heading h2{max-width:570px;margin-bottom:0}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.card{padding:32px;border:1px solid var(--line);border-radius:var(--radius);background:white}.card p{color:var(--muted)}.card-number{display:block;color:var(--teal);font-size:12px;letter-spacing:2px;margin-bottom:24px}.plan{padding:38px;border:1px solid var(--line);border-radius:var(--radius);background:white}.plan.featured{border-top:5px solid var(--teal)}.plan .price{font:58px/1 Georgia,serif;color:var(--navy);margin:20px 0 12px}.plan .price small{font:16px system-ui}.plan ul{padding-left:20px;margin-bottom:25px}.plan li{margin-bottom:8px}.label{display:inline-block;background:#e6f0eb;color:var(--teal);font-size:11px;letter-spacing:1.5px;padding:6px 10px;border-radius:4px;text-transform:uppercase}.city-links{list-style:none;margin:20px 0 0;padding:0;border-top:1px solid var(--line)}.city-links li{border-bottom:1px solid var(--line)}.city-links a{display:flex;justify-content:space-between;padding:18px 0;text-decoration:none;font-weight:600;color:var(--navy)}.city-links a:after{content:'↗';font-size:22px;color:var(--teal)}.step{border-top:1px solid var(--line);padding:24px 0}.step span{font-size:12px;letter-spacing:1px;color:var(--teal)}.step h3{margin-top:10px}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-inner h2{margin-bottom:15px}.cta-inner p{margin-bottom:0}.page-hero{padding:65px 0 50px;background:var(--cream)}.page-hero h1{font-size:clamp(38px,4.5vw,58px);max-width:850px}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:25px}.page-body{padding:55px 0 75px}.page-content{max-width:850px}.page-content h2{margin-top:38px;font-size:34px}.page-content h3{margin-top:26px}.page-content ul{padding-left:22px}.page-content li{margin-bottom:10px}.page-content .grid-2,.page-content .grid-3{margin:30px 0}.page-content .card h3{margin-top:0}.page-content .plan h3{margin-top:0}.wide-content{max-width:none}.notice{padding:20px;background:var(--cream);border-left:4px solid var(--teal);border-radius:4px;margin:20px 0}.error{border-left-color:#a52b2b}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.field.full{grid-column:1/-1}.field label{font-size:14px;font-weight:600}.field input,.field select,.field textarea{width:100%;padding:12px;border:1px solid #9cadaa;border-radius:5px;background:white}.field textarea{min-height:130px}.check{display:flex;align-items:start;gap:10px;font-size:14px;margin:15px 0 25px}.check input{margin-top:6px}.hp{position:absolute;left:-9999px}.ms-form{max-width:780px}.ms-form button{border:0}.rental-card img{width:100%;height:220px;object-fit:cover;border-radius:12px}.rental-meta{font-size:14px;color:var(--muted)}.rental-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.rental-gallery img{width:100%;height:220px;object-fit:cover;border-radius:8px}.site-footer{background:#102e35;color:#e5eee8;padding:55px 0 20px;font-size:14px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.site-footer h3{color:white;font-size:27px}.site-footer a{color:#e5eee8}.site-footer ul{list-style:none;padding:0}.site-footer li{margin:8px 0}.footer-bottom{border-top:1px solid #416069;margin-top:35px;padding-top:20px;font-size:12px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.alignwide{max-width:1180px}.wp-block-image img{border-radius:12px}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.nav-list{gap:13px;font-size:13px}.header-row>.button{display:none}.hero-grid{gap:35px}.hero{padding-top:45px}.hero-art img{border-top-left-radius:90px}}
@media(max-width:800px){.wrap{width:calc(100% - 36px)}.header-row{min-height:85px;flex-wrap:wrap;padding:14px 0}.menu-toggle{display:block}.site-nav{display:none;width:100%}.site-nav.is-open{display:block}.nav-list{flex-direction:column;align-items:stretch;gap:0;padding:10px 0}.nav-list a{display:block;padding:10px 0}.nav-list .sub-menu{display:block;position:static;box-shadow:none;padding:0 0 0 15px}.hero-grid,.split{grid-template-columns:1fr;gap:35px}.hero-art{max-width:550px}.hero-art img{aspect-ratio:1.3}.grid-3{grid-template-columns:1fr}.section{padding:50px 0}.trust-items{flex-wrap:wrap;justify-content:center;text-align:center}.section-heading,.cta-inner{display:block}.section-heading>a,.cta-inner>a{margin-top:20px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.topbar .wrap>span:last-child{display:none}.plan{padding:25px}.rental-gallery{grid-template-columns:1fr 1fr}}
@media(max-width:550px){.grid-2,.form-grid{grid-template-columns:1fr}.card{padding:25px}.brand strong{font-size:26px}.hero{padding:42px 0}.hero-art img{border-top-left-radius:65px}.actions .button{width:100%}.page-hero{padding:45px 0 30px}.footer-grid{grid-template-columns:1fr}.rental-gallery{grid-template-columns:1fr}.section-heading h2{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* MainStreet v2: service-led layout with original property imagery. */
:root{--navy:#163b4a;--teal:#245e67;--gold:#f0be70;--cream:#f5f7f7;--ink:#203841;--muted:#52646b}
h1,h2,h3{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-1.5px}h2{font-weight:650;font-size:clamp(30px,3.4vw,44px);line-height:1.2}h3{font-size:24px;font-weight:650;letter-spacing:-.6px}.brand strong{font-family:Georgia,serif}.eyebrow{letter-spacing:2.5px}.button,.wp-block-button__link{border-radius:3px;padding:15px 24px}.photo-hero{position:relative;min-height:610px;display:flex;align-items:center;background:var(--navy);color:#fff;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 56%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,34,44,.94) 0%,rgba(13,34,44,.87) 33%,rgba(13,34,44,.35) 68%,rgba(13,34,44,.05) 100%)}.photo-hero-copy{position:relative;padding:72px 0 100px}.photo-hero h1{font-size:clamp(40px,4.6vw,64px);line-height:1.13;font-weight:650;letter-spacing:-2.3px;max-width:740px}.photo-hero h1 em{color:var(--gold);font-style:normal;font-weight:650}.photo-hero .eyebrow{color:#f8d799}.photo-hero p:not(.eyebrow){max-width:590px;color:#fff;font-size:19px;line-height:1.7}.hero-outline{border:1px solid #dbe7e8;background:transparent;color:#fff}.hero-outline:hover{background:#ffffff18}.hero-note{font-size:13px;color:#e3eeee}.quick-paths{position:relative;margin-top:-48px;z-index:2}.quick-path-grid{display:grid;grid-template-columns:repeat(3,1fr);background:white;box-shadow:0 14px 35px #13313d17;border-bottom:4px solid var(--gold)}.quick-path-grid>a{display:flex;align-items:center;gap:18px;padding:30px 24px;text-decoration:none;border-right:1px solid var(--line);color:var(--navy)}.quick-path-grid>a:last-child{border-right:0}.quick-path-grid>a:hover{background:var(--cream)}.quick-path-grid small{display:block;font-size:10px;font-weight:750;letter-spacing:1.8px;color:var(--teal)}.quick-path-grid strong{display:block;font-size:18px;line-height:1.4;margin:7px 0}.quick-path-grid a>span>span{font-size:12px;color:var(--muted)}.path-icon{display:grid;place-items:center;width:45px;height:45px;flex-shrink:0;border:1px solid #d7ba87;border-radius:50%;font-size:13px;font-weight:600;color:var(--navy)}.welcome-grid{align-items:center;gap:70px}.welcome-image{position:relative;isolation:isolate;padding:0 20px 20px 0}.welcome-image img{display:block;height:470px;object-fit:cover;object-position:76%;border-radius:4px}.welcome-image:before{content:'';position:absolute;inset:35px 0 0 30px;background:var(--gold);z-index:-1}.image-tag{position:absolute;bottom:45px;left:-10px;background:var(--navy);color:white;padding:24px 30px;font-size:13px;letter-spacing:2px;line-height:1.7}.local-facts{display:flex;gap:50px;margin:27px 0;border-top:1px solid var(--line);padding-top:25px}.local-facts strong{display:block;font-size:40px;line-height:1.1;color:var(--teal)}.local-facts span{display:block;font-size:12px;margin-top:6px}.service-grid .card{border-radius:4px;padding:30px;background:#fff}.service-symbol{display:inline-grid;place-items:center;width:48px;height:48px;background:#edf3f3;color:var(--teal);border-left:3px solid var(--gold);font-size:13px;font-weight:700;margin-bottom:20px}.service-grid .card p{font-size:15px;margin-bottom:0}.reassurance{border-left:12px solid var(--gold)}.plan{border-radius:4px}.plan.featured{border-top-color:var(--gold)}.page-hero{border-bottom:4px solid #eac48a}.page-hero h1{font-weight:650}.section{padding:80px 0}.page-content h2{font-size:31px}.site-footer h3{font-family:Georgia,serif}.topbar a{text-decoration:none}.topbar a:hover{text-decoration:underline}
@media(max-width:1050px){.quick-path-grid>a{padding:25px 18px;gap:12px}.quick-path-grid strong{font-size:16px}.welcome-grid{gap:40px}.photo-hero{min-height:570px}}
@media(max-width:800px){.photo-hero{min-height:560px}.photo-hero-copy{padding:65px 0 95px}.hero-shade{background:linear-gradient(90deg,rgba(13,34,44,.93),rgba(13,34,44,.69))}.quick-path-grid{grid-template-columns:1fr}.quick-path-grid>a{border-right:0;border-bottom:1px solid var(--line);padding:20px}.quick-paths{margin-top:-35px}.welcome-image{max-width:550px}.welcome-image img{height:380px}.section{padding:55px 0}.topbar .wrap>span:last-child{display:block;letter-spacing:0}.welcome-grid{gap:35px}}
@media(max-width:550px){.photo-hero{min-height:610px}.photo-hero h1{font-size:40px;letter-spacing:-1.6px}.photo-hero p:not(.eyebrow){font-size:17px}.photo-hero-copy{padding-top:45px}.hero-photo{object-position:68%}.topbar{font-size:10px;letter-spacing:.5px}.topbar .wrap{gap:8px}.local-facts{gap:30px}.image-tag{left:0;font-size:11px;padding:20px}.welcome-image{padding-left:10px}.welcome-image img{height:340px}}

/* Approved navy and gold palette; original typography/layout retained */
:root{--navy:#102A43;--teal:#C6A15B;--gold:#C6A15B;--cream:#F7F5F0;--ink:#20334A;--muted:#536477;--line:#DCE1E8}
.topbar{background:#102A43}.site-footer{background:#092536}.photo-hero{background:#102A43}.hero-shade{background:linear-gradient(90deg,rgba(8,28,49,.94) 0%,rgba(8,28,49,.85) 36%,rgba(8,28,49,.35) 70%,rgba(8,28,49,.06) 100%)}
.photo-hero .eyebrow,.section.dark .eyebrow{color:#E4C68D}.photo-hero h1 em{color:#E6BF79}h1 em{color:#C6A15B}.button,.wp-block-button__link{background:#102A43;color:#fff}.button:hover,.wp-block-button__link:hover{background:#183D5D;color:white}.button.light{background:#C6A15B;color:#102A43}.button.light:hover{background:#E0B96F;color:#102A43}.button.outline{background:#102A43;border-color:#102A43;color:#fff}.button.outline:hover{background:#1B4565;color:white}
.plan .button:not(.light){background:#102A43;color:white}.plan .button.light,.plan.featured .button{background:#C6A15B;color:#102A43}.plan .button:hover{filter:brightness(1.08)}.plan.featured{border-top-color:#C6A15B}
/* Rental evaluation is a separate, softer navy band, not part of main footer */
.section.dark:has(.cta-inner){background:#19465B;color:#fff;padding:54px 0}.section.dark:has(.cta-inner) .button{background:#C6A15B;color:#102A43}.site-footer{padding:40px 0 20px}.footer-bottom{margin-top:25px}
/* WordPress block content layout without unwanted auto wrappers */
.ms-reference-content{max-width:none;margin:0}.ms-reference-content .page-hero,.ms-reference-content .page-body{width:100%}.ms-reference-content img{max-width:100%}.page-hero .wrap,.page-body .wrap{max-width:1180px}.entry-page .page-content{max-width:850px;margin:0 auto}.entry-page .page-content.wide-content{max-width:1180px}.site-header .brand strong{font-size:28px}
.ms-reference-content .ms-form{max-width:780px}.ms-reference-content .ms-form input,.ms-reference-content .ms-form textarea{max-width:100%}
@media(max-width:800px){.site-header .brand strong{font-size:26px}}

/* v2.1.0 — Mobile layout refinements only. No changes to desktop design. */
@media (max-width: 800px) {
  /* Larger navigation targets and quiet separators; keep desktop nav unchanged. */
  .site-nav .nav-list { padding: 8px 0 12px; }
  .site-nav .nav-list > li { border-bottom: 1px solid #e7eaf0; }
  .site-nav .nav-list > li:last-child { border-bottom: 0; }
  .site-nav .nav-list > li > a {
    display: flex; align-items: center; min-height: 48px;
    padding: 11px 8px; font-size: 15px; font-weight: 550;
    line-height: 1.4; color: #102A43;
  }
  .site-nav .nav-list > li > a:hover,
  .site-nav .nav-list > li > a:focus-visible { background: #F7F5F0; }
  .site-nav .nav-list .sub-menu a { min-height: 44px; padding: 11px 8px; }
  .menu-toggle { min-height: 44px; min-width: 60px; cursor: pointer; }
  /* Reduce blank area on inner pages without touching homepage hero. */
  .entry-page .page-hero { padding-top: 40px; padding-bottom: 28px; }
  .entry-page .page-hero .breadcrumb { margin-bottom: 15px; }
  .entry-page .page-hero h1 { margin-bottom: 0; }
  .entry-page .page-body { padding-top: 32px; padding-bottom: 54px; }
  .entry-page .page-content > :first-child { margin-top: 0; }
  .entry-page .page-content > h2:first-child { margin-top: 0; }
}
@media (max-width: 550px) {
  .entry-page .page-hero { padding-top: 32px; padding-bottom: 25px; }
  .entry-page .page-body { padding-top: 27px; padding-bottom: 46px; }
  .entry-page .page-hero .breadcrumb { margin-bottom: 13px; }
}
/* MainStreet header shield logo */
.site-header .brand .brand-mark {
    width: 80px !important;
    height: 80px !important;
    min-width: 80px !important;
    background: transparent !important;
    border-radius: 0 !important;
    overflow: visible !important;
    flex-shrink: 0;
}

.site-header .brand .brand-mark img {
    width: 80px !important;
    height: 80px !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain;
    display: block;
}