/* Readable typography across the reference layout, including narrow screens. */
body{font-size:16px;line-height:1.75}
.eyebrow,.hero .eyebrow{font-size:12px;line-height:1.6;letter-spacing:1.3px}
.nav-shell nav a{font-size:12px;letter-spacing:.7px}.nav-shell nav{gap:23px}
.logo small{font-size:9px;letter-spacing:1px}.logo{gap:14px}
.button{font-size:13px;min-height:52px;line-height:1.45;letter-spacing:.65px;padding:14px 22px}
.nav-cta{font-size:11px;min-height:44px;padding:10px 17px;gap:18px}
.text-link,.solutions .heading-aside .text-link{font-size:12px;line-height:1.6;letter-spacing:.7px}
.hero{height:600px;min-height:600px}.hero .eyebrow{max-width:370px;margin-bottom:32px}
.hero .hero-content>p{font-size:17px!important;line-height:1.75;max-width:650px!important;margin:20px 0 28px}
.hero-sectors{font-size:13px;line-height:1.7;right:5%;padding-left:16px}
.about-visual{min-height:580px}.about-copy{padding-top:42px;padding-bottom:38px}
.about-copy>p{font-size:16px;line-height:1.75}.about-copy p+p{margin-top:17px}
.about-copy .text-link{margin-top:18px}
.heading-aside,.spaces .heading-aside,.projects .heading-aside{font-size:16px;line-height:1.75}
.solutions .heading-aside{font-size:16px;max-width:none}
.solutions .heading-aside>p:not(.lead){font-size:16px;line-height:1.75}
.solutions .heading-aside .lead{font-size:14px;line-height:1.65;letter-spacing:.65px}
.solutions .heading-aside .text-link{padding:13px 15px;gap:15px}
.service{display:flex;flex-direction:column}.service-image{height:130px;flex-shrink:0}
.service h3{font-size:21px;line-height:1.2;min-height:52px}
.service>p{font-size:16px;line-height:1.7;min-height:0;margin:16px 0 20px;flex:1}
.service button{font-size:12px;min-height:48px;margin-top:auto;padding:12px 0;letter-spacing:.7px}
.space-card{height:345px}.space-card p{font-size:16px;line-height:1.5;min-height:0;max-width:290px}
.space-card h3{font-size:29px;margin-bottom:10px}.space-card>div{padding-right:40px}
.image-note{font-size:12px;line-height:1.7;margin-top:13px}
.projects .heading-aside .muted,.muted{font-size:14px;line-height:1.7}
.filter-tabs button{font-size:14px;min-height:48px;padding:10px 0}.filter-tabs sup{font-size:10px}
.project-info h3{font-size:20px;line-height:1.35}.project-info small{font-size:14px;line-height:1.6;margin-top:8px}
.project-image>span{font-size:10px;letter-spacing:.25px;padding:5px 7px}
.shopping-banner p{font-size:16px;line-height:1.75}.search-form label{font-size:13px;letter-spacing:.5px}
.search-form select{font-size:15px;min-height:52px}.search-form .button{height:52px;min-width:145px}
.shopping-directory>summary{font-size:13px;min-height:44px;line-height:1.6}
.results-meta,.results-meta .plain-button,.demo-note{font-size:13px;line-height:1.7}
.shopping-card h3{font-size:23px}.shopping-card p{font-size:14px;line-height:1.7}
.shopping-card .text-link{font-size:12px;line-height:1.5;align-items:center;gap:10px}
.founder-details>summary{font-size:15px;line-height:1.65;padding-block:20px}
.founder-details>summary>span:first-child{font-size:11px;line-height:1.6;letter-spacing:1px}
.founder-copy{font-size:16px;line-height:1.8}.founder-copy .lead{font-size:18px;line-height:1.75}
.founder-name small{font-size:13px;line-height:1.75}.story-more summary{font-size:14px;padding-block:20px}
.cinematic p{font-size:17px;line-height:1.75;max-width:720px}.cinematic .eyebrow{font-size:12px}
.contact h2+p{font-size:16px;line-height:1.75}.form-notice{font-size:14px;line-height:1.7;padding:17px 20px}
.field label{font-size:14px;line-height:1.6}.field input,.field select,.field textarea{font-size:16px;line-height:1.6;min-height:48px}
.privacy-note{font-size:13px;line-height:1.7}.error{font-size:13px;line-height:1.6}#form-status{font-size:15px;line-height:1.7}
.faq summary{font-size:16px;line-height:1.65;padding:20px 0}.faq details p{font-size:16px;line-height:1.8}
.footer-column h3{font-size:12px;line-height:1.6}.footer-column p,.footer-column>a:not(.text-link){font-size:14px;line-height:1.9}
.footer-column .text-link{font-size:12px}.footer-bottom,.footer-bottom .plain-button{font-size:12px;line-height:1.7}
dialog p,dialog li{font-size:16px;line-height:1.8}.dialog-meta small{font-size:12px;line-height:1.6}.dialog-meta p{font-size:14px;line-height:1.7}
.market-logos h2{font-size:12px;line-height:1.7;letter-spacing:1.2px}.market-logos>.container>p{font-size:13px;line-height:1.7}.market-logo small{font-size:8px;letter-spacing:.5px}
@media(max-width:1200px){
 .nav-shell nav{position:absolute;top:78px;left:0;width:100%;background:#151515;display:none;padding:20px 6% 30px;flex-direction:column;gap:5px;border-top:1px solid #ffffff20}
 .scrolled .nav-shell nav{top:68px}.nav-shell nav.open{display:flex}.nav-shell nav a{font-size:15px;padding:12px}.nav-shell nav a::after{display:none}
 .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;border:1px solid #615646;background:none;padding:11px;flex-shrink:0}
 .menu-toggle span{height:1px;background:var(--gold);width:20px;transition:transform .2s}
 .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 .nav-cta{margin-left:auto}.hero-sectors{display:none}.about-copy h2{font-size:31px}.about-copy{padding-left:7%;padding-right:7%}
 .solutions>.container{display:block}.solutions .section-heading{display:grid;grid-template-columns:1fr 1.5fr;gap:35px;margin-bottom:35px}.solutions .heading-aside{margin-top:0}
 .service-grid{gap:28px}.service h3{font-size:23px}.space-card{height:365px}.space-card p{font-size:15px}
 .footer-columns{gap:30px;grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
 .hero h1{font-size:6vw}.hero{height:650px;min-height:650px}.hero .hero-content>p{max-width:620px!important}
 .about-grid{grid-template-columns:1fr}.about-visual{min-height:380px}.about-copy{padding:38px 6%}.about-copy>p{max-width:none}
 .experience{left:6%;bottom:32px}.about-copy h2{font-size:34px}.service h3{font-size:21px}.service-image{height:155px}
 .space-grid{grid-template-columns:1fr}.space-card{height:330px}.space-card>div{padding-right:45px;left:25px;right:25px}.space-card p{max-width:470px;font-size:16px}
 .space-card .circle-arrow{position:absolute;right:0;bottom:0;margin:0}.space-card h3{font-size:30px}
 .contact-grid{grid-template-columns:1fr;gap:35px}.contact h2+p{max-width:550px}.contact-sign{margin-top:25px}
}
@media(max-width:640px){
 .nav-shell nav{top:72px}.scrolled .nav-shell nav{top:68px}.logo small{font-size:8px}.logo{gap:11px}
 .eyebrow,.hero .eyebrow{font-size:12px}.hero .eyebrow{max-width:290px;letter-spacing:1px;margin-bottom:30px}
 .hero{height:auto;min-height:680px;padding:55px 0}.hero .hero-content>p{font-size:16px!important;line-height:1.8;margin:22px 0 26px}
 .hero .actions .button{font-size:12px;min-height:50px;min-width:255px;padding:13px 18px}
 .button{font-size:13px}.text-link,.solutions .heading-aside .text-link{font-size:12px}
 .about-copy>p{font-size:16px;line-height:1.8}.about-copy h2{font-size:31px}
 .solutions .section-heading{display:block}.solutions .heading-aside{margin-top:22px}.solutions .heading-aside>p:not(.lead){font-size:16px}
 .solutions .heading-aside .lead{font-size:14px}.service-grid{gap:35px}.service-image{height:200px}
 .service h3{font-size:24px;min-height:0}.service>p{font-size:16px;line-height:1.75;margin:16px 0 10px}.service button{font-size:12px}
 .spaces .heading-aside,.projects .heading-aside{font-size:16px;line-height:1.75}.space-card{height:350px}.space-card p{font-size:16px;line-height:1.6}
 .image-note{font-size:12px}.project-info h3{font-size:22px}.project-info small{font-size:14px}.project-image>span{font-size:10px}
 .shopping-banner p{font-size:16px;max-width:none}.search-form label{font-size:13px}.search-form select{font-size:16px;min-height:52px}
 .shopping-directory>summary{font-size:13px}.shopping-card .text-link{font-size:12px}.demo-note{font-size:13px}
 .founder-details>summary{font-size:14px;padding-block:18px}.founder-details>summary>span:first-child{font-size:11px}
 .founder-copy{font-size:16px}.founder-copy .lead{font-size:18px}.founder-name small{font-size:13px}
 .cinematic p{font-size:16px;max-width:none}.form-notice{font-size:14px}.field label{font-size:14px}
 .field input,.field select,.field textarea{font-size:16px}.privacy-note{font-size:13px}.faq summary,.faq details p{font-size:16px}
 .footer-column h3{font-size:12px}.footer-column p,.footer-column>a:not(.text-link){font-size:14px}.footer-column .text-link{font-size:12px}
 .footer-bottom,.footer-bottom .plain-button{font-size:12px}.footer-columns{gap:30px 20px}.footer-columns>.footer-column:nth-child(3){grid-column:1/-1}
 .market-logos h2{font-size:12px}.market-logos>.container>p{font-size:13px}.market-logo small{font-size:8px}
}
