/* A readable scale across desktop, tablet and mobile. */
.fhe-theme{--fhe-header-height:96px;--fhe-admin-offset:0px;font-size:16px}
.fhe-theme.admin-bar{--fhe-admin-offset:32px}
.fhe-theme .site-header{top:var(--fhe-admin-offset)}
.fhe-theme .header-inner{width:min(1520px,calc(100% - 64px));min-height:var(--fhe-header-height);gap:24px}
.fhe-theme .desktop-nav{font-size:15px;gap:clamp(14px,1.25vw,22px);line-height:1.45}
.fhe-theme .desktop-nav a{display:flex;align-items:center;min-height:44px}
.fhe-theme .header-actions{gap:10px}
.fhe-theme .header-phone{font-size:16px}
.fhe-theme .hero-copy>p:not(.eyebrow){font-size:19px;line-height:1.65;max-width:510px}
.fhe-theme .hero-copy .hero-catalog-link{font-size:17px;min-height:48px}
.fhe-theme .hero-copy .eyebrow{font-size:13px}
.fhe-theme .text-link{font-size:15px}
.fhe-theme .breadcrumb{font-size:15px;line-height:1.7;color:#4a4a4a}
.fhe-theme .breadcrumb a{color:var(--wine);font-weight:500;border-bottom-color:currentColor;text-underline-offset:4px}
.fhe-theme .breadcrumb a:hover{color:var(--ink)}
.fhe-theme .card-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:5px 10px;margin-bottom:26px}
.fhe-theme .card-breadcrumb>a{display:inline-flex;align-items:center;min-height:30px}
.fhe-theme .card-breadcrumb .breadcrumb-divider{color:#777;border:0;font-weight:400}
.fhe-theme .card-breadcrumb .breadcrumb-current{font-weight:650;color:var(--ink);min-width:0;max-width:100%;overflow-wrap:anywhere}
@media(max-width:640px){.fhe-theme .breadcrumb{font-size:14px;line-height:1.65}.fhe-theme .card-breadcrumb{gap:4px 8px;margin-bottom:22px}.fhe-theme .card-breadcrumb>a{min-height:28px}}
.fhe-theme .button{font-size:15px}
.fhe-theme .field>span,.fhe-theme .restored-filter .field>span{font-size:14px}
.fhe-theme .field input,.fhe-theme .field textarea,.fhe-theme .select-trigger{font-size:16px}
.fhe-theme .select-option{font-size:15px}
.fhe-theme .restored-filter-advanced>summary,.fhe-theme .restored-checks label{font-size:14px}
.fhe-theme .restored-facts>div{font-size:14px;line-height:1.6}
.fhe-theme .restored-summary .restored-facts>div{font-size:15px;line-height:1.6}
.fhe-theme .restored-summary-text{font-size:15px}
.fhe-theme .restored-property .detail-nav{top:calc(var(--fhe-header-height) + var(--fhe-admin-offset));gap:4px;padding-inline:8px;white-space:normal}
.fhe-theme .restored-property .detail-nav>a{font-size:16px;line-height:1.35;min-height:64px;min-inline-size:0;padding:17px 12px;display:flex;align-items:center;justify-content:center;flex:1 1 auto}
.fhe-theme .restored-property .detail-nav>a[aria-current="location"]::after{bottom:8px}
.fhe-theme .restored-property .fhcm-details{gap:12px 32px}
.fhe-theme .restored-property .fhcm-details dt{font-size:14px;color:#525252}
.fhe-theme .restored-property .fhcm-details dd{font-size:17px;line-height:1.6;margin-top:8px}
.fhe-theme .restored-property .fhv-amenities>li{font-size:14px}
.fhe-theme .restored-property .fhv-amenities>li>span{overflow-wrap:anywhere}
.fhe-theme .restored-property .fhcm-unit-filter{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center;gap:12px 16px;padding:18px;background:var(--soft);min-width:0}
.fhe-theme .restored-property .fhcm-unit-filter--modes-only{grid-template-columns:minmax(0,1fr) auto;padding:0;background:transparent;border:0;border-radius:0}
.fhe-theme .restored-property .fhcm-unit-filter :is(.fhcm-plan-filter,.fhcm-apply)[hidden]{display:none!important}
.fhe-theme .restored-property .fhcm-filter-label--accessible{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.fhe-theme .restored-property .fhcm-mode-buttons{display:flex;flex-wrap:nowrap;gap:4px;padding:4px;border:1px solid var(--line);border-radius:9px;background:#fff;width:max-content;max-width:100%}
.fhe-theme .restored-property .fhcm-mode-buttons button{min-height:42px;padding:10px 16px;border-color:transparent;background:transparent;border-radius:6px;font:500 15px/1.4 var(--ui);white-space:nowrap}
.fhe-theme .restored-property .fhcm-mode-buttons button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.fhe-theme .restored-property .fhcm-plan-filter{min-width:0;margin:0}
.fhe-theme .restored-property .fhcm-plan-picker-trigger,.fhe-theme .restored-property .fhcm-plan-filter>select{min-height:52px;padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);width:100%;font:400 16px/1.5 var(--ui);text-align:left}
.fhe-theme .restored-property .fhcm-plan-picker-trigger>span{min-width:0;overflow-wrap:anywhere}
.fhe-theme .restored-property .fhcm-plan-picker-trigger::after{content:'';width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:-4px 3px 0 6px;flex:0 0 8px}
.fhe-theme .restored-property .fhcm-plan-picker.is-open .fhcm-plan-picker-trigger::after{transform:rotate(225deg);margin-top:4px}
.fhe-theme .restored-property .fhcm-plan-picker-list{padding:6px;border-radius:10px;max-width:100%;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#888 #f3f3f3;box-shadow:0 12px 32px #0002}
.fhe-theme .restored-property .fhcm-plan-picker-option{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;min-height:48px;padding:12px 38px 12px 14px;border:1px solid transparent;border-radius:6px;font:400 15px/1.45 var(--ui);color:var(--ink);gap:8px;overflow-wrap:anywhere}
.fhe-theme .restored-property .fhcm-plan-picker-option:is(:hover,.is-active,[aria-selected=true]){background:var(--soft)}
.fhe-theme .restored-property .fhcm-plan-picker-option.is-active{border-color:var(--line)}
.fhe-theme .restored-property .fhcm-plan-picker-option[aria-selected=true]::after{content:'✓';position:absolute;right:14px;color:var(--wine);font-size:17px}
.fhe-theme .restored-property .fhcm-plan-picker-option[aria-disabled=true]{cursor:default;color:var(--muted)}
.fhe-theme .restored-property .fhcm-apply{min-height:52px;padding:12px 22px;font:600 15px/1.45 var(--ui);background:var(--wine);border-color:var(--wine);color:#fff}
.fhe-theme .restored-property .fhcm-apply:hover{filter:brightness(.92)}
.fhe-theme .restored-property .fhcm-reset{font:400 14px/1.5 var(--ui);padding:12px 0;min-height:44px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.fhe-theme .restored-property .fhcm-unit-filter :is(button,a):focus-visible{outline:2px solid var(--wine);outline-offset:3px}
@media(max-width:1100px){.fhe-theme .restored-property .fhcm-unit-filter{grid-template-columns:minmax(0,1fr) auto}.fhe-theme .restored-property .fhcm-unit-filter>.fhcm-mode-buttons{grid-column:1/-1}.fhe-theme .restored-property .fhcm-unit-filter>.fhcm-reset{grid-column:1/-1;justify-self:end;padding-block:4px;min-height:36px}.fhe-theme .restored-property .fhcm-unit-filter--modes-only{grid-template-columns:minmax(0,1fr) auto}.fhe-theme .restored-property .fhcm-unit-filter--modes-only>.fhcm-mode-buttons{grid-column:auto}.fhe-theme .restored-property .fhcm-unit-filter--modes-only>.fhcm-reset{grid-column:auto}}
@media(max-width:760px){.fhe-theme .restored-property .fhcm-unit-filter,.fhe-theme .restored-property .fhcm-unit-filter--modes-only{padding:14px;gap:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.fhe-theme .restored-property .fhcm-unit-filter>.fhcm-mode-buttons,.fhe-theme .restored-property .fhcm-unit-filter>.fhcm-plan-filter,.fhe-theme .restored-property .fhcm-unit-filter--modes-only>.fhcm-mode-buttons{grid-column:1/-1}.fhe-theme .restored-property .fhcm-mode-buttons{width:100%;min-width:0}.fhe-theme .restored-property .fhcm-mode-buttons button{flex:1;min-width:0;padding-inline:8px}.fhe-theme .restored-property .fhcm-unit-filter>.fhcm-reset{grid-column:auto;justify-self:stretch;font-size:13px;padding-inline:2px}.fhe-theme .restored-property .fhcm-unit-filter--modes-only>.fhcm-reset{grid-column:1/-1;justify-self:end}.fhe-theme .restored-property .fhcm-plan-picker-option{font-size:16px;min-height:48px}.fhe-theme .restored-property .fhcm-apply{font-size:14px;padding-inline:12px}}
@media(max-width:760px){.fhe-theme .restored-property .fhcm-unit-filter--modes-only{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:0}.fhe-theme .restored-property .fhcm-unit-filter--modes-only>.fhcm-mode-buttons{width:auto;flex:1 1 220px}.fhe-theme .restored-property .fhcm-unit-filter--modes-only>.fhcm-reset{margin-left:auto;min-height:44px}}
.fhe-theme .restored-property .fhcm-description,.fhe-theme .prose{font-size:16px;line-height:1.8}
.fhe-theme .restored-property :is(.fhcm-section,.fhv-object-map){scroll-margin-top:200px}
.fhe-theme .restored-property .fhv-video-item{width:100%;max-width:940px;margin:0 auto 28px}
.fhe-theme .restored-property .fhm-video{width:100%;max-width:100%;height:auto;min-height:0;margin:0}
.fhe-theme .restored-property .fhm-video iframe,.fhe-theme .restored-property video{display:block;width:100%;height:auto!important;min-height:0;aspect-ratio:16/9;max-width:100%;object-fit:contain}
.fhe-theme .restored-property .fhm-video-external{font-size:14px;line-height:1.6;max-width:940px;margin:12px auto 0;display:flex;flex-wrap:wrap;gap:4px 12px}
.fhe-theme .site-footer nav{gap:8px}
.fhe-theme .site-footer nav a,.fhe-theme .site-footer .footer-top>div>p{font-size:15px;line-height:1.6}
.fhe-theme .site-footer nav a{padding-block:4px}
.fhe-theme .site-footer .footer-phone{font-size:20px;line-height:1.4}
.fhe-theme .site-footer .footer-bottom{font-size:13px;line-height:1.6}
.fhe-theme .site-footer .footer-bottom :is(p,a){font-size:13px}
.fhe-theme .site-footer .social-links{display:flex;flex-wrap:wrap;gap:10px;max-width:270px}
.fhe-theme :is(.office-socials,.site-footer .social-links)>.round{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;padding:0;line-height:1;background:transparent;border:0;box-shadow:none;transition:opacity .18s}
.fhe-theme :is(.office-socials,.site-footer .social-links)>.round:hover{opacity:.85}
.fhe-theme :is(.office-socials,.site-footer .social-links) .fhe-social-logo{display:block;width:44px;height:44px;object-fit:contain}
.fhe-theme :is(.office-socials,.site-footer .social-links)>.round:focus-visible{outline:2px solid var(--wine);outline-offset:4px}
.fhe-theme .site-footer .social-links>.round:focus-visible{outline-color:#fff}
.fhe-contact-widget{position:fixed;right:20px;bottom:20px;z-index:85;display:flex;align-items:flex-end;flex-direction:column;gap:9px}
.fhe-contact-widget>.round,.fhe-contact-menu>summary{width:48px;height:48px;flex-basis:48px;box-shadow:0 3px 15px #0002;background:#fff;color:var(--ink);border-color:#bbb}
.fhe-contact-menu{position:relative}
.fhe-contact-menu>summary{list-style:none;cursor:pointer;background:var(--wine);color:#fff;border-color:var(--wine)}
.fhe-contact-menu>summary::-webkit-details-marker{display:none}
.fhe-contact-menu[open]>summary{background:var(--ink);border-color:var(--ink)}
.fhe-contact-options{position:absolute;right:60px;bottom:0;width:260px;max-width:calc(100vw - 96px);padding:16px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 32px #0003}
.fhe-contact-options>strong{display:block;font-size:15px;margin-bottom:10px}
.fhe-contact-options :is(a,button){display:flex;align-items:center;gap:12px;width:100%;min-height:46px;padding:10px 8px;background:none;text-align:left;font-size:15px;border-radius:6px;color:var(--ink)}
.fhe-contact-options :is(a,button):hover{background:var(--soft)}
@media(max-width:1300px) and (min-width:1181px){.fhe-theme .desktop-nav{font-size:14px;gap:12px}.fhe-theme .header-inner{gap:18px}.fhe-theme .header-phone{display:block;font-size:14px}}
@media(max-width:1180px){.fhe-theme{--fhe-header-height:80px}.fhe-theme .desktop-nav{display:none}.fhe-theme .mobile-menu-button{display:flex}.fhe-theme .header-inner{justify-content:space-between}.fhe-theme .header-phone{display:block}.fhe-theme .mobile-nav a{font-size:16px;min-height:48px}.fhe-theme .restored-property .detail-nav{overflow-x:auto;scrollbar-width:thin}.fhe-theme .restored-property .detail-nav>a{font-size:15px;flex:0 0 auto;white-space:nowrap;min-height:58px;padding:16px}}
@media(max-width:782px){.fhe-theme.admin-bar{--fhe-admin-offset:46px}}
@media(max-width:760px){.fhe-theme .restored-property .fhcm-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}.fhe-theme .restored-property .fhcm-details dd{font-size:16px}.fhe-theme .restored-property .fhcm-description{font-size:16px}.fhe-theme .restored-property .fhv-amenities>li{font-size:13px}.fhe-theme .site-footer .footer-top{gap:30px 24px}.fhe-theme .site-footer .footer-bottom{gap:14px}.fhe-theme .restored-card-actions .button{font-size:14px}}
@media(max-width:640px){.fhe-theme{--fhe-header-height:76px}.fhe-theme .header-inner{width:calc(100% - 32px);gap:12px}.fhe-theme .header-phone{display:none}.fhe-theme .header-actions{gap:5px}.fhe-theme .hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.6}.fhe-theme .hero-copy .hero-catalog-link{font-size:15px}.fhe-theme .hero-copy .eyebrow{font-size:12px}.fhe-theme .restored-property .detail-nav>a{font-size:15px;min-height:54px;padding:15px 14px}.fhe-theme .restored-property .fhcm-details>div{padding:16px 0}.fhe-theme .restored-property .fhcm-details dt{font-size:13px;gap:7px}.fhe-theme .restored-property .fhcm-details dd{font-size:16px;overflow-wrap:anywhere}.fhe-theme .restored-property .fhv-video-item>h3{font-size:18px;line-height:1.5}.fhe-contact-widget{right:12px;bottom:calc(14px + env(safe-area-inset-bottom));gap:8px}.fhe-contact-widget>.round,.fhe-contact-menu>summary{width:44px;height:44px;flex-basis:44px}.fhe-contact-options{right:54px}.single-catalogs:has(.mobile-detail-cta) .fhe-contact-widget,.single-portfolio:has(.mobile-detail-cta) .fhe-contact-widget{bottom:calc(105px + env(safe-area-inset-bottom))}}
@media(max-width:600px){.fhe-theme.admin-bar{--fhe-admin-offset:0px}}
@media(prefers-reduced-motion:reduce){.fhe-theme{scroll-behavior:auto}}
@media print{.fhe-contact-widget{display:none!important}}

/* Company introduction: matching rounded primary and secondary actions. */
.company-intro .button-row{gap:16px}
.company-intro .button-row>.button{border-radius:999px;min-height:54px;padding-inline:28px}
.company-intro .button-row>.button.outline{border-color:var(--wine);color:var(--wine)}
@media(max-width:600px){.company-intro .button-row{align-items:stretch;gap:12px}.company-intro .button-row>.button{width:100%;justify-content:space-between}}

/* District introduction: consistent rounded actions. */
.fhe-theme .district-hero-actions{gap:10px;align-items:stretch}.fhe-theme .district-hero-actions>.button{min-height:52px;padding:12px;border-radius:999px;gap:8px;justify-content:center;font-size:15px;line-height:1.5;white-space:nowrap}.fhe-theme .district-hero-actions>.button.outline{color:var(--wine);border-color:var(--wine);background:transparent}.fhe-theme .district-hero-actions>.district-inquiry{border-color:var(--line);background:var(--soft)}@media(max-width:640px){.fhe-theme .district-hero-actions{flex-direction:column;gap:12px}.fhe-theme .district-hero-actions>.button{width:100%;min-height:52px;padding-inline:22px;justify-content:space-between;white-space:normal}}

/* Property galleries and summaries move together with the document. */
.fhe-theme .restored-property.section{padding-top:clamp(18px,4svh,48px)}
.fhe-theme .restored-property .restored-gallery-column{position:static}
.restored-property .restored-hero .gallery-thumbs{overflow-x:auto;overflow-y:hidden}
.restored-property .restored-summary :is(.detail-heading h1,.restored-facts dd){overflow-wrap:anywhere}

@media (max-width:900px), (max-height:940px){
    .fhe-theme .restored-property .card-breadcrumb{margin-bottom:12px}
    .fhe-theme .restored-property .card-breadcrumb>a{min-height:28px}
    .restored-property .restored-hero .gallery-thumbs{gap:8px;padding:8px 0 4px}
    .restored-property .restored-hero .gallery-thumbs button{width:64px;height:42px;flex-basis:64px}
    .fhe-theme .restored-property .detail-nav{margin-top:20px}
}

@media (min-width:901px) and (max-height:940px){
    .fhe-theme .restored-property.section{
        --card-gallery-height:clamp(190px,calc(100svh - var(--fhe-header-height) - var(--fhe-admin-offset) - 116px),520px);
        padding-top:clamp(12px,2.8svh,24px);
    }
    .restored-property .restored-hero :is(.gallery-stage,.gallery-missing){
        width:100%;aspect-ratio:16/10;max-height:var(--card-gallery-height);
    }
}

@media (max-width:900px){
    .fhe-theme .restored-property .restored-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
    .restored-property .restored-hero :is(.gallery-stage,.gallery-missing){
        width:100%;aspect-ratio:16/10;max-height:clamp(160px,49svh,420px);
    }
}
