:root{--shell-ink:#173432;--shell-teal:#164e4a;--shell-dark:#0a312e;--shell-terra:#c96f4a;--shell-cream:#f6f1e9;--shell-line:rgba(23,52,50,.14)}
.site-header{position:fixed!important;z-index:1000!important;inset:0 0 auto!important;border-bottom:1px solid var(--shell-line)!important;background:rgba(246,241,233,.94)!important;box-shadow:none!important;backdrop-filter:blur(16px)!important;transform:translateY(0);transition:transform .32s ease,box-shadow .25s ease,background .25s ease;will-change:transform}
.site-header.nav-hidden{transform:translateY(calc(-100% - 5px))}
.site-header.nav-scrolled{box-shadow:0 12px 34px rgba(10,49,46,.11)!important;background:rgba(246,241,233,.97)!important}
.site-header .nav{width:min(1380px,calc(100% - 64px))!important;min-height:82px!important;margin:auto!important;display:grid!important;grid-template-columns:245px 1fr auto!important;align-items:center!important;gap:24px!important}
.site-header .brand{width:225px!important;display:block!important}.site-header .brand img{display:block!important;width:100%!important;height:auto!important;max-height:75px!important;object-fit:contain!important}
.site-header .nav-links{position:static!important;display:flex!important;justify-content:center!important;align-items:center!important;gap:clamp(18px,2vw,32px)!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;font-size:.86rem!important;font-weight:500!important}
.site-header .nav-link{padding:12px 0!important;color:var(--shell-ink)!important;white-space:nowrap!important}.site-header .nav-link.active,.site-header .nav-link[aria-current="page"],.site-header .service-trigger.active{color:var(--shell-terra)!important}
.site-header .service-menu{position:relative!important}.site-header .service-trigger{display:flex!important;align-items:center!important;gap:7px!important;border:0!important;background:none!important;font:inherit!important;letter-spacing:inherit!important;cursor:pointer!important}.site-header .dropdown{position:absolute!important;top:100%!important;left:50%!important;width:245px!important;padding:12px!important;border:1px solid var(--shell-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 20px 50px rgba(14,47,43,.16)!important;opacity:0!important;visibility:hidden!important;transform:translate(-50%,8px)!important;transition:.2s!important}.site-header .service-menu:hover .dropdown,.site-header .service-menu:focus-within .dropdown{opacity:1!important;visibility:visible!important;transform:translate(-50%,0)!important}.site-header .dropdown a{display:block!important;padding:10px 12px!important;border-radius:9px!important;color:var(--shell-ink)!important;font-size:.86rem!important}.site-header .dropdown a:hover,.site-header .dropdown a.current{background:#e5efec!important;color:var(--shell-terra)!important}
.site-header .nav-cta{display:inline-flex!important;min-height:46px!important;padding:0 22px!important;align-items:center!important;justify-content:center!important;border:1px solid var(--shell-teal)!important;border-radius:999px!important;color:#fff!important;background:var(--shell-teal)!important;font-size:.84rem!important;font-weight:600!important;white-space:nowrap!important}.site-header .menu-toggle{display:none!important;width:46px!important;height:46px!important;border:1px solid var(--shell-line)!important;border-radius:50%!important;color:var(--shell-ink)!important;background:#fff!important;cursor:pointer!important}
.site-footer{padding:72px 0 28px!important;color:#fff!important;background:var(--shell-dark)!important}.site-footer .shell{width:min(1240px,calc(100% - 64px))!important;margin:auto!important}.site-footer .footer-grid{display:grid!important;grid-template-columns:1.7fr .8fr .65fr!important;gap:clamp(48px,7vw,110px)!important;align-items:start!important}.site-footer .footer-brand{display:block!important;width:100%!important;max-width:270px!important;height:auto!important;padding:13px 15px!important;border-radius:5px!important;background:var(--shell-cream)!important;object-fit:contain!important}.site-footer .footer-copy{max-width:490px!important;margin:20px 0 0!important;color:rgba(255,255,255,.67)!important;font-size:.84rem!important;line-height:1.77!important}.site-footer .footer-contact{max-width:560px!important;margin-top:26px!important;padding:24px 26px!important;border:1px solid rgba(255,255,255,.14)!important;border-left:3px solid var(--shell-terra)!important;background:rgba(255,255,255,.04)!important;font-style:normal!important}.site-footer .footer-contact-label{display:block!important;margin-bottom:9px!important;color:#f4c2a7!important;font-size:.66rem!important;font-weight:700!important;letter-spacing:.14em!important}.site-footer .footer-company{display:block!important;margin-bottom:7px!important;color:#fff!important;font-size:.9rem!important}.site-footer .footer-address{max-width:480px!important;margin:0!important;color:rgba(255,255,255,.66)!important;font-size:.78rem!important;line-height:1.7!important}.site-footer .footer-contact-actions{display:flex!important;flex-wrap:wrap!important;gap:9px 22px!important;margin-top:15px!important}.site-footer .footer-contact-actions a{color:#f4c2a7!important;font-size:.78rem!important;font-weight:600!important}.site-footer .footer-contact-actions a:hover{text-decoration:underline!important}.site-footer h3{margin:0!important;color:#f4c2a7!important;font-size:.69rem!important;letter-spacing:.14em!important}.site-footer .footer-links{display:grid!important;gap:10px!important;margin-top:17px!important;color:rgba(255,255,255,.75)!important;font-size:.82rem!important}.site-footer .footer-links a,.site-footer .footer-links span{color:inherit!important}.site-footer .footer-links a:hover{color:#fff!important}.site-footer .footer-bottom{display:flex!important;justify-content:space-between!important;gap:30px!important;margin-top:55px!important;padding-top:22px!important;border-top:1px solid rgba(255,255,255,.14)!important;color:rgba(255,255,255,.54)!important;font-size:.72rem!important}
@media(max-width:900px){
  .site-header .nav{position:relative!important;width:min(100% - 32px,760px)!important;grid-template-columns:minmax(0,1fr) auto!important;min-height:78px!important;gap:16px!important}
  .site-header .brand{width:min(225px,64vw)!important}
  .site-header .nav-cta{display:none!important}
  .site-header .menu-toggle{display:grid!important;width:46px!important;height:46px!important;place-items:center!important;padding:0!important;font-size:1.25rem!important;line-height:1!important;box-shadow:0 7px 20px rgba(10,49,46,.08)!important;transition:color .2s ease,background .2s ease,transform .2s ease!important}
  .site-header .menu-toggle[aria-expanded="true"]{color:#fff!important;background:var(--shell-teal)!important;transform:rotate(90deg)!important}
  .site-header .nav-links{position:absolute!important;top:calc(100% + 8px)!important;left:0!important;right:0!important;display:none!important;max-height:calc(100dvh - 98px)!important;margin:0!important;padding:10px!important;align-items:stretch!important;gap:2px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;border:1px solid var(--shell-line)!important;border-radius:4px 26px 4px 26px!important;background:rgba(255,255,255,.98)!important;box-shadow:0 24px 65px rgba(10,49,46,.2)!important;-webkit-overflow-scrolling:touch!important}
  .site-header .nav-links.open{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  .site-header .nav-link,.site-header .service-trigger{box-sizing:border-box!important;width:100%!important;min-height:46px!important;padding:11px 14px!important;border-radius:11px!important;text-align:left!important;font-size:.92rem!important;font-weight:550!important;line-height:1.35!important}
  .site-header a.nav-link:hover,.site-header a.nav-link:focus-visible{background:#f3f7f5!important}
  .site-header .nav-link.active,.site-header .nav-link[aria-current="page"],.site-header .service-trigger.active{background:#fbf1ec!important}
  .site-header .service-menu{min-width:0!important}
  .site-header .service-trigger{justify-content:space-between!important}
  .site-header .dropdown{position:static!important;inset:auto!important;display:grid!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;max-height:0!important;margin:0!important;padding:0 8px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 6px!important;border:0!important;border-radius:14px!important;box-shadow:none!important;opacity:0!important;visibility:hidden!important;transform:none!important;overflow:hidden!important;transition:max-height .25s ease,opacity .2s ease,padding .25s ease!important}
  .site-header .service-menu:not(.open) .dropdown{display:grid!important;max-height:0!important;padding-top:0!important;padding-bottom:0!important;opacity:0!important;visibility:hidden!important}
  .site-header .service-menu:hover .dropdown,.site-header .service-menu:focus-within .dropdown,.site-header .service-menu.open .dropdown{transform:none!important}
  .site-header .service-menu.open .dropdown{max-height:420px!important;margin:2px 0 6px!important;padding:8px!important;opacity:1!important;visibility:visible!important;background:#eef4f2!important}
  .site-header .dropdown a{box-sizing:border-box!important;min-width:0!important;padding:10px 11px!important;border-radius:9px!important;font-size:.8rem!important;line-height:1.35!important;white-space:normal!important}
  .site-footer .footer-grid{grid-template-columns:repeat(2,1fr)!important}.site-footer .footer-grid>div:first-child{grid-column:1/-1!important}
}
@media(max-width:560px){
  .site-header .nav{width:min(100% - 28px,520px)!important;min-height:74px!important}
  .site-header .brand{width:min(210px,64vw)!important}
  .site-header .menu-toggle{width:44px!important;height:44px!important}
  .site-header .nav-links{top:calc(100% + 7px)!important;max-height:calc(100dvh - 92px)!important;padding:9px!important;border-radius:4px 22px 4px 22px!important}
  .site-footer{padding:46px 0 78px!important}.site-footer .shell{width:min(100% - 32px,520px)!important}.site-footer .footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:30px 24px!important}.site-footer .footer-grid>div{min-width:0!important}.site-footer .footer-grid>div:first-child{grid-column:1/-1!important}.site-footer .footer-grid>div:not(:first-child){grid-column:auto!important}.site-footer .footer-brand{max-width:220px!important}.site-footer .footer-copy{margin-top:12px!important;font-size:.77rem!important}.site-footer .footer-contact{box-sizing:border-box!important;width:100%!important;max-width:none!important;margin-top:18px!important;padding:19px 18px!important}.site-footer .footer-address,.site-footer .footer-contact-actions a{font-size:.73rem!important}.site-footer .footer-contact-actions{gap:8px 14px!important}.site-footer .footer-links,.site-footer .footer-grid>div:last-child .footer-links{display:grid!important;gap:7px!important;margin-top:12px!important;font-size:.75rem!important}.site-footer .footer-bottom{margin-top:30px!important;padding-top:18px!important;justify-content:flex-start!important;flex-direction:row!important;flex-wrap:wrap!important;gap:7px 14px!important;font-size:.66rem!important}
}
@media(max-width:380px){.site-header .dropdown{grid-template-columns:minmax(0,1fr)!important}.site-header .service-menu.open .dropdown{max-height:620px!important}.site-header .brand{width:min(195px,62vw)!important}}

/* Consultation system */
body.consult-modal-open{overflow:hidden}
.consult-float{position:fixed;z-index:940;right:24px;bottom:24px;display:inline-flex;min-height:54px;padding:0 20px 0 14px;align-items:center;gap:11px;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:#fff!important;background:#176b5f;box-shadow:0 14px 36px rgba(10,49,46,.26);font-family:Poppins,Arial,sans-serif;font-size:.79rem;font-weight:650;letter-spacing:-.01em;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}
.consult-float:hover{transform:translateY(-3px);background:#0f574e;box-shadow:0 18px 44px rgba(10,49,46,.32)}
.consult-float svg{width:27px;height:27px;flex:none;fill:currentColor}
.consult-modal{position:fixed;z-index:2000;inset:0;display:grid;padding:28px;place-items:center;background:rgba(5,28,26,.66);backdrop-filter:blur(10px);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}
.consult-modal.open{opacity:1;visibility:visible}
.consult-dialog{position:relative;width:min(980px,100%);max-height:min(820px,calc(100dvh - 56px));overflow:auto;border-radius:5px 64px 5px 64px;background:#f6f1e9;box-shadow:0 34px 100px rgba(4,25,23,.34);transform:translateY(16px) scale(.985);transition:transform .25s ease}
.consult-modal.open .consult-dialog{transform:none}
.consult-close{position:absolute;z-index:3;top:16px;right:16px;width:42px;height:42px;margin:0;border:1px solid rgba(23,52,50,.16);border-radius:50%;color:#173432;background:rgba(255,255,255,.92);font-size:1.35rem;line-height:1;cursor:pointer}
.consult-layout{display:grid;grid-template-columns:.72fr 1.28fr;min-height:620px}
.consult-intro{position:relative;overflow:hidden;padding:58px 42px;color:#fff;background:#0a312e}
.consult-intro:after{content:"";position:absolute;right:-110px;bottom:-110px;width:270px;height:270px;border:52px solid rgba(201,111,74,.43);border-radius:50%}
.consult-intro>*{position:relative;z-index:1}
.consult-kicker{display:block;margin-bottom:22px;color:#f4b596;font-size:.67rem;font-weight:700;letter-spacing:.15em}
.consult-intro h2{margin:0 0 18px;color:#fff;font-size:clamp(2rem,3.4vw,3.3rem);line-height:1.04;letter-spacing:-.045em}
.consult-intro p{margin:0;color:rgba(255,255,255,.7);font-size:.84rem;line-height:1.75}
.consult-benefits{display:grid;gap:13px;margin-top:34px;padding:0;list-style:none;color:rgba(255,255,255,.86);font-size:.75rem}
.consult-benefits li{display:flex;gap:10px;align-items:flex-start}.consult-benefits li:before{content:"✓";color:#f4b596;font-weight:700}
.consult-form-wrap{padding:52px 48px 44px}
.consult-form-wrap h3{margin:0 0 8px;color:#173432;font-size:1.55rem;letter-spacing:-.035em}
.consult-form-note{margin:0 0 28px;color:#65716e;font-size:.78rem;line-height:1.65}
.lead-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 15px}
.lead-field{display:grid;gap:7px}.lead-field.full{grid-column:1/-1}.lead-field label{color:#173432;font-size:.72rem;font-weight:600}.lead-field label span{color:#c96f4a}
.lead-field input,.lead-field select,.lead-field textarea{width:100%;border:1px solid rgba(23,52,50,.17);border-radius:13px;color:#173432;background:#fff;outline:none;transition:border-color .18s ease,box-shadow .18s ease}
.lead-field input,.lead-field select{height:49px;padding:0 14px}.lead-field textarea{min-height:116px;padding:13px 14px;resize:vertical}
.lead-field input:focus,.lead-field select:focus,.lead-field textarea:focus{border-color:#164e4a;box-shadow:0 0 0 3px rgba(22,78,74,.1)}
.lead-consent{display:flex;gap:10px;align-items:flex-start;margin:20px 0;color:#65716e;font-size:.69rem;line-height:1.55}.lead-consent input{margin-top:3px;accent-color:#164e4a}
.lead-submit{display:inline-flex;min-height:52px;padding:0 25px;align-items:center;justify-content:center;border:0;border-radius:999px;color:#fff;background:#164e4a;font-weight:650;cursor:pointer}.lead-submit:hover{background:#0a312e}.lead-submit[disabled]{cursor:wait;opacity:.68}
.lead-status{min-height:22px;margin:13px 0 0;color:#65716e;font-size:.72rem;line-height:1.55}.lead-status.success{color:#176b5f;font-weight:600}.lead-status.error{color:#a43f25;font-weight:600}

/* Keep the contact page form in the same curved visual language. */
.contact-section .company-card{overflow:hidden!important;border-radius:4px 38px 4px 38px!important}
.contact-section .form-panel{overflow:hidden!important;border-radius:4px 64px 4px 64px!important;box-shadow:0 24px 70px rgba(22,78,74,.08)!important}
.contact-section .field input,.contact-section .field select,.contact-section .field textarea{border-radius:13px!important}
.contact-section .form-note.success{color:#176b5f!important;font-weight:600}.contact-section .form-note.error{color:#a43f25!important;font-weight:600}
.site-footer .footer-bottom{align-items:center!important;flex-wrap:wrap!important;gap:12px 30px!important}
.site-footer .footer-policy{color:#f4c2a7!important;font-weight:600!important}.site-footer .footer-policy:hover,.site-footer .footer-policy[aria-current="page"]{color:#fff!important;text-decoration:underline!important}

/* Shared SEO/GEO FAQ block: visible, crawlable, and consistent across pages. */
.geo-faq{padding:104px 0;background:#fff}.geo-faq .geo-faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(48px,7vw,92px);align-items:start}.geo-faq .geo-faq-intro{position:sticky;top:118px}.geo-faq .geo-faq-intro h2{max-width:520px;margin:0 0 18px;color:#173432;font-size:clamp(2rem,3.2vw,3.35rem);line-height:1.08;letter-spacing:-.04em}.geo-faq .geo-faq-intro p{max-width:500px;color:#65716e;line-height:1.75}.geo-faq .geo-faq-list{border-top:1px solid rgba(23,52,50,.14)}.geo-faq details{border-bottom:1px solid rgba(23,52,50,.14)}.geo-faq summary{position:relative;padding:25px 48px 25px 0;cursor:pointer;list-style:none;color:#173432;font-size:.96rem;font-weight:600;line-height:1.55}.geo-faq summary::-webkit-details-marker{display:none}.geo-faq summary:after{content:"+";position:absolute;top:18px;right:4px;color:#c96f4a;font-size:1.55rem;font-weight:400}.geo-faq details[open] summary:after{content:"−"}.geo-faq details p{max-width:760px;margin:0;padding:0 42px 24px 0;color:#65716e;font-size:.9rem;line-height:1.75}.geo-faq .geo-faq-note{display:inline-flex;margin-top:22px;padding:9px 14px;border-radius:999px;color:#164e4a;background:#e4eeeb;font-size:.72rem;font-weight:600}
@media(max-width:820px){.geo-faq{padding:82px 0}.geo-faq .geo-faq-layout{grid-template-columns:1fr;gap:34px}.geo-faq .geo-faq-intro{position:static}}
@media(max-width:560px){.geo-faq{padding:68px 0}.geo-faq summary{padding:21px 40px 21px 0;font-size:.9rem}.geo-faq details p{padding-right:16px;font-size:.84rem}}
.property-solutions{padding:100px 0;background:#e4eeeb}.property-solutions .property-head{display:grid;grid-template-columns:1fr .82fr;gap:60px;align-items:end}.property-solutions .property-head h2{max-width:720px;margin:0;color:#173432;font-size:clamp(2rem,3.2vw,3.35rem);line-height:1.08;letter-spacing:-.04em}.property-solutions .property-head p{margin:0;color:#65716e;line-height:1.75}.property-solutions .property-grid{display:grid;grid-template-columns:repeat(5,1fr);margin-top:46px;border-top:1px solid rgba(23,52,50,.16);border-left:1px solid rgba(23,52,50,.16)}.property-solutions .property-card{min-height:238px;padding:28px 24px;border-right:1px solid rgba(23,52,50,.16);border-bottom:1px solid rgba(23,52,50,.16);background:rgba(255,255,255,.58)}.property-solutions .property-card span{display:block;margin-bottom:38px;color:#c96f4a;font-size:.7rem;font-weight:700;letter-spacing:.1em}.property-solutions .property-card h3{margin:0 0 10px;color:#173432;font-size:1.02rem}.property-solutions .property-card p{margin:0;color:#65716e;font-size:.8rem;line-height:1.7}.property-solutions .property-card a{display:inline-block;margin-top:18px;color:#164e4a;font-size:.78rem;font-weight:700}
@media(max-width:1050px){.property-solutions .property-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.property-solutions{padding:82px 0}.property-solutions .property-head{grid-template-columns:1fr;gap:18px}.property-solutions .property-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.property-solutions{padding:68px 0}.property-solutions .property-grid{grid-template-columns:1fr}.property-solutions .property-card{min-height:0}.property-solutions .property-card span{margin-bottom:20px}}

@media(max-width:760px){.consult-modal{padding:12px}.consult-dialog{max-height:calc(100dvh - 24px);border-radius:4px 38px 4px 38px}.consult-layout{grid-template-columns:1fr}.consult-intro{padding:42px 28px 34px}.consult-intro h2{max-width:520px}.consult-benefits{display:none}.consult-form-wrap{padding:34px 24px 30px}.lead-form-grid{grid-template-columns:1fr}.lead-field.full{grid-column:auto}.consult-float{right:16px;bottom:16px;min-height:50px;padding:0 16px 0 12px;font-size:.74rem}.consult-float svg{width:24px;height:24px}}
@media(max-width:420px){.consult-float{width:50px;padding:0;justify-content:center}.consult-float span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.consult-close{top:10px;right:10px}.consult-intro{padding:44px 22px 27px}.consult-intro h2{font-size:2rem}.consult-form-wrap{padding:28px 20px 25px}}
@media(prefers-reduced-motion:reduce){.site-header{transition:none!important}}
