/*
 * OfficeDoor spacious typography and rhythm system.
 * Loaded last so legacy section-level typography does not fight each other.
 */
:root{
    --od-space-section:clamp(112px,9vw,168px);
    --od-space-section-mobile:84px;
    --od-space-head:clamp(42px,4vw,68px);
    --od-gap-grid:clamp(22px,2.4vw,38px);
    --od-card-pad:clamp(30px,2.8vw,46px);
    --od-title-xl:clamp(48px,5.2vw,78px);
    --od-title-lg:clamp(38px,3.8vw,58px);
    --od-title-md:clamp(26px,2.2vw,34px);
    --od-body-lg:18px;
    --od-body:16px;
    --od-body-sm:14px;
    --od-kicker:11px;
    --od-ls-display:-.042em;
    --od-ls-title:-.028em;
    --od-ls-body:-.008em;
    --od-ls-kicker:.13em;
    --od-lh-display:1.02;
    --od-lh-title:1.12;
    --od-lh-body:1.78;
}

/* Global reading rhythm */
body{
    letter-spacing:var(--od-ls-body);
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
}
p,li,dd,dt,small{
    word-break:keep-all;
}

/* Shared section spacing */
.brand-intro,
.brand-sites,
.brand-news,
.brand-areas,
.brand-trust,
.magok-district,
.od-scale,
.office-section{
    padding-top:var(--od-space-section)!important;
    padding-bottom:var(--od-space-section)!important;
}

/* Eyebrows / kickers */
.brand-kicker,
.brand-section-heading>span,
.brand-heading-row span,
.brand-news-heading>span,
.brand-trust-title>span,
.od-scale-head>span,
.magok-district-kicker,
.office-section-heading>span,
.office-heading-row>div>span,
.office-detail-kicker,
.od-story-copy>span,
.od-cinema-kicker{
    font-size:var(--od-kicker)!important;
    font-weight:700!important;
    letter-spacing:var(--od-ls-kicker)!important;
    line-height:1.4!important;
}

/* Main section titles */
.brand-section-heading h2,
.brand-heading-row h2,
.brand-news-heading h2,
.brand-trust-title h2,
.brand-dashboard h2,
.od-scale-head h2,
.magok-district-head h2,
.office-section-heading h2,
.office-heading-row h2{
    font-size:var(--od-title-lg)!important;
    font-weight:800!important;
    line-height:var(--od-lh-title)!important;
    letter-spacing:var(--od-ls-title)!important;
}

/* Secondary titles */
.brand-site-copy strong,
.magok-district-card h3,
.home-site-map-heading h3,
.office-building-index strong,
.office-unit-detail-head h3{
    letter-spacing:-.022em!important;
}

/* Body copy */
.brand-section-heading p,
.brand-heading-row p,
.brand-news-heading p,
.brand-dashboard p,
.brand-service-grid p,
.magok-district-lead,
.magok-district-card p,
.od-scale-head p,
.office-heading-row>p,
.office-overview-copy p,
.office-detail-title-wrap p,
.office-unit-detail-empty p,
.brand-trust-list p,
.brand-news-list article>p,
.home-site-map-heading p{
    font-size:var(--od-body)!important;
    font-weight:400!important;
    line-height:var(--od-lh-body)!important;
    letter-spacing:var(--od-ls-body)!important;
}

/* Hero typography */
.od-cinema-content h1,
.brand-hero-copy h1,
.office-detail-title-wrap h1{
    letter-spacing:var(--od-ls-display)!important;
    line-height:var(--od-lh-display)!important;
    font-weight:800!important;
}
.od-cinema-copy p,
.brand-hero-copy>p{
    font-size:var(--od-body-lg)!important;
    line-height:1.8!important;
    letter-spacing:var(--od-ls-body)!important;
}

/* Story / door section */
.od-story-copy h2{
    font-size:var(--od-title-lg)!important;
    font-weight:800!important;
    line-height:1.08!important;
    letter-spacing:var(--od-ls-title)!important;
    margin-bottom:22px!important;
}
.od-story-copy>p{
    max-width:620px!important;
    font-size:var(--od-body)!important;
    line-height:1.82!important;
    letter-spacing:var(--od-ls-body)!important;
}
.od-story-steps{
    margin-top:34px!important;
}
.od-story-step{
    min-height:66px!important;
    padding:18px 16px!important;
}
.od-story-step strong{
    font-size:13px!important;
    letter-spacing:.02em!important;
}
.od-story-step span{
    font-size:12px!important;
    line-height:1.55!important;
}

/* Scale / live data */
.od-scale-head{
    margin-bottom:var(--od-space-head)!important;
}
.od-scale-head h2{
    margin-top:16px!important;
    margin-bottom:22px!important;
}
.od-scale-head p{
    max-width:680px!important;
}
.od-scale-numbers{
    margin-top:44px!important;
}
.od-scale-number{
    padding:36px 28px 34px!important;
}
.od-scale-number>span{
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.12em!important;
}
.od-scale-number strong{
    margin:24px 0 16px!important;
    font-weight:800!important;
    letter-spacing:-.045em!important;
}
.od-scale-number small{
    font-size:14px!important;
    line-height:1.55!important;
}

/* Magok district */
.magok-district-head{
    gap:clamp(48px,6vw,92px)!important;
    padding-bottom:64px!important;
}
.magok-district-head h2{
    max-width:760px!important;
}
.magok-district-lead{
    max-width:640px!important;
}
.magok-district-stats{
    margin-top:48px!important;
}
.magok-district-stat{
    min-height:210px!important;
    padding-top:38px!important;
    padding-bottom:34px!important;
}
.magok-district-stat span{
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.12em!important;
}
.magok-district-stat strong{
    margin-top:18px!important;
    font-weight:800!important;
    letter-spacing:-.035em!important;
}
.magok-district-stat small{
    margin-top:18px!important;
    font-size:13px!important;
    line-height:1.65!important;
}
.magok-district-grid{
    gap:24px!important;
    margin-top:24px!important;
}
.magok-district-card{
    min-height:360px!important;
    padding-top:42px!important;
    padding-bottom:42px!important;
}
.magok-district-card>b{
    margin-bottom:38px!important;
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.11em!important;
}
.magok-district-card h3{
    margin-bottom:18px!important;
    font-size:30px!important;
    font-weight:750!important;
    line-height:1.18!important;
}
.magok-district-card p{
    max-width:48ch!important;
}
.magok-district-card ul{
    margin-top:26px!important;
    gap:10px!important;
}
.magok-district-card li{
    padding:8px 12px!important;
    font-size:11px!important;
    font-weight:600!important;
    letter-spacing:0!important;
}
.magok-district-cta{
    margin-top:58px!important;
    padding-top:42px!important;
}
.magok-district-cta strong{
    font-weight:750!important;
    line-height:1.3!important;
    letter-spacing:-.025em!important;
}

/* Brand section headings */
.brand-section-heading,
.brand-heading-row{
    margin-bottom:var(--od-space-head)!important;
    gap:clamp(42px,5vw,78px)!important;
}
.brand-heading-row h2,
.brand-section-heading h2{
    margin-top:14px!important;
}
.brand-section-heading p,
.brand-heading-row p{
    max-width:560px!important;
}

/* Main office cards */
.brand-site-grid{
    gap:22px!important;
}
.brand-site-card{
    border-radius:22px!important;
}
.brand-site-copy{
    padding:30px!important;
}
.brand-site-copy small{
    font-size:11px!important;
    font-weight:650!important;
    letter-spacing:.05em!important;
}
.brand-site-copy strong{
    margin-top:10px!important;
    font-size:28px!important;
    font-weight:750!important;
    line-height:1.15!important;
}
.brand-site-card-main .brand-site-copy strong{
    font-size:36px!important;
}
.brand-site-copy p{
    margin:12px 0 16px!important;
    font-size:14px!important;
    line-height:1.68!important;
}
.brand-site-copy>div{
    gap:10px!important;
}
.brand-site-copy>div span{
    padding:7px 10px!important;
    font-size:10px!important;
    font-weight:600!important;
}

/* Site map */
.home-site-map-block{
    margin-top:clamp(64px,7vw,104px)!important;
}
.home-site-map-heading{
    margin-bottom:28px!important;
}
.home-site-map-heading h3{
    margin-top:12px!important;
    font-size:clamp(30px,3vw,44px)!important;
    font-weight:800!important;
    line-height:1.15!important;
}

/* News */
.brand-news-grid{
    gap:clamp(64px,7vw,110px)!important;
}
.brand-news-heading h2{
    margin:16px 0 22px!important;
}
.brand-news-list article{
    min-height:126px!important;
    padding:20px 0!important;
    gap:30px!important;
}
.brand-news-list article>div span{
    font-size:12px!important;
    font-weight:600!important;
}
.brand-news-list article>div b{
    font-size:10px!important;
    font-weight:650!important;
    letter-spacing:.1em!important;
}
.brand-news-list article>strong{
    font-size:18px!important;
    font-weight:700!important;
    line-height:1.5!important;
    letter-spacing:-.018em!important;
}

/* Areas */
.brand-area-list>div{
    min-height:120px!important;
}
.brand-area-list b{
    font-size:11px!important;
    font-weight:700!important;
}
.brand-area-list strong{
    font-size:32px!important;
    font-weight:750!important;
    letter-spacing:-.025em!important;
}
.brand-area-list span{
    font-size:10px!important;
    font-weight:650!important;
    letter-spacing:.1em!important;
}

/* Trust */
.brand-trust-grid{
    gap:clamp(64px,7vw,110px)!important;
}
.brand-trust-list>div{
    min-height:122px!important;
    gap:28px!important;
    padding:18px 0!important;
}
.brand-trust-list b{
    font-size:11px!important;
    font-weight:700!important;
}
.brand-trust-list strong{
    font-size:18px!important;
    font-weight:700!important;
    letter-spacing:-.015em!important;
}

/* CTA */
.brand-cta{
    padding-bottom:var(--od-space-section)!important;
}
.brand-cta-card{
    padding:clamp(52px,5vw,76px)!important;
    gap:64px!important;
    border-radius:30px!important;
}
.brand-cta-card span{
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.13em!important;
}
.brand-cta-card h2{
    margin:16px 0!important;
    font-size:clamp(38px,4vw,56px)!important;
    font-weight:800!important;
    line-height:1.14!important;
    letter-spacing:-.03em!important;
}
.brand-cta-card p{
    font-size:16px!important;
    line-height:1.75!important;
}

/* Office detail */
.office-detail-title-wrap h1{
    font-size:clamp(52px,6vw,84px)!important;
}
.office-detail-title-wrap p{
    max-width:760px!important;
}
.office-heading-row{
    margin-bottom:var(--od-space-head)!important;
    gap:clamp(48px,6vw,86px)!important;
}
.office-overview-grid{
    gap:clamp(52px,6vw,90px)!important;
}
.office-lead{
    font-size:22px!important;
    line-height:1.7!important;
    letter-spacing:-.018em!important;
}
.office-facts>div{
    min-height:176px!important;
    padding:34px!important;
}
.office-facts span{
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.12em!important;
}
.office-facts strong{
    margin-top:42px!important;
    font-size:20px!important;
    font-weight:700!important;
    line-height:1.5!important;
    letter-spacing:-.018em!important;
}
.office-building-index>div{
    min-height:104px!important;
    gap:30px!important;
}
.office-building-index b{
    font-size:10px!important;
    font-weight:700!important;
}
.office-building-index span{
    font-size:13px!important;
}
.office-building-index strong{
    font-size:20px!important;
    font-weight:700!important;
    line-height:1.45!important;
}
.office-plan-tabs{
    gap:10px!important;
    margin-bottom:24px!important;
}
.office-plan-tabs button{
    padding:12px 17px!important;
    font-size:11px!important;
    font-weight:700!important;
    letter-spacing:0!important;
}
.office-unit-detail{
    padding:30px!important;
    border-radius:18px!important;
}
.office-unit-detail-empty span,
.office-unit-detail-head span{
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.12em!important;
}
.office-unit-detail-empty strong{
    margin-top:16px!important;
    font-size:21px!important;
    line-height:1.45!important;
}
.office-unit-detail dl{
    margin-top:28px!important;
}
.office-unit-detail dl>div{
    padding:12px 0!important;
}
.office-unit-detail dt,
.office-unit-detail dd{
    font-size:12px!important;
}
.office-floor-unit-list{
    margin-top:24px!important;
}
.office-floor-unit-list summary{
    padding:17px 18px!important;
    font-size:11px!important;
}

/* Buttons: less cramped, less shouty */
.brand-primary-action,
.brand-cta-card>a,
.magok-district-cta a,
.office-detail-cta-inner>a,
.od-cinema-actions a{
    min-height:52px;
    padding-left:24px!important;
    padding-right:24px!important;
    font-size:12px!important;
    font-weight:700!important;
    letter-spacing:0!important;
}

@media(max-width:900px){
    :root{
        --od-space-section:96px;
        --od-space-head:38px;
        --od-title-lg:clamp(36px,6vw,48px);
        --od-body:15px;
    }
    .brand-section-heading,
    .brand-heading-row,
    .office-heading-row{
        gap:28px!important;
    }
    .brand-site-copy{
        padding:26px!important;
    }
    .magok-district-grid{
        gap:18px!important;
    }
    .magok-district-card{
        min-height:320px!important;
    }
}

@media(max-width:700px){
    :root{
        --od-space-section:var(--od-space-section-mobile);
        --od-space-head:32px;
        --od-title-lg:34px;
        --od-title-md:26px;
        --od-body-lg:16px;
        --od-body:15px;
        --od-body-sm:13px;
        --od-kicker:10px;
        --od-lh-body:1.72;
    }
    .brand-intro,
    .brand-sites,
    .brand-news,
    .brand-areas,
    .brand-trust,
    .magok-district,
    .od-scale,
    .office-section{
        padding-top:84px!important;
        padding-bottom:84px!important;
    }
    .od-cinema-copy p,
    .brand-hero-copy>p{
        font-size:16px!important;
        line-height:1.74!important;
    }
    .od-story-copy h2,
    .brand-section-heading h2,
    .brand-heading-row h2,
    .brand-news-heading h2,
    .brand-trust-title h2,
    .brand-dashboard h2,
    .od-scale-head h2,
    .magok-district-head h2,
    .office-section-heading h2,
    .office-heading-row h2{
        font-size:34px!important;
        line-height:1.16!important;
        letter-spacing:-.025em!important;
    }
    .brand-section-heading p,
    .brand-heading-row p,
    .brand-news-heading p,
    .magok-district-lead,
    .magok-district-card p,
    .od-scale-head p,
    .office-heading-row>p,
    .office-overview-copy p{
        font-size:15px!important;
        line-height:1.72!important;
    }
    .magok-district-head{
        padding-bottom:44px!important;
    }
    .magok-district-stat{
        min-height:160px!important;
        padding-top:30px!important;
        padding-bottom:28px!important;
    }
    .magok-district-card{
        min-height:auto!important;
        padding:34px 28px!important;
    }
    .magok-district-card h3{
        font-size:26px!important;
    }
    .brand-site-grid{
        gap:16px!important;
    }
    .brand-site-copy{
        padding:24px!important;
    }
    .brand-site-copy strong,
    .brand-site-card-main .brand-site-copy strong{
        font-size:27px!important;
    }
    .brand-news-list article{
        min-height:112px!important;
        padding:18px 0!important;
    }
    .brand-area-list>div{
        min-height:96px!important;
    }
    .brand-area-list strong{
        font-size:25px!important;
    }
    .brand-trust-list>div{
        min-height:112px!important;
        padding:18px 0!important;
    }
    .brand-trust-list strong{
        font-size:16px!important;
    }
    .brand-cta-card{
        padding:38px 28px!important;
        gap:30px!important;
    }
    .brand-cta-card h2{
        font-size:34px!important;
        line-height:1.18!important;
    }
    .office-detail-title-wrap h1{
        font-size:44px!important;
        line-height:1.05!important;
    }
    .office-facts>div{
        min-height:132px!important;
        padding:28px 24px!important;
    }
    .office-facts strong{
        margin-top:28px!important;
        font-size:18px!important;
    }
    .office-building-index>div{
        min-height:94px!important;
    }
}

/* === Mobile frontend density === */
/*
 * OfficeDoor mobile front density system
 * Applies only to public frontend on small screens.
 * Goal: reclaim horizontal space lost to nested gutters/cards without changing desktop.
 */
@media(max-width:700px){
    :root{
        --od-mobile-page-gutter:10px;
        --od-mobile-card-pad:16px;
        --od-mobile-card-pad-compact:12px;
    }

    /* Shared page gutters */
    .site-shell{
        width:calc(100% - (var(--od-mobile-page-gutter) * 2))!important;
    }
    .home-rv-shell{
        width:calc(100% - (var(--od-mobile-page-gutter) * 2))!important;
    }
    .unit-detail__shell{
        width:calc(100% - (var(--od-mobile-page-gutter) * 2))!important;
    }

    /* Search page already has its own outer padding; avoid double guttering. */
    .smart-space{
        padding-left:var(--od-mobile-page-gutter)!important;
        padding-right:var(--od-mobile-page-gutter)!important;
    }
    .smart-space>.site-shell,
    .smart-space .site-shell{
        width:100%!important;
    }

    /* Homepage cards */
    .home-rv-compare-guide{
        padding:var(--od-mobile-card-pad)!important;
    }
    .home-rv-site-body{
        padding:var(--od-mobile-card-pad)!important;
    }
    .home-rv-smart-search{
        padding:var(--od-mobile-card-pad-compact)!important;
    }
    .home-rv-smart-search__prompt{
        padding:8px!important;
    }
    .home-rv-data-card{
        padding:18px!important;
    }

    /* Smart listing search */
    .smart-space__panel{
        padding:var(--od-mobile-card-pad-compact)!important;
    }
    .smart-space__prompt{
        padding:8px!important;
    }
    .smart-space__interpreted{
        padding:13px!important;
    }
    .smart-space__idle{
        padding-left:16px!important;
        padding-right:16px!important;
    }
    .smart-space-card{
        padding:12px!important;
    }

    /* Unit detail */
    .unit-detail__offer{
        padding:var(--od-mobile-card-pad)!important;
    }
    .unit-detail__area-summary>div{
        padding:12px 8px!important;
    }
    .unit-detail__facts dl>div{
        padding:16px 14px!important;
    }
    .unit-detail__related-grid a{
        padding:14px!important;
    }
    .unit-detail__closing{
        padding:20px!important;
    }

    /* Shared legacy/public cards */
    .brand-site-copy{
        padding:18px!important;
    }
    .brand-cta-card{
        padding:30px 20px!important;
    }
    .magok-district-card{
        padding:28px 20px!important;
    }
    .office-facts>div{
        padding:22px 18px!important;
    }
    .office-unit-detail{
        padding:18px!important;
    }

    /* Keep nested controls from creating a second artificial inset. */
    .home-rv-smart-search__examples,
    .smart-space__examples{
        padding-left:0!important;
        padding-right:0!important;
    }
}

@media(max-width:390px){
    :root{
        --od-mobile-page-gutter:8px;
        --od-mobile-card-pad:14px;
        --od-mobile-card-pad-compact:10px;
    }
}


/* Public office-detail mobile density */
@media(max-width:720px){
    .front-office-page .front-shell{
        width:calc(100% - (var(--od-mobile-page-gutter) * 2))!important;
    }

    .front-office-page .front-hero__visual{
        width:calc(100% + (var(--od-mobile-page-gutter) * 2))!important;
        margin-left:calc(var(--od-mobile-page-gutter) * -1)!important;
    }

    .front-office-page .front-building,
    .front-office-page .front-access,
    .front-office-page .front-floor-plan,
    .front-office-page .front-media,
    .front-office-page .front-listings,
    .front-office-page .front-documents,
    .front-office-page .front-inquiry{
        padding-top:46px!important;
        padding-bottom:52px!important;
    }

    .front-office-page .front-building__heading,
    .front-office-page .front-access__heading,
    .front-office-page .front-floor-plan__heading{
        margin-bottom:22px!important;
    }

    .front-office-page .front-access__primary{
        padding:18px 14px 20px!important;
    }

    .front-office-page .front-floor-plan__canvas-head,
    .front-office-page .front-floor-plan__units-head{
        padding:13px 12px!important;
    }

    .front-office-page .front-floor-plan__note{
        padding:10px 12px 12px!important;
    }

    .front-office-page .front-floor-plan__unit{
        padding:13px 12px!important;
        gap:10px!important;
    }

    .front-office-page .front-floor-plan__empty{
        padding:28px 16px!important;
    }
}


/* Progressive unit list control */
@media(max-width:720px){
    .front-floor-plan__unit[hidden]{
        display:none!important;
    }

    .front-floor-plan__more{
        display:flex;
        width:100%;
        min-height:46px;
        align-items:center;
        justify-content:center;
        gap:8px;
        border:1px solid #d7e1eb;
        border-top:0;
        background:#f8fbff;
        color:#1f4d7a;
        font:inherit;
        font-size:12px;
        font-weight:900;
        cursor:pointer;
    }

    .front-floor-plan__more b{
        display:inline-flex;
        min-width:34px;
        height:24px;
        align-items:center;
        justify-content:center;
        padding:0 8px;
        border-radius:999px;
        background:#e8f2ff;
        color:#1769e8;
        font-size:10px;
    }

    .front-floor-plan__more[hidden]{
        display:none!important;
    }
}

/* === Structural UI layer === */
/*
 * OfficeDoor structural UI layer v1
 * Shared foundation for the public redesign.
 * Goal: clear hierarchy, restrained surfaces, compact spacing, responsive layout.
 */

:root{
  --ods-ink:#14202b;
  --ods-text:#31404d;
  --ods-muted:#75818b;
  --ods-line:#e3e7ea;
  --ods-line-strong:#cfd6db;
  --ods-soft:#f6f7f8;
  --ods-accent:#1f5f93;
  --ods-accent-soft:#eef4f8;
  --ods-shell:1180px;
  --ods-gutter:24px;
  --ods-section:64px;
  --ods-radius:6px;
}

.od-structured-page{
  background:#fff;
  color:var(--ods-ink);
}

.od-structured-page .home-rv-shell,
.od-structured-page .front-shell{
  width:min(var(--ods-shell),calc(100% - (var(--ods-gutter) * 2)));
  margin-inline:auto;
}

.od-structured-page .home-rv-section{
  padding:var(--ods-section) 0;
}

.od-structured-page .home-rv-section + .home-rv-section,
.od-structured-page .home-rv-journal,
.od-structured-page .home-rv-final{
  border-top:1px solid var(--ods-line);
}

.od-structured-page .home-rv-eyebrow{
  margin-bottom:10px;
  color:var(--ods-muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
}

.od-structured-page .home-rv-eyebrow:before{
  display:none;
}

.od-structured-page .home-rv-section-head{
  align-items:flex-end;
  gap:36px;
  margin-bottom:26px;
}

.od-structured-page .home-rv-section-head h2{
  font-size:clamp(30px,3.5vw,46px);
  line-height:1.12;
  letter-spacing:-.045em;
}

.od-structured-page .home-rv-section-head p{
  max-width:420px;
  color:var(--ods-muted);
  font-size:14px;
  line-height:1.65;
}

/* Home hero: hierarchy first, decorative weight reduced. */
.od-structured-page.home-rv{
  overflow:clip;
}

.od-structured-page .home-rv-hero{
  padding:42px 0 22px;
  border-bottom:1px solid var(--ods-line);
  background:#fff;
}

.od-structured-page .home-rv-hero:before{
  opacity:.18;
  background-position:center;
}

.od-structured-page .home-rv-hero:after{
  background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 44%,rgba(255,255,255,.78) 72%,rgba(255,255,255,.58) 100%);
}

.od-structured-page .home-rv-hero-grid{
  grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);
  gap:48px;
  min-height:390px;
}

.od-structured-page .home-rv-hero-copy{
  padding:18px 0;
}

.od-structured-page .home-rv-hero .home-rv-eyebrow{
  margin-bottom:18px;
  color:var(--ods-accent);
  letter-spacing:.12em;
}

.od-structured-page .home-rv-hero h1{
  max-width:670px;
  font-size:clamp(42px,5vw,68px);
  line-height:1.02;
  letter-spacing:-.058em;
  font-weight:850;
}

.od-structured-page .home-rv-hero-rotator{
  min-height:1.16em;
  margin-top:5px;
}

.od-structured-page .home-rv-hero-rotator em{
  color:var(--ods-accent);
}

.od-structured-page .home-rv-hero-lead{
  max-width:560px;
  margin-top:18px;
  color:var(--ods-text);
  font-size:15px;
  line-height:1.7;
}

.od-structured-page .home-rv-hero-visual{
  min-height:330px;
}

.od-structured-page .home-rv-compare-guide{
  width:100%;
  padding:26px 28px;
  border:1px solid var(--ods-line-strong);
  border-radius:var(--ods-radius);
  background:rgba(255,255,255,.94);
  box-shadow:none;
  backdrop-filter:none;
}

.od-structured-page .home-rv-compare-guide:before{
  display:none;
}

.od-structured-page .home-rv-compare-guide-kicker{
  padding:0;
  border-radius:0;
  background:transparent;
  color:var(--ods-muted);
  font-size:10px;
  letter-spacing:.1em;
}

.od-structured-page .home-rv-compare-guide h2{
  margin-top:12px;
  font-size:30px;
}

.od-structured-page .home-rv-compare-guide>p{
  margin-top:10px;
  color:var(--ods-muted);
  font-size:13px;
  line-height:1.6;
}

.od-structured-page .home-rv-compare-guide-points{
  display:grid;
  gap:0;
  margin:18px 0;
  border-top:1px solid var(--ods-line);
}

.od-structured-page .home-rv-compare-guide-points span{
  min-height:36px;
  padding:0;
  border:0;
  border-bottom:1px solid var(--ods-line);
  border-radius:0;
  background:transparent;
  color:var(--ods-text);
  font-size:12px;
}

.od-structured-page .home-rv-compare-guide-button{
  min-height:46px;
  border:1px solid var(--ods-ink);
  border-radius:3px;
  background:var(--ods-ink);
  box-shadow:none;
  font-size:13px;
}

.od-structured-page .home-rv-quick{
  gap:0;
  margin-top:22px;
  border-top:1px solid var(--ods-line);
  border-bottom:1px solid var(--ods-line);
}

.od-structured-page .home-rv-quick a{
  grid-template-columns:34px 1fr auto;
  gap:12px;
  min-height:76px;
  padding:12px 18px;
  border:0;
  border-right:1px solid var(--ods-line);
  border-radius:0;
  background:#fff;
  box-shadow:none;
}

.od-structured-page .home-rv-quick a:last-child{
  border-right:0;
}

.od-structured-page .home-rv-quick-icon{
  width:32px;
  height:32px;
  border-radius:3px;
  background:var(--ods-accent-soft);
  color:var(--ods-accent);
  font-size:15px;
}

.od-structured-page .home-rv-quick strong{
  font-size:14px;
}

.od-structured-page .home-rv-quick small{
  margin-top:2px;
  font-size:10px;
}

/* Listing cards: content blocks, not floating cards. */
.od-structured-page .home-rv-card-grid{
  gap:24px;
}

.od-structured-page .home-rv-site-card{
  border:0;
  border-radius:0;
  background:#fff;
  box-shadow:none;
  overflow:visible;
}

.od-structured-page .home-rv-site-card:hover{
  transform:none;
  box-shadow:none;
}

.od-structured-page .home-rv-site-media{
  height:230px;
  border-radius:3px;
  background:var(--ods-soft);
}

.od-structured-page .home-rv-site-card:hover .home-rv-site-media img{
  transform:none;
}

.od-structured-page .home-rv-site-badge{
  top:10px;
  left:10px;
  padding:5px 8px;
  border-radius:2px;
  box-shadow:none;
  font-size:10px;
}

.od-structured-page .home-rv-site-body{
  padding:15px 0 0;
}

.od-structured-page .home-rv-site-body h3{
  margin:0 0 5px;
  font-size:19px;
}

.od-structured-page .home-rv-site-address{
  min-height:0;
  font-size:12px;
}

.od-structured-page .home-rv-site-metrics{
  gap:0;
  margin:14px 0;
  border-top:1px solid var(--ods-line);
  border-bottom:1px solid var(--ods-line);
}

.od-structured-page .home-rv-site-metric{
  padding:11px 10px 11px 0;
  border-radius:0;
  background:transparent;
}

.od-structured-page .home-rv-site-metric + .home-rv-site-metric{
  padding-left:12px;
  border-left:1px solid var(--ods-line);
}

.od-structured-page .home-rv-site-metric strong{
  margin-top:3px;
  font-size:14px;
}

.od-structured-page .home-rv-site-actions{
  gap:0;
}

.od-structured-page .home-rv-site-actions a,
.od-structured-page .home-rv-site-actions button{
  min-height:40px;
  border-radius:2px;
  font-size:12px;
}

.od-structured-page .home-rv-site-actions a{
  border:1px solid var(--ods-ink);
  background:var(--ods-ink);
  color:#fff;
}

.od-structured-page .home-rv-site-actions button{
  border:1px solid var(--ods-line-strong);
  border-left:0;
  background:#fff;
  color:var(--ods-accent);
}

.od-structured-page .home-rv-selected-compare-start{
  right:10px;
  width:auto;
  min-height:44px;
  padding:0 16px;
  border-radius:2px;
  box-shadow:none;
}

/* Search / explorer / map blocks share one restrained surface language. */
.od-structured-page .home-rv-product{
  background:#fafbfc;
}

.od-structured-page .home-rv-smart-search{
  padding:18px;
  border:1px solid var(--ods-line-strong);
  border-radius:var(--ods-radius);
  background:#fff;
  box-shadow:none;
}

.od-structured-page .home-rv-smart-search__prompt{
  grid-template-columns:42px minmax(0,1fr) auto;
  padding:8px 10px;
  border:1px solid var(--ods-line);
  border-radius:3px;
}

.od-structured-page .home-rv-smart-search__prompt>span{
  width:38px;
  height:38px;
  border-radius:3px;
  background:var(--ods-ink);
  box-shadow:none;
}

.od-structured-page .home-rv-smart-search__ai-button{
  height:48px;
  border-radius:3px;
  background:var(--ods-accent);
  box-shadow:none;
}

.od-structured-page .home-rv-smart-search__understands span,
.od-structured-page .home-rv-smart-search__examples a{
  border-radius:2px;
  box-shadow:none;
}

.od-structured-page .home-rv-explorer-grid{
  gap:52px;
}

.od-structured-page .home-rv-floor-demo,
.od-structured-page .home-rv-plan,
.od-structured-page .home-rv-units,
.od-structured-page .home-rv-unit-demo{
  border-radius:3px;
  box-shadow:none;
}

.od-structured-page .home-rv-map-grid{
  gap:20px;
}

.od-structured-page .home-rv-map-shell,
.od-structured-page .home-rv-data-card{
  border-radius:3px;
  box-shadow:none;
}

.od-structured-page .home-rv-journal{
  padding:var(--ods-section) 0;
}

.od-structured-page .home-rv-journal-grid{
  gap:0;
  border-top:1px solid var(--ods-line);
}

.od-structured-page .home-rv-journal-item{
  border-radius:0;
  box-shadow:none;
}

.od-structured-page .home-rv-final{
  padding:48px 0;
}

.od-structured-page .home-rv-final button{
  border-radius:2px;
  box-shadow:none;
}

@media(max-width:900px){
  :root{
    --ods-gutter:18px;
    --ods-section:48px;
  }

  .od-structured-page .home-rv-hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(310px,.8fr);
    gap:30px;
  }

  .od-structured-page .home-rv-quick{
    grid-template-columns:1fr;
  }

  .od-structured-page .home-rv-quick a{
    border-right:0;
    border-bottom:1px solid var(--ods-line);
  }

  .od-structured-page .home-rv-quick a:last-child{
    border-bottom:0;
  }
}

@media(max-width:760px){
  :root{
    --ods-gutter:14px;
    --ods-section:34px;
  }

  .od-structured-page .home-rv-section-head{
    display:block;
    margin-bottom:18px;
  }

  .od-structured-page .home-rv-section-head p{
    margin-top:10px;
    font-size:12px;
  }

  .od-structured-page .home-rv-hero{
    padding:20px 0 14px;
  }

  .od-structured-page .home-rv-hero:before{
    display:block;
    background-image:url('/uploads/main/hero-office-main.png');
    background-size:cover;
    background-position:62% center;
    background-repeat:no-repeat;
    opacity:.78;
    filter:saturate(.94) contrast(1.03);
  }

  .od-structured-page .home-rv-hero:after{
    display:block;
    background:
      linear-gradient(
        180deg,
        rgba(255,255,255,.92) 0%,
        rgba(255,255,255,.78) 32%,
        rgba(255,255,255,.42) 62%,
        rgba(255,255,255,.62) 100%
      );
  }

  .od-structured-page .home-rv-hero-grid{
    display:block;
    min-height:0;
  }

  .od-structured-page .home-rv-hero-copy{
    padding:12px 0 20px;
  }

  .od-structured-page .home-rv-hero h1{
    font-size:clamp(34px,10vw,46px);
    line-height:1.06;
  }

  .od-structured-page .home-rv-hero-lead{
    margin-top:14px;
    font-size:13px;
  }

  .od-structured-page .home-rv-hero-visual{
    min-height:0;
  }

  .od-structured-page .home-rv-compare-guide{
    padding:18px;
  }

  .od-structured-page .home-rv-compare-guide h2{
    font-size:24px;
  }

  .od-structured-page .home-rv-quick{
    margin-top:14px;
  }

  .od-structured-page .home-rv-quick a{
    min-height:66px;
    padding:10px 8px;
  }

  .od-structured-page .home-rv-card-grid{
    gap:12px;
  }

  .od-structured-page .home-rv-site-card{
    border-bottom:1px solid var(--ods-line);
    padding-bottom:18px;
  }

  .od-structured-page .home-rv-site-media{
    height:auto;
    aspect-ratio:16/10;
  }

  .od-structured-page .home-rv-selected-compare-start{
    position:sticky;
    right:auto;
    bottom:12px;
    top:auto;
    transform:none;
    margin:14px auto 0;
  }

  .od-structured-page .home-rv-selected-compare-start:hover{
    transform:none;
  }

  .od-structured-page .home-rv-smart-search{
    padding:10px;
  }

  .od-structured-page .home-rv-smart-search__prompt{
    grid-template-columns:38px minmax(0,1fr);
  }

  .od-structured-page .home-rv-smart-search__prompt>span{
    width:34px;
    height:34px;
  }

  .od-structured-page .home-rv-smart-search__prompt .home-rv-smart-search__ai-button{
    grid-column:1/-1;
    width:100%;
  }

  .od-structured-page .home-rv-explorer-grid{
    display:block;
  }

  .od-structured-page .home-rv-floor-demo{
    margin-top:20px;
  }

  .od-structured-page .home-rv-journal,
  .od-structured-page .home-rv-final{
    padding:34px 0;
  }
}


/* Smart listing search: compact hierarchy and flat result architecture. */
.od-structured-page.smart-space{
  padding:42px 0 64px;
  background:#fff;
}

.od-structured-page.smart-space > .site-shell{
  width:min(var(--ods-shell),calc(100% - (var(--ods-gutter) * 2)));
  margin-inline:auto;
}

.od-structured-page .smart-space__hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.45fr);
  gap:30px;
  align-items:end;
  margin-bottom:24px;
  padding-bottom:24px;
  border-bottom:1px solid var(--ods-line);
}

.od-structured-page .smart-space__hero h1{
  margin:7px 0 0;
  max-width:720px;
  font-size:clamp(34px,4vw,50px);
  line-height:1.08;
  letter-spacing:-.045em;
}

.od-structured-page .smart-space__hero p{
  margin:0;
  max-width:410px;
  color:var(--ods-muted);
  font-size:13px;
  line-height:1.65;
}

.od-structured-page .smart-space__panel{
  padding:16px;
  border:1px solid var(--ods-line-strong);
  border-radius:var(--ods-radius);
  background:#fff;
  box-shadow:none;
  overflow:visible;
}

.od-structured-page .smart-space__panel::before{
  display:none;
}

.od-structured-page .smart-space__prompt{
  min-height:68px;
  padding:9px 10px;
  border:1px solid var(--ods-line);
  border-radius:3px;
  background:#fff;
  box-shadow:none;
}

.od-structured-page .smart-space__spark{
  width:42px;
  height:42px;
  border-radius:3px;
  background:var(--ods-ink);
  box-shadow:none;
}

.od-structured-page .smart-space__prompt-copy label{
  color:var(--ods-muted);
  font-size:10px;
}

.od-structured-page .smart-space__prompt-copy input{
  height:34px;
  font-size:17px;
}

.od-structured-page .smart-space__prompt button{
  min-width:112px;
  height:44px;
  border-radius:3px;
  box-shadow:none;
}

.od-structured-page .smart-space__examples{
  gap:7px;
  margin-top:12px;
}

.od-structured-page .smart-space__examples>span{
  color:var(--ods-muted);
  font-size:10px;
}

.od-structured-page .smart-space__examples>button,
.od-structured-page .smart-space__interpreted-chips>span{
  height:30px;
  min-height:30px;
  padding:0 10px;
  border-radius:2px;
  box-shadow:none;
  font-size:10px;
}

.od-structured-page .smart-space__interpreted{
  grid-template-columns:180px minmax(0,1fr);
  gap:14px;
  margin-top:14px;
  padding:13px 14px;
  border:1px solid var(--ods-line);
  border-radius:3px;
  background:var(--ods-soft);
}

.od-structured-page .smart-space__advanced{
  margin-top:14px;
}

.od-structured-page .smart-space__advanced summary{
  padding:13px 0 4px;
}

.od-structured-page .smart-space__filters{
  gap:10px;
  margin-top:12px;
  padding-top:12px;
}

.od-structured-page .smart-space__filters input,
.od-structured-page .smart-space__filters select{
  height:40px;
  border-radius:3px;
}

.od-structured-page .smart-space__actions{
  margin-top:14px;
}

.od-structured-page .smart-space__actions button,
.od-structured-page .smart-space__actions .smart-space__reset{
  height:42px;
  border-radius:3px;
  box-shadow:none;
}

.od-structured-page .smart-space__result-head{
  margin:32px 0 14px;
  padding-bottom:16px;
  border-bottom:1px solid var(--ods-line);
}

.od-structured-page .smart-space__result-head h2{
  font-size:26px;
}

.od-structured-page .smart-space__result-steps{
  border-radius:0;
  box-shadow:none;
}

.od-structured-page .smart-space__site-results,
.od-structured-page .smart-space__results{
  gap:18px;
}

.od-structured-page .smart-site-card,
.od-structured-page .smart-space-card{
  border:0;
  border-bottom:1px solid var(--ods-line);
  border-radius:0;
  box-shadow:none;
  background:#fff;
}

.od-structured-page .smart-site-card{
  padding:0 0 20px;
}

.od-structured-page .smart-site-card__visual{
  border-radius:3px;
}

.od-structured-page .smart-site-card__types span,
.od-structured-page .smart-site-card__match-reasons span,
.od-structured-page .smart-space__transaction-tabs a,
.od-structured-page .smart-space-card__top .smart-space-card__transaction{
  border-radius:2px;
  box-shadow:none;
}

.od-structured-page .smart-site-card__facts,
.od-structured-page .smart-space-card__facts{
  border-top:1px solid var(--ods-line);
  border-bottom:1px solid var(--ods-line);
}

.od-structured-page .smart-space-card{
  min-height:0;
  padding:0 0 16px;
  overflow:visible;
}

.od-structured-page .smart-space-card::before{
  height:2px;
}

.od-structured-page .smart-space-card__visual{
  top:0;
  right:0;
  bottom:auto;
  width:42%;
  height:100%;
  border-radius:0;
  opacity:.1;
}

.od-structured-page .smart-space-card__facts>div:nth-child(2){
  border-radius:0;
}

.od-structured-page .smart-space-card__foot>a{
  border-radius:2px;
}

.od-structured-page .smart-space__nav{
  margin-bottom:16px;
}

.od-structured-page .smart-space__back,
.od-structured-page .smart-space__home{
  border-radius:3px;
  box-shadow:none;
}

.od-structured-page .smart-space__mobile-querybar{
  border-radius:3px;
  box-shadow:none;
}

.od-structured-page .smart-space__idle{
  margin-top:18px;
  padding:34px 20px;
  border-radius:3px;
}

@media(max-width:760px){
  .od-structured-page.smart-space{
    padding:22px 0 42px;
  }

  .od-structured-page .smart-space__hero{
    display:block;
    margin-bottom:16px;
    padding-bottom:16px;
  }

  .od-structured-page .smart-space__hero h1{
    font-size:32px;
  }

  .od-structured-page .smart-space__hero p{
    margin-top:10px;
    font-size:12px;
  }

  .od-structured-page .smart-space__panel{
    padding:10px;
  }

  .od-structured-page .smart-space__prompt{
    grid-template-columns:38px minmax(0,1fr);
    min-height:0;
  }

  .od-structured-page .smart-space__spark{
    width:34px;
    height:34px;
  }

  .od-structured-page .smart-space__prompt-copy input{
    font-size:14px;
  }

  .od-structured-page .smart-space__prompt button{
    grid-column:1/-1;
    width:100%;
  }

  .od-structured-page .smart-space__examples{
    align-items:flex-start;
  }

  .od-structured-page .smart-space__examples>span{
    width:100%!important;
  }

  .od-structured-page .smart-space__interpreted{
    grid-template-columns:1fr;
  }

  .od-structured-page .smart-space__filters{
    grid-template-columns:1fr 1fr;
  }

  .od-structured-page .smart-space__result-head{
    margin-top:24px;
  }

  .od-structured-page .smart-space__site-results,
  .od-structured-page .smart-space__results{
    grid-template-columns:1fr;
    gap:14px;
  }
}


/* Office detail: one continuous information page instead of stacked floating cards. */
.front-office-page.od-structured-page{
  --front-paper:#fff;
  --front-line:var(--ods-line);
  --front-accent:var(--ods-accent);
  background:#fff;
}

.front-office-page.od-structured-page .front-detail-nav{
  top:var(--site-header-height,76px);
  border-bottom:0;
  background:linear-gradient(100deg,#123b5f 0%,#1d5f91 58%,#2f7fba 100%);
  box-shadow:0 8px 22px rgba(18,59,95,.16);
  backdrop-filter:none;
}

.front-office-page.od-structured-page .front-detail-nav__inner{
  min-height:56px;
  padding-block:0;
}

.front-office-page.od-structured-page .front-detail-nav__scroll{
  gap:6px;
}

.front-office-page.od-structured-page .front-detail-nav a{
  min-height:56px;
  padding:0 16px;
  border-radius:0;
  color:rgba(255,255,255,.68);
  font-size:15px;
  font-weight:500;
  letter-spacing:-.015em;
  transition:color .18s ease,font-weight .18s ease;
}

.front-office-page.od-structured-page .front-detail-nav a::after{
  display:none;
}

.front-office-page.od-structured-page .front-detail-nav a:hover,
.front-office-page.od-structured-page .front-detail-nav a:focus-visible{
  background:transparent;
  color:#fff;
}

.front-office-page.od-structured-page .front-detail-nav a.is-active{
  background:transparent;
  color:#fff;
  font-weight:950;
  box-shadow:none;
}

.front-office-page.od-structured-page .front-detail-nav a:focus-visible{
  outline:2px solid rgba(255,255,255,.58);
  outline-offset:2px;
}

.front-office-page.od-structured-page .front-hero{
  min-height:0;
  padding:34px 0 26px;
  border-bottom:1px solid var(--ods-line);
}

.front-office-page.od-structured-page .front-hero__body{
  grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);
  gap:42px;
  align-items:center;
}

.front-office-page.od-structured-page .front-hero__copy{
  padding-top:0;
}

.front-office-page.od-structured-page .front-hero__eyebrow-row{
  margin-bottom:14px;
}

.front-office-page.od-structured-page .front-hero__badge{
  min-height:24px;
  padding:0 8px;
  border-radius:2px;
  background:#fff;
  font-size:10px;
}

.front-office-page.od-structured-page .front-hero h1{
  font-size:clamp(38px,4.7vw,62px);
  line-height:1.04;
}

.front-office-page.od-structured-page .front-hero__lead{
  margin-top:15px;
  max-width:560px;
  font-size:14px;
  line-height:1.65;
}

.front-office-page.od-structured-page .front-hero__address{
  margin-top:14px;
  font-size:12px;
}

.front-office-page.od-structured-page .front-hero__visual{
  min-height:0;
  height:auto;
  aspect-ratio:4/3;
  border-radius:3px;
}

.front-office-page.od-structured-page .front-hero__facts{
  margin-top:24px;
  background:#fff;
}

.front-office-page.od-structured-page .front-hero__fact{
  min-height:82px;
  padding:14px 14px 12px;
}

.front-office-page.od-structured-page .front-hero__fact strong,
.front-office-page.od-structured-page .front-hero__fact--key strong{
  font-size:15px;
}

.front-office-page.od-structured-page .front-building,
.front-office-page.od-structured-page .front-access,
.front-office-page.od-structured-page .front-floor-plan,
.front-office-page.od-structured-page .front-media,
.front-office-page.od-structured-page .front-listings,
.front-office-page.od-structured-page .front-documents,
.front-office-page.od-structured-page .front-inquiry,
.front-office-page.od-structured-page .front-site-details{
  padding:52px 0;
  border-top:1px solid var(--ods-line);
}

.front-office-page.od-structured-page .front-building__layout{
  gap:52px;
}

.front-office-page.od-structured-page .front-section-kicker{
  margin-bottom:10px;
  color:var(--ods-muted);
}

.front-office-page.od-structured-page .front-access__primary,
.front-office-page.od-structured-page .front-access__item,
.front-office-page.od-structured-page .front-media__item,
.front-office-page.od-structured-page .front-listings__card,
.front-office-page.od-structured-page .front-documents__item,
.front-office-page.od-structured-page .front-inquiry__panel{
  border-radius:3px;
  box-shadow:none;
}

.front-office-page.od-structured-page .front-access__item:hover{
  transform:none;
  box-shadow:none;
}

.front-office-page.od-structured-page .front-access__secondary-head{
  padding:24px 0 12px;
}

.front-office-page.od-structured-page .front-access__list{
  gap:10px;
}

.front-office-page.od-structured-page .front-access__item{
  min-height:150px;
  padding:18px;
}

/* Unit detail: compact fact-led layout. */
.od-structured-page.unit-detail{
  --unit-detail-shell:1180px;
  background:#fff;
  color:var(--ods-ink);
}

.od-structured-page.unit-detail .unit-detail__shell{
  width:min(var(--ods-shell),calc(100% - (var(--ods-gutter) * 2)));
  margin-inline:auto;
}

.od-structured-page.unit-detail .unit-detail__back{
  border-radius:3px;
  box-shadow:none;
}

.od-structured-page.unit-detail .unit-detail__hero{
  gap:42px;
  padding:28px 0 38px;
  border-bottom:1px solid var(--ods-line);
}

.od-structured-page.unit-detail .unit-detail__hero-copy{
  padding:0;
}

.od-structured-page.unit-detail .unit-detail__eyebrow{
  color:var(--ods-muted);
}

.od-structured-page.unit-detail .unit-detail__hero h1{
  font-size:clamp(38px,4.5vw,58px);
  line-height:1.04;
}

.od-structured-page.unit-detail .unit-detail__lead{
  max-width:580px;
  margin-top:14px;
  font-size:13px;
  line-height:1.65;
}

.od-structured-page.unit-detail .unit-detail__types span{
  border-radius:2px;
}

.od-structured-page.unit-detail .unit-detail__area-summary{
  margin-top:20px;
  border-top:1px solid var(--ods-line);
  border-bottom:1px solid var(--ods-line);
  border-radius:0;
  background:#fff;
  box-shadow:none;
}

.od-structured-page.unit-detail .unit-detail__area-summary>div{
  border-radius:0;
  background:#fff;
}

.od-structured-page.unit-detail .unit-detail__hero-actions a{
  border-radius:2px;
  box-shadow:none;
}

.od-structured-page.unit-detail .unit-detail__hero-media{
  border-radius:3px;
  box-shadow:none;
}

.od-structured-page.unit-detail .unit-detail__section{
  padding:46px 0;
  border-bottom:1px solid var(--ods-line);
}

.od-structured-page.unit-detail .unit-detail__section-head{
  margin-bottom:22px;
}

.od-structured-page.unit-detail .unit-detail__section-head h2,
.od-structured-page.unit-detail .unit-detail__position-copy h2{
  font-size:clamp(26px,3vw,38px);
}

.od-structured-page.unit-detail .unit-detail__section-head p,
.od-structured-page.unit-detail .unit-detail__position-copy p{
  color:var(--ods-muted);
  font-size:12px;
  line-height:1.65;
}

.od-structured-page.unit-detail .unit-detail__offer-grid{
  gap:12px;
}

.od-structured-page.unit-detail .unit-detail__offer,
.od-structured-page.unit-detail .unit-detail__completed-condition,
.od-structured-page.unit-detail .unit-detail__plan-card,
.od-structured-page.unit-detail .unit-detail__related-grid a{
  border-radius:3px;
  box-shadow:none;
}

.od-structured-page.unit-detail .unit-detail__facts dl{
  border-radius:0;
  box-shadow:none;
}

@media(max-width:760px){
  .front-office-page.od-structured-page .site-header,
  .front-office-page.od-structured-page .front-detail-nav{
    margin-bottom:0;
  }

  .front-office-page.od-structured-page .site-header-inner{
    height:var(--site-header-height);
  }

  .front-office-page.od-structured-page .front-detail-nav{
    top:var(--site-header-height);
    box-shadow:0 6px 18px rgba(18,59,95,.18);
  }

  .front-office-page.od-structured-page .front-detail-nav__inner{
    min-height:46px;
    padding:0;
  }

  .front-office-page.od-structured-page .front-detail-nav__scroll{
    gap:4px;
  }

  .front-office-page.od-structured-page .front-detail-nav a{
    min-height:46px;
    padding:0 12px;
    font-size:10.5px;
  }

  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__home{
    position:relative;
    z-index:2;
    width:48px;
    min-width:48px;
    height:46px;
    min-height:46px;
    margin:0;
    padding:0!important;
    border:0!important;
    background:#fff;
  }

  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__home::before{
    content:'';
    position:absolute;
    top:0;
    right:-6px;
    bottom:0;
    width:6px;
    background:linear-gradient(90deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.42) 45%,rgba(255,255,255,0) 100%);
    pointer-events:none;
  }

  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__home svg{
    width:18px;
    height:18px;
  }

  .front-office-page.od-structured-page .front-hero{
    padding:18px 0 20px;
  }

  .front-office-page.od-structured-page .front-hero__body{
    display:flex;
    flex-direction:column;
    gap:18px;
  }

  .front-office-page.od-structured-page .front-hero__visual{
    order:-1;
    width:100%;
    aspect-ratio:16/10;
  }

  .front-office-page.od-structured-page .front-hero h1{
    font-size:34px;
  }

  .front-office-page.od-structured-page .front-hero__facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin-top:18px;
  }

  .front-office-page.od-structured-page .front-hero__fact{
    min-height:74px;
    border-top:1px solid var(--ods-line);
  }

  .front-office-page.od-structured-page .front-building,
  .front-office-page.od-structured-page .front-access,
  .front-office-page.od-structured-page .front-floor-plan,
  .front-office-page.od-structured-page .front-media,
  .front-office-page.od-structured-page .front-listings,
  .front-office-page.od-structured-page .front-documents,
  .front-office-page.od-structured-page .front-inquiry,
  .front-office-page.od-structured-page .front-site-details{
    padding:34px 0;
  }

  .od-structured-page.unit-detail .unit-detail__hero{
    display:block;
    padding:18px 0 28px;
  }

  .od-structured-page.unit-detail .unit-detail__hero-media{
    margin-top:20px;
  }

  .od-structured-page.unit-detail .unit-detail__hero h1{
    font-size:34px;
  }

  .od-structured-page.unit-detail .unit-detail__section{
    padding:32px 0;
  }
}


/* Office detail mobile overflow containment.
 * Keep page width locked to the viewport while allowing intentional rails/tabs to scroll internally.
 */
.front-office-page.od-structured-page{
  max-width:100%;
  overflow-x:clip;
}

.front-office-page.od-structured-page .front-office-main,
.front-office-page.od-structured-page .front-office-main > section,
.front-office-page.od-structured-page .front-hero__body > *,
.front-office-page.od-structured-page .front-building__layout > *,
.front-office-page.od-structured-page .front-access__heading > *,
.front-office-page.od-structured-page .front-floor-plan__heading > *{
  min-width:0;
}

@supports not (overflow:clip){
  .front-office-page.od-structured-page{
    overflow-x:hidden;
  }
}

@media(max-width:720px){
  .front-office-page.od-structured-page .front-media__tabs{
    margin-right:calc(var(--od-mobile-page-gutter,10px) * -1);
    padding-right:var(--od-mobile-page-gutter,10px);
  }

  .front-office-page.od-structured-page .front-hero__address span,
  .front-office-page.od-structured-page .front-access__secondary-head > *,
  .front-office-page.od-structured-page .front-floor-plan__canvas-head > *{
    min-width:0;
    overflow-wrap:anywhere;
  }
}


/* Unified mobile typography system.
 * One scale for homepage, search, office detail, unit detail and public footer.
 * Page-specific layouts may differ, but the same semantic text roles share the same size.
 */
@media(max-width:760px){
  :root{
    --odm-display:34px;
    --odm-page-title:30px;
    --odm-section-title:26px;
    --odm-card-title:18px;
    --odm-body:14px;
    --odm-ui:13px;
    --odm-meta:12px;
    --odm-caption:11px;
    --odm-button:14px;
  }

  /* Homepage */
  .od-structured-page.home-rv .home-rv-hero h1{
    font-size:var(--odm-display)!important;
    line-height:1.07!important;
  }

  .od-structured-page.home-rv .home-rv-hero .home-rv-eyebrow,
  .od-structured-page.home-rv .home-rv-compare-guide-kicker,
  .od-structured-page.home-rv .home-rv-site-kicker,
  .od-structured-page.home-rv .home-rv-site-badge,
  .od-structured-page.home-rv .home-rv-smart-search__filters label>span,
  .od-structured-page.home-rv .home-rv-data-item b,
  .od-structured-page.home-rv .home-rv-news time{
    font-size:var(--odm-caption)!important;
  }

  .od-structured-page.home-rv .home-rv-hero-lead,
  .od-structured-page.home-rv .home-rv-section-head p,
  .od-structured-page.home-rv .home-rv-compare-guide>p,
  .od-structured-page.home-rv .home-rv-data-card>p{
    font-size:var(--odm-body)!important;
    line-height:1.65!important;
  }

  .od-structured-page.home-rv .home-rv-section-head h2,
  .od-structured-page.home-rv .home-rv-explorer-copy h2,
  .od-structured-page.home-rv .home-rv-journal h2,
  .od-structured-page.home-rv .home-rv-final h2{
    font-size:var(--odm-section-title)!important;
    line-height:1.14!important;
  }

  .od-structured-page.home-rv .home-rv-compare-guide h2{
    font-size:var(--odm-section-title)!important;
    line-height:1.12!important;
  }

  .od-structured-page.home-rv .home-rv-site-body h3,
  .od-structured-page.home-rv .home-rv-product-card h3{
    font-size:var(--odm-card-title)!important;
    line-height:1.3!important;
  }

  .od-structured-page.home-rv .home-rv-site-address,
  .od-structured-page.home-rv .home-rv-data-item span,
  .od-structured-page.home-rv .home-rv-unit-demo span{
    font-size:var(--odm-meta)!important;
    line-height:1.55!important;
  }

  .od-structured-page.home-rv .home-rv-site-metric span,
  .od-structured-page.home-rv .home-rv-smart-search__ai-kicker{
    font-size:var(--odm-caption)!important;
  }

  .od-structured-page.home-rv .home-rv-site-metric strong,
  .od-structured-page.home-rv .home-rv-data-item strong,
  .od-structured-page.home-rv .home-rv-unit-demo strong{
    font-size:var(--odm-ui)!important;
  }

  .od-structured-page.home-rv .home-rv-smart-search__prompt input,
  .od-structured-page.home-rv .home-rv-smart-search__ai-label,
  .od-structured-page.home-rv .home-rv-smart-search__filters input,
  .od-structured-page.home-rv .home-rv-smart-search__examples-label{
    font-size:var(--odm-ui)!important;
  }

  .od-structured-page.home-rv .home-rv-smart-search__examples a,
  .od-structured-page.home-rv .home-rv-compare-guide-points span{
    font-size:var(--odm-meta)!important;
  }

  .od-structured-page.home-rv .home-rv-compare-guide-button,
  .od-structured-page.home-rv .home-rv-site-actions a,
  .od-structured-page.home-rv .home-rv-site-actions button,
  .od-structured-page.home-rv .home-rv-final-actions a{
    font-size:var(--odm-button)!important;
  }

  /* Smart listing search */
  .od-structured-page.smart-space .smart-space__hero h1{
    font-size:var(--odm-page-title)!important;
    line-height:1.14!important;
  }

  .od-structured-page.smart-space .smart-space__hero p,
  .od-structured-page.smart-space .smart-space__section-heading p{
    font-size:var(--odm-body)!important;
    line-height:1.6!important;
  }

  .od-structured-page.smart-space .smart-space__result-head h2,
  .od-structured-page.smart-space .smart-space__section-heading h3,
  .od-structured-page.smart-space .smart-space__all-listings-head strong{
    font-size:var(--odm-section-title)!important;
    line-height:1.2!important;
  }

  .od-structured-page.smart-space .smart-site-card h3,
  .od-structured-page.smart-space .smart-priority-card__title strong,
  .od-structured-page.smart-space .smart-connected-card h4,
  .od-structured-page.smart-space .smart-bundle-card h4{
    font-size:var(--odm-card-title)!important;
    line-height:1.3!important;
  }

  .od-structured-page.smart-space .smart-site-card__address,
  .od-structured-page.smart-space .smart-site-card__facts dd,
  .od-structured-page.smart-space .smart-priority-card__price strong,
  .od-structured-page.smart-space .smart-connected-card__price,
  .od-structured-page.smart-space .smart-bundle-card dd{
    font-size:var(--odm-ui)!important;
  }

  .od-structured-page.smart-space .smart-site-card__top span,
  .od-structured-page.smart-space .smart-site-card__top small,
  .od-structured-page.smart-space .smart-site-card__types span,
  .od-structured-page.smart-space .smart-site-card__facts dt,
  .od-structured-page.smart-space .smart-site-card__facts dd small,
  .od-structured-page.smart-space .smart-space__section-heading span,
  .od-structured-page.smart-space .smart-priority-card__rank span,
  .od-structured-page.smart-space .smart-priority-card__title span,
  .od-structured-page.smart-space .smart-priority-card__price span,
  .od-structured-page.smart-space .smart-priority-card__reasons span,
  .od-structured-page.smart-space .smart-connected-card__top span,
  .od-structured-page.smart-space .smart-connected-card__top strong,
  .od-structured-page.smart-space .smart-connected-card__area span,
  .od-structured-page.smart-space .smart-connected-card__area small,
  .od-structured-page.smart-space .smart-connected-card__meta span,
  .od-structured-page.smart-space .smart-bundle-card__top span,
  .od-structured-page.smart-space .smart-bundle-card__top strong,
  .od-structured-page.smart-space .smart-bundle-card>p,
  .od-structured-page.smart-space .smart-bundle-card dt,
  .od-structured-page.smart-space .smart-bundle-card dd small{
    font-size:var(--odm-caption)!important;
  }

  .od-structured-page.smart-space .smart-space__decision-tabs a,
  .od-structured-page.smart-space .smart-site-card__actions a,
  .od-structured-page.smart-space .smart-priority-card__actions a,
  .od-structured-page.smart-space .smart-connected-card>a,
  .od-structured-page.smart-space .smart-bundle-card>a,
  .od-structured-page.smart-space .smart-space__back-to-sites{
    font-size:var(--odm-ui)!important;
  }

  /* Office detail */
  .front-office-page.od-structured-page .front-detail-nav a{
    font-size:15px!important;
    font-weight:650;
  }

  .front-office-page.od-structured-page .front-detail-nav a.is-active{
    font-weight:950;
  }

  .front-office-page.od-structured-page .front-hero__eyebrow,
  .front-office-page.od-structured-page .front-hero__badge,
  .front-office-page.od-structured-page .front-section-kicker,
  .front-office-page.od-structured-page .front-hero__fact span{
    font-size:var(--odm-caption)!important;
  }

  .front-office-page.od-structured-page .front-hero h1{
    font-size:var(--odm-display)!important;
    line-height:1.07!important;
  }

  .front-office-page.od-structured-page .front-hero__lead,
  .front-office-page.od-structured-page .front-building__heading>p:last-child,
  .front-office-page.od-structured-page .front-access__heading>p,
  .front-office-page.od-structured-page .front-floor-plan__heading>p{
    font-size:var(--odm-body)!important;
    line-height:1.65!important;
  }

  .front-office-page.od-structured-page .front-hero__address{
    font-size:var(--odm-ui)!important;
    line-height:1.55!important;
  }

  .front-office-page.od-structured-page .front-hero__fact strong,
  .front-office-page.od-structured-page .front-hero__fact--key strong{
    font-size:var(--odm-card-title)!important;
    line-height:1.35!important;
  }

  .front-office-page.od-structured-page .front-hero__fact small{
    font-size:var(--odm-meta)!important;
    line-height:1.45!important;
  }

  .front-office-page.od-structured-page .front-building__heading h2,
  .front-office-page.od-structured-page .front-access__heading h2,
  .front-office-page.od-structured-page .front-floor-plan__heading h2,
  .front-office-page.od-structured-page .front-media__heading h2,
  .front-office-page.od-structured-page .front-listings__heading h2,
  .front-office-page.od-structured-page .front-documents__head h2,
  .front-office-page.od-structured-page .front-inquiry__intro h2{
    font-size:var(--odm-page-title)!important;
    line-height:1.14!important;
  }

  .front-office-page.od-structured-page .front-floating-action{
    font-size:var(--odm-button)!important;
  }

  /* Unit detail */
  .od-structured-page.unit-detail .unit-detail__hero h1{
    font-size:var(--odm-display)!important;
    line-height:1.07!important;
  }

  .od-structured-page.unit-detail .unit-detail__building,
  .od-structured-page.unit-detail .unit-detail__lead,
  .od-structured-page.unit-detail .unit-detail__section-head>p,
  .od-structured-page.unit-detail .unit-detail__position-copy p,
  .od-structured-page.unit-detail .unit-detail__closing p{
    font-size:var(--odm-body)!important;
    line-height:1.65!important;
  }

  .od-structured-page.unit-detail .unit-detail__eyebrow,
  .od-structured-page.unit-detail .unit-detail__section-head>div>span,
  .od-structured-page.unit-detail .unit-detail__position-copy>span,
  .od-structured-page.unit-detail .unit-detail__area-summary span,
  .od-structured-page.unit-detail .unit-detail__hero-caption small,
  .od-structured-page.unit-detail .unit-detail__related-grid span,
  .od-structured-page.unit-detail .unit-detail__closing small{
    font-size:var(--odm-caption)!important;
  }

  .od-structured-page.unit-detail .unit-detail__area-summary strong,
  .od-structured-page.unit-detail .unit-detail__related-grid strong{
    font-size:var(--odm-card-title)!important;
  }

  .od-structured-page.unit-detail .unit-detail__area-summary small,
  .od-structured-page.unit-detail .unit-detail__hero-caption span,
  .od-structured-page.unit-detail .unit-detail__verified,
  .od-structured-page.unit-detail .unit-detail__offer dt,
  .od-structured-page.unit-detail .unit-detail__related-grid small{
    font-size:var(--odm-meta)!important;
  }

  .od-structured-page.unit-detail .unit-detail__section-head h2,
  .od-structured-page.unit-detail .unit-detail__position-copy h2,
  .od-structured-page.unit-detail .unit-detail__closing h2{
    font-size:var(--odm-section-title)!important;
    line-height:1.14!important;
  }

  .od-structured-page.unit-detail .unit-detail__offer-price strong,
  .od-structured-page.unit-detail .unit-detail__hero-caption strong{
    font-size:20px!important;
  }

  .od-structured-page.unit-detail .unit-detail__offer dd,
  .od-structured-page.unit-detail .unit-detail__facts dd,
  .od-structured-page.unit-detail .unit-detail__related-grid b{
    font-size:var(--odm-ui)!important;
  }

  .od-structured-page.unit-detail .unit-detail__hero-actions a,
  .od-structured-page.unit-detail .unit-detail__closing-actions a,
  .od-structured-page.unit-detail .unit-detail__mobile-actions a,
  .od-structured-page.unit-detail .unit-detail__back{
    font-size:var(--odm-button)!important;
  }

  /* Shared footer */
  .site-footer .footer-copy,
  .site-footer .footer-contact p{
    font-size:var(--odm-meta)!important;
    line-height:1.7!important;
  }

  .site-footer .footer-links strong,
  .site-footer .footer-contact>span,
  .site-footer .footer-bottom{
    font-size:var(--odm-caption)!important;
  }

  .site-footer .footer-links a{
    font-size:var(--odm-meta)!important;
  }

  .site-footer .footer-contact>strong{
    font-size:15px!important;
    line-height:1.5!important;
  }
}


/* Office detail mobile horizontal rhythm.
 * Use one 14px gutter everywhere; neutralize legacy 10px/full-bleed width math.
 */
@media(max-width:720px){
  .front-office-page.od-structured-page{
    --od-mobile-page-gutter:14px;
  }

  .front-office-page.od-structured-page .front-shell{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .front-office-page.od-structured-page .front-hero__visual{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  .front-office-page.od-structured-page .front-office-main,
  .front-office-page.od-structured-page .front-office-main > section{
    width:100%;
    max-width:100%;
  }

  .front-office-page.od-structured-page .front-detail-nav__inner{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}


/* Mobile office hero visual: full-bleed edge to edge.
 * Keep text/facts on the shared 14px gutter; only the lead visual breaks out.
 */
@media(max-width:720px){
  .front-office-page.od-structured-page .front-hero__visual{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    border-radius:0!important;
  }

  .front-office-page.od-structured-page .front-hero__visual img,
  .front-office-page.od-structured-page .front-hero__visual picture,
  .front-office-page.od-structured-page .front-hero__visual picture img{
    display:block;
    width:100%!important;
    height:100%!important;
    object-fit:cover;
  }
}


/* Mobile office hero: attach lead image directly to the detail subheader. */
@media(max-width:720px){
  .front-office-page.od-structured-page .front-hero{
    padding-top:0!important;
  }
}


/* Primary transit summary: make line and walking time scannable without changing data hierarchy. */
.front-office-page.od-structured-page .front-hero__transit-summary{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  margin-top:8px;
}

.front-office-page.od-structured-page .front-hero__transit-line{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:0 8px;
  border-radius:3px;
  background:var(--transit-line-bg,#eef4f8);
  color:var(--transit-line-color,#1f5f93);
  font-size:12px;
  font-weight:900;
  line-height:1;
}

.front-office-page.od-structured-page .front-hero__transit-walk{
  color:var(--ods-ink);
  font-size:14px;
  font-weight:900;
  line-height:1.2;
}

@media(max-width:760px){
  .front-office-page.od-structured-page .front-hero__transit-summary{
    gap:8px;
    margin-top:9px;
  }

  .front-office-page.od-structured-page .front-hero__transit-line{
    min-height:28px;
    padding:0 9px;
    font-size:12px;
  }

  .front-office-page.od-structured-page .front-hero__transit-walk{
    font-size:15px;
  }
}

/* === Shared public footer === */
/* Shared OfficeDoor footer v2 */

.site-footer.site-footer--v2{
  padding:0;
  background:#061321;
  color:#fff;
}

.site-footer-v2{
  padding-top:58px;
}

.site-footer-v2__brand{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:40px;
  padding-bottom:38px;
  border-bottom:1px solid rgba(148,163,184,.16);
}

.site-footer-v2__brand .footer-logo{
  width:auto;
  max-width:205px;
  max-height:52px;
  margin:0;
  object-fit:contain;
  filter:brightness(0) invert(1);
}

.site-footer-v2__brand span.footer-logo{
  filter:none;
  color:#fff;
  font-size:25px;
  font-weight:900;
}

.site-footer-v2__brand p{
  max-width:500px;
  margin:0;
  color:#8fa0b1;
  font-size:12px;
  line-height:1.8;
  text-align:right;
}

.site-footer-v2__nav{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:60px;
  padding:38px 0 42px;
}

.site-footer-v2__group{
  display:grid;
  align-content:start;
  gap:11px;
}

.site-footer-v2__group strong{
  margin-bottom:4px;
  color:#dce8f2;
  font-size:11px;
  font-weight:850;
}

.site-footer-v2__group a{
  width:max-content;
  max-width:100%;
  color:#7f91a4;
  font-size:11px;
  line-height:1.5;
  text-decoration:none;
}

.site-footer-v2__group a:hover,
.site-footer-v2__group a:focus-visible{
  color:#fff;
}

.site-footer-v2__bottom{
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-top:1px solid rgba(148,163,184,.16);
  color:#5f7285;
  font-size:10px;
}

.site-footer-v2__bottom>div{
  display:flex;
  align-items:center;
  gap:10px;
}

.site-footer-v2__bottom a{
  color:#718396;
  text-decoration:none;
}

.site-footer-v2__bottom i{
  width:1px;
  height:11px;
  display:block;
  background:rgba(148,163,184,.28);
}

@media(max-width:760px){
  .site-footer-v2{
    padding-top:42px;
  }

  .site-footer-v2__brand{
    display:block;
    padding-bottom:28px;
  }

  .site-footer-v2__brand .footer-logo{
    max-width:166px;
    max-height:42px;
  }

  .site-footer-v2__brand p{
    max-width:330px;
    margin-top:20px;
    font-size:10px;
    line-height:1.75;
    text-align:left;
  }

  .site-footer-v2__nav{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    padding:28px 0 30px;
  }

  .site-footer-v2__group{
    gap:9px;
  }

  .site-footer-v2__group strong{
    margin-bottom:3px;
    font-size:9px;
  }

  .site-footer-v2__group a{
    font-size:9px;
    line-height:1.45;
  }

  .site-footer-v2__bottom{
    min-height:86px;
    display:grid;
    align-content:center;
    justify-content:stretch;
    gap:10px;
    font-size:8px;
  }

  .site-footer-v2__bottom>div{
    gap:8px;
  }
}

@media(max-width:390px){
  .site-footer-v2__nav{
    grid-template-columns:1fr 1fr;
    row-gap:24px;
  }

  .site-footer-v2__group:last-child{
    grid-column:1/-1;
    grid-template-columns:repeat(3,max-content);
    align-items:center;
    column-gap:14px;
  }

  .site-footer-v2__group:last-child strong{
    grid-column:1/-1;
  }
}

/* Home shortcut: desktop height only; mobile sizing stays in the mobile nav block above. */
@media(min-width:721px){
  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__home{
    align-self:stretch;
    height:56px;
    min-height:56px;
    border:0;
    background:#fff;
    color:#0f4f83 !important;
  }
  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__home svg{
    width:21px;
    height:21px;
  }
}
.front-office-page.od-structured-page .front-detail-nav .front-detail-nav__home:hover,
.front-office-page.od-structured-page .front-detail-nav .front-detail-nav__home:focus-visible{
  background:#e9edf1;
  color:#0f4f83 !important;
}

/* Office overview: photo and compact building facts share the hero. */
.front-office-page.od-structured-page .front-hero__body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,42px);align-items:stretch}
.front-office-page.od-structured-page .front-hero__visual{order:0;width:100%;height:100%;min-height:0;aspect-ratio:auto;margin:0;border-radius:9px}
.front-office-page.od-structured-page .front-hero__copy{order:1;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:0}
.front-office-page.od-structured-page .front-hero h1{font-size:clamp(28px,3vw,44px);line-height:1.2}
.front-office-page.od-structured-page .front-hero__address{margin:12px 0 0}
.front-office-page.od-structured-page .front-hero__copy .front-hero__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px;border:1px solid #dfe7ef;border-radius:9px;overflow:hidden}
.front-office-page.od-structured-page .front-hero__copy .front-hero__fact{min-width:0;min-height:0;padding:12px 14px;border:0;border-bottom:1px solid #e8edf2;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.front-office-page.od-structured-page .front-hero__copy .front-hero__fact:nth-child(odd){border-right:1px solid #e8edf2}
.front-office-page.od-structured-page .front-hero__copy .front-hero__fact:last-child{grid-column:1/-1;border:0}
.front-office-page.od-structured-page .front-hero__copy .front-hero__fact strong{font-size:15px;line-height:1.35}
.front-office-page.od-structured-page .front-hero__copy .front-hero__fact small{font-size:11px}
.front-office-page.od-structured-page .front-detail-nav__scroll{flex:1;min-width:0}
.front-detail-nav__office-name{display:none;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 12px;color:#fff;font-weight:800;font-size:13px}
.front-detail-nav.is-office-condensed .front-detail-nav__office-name{display:block}
@media(max-width:900px){
.front-office-page.od-structured-page .front-hero__body{grid-template-columns:minmax(0,1fr);gap:0}
.front-office-page.od-structured-page .front-hero__visual{height:auto;aspect-ratio:16/9;width:100%;min-height:0;margin:0}
.front-office-page.od-structured-page .front-hero__copy{padding-top:20px}
.front-detail-nav__office-name{max-width:115px;font-size:11px}
}
@media(max-width:520px){
.front-office-page.od-structured-page .front-hero__copy .front-hero__fact{padding:10px}
.front-office-page.od-structured-page .front-hero__copy .front-hero__fact strong{font-size:13px}
.front-detail-nav.is-office-condensed .front-detail-nav__office-name{max-width:85px}
}

/* Consolidated office/building facts: native details, no extra JavaScript. */
.front-office-page .office-more{margin-top:14px;min-width:0;border:1px solid #dce6ef;border-radius:10px;background:#fff}
.front-office-page .office-more__toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:12px 15px;color:#15436b;font-size:13px;font-weight:800;list-style:none}
.front-office-page .office-more__toggle::-webkit-details-marker{display:none}
.front-office-page .office-more__toggle:focus-visible{outline:3px solid #81b5e8;outline-offset:2px}
.front-office-page .office-more__chevron{font-size:23px;line-height:1;transition:transform .18s}
.front-office-page .office-more[open] .office-more__chevron{transform:rotate(180deg)}
.front-office-page .office-more__content{padding:14px;border-top:1px solid #e6edf4}
.front-office-page .office-more__content h2{margin:8px 0 12px;font-size:15px;line-height:1.4}
.front-office-page .office-more__content h2:not(:first-child){margin-top:24px}
.front-office-page .office-more__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.front-office-page .office-more__card{min-width:0;display:flex;flex-direction:column;gap:6px;padding:12px;background:#f7f9fb;border:1px solid #edf1f5;border-radius:8px}
.front-office-page .office-more__card span{color:#6d8194;font-size:11px;font-weight:700}
.front-office-page .office-more__card strong{color:#19334d;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.front-office-page .office-more__card small{color:#73879a;font-size:11px}
.front-office-page .office-more__summary{margin:0 0 13px;font-size:12px;line-height:1.7;color:#50677d;white-space:pre-line}
.front-office-page .office-more__amenities{display:flex;flex-wrap:wrap;gap:7px}
.front-office-page .office-more__amenities span{padding:9px 12px;background:#f0f5f9;border-radius:7px;font-size:15px;font-weight:700;line-height:1.45}
.front-office-page .office-more__photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.front-office-page .office-more__photos figure{margin:0;min-width:0}
.front-office-page .office-more__photos img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:7px}
.front-office-page .office-more__photos figcaption{margin-top:5px;color:#6d8194;font-size:10px}
@media(max-width:900px){.front-office-page .office-more__content{padding:12px}.front-office-page .office-more__card{padding:10px}}

/* Expanded office details occupy the full row beneath the photo and overview. */
.front-office-page .front-hero > .front-shell > .office-more{
  width:100%;margin:26px 0 12px;border:0;background:transparent;
}
.front-office-page .front-hero > .front-shell > .office-more > .office-more__toggle{
  width:max-content;max-width:100%;min-height:44px;margin:0 auto;padding:10px 8px;
  justify-content:center;gap:9px;border:0;border-bottom:1px solid transparent;
  border-radius:0;background:transparent;box-shadow:none;
  color:#355f83;font-size:15px;font-weight:700;letter-spacing:-.02em;
  transition:color .18s ease,border-color .18s ease;
}
.front-office-page .front-hero > .front-shell > .office-more > .office-more__toggle:hover{
  color:#0e4778;border-bottom-color:#8baeca;
}
.front-office-page .office-more__label-open{display:none}
.front-office-page .office-more[open] .office-more__label-open{display:inline}
.front-office-page .office-more[open] .office-more__label-closed{display:none}
.front-office-page .office-more__chevron{
  width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round;flex:none;
  transform:none;transition:transform .18s ease;
}
.front-office-page .office-more[open] .office-more__chevron{transform:rotate(180deg)}
.front-office-page .front-hero > .front-shell > .office-more > .office-more__content{
  margin-top:16px;padding:20px 0 0;border-top:1px solid #e4ebf2;
}
.front-office-page .front-hero > .front-shell > .office-more .office-more__grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
@media(max-width:900px){
.front-office-page .front-hero > .front-shell > .office-more .office-more__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Overview transit summary buttons and a single accessible details modal. */
.front-office-page .front-hero__transit-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.front-office-page .front-hero__transit-actions button{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:6px 11px;border:1px solid #d7e4ee;border-radius:7px;background:#f5f9fc;color:#194c73;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.front-office-page .front-hero__transit-actions button:hover{border-color:#8bb5d3;background:#e9f3fb}
.front-office-page .front-hero__transit-actions button:focus-visible,.office-transit-modal button:focus-visible{outline:3px solid #76abe0;outline-offset:2px}
.office-transit-modal{width:min(520px,calc(100% - 32px));max-height:min(75vh,680px);padding:0;border:1px solid #dce5ee;border-radius:14px;background:#fff;color:#19334d;box-shadow:0 22px 75px #102a4260}
.office-transit-modal::backdrop{background:rgba(12,28,45,.55)}
.office-transit-modal__header{display:flex;justify-content:space-between;align-items:center;padding:22px 24px 16px;border-bottom:1px solid #e6edf4}
.office-transit-modal__header span{font-size:11px;color:#6a8196}
.office-transit-modal__header h2{margin:5px 0 0;font-size:22px}
.office-transit-modal__close{width:36px;height:36px;border:0;border-radius:8px;background:#f1f5f8;color:#19334d;font-size:26px;cursor:pointer}
.office-transit-modal__body{max-height:calc(75vh - 94px);overflow:auto;padding:8px 24px 24px}
.office-transit-modal__body [hidden]{display:none}
.office-transit-modal__item{padding:16px 0;border-bottom:1px solid #e6edf4}
.office-transit-modal__item-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.office-transit-modal__item-heading strong{font-size:16px}
.office-transit-modal__item-heading>span,.office-transit-modal__lines span{display:inline-block;padding:4px 7px;border-radius:5px;background:#ecf3f9;color:#245579;font-size:11px}
.office-transit-modal__lines{display:flex;gap:5px;flex-wrap:wrap}
.office-transit-modal__item p{margin:7px 0 0;font-size:13px;color:#315c7a}
.office-transit-modal__item small{display:block;margin-top:5px;color:#788b9c;font-size:12px}
@media(max-width:600px){.office-transit-modal__header{padding:18px}.office-transit-modal__body{padding:6px 18px 20px}.front-office-page .front-hero__transit-actions button{font-size:11px}}

/* Transit: station details on the left, nearby transport actions on the right. */
@media(min-width:761px){
  .front-office-page .front-hero__fact--transit{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto;
    column-gap:20px;
    align-items:center;
  }
  .front-office-page .front-hero__fact--transit > span:first-child,
  .front-office-page .front-hero__fact--transit > strong,
  .front-office-page .front-hero__fact--transit > .front-hero__transit-summary{
    grid-column:1;
  }
  .front-office-page .front-hero__fact--transit > .front-hero__transit-actions{
    grid-column:2;
    grid-row:1 / span 3;
    margin-top:0;
    justify-content:flex-end;
    align-self:center;
  }
}
@media(max-width:760px){
  .front-office-page .front-hero__fact--transit > .front-hero__transit-actions{
    margin-top:12px;
  }
}

/* Office overview details: dense factual grid; long notes expandable separately. */
.front-office-page .office-more__content{max-width:100%;min-width:0}
.front-office-page .office-more__content > h2{font-size:17px;margin-bottom:14px}
.front-office-page .office-more__card{background:#f8fafc;border-color:#e5edf4;gap:7px;padding:15px 16px}
.front-office-page .office-more__card span{font-size:12px}
.front-office-page .office-more__card strong{font-size:15px;line-height:1.45}
.front-office-page .office-more__card small{font-size:12px}
.front-office-page .office-more__group{margin-top:28px;padding-top:22px;border-top:1px solid #e5ecf2}
.front-office-page .office-more__group h2{margin:0 0 14px;font-size:17px}
.front-office-page .office-more__group h3{margin:20px 0 10px;font-size:14px;color:#354f67}
.front-office-page .office-more__details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.front-office-page .office-more__note,.front-office-page .office-more__detail{min-width:0;border:1px solid #e3ebf2;border-radius:8px;background:#fff}
.front-office-page .office-more__note{margin-bottom:14px;background:#f8fafc}
.front-office-page .office-more__note summary,.front-office-page .office-more__detail summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;cursor:pointer;list-style:none;color:#233e56;font-size:13px}
.front-office-page .office-more__note summary::-webkit-details-marker,.front-office-page .office-more__detail summary::-webkit-details-marker{display:none}
.front-office-page .office-more__note summary span,.front-office-page .office-more__detail summary span{white-space:nowrap;color:#577d9c;font-size:11px}
.front-office-page .office-more__note[open] summary span,.front-office-page .office-more__detail[open] summary span{font-size:0}
.front-office-page .office-more__note[open] summary span::after,.front-office-page .office-more__detail[open] summary span::after{content:"접기";font-size:11px}
.front-office-page .office-more__note p,.front-office-page .office-more__detail p{margin:0;padding:0 15px 16px;color:#50667a;font-size:12px;line-height:1.75;white-space:pre-line;overflow-wrap:anywhere}
.front-office-page .office-more__note summary:focus-visible,.front-office-page .office-more__detail summary:focus-visible{outline:3px solid #83b8e8;outline-offset:2px}
.front-office-page .office-more__media-link{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px;padding:18px;border:1px solid #e2eaf1;border-radius:9px;background:#f7fafd}
.front-office-page .office-more__media-link>div{display:flex;flex-direction:column;gap:4px}
.front-office-page .office-more__media-link strong{font-size:14px}
.front-office-page .office-more__media-link span{color:#6a8092;font-size:12px}
.front-office-page .office-more__media-link a{flex:none;color:#165584;font-size:13px;font-weight:800;text-decoration:none}
@media(max-width:760px){
.front-office-page .office-more__details{grid-template-columns:minmax(0,1fr)}
.front-office-page .office-more__card{padding:12px}
.front-office-page .office-more__card strong{font-size:13px}
.front-office-page .office-more__media-link{align-items:flex-start;flex-direction:column;gap:12px}
}

/* Overview more: facility facts above, openly readable operations below. */
.front-office-page .office-more__group--facilities{margin-top:22px}
.front-office-page .office-more__group--facilities h2,
.front-office-page .office-more__group--operations h2{margin:0 0 14px;font-size:17px}
.front-office-page .office-more__group--operations{margin-top:28px}
.front-office-page .office-more__operation-intro{padding:16px 18px;margin-bottom:12px;border:1px solid #e3eaf1;border-radius:9px;background:#f8fafc}
.front-office-page .office-more__operation-intro h3,
.front-office-page .office-more__operation-item h3{margin:0 0 7px;font-size:13px;color:#244c6c}
.front-office-page .office-more__operation-intro p,
.front-office-page .office-more__operation-item p{margin:0;color:#495f73;font-size:12px;line-height:1.75;white-space:pre-line;overflow-wrap:anywhere}
.front-office-page .office-more__operation-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
.front-office-page .office-more__operation-item{min-width:0;padding:16px 18px;border:1px solid #e3eaf1;border-radius:9px;background:#fff}
@media(max-width:760px){.front-office-page .office-more__operation-list{grid-template-columns:minmax(0,1fr)}.front-office-page .office-more__operation-intro,.front-office-page .office-more__operation-item{padding:14px}}

/* Office operations: consistent two-column label/value rows, not uneven cards. */
.front-office-page .office-more__group--operations .office-more__operation-list{
  display:block;
  border:1px solid #dee8f1;
  border-radius:10px;
  overflow:hidden;
  background:#fff;
}
.front-office-page .office-more__group--operations .office-more__operation-item{
  display:grid;
  grid-template-columns:minmax(145px,23%) minmax(0,1fr);
  gap:20px;
  align-items:start;
  min-height:58px;
  margin:0;
  padding:15px 18px;
  border:0;
  border-radius:0;
  border-bottom:1px solid #e7edf3;
  background:#fff;
}
.front-office-page .office-more__group--operations .office-more__operation-item:nth-child(even){background:#f8fafc}
.front-office-page .office-more__group--operations .office-more__operation-item:last-child{border-bottom:0}
.front-office-page .office-more__group--operations .office-more__operation-item h3{
  margin:0;
  font-size:13px;
  line-height:1.65;
  color:#234e70;
}
.front-office-page .office-more__group--operations .office-more__operation-item p{
  margin:0;
  font-size:13px;
  line-height:1.7;
  color:#40586e;
}
@media(max-width:600px){
  .front-office-page .office-more__group--operations .office-more__operation-item{
    grid-template-columns:minmax(0,1fr);
    gap:5px;
    padding:12px 14px;
    min-height:0;
  }
}


/* Mobile detail navigation: same minimal text tabs as the search results.
   Keep the home link inside the single horizontal rail without a pinned button. */
@media(max-width:720px){
  .front-office-page.od-structured-page .front-detail-nav{
    border:0!important;
    border-bottom:1px solid #e9edf2!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  .front-office-page.od-structured-page .front-detail-nav__inner{
    box-sizing:border-box!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    align-items:center!important;
    width:100%!important;
    max-width:100%!important;
    min-height:52px!important;
    gap:18px!important;
    margin:0!important;
    padding:0 16px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    scroll-padding-inline:16px;
  }
  .front-office-page.od-structured-page .front-detail-nav__inner::-webkit-scrollbar{
    display:none;
  }
  .front-office-page.od-structured-page .front-detail-nav__scroll{
    display:flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    gap:24px!important;
    overflow:visible!important;
  }
  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__home{
    position:relative!important;
    z-index:auto!important;
    flex:0 0 auto!important;
    align-self:center!important;
    width:28px!important;
    min-width:28px!important;
    height:52px!important;
    min-height:52px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#5f6b7a!important;
  }
  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__home::before,
  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__home::after{
    display:none!important;
  }
  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__scroll a{
    position:relative!important;
    flex:0 0 auto!important;
    min-height:52px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#64748b!important;
    box-shadow:none!important;
    font-size:15px!important;
    font-weight:700!important;
  }
  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__scroll a.is-active{
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#143d66!important;
    box-shadow:none!important;
    font-weight:800!important;
  }
  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__scroll a::after{
    content:"";
    display:block!important;
    left:0;
    right:0;
    bottom:0;
    height:3px;
    border-radius:2px 2px 0 0;
    background:#143d66;
    transform:scaleX(0);
  }
  .front-office-page.od-structured-page .front-detail-nav .front-detail-nav__scroll a.is-active::after{
    transform:scaleX(1);
  }
  .front-office-page.od-structured-page .front-detail-nav__office-name{
    display:none!important;
  }
}
