/* Source: style.css */
@font-face{font-family:Inter;src:url('assets/Inter-Regular.ttf')}@font-face{font-family:Inter;src:url('assets/Inter-Bold.ttf');font-weight:700}@font-face{font-family:'Noto Serif Display';src:url('assets/NotoSerifDisplay-Regular.ttf')}
:root{--blue:#0b1b2e;--gold:#c8a66a;--ivory:#f5f2eb;--line:#e1dbd0;--text:#2b2b2b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:#fff;color:var(--blue);font:16px/1.6 Inter,sans-serif}a{color:inherit}button{font:inherit}img{max-width:100%;display:block}.wrap{width:min(1280px,88%);margin:auto}.header{display:flex;justify-content:space-between;align-items:center;min-height:120px}.brand{width:235px;flex-shrink:0}.header nav{display:flex;align-items:center;gap:30px}.header nav a{text-decoration:none;font-size:14px}.nav-contact{border-bottom:1px solid var(--gold);padding-bottom:5px}.menu-button{display:none}.skip{position:absolute;top:-80px;background:white;padding:12px;z-index:20}.skip:focus{top:0}h1,h2,h3,p,figure{margin:0}h1,h2,.email{font-family:'Noto Serif Display',serif;font-weight:400}h1{font-size:clamp(48px,5.2vw,76px);line-height:1.05;letter-spacing:-.03em;margin:24px 0 28px}h2{font-size:clamp(36px,3.5vw,52px);line-height:1.15;letter-spacing:-.02em}h3{font-weight:400;font-size:24px;line-height:1.3}.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:720px;padding-top:36px;padding-bottom:70px;gap:60px}.hero-copy{padding:18px 0}.lead{font-size:18px;line-height:1.65;color:var(--text)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:46px;padding:17px 24px;background:var(--blue);color:white;text-decoration:none;margin-top:30px;font-size:14px;border:1px solid var(--blue);transition:.2s}.button:hover{background:#17324f}.button span{color:var(--gold);font-size:20px}.segment{font-size:12px;letter-spacing:.1em;margin-top:22px}.hero-image{position:relative;margin-top:20px;overflow:hidden;background:var(--ivory);align-self:stretch}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:45% center}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:26px 30px;background:linear-gradient(transparent,rgba(11,27,46,.85));color:white;font-size:14px;padding-top:80px}.intro{border-top:1px solid var(--line);padding:70px 0 95px;display:grid;grid-template-columns:1fr 1fr;gap:24px 60px}.intro>.eyebrow{grid-column:1/-1}.intro-text{max-width:510px}.intro-text p+p{margin-top:18px}.services{padding:30px 0 70px;display:grid;grid-template-columns: .85fr 1.15fr;gap:60px}.section-head h2{margin-top:22px}.service-list article{display:flex;gap:30px;border-top:1px solid var(--line);padding:27px 0}.service-list h3{margin-bottom:12px}.service-list p{color:var(--text);max-width:560px}.index{font-size:13px;padding-top:4px;min-width:22px}.service-tags{font-size:12px;margin-top:15px}.services>.note{grid-column:2}.note{font-size:12px;line-height:1.6;color:#657181}.image-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-bottom:85px}.image-pair img{width:100%;aspect-ratio:1.5;object-fit:cover}.image-pair figcaption{font-size:13px;margin-top:13px}.portfolio{background:var(--blue);color:white;padding:80px 0}.portfolio .eyebrow{color:var(--gold)}.portfolio-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin:25px 0 48px}.portfolio-heading>p{font-size:16px;color:#d7dce2}.metrics{display:grid;grid-template-columns:1fr;gap:60px;margin-bottom:45px}.metrics strong{font-family:'Noto Serif Display';font-size:clamp(38px,4.8vw,65px);font-weight:400;white-space:nowrap;line-height:1.25;display:block}.metrics small{font-family:Inter;font-size:22px}.metrics span{font-size:14px;display:block;margin-top:8px;color:#d7dce2}.portfolio-rows>div{display:grid;grid-template-columns:.65fr 2.25fr;gap:20px;padding:18px 0;border-top:1px solid #415063;font-size:14px}.portfolio .note{color:#b3c0cc;margin-top:28px}.principles{padding:95px 0}.principles h2{margin:22px 0 40px}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.principle-grid article{border-top:1px solid var(--gold);padding-top:20px}.principle-grid p{margin-top:18px;color:var(--text)}.team{padding:15px 0 85px}.team h2{margin-top:22px;margin-bottom:45px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.team-grid article{border-top:1px solid var(--line);padding-top:20px}.team-number{font-size:12px;color:#657181}.team-grid h3{font-family:'Noto Serif Display';font-size:36px;margin-top:20px}.team-grid .role{font-size:14px;min-height:60px;margin:20px 0}.team-grid p:last-child{max-width:290px;color:var(--text);font-size:14px}.audience{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:55px 0 75px;border-top:1px solid var(--line)}.audience h3{margin:20px 0 15px}.audience p:last-child{max-width:490px}.contact{background:var(--ivory);padding:70px 0 80px}.contact h2{margin:22px 0}.contact .email{display:inline-block;font-size:clamp(28px,3vw,44px);text-decoration:none;border-bottom:1px solid var(--gold);margin:30px 0 10px}.email span{font-family:Inter;font-size:24px;padding-left:20px}footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;padding:45px 0;align-items:start}footer img{width:220px}footer p{font-size:12px;line-height:1.7}footer p+p{margin-top:12px}.footer-note{color:#657181}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
@media(max-width:1000px){.header nav{gap:18px}.brand{width:210px}.hero{gap:30px;min-height:650px}.hero h1{font-size:56px}.services{grid-template-columns:.75fr 1.25fr;gap:35px}.team-grid h3{font-size:30px}.metrics{gap:25px}.metrics strong{font-size:46px}.portfolio-rows>div{grid-template-columns:.55fr 2.5fr}}
@media(max-width:740px){.wrap{width:88%}.header{min-height:98px;position:relative;flex-wrap:wrap}.brand{width:195px}.menu-button{display:block;background:none;border:0;padding:10px 0;font-size:14px}.menu-button span{margin-left:8px}.header nav{display:none;width:100%;flex-direction:column;align-items:flex-start;padding:20px 0 25px}.header nav.open{display:flex}.hero{display:flex;flex-direction:column;padding-top:20px;gap:30px;min-height:0;padding-bottom:45px}.hero h1{font-size:54px;line-height:1.08}.hero-copy{padding-top:0}.lead{font-size:17px}.hero-image{height:380px;margin:0}.hero-image img{object-position:center}.hero .eyebrow{font-size:11px}.intro{padding:45px 0 60px;display:block}.intro h2{margin:20px 0 25px}.intro-text{margin-top:25px}.services{display:block;padding:10px 0 45px}.section-head{margin-bottom:30px}.service-list article{gap:18px;padding:24px 0}.service-list h3{font-size:22px}.service-list p{font-size:15px}.image-pair{gap:20px;padding-bottom:45px;grid-template-columns:1fr}.image-pair figure:last-child{margin-top:15px}.portfolio{padding:50px 0}.portfolio-heading{display:block;margin:20px 0 35px}.portfolio-heading>p{margin-top:25px}.metrics{display:block}.metrics>div+div{margin-top:28px}.metrics strong{font-size:44px}.metrics small{font-size:18px}.portfolio-rows>div{grid-template-columns:1fr;gap:5px;padding:18px 0}.portfolio-rows>div span:first-child{color:var(--gold)}.principles{padding:55px 0}.principle-grid{grid-template-columns:1fr;gap:30px}.principle-grid p{margin-top:10px}.team{padding:15px 0 50px}.team-grid{grid-template-columns:1fr;gap:30px}.team h2{margin-bottom:30px}.team-grid h3{margin-top:12px;font-size:32px}.team-grid .role{min-height:0;margin:15px 0}.team-grid p:last-child{max-width:100%}.audience{grid-template-columns:1fr;gap:35px;padding:35px 0 50px}.contact{padding:50px 0}.contact .email{font-size:29px}.email span{font-size:20px;padding-left:4px}footer{display:flex;flex-direction:column;gap:25px;padding:30px 0}h2{font-size:37px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Respect House — contact, portfolio and leadership additions */
@font-face{font-family:Inter;src:url('assets/Inter-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('assets/Inter-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:'Noto Serif Display';src:url('assets/NotoSerifDisplay-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
.brand-domain{font-family:'Noto Serif Display',serif;font-size:22px;margin-top:16px;letter-spacing:.025em;color:#706043}
.eyebrow{font-size:14px}.segment,.service-tags{font-size:14px}.service-tags{line-height:1.7}
.ever-gallery{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;margin:40px 0 0}
.ever-gallery figure{overflow:hidden;background:#263546;aspect-ratio:1.45}
.ever-gallery img{height:100%;width:100%;object-fit:cover}
.image-credit{font-size:12px;color:#c9d1da;margin:12px 0 45px}.image-credit a{text-underline-offset:4px}
.ever-contact{display:flex;align-items:end;justify-content:space-between;gap:30px;border-top:1px solid #415063;padding:30px 0;margin-top:15px}
.ever-contact>div>a{display:inline-block;font-family:'Noto Serif Display',serif;font-size:clamp(25px,3vw,36px);margin-top:10px;text-decoration-thickness:1px;text-underline-offset:7px}
.text-link{font-size:14px;max-width:320px;text-underline-offset:5px}
.legal-details{border-top:1px solid var(--line);padding:16px 0;font-size:14px}
.portfolio .legal-details{border-color:#415063}.legal-details summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:32px}
.legal-details summary::-webkit-details-marker{display:none}.legal-details summary:after{content:'+';font-size:22px;color:var(--gold)}.legal-details[open] summary:after{content:'−'}
.legal-details summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.legal-details dl{margin:18px 0 0}.legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 60px}.legal-details dt{font-size:12px;opacity:.75;margin-top:14px}.legal-details dd{margin:4px 0 0;overflow-wrap:anywhere}
.team-grid article{padding-top:0;border:0;min-width:0}
.portrait-placeholder{width:100%;aspect-ratio:4/5;background:var(--ivory);border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;position:relative}
.portrait-initials{font-family:'Noto Serif Display',serif;font-size:clamp(50px,6vw,80px);color:#a29a8e;line-height:1.2;font-weight:400}
.portrait-label{position:absolute;bottom:24px;font-size:12px;color:#657181;letter-spacing:.025em}
.team-grid .team-description{font-size:16px;color:var(--text);max-width:320px;min-height:80px}
.team-email{display:inline-block;font-size:16px;margin-top:24px;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:5px}
.team-grid .role{font-size:16px;min-height:58px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:40px}.contact-grid h3{font-size:20px}.contact-grid p{margin-top:15px}
.contact .email{font-size:clamp(24px,2.6vw,38px);margin-top:25px;white-space:nowrap}.email span{font-size:20px;padding-left:6px}
footer{grid-template-columns:.8fr 1.4fr .9fr;gap:42px;padding:50px 0}footer p{font-size:14px}footer h3{font-size:18px;margin-bottom:15px}
.footer-domain{font-family:'Noto Serif Display',serif;font-size:22px;margin:12px 0 16px}.footer-links{display:flex;flex-direction:column;gap:18px}.footer-links>a{font-size:14px;text-underline-offset:5px}.footer-note{font-size:12px}
footer .legal-details{margin-top:20px;padding-bottom:0}.company-details{min-width:0}footer .legal-details dt:first-child{margin-top:0}
@media(max-width:1000px){.contact-grid{gap:25px}.contact .email{font-size:28px}.team-grid .team-description{min-height:104px}footer{grid-template-columns:1fr 1.5fr}.footer-links{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.5fr}.footer-note{grid-column:1/-1;max-width:600px}.ever-contact{align-items:start}}
@media(max-width:740px){.hero .eyebrow{font-size:13px;letter-spacing:.07em}.hero h1{font-size:clamp(43px,12vw,54px)}.hero-image{height:450px}.hero-image img{object-position:50% 55%}.service-list p{font-size:16px}.ever-gallery{grid-template-columns:1fr;margin-top:28px}.ever-gallery figure{aspect-ratio:1.4}.ever-contact{display:block}.ever-contact .text-link{display:inline-block;margin-top:24px}.legal-grid{grid-template-columns:1fr;gap:12px}.team-grid{gap:45px}.portrait-placeholder{aspect-ratio:4/4.5;max-width:440px}.portrait-initials{font-size:76px}.team-grid .team-description{min-height:0;max-width:none}.team-grid .role{min-height:0}.team-email{margin-top:18px}.contact-grid{grid-template-columns:1fr;gap:40px;margin-top:30px}.contact-grid>div+div{border-top:1px solid var(--line);padding-top:30px}.contact .email{font-size:clamp(24px,6.9vw,34px)}.contact-grid p br{display:none}.footer-links{display:flex}.metrics strong{font-size:clamp(34px,10vw,44px)}.team h2 br{display:none}.portfolio-heading p br{display:none}footer{gap:30px}.company-details p br{display:none}}
@media(min-width:741px){.hero-image{max-height:780px}.portrait-placeholder{max-height:440px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.team-grid .portrait-photo,.team-grid .portrait-placeholder{width:100%;max-width:440px;aspect-ratio:4/5;max-height:none}
.portrait-photo{overflow:hidden;background:#fff}
.portrait-photo img{width:100%;height:100%;object-fit:contain;object-position:center bottom}

/* Team experience: historical C&U projects, separate from current operations. */
.experience{padding:90px 0 70px;border-bottom:1px solid var(--line)}
.experience-heading{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:65px;margin-bottom:48px}.experience-heading h2{margin-top:22px}.experience-intro{max-width:440px;color:var(--text)}
.experience-subtitle{font-size:20px;margin-bottom:24px}
.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 36px}
.experience-card{border-top:1px solid var(--gold);padding:24px 0 28px;min-width:0}.experience-index{display:block;font-size:13px;letter-spacing:.06em;color:#657181}.experience-card h3{font-family:'Noto Serif Display',serif;font-size:28px;line-height:1.25;margin-top:18px}.experience-card p{font-size:14px;color:#657181;margin-top:8px}
.experience-more,.experience-preops{border-top:1px solid var(--line);margin-top:45px;padding-top:28px}.experience-more h3,.experience-preops h3{font-size:22px}.experience-context{margin-top:12px;color:var(--text);max-width:650px}
.project-names{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:30px}.project-names li{font-size:16px;padding:12px 0;border-bottom:1px solid #eee9e1;line-height:1.5;overflow-wrap:break-word}
.experience-preops .note{margin-top:18px}.experience-source{font-size:13px;color:#657181;max-width:820px;line-height:1.7;margin-top:36px}.experience-source a{text-underline-offset:4px}
@media(max-width:1100px){.experience-heading{gap:35px;grid-template-columns:1.2fr 1fr}.experience-card h3{font-size:25px}.header nav{gap:20px}.header nav a{font-size:14px}}
@media(max-width:980px){.header{position:relative;flex-wrap:wrap}.menu-button{display:block;background:none;border:0;padding:10px 0;font-size:14px}.menu-button span{margin-left:8px}.header nav{display:none;width:100%;flex-direction:column;align-items:flex-start;padding:20px 0 25px;gap:18px}.header nav.open{display:flex}.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-heading{grid-template-columns:1fr;gap:22px}.experience-intro{max-width:650px}.project-names{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.experience{padding:55px 0 45px}.experience-heading{margin-bottom:30px}.experience-heading h2 br{display:none}.experience-grid{grid-template-columns:1fr;gap:30px}.experience-card h3{font-size:28px}.project-names{grid-template-columns:1fr}.experience-more,.experience-preops{margin-top:35px;padding-top:24px}.experience-source{margin-top:28px}}

/* Larger responsive logo with a readable live-text company descriptor. */
.header{min-height:164px;gap:28px;padding-top:24px;padding-bottom:24px}
.brand-lockup{display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center;gap:24px;width:420px;max-width:100%;text-decoration:none;color:var(--blue)}
.brand-symbol{display:block;position:relative;width:100%;aspect-ratio:336/253;overflow:hidden}
.brand-symbol img,footer .brand-symbol img{position:absolute;width:152.678571%;max-width:none;height:auto;left:-19.642857%;top:-33.201581%}
.brand-wording{display:block;border-left:1px solid var(--gold);padding:7px 0 7px 24px;min-width:0}
.brand-name{display:block;font:400 24px/1.25 Inter,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.brand-service{display:block;font:400 14px/1.4 Inter,sans-serif;letter-spacing:.035em;color:#655136;margin-top:12px;white-space:nowrap}
.footer-brand{min-width:0}.footer-brand .brand-lockup{width:340px;grid-template-columns:96px minmax(0,1fr);gap:18px}.footer-brand .brand-wording{padding-left:18px}.footer-brand .brand-name{font-size:20px;letter-spacing:.06em}.footer-brand .brand-service{margin-top:10px}
@media(max-width:1100px){.header{position:relative;flex-wrap:wrap}.header .brand-lockup{width:400px}.menu-button{display:block;background:none;border:0;padding:10px 0;font-size:14px}.menu-button span{margin-left:8px}.header nav{display:none;width:100%;flex-direction:column;align-items:flex-start;padding:10px 0 15px;gap:18px}.header nav.open{display:flex}}
@media(max-width:740px){.header{min-height:140px;gap:18px;padding-top:24px;padding-bottom:18px}.header .brand-lockup{width:340px;grid-template-columns:106px minmax(0,1fr);gap:20px}.brand-wording{padding-left:20px}.brand-name{font-size:21px;letter-spacing:.065em}.brand-service{margin-top:10px}.header .menu-button{margin-left:auto}}
@media(max-width:540px){.header{display:grid;grid-template-columns:1fr;gap:12px}.header .brand-lockup{width:100%;max-width:360px;grid-template-columns:90px minmax(0,1fr);gap:16px}.header .brand-wording{padding-left:16px}.header .brand-name{font-size:20px;letter-spacing:.06em}.header .menu-button{justify-self:end;margin:0;padding:6px 0}.header nav{padding:8px 0 15px}.footer-brand .brand-lockup{grid-template-columns:88px minmax(0,1fr);gap:16px}.footer-brand .brand-wording{padding-left:16px}}
@media(min-width:1001px){footer{grid-template-columns:minmax(300px,1fr) minmax(0,1.3fr) minmax(0,1fr)}}
.footer-brand{width:100%}
@media(min-width:741px) and (max-width:1000px){footer{grid-template-columns:minmax(300px,1fr) minmax(0,1.2fr)}}

/* Service images: editorial illustrations and real shared interiors. */
.services{display:block;padding:30px 0 85px}.services .section-head{margin-bottom:44px}.services .service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 30px}
.services .service-list article{display:block;border:0;padding:0;min-width:0}.service-photo{aspect-ratio:1.5;overflow:hidden;background:var(--ivory)}.service-photo img{display:block;width:100%;height:100%;object-fit:cover}.service-card-copy{padding-top:20px}.service-card-copy .index{display:block;padding:0;margin-bottom:12px;color:#657181;font-size:13px}.services .service-list h3{font-size:24px;line-height:1.3;min-height:63px;margin-bottom:16px}.services .service-list p{font-size:16px;line-height:1.6}.services .service-list .service-tags{font-size:13px;line-height:1.65;margin-top:16px;color:#657181}.services-note{max-width:930px;margin-top:38px}
@media(max-width:1100px){.services .service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 28px}}
@media(max-width:640px){.services{padding:10px 0 50px}.services .section-head{margin-bottom:30px}.services .service-list{grid-template-columns:1fr;gap:36px}.services .service-list h3{font-size:24px;min-height:0}.service-card-copy{padding-top:18px}.service-card-copy .index{margin-bottom:8px}.services-note{margin-top:30px}}

/* Services for individual apartments and ongoing owner communication. */
.service-card-copy p+p{margin-top:14px}
.resident-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px;margin-top:60px}
.resident-services article{border-top:1px solid var(--gold);padding-top:26px;min-width:0}
.resident-services h3{font-size:24px;line-height:1.3;margin-bottom:20px;max-width:480px}
.resident-services p,.resident-services li{font-size:16px;line-height:1.6;color:var(--text)}
.resident-services p+p{margin-top:16px}
.resident-services ul{margin:20px 0 0;padding-left:20px}
.resident-services li{padding-left:5px;margin-top:8px}
.resident-services li::marker{color:#655136}
@media(max-width:740px){.resident-services{grid-template-columns:1fr;gap:32px;margin-top:40px}.resident-services article{padding-top:22px}.resident-services h3{margin-bottom:16px}}

.services .service-list .service-reference{font-size:14px;line-height:1.5;margin-top:18px;color:#657181}
.service-reference a{text-underline-offset:4px}
.experience-card .experience-concept{color:var(--blue);font-size:16px;margin-top:16px;max-width:300px}

.digital-work{display:grid;grid-template-columns:1fr 1.45fr;gap:60px;border-top:1px solid var(--line);margin-top:45px;padding-top:32px}
.digital-work h3{font-size:26px;line-height:1.3;max-width:340px}
.digital-work-copy{color:var(--text);font-size:16px;line-height:1.65;max-width:660px}
.digital-work-copy p+p{margin-top:18px}
@media(max-width:740px){.digital-work{grid-template-columns:1fr;gap:22px;margin-top:35px;padding-top:26px}.digital-work h3{font-size:24px}.digital-work h3 br{display:none}}

/* Project photography and an expanded resident service catalogue. */
.experience-grid{gap:40px 30px;margin-top:24px}
.experience-card{border-top:0;padding:0 0 12px}
.experience-photo{aspect-ratio:1.5;overflow:hidden;background:var(--ivory);margin-bottom:20px}
.experience-photo img{width:100%;height:100%;object-fit:cover}
.experience-card h3{margin-top:12px}
.experience-image-note{font-size:14px;line-height:1.6;color:#657181;margin-top:30px}
.resident-services{display:block}
.resident-catalog h3{max-width:680px;font-size:30px}
.resident-catalog>p{max-width:700px}
.resident-services .resident-service-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 36px;list-style:none;margin:32px 0 0;padding:0}
.resident-services .resident-service-menu li{margin:0;padding:18px 0 0;border-top:1px solid var(--line);min-width:0}
.resident-service-menu h4{font-size:18px;line-height:1.4;font-weight:400;color:var(--blue);margin:0 0 10px}
.resident-services .owner-dialogue{display:grid;grid-template-columns:1fr 1.45fr;gap:0 60px;margin-top:40px}
.owner-dialogue h3{grid-row:1/3}
@media(max-width:980px){.resident-services .resident-service-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px}}
@media(max-width:740px){.resident-services .owner-dialogue{display:block}.resident-catalog h3{font-size:26px}.owner-dialogue h3{margin-bottom:18px}}
@media(max-width:540px){.experience-grid{gap:34px}.experience-photo{margin-bottom:16px}.resident-services .resident-service-menu{grid-template-columns:1fr;gap:16px;margin-top:24px}}

.experience-card[data-project="preoperations-05"] .experience-photo{background:#182238}
.experience-card[data-project="preoperations-05"] .experience-photo img{object-fit:contain}

/* Downloadable client brochure: messenger and two print layouts. */
.brochure-hero-link{display:block;width:fit-content;max-width:100%;margin-top:18px;font-size:16px;text-underline-offset:5px}
.booklet{display:grid;grid-template-columns:1fr 1.35fr;gap:70px;padding:65px 0 85px;border-top:1px solid var(--line)}
.booklet-intro h2{margin:22px 0}.booklet-intro>p:last-child{max-width:400px;color:var(--text)}
.booklet-downloads article{padding:24px 0;border-top:1px solid var(--line)}
.booklet-downloads article:first-child{border-top:1px solid var(--gold)}
.booklet-downloads h3{font-size:24px;margin-bottom:12px}
.booklet-downloads p{font-size:16px;line-height:1.6;color:var(--text)}
.booklet-downloads a{display:inline-block;font-size:16px;line-height:1.6;margin-top:16px;padding:8px 0;text-underline-offset:5px}
.booklet-downloads a span{white-space:nowrap;color:#657181}
.booklet-downloads .booklet-print-note{font-size:14px;margin-top:14px;color:#657181}
@media(max-width:740px){.booklet{grid-template-columns:1fr;gap:32px;padding:45px 0 55px}.booklet-intro h2 br{display:none}.booklet-downloads h3{font-size:23px}}

/* Russian project names lead; published Latin names and source-linked addresses follow. */
.experience-card .project-name-en{display:block;font-family:Inter,sans-serif;font-size:16px;line-height:1.45;font-weight:400;letter-spacing:0;color:#657181;margin-top:5px;overflow-wrap:anywhere}
.experience-card .project-address{font-size:14px;line-height:1.65;color:var(--blue);margin-top:14px;overflow-wrap:break-word}
.project-address a{text-decoration-color:#c8a66a;text-decoration-thickness:1px;text-underline-offset:4px}
.project-address a:hover{color:#7b5d2d}
.experience-card .project-phase{margin-top:10px}
.portfolio-name-en{display:block;font-family:Inter,sans-serif;font-size:.47em;line-height:1.45;letter-spacing:0;color:#d7dce2;margin-top:5px}
.portfolio-tagline{display:block;margin-top:20px}

/* Direct contacts: keep work numbers readable at every viewport size. */
.team-phone{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-top:18px}
.team-phone>span{font-size:13px;color:#657181}
.team-phone>a{font-size:18px;white-space:nowrap;text-decoration-thickness:1px;text-underline-offset:5px}
.team-phone>a span{color:#aa8951}
.ever-contact>div>.ever-email{display:block;font-family:Inter,sans-serif;font-size:18px;margin-top:18px}
.contact-person{margin-top:20px}
.contact-person p{font-size:14px}
.contact-person>a{display:inline-block;font-size:22px;white-space:nowrap;margin-top:8px;text-decoration-thickness:1px;text-underline-offset:5px}

/* Messenger contacts follow the site's navy and gold palette. */
.messenger-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.messenger-links>a{display:inline-flex;align-items:center;justify-content:center;min-width:58px;min-height:44px;padding:9px 15px;border:1px solid #a9926c;text-decoration:none;font-size:14px;font-weight:500;line-height:1.2;border-radius:2px}
.messenger-links>a:hover{background:var(--blue);border-color:var(--blue);color:#fff}
.portfolio .messenger-links>a{color:#fff;border-color:#8b795e}
.portfolio .messenger-links>a:hover{background:#fff;color:var(--blue);border-color:#fff}
.team-phone>.contact-number{font-size:18px;color:var(--blue);white-space:nowrap}
.contact-support{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:44px;padding-top:34px;border-top:1px solid var(--line)}
.contact-support article>p{margin-top:14px;max-width:460px}
.support-phone{display:inline-block;font-size:22px;margin-top:20px;text-underline-offset:5px;white-space:nowrap}
.messenger-dialog{width:min(540px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:38px;border:1px solid var(--line);color:var(--blue);background:#fff;box-shadow:0 24px 80px #0b1b2e30}
.messenger-dialog::backdrop{background:#0b1b2ea6}
.messenger-dialog h2{font-size:36px;margin:18px 0}
.dialog-close{position:absolute;top:10px;right:14px;border:0;background:none;color:var(--blue);font-size:28px;line-height:1;width:44px;height:44px;cursor:pointer}
.messenger-recipient{font-weight:600;margin-bottom:14px}
.messenger-number-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:24px}
.messenger-number-row>span{font-size:21px;white-space:nowrap;user-select:all}
.messenger-number-row button{padding:10px 14px;min-height:44px;border:1px solid #a9926c;border-radius:2px;color:var(--blue);background:#fff;cursor:pointer;font-size:14px}
.messenger-routing{font-size:14px;margin-top:16px;color:#536071}
.messenger-copy-status{font-size:14px;margin-top:16px;color:#536071}
.messenger-dialog .button{margin-top:24px}
@media(max-width:740px){.contact-support{grid-template-columns:1fr;gap:32px}.contact-support article+article{border-top:1px solid var(--line);padding-top:28px}.messenger-dialog{padding:30px 22px}.messenger-dialog h2{font-size:31px}.messenger-links{gap:9px}}

/* Show a focused project selection; the complete portfolio opens on demand. */
.experience-disclosure{margin-top:36px}
.experience-disclosure>summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;min-height:58px;padding:16px 22px;border:1px solid var(--gold);color:var(--blue);background:#fff;cursor:pointer;list-style:none;font-size:16px;line-height:1.5}
.experience-disclosure>summary::-webkit-details-marker{display:none}
.experience-disclosure>summary::marker{content:""}
.experience-disclosure>summary::after{content:"+";margin-left:auto;color:#8c703f;font-size:24px;line-height:1}
.experience-disclosure>summary:hover{background:var(--ivory)}
.experience-disclosure>summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.experience-more-count{font-size:14px;color:#657181}
.experience-hide-label{display:none}
.experience-disclosure[open]>summary .experience-show-label,.experience-disclosure[open]>summary .experience-more-count{display:none}
.experience-disclosure[open]>summary .experience-hide-label{display:inline}
.experience-disclosure[open]>summary::after{content:"−"}
.experience-disclosure>.experience-more{margin-top:30px;padding-top:0;border-top:0}
@media(max-width:540px){.experience-disclosure{margin-top:28px}.experience-disclosure>summary{padding:14px 16px;gap:6px 12px}}

.ever-resident-link{display:flex;align-items:center;justify-content:space-between;gap:30px;border:1px solid #c8a66a;padding:30px;margin:30px 0}.ever-resident-link h3{font-size:28px;margin:0 0 12px}.ever-resident-link p{margin:0 0 12px}.ever-resident-link .button{flex-shrink:0}@media(max-width:760px){.ever-resident-link{flex-direction:column;align-items:flex-start;padding:24px}}
/* Project case pages */
.case-card-link{text-decoration:none;display:block}.case-card-link:focus-visible,.case-card-more:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.case-card-more{display:block;margin-top:20px;font-size:14px;text-underline-offset:5px}.experience-card:has(.case-card-more){display:flex;flex-direction:column}.experience-card .case-card-more{margin-top:auto;padding-top:20px}

/* Service detail navigation */
.all-services-link{display:inline-block;margin-top:28px;text-underline-offset:6px;font-size:15px}.service-card h3 a{text-decoration:none}.service-card h3 a:hover{text-decoration:underline;text-underline-offset:5px}.service-detail-link{display:inline-block;margin-top:19px;font-size:15px;text-underline-offset:5px}.service-detail-sub{font-size:14px!important;margin-top:14px}.service-detail-sub a{text-underline-offset:4px}.resident-service-menu h4 a{text-decoration-thickness:1px;text-underline-offset:4px}.owner-dialogue h3 a,.digital-work h3 a{text-decoration-thickness:1px;text-underline-offset:6px}

.managed-object{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;border-top:1px solid rgba(255,255,255,.3);margin-top:75px;padding-top:65px;align-items:center}.managed-object figure{margin:0}.managed-object img{width:100%;height:480px;object-fit:cover}.managed-object figcaption{font-size:12px;color:#c2cbd5;margin-top:10px}.managed-object h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.18;margin-bottom:25px}.managed-object p{margin-bottom:20px}.managed-object .managed-object-address{font-size:.9rem;color:#d0d9e3}.managed-object .button{margin-top:10px}.managed-object .eyebrow{color:var(--gold)}@media(max-width:740px){.managed-object{grid-template-columns:1fr;gap:30px;margin-top:45px;padding-top:40px}.managed-object img{height:370px;object-position:center 42%}.managed-object h2{font-size:2rem}}

/* Four named leaders, with readable names and independent contact options. */
.team-grid-four{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}
.team-grid-four h3{font-size:28px;line-height:1.18;min-height:100px}
.team-grid-four .role{min-height:76px}
.team-grid-four .team-description{min-height:150px}
.team-experience{margin-top:22px;font-size:15px;line-height:1.6}
.team-experience summary{cursor:pointer;text-decoration:underline;text-underline-offset:5px}
.team-experience summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.team-experience p{margin:14px 0 0;color:var(--text)}
@media(max-width:1100px){.team-grid-four{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}.team-grid-four h3{min-height:100px}.team-grid-four .team-description{min-height:104px}}
@media(max-width:740px){.team-grid-four{grid-template-columns:1fr;gap:46px}.team-grid-four h3{font-size:30px;min-height:0}.team-grid-four .role,.team-grid-four .team-description{min-height:0}}

/* Real photograph of the operating Ever courtyard. */
.hero-image img{object-position:52% 50%}
.hero-image figcaption a{color:inherit;text-decoration:none}
.hero-image figcaption a:hover{text-decoration:underline;text-underline-offset:4px}
/* Two clear experience directions, each with an independent disclosure. */
.experience-group-nav{display:flex;flex-wrap:wrap;gap:14px 32px;margin:0 0 48px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.experience-group-nav a{font-size:16px;text-decoration:none;text-underline-offset:6px;display:inline-flex;align-items:center;gap:12px}
.experience-group-nav a:hover{text-decoration:underline}
.experience-group-nav span{color:#657181;font-size:14px}
.experience-group{scroll-margin-top:35px}
.experience-group+.experience-group{margin-top:70px;padding-top:55px;border-top:1px solid var(--line)}
.experience-group-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:28px}
.experience-group-heading h3{font-family:'Noto Serif Display',serif;font-size:clamp(30px,3vw,40px);line-height:1.2}
.experience-group-heading>p{max-width:410px;font-size:16px;color:#657181}
.experience-card h4{font-family:'Noto Serif Display',serif;font-size:28px;font-weight:400;line-height:1.25;margin:12px 0 0}
.experience-phase-heading{font-size:18px;color:var(--blue);line-height:1.4;margin-bottom:22px}
.experience-phase+.experience-phase{margin-top:52px;padding-top:36px;border-top:1px solid var(--line)}
.experience-phase-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:24px 48px;margin-bottom:30px;align-items:start}
.experience-phase-intro .experience-phase-heading{font-family:Inter,sans-serif;font-size:clamp(21px,2.1vw,27px);font-weight:400;line-height:1.35;margin:0;text-wrap:balance}
.experience-phase-description{max-width:740px;min-width:0}
.experience-phase-description p{font-size:16px;line-height:1.65;margin:0}
.experience-phase-description p+p{margin-top:12px}
.experience-phase>.experience-grid{margin-top:0}
@media(max-width:740px){.experience-phase-intro{grid-template-columns:minmax(0,1fr);gap:16px;margin-bottom:24px}.experience-phase+.experience-phase{margin-top:38px;padding-top:28px}}
.experience-disclosure-content{padding-top:32px}
.experience-disclosure-content>.experience-grid+.experience-phase-heading{margin-top:40px}
.experience-grid-four{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px}
.experience-grid-four .experience-card h4{font-size:24px}
.experience-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.experience-grid-two .experience-photo{aspect-ratio:1.8}
.experience-concepts-heading{margin-top:42px}
.experience-concepts-heading .experience-phase-heading{margin-bottom:10px}
.experience-concepts-heading>p+p{max-width:760px;font-size:16px;color:#657181}
.service-photo img[src*="prime-park-concierge-team"]{object-position:35% 50%}
@media(max-width:980px){.experience-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-group-heading{display:block}.experience-group-heading>p{margin-top:16px;max-width:620px}.experience-card h4{font-size:25px}}
@media(max-width:540px){.experience-group-nav{display:grid;gap:18px;margin-bottom:30px}.experience-group+.experience-group{margin-top:45px;padding-top:35px}.experience-grid-four,.experience-grid-two{grid-template-columns:1fr}.experience-card h4,.experience-grid-four .experience-card h4{font-size:28px}.experience-disclosure-content{padding-top:26px}.experience-group-heading h3{font-size:31px}.experience-phase-heading{font-size:17px}}

.service-method{padding-top:30px;padding-bottom:80px}.service-method h2{margin:14px 0 24px}.method-lead{max-width:850px;font-size:20px;line-height:1.6}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:40px}.method-grid article{border-top:1px solid var(--line,#ddd8ce);padding-top:20px}.method-grid article>span{color:#a58a54;font-size:14px}.method-grid h3{font-size:23px;line-height:1.25}.method-grid p{font-size:16px;line-height:1.65}.method-grid a{font-size:14px;text-underline-offset:4px}.hero-image img{object-position:52% 50%}
@media(max-width:1050px){.method-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.method-grid{grid-template-columns:1fr;gap:24px}.service-method{padding-bottom:50px}.method-lead{font-size:18px}}

/* Five leaders: three readable cards, then two, with a mobile single column. */
.team-grid-columns-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 32px}.team-grid-columns-three h3{font-size:28px;line-height:1.2;min-height:102px}.team-grid-columns-three .role{min-height:70px}.team-grid-columns-three .team-description{min-height:112px}@media(max-width:900px){.team-grid-columns-three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.team-grid-columns-three{grid-template-columns:1fr}.team-grid-columns-three h3,.team-grid-columns-three .role,.team-grid-columns-three .team-description{min-height:0}}

/* Residential and business property are independent service directions. */
.home-service-directions{padding:45px 0 60px;border-top:1px solid var(--line)}
.home-service-directions h2{margin:20px 0 30px}.home-service-direction-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.home-service-direction-card{display:grid;grid-template-columns:1fr;gap:18px;border-top:1px solid var(--gold);padding-top:18px;text-decoration:none;min-width:0}.home-service-direction-card figure{aspect-ratio:1.8;overflow:hidden;background:var(--ivory)}.home-service-direction-card img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.home-service-direction-card:first-child img{object-position:center 55%}.home-service-direction-card:nth-child(2) img{object-position:center 48%}.home-service-direction-card:hover img{transform:scale(1.025)}.home-service-direction-copy{display:grid;grid-template-columns:1fr auto;column-gap:20px;row-gap:8px;align-items:start}.home-service-direction-copy .eyebrow{grid-column:1/-1;color:#657181}.home-service-direction-copy strong{font-size:1.5rem;font-weight:400;line-height:1.3}.home-service-direction-copy small{grid-column:1/-1;color:var(--text);font-size:1rem;line-height:1.5}.home-service-direction-arrow{font-size:1.6rem;color:#8f713d;line-height:1}.home-service-direction-card:hover strong{text-decoration:underline;text-underline-offset:5px}
#residential-services,#business-services{scroll-margin-top:32px}
.business-services{padding:75px 0;background:var(--ivory);margin-bottom:65px}.business-services-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.business-services h2{margin:20px 0 28px}.business-services-intro p:not(.eyebrow){font-size:1.0625rem;max-width:610px}.business-services-media{min-width:0}.business-services-feature{min-width:0}.business-services-feature img{width:100%;aspect-ratio:2.2;object-fit:cover}.business-services-supporting-images{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.business-services-supporting-images figure{min-width:0}.business-services-supporting-images img{width:100%;height:100%;aspect-ratio:1.25;object-fit:cover}.business-services-supporting-images figure:first-child img{object-position:center 44%}.business-services-supporting-images figure:last-child img{object-position:center 50%}.business-services figcaption{font-size:.8125rem;color:#586574;margin-top:10px}.business-services-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 60px;margin-top:50px}.business-services-grid article{border-top:1px solid var(--gold);padding-top:20px}.business-services-grid h3{font-size:1.375rem;line-height:1.4}.business-services-grid h3 a{text-decoration:none}.business-services-grid h3 a:hover{text-decoration:underline;text-underline-offset:5px}.business-services-grid p{margin-top:12px;color:var(--text)}.business-services-note{font-size:.875rem;line-height:1.7;color:#536071;margin-top:38px;max-width:950px}
@media(max-width:800px){.home-service-direction-grid{grid-template-columns:1fr}.business-services-intro{grid-template-columns:1fr;gap:32px}.business-services-intro figure{max-width:620px}.business-services h2 br{display:none}.business-services-grid{gap:28px}}
@media(max-width:620px){.home-service-directions{padding:35px 0 40px}.home-service-direction-grid{gap:34px}.home-service-direction-copy strong{font-size:1.35rem}.business-services{padding:45px 0;margin-bottom:40px}.business-services-grid{grid-template-columns:1fr;margin-top:35px}.business-services-supporting-images{gap:12px}}

/* Developer experience is clearly separated from the current company portfolio. */
.developer-experience{padding:30px 0 90px;border-top:1px solid var(--line)}
.developer-experience-heading{display:grid;grid-template-columns:1fr 1fr;gap:42px 60px;align-items:end;margin-bottom:42px}
.developer-experience-heading h2{margin-top:20px;max-width:620px}
.developer-experience-heading>p{max-width:560px;color:var(--text)}
.developer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}
.developer-card{border-top:1px solid var(--gold);padding-top:18px;min-width:0}
.developer-logo{height:112px;display:flex;align-items:center;gap:14px;padding:16px;background:#f7f5f0;margin-bottom:18px;overflow:hidden}
.developer-logo img{width:82px;height:62px;object-fit:contain;flex:0 0 82px}
.developer-logo span{font-size:19px;line-height:1.05;letter-spacing:.02em;font-weight:600}
.developer-logo small{font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.developer-logo-wordmark{font-family:'Noto Serif Display',serif;font-size:30px!important;line-height:.95!important;color:#1d6f69}
.developer-logo-sense{background:#f0f6f6;color:#126b77}.developer-logo-sense img{width:58px;flex-basis:58px}
.developer-logo-hutton{background:#eaf0f8;color:#1d4d91}.developer-logo-mr{background:#edf2f8;color:#183f72}
.developer-logo-cult{background:#f6eee8;color:#b25f3f}.developer-logo-cult img{width:58px;flex-basis:58px}
.developer-logo-osnova{background:#eef1f5;color:#172e55}
.developer-logo-optima{background:#f6efe6;color:#b35b2e}.developer-logo-optima img{width:58px;flex-basis:58px}
.developer-card h3{font-family:'Noto Serif Display',serif;font-size:24px;line-height:1.25}
.contractor-experience{padding:42px 0 90px;border-top:1px solid var(--line)}
.contractor-heading{display:grid;grid-template-columns:1fr 1fr;gap:32px 60px;align-items:end;margin-bottom:38px}
.contractor-heading h2{margin-top:20px;max-width:680px}
.contractor-heading>p{max-width:520px;color:var(--text)}
.contractor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px}
.contractor-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;border-top:1px solid var(--gold);padding-top:20px}
.contractor-logo{display:flex;align-items:center;height:92px;width:100%;margin-bottom:20px}
.contractor-logo img{display:block;max-width:210px;width:100%;height:76px;object-fit:contain;object-position:left center}
.contractor-card h3{font-family:'Noto Serif Display',serif;font-size:25px;line-height:1.3;overflow-wrap:anywhere}
.contractor-card p{font-size:16px;line-height:1.65;color:var(--text);margin:16px 0 24px}
.contractor-site{margin-top:auto;font-size:15px;line-height:1.6;text-underline-offset:4px}
@media(max-width:1100px){.contractor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.contractor-heading{grid-template-columns:1fr;gap:20px}.contractor-experience{padding:30px 0 60px}}
@media(max-width:540px){.contractor-grid{grid-template-columns:1fr;gap:30px}.contractor-logo{height:76px;margin-bottom:16px}}
.developer-card p{margin-top:12px;color:var(--text);font-size:14px;line-height:1.55}
.developer-card .developer-project{margin-top:10px;font-size:15px}.developer-project a{color:var(--ink);text-underline-offset:4px}.developer-card .developer-period{color:#657181;font-size:13px}.developer-card .developer-work{font-size:14px}.developer-links{display:flex;flex-wrap:wrap;gap:8px 16px}.developer-links a{font-size:13px;color:var(--ink);text-underline-offset:4px}
.developer-wall-heading{margin-top:54px;font-family:'Noto Serif Display',serif;font-size:clamp(24px,2.4vw,34px);line-height:1.2}
.developer-logo-wall{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:28px;padding-top:28px;border-top:1px solid var(--line)}
.developer-logo-wall img{width:100%;height:78px;object-fit:contain;padding:10px;background:#fff;border:1px solid #eee8de}
.developer-source{font-size:12px;line-height:1.6;color:#657181;margin-top:36px;max-width:820px}
.developer-source a{text-underline-offset:4px}

/* Пока WhatsApp и MAX не поддерживаются для общих обращений и диспетчерской. */
.messenger-links[aria-label="Мессенджеры: Контактный центр"] a[aria-label^="WhatsApp"],
.messenger-links[aria-label="Мессенджеры: Контактный центр"] a[aria-label^="MAX"],
.messenger-links[aria-label="Мессенджеры: Диспетчерская ЖК «Эвер»"] a[aria-label^="WhatsApp"],
.messenger-links[aria-label="Мессенджеры: Диспетчерская ЖК «Эвер»"] a[aria-label^="MAX"],
.messenger-links[aria-label="Мессенджеры: Общие вопросы"] a[aria-label^="WhatsApp"],
.messenger-links[aria-label="Мессенджеры: Общие вопросы"] a[aria-label^="MAX"]{display:none}
@media(max-width:1050px){.developer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.developer-logo-wall{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.developer-experience-heading{grid-template-columns:1fr;gap:20px}.developer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}}
@media(max-width:540px){.developer-experience{padding:15px 0 55px}.developer-grid{grid-template-columns:1fr}.developer-logo{height:100px}.developer-logo-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.developer-logo-wall img{height:70px}}
/* Brand artwork sits directly on the page; preserve each mark's proportions. */
.developer-experience .developer-logo{background:transparent;border:0;padding:12px 0;height:102px;justify-content:flex-start;overflow:visible}
.developer-experience .developer-logo img{width:min(100%,240px);height:78px;max-width:100%;object-fit:contain;object-position:left center;flex:0 1 auto}
.developer-experience .developer-logo-wordmark{color:var(--blue)}
.developer-experience .developer-logo-wall{align-items:center;gap:28px 30px}
.developer-experience .developer-logo-wall img{background:transparent;border:0;padding:8px 4px;height:86px;object-fit:contain}
.developer-experience .developer-logo-wall .logo-keys{height:86px;padding:2px 4px}
.developer-experience .logo-paper-source{mix-blend-mode:multiply}
.developer-card{min-width:0}
.developer-card .developer-work{max-width:42ch}
.project-developer a,.developer-project-list a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:3px}
.experience-card .project-developer{color:var(--ink);line-height:1.5;margin-top:10px}
.project-developer span{color:#657181}
.experience-card .project-image-credit{font-size:11px;margin-top:12px;line-height:1.5}
.project-image-credit a{color:#657181;text-underline-offset:3px}
.developer-card .developer-project-label{font-size:12px;color:#657181;margin-top:16px}
.developer-project-list{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px;font-size:15px;line-height:1.5}
.developer-project-list li{min-width:0;overflow-wrap:break-word}
.developer-grid-compact{margin-top:48px;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.developer-grid-compact .developer-card{scroll-margin-top:100px}
.developer-grid-compact .developer-card h3{font-size:22px}
.developer-grid-compact .developer-card:not(:has(.developer-logo)){padding-top:36px}
.experience-card[data-project="the-patricks"] .experience-photo img{object-fit:contain}

/* Named professional experience and premium former-employer portfolio. */
.team .team-intro{max-width:800px;margin:-10px 0 28px;color:var(--text);font-size:18px;line-height:1.65}
.team-navigation{display:flex;flex-wrap:wrap;gap:14px 28px;margin:0 0 42px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.team-navigation a{font-size:14px;text-underline-offset:5px}
.team-grid article{scroll-margin-top:28px}
.team-grid .team-companies{max-width:none;font-size:14px;line-height:1.65;color:var(--ink);margin:22px 0 0}
.team-companies>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#657181;margin-bottom:6px}
.team-grid-columns-three .role{min-height:112px}
.team-grid-columns-three .team-description{min-height:106px}
.team-grid-columns-three h3{min-height:102px}
.team-experience h4{margin-top:26px;font:400 21px/1.3 'Noto Serif Display',serif}
.career-list{margin:20px 0 0}.career-list>div{padding:12px 0;border-top:1px solid var(--line)}
.career-list dt{font-size:14px;color:var(--ink)}.career-list dd{font-size:14px;color:var(--text);margin:6px 0 0;line-height:1.6}
.team-project-links{list-style:none;padding:0;margin:12px 0 0}.team-project-links li{padding:7px 0;border-bottom:1px solid var(--line);font-size:14px}.team-project-links a{text-underline-offset:4px}
.team-history-note{margin-top:35px;max-width:860px;font-size:13px;color:var(--text)}
.portrait-monogram{background:linear-gradient(135deg,#faf8f4,#eee9df)}
.team-project-attribution{padding-top:10px;border-top:1px solid var(--line)}
.case-person-experience{margin:30px 0;padding:22px 0;border-top:1px solid #c8baa2;border-bottom:1px solid #c8baa2;max-width:940px}
.case-person-experience h3{font:400 26px/1.3 'Noto Serif Display',serif;margin:8px 0 12px}.case-person-experience p:last-child{font-size:16px;line-height:1.7}.case-person-experience a{text-underline-offset:5px}
.employer-portfolio{padding:55px 0 75px;border-top:1px solid var(--line);scroll-margin-top:20px}
.employer-portfolio-heading{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start;margin-bottom:35px}
.employer-portfolio-heading h2{margin-top:18px;max-width:560px}.employer-portfolio-heading>div>p{font-size:16px;line-height:1.65;color:var(--text)}
.employer-portfolio-heading .eyebrow{font-size:13px}.employer-portfolio-heading .employer-portfolio-scope{font-size:13px;margin-top:14px}
.employer-property-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.employer-property{min-width:0}.employer-property-photo{display:block;aspect-ratio:4/5;overflow:hidden;background:var(--ivory);margin-bottom:18px}
.employer-property-photo img{display:block;width:100%;height:100%;object-fit:cover}
.employer-property h3{font:400 25px/1.22 'Noto Serif Display',serif;margin:10px 0 14px;min-height:122px}.employer-property h3 a{text-decoration:none}
.employer-property p{font-size:13px;line-height:1.65;color:var(--text);margin:10px 0}.employer-property .employer-property-class{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#806132}
.employer-property .employer-property-company{border-top:1px solid var(--line);padding-top:15px;margin-top:18px}
.employer-property .case-card-more{font-size:13px;line-height:1.65}
.employer-source{font-size:12px;margin-top:30px;color:var(--text)}.employer-source a{text-underline-offset:4px}
.employer-case-hero{background:#f5f2eb}.employer-case-hero img{max-height:620px;width:100%;object-fit:contain}
.experience-group-nav{flex-wrap:wrap}
@media(max-width:1100px){.employer-property-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 28px}.employer-property h3{min-height:62px}}
@media(max-width:800px){.employer-portfolio-heading{grid-template-columns:1fr;gap:22px}.team .team-intro{font-size:16px}.team-grid-columns-three .role{min-height:130px}}
@media(max-width:620px){.team-grid-columns-three .role,.team-grid-columns-three h3,.team-grid-columns-three .team-description{min-height:0}.team-navigation{gap:15px 24px}.employer-portfolio{padding:40px 0 50px}.employer-property-grid{grid-template-columns:1fr;gap:38px}.employer-property h3{min-height:0;font-size:29px}.employer-property-photo{max-height:480px;aspect-ratio:4/4.5}.team .team-intro{margin-top:0}.team-grid .team-companies{margin-top:18px}}
.case-page .project-developer{font-size:16px;line-height:1.6;margin-top:14px}
.case-page .project-developer-note{font-size:14px;line-height:1.6;color:#657181;margin-top:8px;max-width:66ch}
@media(max-width:1050px){.developer-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}}
@media(max-width:540px){.developer-grid-compact{grid-template-columns:1fr;gap:28px}.developer-project-list{font-size:15px}}
@media(max-width:540px){.developer-experience .developer-logo{height:90px}.developer-experience .developer-logo img{height:68px;max-width:210px}.developer-experience .developer-logo-wall{gap:20px}.developer-experience .developer-logo-wall img{height:70px}}

/* September 2026: news, direct enquiries and electronic business card. */
.news{padding:76px 0;border-top:1px solid var(--line)}.news h2{margin:18px 0 38px}.news-item{display:grid;grid-template-columns:180px 1fr;gap:42px;border-top:1px solid var(--line);padding:32px 0}.news-item time{font-size:14px;color:#536071}.news-item h3{font-size:clamp(24px,2.2vw,30px);margin-bottom:18px;max-width:820px}.news-announcement{max-width:850px}.news-details{margin-top:20px;max-width:850px}.news-details summary{cursor:pointer;width:fit-content;text-decoration:underline;text-underline-offset:5px;font-size:16px}.news-details .when-open{display:none}.news-details[open] .when-closed{display:none}.news-details[open] .when-open{display:inline}.news-body{padding-top:22px}.news-body p{margin-bottom:18px}.request-section{padding:72px 0;border-top:1px solid var(--line)}.request-section h2{margin:16px 0 36px}.request-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px}.request-grid article{border-top:2px solid var(--gold);padding-top:26px;min-width:0}.request-grid h3{margin:14px 0 18px}.request-grid article>p:not(.eyebrow){max-width:540px}.request-button{font-size:16px;line-height:1.4;gap:12px;text-align:left;max-width:100%;margin-top:24px}.request-buttons{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.request-secondary{font-size:16px;text-underline-offset:4px}.request-person{display:flex;flex-direction:column;align-items:flex-start;margin-top:28px;gap:5px;font-size:16px}.request-person span{color:#536071;font-size:14px;line-height:1.5;margin-bottom:8px}.business-card-link{margin:18px 0;font-size:14px}.contact-vcard{display:block;font-size:15px!important;margin:10px 0}.booklet-matrix{padding:72px 0;border-top:1px solid var(--line)}.booklet-matrix h2{margin:16px 0 24px}.booklet-matrix .booklet-description{max-width:740px;margin-bottom:38px}.booklet-formats{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.booklet-format{border-top:2px solid var(--gold);padding-top:24px;min-width:0}.booklet-format h3{margin-bottom:14px}.booklet-format>p{color:#536071;font-size:16px;min-height:80px}.booklet-edition{padding:22px 0;border-bottom:1px solid var(--line)}.booklet-edition h4{margin:0 0 8px;font-size:16px}.booklet-edition a{display:block;padding:5px 0;font-size:15px;text-underline-offset:4px}.booklet-edition small{color:#536071;font-size:13px}.booklet-extra{margin-top:28px;font-size:14px}.ecard{max-width:900px;margin:55px auto 80px;padding:0 24px}.ecard-header{margin-bottom:40px}.ecard-header img{width:78px;height:auto}.ecard-content{display:grid;grid-template-columns:240px 1fr;gap:50px}.ecard-portrait{width:240px;aspect-ratio:4/5;object-fit:cover}.ecard h1{font-size:clamp(34px,5vw,48px);margin:0 0 20px;line-height:1.18;letter-spacing:-.015em}.ecard-role{margin-bottom:24px}.ecard-contacts{display:flex;flex-direction:column;gap:10px;font-size:18px}.ecard .button{font-size:16px}.ecard-back{display:inline-block;margin-top:36px}.request-section a:focus-visible,.news a:focus-visible,.news summary:focus-visible,.booklet-matrix a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
@media(max-width:1100px){.header nav{gap:18px}.booklet-formats{gap:24px}.request-grid{gap:36px}}
@media(max-width:760px){.news,.request-section,.booklet-matrix{padding:48px 0}.news-item{grid-template-columns:1fr;gap:12px}.request-grid,.booklet-formats{grid-template-columns:1fr;gap:36px}.booklet-format>p{min-height:0}.ecard-content{grid-template-columns:1fr;gap:28px}.ecard-portrait{width:180px}.ecard{margin-top:30px}.request-button{width:100%;justify-content:center}.header nav{gap:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.news-details summary::after{content:none!important}.ecard-header{display:block}
.ecard-portrait{height:auto}

/* Service partners and office contacts */
.office-address{padding:28px 0;border-top:1px solid var(--line,#ddd8ce);margin-top:28px}.office-address h3{margin:0 0 10px}.office-address p{max-width:640px}.office-address .eyebrow{margin-bottom:12px}.address-label{font-size:.875rem;color:#536071}/* Partner names are ordinary headings, without duplicate wordmarks. */
.service-partners{padding-block:72px;border-top:1px solid var(--line)}
.service-partners>.eyebrow{margin-bottom:18px}
.service-partners h2{max-width:25ch;margin-bottom:22px}
.partners-intro{max-width:720px;font-size:1.125rem;line-height:1.65;margin-bottom:36px}
.service-partners-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 48px}
.service-partner{min-width:0;border-top:1px solid var(--gold);padding-top:24px}
.service-partner h3{font:400 1.75rem/1.25 'Noto Serif Display',Georgia,serif;margin:0 0 10px}
.service-partner p{font-size:1rem;line-height:1.65}
.service-partner .partner-specialty{font-size:.875rem;line-height:1.5;letter-spacing:.02em;color:#536071;margin-bottom:18px}
.service-partner .partner-experience{font-size:.9375rem;font-weight:700;line-height:1.5;color:#806332;margin-bottom:12px}
.service-partner .partner-detail{color:#536071;margin-top:12px}
.service-partner .text-link{display:inline-flex;align-items:center;max-width:100%;min-height:44px;margin-top:12px;font-size:1rem}
.partner-contacts{display:grid;gap:14px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line);font-style:normal;font-size:1rem;line-height:1.5}
.partner-contact{display:grid;gap:4px;min-width:0}
.partner-contact-name{font-weight:600;overflow-wrap:anywhere}
.partner-contact-role{font-size:.875rem;color:#536071;line-height:1.5}
.partner-contacts a{display:flex;align-items:center;min-height:44px;width:fit-content;max-width:100%;padding-block:8px;text-underline-offset:4px;overflow-wrap:anywhere}
.partner-contacts a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.header nav a{white-space:nowrap;overflow-wrap:normal;word-break:normal;flex-shrink:0}
@media(min-width:1101px){.header nav{flex-wrap:wrap;justify-content:flex-end;column-gap:20px;row-gap:12px}}

/* Text partner marks and complete footer addresses */
.footer-office{margin-top:22px}.footer-office a{display:inline-block;margin-top:8px}.company-details .address-label{font-weight:600}.contact-person .contact-vcard{display:block;width:fit-content;margin:10px 0 12px;font-size:16px}



/* Comfortable spacing in the updated homepage sections, including narrow screens. */
.news-attachment{margin-top:20px}
.news-attachment .text-link{display:inline-block;max-width:100%;padding-block:8px;font-size:1rem}
.request-person a{display:block;max-width:100%;padding-block:4px;overflow-wrap:anywhere}
.request-person a[href^="tel:"]{white-space:nowrap}
.booklet-matrix>.eyebrow{margin-bottom:18px}
.booklet-matrix h2{margin-top:0}
.booklet-format h3{font-size:clamp(1.35rem,2.2vw,1.625rem);line-height:1.3;margin-bottom:14px}
.booklet-format>p{line-height:1.65}
.booklet-edition h4{font-size:1rem;line-height:1.5}
.booklet-edition a{display:inline-flex;flex-wrap:wrap;align-items:baseline;column-gap:12px;row-gap:4px;min-height:44px;max-width:100%;padding-block:9px;font-size:1rem;text-decoration:none}
.booklet-download-label{white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.booklet-edition small{font-size:.875rem;white-space:nowrap;line-height:1.5}
.booklet-edition a:hover .booklet-download-label{text-decoration-thickness:2px}
.booklet-edition a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
:is(.ecard-mokshin,.ecard-person) .ecard-header{display:inline-block;margin-bottom:36px}
:is(.ecard-mokshin,.ecard-person) .ecard-content>div{min-width:0}
:is(.ecard-mokshin,.ecard-person) .ecard-contacts{align-items:flex-start;gap:4px}
:is(.ecard-mokshin,.ecard-person) .ecard-contacts a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere;text-underline-offset:4px}
:is(.ecard-mokshin,.ecard-person) .ecard-save{display:inline-flex;margin-top:24px}
:is(.ecard-mokshin,.ecard-person) .ecard-back{display:block;margin-top:24px;font-size:16px}
:is(.ecard-mokshin,.ecard-person) a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.public-company-info{margin-top:24px}
.public-company-info>p{margin-bottom:10px}
.public-company-info ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.public-company-info a{display:inline-block;padding-block:6px;max-width:100%;text-underline-offset:4px}
@media(max-width:400px){:is(.ecard-mokshin,.ecard-person) h1{font-size:30px}}
@media(max-width:760px){
  .service-partners{padding-block:48px}
  .service-partners-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .service-partners h2,.booklet-matrix h2,.request-section h2,.news h2{font-size:clamp(1.8rem,7.6vw,2.15rem);line-height:1.2;letter-spacing:-.015em;max-width:100%}
  .partners-intro{font-size:1rem;margin-bottom:28px}
  .service-partner{padding-top:24px}
  .service-partner h3{font-size:1.625rem}
  .booklet-matrix .booklet-description{margin-bottom:28px;font-size:1rem;line-height:1.65}
  .booklet-formats{gap:32px;grid-template-columns:minmax(0,1fr)}
  .booklet-format{padding-top:24px}
  .booklet-format>p{min-height:0;margin-bottom:8px}
  .booklet-edition{padding-block:18px}
  .request-grid{grid-template-columns:minmax(0,1fr);gap:36px}
  .request-grid h3{font-size:1.5rem}
  .request-buttons{gap:18px}
  .request-button{padding:16px 18px;text-align:left;justify-content:flex-start}
  .request-secondary{display:inline-flex;align-items:center;min-height:44px;max-width:100%}
  .request-person{gap:6px;margin-top:24px}
  .contact-person .contact-vcard{margin-block:12px}
  .company-details p br{display:initial}
  .company-details .address-label{display:inline-block;margin-bottom:5px}
  .footer-links{width:100%}
}

.developer-project-scope{display:block;font-size:.875rem;line-height:1.5;color:#536071;margin-top:2px}

/* Match the enquiry actions and align every contact row across both people. */
.request-grid{column-gap:64px;row-gap:0}
.request-grid>article{display:grid;grid-template-rows:subgrid;grid-row:span 9;align-items:start}
.request-grid .request-buttons{margin-top:24px;gap:14px;align-items:stretch}
.request-grid .request-button{width:100%;min-height:56px;margin-top:0;justify-content:center;text-align:center;box-sizing:border-box}
.request-grid .request-secondary{display:flex;align-items:center;min-height:44px;max-width:100%;line-height:1.5}
.request-grid .request-person{display:grid;grid-template-rows:subgrid;grid-row:span 5;justify-items:start;align-items:start;row-gap:5px;margin-top:24px}
@media(max-width:1100px){.request-grid{column-gap:36px}}
@media(max-width:760px){.request-grid{row-gap:36px}.request-grid>article{display:flex;flex-direction:column;grid-row:auto}.request-grid .request-buttons{width:100%}.request-grid .request-person{display:flex;flex-direction:column;gap:6px;grid-row:auto}}
/* Uniform public contact blocks for company leaders. */
.team-contact{display:grid;gap:12px;margin-top:24px;min-width:0;font-size:16px;line-height:1.5}
.team-contact>a{display:flex;align-items:center;min-height:44px;max-width:100%;width:fit-content;overflow-wrap:anywhere;text-underline-offset:4px}
.team-contact-phone{display:grid;gap:6px}
.team-contact-phone>span{font-size:13px;color:var(--muted,#536071)}
.team-contact-phone>a{display:flex;align-items:center;min-height:44px;white-space:nowrap;width:fit-content}
.team-contact .messenger-links{margin:0;min-height:44px}
.team-contact-save{font-size:14px;color:var(--muted,#536071)}
.team-contact a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
@media(min-width:901px){.team-grid-columns-three>article:nth-child(-n+3){display:grid;grid-template-rows:subgrid;grid-row:span 7;align-items:start}.team-grid-columns-three>article:nth-child(-n+3)>:is(h3,.role,.team-description,.team-companies){min-height:0}.team-grid-columns-three>article:nth-child(-n+3) .team-contact{align-self:start}.team-grid-columns-three{row-gap:24px}.team-grid-columns-three>article:nth-child(n+4){margin-top:28px}}
.request-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:30px}
@media(max-width:1000px){.request-grid{grid-template-columns:1fr;row-gap:36px}.request-grid>article{display:flex;flex-direction:column;grid-row:auto}.request-grid .request-buttons{width:100%}.request-grid .request-person{display:flex;flex-direction:column;grid-row:auto;gap:6px}}
.developer-logo-note{font-size:12px;line-height:1.4;color:#536071;margin:8px 0 0}
.developer-logo img{max-width:180px;max-height:80px;width:auto;height:auto;object-fit:contain}

/* Partner roles within the existing service layouts. */
.service-provider-summary{display:grid;gap:9px;margin-top:24px;padding-top:18px;border-top:1px solid #ded8cc;font-size:14px;line-height:1.6}
.service-provider-summary strong{font-weight:600;color:#0b1b2e}
.service-provider-summary a{border-bottom:0;color:#0b1b2e;text-decoration:underline;text-decoration-color:#aa8951;text-decoration-thickness:1px;text-underline-offset:.22em}
.service-providers{padding-top:58px;padding-bottom:58px;border-top:1px solid #ded8cc}
.service-providers>p:not(.eyebrow){max-width:860px;line-height:1.7}
.service-provider-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin:28px 0}
.service-provider-link{display:grid;gap:10px;padding:22px 0;border-top:1px solid #aa8951;color:#0b1b2e;text-decoration:none}
.service-provider-link span,.service-provider-note{font-size:14px;color:#536071}
#fsk-preoperations>h4{margin:40px 0 26px}

/* One number style for independent lists across all page templates. */
.ui-index,.service-scenario li::before,.service-use-case ol li::marker{font-family:Inter,Arial,sans-serif!important;font-size:14px!important;font-weight:500!important;line-height:1.5!important;letter-spacing:.06em!important;font-variant-numeric:tabular-nums;color:#806739!important}
.ui-index{display:block;flex-shrink:0}
.eyebrow>.ui-index{display:inline;margin:0}
.method-grid .ui-index,.principle-grid .ui-index,.business-services-grid .ui-index,.digital-work h3>.ui-index{margin-bottom:12px}
.service-includes .ui-index,.portfolio .ui-index{color:#d4b884!important}
.service-use-case ol{list-style-type:decimal-leading-zero}

/* Source: typography.css */
/* Shared editorial rules. Layout shrinks naturally; overflow is never hidden. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { word-break: normal; overflow-wrap: break-word; }
body :where(*) { min-width: 0; }
:where(h1,h2,h3,h4,p,li,dd,figcaption) { text-wrap: pretty; }
:where(h1,h2,h3,h4) { text-wrap: balance; hyphens: manual; }
:where(p,li,dd) { orphans: 3; widows: 3; }
a { text-decoration-thickness: 1px; text-underline-offset: .22em; }
a[href^="mailto:"], .case-sources a, .legal-details dd, .legal dd { overflow-wrap: anywhere; }
.button { max-width: 100%; min-width: 0; white-space: normal; gap: 20px; }
.button > span[aria-hidden] { flex-shrink: 0; }
.contact .email { max-width: 100%; white-space: normal; }
.brand-service { white-space: normal; }
.hero.wrap { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.intro.wrap { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.intro h2 { max-width: 16ch; }
.business-services { padding-block: 56px; margin-bottom: 48px; }
.business-services-intro { grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr); gap: clamp(28px,4vw,52px); align-items: start; }
.business-services-media { width: 100%; max-width: 450px; justify-self: end; }
.business-services-feature img { height: auto; aspect-ratio: 2.2; }
.business-services-supporting-images img { height: auto; aspect-ratio: 1.65; object-fit: cover; }
.business-services-supporting-images { gap: 14px; margin-top: 14px; }
.business-services h2 { font-size: clamp(2rem,3.4vw,3.15rem); line-height: 1.17; }
.business-services-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 48px; margin-top: 36px; }
.business-services figcaption { line-height: 1.45; }
.hero-image img { object-position: 52% 50%; }
@media (max-width: 800px) {
  .business-services-intro { grid-template-columns: minmax(0,1fr); }
  .business-services-media { justify-self: start; max-width: 560px; }
}
@media (max-width: 740px) {
  .wrap { width: calc(100% - 40px); }
  h1, .service-page .service-hero h1, .case-page .case-top h1 { font-size: clamp(2rem,9vw,2.75rem); line-height: 1.16; letter-spacing: -.02em; }
  h2, .service-page h2, .case-page .case-work h2 { font-size: clamp(1.85rem,7.8vw,2.3rem); line-height: 1.2; }
  .hero h1 { font-size: clamp(2.6rem,11.3vw,3.35rem); line-height: 1.1; }
  h3, .service-page h3 { line-height: 1.35; }
  .intro h2 { max-width: 100%; }
  .hero-image { height: auto; aspect-ratio: 4/3; }
  .hero-image img { height: 100%; }
  .hero-image figcaption { padding: 65px 20px 18px; font-size: 13px; }
  .contact .email { font-size: clamp(1.45rem,6.2vw,1.9rem); }
  .contact .email span { padding-left: 0; }
  .brand-lockup, .footer-brand .brand-lockup { max-width: 100%; }
  .business-services-grid { grid-template-columns: minmax(0,1fr); }
  .business-services { padding-block: 38px; margin-bottom: 36px; }
  .service-process li > div { min-width: 0; }
  .service-use-case summary { gap: 12px; }
  .service-use-case summary::after { flex-shrink: 0; }
  .service-use-case strong { min-width: 0; }
  .metrics strong { font-size: clamp(1.85rem,8.7vw,2.6rem); }
  .booklet-downloads a span { white-space: normal; }
  .person { flex-wrap: wrap; }
  .person > div { min-width: 0; flex: 1 1 165px; }
}
@media (max-width: 380px) {
  .header .brand-lockup, .footer-brand .brand-lockup { grid-template-columns: 70px minmax(0,1fr); gap: 12px; }
  .header .brand-wording, .footer-brand .brand-wording { padding-left: 12px; }
  .header .brand-name, .footer-brand .brand-name { font-size: 17px; }
  .brand-service { font-size: 12px; letter-spacing: 0; }
  .header-brands { gap: 10px; }
  .respect-mark { width: 42px; }
  .respect-name { font-size: 17px; }
  .respect-service { font-size: 10px; white-space: normal; }
  .four { grid-template-columns: minmax(0,1fr); }
}
@media print {
  p, li { orphans: 3; widows: 3; }
  h1,h2,h3,h4 { break-after: avoid; }
  figure, .service-card, .developer-card { break-inside: avoid; }
}

/* Source: image-credits.css */
/* Photo and visualization credits stay adjacent to the corresponding image. */
.image-credit{display:block;font:11px/1.5 Inter,Arial,sans-serif;letter-spacing:normal;color:#586574;margin-top:5px;overflow-wrap:anywhere;text-transform:none}
.image-credit a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;color:inherit}
.image-credit-card{margin:-12px 0 18px}
.experience-photo.credited-figure{aspect-ratio:auto;overflow:visible;background:transparent}
.experience-photo.credited-figure img{height:auto;aspect-ratio:1.5;object-fit:cover}
.hero-image .image-credit,.managed-object .image-credit{color:inherit}
.hero>.image-credit-overlay{position:absolute;bottom:18px;right:24px;left:24px;text-align:right;color:#fff;font-size:11px;z-index:2;margin:0}
.business-services-supporting-images img{height:auto}
.team-projects-inline{line-height:1.8}
.team-projects-inline a{text-underline-offset:3px}
.team-grid .team-projects-inline:last-child{max-width:none}
@media(max-width:540px){.image-credit{font-size:11px}.hero>.image-credit-overlay{text-align:left;bottom:12px}}

/* Source: project-catalog.css */
/* Property galleries and location details share the existing brand palette. */
.project-carousel{margin:0;min-width:0;background:transparent;color:#122536}
.carousel-stage{position:relative;isolation:isolate;overflow:hidden;background:#eeece6;aspect-ratio:3/2;touch-action:pan-y}
.carousel-slide{display:block;width:100%;height:100%;text-decoration:none}
.carousel-slide[hidden],.carousel-controls[hidden],.carousel-counter[hidden]{display:none!important}
.carousel-slide img{display:block;width:100%;height:100%;object-fit:cover;max-height:none}
.carousel-controls{position:absolute;inset:0;pointer-events:none;display:flex;align-items:center;justify-content:space-between;padding:10px}
.carousel-controls button{pointer-events:auto;width:44px;height:44px;border:1px solid #ffffff88;background:#102335dd;color:#fff;border-radius:50%;font:28px/1 Arial,sans-serif;cursor:pointer;display:grid;place-items:center;padding:0;box-shadow:0 2px 12px #0002}
.carousel-controls button:hover{background:#102335}
.carousel-counter{position:absolute;right:12px;bottom:12px;color:#fff;background:#102335df;padding:5px 10px;font:500 13px/1.5 Inter,Arial,sans-serif;border-radius:2px;letter-spacing:.03em}
.project-carousel figcaption{position:static;display:flex;flex-wrap:wrap;gap:0 .45em;background:none;color:#5e6c77;padding:10px 0 0;font:400 13px/1.55 Inter,Arial,sans-serif}
.project-carousel [data-image-kind-label]:not([hidden])::after{content:' ·'}
.project-carousel [data-credit]{display:inline;margin:0}
.project-carousel [data-credit] a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.project-carousel a:focus-visible,.project-carousel button:focus-visible{outline:3px solid #c6a264;outline-offset:-4px}
.project-carousel.is-card{margin-bottom:20px}
.project-carousel.is-detail{width:min(1200px,88%);margin:0 auto 28px}
.project-carousel.is-detail .carousel-stage{aspect-ratio:16/10;max-height:740px}
.project-carousel.is-detail .carousel-slide img{object-fit:contain}
.project-carousel.is-detail figcaption{justify-content:flex-start}
.project-carousel.is-detail [data-credit]{margin:0}
.project-geography{display:flex;gap:7px 14px;flex-wrap:wrap;color:#64717b;font-size:14px;line-height:1.6;margin-bottom:7px}
.project-map-link{display:inline;line-height:1.65;text-underline-offset:4px;text-decoration-thickness:1px}
.project-map-arrow{white-space:nowrap;color:inherit}
.project-location-note{font-size:13px;line-height:1.7;color:#64717b;margin-top:9px}
.project-location-list{display:grid;gap:12px}
.project-location-list strong{font-weight:500;font-size:15px}
.experience-card .project-address{font-size:15px;line-height:1.7;margin:16px 0}
.project-advantages-preview{display:flex;flex-wrap:wrap;gap:6px 12px;margin:15px 0 18px;padding:0;list-style:none}
.project-advantages-preview li{font-size:13px;line-height:1.55;color:#6b542e;border-bottom:1px solid #ccb080;padding-bottom:3px}
.case-location-block{margin-top:20px;font-size:17px;line-height:1.8}
.project-benefits{padding:0 0 70px;color:#122536}
.project-benefits h2{margin:16px 0 30px;font-size:clamp(30px,3.2vw,46px);font-weight:400;line-height:1.2}
.project-benefits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 6%}
.project-benefits-grid article{border-top:1px solid #c9b07f;padding-top:22px}
.project-benefits-grid h3{font:500 21px/1.4 Inter,Arial,sans-serif;margin:0 0 12px}
.project-benefits-grid p{font:400 16px/1.8 Inter,Arial,sans-serif;color:#4f5d68;margin:0;max-width:570px}
.project-benefits-sources{margin-top:26px;font-size:13px;line-height:1.7;color:#64717b}
.project-benefits-sources a{color:inherit;text-underline-offset:3px}
.portfolio .portfolio-rows a{color:inherit;text-underline-offset:4px}
.portfolio .project-benefits{color:inherit;padding-top:50px}
.portfolio .project-benefits h2,.portfolio .project-benefits-grid h3{color:inherit}
.portfolio .project-benefits-grid p,.portfolio .project-benefits-sources{color:inherit;opacity:.85}
.ever-gallery.catalog-ever-gallery{display:block;margin-top:36px}
.ever-gallery.catalog-ever-gallery .project-carousel{max-width:100%;color:inherit;aspect-ratio:auto;overflow:visible;background:none}
.ever-gallery.catalog-ever-gallery .carousel-stage{aspect-ratio:16/9}
.ever-gallery.catalog-ever-gallery figcaption{color:inherit}
@media(max-width:700px){.project-carousel.is-detail{width:100%;margin-bottom:20px}.project-carousel.is-detail .carousel-stage{aspect-ratio:4/3}.project-carousel.is-detail figcaption{padding:12px 6%}.project-benefits{padding-bottom:45px}.project-benefits-grid{grid-template-columns:1fr;gap:22px}.project-benefits-grid h3{font-size:20px}.project-advantages-preview{margin-top:12px}.carousel-controls{padding:8px}.project-geography{font-size:14px}.case-location-block{font-size:16px}.ever-gallery.catalog-ever-gallery .carousel-stage{aspect-ratio:4/3}}

/* Catalog: corresponding content rows align without fixed text heights. */
.experience-grid,.experience-grid-four,.experience-grid-two{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;row-gap:40px;align-items:stretch}
.experience-card h4,.experience-grid-four .experience-card h4{font-size:28px;line-height:1.25}
.experience-card .project-geography{display:block}
.experience-card .project-geography span{display:block}
.experience-card .project-advantages-preview{align-items:flex-start;align-content:flex-start}
.experience-card .project-work-summary{font-size:14px;line-height:1.65}
@supports(grid-template-rows:subgrid){
 .experience-card,.experience-card:has(.case-card-more){display:grid;grid-row:span 10;grid-template-rows:subgrid;row-gap:0;padding:0 0 24px;border-bottom:1px solid var(--line);align-items:start}
 .experience-card>.project-carousel{grid-row:1/span 2;display:grid;grid-template-rows:subgrid;row-gap:0;margin:0}
 .experience-card .carousel-stage{grid-row:1;width:100%;aspect-ratio:3/2}
 .experience-card .project-carousel figcaption{grid-row:2;align-content:start;min-height:4.65em;padding-top:10px;margin:0 0 18px;line-height:1.55}
 .experience-card>.experience-index{grid-row:3;margin:0 0 10px}
 .experience-card>h4{grid-row:4;margin:0 0 16px}
 .experience-card>.project-address{grid-row:5;margin:0 0 16px}
 .experience-card>.project-developer{grid-row:6;margin:0 0 16px}
 .experience-card>.project-advantages-preview{grid-row:7;margin:0 0 18px}
 .experience-card>.project-work-summary{grid-row:8;margin:0 0 18px}
 .experience-card>.case-card-more{grid-row:9;margin:0;padding:0 0 14px;line-height:1.6}
 .experience-card>.team-project-attribution{grid-row:10;margin:0;padding-top:12px;align-self:start}
}
@media(max-width:1100px){.experience-grid,.experience-grid-four,.experience-grid-two{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}}
@media(max-width:680px){
 .experience-grid,.experience-grid-four,.experience-grid-two{grid-template-columns:minmax(0,1fr);row-gap:34px}
 .experience-card,.experience-card:has(.case-card-more){display:flex;flex-direction:column;gap:0;padding-bottom:26px}
 .experience-card>.project-carousel{display:block;width:100%;margin:0 0 16px}
 .experience-card .project-carousel figcaption{min-height:0;margin:0}
 .experience-card>h4{margin-bottom:14px}
 .experience-card>.case-card-more{margin-top:0}
 .experience-card>.team-project-attribution{width:100%}
}

/* Source: site-polish.css */
/* Shared rhythm for service, project, team and company page templates. */
:root{--section-space:clamp(48px,6vw,80px);--card-gap:32px;--muted:#536071}
.parking-management{padding-block:var(--section-space)}
.parking-intro{max-width:68ch;margin:20px 0 32px;color:var(--muted)}
.parking-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.parking-card{min-width:0;display:flex;flex-direction:column;gap:14px}
.parking-card p,.parking-card h3{margin:0}
.parking-card h3{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:14px;align-items:baseline;font-size:25px;line-height:1.3}
.parking-card .ui-index{font-size:12px}
.parking-card .parking-subtitle{font-size:14px;color:var(--muted)}
.parking-photo{margin:0}
.parking-photo img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.parking-photo figcaption{font-size:11px;line-height:1.5;color:var(--muted);margin:9px 0 4px}
.parking-address{margin-top:auto;font-size:14px;line-height:1.6}
@supports(grid-template-rows:subgrid){
 .parking-grid{row-gap:0}
 .parking-card{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:14px}
 @media(max-width:760px){.parking-grid{row-gap:32px}.parking-card{display:flex;grid-row:auto}}
}
.parking-hero .parking-photo img{aspect-ratio:16/7;max-height:600px}
.parking-case-body{padding-block:48px 72px}
.parking-lead{font-size:clamp(21px,2.4vw,30px);line-height:1.5}
.parking-owner{margin:24px 0 42px;color:var(--muted)}
.parking-work,.parking-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.parking-work h2{font-size:25px;margin:0 0 16px}
.parking-work p{margin:0}
.parking-metrics{background:#f5f2eb;padding:32px;margin-top:42px}
.parking-metrics strong{font-family:"Noto Serif Display",Georgia,serif;font-size:44px;font-weight:400}
.parking-metrics p{font-size:15px;line-height:1.6;margin:8px 0 0}
.parking-metric-note{font-size:13px;line-height:1.6;color:var(--muted);margin:18px 0 32px}
.parking-related{padding-block:24px}
.booklet-matrix .booklet-formats{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
@media(max-width:760px){
 .parking-grid,.parking-work,.parking-metrics{grid-template-columns:minmax(0,1fr);gap:32px}
 .parking-card{gap:12px}
 .parking-hero .parking-photo img{aspect-ratio:3/2}
 .booklet-matrix .booklet-formats{grid-template-columns:minmax(0,1fr)}
}
@media print{
 @page{size:A4;margin:15mm}
 body{background:white;color:#111}
 header,footer,.menu-button,.project-carousel button,.project-request,.skip{display:none!important}
 .wrap{width:100%;max-width:none;padding-inline:0}
 h1,h2,h3,h4{break-after:avoid}
 figure,img,article{break-inside:avoid}
 .parking-grid,.parking-work{grid-template-columns:repeat(2,minmax(0,1fr))}
 a{color:inherit}
}
.wrap{min-width:0}
:is(.case-page,.service-page) main h2{line-height:1.2;text-wrap:balance}
:is(.case-page,.service-page) main p{max-width:72ch}
:is(.case-page,.service-page) :is(.case-work-grid,.case-focus-grid,.service-includes-grid,.service-related nav){gap:28px 40px}
:is(.case-page,.service-page) :is(.case-work-grid,.case-focus-grid,.service-includes-grid) article{min-width:0}
.service-providers{padding-block:var(--section-space)}
.service-provider-grid{gap:20px}
.service-provider-link{padding:20px;min-width:0}
.service-provider-link strong{font-size:17px;line-height:1.45}
.service-provider-link span{font-size:14px;line-height:1.5}
.service-provider-summary{font-size:14px!important;line-height:1.65!important}
.service-provider-summary>span:last-child a{display:inline;text-underline-offset:4px}
.services .service-list{row-gap:40px;column-gap:32px}
.service-copy-body p+p{margin-top:14px}
.service-copy-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.service-copy-actions :is(a,p){margin:0}
.service-copy-actions .service-detail-link{padding-block:6px}
.developer-grid,.developer-grid-compact{column-gap:32px;row-gap:36px}
.developer-card h3{font-size:24px;line-height:1.3}
.developer-project-list{line-height:1.7}
.developer-project-list a{text-underline-offset:4px}
.service-partners-grid{column-gap:40px;row-gap:40px}
.service-partner h3{font-size:28px;line-height:1.3}
.service-partner .partner-contacts{font-size:15px;line-height:1.6}
.partner-contacts a{overflow-wrap:anywhere;text-underline-offset:4px}
.news-item{column-gap:36px}
.news-item .news-body{max-width:72ch}
.booklet-format>p{min-height:0}
.booklet-edition a{gap:12px}
.team-grid-columns-three{gap:20px 32px}
.team-grid-columns-three>article:nth-child(n+4){margin-top:0}
.team-grid-columns-three :is(h3,.role,.team-description){min-height:0}
@supports(grid-template-rows:subgrid){
 .services .service-list,.developer-grid,.developer-grid-compact,.service-partners-grid,.booklet-formats{row-gap:0}
 .services .service-list>.service-card,.developer-card,.service-partner{margin-bottom:40px}
 .services .service-list>.service-card{display:grid;grid-template-rows:subgrid;grid-row:span 7;row-gap:0;align-items:start;padding-bottom:28px;border-bottom:1px solid var(--line)}
 .service-card>.service-photo{background:transparent;display:grid;grid-template-rows:subgrid;grid-row:1/span 2;row-gap:0;aspect-ratio:auto;height:auto;overflow:visible;margin:0 0 18px}
 .service-card .service-photo>img{grid-row:1;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
 .service-card .service-photo>figcaption{grid-row:2;position:static;padding:10px 0 0;margin:0;background:none}
 .service-card>.service-card-copy{grid-row:3/span 4;display:grid;grid-template-rows:subgrid;row-gap:0;padding:0}
 .service-card-copy>.index{grid-row:1;margin:0 0 12px}
 .services .service-card-copy>h3{grid-row:2;min-height:0;margin:0 0 16px}
 .service-card-copy>.service-copy-body{grid-row:3;margin-bottom:20px}
 .service-card-copy>.service-copy-actions{grid-row:4;margin-bottom:20px}
 .service-card>.service-provider-summary{grid-row:7;margin:0;align-self:start}
 .developer-card{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;align-items:start}
 .developer-card>.developer-logo{grid-row:1;margin:0 0 18px}
 .developer-card>h3{grid-row:2;margin:0 0 12px}
 .developer-card>.developer-project-label{grid-row:3;margin:0 0 10px}
 .developer-card>.developer-project-list{grid-row:4;margin:0;padding-bottom:16px}
 .developer-card>.developer-logo-note{grid-row:5;margin:0}
 .service-partner{display:grid;grid-template-rows:subgrid;grid-row:span 7;row-gap:0;align-items:start}
 .service-partner>h3{grid-row:1;margin:0 0 10px}
 .service-partner>.partner-specialty{grid-row:2;margin:0 0 16px}
 .service-partner>.partner-experience{grid-row:3;margin:0 0 12px}
 .service-partner>p:not([class]){grid-row:4;margin:0 0 14px}
 .service-partner>.partner-detail{grid-row:5;margin:0 0 18px}
 .service-partner>.text-link{grid-row:6;margin:0 0 20px}
 .service-partner>.partner-contacts{grid-row:7;margin:0;padding-top:18px}
 .team-grid-columns-three>article,.team-grid-columns-three>article:nth-child(-n+3){display:grid;grid-template-rows:subgrid;grid-row:span 7;align-items:start}
 .team-grid-columns-three>article>:is(.portrait-photo,.portrait-placeholder){grid-row:1;margin:0}
 .team-grid-columns-three>article>h3{grid-row:2;margin:0;font-size:28px;line-height:1.3}
 .team-grid-columns-three>article>.role{grid-row:3;margin:0}
 .team-grid-columns-three>article>.team-description{grid-row:4;margin:0;max-width:none}
 .team-grid-columns-three>article>.team-companies{grid-row:5;margin:0}
 .team-grid-columns-three>article>:is(.team-contact,.team-email){grid-row:6;margin:0}
 .team-grid-columns-three>article>.team-experience{grid-row:7;margin:0 0 28px}
 .booklet-format{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0;align-items:start}
 .booklet-format>h3{grid-row:1;margin-bottom:14px}
 .booklet-format>p{grid-row:2;margin-bottom:12px}
 .booklet-format>.booklet-edition:nth-of-type(1){grid-row:3}
 .booklet-format>.booklet-edition:nth-of-type(2){grid-row:4}
}
@media(max-width:680px){
 .services .service-list,.developer-grid,.developer-grid-compact,.service-partners-grid,.booklet-formats,.team-grid-columns-three{grid-template-columns:minmax(0,1fr);row-gap:32px}
 .services .service-list>.service-card,.developer-card,.service-partner,.booklet-format,.team-grid-columns-three>article,.team-grid-columns-three>article:nth-child(-n+3){display:flex;flex-direction:column;gap:0;margin-bottom:0}
 .service-card>.service-photo{background:transparent;display:block;width:100%;margin:0 0 18px}
 .service-card>.service-card-copy{display:block;width:100%}
 .service-card .service-photo>img{height:auto}
 .developer-card>.developer-logo{width:100%}
 .service-partner>.partner-contacts{width:100%}
 .booklet-format>.booklet-edition{width:100%}
 .team-grid-columns-three>article>:is(.portrait-photo,.portrait-placeholder){margin-bottom:20px}
 .team-grid-columns-three>article>:is(h3,.role,.team-description,.team-companies){margin:0 0 18px}
 .team-grid-columns-three>article>:is(.team-contact,.team-email){margin:0 0 22px}
 .team-grid-columns-three>article>.team-experience{margin:0}
 :is(.case-page,.service-page) :is(.case-work-grid,.case-focus-grid,.service-includes-grid,.service-related nav){grid-template-columns:minmax(0,1fr);gap:24px}
 .service-provider-grid{grid-template-columns:minmax(0,1fr)}
 .service-provider-link{padding:18px}
 .news-item{grid-template-columns:minmax(0,1fr);gap:12px}
}
/* Compact overview; the complete directories remain one click away. */
.content-disclosure{margin:28px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.content-disclosure>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:20px;min-height:64px;padding:18px 0;font-size:18px;line-height:1.4;color:var(--navy)}
.content-disclosure>summary::-webkit-details-marker,.partner-info>summary::-webkit-details-marker{display:none}
.content-disclosure>summary>small{margin-left:auto;font:400 14px/1.4 Inter,sans-serif;color:var(--muted);white-space:nowrap}
.content-disclosure>summary:after{content:'+';font:300 26px/1 Inter,sans-serif;flex:none;width:22px;text-align:center;color:var(--gold)}
.content-disclosure[open]>summary:after{content:'−'}
.content-disclosure>summary:focus-visible,.partner-info>summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.content-disclosure>.disclosure-body{padding:20px 0 30px}
.content-disclosure>.developer-grid-compact{margin-top:0}
.interaction-experience{padding-block:60px;border-top:1px solid var(--line)}
.interaction-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:32px 60px;align-items:end;margin-bottom:38px}
.interaction-heading h2{margin-top:18px}
.interaction-heading>p{max-width:55ch;color:var(--muted);margin:0}
.interaction-grid,.service-partners-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 32px}
.interaction-card,.key-contractor{display:flex;flex-direction:column;align-items:flex-start;min-width:0;margin:0;padding:22px 0 26px;border-top:1px solid var(--gold)}
.interaction-logo{display:flex;align-items:center;width:100%;height:84px;margin:0 0 18px}
.interaction-logo img{width:auto;height:auto;max-width:min(100%,230px);max-height:70px;object-fit:contain;object-position:left center}
.logo-dark{background:#17262b;padding:14px 20px;max-width:250px}
.interaction-category,.key-contractor>.partner-specialty{font:400 14px/1.4 Inter,sans-serif;color:var(--muted);margin:0 0 12px}
.interaction-card :is(h3,h4),.key-contractor>h3{font:400 25px/1.3 'Noto Serif Display',Georgia,serif;margin:0 0 16px;overflow-wrap:anywhere}
.interaction-description,.key-contractor>.partner-description{font:400 16px/1.65 Inter,sans-serif;color:var(--text);margin:0 0 22px}
.interaction-site{font-size:15px;line-height:1.5;margin-top:auto;text-underline-offset:4px}
.interaction-note{font-size:14px;line-height:1.5;color:var(--muted);margin:12px 0 0}
.interaction-group+.interaction-group{margin-top:42px}
.interaction-group>h3{font:400 28px/1.3 'Noto Serif Display',Georgia,serif;margin:0 0 22px}
.key-contractor>.text-link{font-size:15px;margin:0 0 16px;min-height:24px}
.partner-info{width:100%;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.partner-info>summary{cursor:pointer;list-style:none;font:400 15px/1.5 Inter,sans-serif;display:flex;justify-content:space-between;gap:20px}
.partner-info>summary:after{content:'+';color:var(--gold)}
.partner-info[open]>summary:after{content:'−'}
.partner-info>div{padding-top:14px;font-size:15px}
.partner-info p{font-size:15px;margin:0 0 14px}
.partner-contact{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}
.partner-contact span{font-size:14px;color:var(--muted)}
.key-contractor .partner-contacts{padding-top:10px;font-style:normal}
@supports(grid-template-rows:subgrid){
 .interaction-grid,.service-partners-grid{row-gap:0}
 .interaction-card,.key-contractor{display:grid;grid-template-rows:subgrid;grid-row:span 6;row-gap:0;margin-bottom:32px}
 .interaction-card>.interaction-logo,.key-contractor>.interaction-logo{grid-row:1}
 .interaction-card>.interaction-category,.key-contractor>.partner-specialty{grid-row:2}
 .interaction-card>:is(h3,h4),.key-contractor>h3{grid-row:3}
 .interaction-card>.interaction-description,.key-contractor>.partner-description{grid-row:4}
 .interaction-card>.interaction-site,.key-contractor>.text-link{grid-row:5;margin-top:0}
 .interaction-card>.interaction-note,.key-contractor>.partner-info{grid-row:6;margin-top:16px}
}
@media(max-width:900px){.interaction-heading{grid-template-columns:1fr;gap:16px}.interaction-grid,.service-partners-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.interaction-grid,.service-partners-grid{grid-template-columns:minmax(0,1fr);gap:28px}.interaction-card,.key-contractor{display:flex;margin-bottom:0}.content-disclosure>summary{font-size:16px;gap:12px}.interaction-experience{padding-block:42px}.interaction-group>h3{font-size:25px}.key-contractor>.text-link{margin-top:0}.interaction-card>.interaction-logo,.key-contractor>.interaction-logo{width:100%}}
.phase-details{margin-top:12px;font-size:15px;line-height:1.6}
.phase-details>summary{cursor:pointer;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
.phase-details[open]>summary{margin-bottom:12px}
.phase-details p{font-size:15px}
#team-more .team-grid{margin-top:0}
@media(min-width:681px){#team-more .team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.interaction-logo img{width:100%;height:70px;max-width:230px;object-fit:contain;object-position:left center}
.text-wordmark{font:500 29px/1.2 Inter,sans-serif;color:#1d2c37;letter-spacing:-.03em}

/* Show the full-resolution Inteco mark without its outer white padding. */
#developer-inteco .developer-logo{height:110px;overflow:hidden;display:flex;align-items:center;justify-content:flex-start;background:#fff}
#developer-inteco .developer-logo img{width:290px;max-width:100%;height:auto;max-height:none;flex:none}

/* Every expandable directory follows the same overview/detail pattern. */
.experience-disclosure.content-disclosure>summary{border:0;background:none;flex-wrap:nowrap;padding:18px 0}
.experience-disclosure.content-disclosure>summary:after{margin-left:0}
:is(.team-experience,.phase-details,.news-details)>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;list-style:none;text-decoration:none;font:400 15px/1.5 Inter,sans-serif}
:is(.team-experience,.phase-details,.news-details)>summary::-webkit-details-marker{display:none}
:is(.team-experience,.phase-details,.news-details)>summary:after{content:'+';flex:none;color:var(--gold)}
:is(.team-experience,.phase-details,.news-details)[open]>summary:after{content:'−'}

/* The overview is separated by space; disclosures need no stacked rules. */
.content-disclosure{border:0;margin-top:24px}
.content-disclosure>summary,.experience-disclosure.content-disclosure>summary{border:0;background:var(--ivory);padding:16px 20px;min-height:60px}
.content-disclosure>summary:hover,.experience-disclosure.content-disclosure>summary:hover{background:#eee9df}
.content-disclosure[open]>.disclosure-body{padding-top:32px}
#experience{border-bottom:0}
#experience .experience-group-nav{border:0;padding-bottom:0}
#experience .experience-group+.experience-group{border:0;margin-top:72px;padding-top:0}
#experience .experience-card{border-bottom:0;padding-bottom:12px}
#experience .team-project-attribution{border:0;padding-top:4px}
#experience .project-advantages-preview li{border:0;padding-bottom:0}
#experience .experience-source{margin-top:40px}
.interaction-experience .interaction-card{border:0;padding-top:0;margin-bottom:40px}
.interaction-card>.partner-info{grid-row:6;align-self:start;margin-top:16px;border:0;padding-top:0}
.interaction-card .partner-contacts{font-style:normal}
.anchor-alias{display:block;height:0}
@media(max-width:680px){
 #experience .experience-group+.experience-group{margin-top:48px}
 .content-disclosure>summary,.experience-disclosure.content-disclosure>summary{padding:15px 16px}
 .interaction-experience .interaction-card{margin-bottom:0}
}

/* One action per contact; mobile portraits keep the head and upper body. */
.request-grid .request-buttons{gap:0}
@media(max-width:768px){
 .team-grid .portrait-photo img{object-fit:contain;object-position:center top;transform:scale(1.55);transform-origin:50% 0}
 .ecard-content{overflow:hidden}
 .ecard-portrait{width:min(100%,280px);height:300px;aspect-ratio:auto;object-fit:cover;object-position:50% 0}
}
@media(max-width:680px){
 .interaction-card>.interaction-logo-empty{display:none}
}

/* Text-only partner directory, grouped by field of work. */
#contractor-experience .interaction-featured-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 32px}
#contractor-experience .interaction-group{min-width:0;margin:0}
#contractor-experience .interaction-group>h3{font:500 14px/1.5 Inter,sans-serif;color:var(--muted);margin:0 0 14px}
#contractor-experience .interaction-featured-groups .interaction-grid{display:block}
#contractor-experience .interaction-card{display:flex;flex-direction:column;gap:0;grid-row:auto;min-width:0;margin:0;padding:0;border:0}
#contractor-experience .interaction-card>h4{font:400 26px/1.3 'Noto Serif Display',Georgia,serif;margin:0 0 14px;overflow-wrap:anywhere}
#contractor-experience .interaction-description{margin:0 0 16px}
#contractor-experience .interaction-site{margin-top:0;align-self:flex-start}
#contractor-experience .partner-info{margin-top:16px}
#contractor-experience .interaction-all-groups{display:grid;gap:40px}
#contractor-experience .interaction-all-groups .interaction-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
#contractor-experience .interaction-all-groups .interaction-group>h3{font-size:18px;color:var(--ink);margin-bottom:22px}

/* People lead the portfolio; project titles are the single text entry point. */
#experience .case-title-arrow{display:inline;font-family:Inter,sans-serif;font-size:.7em;white-space:nowrap}
#experience h4 a{display:block;border:0;text-decoration:none}
#experience h4 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
#experience h4 a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
#experience .project-card-heading{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:baseline;column-gap:14px;width:100%;min-width:0}
#experience .project-card-heading>.experience-index{margin:0;white-space:nowrap}
#experience .project-card-heading>a{min-width:0}
@supports(grid-template-rows:subgrid){
 #experience .experience-card{grid-row:span 7}
 #experience .experience-card>.project-card-heading{grid-row:3;margin:0 0 16px}
 #experience .experience-card>.project-address{grid-row:4}
 #experience .experience-card>.project-developer{grid-row:5}
 #experience .experience-card>.project-advantages-preview{grid-row:6}
 #experience .experience-card>.project-work-summary{grid-row:7}
}
#news.news-compact{padding-block:24px 48px;border:0}
#news-more{margin:0}
#news-more>.disclosure-body{padding-bottom:0}
#news-more .news-item:first-child{border-top:0;padding-top:0}
@media(max-width:680px){#experience .experience-card{grid-row:auto}}
@media(min-width:901px){
 #contractor-experience .interaction-featured-groups .interaction-group{display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:0}
}
@media(max-width:900px){
 #contractor-experience .interaction-featured-groups,#contractor-experience .interaction-all-groups .interaction-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
 #contractor-experience .interaction-featured-groups,#contractor-experience .interaction-all-groups .interaction-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 #contractor-experience .interaction-card>h4{font-size:25px}
}

/* Compact booklet and news disclosures, 29 September 2026. */
.booklet-matrix .booklet-format{display:flex;flex-direction:column;grid-row:auto;gap:0}
.booklet-matrix .booklet-format>h3,.booklet-matrix .booklet-format>p,.booklet-matrix .booklet-format>.booklet-edition{grid-row:auto;width:100%}
.booklet-matrix .booklet-format>.booklet-edition{margin-top:auto}
.booklet-more{margin-top:26px}
.booklet-more>.booklet-full-grid{display:grid;padding-bottom:0;row-gap:32px}
.booklet-full-grid .booklet-format{border-top:1px solid var(--line);padding-top:20px}
.booklet-full-grid .booklet-edition{margin-top:4px}
#news.news-compact{padding-block:30px 56px}
#news.news-compact h2{margin:0 0 18px}
#news .news-item{display:block;padding:0;border-top:1px solid var(--line)}
#news .news-item:last-child{border-bottom:1px solid var(--line)}
#news .news-entry>summary{display:grid;grid-template-columns:150px minmax(0,1fr) 26px;align-items:center;gap:24px;list-style:none;cursor:pointer;min-height:62px;padding:13px 0}
#news .news-entry>summary::-webkit-details-marker{display:none}
#news .news-entry>summary time{font-size:14px;color:#536071;white-space:nowrap}
#news .news-entry>summary h3{min-width:0;max-width:none;margin:0;font-size:clamp(17px,1.6vw,21px);line-height:1.35;font-weight:600}
#news .news-entry-symbol{justify-self:end;color:var(--gold);font-size:23px;line-height:1}
#news .news-entry-symbol:before{content:'+'}
#news .news-entry[open] .news-entry-symbol:before{content:'−'}
#news .news-entry>summary:hover h3{text-decoration:underline;text-underline-offset:4px}
#news .news-entry>summary:focus-visible,.booklet-more>summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
#news .news-entry-body{padding:4px 50px 30px 174px;max-width:950px}
#news .news-entry-body>.news-announcement{margin:0 0 12px}
#news .news-entry-body>.news-body{padding-top:10px}
@media(max-width:680px){#news .news-entry>summary{grid-template-columns:minmax(0,1fr) 24px;gap:4px 12px;padding:16px 0}#news .news-entry>summary time{grid-column:1;grid-row:1}#news .news-entry>summary h3{grid-column:1;grid-row:2}#news .news-entry-symbol{grid-column:2;grid-row:1/3}#news .news-entry-body{padding:0 0 24px}}
@media print{.booklet-more:not([open]),#news .news-entry:not([open]){break-inside:avoid}#news .news-entry>summary{min-height:0}}

/* Two featured short booklets and lighter news titles. */
.booklet-matrix .booklet-featured{grid-template-columns:repeat(2,minmax(0,1fr))}
#news .news-entry>summary h3{font-size:16px;line-height:1.45;font-weight:400;letter-spacing:0}
@media(max-width:680px){.booklet-matrix .booklet-featured{grid-template-columns:minmax(0,1fr)}#news .news-entry>summary h3{font-size:15px}}

/* Contractor cards: one grid logic per category, equal rows and aligned actions. */
#contractor-experience .interaction-featured-groups{align-items:stretch;gap:32px}
#contractor-experience .interaction-featured-groups .interaction-group{display:flex;flex-direction:column;grid-row:auto;min-width:0;border-top:1px solid var(--gold);padding-top:16px}
#contractor-experience .interaction-featured-groups .interaction-group>h3{min-height:2.8em;margin-bottom:12px}
#contractor-experience .interaction-featured-groups .interaction-grid{display:flex;flex:1}
#contractor-experience .interaction-featured-groups .interaction-card{width:100%}
#contractor-experience .interaction-all-groups{gap:34px}
#contractor-experience .interaction-all-groups .interaction-group{min-width:0;border-top:1px solid var(--line);padding-top:18px}
#contractor-experience .interaction-all-groups .interaction-group>h3{margin:0 0 16px;font:500 16px/1.4 Inter,sans-serif}
#contractor-experience .interaction-all-groups .interaction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px;align-items:stretch}
#contractor-experience .interaction-all-groups .interaction-grid:has(> .interaction-card:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}
#contractor-experience .interaction-all-groups .interaction-grid>.interaction-card:only-child{grid-column:1/-1}
#contractor-experience .interaction-card{display:flex;flex-direction:column;height:100%;min-width:0;margin:0;padding:0;border:0}
#contractor-experience .interaction-all-groups .interaction-card{border-top:1px solid var(--line);padding-top:16px;min-height:180px}
#contractor-experience .interaction-card>h4{min-height:2.6em;margin:0 0 10px;font-size:clamp(21px,2vw,24px);line-height:1.3}
#contractor-experience .interaction-card>.interaction-description{margin:0 0 12px;line-height:1.55;max-width:58ch}
#contractor-experience .interaction-card>.interaction-site{margin-top:auto;align-self:flex-start;overflow-wrap:anywhere}
#contractor-experience .interaction-card>.partner-info{margin-top:12px;align-self:stretch}
#contractor-experience .interaction-card:not(:has(> .interaction-site))>.partner-info{margin-top:auto}
#contractor-experience .interaction-all-groups .interaction-card:only-child{min-height:0}
@media(max-width:900px){#contractor-experience .interaction-featured-groups{grid-template-columns:repeat(2,minmax(0,1fr))}#contractor-experience .interaction-all-groups .interaction-grid:has(> .interaction-card:nth-child(3):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}#contractor-experience .interaction-all-groups .interaction-grid:has(> .interaction-card:nth-child(3):last-child)>.interaction-card:last-child{grid-column:1/-1}}
@media(max-width:680px){#contractor-experience .interaction-featured-groups,#contractor-experience .interaction-all-groups .interaction-grid,#contractor-experience .interaction-all-groups .interaction-grid:has(> .interaction-card:nth-child(3):last-child){grid-template-columns:minmax(0,1fr)}#contractor-experience .interaction-all-groups .interaction-grid>.interaction-card{grid-column:auto!important}#contractor-experience .interaction-featured-groups .interaction-group>h3,#contractor-experience .interaction-card>h4{min-height:0}#contractor-experience .interaction-all-groups .interaction-card{min-height:0}}

/* Hero: calm crossfade with readable captions and manual controls. */
.hero-carousel{isolation:isolate;min-height:520px}
.hero-carousel .hero-slides,.hero-carousel .hero-slide{position:absolute;inset:0}
.hero-carousel .hero-slide{opacity:0;visibility:hidden;transition:opacity 1.1s ease,visibility 1.1s;z-index:0}
.hero-carousel .hero-slide.is-active{opacity:1;visibility:visible;z-index:1}
.hero-carousel .hero-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-carousel .hero-caption{z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:70px 116px 24px 28px;pointer-events:none}
.hero-carousel .hero-caption a{pointer-events:auto;color:white;text-decoration:none}
.hero-carousel .hero-caption-title{font-size:15px;font-weight:500;line-height:1.4}
.hero-carousel .hero-caption small{font:400 11px/1.4 Inter,sans-serif;color:#e8eaed}
.hero-carousel .hero-caption a:hover{text-decoration:underline;text-underline-offset:3px}
.hero-carousel-controls{position:absolute;right:18px;bottom:18px;z-index:3;display:flex;align-items:center;gap:4px;color:white;background:rgba(11,27,46,.67);border-radius:30px;padding:3px 6px}
.hero-carousel-controls button{width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:white;cursor:pointer;font:400 25px/1 Inter,sans-serif}
.hero-carousel-controls button:hover{background:rgba(255,255,255,.18)}
.hero-carousel-controls button:focus-visible{outline:2px solid white;outline-offset:1px}
.hero-count{min-width:40px;text-align:center;font:400 11px/1 Inter,sans-serif}
@media(max-width:740px){.hero-carousel{min-height:0}.hero-carousel .hero-caption{padding:68px 112px 16px 18px}.hero-carousel-controls{right:9px;bottom:10px}.hero-carousel .hero-slide img{object-position:center}}
@media(prefers-reduced-motion:reduce){.hero-carousel .hero-slide{transition:none}}

/* Home refinements from the September editorial review. */
#navigation .nav-contact{display:inline-flex;align-items:center;min-height:42px;padding:9px 16px;border:1px solid var(--gold);background:var(--ivory);font-weight:600;white-space:nowrap;transition:background .2s}
#navigation .nav-contact:hover{background:#eadfc8}
.home-service-direction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
.home-service-direction-item{min-width:0;display:flex;flex-direction:column}
.home-service-direction-item>.home-service-direction-card{flex:1;display:flex;flex-direction:column;gap:0}
.home-service-direction-item .home-service-direction-card figure{width:100%;aspect-ratio:1.55;margin-bottom:16px}
.home-service-direction-item .home-service-direction-card img{width:100%;height:100%;object-fit:cover}
.home-service-direction-item .home-service-direction-copy{display:flex;flex-direction:column;flex:1;min-height:136px}
.home-service-direction-item .home-service-direction-arrow{margin-top:auto}
.home-service-direction-item>.image-credit-card{align-self:flex-start;margin:8px 0 0;font-size:11px}
#business-services .business-services-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:42px;margin-bottom:38px}
#business-services .business-services-copy{max-width:500px}
#business-services .business-services-copy h2{margin:14px 0 20px}
#business-services .business-services-copy p:not(.eyebrow){font-size:17px;line-height:1.6;margin-bottom:22px}
#business-services .business-services-feature{width:100%;max-width:none;margin:0}
#business-services .business-services-feature img{width:100%;height:340px;aspect-ratio:auto;object-fit:cover}
#business-services .business-services-feature figcaption{font-size:12px;padding-top:8px}
#business-services .business-services-feature .image-credit{display:inline;margin-left:8px}
#business-services .business-services-grid{align-items:stretch}
.digital-work{display:grid;grid-template-columns:minmax(230px,.65fr) minmax(0,1.35fr);gap:44px;align-items:start}
.digital-work-heading h3{font:400 clamp(25px,2.6vw,34px)/1.2 'Noto Serif Display',Georgia,serif;margin:14px 0}
.digital-work-heading>p:not(.eyebrow){max-width:34ch;margin:0 0 16px}
.digital-capabilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.digital-capabilities article{border-top:1px solid var(--gold);padding-top:15px;min-width:0}
.digital-capabilities h4{font:500 17px/1.35 Inter,sans-serif;margin:0 0 10px}
.digital-capabilities p{font-size:15px;line-height:1.55;margin:0}
.team-contact-quick{display:flex;align-items:center;gap:7px;flex-wrap:nowrap;min-width:0}
.team-contact-quick>a[href^="tel:"]{font-size:14px;white-space:nowrap}
.team-contact-quick .messenger-links{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:5px;margin:0;min-height:0}
.team-contact-quick .messenger-links a{min-width:29px;min-height:29px;padding:5px 4px;font-size:11px;text-align:center}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.developer-project-more{margin:2px 0 14px}
.developer-project-more>summary{list-style:none;cursor:pointer;display:inline-flex;gap:12px;align-items:center;font-size:13px;color:var(--blue);padding:4px 0}
.developer-project-more>summary::-webkit-details-marker{display:none}
.developer-project-more>summary:after{content:'+';color:var(--gold);font-size:18px;line-height:1}
.developer-project-more[open]>summary:after{content:'−'}
.developer-project-more .developer-project-list{margin-top:8px}
footer.wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 56px;align-items:start}
footer .footer-brand{grid-column:1;grid-row:1}
footer .footer-links{grid-column:2;grid-row:1}
footer .company-details{grid-column:1/-1;grid-row:2;display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;padding:14px 0 0;border-top:1px solid var(--line);font-size:12px;line-height:1.5}
footer .company-details>strong{font-weight:600;white-space:nowrap}
footer .company-details>span{color:#536071}
footer .company-details>a{text-decoration:underline;text-underline-offset:3px}
footer .company-info-more{margin-left:auto}
footer .company-info-more>summary{cursor:pointer;list-style:none;white-space:nowrap}
footer .company-info-more>summary::-webkit-details-marker{display:none}
footer .company-info-more>summary:after{content:' +';color:var(--gold);font-size:16px}
footer .company-info-more[open]>summary:after{content:' −'}
footer .company-info-body{flex-basis:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 30px;padding:18px 0 8px}
footer .company-info-body p{margin:0;font-size:12px}
@media(max-width:900px){#business-services .business-services-intro{grid-template-columns:minmax(0,1fr);gap:24px}.digital-work{grid-template-columns:minmax(0,1fr);gap:24px}.team-contact-quick{flex-wrap:wrap}}
@media(max-width:680px){.home-service-direction-grid{grid-template-columns:minmax(0,1fr);gap:28px}.home-service-direction-item .home-service-direction-copy{min-height:0}.digital-capabilities{grid-template-columns:minmax(0,1fr)}footer.wrap{grid-template-columns:minmax(0,1fr);gap:22px}footer .footer-brand,footer .footer-links,footer .company-details{grid-column:1;grid-row:auto}footer .company-info-more{margin-left:0;width:100%}footer .company-info-body{grid-template-columns:minmax(0,1fr)}}

/* Expanded developer lists remain inside their card without disrupting the grid. */
@supports(grid-template-rows:subgrid){
 .developer-card{display:flex;flex-direction:column;grid-row:auto}
 .developer-card>.developer-logo{flex:none}
 .developer-card>.developer-project-list{padding-bottom:0}
 .developer-card>.developer-logo-note{margin-top:auto}
}
footer .company-info-more[open]{flex-basis:100%;margin-left:0}
footer .company-info-more[open]>.company-info-body{width:100%}

/* September review: photo credits sit with images, and service cards stay compact. */
.home-service-direction-item>figure{width:100%;margin:0 0 16px}
.home-service-direction-image-link{display:block;width:100%;overflow:hidden;background:var(--ivory)}
.home-service-direction-image-link img{display:block;width:100%;aspect-ratio:1.55;object-fit:cover;transition:transform .35s ease}
.home-service-direction-image-link:hover img{transform:scale(1.025)}
.home-service-direction-item>figure>.image-credit-card{display:block;min-height:20px;margin:7px 0 0;color:#657181;font-size:11px;line-height:1.4}
.home-service-direction-item>.home-service-direction-card{border-top:0;padding-top:0}
.home-service-direction-copy{min-height:0!important}
#business-services-more{margin:0;padding:0;border-top:1px solid var(--gold)}
#business-services-more>summary{min-height:80px;margin:0;padding:18px 0;background:transparent;border:0;font:400 20px/1.4 'Noto Serif Display',Georgia,serif}
#business-services-more>summary:hover{background:transparent;color:#765a2d}
#business-services-more>summary small{font:400 13px/1.5 Inter,sans-serif;color:#657181}
#business-services-more[open]>.disclosure-body{padding-top:0}
#business-services-more .business-services-grid{margin-top:0;padding-top:0}
#business-services-more .business-services-grid article{border-top:1px solid var(--line)}
#business-services .business-services-grid{margin-top:28px}

/* Fewer rules in the operating approach: the hierarchy comes from spacing. */
.principles{padding-top:64px;padding-bottom:70px}
.principles .principle-grid{gap:18px}
.principles .principle-grid article{border:0;background:var(--ivory);padding:22px 24px 24px}
.principles .principle-grid article p{margin-top:10px}
.principles .digital-work{border:0;background:#f7f7f4;margin-top:18px;padding:24px;gap:30px}
.principles .digital-work-heading h3{font-size:clamp(22px,2vw,27px);max-width:none;margin:8px 0 10px}
.principles .digital-work-heading>p:not(.eyebrow){font-size:14px;line-height:1.5;margin:0 0 10px}
.principles .digital-work-heading>.text-link{font-size:13px;text-decoration:none}
.principles .digital-capabilities{gap:12px 20px}
.principles .digital-capabilities article{border:0;padding:0}
.principles .digital-capabilities h4{font-size:15px;margin:0 0 3px}
.principles .digital-capabilities p{font-size:13px;line-height:1.45}

/* Contact links read as one compact contact block, with an underline on hover. */
.team-contact{gap:3px}
.team-contact>a{min-height:32px;text-decoration:none;border:0}
.team-contact .team-contact-email{font-weight:500}
.team-contact .team-contact-quick{min-height:34px}
.team-contact .team-contact-quick>a[href^="tel:"]{text-decoration:none}
.team-contact .team-contact-card,.team-contact .team-contact-save{font-size:14px;color:#536071}
.team-contact a:hover,.request-person a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.request-person{gap:3px}
.request-person a{padding:2px 0;text-decoration:none;border:0}
.request-person a[href^="mailto:"]{font-weight:500}
.request-person a[href^="/team/"]{font-size:14px;color:#536071}
@media(max-width:900px){.principles .digital-work{grid-template-columns:minmax(0,1fr)}.principles .digital-capabilities{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.home-service-direction-image-link img{aspect-ratio:1.45}.principles{padding:48px 0}.principles .principle-grid{gap:12px}.principles .digital-work{padding:20px;margin-top:12px}}
@media(max-width:460px){.principles .digital-capabilities{grid-template-columns:minmax(0,1fr)}}

/* Partner details expand as independent full-width rows, so neighbours never stretch. */
#contractor-experience .interaction-featured-groups,
#contractor-experience .interaction-all-groups{display:block}
#contractor-experience .interaction-featured-groups .interaction-group,
#contractor-experience .interaction-all-groups .interaction-group{display:grid;grid-template-columns:190px minmax(0,1fr);gap:0 28px;padding:20px 0;border-top:1px solid var(--line)}
#contractor-experience .interaction-featured-groups .interaction-group>h3,
#contractor-experience .interaction-all-groups .interaction-group>h3{grid-column:1;grid-row:1;margin:4px 0 0;min-height:0;font:500 13px/1.5 Inter,sans-serif;color:#586574}
#contractor-experience .interaction-featured-groups .interaction-grid,
#contractor-experience .interaction-all-groups .interaction-grid,
#contractor-experience .interaction-all-groups .interaction-grid:has(> .interaction-card:nth-child(3):last-child){grid-column:2;grid-row:1;display:block}
#contractor-experience .interaction-card,
#contractor-experience .interaction-featured-groups .interaction-card,
#contractor-experience .interaction-all-groups .interaction-card{display:grid;grid-template-columns:minmax(160px,.85fr) minmax(0,1.5fr) minmax(150px,.75fr);gap:10px 24px;align-items:start;width:100%;height:auto;min-height:0;margin:0;padding:0 0 16px;border:0}
#contractor-experience .interaction-grid>.interaction-card+.interaction-card{border-top:1px solid var(--line);padding-top:18px}
#contractor-experience .interaction-card>h4{grid-column:1;grid-row:1;min-height:0;margin:0;font-size:22px}
#contractor-experience .interaction-card>.interaction-description{grid-column:2;grid-row:1;margin:2px 0 0;max-width:none}
#contractor-experience .interaction-card>.interaction-site{grid-column:3;grid-row:1;margin:3px 0 0;align-self:start}
#contractor-experience .interaction-card>.partner-info,
#contractor-experience .interaction-card:not(:has(> .interaction-site))>.partner-info{grid-column:2/-1;grid-row:2;margin:0;padding:0;border:0;align-self:start}
#contractor-experience .partner-info>summary{justify-content:flex-start;gap:12px;font-size:14px}
#contractor-experience .partner-info>div{max-width:72ch;padding:14px 0 3px}
footer .company-cards{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 24px;padding-top:4px}
footer .company-cards a{font-weight:500;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:3px}
footer .company-cards a:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){
 #contractor-experience .interaction-featured-groups .interaction-group,#contractor-experience .interaction-all-groups .interaction-group{grid-template-columns:140px minmax(0,1fr);gap:18px}
 #contractor-experience .interaction-card,#contractor-experience .interaction-featured-groups .interaction-card,#contractor-experience .interaction-all-groups .interaction-card{grid-template-columns:minmax(140px,.8fr) minmax(0,1.4fr)}
 #contractor-experience .interaction-card>.interaction-site{grid-column:1;grid-row:2}
 #contractor-experience .interaction-card>.partner-info,#contractor-experience .interaction-card:not(:has(> .interaction-site))>.partner-info{grid-column:2;grid-row:2}
}
@media(max-width:680px){
 #contractor-experience .interaction-featured-groups .interaction-group,#contractor-experience .interaction-all-groups .interaction-group{display:block;padding:20px 0}
 #contractor-experience .interaction-featured-groups .interaction-group>h3,#contractor-experience .interaction-all-groups .interaction-group>h3{margin:0 0 12px}
 #contractor-experience .interaction-card,#contractor-experience .interaction-featured-groups .interaction-card,#contractor-experience .interaction-all-groups .interaction-card{display:flex;flex-direction:column;gap:8px;padding-bottom:12px}
 #contractor-experience .interaction-card>.interaction-description{margin:0}
 #contractor-experience .interaction-card>.partner-info,#contractor-experience .interaction-card:not(:has(> .interaction-site))>.partner-info{width:100%;margin-top:4px}
}

/* The navigation action follows the same quiet text treatment as its neighbours. */
#navigation .nav-contact{display:inline-flex;align-items:center;gap:6px;min-height:0;padding:0;border:0;background:none;font-weight:500;white-space:nowrap}
#navigation .nav-contact span{color:#9a783f;font-size:16px;line-height:1}
#navigation .nav-contact:hover{background:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.home-service-direction-item>figure>.image-credit-card{margin-top:5px;margin-bottom:0}

/* Both service directions use the same crop, independent of image dimensions. */
.home-service-direction-item>.home-service-direction-card{flex:0 0 auto}
.home-service-direction-item>figure .home-service-direction-image-link{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden}
.home-service-direction-item>figure .home-service-direction-image-link img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
.home-service-direction-item>figure>.image-credit-card{min-height:20px}
#parking-management .parking-grid .parking-card:nth-child(3) .parking-address a{white-space:nowrap}
footer .company-ever-quick{flex-basis:100%;font-size:12px;color:#536071}
footer .company-ever-details{grid-column:1/-1;padding-top:8px;border-top:1px solid var(--line)}
@media(max-width:680px){.home-service-direction-item>figure .home-service-direction-image-link{aspect-ratio:16/9}#parking-management .parking-grid .parking-card:nth-child(3) .parking-address a{white-space:normal}}

/* Constrain the business image to its column and align the four overview cards. */
#business-services .business-services-intro{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:36px}
#business-services .business-services-copy,#business-services .business-services-feature{min-width:0;max-width:100%}
#business-services .business-services-feature{overflow:hidden}
#business-services .business-services-feature img{display:block;width:100%;height:auto;max-height:340px;aspect-ratio:16/10;object-fit:cover}
#business-services .business-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 32px}
#business-services .business-services-grid article{min-width:0}
#approach .method-grid{align-items:stretch}
#approach .method-grid article{display:flex;flex-direction:column;min-width:0}
#approach .method-grid h3{min-height:2.55em}
#approach .method-grid article>p{flex:1}
#approach .method-grid article>a{align-self:flex-start;margin-top:16px}
@media(max-width:900px){#business-services .business-services-intro{grid-template-columns:minmax(0,1fr)}#business-services .business-services-feature{width:100%}}
@media(max-width:620px){#business-services .business-services-grid{grid-template-columns:minmax(0,1fr)}#approach .method-grid h3{min-height:0}}


/* 30 September: ownership standard and service layouts. */
.ownership-standard{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(24px,4vw,64px);margin:32px 0 24px;padding:clamp(28px,4vw,52px);background:#0b1b2e;color:#fff}
.ownership-standard .eyebrow{color:#d0b77f;margin:0 0 22px}
.ownership-standard h3{font:400 clamp(28px,3.1vw,43px)/1.2 'Noto Serif Display',Georgia,serif;margin:0;max-width:17ch}
.ownership-standard-copy{max-width:66ch}
.ownership-standard-copy p{font-size:17px;line-height:1.7;margin:0 0 16px;color:#f3f0e8}
.ownership-standard-link{display:inline-block;margin-top:10px;color:#e3ca94;font-size:14px;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}
.ownership-standard-link:hover{color:#fff}
.team-projects{margin:22px 0 2px;padding:20px;background:#f5f2eb;font-size:14px;line-height:1.55}
.team-projects .team-projects-title{font-weight:600;margin:0 0 14px}
.team-projects p{margin:0 0 12px}
.team-projects p:last-child{margin-bottom:0}
.team-projects a{text-decoration-thickness:1px;text-underline-offset:3px}

/* Independent soft cards replace the old subgrid rules and long horizontal lines. */
.services .service-list{gap:24px;align-items:stretch}
.services .service-list>.service-card{display:flex;flex-direction:column;grid-row:auto;grid-template-rows:none;min-width:0;margin:0;padding:0 0 22px;border:0;background:#f7f5f0;overflow:hidden}
.services .service-card>.service-photo{display:block;grid-row:auto;grid-template-rows:none;width:100%;height:auto;aspect-ratio:auto;margin:0;overflow:visible}
.services .service-card .service-photo>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.services .service-card .service-photo>figcaption{padding:9px 22px 0;margin:0;min-height:31px}
.services .service-card>.service-card-copy{display:flex;flex-direction:column;grid-row:auto;grid-template-rows:none;width:100%;flex:1;padding:22px 22px 0}
.services .service-card-copy>.index{grid-row:auto;margin:0 0 10px}
.services .service-card-copy>h3{grid-row:auto;min-height:0;margin:0 0 14px}
.services .service-card-copy>.service-copy-body{grid-row:auto;margin:0 0 20px}
.services .service-card-copy>.service-copy-actions{grid-row:auto;margin-top:auto;margin-bottom:0;padding-top:8px}
.services .service-card>.service-provider-summary{display:grid;grid-row:auto;align-self:stretch;margin:20px 22px 0;padding:17px 0 0;border-top:1px solid #ded8cc;gap:8px}
.services .service-card .service-copy-body p+p{margin-top:15px}
.services .service-card .service-photo:has(figcaption) + .service-card-copy{padding-top:17px}
.resident-services .resident-service-menu{gap:16px}
.resident-services .resident-service-menu li{border:0;background:#f7f5f0;padding:20px 22px;min-height:150px}
.business-services .business-services-grid article,
#business-services-more .business-services-grid article{background:#fff;border:0;padding:22px 24px;min-height:170px}
#business-services .business-services-grid{gap:18px}
#business-services-more{border:0;margin-top:20px}
#business-services-more>summary{border-top:1px solid var(--gold)}
@media(max-width:900px){.ownership-standard{grid-template-columns:minmax(0,1fr)}.ownership-standard h3{max-width:27ch}}
@media(max-width:680px){.services .service-list{gap:20px}.ownership-standard{padding:26px 23px;margin-top:24px}.ownership-standard-copy p{font-size:16px}.services .service-card>.service-card-copy{padding:18px 20px 0}.services .service-card>.service-provider-summary{margin-inline:20px}}

/* Review: a clear reading rhythm on intermediate screens, with the disclosure anchored left. */
.principles .ownership-standard{align-items:start}
.principles .ownership-standard-heading,.principles .ownership-standard-copy{min-width:0}
.principles .ownership-standard-copy p+p{margin-top:18px}
.principles .ownership-standard-link{margin-top:16px}
footer .company-info-more,footer .company-info-more[open]{flex:0 0 100%;margin-left:0;min-width:0}
footer .company-info-more>summary{display:inline-block;max-width:100%;white-space:normal}
@media(max-width:1024px){
 .principles .ownership-standard{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:42px;padding:36px}
 .principles .ownership-standard .eyebrow{margin-bottom:20px}
 .principles .ownership-standard h3{max-width:25ch;margin:0;font-size:clamp(27px,4vw,38px);line-height:1.24}
 .principles .ownership-standard-copy{max-width:68ch}
 .principles .ownership-standard-copy p{margin:0 0 20px;line-height:1.65}
}
@media(max-width:600px){
 .principles .ownership-standard{gap:23px;margin-top:30px;padding:26px 22px}
 .principles .ownership-standard h3{font-size:clamp(26px,7vw,34px)}
 .principles .ownership-standard-copy p{font-size:16px;line-height:1.6}
 .principles .digital-capabilities{grid-template-columns:minmax(0,1fr);gap:18px}
}

/* Dialogue and trust are substantive parts of the operating model. */
.resident-services .owner-dialogue,
#business-services .business-owner-dialogue{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:28px 48px;align-items:start;width:100%;box-sizing:border-box;padding:32px 36px;border:0;background:#f7f5f0}
.resident-services .owner-dialogue{margin-top:42px}
#business-services .business-owner-dialogue{margin-top:28px;background:#fff}
.owner-dialogue h3,.resident-services .owner-dialogue h3{grid-row:auto;max-width:none;margin:0;font:400 clamp(23px,2.3vw,30px)/1.25 'Noto Serif Display',Georgia,serif}
.owner-dialogue-copy{min-width:0;max-width:78ch}
.owner-dialogue-copy p{margin:0;font-size:16px;line-height:1.65;color:var(--text)}
.owner-dialogue-copy p+p{margin-top:18px}
.principles .data-trust{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:28px 48px;align-items:start;margin:20px 0 24px;padding:34px 38px;background:#f7f5f0}
.data-trust-heading,.data-trust-copy{min-width:0}
.data-trust .eyebrow{margin:0 0 18px;color:#765a2d}
.data-trust h3{max-width:19ch;margin:0;font:400 clamp(25px,2.6vw,34px)/1.24 'Noto Serif Display',Georgia,serif}
.data-trust-copy p{margin:0;font-size:16px;line-height:1.65;color:var(--text)}
.data-trust-copy p+p{margin-top:18px}
@media(max-width:1024px){
 .resident-services .owner-dialogue,#business-services .business-owner-dialogue,.principles .data-trust{grid-template-columns:minmax(0,1fr);gap:22px}
 .owner-dialogue-copy,.data-trust-copy{max-width:82ch}
 .data-trust h3{max-width:28ch}
}
@media(max-width:600px){
 .resident-services .owner-dialogue,#business-services .business-owner-dialogue,.principles .data-trust{padding:26px 22px}
 .owner-dialogue-copy p,.data-trust-copy p{font-size:15px;line-height:1.6}
}

/* The broader promise remains legible in the first-screen column. */
.hero h1{font-size:clamp(42px,4vw,58px);line-height:1.08}
.hero h1 .hero-property-line{display:block;font-size:1em;letter-spacing:inherit;white-space:nowrap}
@media(max-width:740px){.hero h1{font-size:clamp(30px,8.7vw,46px)}.hero h1 .hero-property-line{font-size:1em}}

/* One contact treatment and one disclosure rhythm for the team cards. */
.team-grid-columns-three>article>.team-contact{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%;min-width:0;margin:0}
.team-grid-columns-three .team-contact-email{display:block;width:100%;min-height:32px;padding-bottom:5px;border-bottom:1px solid var(--gold);text-decoration:none;overflow-wrap:anywhere}
.team-grid-columns-three .team-contact-quick{display:flex;flex-wrap:wrap;gap:7px;min-height:32px}
.team-grid-columns-three>article>.team-experience{min-width:0}
.team-grid-columns-three>article>.team-experience>summary{min-height:36px}

/* Independent partner rows must measure their own wrapped headings. */
#contractor-experience .interaction-card,
#contractor-experience .interaction-featured-groups .interaction-card,
#contractor-experience .interaction-all-groups .interaction-card{grid-template-rows:auto;grid-auto-rows:auto;grid-row:auto;row-gap:12px}
#contractor-experience .interaction-grid>.interaction-card+.interaction-card{margin-top:0;padding-top:18px}

/* Photo-led booklet previews, October 2026 */
.booklet-cover-preview{display:block;width:100%;height:clamp(180px,24vw,315px);overflow:hidden;margin:8px 0 18px;background:#f7f5ef}
.booklet-cover-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .45s ease}
.booklet-cover-preview:hover img{transform:scale(1.025)}
.booklet-cover-preview-phone img{object-fit:contain;background:#0c1c2e}
.booklet-matrix .booklet-featured .booklet-format>.booklet-cover-preview{width:100%}
@media(max-width:680px){.booklet-cover-preview{height:min(56vw,310px)}}
