.design-showcase{padding-top:95px;padding-bottom:115px}.design-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:55px}.design-intro h2{margin:18px 0 0;font-size:39px}.design-intro>p{font-size:12px;line-height:2;color:var(--ink);max-width:400px;margin:0 0 4px;justify-self:end}.design-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 40px}.design-card{display:block;min-width:0}.design-card-image{position:relative;overflow:hidden;aspect-ratio:4/5;background:#dcd9d2}.design-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.design-card:hover img{transform:scale(1.025)}.design-card-caption{display:flex;align-items:start;justify-content:space-between;gap:20px;padding-top:20px}.design-card-caption h3{font-weight:400;font-size:17px;line-height:1.5;margin:0 0 7px}.design-card-caption p{font-size:12px;color:var(--muted);letter-spacing:.6px;margin:0}.design-card-caption>span{font-size:20px;font-weight:400}.design-note{font-size:12px;line-height:1.8;color:var(--muted);margin:45px 0 0;padding-top:20px;border-top:1px solid var(--line)}
.project-page .header{position:fixed;height:80px;color:var(--ink);background:var(--paper);border-bottom:1px solid var(--line)}.project-page main{padding-top:80px}.project-page .navigation a[href='/#interior-design']{opacity:1;border-bottom:1px solid currentColor}.project-intro{max-width:1450px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;padding:45px 65px 65px;min-height:calc(100svh - 80px);align-items:center}.project-intro-copy{padding:20px 0;max-width:440px}.project-back{font-size:12px;letter-spacing:1px;color:var(--muted);display:inline-block;margin-bottom:32px}.project-intro h1{font-weight:400;font-size:clamp(32px,3.3vw,54px);line-height:1.15;letter-spacing:-1.7px;margin:20px 0 26px;text-wrap:balance}.project-lead{font-size:12px;line-height:2;color:var(--ink);max-width:390px}.project-facts{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:32px 0;font-size:12px}.project-facts dt{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.project-facts dd{margin:0;line-height:1.8}.chapter-nav{display:flex;flex-wrap:wrap;gap:18px;border-top:1px solid var(--line);padding-top:21px;margin-top:30px}.chapter-nav a{font-size:12px;color:var(--ink);line-height:2}.chapter-nav a:hover{color:var(--ink)}.chapter-nav span{font-size:12px;color:var(--muted);margin-right:6px}.project-cover{margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.project-cover img{width:100%;height:calc(100svh - 215px);max-height:850px;min-height:500px;object-fit:contain;background:#d9d6cd}.project-cover figcaption{font-size:12px;color:var(--muted);line-height:1.8;margin-top:9px}
.project-chapter{border-top:1px solid var(--line);padding:70px 65px 75px;min-height:calc(100svh - 80px)}.chapter-inner{max-width:1320px;margin:auto}.chapter-heading{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;margin-bottom:34px;align-items:end}.chapter-heading h2{font-size:32px;line-height:1.3;margin:16px 0 0;text-wrap:balance}.chapter-heading>p{max-width:620px;font-size:12px;line-height:2;color:var(--ink);margin:0}.project-plan{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center}.plan-facts{font-size:12px;line-height:2;color:var(--ink);max-width:340px}.plan-facts strong{display:block;font-size:12px;font-weight:500;color:var(--ink);letter-spacing:.3px;margin-top:22px}.plan-figure{margin:0;background:#f7f6f2;padding:22px;display:flex;flex-direction:column;align-items:center;min-width:0}.plan-figure a{display:block;width:100%;text-align:center}.plan-figure img{max-width:100%;width:auto;height:auto;max-height:550px;object-fit:contain}.plan-figure figcaption{display:flex;justify-content:space-between;width:100%;gap:14px;font-size:12px;color:var(--muted);line-height:1.8;margin-top:16px}.plan-figure figcaption a{font-size:12px;width:auto;text-align:right;color:var(--ink)}.project-details{display:grid;grid-template-columns:1fr 1fr;gap:40px}.project-details figure{margin:0;min-width:0}.project-details img{display:block;width:100%;height:480px;object-fit:contain;background:#d9d6cd}.project-details figcaption{font-size:12px;color:var(--ink);line-height:1.9;margin-top:15px;max-width:520px}.project-details figcaption strong{display:block;font-size:12px;font-weight:500;color:var(--ink);margin-bottom:4px}.project-next{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:48px;border-top:1px solid var(--line);padding-top:25px}.project-next .quiet-link{gap:20px}.project-next>a:last-child{font-size:12px}.project-source-note{font-size:12px;color:var(--muted);line-height:1.8;margin-top:25px}.project-footer{padding-bottom:85px}
@media(min-width:1600px){.project-intro{padding-top:60px;padding-bottom:75px}.project-details img{height:580px}.project-plan .plan-figure img{max-height:650px}}
@media(max-width:1000px){.design-intro{gap:40px}.design-grid{gap:45px 25px}.project-intro{gap:35px;padding:35px 40px 55px}.project-intro h1{font-size:38px}.project-chapter{padding:55px 40px}.chapter-heading,.project-plan{gap:35px}.project-details{gap:25px}.project-details img{height:430px}.project-facts{gap:15px}}
@media(max-width:700px){.design-showcase{padding-top:65px;padding-bottom:70px}.design-intro{grid-template-columns:1fr;gap:18px;margin-bottom:32px}.design-intro h2{font-size:30px}.design-intro>p{justify-self:start;font-size:12px}.design-grid{grid-template-columns:1fr;gap:40px}.design-card-image{aspect-ratio:4/5}.design-card-caption{padding-top:15px}.design-card-caption h3{font-size:16px}.design-note{margin-top:30px}.project-page .header{height:70px}.project-page main{padding-top:70px}.project-page .navigation{top:70px}.project-intro{display:flex;flex-direction:column;gap:22px;padding:28px 25px 45px;min-height:0;align-items:stretch}.project-intro-copy{max-width:none;padding:0}.project-back{margin-bottom:18px}.project-intro h1{font-size:36px;letter-spacing:-1px;margin:16px 0 20px}.project-lead{font-size:12px;max-width:none}.project-facts{margin:25px 0;gap:18px}.chapter-nav{margin-top:23px;gap:14px}.chapter-nav a{font-size:12px}.project-cover img{height:auto;min-height:0;max-height:none;width:100%;background:none}.project-cover figcaption{font-size:12px}.project-chapter{padding:45px 25px;min-height:0}.chapter-heading,.project-plan{grid-template-columns:1fr;gap:23px}.chapter-heading h2{font-size:28px}.chapter-heading>p{font-size:12px}.plan-facts{max-width:none;font-size:12px}.plan-figure{padding:14px}.plan-figure img{max-height:500px}.plan-figure figcaption{font-size:12px}.project-details{grid-template-columns:1fr;gap:30px}.project-details img{height:auto;max-height:none;background:none}.project-details figcaption{font-size:12px}.project-next{align-items:start;flex-direction:column;gap:15px;margin-top:35px}.project-next .quiet-link{font-size:12px}.project-source-note{font-size:12px}.project-footer{padding-bottom:85px}}
@media(prefers-reduced-motion:reduce){.design-card:hover img{transform:none}}
.concept-card{display:grid;grid-template-columns:1.35fr 1fr;gap:50px;align-items:center}.concept-card-image{display:block;min-width:0}.concept-card-image img{display:block;width:100%;height:auto}.concept-card-copy h3{font-size:27px;line-height:1.35;letter-spacing:-.6px;font-weight:400;margin:16px 0 20px}.concept-card-copy>p:not(.overline){font-size:12px;line-height:2;color:var(--ink);max-width:350px}.concept-card-copy .quiet-link span{font-size:17px!important}.concept-page .navigation a[href='/#interior-design']{border-bottom:0}.concept-page .navigation a[href='/#projects']{border-bottom:1px solid currentColor}.concept-page .project-intro{gap:45px}.concept-page .project-intro h1{font-size:clamp(32px,3.1vw,45px)}.concept-author{margin:24px 0;font-size:12px;line-height:2;color:var(--ink)}.concept-page .project-cover img{height:auto;min-height:0;max-height:none;background:none}.concept-views img{height:auto;max-height:none;background:none}.concept-hall{margin:0}.concept-hall img{display:block;width:100%;height:auto}.concept-hall figcaption{font-size:12px;line-height:1.9;color:var(--muted);margin-top:16px;max-width:700px}.concept-numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;border-top:1px solid var(--line);padding-top:28px;margin:40px 0 24px}.concept-numbers dt{font-size:12px;line-height:1.7;letter-spacing:.5px;color:var(--muted)}.concept-numbers dd{font-size:27px;margin:12px 0 0}.concept-page .project-source-note{font-size:12px;line-height:1.9;max-width:820px}.project-tabs{flex-wrap:wrap}
.concept-list{display:grid;gap:65px}.concept-list .concept-card+.concept-card{border-top:1px solid var(--line);padding-top:65px}.hotel-detail-copy{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin:38px 0 0}.hotel-detail-copy h3{font-weight:400;font-size:19px;line-height:1.5;margin:0 0 15px}.hotel-detail-copy p{font-size:12px;line-height:2;color:var(--ink);margin:0;max-width:500px}@media(max-width:700px){.concept-list{gap:40px}.concept-list .concept-card+.concept-card{padding-top:40px}.hotel-detail-copy{grid-template-columns:1fr;gap:26px;margin-top:28px}.hotel-detail-copy h3{font-size:18px}.hotel-detail-copy p{font-size:12px}}
@media(max-width:1000px){.concept-card{gap:30px}.concept-card-copy h3{font-size:23px}.concept-page .project-intro{gap:30px}}
@media(max-width:700px){.concept-card{grid-template-columns:1fr;gap:23px}.concept-card-copy h3{font-size:25px}.concept-card-copy>p:not(.overline){max-width:none;font-size:12px}.project-tabs{gap:16px}.project-tabs button{font-size:12px}.concept-page .project-intro{gap:24px}.concept-author{font-size:12px;margin:20px 0}.concept-numbers{grid-template-columns:1fr 1fr;gap:25px 20px}.concept-numbers dd{font-size:24px}.concept-hall figcaption,.concept-page .project-source-note{font-size:12px}}
.company-profile{border-top:1px solid var(--line)}.company-heading{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:start}.company-heading h2{margin:20px 0 0;font-size:39px}.company-story p{font-size:13px;line-height:2;color:var(--ink);margin:0 0 22px}.company-facts{display:grid;grid-template-columns:1fr 1fr;gap:45px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;margin:42px 0}.company-facts dt{font-size:12px;letter-spacing:1px;color:var(--muted);line-height:1.8}.company-facts dd{font-size:31px;letter-spacing:-.6px;margin:14px 0 0}.company-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.company-columns h3{font-size:16px;font-weight:400;line-height:1.5;margin:0 0 18px}.company-columns p{font-size:12px;line-height:2;color:var(--ink);margin:0}.company-portfolio{display:flex;align-items:center;justify-content:space-between;gap:60px;margin-top:45px}.company-portfolio p{font-size:12px;line-height:1.9;color:var(--muted);max-width:480px}.company-portfolio .quiet-link{white-space:nowrap}.company-portfolio .quiet-link span{font-size:12px}.pdf-concept-numbers dd{font-size:24px;line-height:1.45}.pdf-concept-page .project-cover img{max-height:620px;object-fit:contain}
@media(max-width:1000px){.company-heading{gap:35px}.company-columns{gap:25px}.company-portfolio{gap:30px}.pdf-concept-numbers dd{font-size:20px}}
@media(max-width:700px){.company-heading{grid-template-columns:1fr;gap:26px}.company-heading h2{font-size:30px}.company-story p{font-size:12px}.company-facts{gap:25px;margin:30px 0;padding:25px 0}.company-facts dd{font-size:24px}.company-facts dt{font-size:12px}.company-columns{grid-template-columns:1fr;gap:28px}.company-columns h3{font-size:16px;margin-bottom:12px}.company-portfolio{align-items:start;flex-direction:column;gap:15px;margin-top:30px}.company-portfolio p{margin:0}.pdf-concept-numbers dd{font-size:20px}.pdf-concept-page .project-cover img{max-height:none}}
.project-lead,.concept-author,.chapter-heading>p,.plan-facts,.project-details figcaption,.concept-card-copy>p:not(.overline),.hotel-detail-copy p,.company-story p,.company-columns p,.design-intro>p{font-size:15px;color:var(--ink)}.project-cover figcaption,.plan-figure figcaption,.concept-hall figcaption,.project-source-note,.concept-page .project-source-note,.design-note,.company-portfolio p{font-size:13px;color:var(--ink)}.project-facts dt,.company-facts dt,.concept-numbers dt,.chapter-nav a,.project-back,.design-card-caption p{font-size:12px;color:var(--ink)}.project-facts dd{font-size:14px}.project-details figcaption strong,.plan-facts strong{font-size:14px}.plan-figure figcaption a{font-size:13px}.project-intro-copy{max-width:470px}.project-lead{max-width:440px}.company-portfolio{gap:35px}.company-portfolio .quiet-link{white-space:normal}.design-card-caption p{line-height:1.8}.project-tabs button{font-size:14px}.project-next>a:last-child{font-size:14px}.concept-page .project-intro{padding-top:55px;padding-bottom:65px}.chapter-nav{gap:14px}
@media(max-width:700px){.project-lead,.concept-author,.chapter-heading>p,.plan-facts,.project-details figcaption,.concept-card-copy>p:not(.overline),.hotel-detail-copy p,.company-story p,.company-columns p,.design-intro>p{font-size:15px}.project-cover figcaption,.plan-figure figcaption,.concept-hall figcaption,.project-source-note,.concept-page .project-source-note,.design-note,.company-portfolio p{font-size:13px}.project-facts dt,.chapter-nav a,.project-back,.company-facts dt,.concept-numbers dt,.design-card-caption p{font-size:12px}.project-facts dd{font-size:14px}.project-tabs button{font-size:14px}.concept-page .project-intro{padding-top:28px;padding-bottom:45px}.company-portfolio{gap:15px}.plan-figure figcaption{flex-wrap:wrap;gap:8px}}
/* Project stages and supervision are separate services. */
.company-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:0 0 42px;padding:0 0 35px;border-bottom:1px solid var(--line)}.company-services h3{font-size:16px;font-weight:500;line-height:1.5;margin:0 0 15px}.company-services p{font-size:15px;line-height:1.9;margin:0;color:var(--ink)}.company-services a{text-decoration:underline;text-underline-offset:3px}@media(max-width:1000px){.company-services{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}}@media(max-width:700px){.company-services{grid-template-columns:1fr;gap:26px}}

.villa-plans{overflow-anchor:none}
.villa-plan-tabs{position:sticky;top:80px;z-index:3;background:var(--paper);display:flex;flex-wrap:wrap;gap:28px;border-bottom:1px solid var(--line);margin:36px 0 40px}
.villa-plan-tabs button{border:0;background:transparent;color:var(--ink);padding:12px 0 17px;font:inherit;font-size:14px;cursor:pointer;border-bottom:1px solid transparent;margin-bottom:-1px}
.villa-plan-tabs button[aria-selected=true]{border-bottom-color:var(--ink)}
.villa-plan-panel[hidden]{display:none!important}
.villa-plan-panel{display:grid;grid-template-columns:280px minmax(0,1fr);gap:45px;align-items:start}
.villa-plan-copy{padding-top:24px}
.villa-plan-copy h3{font-size:26px;line-height:1.4;font-weight:400;letter-spacing:-.5px;margin:20px 0}
.villa-plan-copy>p:not(.overline){font-size:15px;line-height:1.9;margin:0 0 25px}
.villa-plan-copy .quiet-link{font-size:13px}
.villa-plan-figure{margin:0;min-width:0}
.villa-plan-figure a{display:block}
.villa-plan-figure img{display:block;width:100%;height:auto;background:#f5f2ea}
.villa-plan-figure figcaption{font-size:13px;line-height:1.8;margin-top:12px}
.villa-plans .project-source-note{max-width:850px;margin-top:35px}
.concept-page .chapter-nav{flex-wrap:wrap;gap:15px 20px}
@media(max-width:1000px){.villa-plan-panel{grid-template-columns:1fr;gap:25px}.villa-plan-copy{padding-top:0;max-width:650px}.villa-plan-copy h3{font-size:24px}.villa-plan-tabs{gap:24px}}
@media(max-width:700px){.villa-plan-tabs{top:70px;gap:8px 24px;margin:25px 0 30px}.villa-plan-tabs button{font-size:14px;padding:10px 0 13px}.villa-plan-copy h3{font-size:23px}.villa-plan-copy>p:not(.overline){margin-bottom:20px}.villa-plan-figure figcaption{font-size:12px}}

/* Architecture projects grouped by the way each building is used. */
#projects .architecture-category-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px;margin:42px 0 10px}
#projects .architecture-category-links>a{display:grid;grid-template-columns:minmax(0,1fr) 22px;gap:10px 22px;align-items:start;padding:15px 0 24px;border-bottom:1px solid var(--line);color:var(--ink)}
#projects .architecture-category-links strong{font-size:23px;line-height:1.4;letter-spacing:-.5px;font-weight:400}
#projects .architecture-category-links span{font-size:14px;line-height:1.8;color:var(--ink)}
#projects .architecture-category-links svg{grid-column:2;grid-row:1 / span 2;align-self:center;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.2;transition:transform .2s}
#projects .architecture-category-links>a:hover{border-color:var(--ink)}
#projects .architecture-category-links>a:hover svg{transform:translateX(4px)}
#projects .architecture-category{min-width:0}
#projects .architecture-category+.architecture-category{border-top:1px solid var(--line);margin-top:90px;padding-top:60px}
#projects .architecture-category-heading{display:grid;grid-template-columns:.85fr 1.15fr;gap:18px 50px;align-items:start;margin-bottom:45px}
#projects .architecture-category-title{grid-row:1 / span 2;font-size:32px;font-weight:400;line-height:1.35;letter-spacing:-.8px;margin:0;max-width:380px}
#projects .architecture-category-description{font-size:15px;line-height:1.9;margin:0;max-width:610px;color:var(--ink)}
#projects .architecture-type-links{display:flex;flex-wrap:wrap;gap:10px 22px;grid-column:2}
#projects .architecture-type-links a{font-size:13px;line-height:1.8;border-bottom:1px solid var(--line);color:var(--ink)}
#projects .architecture-type-links a:hover{border-color:var(--ink)}
.architecture-category .concept-card-title{font-size:27px;line-height:1.35;letter-spacing:-.6px;font-weight:400;margin:16px 0 20px}
@media(max-width:1000px){#projects .architecture-category-heading{gap:18px 30px}#projects .architecture-category-title{font-size:28px}.architecture-category .concept-card-title{font-size:23px}}
@media(max-width:700px){
  #projects .architecture-category-links{grid-template-columns:1fr;gap:12px;margin-top:28px}
  #projects .architecture-category-links>a{padding:14px 0 20px;gap:8px 20px}
  #projects .architecture-category-links strong{font-size:22px}
  #projects .architecture-category-links span{font-size:13px}
  #projects .architecture-category-heading{grid-template-columns:1fr;gap:18px;margin-bottom:30px}
  #projects .architecture-category-title{grid-row:auto;font-size:27px;max-width:none}
  #projects .architecture-type-links{grid-column:auto;gap:10px 20px}
  #projects .architecture-category+.architecture-category{margin-top:55px;padding-top:40px}
  .architecture-category .concept-card-title{font-size:25px}
}
@media(prefers-reduced-motion:reduce){#projects .architecture-category-links svg{transition:none}#projects .architecture-category-links>a:hover svg{transform:none}}
