.res-breadcrumb{max-width:1180px;margin:0 auto;padding:19px 6.4%;display:flex;align-items:center;gap:10px;color:#7b8491;font-size:10px}
.res-breadcrumb a{color:#38485a;font-weight:600}.res-breadcrumb a:hover{color:var(--blue)}
.res-hero{height:445px;position:relative;overflow:hidden;background:#435b65}
.res-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%;animation:photo-arrive 1s cubic-bezier(.2,.75,.2,1) both}
.res-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,18,30,.83) 0%,rgba(9,18,30,.66) 37%,rgba(9,18,30,.12) 72%,rgba(9,18,30,.04) 100%)}
.res-hero-copy{position:absolute;left:max(9.5%,calc((100% - 1180px)/2));top:50%;transform:translateY(-50%);max-width:500px;color:white;animation:fade-up .7s ease both}
.res-eyebrow{display:block;font-size:9px;letter-spacing:1.65px;font-weight:700;color:#d1e8ff;margin-bottom:20px}
.res-hero h1{font:700 clamp(48px,6vw,72px)/.99 var(--display);letter-spacing:-.075em;margin:0;color:white}
.res-hero h1 em{font-style:normal;color:var(--lime)}
.res-hero-copy p{max-width:400px;font-size:14px;line-height:1.75;color:#edf1f5;margin:20px 0 23px}
.res-hero-links{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.res-hero-copy .button{font-size:11px}.res-hero-secondary{font-size:10px;color:white;font-weight:600}.res-hero-secondary span{color:var(--lime);padding-left:6px}.res-photo-caption{position:absolute;right:6.4%;bottom:20px;font-size:8px;letter-spacing:1.4px;color:#fff;font-weight:600;text-shadow:0 2px 10px #1118}
.res-section{padding-top:85px;padding-bottom:91px}
.res-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:32px}
.res-section-heading h2{font:700 clamp(38px,4.5vw,55px)/1.05 var(--display);letter-spacing:-.07em;color:#111318;margin:25px 0 0}
.res-section-heading>p{max-width:270px;margin:0 0 5px;font-size:12px;line-height:1.75;color:#657080}
.package-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.package-card{position:relative;padding:23px 20px 20px;border:1px solid #e4e8ed;border-radius:12px;background:white;min-width:0;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.package-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px #152b4612;border-color:#b4d1f0}
.package-card.package-featured{background:#f6f9ff;border-color:#a4c9f2;box-shadow:0 8px 26px #1475e80d}
.package-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:17px;border-bottom:1px solid #e8edf2;color:var(--blue);font-size:8px;font-weight:800;letter-spacing:1.2px}
.package-index{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#f0f5fa;color:#7d8996;font-size:9px;letter-spacing:0}
.package-card h3{font:700 17px var(--display);letter-spacing:-.045em;margin:17px 0 8px;color:#161c25}
.package-price{margin:0;color:#111318;font:700 29px/1.2 var(--display);letter-spacing:-.07em;white-space:nowrap}
.package-price span{font:600 13px var(--sans);letter-spacing:0;color:#687586}
.package-space{min-height:34px;margin:10px 0 12px;color:#687586;font-size:10px;line-height:1.5}
.package-card ul{list-style:none;margin:0;padding:12px 0 13px;border-top:1px solid #edf0f3;border-bottom:1px solid #edf0f3;min-height:74px}
.package-card li{position:relative;padding-left:15px;margin:5px 0;color:#354356;font-size:10px}
.package-card li:before{content:'✓';position:absolute;left:0;color:#438a3c;font-weight:700}
.package-card>a{display:inline-flex;align-items:center;gap:8px;margin-top:16px;color:#1f3148;font-size:9px;font-weight:700}
.package-card>a span{color:var(--blue);font-size:14px;transition:transform .2s ease}.package-card>a:hover span{transform:translate(2px,-2px)}
.package-note{display:flex;gap:9px;align-items:flex-start;margin:18px 0 0;color:#6d7785;font-size:10px;line-height:1.6}
.package-note>span{color:#7eac27;font-size:16px;line-height:1}
.checklist-section{background:#f5f7fa;padding:82px 0 85px}
.checklist-inner{max-width:1360px;margin:0 auto}
.checklist-section .res-section-heading{margin-bottom:25px}
.table-hint{display:none;color:#788596;font-size:9px;margin:0 0 8px}.table-hint b{font-size:13px;color:var(--blue);padding-left:5px}
.table-scroll{overflow:auto;border:1px solid #e3e8ee;border-radius:12px;background:white;box-shadow:0 12px 30px #152b4608;overscroll-behavior-inline:contain;scrollbar-color:#aac5e3 #e9eff5;scrollbar-width:thin}
.scope-table{width:100%;min-width:770px;border-collapse:separate;border-spacing:0;font-size:11px}
.scope-table th,.scope-table td{padding:11px 14px;border-bottom:1px solid #edf0f3;text-align:center}
.scope-table thead th{position:sticky;top:0;background:#142c47;color:#fff;padding:15px 12px;font-size:11px;font-weight:700;z-index:1}
.scope-table thead th:first-child{text-align:left;min-width:285px;padding-left:20px;border-radius:11px 0 0 0}
.scope-table thead th:last-child{border-radius:0 11px 0 0}
.scope-table thead th span{display:block;text-transform:uppercase;letter-spacing:.7px}
.scope-table thead th small{display:block;color:#b9d7f7;font-size:9px;font-weight:500;margin-top:5px}
.scope-table tbody th[scope=row]{text-align:left;font-weight:500;color:#334257;padding-left:20px;line-height:1.45}
.scope-table tbody td{width:11%;background:#fff}
.scope-table tbody tr:not(.scope-group):nth-child(even) td{background:#fbfcfd}
.scope-table .scope-group th{padding:11px 20px;text-align:left;text-transform:uppercase;letter-spacing:1px;font-size:9px;color:#2466aa;background:#eaf3fb;border-bottom:1px solid #dbe9f6}
.scope-table .scope-group:not(:first-child) th{border-top:8px solid #f5f7fa}
.yes,.no{display:inline-grid;place-items:center;width:21px;height:21px;border-radius:50%;font-size:12px;font-weight:800;font-style:normal}
.yes{background:#e8f5e6;color:#277a38}.no{background:#f1f3f5;color:#9aa2ad}
.table-legend{display:flex;align-items:center;gap:7px;margin:14px 0 0;color:#737f8d;font-size:9px}.table-legend .no{margin-left:10px}
.scope-note{margin:19px 0 0;padding:14px 17px;border-radius:9px;background:#eaf3fb;color:#53657b;font-size:10px;line-height:1.65}.scope-note strong{color:#203b5b}
.monthly-section{padding-top:92px;padding-bottom:97px}
.monthly-intro{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:14px;padding:16px 19px;margin-bottom:14px;border:1px solid #e7ecf1;background:#f9fbfd;border-radius:10px}
.monthly-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:var(--blue);background:#e8f2fc;font-size:20px}
.monthly-intro strong{font-size:11px;color:#1d2d41}.monthly-intro p{font-size:10px;line-height:1.5;color:#6d7988;margin:4px 0 0}
.monthly-intro>a{font-size:9px;font-weight:700;color:#1c314a;white-space:nowrap}.monthly-intro>a span{color:var(--blue);font-size:13px;padding-left:5px}
.monthly-table-wrap{border:1px solid #e4e9ef;border-radius:11px;overflow:auto;box-shadow:0 10px 27px #132a4308}
.monthly-table{width:100%;min-width:620px;border-collapse:collapse;background:#fff;font-size:11px}
.monthly-table thead{background:#142c47;color:white}
.monthly-table th,.monthly-table td{text-align:left;padding:14px 18px;border-bottom:1px solid #edf0f3}
.monthly-table thead th{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:#d7e6f7}
.monthly-table tbody th{font-size:11px;font-weight:600;color:#23354c}
.monthly-table tbody td{color:#647184;font-size:10px}
.monthly-table tbody td:last-child{font-size:13px;font-weight:700;color:#152c48;white-space:nowrap}
.monthly-table tbody tr:nth-child(even){background:#f8fafc}.monthly-table tbody tr:last-child th,.monthly-table tbody tr:last-child td{border-bottom:0}
.monthly-note{font-size:9px;color:#7d8794;margin:11px 0 0}
.apartment-section{padding:84px 0 92px;background:#f6f8fb}
.apartment-inner{max-width:1360px;margin:0 auto}
.apartment-section .res-section-heading{margin-bottom:26px}
.apartment-image{position:relative;height:285px;margin:0 0 16px;overflow:hidden;border-radius:13px;background:#dce4e8;box-shadow:0 14px 36px #142b4610}
.apartment-image:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(0deg,#102239a6,transparent);pointer-events:none}
.apartment-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 52%;transition:transform .8s cubic-bezier(.2,.75,.2,1)}
.apartment-image:hover img{transform:scale(1.025)}
.apartment-image figcaption{position:absolute;z-index:1;left:22px;bottom:17px;color:white;font:600 11px var(--display);letter-spacing:.02em}
.apartment-rate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:16px}
.apartment-rate-card{padding:21px 23px 19px;border:1px solid #e3e8ee;border-radius:11px;background:white;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.apartment-rate-card:hover{transform:translateY(-4px);border-color:#b4d1f0;box-shadow:0 14px 30px #152b4612}
.apartment-rate-card-featured{background:#f7faff;border-color:#b7d3f2}
.apartment-rate-top{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid #e9edf1;color:#6f7e90;font-size:8px;font-weight:700;letter-spacing:1px}
.apartment-rate-top span:first-child{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#edf4fb;color:var(--blue);letter-spacing:0}
.apartment-rate-card h3{margin:16px 0 6px;font:700 19px var(--display);letter-spacing:-.05em;color:#151c26}
.apartment-count{font-size:10px;color:#657286;margin:0}
.apartment-count span{padding:0 4px;color:#a1acb8}
.apartment-price{font:700 27px/1.2 var(--display);letter-spacing:-.06em;color:#10151d;margin:18px 0 16px}
.apartment-price span{font:600 12px var(--sans);letter-spacing:0;color:#677488}
.apartment-rate-card>a{display:flex;justify-content:space-between;align-items:center;padding-top:13px;border-top:1px solid #edf0f3;font-size:9px;font-weight:700;color:#22354d}
.apartment-rate-card>a b{font-size:14px;color:var(--blue);font-weight:400}
.apartment-scope-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin:53px 0 21px}
.apartment-scope-heading h3{font:700 30px/1.04 var(--display);letter-spacing:-.065em;color:#131923;margin:19px 0 0}
.apartment-scope-heading>p{font-size:10px;line-height:1.65;color:#737f8e;max-width:250px;margin:0 0 4px}
.apartment-scope-wrap{border:1px solid #e3e8ee;border-radius:11px;overflow:hidden;background:#fff;box-shadow:0 8px 25px #132a4307}
.apartment-scope-table{width:100%;border-collapse:collapse;font-size:11px}
.apartment-scope-table th,.apartment-scope-table td{padding:13px 18px;text-align:left;border-bottom:1px solid #edf0f3;line-height:1.6}
.apartment-scope-table thead{background:#142c47;color:white}
.apartment-scope-table thead th{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:#d7e6f7}
.apartment-scope-table thead th:first-child{width:180px}
.apartment-scope-table tbody th{width:180px;color:#23374e;font-weight:600;background:#f9fbfd}
.apartment-scope-table tbody td{color:#566477}
.apartment-scope-table tbody tr:last-child th,.apartment-scope-table tbody tr:last-child td{border-bottom:0}
.res-book{padding-top:0;padding-bottom:90px}
.res-book-card{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:39px 5.5%;border-radius:13px;background:#eff4f9}
.res-book-card h2{font:700 37px/1.05 var(--display);letter-spacing:-.07em;color:#111318;margin:21px 0 10px}
.res-book-card>div:first-child>p{color:#687586;font-size:11px;line-height:1.7;margin:0}
.res-book-actions{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.res-book-actions .button{font-size:10px}.res-email-link{color:#155dba;font-size:10px;font-weight:600}.res-book-actions>span{font-size:9px;color:#718092}
.primary-nav a[aria-current=page]{color:var(--blue)}
@media(prefers-reduced-motion:reduce){.res-hero>img,.res-hero-copy{animation:none!important}}
@media(max-width:900px){.res-hero-copy{left:7%}.package-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.package-card{padding:21px}.res-section{padding-top:72px;padding-bottom:76px}.checklist-section{padding:70px 0}.monthly-section{padding-top:78px;padding-bottom:82px}}
@media(max-width:680px){.res-breadcrumb{padding:15px 6%;font-size:9px}.res-hero{height:410px}.res-hero>img{object-position:58% center}.res-hero-shade{background:linear-gradient(90deg,rgba(9,18,30,.79),rgba(9,18,30,.48) 68%,rgba(9,18,30,.18))}.res-hero-copy{left:6%;right:6%;max-width:390px}.res-eyebrow{font-size:8px;margin-bottom:17px}.res-hero h1{font-size:53px}.res-hero-copy p{font-size:12px;max-width:310px}.res-photo-caption{right:6%;bottom:13px;font-size:7px}.res-section{padding-top:63px;padding-bottom:65px}.res-section-heading{display:block;margin-bottom:24px}.res-section-heading h2{font-size:42px;margin-top:22px}.res-section-heading>p{margin-top:12px;font-size:11px;max-width:340px}.package-cards{grid-template-columns:1fr 1fr;gap:9px}.package-card{padding:16px 13px;border-radius:10px}.package-top{padding-bottom:12px;font-size:7px}.package-index{width:21px;height:21px}.package-card h3{font-size:14px;margin:13px 0 7px}.package-price{font-size:24px}.package-price span{font-size:11px}.package-space{font-size:9px;min-height:30px}.package-card ul{min-height:66px;padding:9px 0}.package-card li{font-size:9px}.package-card>a{font-size:8px;gap:4px;margin-top:13px}.package-note{font-size:9px}.checklist-section{padding:62px 0}.checklist-section .res-section-heading{margin-bottom:20px}.table-hint{display:block}.scope-table{min-width:710px}.scope-table th,.scope-table td{padding:10px 11px}.scope-table thead th:first-child{min-width:230px;padding-left:14px}.scope-table tbody th[scope=row]{padding-left:14px;font-size:10px}.scope-table .scope-group th{padding-left:14px}.table-scroll{border-radius:9px}.scope-note{font-size:9px}.monthly-section{padding-top:65px;padding-bottom:69px}.monthly-intro{grid-template-columns:30px 1fr;gap:10px;padding:13px;margin-bottom:11px}.monthly-icon{width:29px;height:29px;font-size:18px}.monthly-intro p{font-size:9px}.monthly-intro>a{grid-column:2;justify-self:start;margin-top:2px}.monthly-table{min-width:585px}.monthly-table th,.monthly-table td{padding:12px}.monthly-table tbody th{font-size:10px}.monthly-table tbody td{font-size:9px}.monthly-table tbody td:last-child{font-size:11px}.res-book{padding-bottom:60px}.res-book-card{display:block;padding:28px 7%}.res-book-card h2{font-size:33px;margin-top:18px}.res-book-card>div:first-child>p{font-size:10px}.res-book-actions{margin-top:22px}}
@media(max-width:900px){.apartment-section{padding:70px 0 78px}.apartment-image{height:240px}.apartment-rate-grid{gap:10px}.apartment-rate-card{padding:19px}}
@media(max-width:680px){.apartment-section{padding:62px 0 69px}.apartment-image{height:190px;border-radius:10px}.apartment-image img{object-position:55% center}.apartment-image figcaption{left:14px;bottom:12px;font-size:9px}.apartment-rate-grid{grid-template-columns:1fr;gap:9px;margin-top:10px}.apartment-rate-card{padding:16px;border-radius:9px}.apartment-rate-top{padding-bottom:10px}.apartment-rate-card h3{font-size:16px;margin-top:12px}.apartment-price{font-size:24px;margin:12px 0}.apartment-scope-heading{display:block;margin:38px 0 17px}.apartment-scope-heading h3{font-size:26px}.apartment-scope-heading>p{margin-top:10px;font-size:9px}.apartment-scope-wrap{overflow:auto}.apartment-scope-table{min-width:550px}.apartment-scope-table th,.apartment-scope-table td{padding:11px 12px;font-size:10px}.apartment-scope-table thead th:first-child,.apartment-scope-table tbody th{width:135px}}

/* Keep package details and comparison tables easy to read. */
.res-breadcrumb{font-size:15px}
.res-eyebrow{font-size:14px}
.res-hero-secondary{font-size:15px}
.res-photo-caption{font-size:13px}
.package-top{font-size:13px}
.package-index{font-size:14px}
.package-space,.package-card li,.package-card>a,.package-note{font-size:15px}
.scope-table,.monthly-table{font-size:16px}
.scope-table thead th,.monthly-table tbody th{font-size:16px}
.scope-table thead th small,.scope-table .scope-group th,.monthly-table thead th{font-size:14px}
.scope-table tbody th[scope=row],.monthly-table tbody td{font-size:15px}
.yes,.no{font-size:17px}
.table-hint,.table-legend,.scope-note,.monthly-note{font-size:14px}
.monthly-intro strong{font-size:16px}
.monthly-intro p{font-size:15px}

/* Raise the remaining tiny readable text sizes, including mobile overrides. */
.res-breadcrumb{font-size:11px}
.res-eyebrow{font-size:11px}
.res-hero-secondary{font-size:11px}
.res-photo-caption{font-size:11px}
.package-top{font-size:11px}
.package-index{font-size:11px}
.package-space,.package-card li,.package-card>a,.package-note{font-size:11px}
.table-hint,.table-legend,.scope-note,.monthly-note{font-size:11px}
.scope-table thead th small,.scope-table .scope-group th,.monthly-table thead th{font-size:11px}
.monthly-intro strong,.monthly-intro p{font-size:11px}
.apartment-rate-top,.apartment-scope-table thead th,.apartment-scope-heading>p{font-size:11px}
.res-book-actions .button,.res-email-link,.res-book-actions>span{font-size:11px}
.monthly-intro>a,.apartment-image figcaption{font-size:11px}
@media(max-width:680px){
  .res-breadcrumb,.res-eyebrow,.res-hero-secondary,.res-photo-caption,.package-top,.package-space,.package-card li,.package-card>a,.package-note,.table-hint,.scope-note,.monthly-intro p,.monthly-intro>a,.monthly-table tbody th,.monthly-table tbody td,.apartment-scope-heading>p,.apartment-scope-table th,.apartment-scope-table td,.apartment-image figcaption{font-size:11px}
}

/* Readability pass for residential package content. */
.res-breadcrumb{font-size:14px}
.res-eyebrow{font-size:14px}
.res-hero-copy p{font-size:17px}
.res-hero-copy .button,.res-hero-secondary{font-size:14px}
.res-photo-caption{font-size:13px}
.res-section-heading>p{font-size:16px}
.package-top{font-size:13px}
.package-index{font-size:13px}
.package-space,.package-card li,.package-card>a,.package-note{font-size:15px}
.scope-table,.monthly-table,.apartment-scope-table{font-size:15px}
.scope-table thead th,.monthly-table tbody th{font-size:15px}
.scope-table thead th small,.scope-table .scope-group th,.monthly-table thead th{font-size:13px}
.scope-table tbody th[scope=row],.monthly-table tbody td{font-size:14px}
.table-hint,.table-legend,.scope-note,.monthly-note{font-size:14px}
.monthly-intro strong{font-size:16px}
.monthly-intro p,.monthly-intro>a{font-size:14px}
.apartment-rate-top,.apartment-scope-table thead th,.apartment-scope-heading>p{font-size:13px}
.apartment-scope-table th,.apartment-scope-table td{font-size:14px}
.res-book-card>div:first-child>p{font-size:16px}
.res-book-actions .button,.res-email-link,.res-book-actions>span{font-size:14px}
/* Keep apartment pricing text readable without overpowering the cards. */
.apartment-image figcaption{font-size:12px}
.apartment-rate-top{font-size:12px}
.apartment-rate-card h3{font-size:20px}
.apartment-count{font-size:12px}
.apartment-price{font-size:29px}
.apartment-price span{font-size:13px}
.apartment-rate-card>a{font-size:12px}
.apartment-rate-card>a b{font-size:16px}
/* Keep the enlarged hero copy clear of the bottom edge. */
.res-hero-copy{top:auto;bottom:38px;transform:none;padding-bottom:8px}
@media(max-width:680px){
  .res-breadcrumb,.res-eyebrow,.res-hero-secondary{font-size:13px}
  .res-hero-copy p{font-size:16px}
  .res-photo-caption{font-size:12px}
  .res-section-heading>p{font-size:15px}
  .package-top{font-size:12px}
  .package-space,.package-card li,.package-card>a,.package-note{font-size:14px}
  .scope-table thead th,.scope-table tbody th[scope=row],.monthly-table tbody th,.monthly-table tbody td,.apartment-scope-table th,.apartment-scope-table td{font-size:13px}
  .scope-table thead th small,.scope-table .scope-group th,.monthly-table thead th{font-size:12px}
  .table-hint,.scope-note,.monthly-intro p,.monthly-intro>a{font-size:13px}
  .res-book-card>div:first-child>p{font-size:15px}
  .apartment-image figcaption{font-size:11px}
  .apartment-rate-top{font-size:12px}
  .apartment-rate-card h3{font-size:18px}
  .apartment-count{font-size:12px}
  .apartment-price{font-size:26px}
  .apartment-price span{font-size:13px}
  .apartment-rate-card>a{font-size:12px}
  .res-hero-copy{bottom:32px;padding-bottom:6px}
}
