/* The portfolio keeps the graphite, silver and champagne visual language. */
.portfolio-intro>p{max-width:690px}.portfolio-section{padding-top:42px}.portfolio-notice{border:1px solid #5a5038;background:#211f1a;padding:20px 24px;margin-bottom:30px;color:#d8d3c5}.portfolio-notice strong{color:var(--gold);font-size:.88rem}.portfolio-notice p{font-size:.88rem;line-height:1.7;margin:8px 0 0}.portfolio-controls{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:30px 0}.portfolio-filters{display:flex;flex-wrap:wrap;gap:9px}.portfolio-filters button{border:1px solid var(--line);background:transparent;color:var(--text);font-size:.8rem;min-height:44px;padding:11px 18px}.portfolio-filters button[aria-pressed=true]{border-color:var(--gold);background:#302a1d;color:var(--gold)}.portfolio-count{margin:0}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.portfolio-card{display:flex;flex-direction:column;border:1px solid var(--line);background:#111920;min-width:0}.portfolio-card-image{position:relative;display:block;width:100%;padding:0;height:230px;background:#17222b;border:0;border-bottom:1px solid var(--line);overflow:hidden;border-radius:0}.portfolio-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease;opacity:.88}.portfolio-card-image:hover img{transform:scale(1.035);opacity:1}.portfolio-image-placeholder{display:flex;height:100%;align-items:center;justify-content:center;padding:25px;color:var(--muted);font-size:.9rem}.portfolio-card-content{display:flex;flex-direction:column;padding:27px;flex:1}.portfolio-badge{font:500 .66rem/1.4 'Segoe UI',Arial,sans-serif;letter-spacing:.045em;border:1px solid #445764;padding:6px 9px;align-self:flex-start;color:#cad8e1;margin-bottom:22px}.portfolio-badge-demo{border-color:#6a5935;color:var(--gold);background:#27251e}.portfolio-card-content .eyebrow{font-size:.61rem;line-height:1.6;margin:0 0 14px}.portfolio-card h3{font-size:1.42rem;line-height:1.3;letter-spacing:-.025em;margin:0 0 14px}.portfolio-card-summary{font-size:.87rem;color:var(--muted);line-height:1.7;margin:0 0 26px;overflow-wrap:anywhere}.portfolio-open{margin-top:auto;background:transparent;padding:8px 0;min-height:44px;color:var(--gold);border:0;text-align:left;font-size:.8rem}.portfolio-empty{padding:45px 24px;text-align:center;border:1px solid var(--line);color:var(--muted)}.portfolio-error{border-color:#946d48}.portfolio-error .actions{margin:18px 0 0}.portfolio-error button{font-size:.82rem}.portfolio-cta{border-top:1px solid var(--line);text-align:center;background:#10171d}.portfolio-cta h2{margin:22px 0}.portfolio-cta p{max-width:600px;margin:0 auto 30px}.project-dialog{max-width:1040px;width:calc(100% - 40px);padding:32px;overflow:auto;overscroll-behavior:contain}.project-dialog-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.project-dialog-head h2{font-size:clamp(1.4rem,2.5vw,2.1rem);letter-spacing:-.025em;margin:12px 0 20px;line-height:1.25;overflow-wrap:anywhere}.project-dialog-head .close{flex-shrink:0}.project-dialog-status{font-size:.75rem;color:var(--gold);margin-bottom:15px}.project-dialog #project-summary{font-size:.92rem;line-height:1.7;max-width:850px;overflow-wrap:anywhere}.project-dialog-notice{border-left:2px solid var(--gold);padding:12px 17px;background:#29251a;font-size:.8rem;color:#d9d2be;line-height:1.6}.project-gallery{margin:24px 0}.project-gallery figure{margin:0}.project-gallery-stage{display:flex;align-items:center;justify-content:center;width:100%;height:min(52vh,530px);min-height:210px;background:#0b1015;border:1px solid #31414e;overflow:hidden}.project-gallery-stage img{width:100%;height:100%;object-fit:contain}.project-gallery-stage p{text-align:center;padding:30px;max-width:470px;color:var(--muted);font-size:.9rem}.project-gallery figcaption{padding:13px 2px;font-size:.78rem;color:var(--muted);line-height:1.6;overflow-wrap:anywhere;min-height:42px}.project-gallery-navigation{display:flex;align-items:center;justify-content:center;gap:22px;margin:5px 0 15px}.project-gallery-navigation button{min-width:46px;min-height:44px;padding:8px;font-size:1.2rem}.project-gallery-navigation p{font-size:.75rem;margin:0}.project-gallery-navigation button:disabled{opacity:.35;cursor:default}.project-thumbnails{display:flex;gap:10px;padding:5px 2px 12px;overflow-x:auto;max-width:100%}.project-thumbnail{padding:3px;flex:0 0 92px;width:92px;height:66px;border:1px solid #344957;background:#0e161d;min-height:44px;display:flex;align-items:center;justify-content:center;color:var(--text);border-radius:0}.project-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}.project-thumbnail[aria-pressed=true]{border:2px solid var(--gold);padding:2px}.project-thumbnail:focus-visible{outline:2px solid #e8d6ad;outline-offset:2px}.project-dialog #project-link{font-size:.85rem}.portfolio-card-image:focus-visible,.portfolio-open:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
@media(max-width:1050px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-card-image{height:220px}}@media(max-width:650px){.portfolio-controls{display:block;margin:23px 0}.portfolio-controls>p{margin-top:18px}.portfolio-filters{gap:7px}.portfolio-filters button{font-size:.75rem;padding:10px 13px}.portfolio-grid{grid-template-columns:1fr;gap:24px}.portfolio-card-image{height:225px}.portfolio-card-content{padding:23px}.portfolio-card h3{font-size:1.55rem}.portfolio-notice{padding:18px}.portfolio-section{padding-top:22px}.project-dialog{width:calc(100% - 20px);padding:20px;max-height:92dvh}.project-dialog-head{gap:15px}.project-dialog-head h2{font-size:1.5rem}.project-gallery-stage{height:37vh;min-height:210px}.project-gallery figcaption{font-size:.75rem}.project-thumbnail{flex-basis:80px;width:80px;height:58px}.portfolio-cta h2{font-size:2.3rem}.project-gallery-navigation{gap:17px}.portfolio-error .actions{gap:10px}.portfolio-error button{width:100%}}
@media(prefers-reduced-motion:reduce){.portfolio-card-image img{transition:none}.portfolio-card-image:hover img{transform:none}}
