/* Modern visual layer: shared corporate identity, permanently exposed divisions. */
.modern{--paper:#fafafa;--ink:#171717;--muted:#686868;background:var(--paper)}
.modern h1,.modern h2,.modern h3{font-family:'Roar Sans',Arial,sans-serif;letter-spacing:-1.6px;line-height:1.08}
.modern h1{font-weight:400}.modern h2{font-weight:400;font-size:clamp(34px,3.65vw,52px)}
.modern h1 em,.modern h2 em{font-family:'Roar Serif',Georgia,serif;font-weight:400;font-style:italic;color:#818181}
.modern .review-strip{background:#1b1b1b;color:#bdbdbd}.modern .review-strip a{border-color:#777;color:#eee}
.modern .site-header{background:#fafafaf5;border-bottom:1px solid #dedede;padding-top:21px;padding-bottom:21px;transition:box-shadow .3s,padding .3s}
.modern.scrolled .site-header{box-shadow:0 10px 25px #00000008}.modern .site-header .logo{font-size:42px}
.modern .site-header .btn{border-radius:5px;min-height:47px;padding:12px 20px}
.modern .scroll-progress{position:fixed;top:0;left:0;z-index:100;width:100%;height:3px;background:#777;transform:scaleX(0);transform-origin:left;pointer-events:none}
.division-navigation{max-width:1440px;padding:18px 7% 22px;margin:auto}
.division-caption{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:9px;letter-spacing:1.5px;color:#777}
.division-caption a{font-size:10px;letter-spacing:0;color:#444}
.division-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
.division-links>a{display:flex;align-items:center;gap:9px;min-width:0;font-size:12px;line-height:1.25;padding:11px 12px;border:1px solid #e1e1e1;background:#f4f4f4;border-radius:4px;transition:background .22s,color .22s,border .22s,transform .22s}
.division-links>a:hover,.division-links>a[aria-current]{background:#222;color:#fff;border-color:#222;transform:translateY(-2px)}
.division-icon{display:block;flex:0 0 20px;width:20px;height:20px}.division-icon svg{width:100%;height:100%}.division-arrow{margin-left:auto;font-size:13px;color:#888}
.modern .modern-hero{max-width:1360px;width:calc(100% - 64px);margin:0 auto 0;display:grid;grid-template-columns:1.03fr 1fr;min-height:515px;position:relative;background:#181818;color:#fff;border-radius:7px;overflow:hidden}
.ambient-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:75px 75px;mask-image:linear-gradient(90deg,#000,transparent 65%);animation:grid-shift 24s linear infinite}
.hero-content{padding:43px 9% 27px 10%;z-index:2;position:relative;min-width:0}
.modern .hero-content .eyebrow{color:#bdbdbd;font-size:9px;letter-spacing:1.5px;display:flex;align-items:center;gap:11px}
.status-mark{width:8px;height:8px;background:#bcbcbc;border-radius:1px;box-shadow:0 0 0 4px #ffffff08;animation:status-light 3s ease-in-out infinite}
.modern .hero-content h1{font-size:clamp(48px,5.2vw,77px);line-height:1.03;letter-spacing:-3.3px;margin:30px 0 23px;font-weight:400}
.hero-content h1>span,.hero-content h1>em{display:block}.modern .hero-content h1>em{color:#c1c1c1;font-size:1.12em;line-height:1.05}
.hero-content>p{font-size:14px;line-height:1.8;color:#aaa;max-width:395px;margin:20px 0}
.modern .hero-actions{gap:22px;margin-top:27px;flex-wrap:wrap}.modern .hero-actions .btn{background:#f2f2f2;color:#171717;border-color:#f2f2f2;border-radius:4px;min-height:48px;font-size:12px;padding:13px 18px;gap:23px;position:relative;overflow:hidden}
.modern .hero-actions .btn:hover{background:#fff;box-shadow:0 8px 25px #ffffff12}.modern .hero-actions .textlink{font-size:11px;color:#b9b9b9;text-decoration:none;border-bottom:1px solid #5c5c5c;padding:8px 0}
.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ffffff16;margin-top:33px;padding-top:19px}
.hero-live{display:flex;align-items:center;gap:12px;min-width:0}.live-rule{height:32px;width:2px;background:linear-gradient(#999,#333);flex-shrink:0}.hero-live small{font-size:7px;letter-spacing:1px;color:#757575;display:block;margin-bottom:4px}.changing-line{font-size:11px;color:#c5c5c5;display:block;min-height:18px}
.motion-toggle{font-size:9px;color:#aaa;background:transparent;border:1px solid #444;border-radius:3px;padding:7px 9px;white-space:nowrap;display:flex;gap:7px;align-items:center}.motion-toggle:hover{color:#fff;border-color:#888}.motion-toggle span{font-size:10px}
.hero-scene{position:relative;margin:0;min-width:0;overflow:hidden;background:#444;isolation:isolate}
.hero-scene>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1);animation:scene-drift 22s ease-in-out infinite alternate}
.hero-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000b,transparent 65%),linear-gradient(90deg,#18181855,transparent 25%);z-index:1;pointer-events:none}
.hero-scene figcaption{position:absolute;bottom:36px;left:38px;right:26px;z-index:3;color:#fff}
.hero-scene figcaption>span{font-size:8px;letter-spacing:2px;color:#ddd;display:block;margin-bottom:16px}
.hero-scene figcaption strong{font:400 35px/1.12 'Roar Serif',Georgia,serif;letter-spacing:-.6px}
.hero-scene figcaption small{display:block;font-size:8px;line-height:1.6;color:#bbb;max-width:300px;margin-top:19px}
.scene-label{position:absolute;z-index:3;top:28px;right:28px;font-size:8px;letter-spacing:1.5px;color:#eee;writing-mode:vertical-rl}
.scene-lines{position:absolute;inset:23px;border:1px solid #ffffff35;z-index:2;pointer-events:none;clip-path:polygon(0 0,22% 0,22% 1%,1% 1%,1% 24%,0 24%,0 100%,100% 100%,100% 77%,99% 77%,99% 99%,78% 99%,78% 100%,0 100%)}
.modern .units-section{padding-top:63px;padding-bottom:65px}.modern .units-section .section-head{align-items:end;margin-bottom:30px;gap:40px}
.modern .units-section h2{font-size:clamp(35px,3.65vw,51px);letter-spacing:-1.8px;margin:13px 0 0}
.units-intro{display:flex;align-items:center;gap:25px}.directory-number{font:400 76px/1 'Roar Sans',Arial;color:#d1d1d1;letter-spacing:-6px}.units-intro p{font-size:12px;line-height:1.8;margin:0;color:#777}
.modern .unit-directory{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.modern .unit-row.unit-card{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:20px;min-height:266px;border:1px solid #dfdfdf;border-radius:6px;background:linear-gradient(150deg,#fff 35%,#f0f0f0);position:relative;overflow:hidden;transition:transform .35s,box-shadow .35s,background .35s,border .35s;transform:translateY(0)}
.modern .unit-card:hover,.modern .unit-card:focus-visible{background:#222;border-color:#222;color:#fff;transform:translateY(-7px);box-shadow:0 17px 30px #00000012}
.card-top{display:flex;justify-content:space-between;align-items:center;gap:15px}.modern .unit-card .unit-index{padding:0;font-size:8px;letter-spacing:1px;color:#999}.modern .unit-card .row-arrow{font-size:19px;line-height:1;color:#555;transition:transform .3s,color .3s}
.card-icon{display:block;width:41px;height:41px;margin:26px 0 22px;transition:transform .45s,color .3s;color:#444}.card-icon svg{width:100%;height:100%}
.modern .unit-card h3{font-size:19px;font-weight:400;letter-spacing:-.5px;line-height:1.2;margin:0 0 10px;min-height:46px}
.modern .unit-card p{font-size:11.5px;line-height:1.65;color:#777;max-width:none;margin:0;min-height:57px;transition:color .3s}
.card-explore{margin-top:23px;padding-top:13px;border-top:1px solid #ddd;font-size:9px;display:flex;justify-content:space-between;align-items:center;gap:10px;color:#555;transition:color .3s,border-color .3s}
.modern .unit-card:hover .card-icon{transform:translateY(-3px) scale(1.05);color:#fff}.modern .unit-card:hover .row-arrow{color:#ddd;transform:translate(3px,-3px)}
.modern .unit-card:hover p,.modern .unit-card:focus-visible p{color:#c5c5c5}.modern .unit-card:hover .card-explore,.modern .unit-card:focus-visible .card-explore{color:#eee;border-color:#ffffff24}
.directory-footer{display:flex;justify-content:space-between;gap:20px;margin-top:27px;padding-top:23px;border-top:1px solid #ddd;font-size:11px;color:#777}.directory-footer a{font-size:11px;color:#333}
.vision-band{overflow:hidden;background:#eee;border-top:1px solid #ddd;border-bottom:1px solid #ddd}.vision-band>div{display:flex;justify-content:space-around;align-items:center;gap:35px;padding:27px 6%;max-width:1440px;margin:auto;animation:band-breathe 9s ease-in-out infinite alternate}
.vision-band span{font-size:clamp(16px,2.4vw,35px);letter-spacing:-1px;color:#999}.vision-band i{font-size:33px;font-style:normal;color:#777}
.modern .featured-real-estate{background:#161616}.modern .featured-real-estate .wrap{padding-top:85px;padding-bottom:85px}.modern .featured-real-estate h2{font-size:43px;letter-spacing:-1.7px;line-height:1.12}.modern .featured-real-estate h2 em{color:#aaa}.modern .featured-real-estate p{font-size:14px;line-height:1.9;max-width:430px}.modern .featured-real-estate img{height:365px;border-radius:6px;transition:transform .8s;animation:none}.image-reveal{position:relative;overflow:hidden}.image-reveal img{object-fit:cover}.image-reveal:hover img{transform:scale(1.035)}.feature-index{position:absolute;left:24px;top:15px;color:#fffa;font:400 46px/1 'Roar Sans',Arial;letter-spacing:-3px}.modern .featured-real-estate .btn{font-size:12px;margin-top:22px}.modern .featured-real-estate figcaption{position:relative;z-index:2;background:#161616;padding-top:10px}
.modern .approach-section .step{padding:25px;border:1px solid #ddd;border-radius:5px;background:#fff;position:relative;overflow:hidden}.modern .step h3{font-size:27px;letter-spacing:-.7px}.modern .approach-section .step:before{content:'';position:absolute;left:0;top:0;width:0;height:2px;background:#222;transition:width .6s}.modern .approach-section .step:hover:before{width:100%}.modern .approach-section .steps{gap:18px}
.modern .consultation{background:#ececec}.modern .consultation h2{font-size:52px;letter-spacing:-1.7px}.modern .formbox{border-radius:7px;box-shadow:0 20px 55px #00000004}.modern input,.modern select,.modern textarea{transition:border-color .2s,box-shadow .2s,background .2s}.modern input:hover,.modern select:hover,.modern textarea:hover{border-color:#888}.modern input:focus,.modern select:focus,.modern textarea:focus{box-shadow:0 0 0 4px #00000006;outline-offset:2px;border-color:#555}.modern .formbox .btn{position:relative;overflow:hidden}.modern .formbox .btn:after,.modern .hero-actions .btn:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#ffffff26 45%,transparent 65%);transform:translateX(-130%);transition:transform .8s;pointer-events:none}.modern .formbox .btn:hover:after,.modern .hero-actions .btn:hover:after{transform:translateX(130%)}
.modern .subhero{background:linear-gradient(110deg,#f6f6f6,#ededed);border-bottom:1px solid #dedede}.modern .subhero h1{font-size:clamp(43px,5vw,70px);max-width:1000px;letter-spacing:-2px;line-height:1.12}.modern .subhero p{font-size:17px;line-height:1.8}.modern .subhero .crumb{font-size:10px;color:#888}.modern .unit-overview h2{font-size:39px}.modern .offering{background:#fff;border:1px solid #d6d6d6;border-radius:5px;padding:28px;transition:transform .3s,box-shadow .3s}.modern .offering:hover{transform:translateY(-4px);box-shadow:0 12px 25px #00000006}.modern .offerings{gap:16px}.modern .offering h3{font-size:25px;letter-spacing:-.6px}.modern .unit-detail-list{font-size:14px}.modern .unit-overview .lead{font-size:19px;line-height:1.8}.modern .unit-preparation h2{font-size:40px}.modern .catalog .unit-directory{margin-top:32px}.modern .catalog #unit-search{background:#fff;border-radius:5px}.modern .imhero h1,.modern .imguide h2{font-family:'Roar Serif',Georgia,serif}.modern .imhero{padding-top:45px;padding-bottom:45px}.modern .imhero img{border-radius:6px}.modern .imdivision{border-top:1px solid #ddd}.modern .imcategory{transition:transform .35s,box-shadow .35s}.modern .imcategory:hover{transform:translateY(-6px);box-shadow:0 16px 40px #00000009}.modern .imsearch{box-shadow:0 20px 60px #00000004}.modern .corporate-footer{background:#191919}.modern .corporate-footer .footer-main{gap:65px}.modern .footer-legal a,.modern .corporate-footer a{transition:color .2s,transform .2s}.modern .corporate-footer a:hover{color:#fff;transform:translateX(3px)}
.modern .reveal{transition:opacity .7s,transform .7s}.modern .reveal.waiting{opacity:0;transform:translateY(25px)}.modern .reveal.visible{opacity:1;transform:none}.modern .unit-card.reveal{transition:opacity .65s,transform .35s,box-shadow .35s,background .35s,border .35s}.modern .unit-card.reveal.visible:hover{transform:translateY(-7px)}
.modern.motion-paused *,.modern.motion-paused *:before,.modern.motion-paused *:after{animation-play-state:paused!important}.modern.motion-paused .reveal.waiting{opacity:1;transform:none}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@keyframes scene-drift{from{transform:scale(1.02) translateY(0)}to{transform:scale(1.1) translateY(-1%)}}
@keyframes grid-shift{to{background-position:75px 75px}}
@keyframes status-light{0%,100%{opacity:.4}50%{opacity:1}}
@keyframes band-breathe{from{opacity:.65;transform:translateX(-8px)}to{opacity:1;transform:translateX(8px)}}
@keyframes hero-arrive{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes scene-arrive{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0 0 0 0)}}
@media(prefers-reduced-motion:no-preference){.hero-content>.eyebrow{animation:hero-arrive .7s .05s both}.hero-content h1>span:nth-child(1){animation:hero-arrive .8s .12s both}.hero-content h1>span:nth-child(2){animation:hero-arrive .8s .22s both}.hero-content h1>em{animation:hero-arrive .9s .34s both}.hero-content>p{animation:hero-arrive .8s .42s both}.hero-content .hero-actions{animation:hero-arrive .8s .5s both}.hero-scene{animation:scene-arrive 1.1s .1s both}}
@media(min-width:1600px){.modern .modern-hero{max-width:1360px}.hero-content{padding-top:48px}.modern .hero-content h1{font-size:79px}}
@media(max-width:1100px){.division-navigation{padding-left:6%;padding-right:6%}.division-links>a{font-size:11px;padding:10px;gap:7px}.division-arrow{display:none}.modern .modern-hero{width:calc(100% - 40px);min-height:490px}.hero-content{padding:38px 8% 25px}.modern .hero-content h1{font-size:58px;letter-spacing:-2.7px}.modern .hero-actions{gap:13px}.modern .hero-actions .textlink{font-size:10px}.hero-bottom{margin-top:25px}.hero-scene figcaption{left:26px;bottom:30px}.hero-scene figcaption strong{font-size:30px}.modern .unit-directory{gap:10px}.modern .unit-row.unit-card{padding:16px;min-height:276px}.modern .unit-card h3{font-size:17px;min-height:43px}.modern .unit-card p{font-size:11px}.card-icon{margin-top:24px;margin-bottom:20px;width:36px;height:36px}.units-intro{gap:18px}.directory-number{font-size:65px}.units-intro p{font-size:11px}}
@media(max-width:850px){.division-links{grid-template-columns:repeat(3,minmax(0,1fr))}.division-links>a:last-child{grid-column:2/4}.division-navigation{padding:14px 6% 19px}.division-links>a{font-size:12px;min-height:40px}.division-caption{font-size:8px}.modern .modern-hero{grid-template-columns:1.1fr 1fr;min-height:500px}.hero-content{padding:34px 8% 24px}.modern .hero-content h1{font-size:49px;letter-spacing:-2.1px}.hero-content>p{font-size:13px}.modern .hero-actions{gap:14px}.modern .hero-actions .btn{width:100%;justify-content:space-between}.hero-bottom{gap:10px}.hero-live small{font-size:6px;letter-spacing:.5px}.changing-line{font-size:10px}.hero-live{gap:8px}.motion-toggle{padding:6px;font-size:8px}.hero-scene figcaption strong{font-size:26px}.hero-scene figcaption{left:23px;right:20px}.hero-scene figcaption>span{font-size:7px}.hero-scene figcaption small{font-size:7px}.modern .unit-directory{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.modern .unit-row.unit-card{padding:21px;min-height:280px}.modern .unit-card h3{font-size:20px;min-height:48px}.modern .unit-card p{font-size:12px}.modern .unit-card:last-child{grid-column:auto}.modern .units-section .section-head{display:flex;align-items:start}.units-intro{display:block}.directory-number{display:none}.units-intro p{font-size:12px;margin-top:27px}.modern .featured-real-estate h2{font-size:38px}.modern .featured-real-estate .wrap{padding-top:55px;padding-bottom:55px}.vision-band>div{gap:18px}.vision-band span{font-size:21px}.vision-band i{font-size:24px}.modern .consultation h2{font-size:43px}.modern .subhero h1{font-size:54px}.modern .catalog .unit-directory{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.division-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.division-links>a:last-child{grid-column:auto}.division-links>a{font-size:11px;padding:9px;min-height:39px;gap:8px}.division-icon{flex-basis:18px;width:18px;height:18px}.division-navigation{padding:12px 6% 17px}.division-caption{font-size:7px;margin-bottom:9px}.division-caption a{font-size:9px}.modern .site-header{padding-top:16px;padding-bottom:16px}.modern .site-header .logo{font-size:36px}.modern .modern-hero{width:calc(100% - 24px);grid-template-columns:1fr;min-height:0;border-radius:5px}.hero-content{padding:33px 7% 24px}.modern .hero-content .eyebrow{font-size:8px;letter-spacing:1px}.modern .hero-content h1{font-size:clamp(44px,11vw,67px);letter-spacing:-2px;line-height:1.04;margin-top:24px;margin-bottom:20px}.hero-content>p{font-size:14px;max-width:460px;margin-top:20px}.modern .hero-actions{gap:19px;margin-top:25px;flex-direction:row}.modern .hero-actions .btn{width:auto;gap:27px;font-size:11px;min-height:45px;padding:12px 16px}.modern .hero-actions .textlink{font-size:10px}.hero-bottom{margin-top:27px;padding-top:17px}.hero-live small{font-size:6px;letter-spacing:.8px}.changing-line{font-size:11px}.motion-toggle{font-size:9px;padding:7px 9px}.hero-scene{height:255px}.hero-scene figcaption{bottom:24px;left:25px;max-width:320px}.hero-scene figcaption strong{font-size:30px}.hero-scene figcaption>span{margin-bottom:11px;font-size:7px}.hero-scene figcaption small{font-size:7px;margin-top:12px}.scene-label{font-size:7px;top:21px;right:20px}.scene-lines{inset:16px}.modern .units-section{padding-top:43px;padding-bottom:40px}.modern .units-section .section-head{display:block;margin-bottom:25px}.modern .units-section h2{font-size:38px;letter-spacing:-1.2px;margin-top:13px}.units-intro p{margin-top:19px;font-size:13px;line-height:1.7}.units-intro p br{display:none}.modern .unit-directory,.modern .catalog .unit-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.modern .unit-row.unit-card{padding:17px 15px 14px;min-height:262px;border-radius:5px}.modern .unit-card h3{font-size:18px;letter-spacing:-.5px;min-height:44px;margin-bottom:9px}.modern .unit-card p{font-size:11.5px;line-height:1.65;min-height:61px}.modern .unit-card .unit-index{font-size:7px}.modern .unit-card .row-arrow{font-size:17px}.card-icon{width:34px;height:34px;margin:21px 0 19px}.card-explore{margin-top:16px;padding-top:12px;font-size:8px}.directory-footer{flex-direction:column;gap:16px;font-size:10px;line-height:1.6;margin-top:22px}.directory-footer a{font-size:11px}.vision-band>div{gap:13px;padding:20px 6%;flex-wrap:wrap}.vision-band span{font-size:16px;letter-spacing:-.5px}.vision-band i{font-size:18px}.vision-band i:last-of-type,.vision-band span:last-child{display:none}.modern .featured-real-estate h2{font-size:35px}.modern .featured-real-estate img{height:275px}.modern .approach-section .step h3{font-size:25px}.modern .consultation h2{font-size:38px}.modern .subhero h1{font-size:clamp(40px,10.8vw,55px);letter-spacing:-1.6px}.modern .subhero p{font-size:15px}.modern .unit-overview h2{font-size:34px}.modern .unit-overview .lead{font-size:17px}.modern .unit-preparation h2{font-size:35px}.modern .offering h3{font-size:23px}.modern .offering{padding:24px}.modern .imhero{padding-top:35px;padding-bottom:35px}}
@media(max-width:350px){.modern .unit-row.unit-card{padding:15px 12px}.modern .unit-card h3{font-size:16px}.modern .unit-card p{font-size:11px}.division-links>a{font-size:10px;gap:6px}.hero-live small{letter-spacing:0}.modern .hero-actions{align-items:start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.modern *, .modern *:before,.modern *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.modern .reveal.waiting{opacity:1;transform:none}.hero-scene{clip-path:none}.modern .unit-card:hover,.modern .unit-card.reveal.visible:hover{transform:none}}
/* Keep the active card legible throughout pointer and keyboard interactions. */
.modern .unit-row.unit-card:is(:hover,:focus-visible){background-image:none;background-color:#222;color:#fff;border-color:#222}
.modern .unit-row.unit-card:is(:hover,:focus-visible) .card-icon,.modern .unit-row.unit-card:is(:hover,:focus-visible) h3,.modern .unit-row.unit-card:is(:hover,:focus-visible) .row-arrow{color:#fff}
.modern .unit-row.unit-card:is(:hover,:focus-visible) p{color:#ccc}
.modern .unit-row.unit-card:is(:hover,:focus-visible) .card-explore{color:#eee;border-color:#ffffff30}
.modern .unit-card p{font-size:12.5px}
@media(max-width:1100px){.modern .unit-card p{font-size:12px}}
/* Anchor motion is controlled explicitly so focus changes and form fields scroll immediately. */
html{scroll-behavior:auto}
