/* 005 page proportions: keep readable text and complete content. */
.hero{height:clamp(420px,62vh,620px);min-height:0;max-height:620px}
.section{padding-block:54px}.center-heading{margin-bottom:28px}.fine-rule{height:20px;margin-top:18px}
.philosophy-grid>img{height:270px}.product-card .card-image img{aspect-ratio:1.55}.card-copy{padding:13px 16px 16px}
.space-card .card-image img{aspect-ratio:1.85}.space-grid{row-gap:24px}.space-card h3{margin-top:12px}
.journal-grid .journal-card:first-child img{aspect-ratio:2}.journal-grid{column-gap:45px}
.project-cta{padding:42px 0}.partners{padding-block:26px}.footer-grid{padding-block:36px}
.breadcrumb{padding-block:18px}.page-heading{padding:18px 0 25px}.page-top{padding-bottom:25px}.listing{padding-bottom:42px}
.product-gallery{height:360px}.product-intro{gap:5%}.product-tabs{padding-top:34px}.product-tabs>.prose{padding-bottom:16px}
.case-cover{height:360px}.case-reading{padding-block:26px}.prose img{max-height:380px;object-fit:contain}.prose figure{margin-block:20px}
.about-opening>img,.cooperate-opening>img{height:280px}.about-body{padding-bottom:32px}
.inquiry-form{margin-block:32px 42px;padding:30px 36px}.form-heading{padding-bottom:18px;margin-bottom:20px}.message-form{gap:18px 28px}
.contact-photo{min-height:280px}.related{padding-top:16px}
@media(max-width:1050px){.hero{height:480px}.section{padding-block:40px}.product-gallery{height:320px}.case-cover{height:310px}}
@media(max-width:700px){
 .hero{height:380px;min-height:0;max-height:65svh}.hero-copy{bottom:20%}.hero-copy h2{font-size:30px;line-height:1.5}.hero-copy .eyebrow{margin-bottom:8px}.hero-link{margin-top:10px}.hero-bottom{bottom:8px}
 .section{padding-block:30px}.center-heading{margin-bottom:20px}.fine-rule{height:14px;margin-top:12px}.philosophy-grid{gap:15px}.philosophy-grid>img{height:175px}.philosophy-grid p{margin-bottom:8px}
 .section-heading{margin-bottom:18px}.section-note{margin-bottom:17px}.product-grid{gap:12px}
 .product-card{display:grid;grid-template-columns:34% minmax(0,1fr);align-items:stretch}.product-card .card-image{height:100%;min-height:134px}.product-card .card-image img{height:100%;aspect-ratio:auto;object-fit:cover}.card-copy{padding:12px}.card-copy h3{font-size:18px;line-height:1.5;margin:5px 0}.card-copy h3 a{gap:4px}.card-copy p{font-size:12px;line-height:1.8}.card-copy>small{font-size:10px;line-height:1.5;display:block}
 .product-card .card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
 .space-grid{gap:20px}.space-card .card-image img{aspect-ratio:2.15}.space-card h3{font-size:20px;margin:9px 0 4px}
 .journal-grid .journal-card:first-child img{aspect-ratio:2.15}.journal-grid .journal-card:first-child h3{font-size:21px}.journal-grid .journal-card:not(:first-child){padding-block:14px}
 .strength-grid{gap:18px}.strength-grid article{padding-top:14px}.strength-grid i{margin-bottom:9px}.strength-grid h3{margin-bottom:6px}
 .project-cta{padding:28px 0}.project-cta h2{font-size:25px}.project-cta p{margin:10px auto 16px}.partners{padding-block:22px}.partners>div:first-child{margin-bottom:12px}.footer-grid{padding-block:26px 16px}
 .breadcrumb{padding-block:13px}.page-heading{padding:10px 0 18px}.page-heading>p{margin-top:8px}.page-top{padding-bottom:18px}.filter-nav{margin-bottom:16px}.listing{padding-bottom:28px}
 .product-intro{gap:20px}.product-gallery{height:235px}.product-summary h1{margin-bottom:10px}.product-summary dl{margin-block:14px;padding-block:13px}.product-tabs{padding-top:24px}.tabs{margin-bottom:17px}
 .prose img{max-height:230px}.prose figure{margin-block:16px}.prose h2{margin-top:20px}.case-cover{height:210px}.case-reading{padding-block:18px}.post-nav{margin-block:20px}.related{padding-top:12px}
 .about-opening,.cooperate-opening{gap:18px}.about-opening>img,.cooperate-opening>img{height:180px}.about-body{padding-bottom:22px}.process{padding-top:22px}
 .inquiry-form{padding:20px 16px;margin-block:22px 30px}.form-heading{padding-bottom:14px;margin-bottom:18px}.form-heading h2{margin-bottom:8px}.message-form{gap:14px}.message-form textarea{min-height:100px;height:110px}.contact-photo{min-height:170px}.contact-layout{gap:20px}.map-panel{height:160px}
 .nav-actions .search-toggle,.hamburger{width:44px}
}
@media(max-width:360px){.product-card{grid-template-columns:32% minmax(0,1fr)}.card-copy{padding:10px}.card-copy h3{font-size:17px}.hero-copy h2{font-size:27px}}
