/* TIMENTI / 2.3 — final editorial and responsive polish. */
html,body{max-width:100%;overflow-x:hidden;overflow-x:clip}
main,.shell,.project-list,.project-list>*,.project-card,.project-card-link,.product-visual,.project-card-copy,.project-meta,.project-card-title,.technical-content,.technical-content>*,.technical-groups,.technical-group,.technical-group>div,.technical-node,.clean-contact,.contact-methods,.contact-method{min-width:0;max-width:100%}
img,svg,canvas{max-width:100%}
.simple-hero-copy>p,.clean-about>div:nth-child(2)>p:not(.large-copy),.clean-page-intro>p+p,.clean-closing p{font-size:16px;line-height:1.72}
.simple-card .project-card-copy>p,.simple-benefits .benefit-grid p{font-size:15px;line-height:1.72}
.project-title-line{justify-content:flex-start;gap:16px}
.project-title-line>.status{flex:0 0 auto}
.clean-proof .clean-section-head>p{max-width:560px}
.proof-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.proof-strip span{display:inline-flex;align-items:center;min-height:34px;padding:6px 10px;border:1px solid var(--line-strong);border-radius:999px;color:#c8d0da;font-size:12px;line-height:1.4}
.proof-strip span:nth-child(2){border-color:#496453;color:#c1e8d0}
.technical-groups{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.technical-group{border-bottom:1px solid var(--line)}
.technical-group>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:16px;align-items:center;min-height:78px;padding:13px 0}
.technical-group>summary::-webkit-details-marker{display:none}
.technical-group>summary .index{font-size:12px}
.technical-group>summary strong{display:block;font-size:17px;line-height:1.3;letter-spacing:-.015em}
.technical-group>summary small{display:block;margin-top:5px;max-width:610px;color:var(--dim);font-size:13px;line-height:1.55}
.technical-group>summary>span:last-child{font-size:22px;font-weight:300;line-height:1}
.technical-group[open]>summary>span:last-child{transform:rotate(45deg)}
.technical-group>div{padding:0 0 18px 60px}
.technical-group>div>ol{list-style:none;padding:0;margin:0;border-top:1px solid #ffffff0c}
.technical-node>summary{min-height:56px}
.technical-node p{font-size:15px;line-height:1.68;max-width:760px}
.technical-node li strong{font-size:14px}
.technical-node li span{font-size:14px;line-height:1.6}
.technical-status .large-copy{font-size:22px;line-height:1.58}
.discipline-item>summary small,.discipline-body dd{font-size:15px;line-height:1.62}
.contact-note>p{font-size:15px;line-height:1.7}
.project-meta>*{min-width:0}
.project-card,.project-card-link,.product-visual{inline-size:100%}
.mono,.visual-top>span,.phone-top>span,.scan-grid span,.status{max-width:100%}
.visual-top>span,.phone-top>span,.scan-grid span{overflow-wrap:anywhere}
.project-card-title h2,.clean-section-head h2,.technical-group strong,.technical-node strong{overflow-wrap:anywhere}
@media(max-width:760px){
  .simple-card .product-visual.compact{height:236px!important;min-height:236px!important;max-height:236px!important;padding:18px 20px 22px}
  .simple-card .project-card-copy{min-height:178px;padding:22px}
  .simple-card .project-card-title{margin-top:24px}
  .simple-card .project-card-copy>p{font-size:15px;line-height:1.68;margin-top:13px}
  .simple-card .visual-top{padding-bottom:14px}
  .simple-card .visual-top>span{font-size:10px;letter-spacing:.08em}
  .simple-card .visual-disclosure{display:none!important}
  .simple-card .fin-visual-body{padding-top:8px}
  .simple-card .visual-title{font-size:22px;margin-top:5px}
  .simple-card .allocation{height:8px;margin:8px 0}
  .simple-card .action-example{padding:7px 9px;gap:8px}
  .simple-card .action-example .outline-icon{width:28px;height:28px}
  .simple-card .action-example p{display:none}
  .simple-card .visual-foot{display:none!important}
  .simple-card .core-visual-body{padding-block:10px;grid-template-columns:.9fr 1.1fr;gap:12px}
  .simple-card .core-orbit{max-width:112px}
  .simple-card .core-orbit b{font-size:29px}
  .simple-card .core-services span{padding-block:7px;font-size:10px;gap:8px}
  .simple-card .core-services i{font-size:10px}
  .simple-card .visual-commander,.simple-card .visual-plennor{height:236px!important;min-height:236px!important;max-height:236px!important;padding-top:7px}
  .simple-card .visual-commander .phone,.simple-card .visual-plennor .phone{transform:scale(.67);transform-origin:50% 50%;width:190px;margin-top:-2px}
  .simple-card .aist-visual-body{min-height:174px}
  .simple-card .item-render{height:145px}
  .simple-card .item-caption{font-size:10px;margin-top:2px}
  .simple-card .scan-grid{bottom:2px}
  .simple-card .scan-grid span{font-size:9px}
  .simple-card .scan-grid b{font-size:9px;margin-top:2px}
  .project-title-line{gap:10px;align-items:flex-start}
  .project-title-line h1{width:100%}
  .simple-benefits .benefit-grid p{font-size:15px;line-height:1.72}
  .technical-content{gap:32px}
  .technical-group>summary{grid-template-columns:30px minmax(0,1fr) auto;gap:12px;min-height:74px;padding:12px 0}
  .technical-group>summary strong{font-size:16px}
  .technical-group>summary small{font-size:12px;line-height:1.5}
  .technical-group>div{padding:0 0 14px 0}
  .technical-node>summary{grid-template-columns:34px minmax(0,1fr) auto;gap:10px;min-height:55px}
  .technical-node p{font-size:15px}
  .technical-node li span{font-size:14px}
  .clean-proof{gap:26px}
  .proof-strip{margin-top:18px}
}
@media(max-width:360px){
  .simple-card .product-visual.compact{height:228px!important;min-height:228px!important;max-height:228px!important;padding-inline:16px}
  .simple-card .visual-commander,.simple-card .visual-plennor{height:228px!important;min-height:228px!important;max-height:228px!important}
  .simple-card .project-card-copy{padding:20px;min-height:174px}
  .project-meta{align-items:flex-start}
  .project-meta .status{white-space:normal;text-align:left}
}
