:root{--navy:#132c3a;--teal:#167c80;--action:#b84a00;--gold:#d7a64a;--ink:#20323b;--muted:#64757d;--paper:#f5f7f5}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:16px/1.65 Arial,sans-serif;background:#fff}a{color:var(--teal);text-decoration:none}a:hover{color:var(--navy)}.top{background:var(--navy);color:#e9f2f3;padding:9px max(calc((100% - 1160px)/2),24px);font-size:14px;display:flex;gap:26px;justify-content:flex-end}.top a{color:inherit}.nav{max-width:1160px;margin:auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{width:190px;height:auto}.links{display:flex;gap:24px;flex-wrap:wrap;align-items:center}.links a{color:var(--navy);font-weight:700;font-size:14px}.btn{display:inline-block;background:var(--action);color:white!important;padding:13px 21px;border-radius:4px;font-weight:700}.btn:hover{background:#963b00}.hero{background-color:#132c3a;background-image:linear-gradient(90deg,rgba(19,44,58,.84),rgba(19,44,58,.64)),var(--hero-image,url('/assets/img/veigle/banner.jpg'));background-position:center;background-size:cover;background-repeat:no-repeat;color:white;padding:64px 24px}.hero>div,.wrap{max-width:1160px;margin:auto}.hero h1{font-size:clamp(36px,5vw,58px);line-height:1.12;max-width:730px;margin:10px 0}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--gold);font-weight:700;font-size:13px}.hero p{font-size:19px;max-width:700px}.section{padding:48px 24px}.soft{background:var(--paper)}h2{color:var(--navy);font-size:32px;line-height:1.2;margin:0 0 14px}h3{color:var(--navy)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:20px}.card{background:white;border:1px solid #e1e8e6;border-radius:7px;overflow:hidden;box-shadow:0 8px 24px #102f3a0d}.card img{width:100%;height:185px;object-fit:cover}.card>div{padding:18px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.intro img{width:100%;max-height:440px;object-fit:cover;border-radius:8px}.list{padding-left:20px}.cta{background:var(--navy);color:white;padding:32px 24px;text-align:center}.cta h2{color:white}.footer{background:#0d202a;color:#d9e4e6;padding:32px 24px}.footer .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer a{color:#d9e4e6}.footer p{max-width:500px}.faq details{padding:15px 0;border-bottom:1px solid #dce4e2}.faq summary{font-weight:700;color:var(--navy);cursor:pointer}.crumb{padding:14px 24px;background:#edf2f1}.crumb .wrap{font-size:14px}.copy{max-width:850px}.copy h2{margin:22px 0 9px;font-size:26px}.copy p{margin:0 0 14px}.contact-card{background:white;padding:22px;border-radius:6px;border:1px solid #e1e8e6}.notice{color:var(--muted);font-size:14px}@media(max-width:760px){.nav{align-items:flex-start;flex-direction:column}.links{gap:12px}.top{justify-content:center}.hero{padding:48px 22px}.intro{grid-template-columns:1fr}.section{padding:36px 22px}.footer{padding:28px 20px}}

.navdrop{position:relative;padding:10px 0}.navdrop>a{color:var(--navy);font-weight:700;font-size:14px}.submenu{display:none;position:absolute;z-index:20;top:100%;left:-18px;min-width:235px;background:#fff;padding:10px 0;box-shadow:0 12px 28px #102f3a24;border-top:3px solid #b51e0b}.submenu a{display:block;padding:10px 18px;color:#425b68;font-weight:400;white-space:nowrap}.submenu a:hover,.submenu a:focus{background:#f2f6f5;color:#b51e0b}.navdrop:hover .submenu,.navdrop:focus-within .submenu{display:block}@media(max-width:760px){.navdrop{padding:4px 0}.submenu{position:static;box-shadow:none;border-top:0;padding:0 0 0 12px}.navdrop:hover .submenu,.navdrop:focus-within .submenu{display:block}}

/* Accessible small-screen navigation */
.menu-toggle{display:none;align-items:center;justify-content:center;width:46px;height:42px;padding:9px;border:1px solid #d8e1e2;border-radius:4px;background:#fff;color:var(--navy);cursor:pointer}
.menu-toggle span{display:block;width:24px;height:2px;background:currentColor;margin:3px 0;transition:transform .2s ease,opacity .2s ease}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
@media(max-width:760px){.nav{position:relative;align-items:center;flex-direction:row;flex-wrap:wrap;gap:12px;padding:12px 18px}.menu-toggle{display:flex;flex-direction:column;margin-left:auto}.links{display:none;flex:0 0 100%;width:100%;align-items:stretch;flex-direction:column;gap:0;padding:8px 0 2px}.links.is-open{display:flex}.links>a,.links .navdrop>a{display:block;padding:10px 4px}.navdrop{padding:0}.navdrop .submenu{position:static;min-width:0;padding:0 0 6px 12px;box-shadow:none;border:0}.navdrop .submenu a{white-space:normal;padding:8px 10px}.top{padding:9px 14px;gap:12px;flex-wrap:wrap}}
.contact-actions{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:12px;margin-top:24px}.contact-actions .btn{text-align:center}@media(max-width:520px){.contact-actions{justify-content:flex-start}.contact-actions .btn{width:100%}}


/* SEO images and accessible text contrast */
.eyebrow{color:#76540b}
.hero .eyebrow,.cta .eyebrow{color:#f0cb70}
.footer .navdrop>a,.footer .navdrop>a:hover,.footer .navdrop>a:focus{color:#d9e4e6!important}
.property-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}
.property-gallery figure{margin:0;background:#fff;border:1px solid #dce4e2;border-radius:7px;overflow:hidden}
.property-gallery img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.property-gallery figcaption{padding:12px 16px;color:var(--ink);font-size:14px}
@media(max-width:760px){.property-gallery{grid-template-columns:1fr}}

/* Respect the reduced-motion setting chosen in a visitor's device preferences. */
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Keyboard and assistive-technology access */
.skip-link{position:absolute;left:12px;top:-100px;z-index:2147483001;padding:12px 16px;background:#fff;color:#132c3a;border:2px solid #132c3a;border-radius:4px;font-weight:700}.skip-link:focus{top:12px;outline:3px solid #0b57d0;outline-offset:2px}a:focus,button:focus,input:focus,select:focus,textarea:focus,summary:focus{outline:3px solid #0b57d0!important;outline-offset:2px!important;box-shadow:0 0 0 2px #fff!important}.hero a:focus,.footer a:focus{outline-color:#ffd166!important}.offer-form .field input:focus,.offer-form select:focus,.offer-form textarea:focus{border-color:#0b57d0;box-shadow:0 0 0 2px #fff,0 0 0 5px #0b57d0!important}

/* Keep the footer property menu above its trigger and within the viewport. */
.footer .navdrop{display:inline-block;position:relative;padding:2px 0}
.footer .footer-menu-toggle{padding:6px 0;border:0;background:transparent;color:#d9e4e6;font:700 14px/1.5 Arial,sans-serif;text-align:left;cursor:pointer}
.footer .footer-menu-toggle:hover{color:#fff}
.footer .submenu{position:absolute;top:auto;right:auto;bottom:calc(100% + 6px);left:0;z-index:1000;width:260px;max-width:calc(100vw - 32px);max-height:65vh;overflow-y:auto;border-top:3px solid var(--action)}
.footer .submenu a{white-space:normal}
.footer .navdrop:not(.is-open) .submenu{display:none!important}.footer .navdrop.is-open .submenu{display:block}

/* Make the primary seller actions easy to spot while keeping text readable. */
.hero a[href^="tel:"]{display:inline-block;min-height:48px;padding:12px 4px;color:#fff!important;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.footer a[href^="tel:"],.footer a[href^="mailto:"]{text-decoration:underline;text-underline-offset:3px}

/* Consistent footer structure: brand, contact and navigation. */
.footer{padding:34px 24px 24px}
.footer .footer-columns{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.85fr) minmax(250px,.9fr);align-items:start;gap:36px}
.footer .footer-columns>div{min-width:0}
.footer h3{margin:0 0 12px;color:#fff;font-size:20px}
.footer .footer-brand .logo{display:block;margin:0 0 12px}
.footer .footer-brand p{max-width:440px;margin:0;color:#d9e4e6}
.footer .footer-contact address{color:#d9e4e6;font-style:normal;line-height:1.8}
.footer .footer-contact a,.footer .footer-legal a{color:#d9e4e6;text-decoration:underline;text-underline-offset:3px}
.footer .footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.footer .footer-links>a{color:#d9e4e6}
.footer .footer-links>a:hover,.footer .footer-contact a:hover,.footer .footer-legal a:hover{color:#fff;text-decoration:underline}
.footer .footer-cta{display:inline-block;padding:9px 15px;border-radius:4px;background:#b84a00;color:#fff!important;font-weight:700}
.footer .footer-cta:hover{background:#963b00}
.footer .footer-menu-toggle{max-width:100%;padding:4px 0;border:0;background:transparent;color:#d9e4e6;font:700 14px/1.5 Arial,sans-serif;text-align:left;cursor:pointer}
.footer .footer-menu-toggle:hover{color:#fff;text-decoration:underline}
.footer .footer-legal{display:block;margin-top:24px!important;padding-top:16px;border-top:1px solid rgba(217,228,230,.22);color:#d9e4e6}
.footer .footer-legal small{display:flex;flex-wrap:wrap;gap:8px 16px}
@media(max-width:900px){.footer .footer-columns{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(230px,.9fr);gap:28px 36px}.footer .footer-explore{grid-column:1/-1}}
@media(max-width:600px){.footer{padding:28px 20px 20px}.footer .footer-columns{display:grid;grid-template-columns:1fr;gap:24px}.footer .footer-explore{grid-column:auto}.footer .footer-legal{margin-top:20px!important}}
/* Refined shared footer layout. */
.footer{padding:30px 24px 18px}
.footer .footer-columns{grid-template-columns:minmax(0,1.25fr) minmax(190px,.8fr) minmax(260px,1fr);gap:28px}
.footer .footer-brand .logo{width:176px}
.footer .footer-brand p{font-size:15px;line-height:1.55}
.footer .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:10px 14px}
.footer .footer-cta{justify-self:start;width:max-content;max-width:100%;padding:9px 12px}
.footer .footer-menu-toggle{font-size:14px;font-weight:600}
.footer .footer-legal{margin-top:20px!important;padding-top:13px}
@media(max-width:900px){.footer .footer-columns{grid-template-columns:minmax(0,1fr) minmax(250px,1fr);gap:24px 32px}.footer .footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.footer .footer-columns{grid-template-columns:1fr;gap:22px}.footer .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}}
.footer .footer-links{display:grid}.footer .footer-links .navdrop{grid-column:1/-1;width:100%}

/* Keep non-home page banners the same height and align their content. */
.hero:not(.home-hero){height:430px;min-height:430px;display:flex;align-items:center;padding:38px 24px}
.hero:not(.home-hero)>div{width:100%}
.hero:not(.home-hero) h1{font-size:clamp(32px,4.4vw,52px);line-height:1.08}
.hero:not(.home-hero) p{max-width:700px;margin:12px 0 16px;font-size:18px;line-height:1.5}
@media(max-width:760px){.hero:not(.home-hero){height:430px;min-height:430px;padding:28px 22px}.hero:not(.home-hero) h1{font-size:clamp(30px,8vw,42px)}.hero:not(.home-hero) p{font-size:16px;line-height:1.4}}

/* Keep footer links grouped naturally instead of spreading into a loose grid. */
.footer .footer-links{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 16px}
.footer .footer-links .navdrop{grid-column:auto;width:auto}
.footer .footer-menu-toggle{font-size:13px;font-weight:600;white-space:nowrap}
.footer .footer-brand p{max-width:380px}
@media(max-width:900px){.footer .footer-links{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px 16px}}
@media(max-width:600px){.footer .footer-links{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px 14px}}

/* Polished footer hover and keyboard focus states. */
.footer .footer-links>a:not(.footer-cta):hover,
.footer .footer-links>a:not(.footer-cta):focus-visible,
.footer .footer-contact a:hover,
.footer .footer-contact a:focus-visible,
.footer .footer-legal a:hover,
.footer .footer-legal a:focus-visible,
.footer .footer-menu-toggle:hover,
.footer .footer-menu-toggle:focus-visible {
    color: #ffd166 !important;
    text-decoration: underline;
    text-decoration-color: currentColor;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
.footer .footer-links .submenu a:hover,
.footer .footer-links .submenu a:focus-visible {
    background: #f2f6f5;
    color: #963b00 !important;
    text-decoration: none;
}
.footer a:focus,
.footer button:focus {
    outline: 2px solid #ffd166 !important;
    outline-offset: 3px !important;
    box-shadow: none !important;
    border-radius: 2px;
}
.footer .submenu a:focus {
    outline-color: #0b57d0 !important;
}
@supports selector(:focus-visible) {
    .footer a:focus:not(:focus-visible),
    .footer button:focus:not(:focus-visible) {
        outline: none !important;
        box-shadow: none !important;
    }
}
/* Hide click focus rings while preserving visible keyboard focus site-wide. */
@supports selector(:focus-visible) {
    :focus:not(:focus-visible) {
        outline: none !important;
        box-shadow: none !important;
    }
}