/* Shared layout for the portfolio's dedicated pages. */
.multipage nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}
.multipage .page-intro{padding-block:65px 55px;max-width:1440px}
.page-intro h1,.coaching-page h1,.social-section h1{font-size:clamp(2.8rem,5.8vw,5.3rem);font-weight:500;line-height:1.05;letter-spacing:-.06em;margin:16px 0 25px;max-width:1000px}
.page-lead{max-width:760px;font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.8;color:#52605a}
.back-link{display:inline-block;margin-bottom:38px;font-size:14px;text-decoration:none}
.text-link,.quiet-link{display:inline-block;font-size:15px;line-height:1.5;text-underline-offset:6px;font-weight:600}
.text-link{padding:10px 0;min-height:44px}.quiet-link{font-weight:400;margin-top:14px}
.selected-projects{padding-block:55px 70px}.selected-projects .section-heading{align-items:end;gap:30px}
.project-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 26px}
.project-tile{display:block;text-decoration:none;min-width:0;border-bottom:1px solid #cfd4cd;padding-bottom:26px}
.tile-visual{height:240px;background:#dfe5df;border-radius:12px;overflow:hidden;padding:22px 22px 0;transition:background .25s}
.tile-visual img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;border-radius:7px 7px 0 0;box-shadow:0 8px 28px #1c292e25;transition:transform .35s}
.tile-mit-agents .tile-visual{background:#ead6c3}.tile-mit-agents .tile-visual img{object-fit:contain;box-shadow:none}
.tile-gymdocu-coach .tile-visual{background:#cad7d2}.tile-gymdocu-gestionale .tile-visual{background:#d2e1e8}.tile-applicaba .tile-visual{background:#dce4ce}.tile-lexisflow .tile-visual{background:#e6e1d6}
.tile-body{padding-top:22px}.tile-kind{font-size:12px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 9px;color:#57625a}.tile-body h3{font-size:25px;line-height:1.2;letter-spacing:-.04em;margin:0 0 12px;display:flex;justify-content:space-between;gap:10px}.tile-body h3 span{font-weight:400}.tile-body>p:not(.tile-kind){font-size:15px;line-height:1.75;margin:0 0 18px;color:#52605a}.tile-state{font-size:12px;color:#466052;display:inline-block;border-left:2px solid #7e9987;padding-left:9px}
.project-tile:hover .tile-visual img{transform:translateY(-5px)}.project-tile:focus-visible{outline:2px solid #2f6656;outline-offset:7px;border-radius:12px}
.document-preview{height:100%;display:flex;flex-direction:column;justify-content:center;gap:15px}.document-preview span,.document-preview small{font-size:12px}.document-preview strong{font-size:32px;font-weight:500;letter-spacing:-.05em}
.catalog{padding-bottom:75px}.catalog .project-index{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 30px}.catalog .tile-visual{height:320px}
.home-bridge{display:grid;grid-template-columns:1fr 1fr;column-gap:70px;padding-block:65px;border-top:1px solid #cfd4cd;border-bottom:1px solid #cfd4cd}.home-bridge>.section-kicker{grid-column:1/-1}.home-bridge h2{font-size:clamp(2.4rem,4.2vw,3.8rem);font-weight:500;letter-spacing:-.055em;line-height:1.1;margin:14px 0 25px}.home-bridge>div>p{line-height:1.85;max-width:560px;color:#52605a}.home-bridge .quiet-link{display:block}
.page-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:70px}.page-cta h2{font-size:clamp(1.9rem,3vw,3rem);font-weight:500;letter-spacing:-.05em;margin:0;line-height:1.2}.page-cta a{white-space:nowrap}
.page-footer{border-top:1px solid #cfd4cd;display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:30px 45px;font-size:13px;color:#52605a}.page-footer p{margin:0;line-height:1.7}.page-footer>a:last-child{padding-block:10px;text-decoration:none;white-space:nowrap}
.project-detail>.work-card{max-width:1200px;margin:0 auto}.project-detail .work-card .project-cover.actual-cover{display:grid;grid-template-columns:.7fr 1.3fr;gap:35px;padding:35px;align-items:center;min-height:0}.project-detail .project-cover.actual-cover .cover-text{margin:0}.project-detail .project-cover.actual-cover .cover-text h3{font-size:clamp(2.2rem,4vw,3.8rem)}
.project-detail>.development-card{padding:40px;max-width:1200px;margin:0 auto}.project-detail .development-card>h3{font-size:clamp(2.8rem,5vw,4.8rem)}.project-detail .development-card>p{max-width:900px}.project-detail .development-details{max-width:900px}.project-detail .development-no{display:none}
.detail-extra{max-width:760px;margin:45px auto 15px}.detail-extra figure{margin:0}.detail-extra figcaption,.screen-provenance{font-size:14px;line-height:1.75;color:#52605a;margin-top:15px}.screen-provenance{max-width:760px;margin-inline:auto;margin-bottom:40px}
.project-next{display:flex;justify-content:space-between;gap:30px;padding-block:50px;font-size:15px}.project-next a{padding-block:10px;min-height:44px;text-underline-offset:5px}
.path-connections{padding-block:35px 60px}.path-connections>h2{font-size:clamp(2rem,3.6vw,3.2rem);font-weight:500;letter-spacing:-.05em}.path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.path-grid article{border-top:1px solid #b7c2b8;padding-top:20px}.path-grid span{font-size:12px;color:#647167}.path-grid h3{font-size:28px;font-weight:500;letter-spacing:-.035em}.path-grid p{font-size:16px;line-height:1.85;color:#52605a}.path-grid a{font-size:14px;text-underline-offset:5px}
.related-note{padding-block:25px;font-size:16px;line-height:1.8}.coaching-page .iron-section{padding-top:65px}.coaching-page .section-heading{align-items:center}.social-section> .section-heading{align-items:center}
.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-bottom:85px}.contact-options>section{padding:35px;border:1px solid #cdd6cd;border-radius:14px}.contact-options h2{font-size:30px;line-height:1.2;font-weight:500;letter-spacing:-.045em}.contact-options p{line-height:1.8}.contact-options .contact-note{font-size:14px;color:#626c65}.iron-contact{background:#e5e9e1}
@media(min-width:901px) and (max-width:1120px){.multipage .header-inner{gap:12px}.multipage nav{gap:15px}.multipage nav a{font-size:12px}.multipage .brand{font-size:14px}}
@media(max-width:900px){.project-index{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-projects .project-tile:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:25px}.catalog .tile-visual{height:260px}.home-bridge{column-gap:30px}.path-grid{grid-template-columns:1fr;gap:20px}.path-grid h3{margin:12px 0}.project-detail .work-card .project-cover.actual-cover{grid-template-columns:1fr;gap:25px;padding:25px}.project-detail>.development-card{padding:28px}}
@media(max-width:620px){.multipage .page-intro{padding-block:35px}.page-intro h1,.coaching-page h1,.social-section h1{font-size:clamp(2.7rem,11.8vw,4rem)}.page-lead{font-size:16px}.back-link{margin-bottom:24px}.selected-projects{padding-block:35px 45px}.selected-projects .section-heading{display:block;margin-bottom:25px}.project-index,.catalog .project-index{grid-template-columns:1fr;gap:35px}.selected-projects .project-tile:last-child{display:block;grid-column:auto}.tile-visual,.catalog .tile-visual{height:245px;padding:18px 18px 0}.tile-body h3{font-size:25px}.home-bridge{grid-template-columns:1fr;padding-block:40px}.home-bridge h2{margin-bottom:8px}.home-bridge>div>p{font-size:16px}.page-cta{align-items:start;flex-direction:column;gap:15px;padding-block:40px}.page-footer{flex-wrap:wrap;align-items:start;gap:18px;padding-block:25px 35px}.page-footer .brand{flex-basis:100%}.page-footer p{font-size:12px}.project-detail>.development-card{padding:24px 18px}.project-detail .work-card .project-cover.actual-cover{padding:24px 18px}.project-next{flex-direction:column;gap:8px;padding-block:35px}.project-next a:last-child{align-self:flex-end}.contact-options{grid-template-columns:1fr;gap:20px;padding-bottom:45px}.contact-options>section{padding:25px}.contact-options h2{font-size:27px}.coaching-page .iron-section{padding-top:35px}.path-connections{padding-bottom:25px}}
@media(prefers-reduced-motion:reduce){.project-tile:hover .tile-visual img{transform:none}.tile-visual img{transition:none}}
@media print{.multipage main{display:block!important}.site-header,.page-footer,.page-cta,.project-next,.screen-dialog,.nav-toggle,.spark-canvas,#motion-toggle{display:none!important}.multipage main *{opacity:1!important;transform:none!important;animation:none!important;box-shadow:none!important}.wrap{max-width:none;padding:0}.page-intro{padding-block:10px!important}.page-intro h1{font-size:30pt}.project-index{grid-template-columns:1fr 1fr}.tile-visual{height:160px}.scroll-chapter{height:auto!important;min-height:0!important}.chapter-pin{position:static!important;height:auto!important;min-height:0!important}details:not([open])>*:not(summary){display:block!important}a{color:inherit}.project-tile,.path-grid article{break-inside:avoid}}

/* MIT: supplied demonstration renders, grouped by operational flow. */
.mit-renders{margin:55px 0 30px;padding-top:42px;border-top:1px solid #cbd3cb}.mit-render-heading{max-width:820px;margin-bottom:30px}.mit-render-heading h2{font-size:clamp(2rem,3.8vw,3.5rem);font-weight:500;line-height:1.12;letter-spacing:-.045em;margin:15px 0 22px}.mit-render-heading>p,.mit-render-secondary>p{font-size:1rem;line-height:1.8;color:#52605a}.mit-render-heading .mit-render-note{font-size:.875rem;line-height:1.7;border-left:2px solid #8aa393;padding-left:16px;margin-top:24px}
.mit-render-gallery{display:block}.mit-render-gallery.is-enhanced{display:grid;grid-template-columns:minmax(200px,.65fr) minmax(0,1.35fr);gap:36px;align-items:start}.mit-render-controls{display:flex;flex-direction:column;gap:10px}.mit-render-controls[hidden],.mit-render-figure[hidden]{display:none!important}.mit-render-controls button{display:flex;gap:13px;align-items:center;min-height:56px;text-align:left;padding:15px 18px;background:transparent;border:1px solid #c4cec5;border-radius:8px;font:inherit;font-size:.9375rem;line-height:1.45;color:var(--ink);cursor:pointer}.mit-render-controls button span{font-size:.8125rem;opacity:.65;font-variant-numeric:tabular-nums}.mit-render-controls button[aria-pressed=true]{background:#203e33;border-color:#203e33;color:white}.mit-render-controls button:hover{border-color:#203e33}.mit-render-controls button:focus-visible{outline:2px solid #2f6656;outline-offset:3px}
.mit-render-panels{min-width:0}.mit-render-figure{margin:0 0 28px}.mit-render-figure .screen-open{background:#e8eeea}.mit-render-figure .screen-open img{height:520px;max-height:65vh;width:100%;object-fit:contain;padding:15px;transform:none}.mit-render-figure .screen-open span{font-size:.875rem;min-height:44px}.mit-render-figure figcaption{padding:18px 0 0;min-height:120px}.mit-render-figure figcaption strong{font-size:1.0625rem;font-weight:600;letter-spacing:-.02em}.mit-render-figure figcaption p{font-size:1rem;line-height:1.75;margin:8px 0 0;color:#52605a}
.mit-render-more{border-top:1px solid #cbd3cb;border-bottom:1px solid #cbd3cb;margin:0 0 22px}.mit-render-more summary{cursor:pointer;padding:22px 0;font-size:1rem;line-height:1.7;font-weight:600}.mit-render-more summary span{display:inline-block;font-size:.875rem;font-weight:400;color:#657469;margin-left:12px}.mit-render-secondary{padding:8px 0 20px}.mit-render-secondary>h3{font-size:1.75rem;letter-spacing:-.03em;font-weight:500;margin:10px 0}.mit-render-secondary>p{margin-bottom:28px;max-width:740px}.mit-earlier-audit .audit-gallery{margin-top:18px}
@media(max-width:700px){.mit-renders{margin-top:38px;padding-top:30px}.mit-render-gallery.is-enhanced{grid-template-columns:1fr;gap:18px}.mit-render-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mit-render-controls button{padding:12px 10px;gap:8px;font-size:.875rem;min-height:60px}.mit-render-controls button:last-child:nth-child(odd){grid-column:1/-1}.mit-render-figure .screen-open img{height:440px;max-height:62vh;padding:10px}.mit-render-figure figcaption{min-height:0}.mit-render-more summary span{display:block;margin-left:0}.mit-render-heading h2{font-size:2.25rem}}
@media print{.mit-render-controls{display:none!important}.mit-render-gallery{display:block}.mit-render-figure[hidden]{display:block!important}.mit-render-figure .screen-open img{height:350px;max-height:none}.mit-render-figure{break-inside:avoid}}
