/* i9 v14 — seven equal cards, one consistent expansion ratio. */
.brand{align-items:center}.brand-name{font-size:34px;line-height:1.1;letter-spacing:-.025em}.brand-name small{font-size:12px;letter-spacing:.18em;line-height:1.4;margin-top:8px}.nav{gap:22px}
.portfolio{padding:70px 0 82px;background:#f4f8fb;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.portfolio .section-header{margin-bottom:27px}.portfolio h2{font-size:clamp(2rem,3vw,3rem)}.portfolio-strip{display:flex;gap:12px;height:310px}.portfolio-card{position:relative;flex:1 1 0;min-width:0;padding:0;border:1px solid #cedee8;background:#fff;border-radius:5px;overflow:hidden;text-align:left;cursor:pointer;font-family:inherit;transition:flex .45s ease,border-color .2s ease,box-shadow .2s ease;box-shadow:0 4px 15px #031f3408}.portfolio-card.is-active{flex:2.8 1 0;border-color:#087fb8;box-shadow:0 8px 25px #031f3420}.portfolio-card:focus-visible{outline:3px solid #087fb8;outline-offset:3px}.portfolio-image{position:absolute;inset:0 0 82px;background:#fff;overflow:hidden}.portfolio-image img{width:100%;height:100%;object-fit:contain;padding:12px;transition:transform .45s ease}.portfolio-card.cover .portfolio-image img{object-fit:cover;padding:0}.portfolio-card.is-active.cover img{transform:scale(1.025)}.portfolio-caption{position:absolute;inset:auto 0 0;min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 12px;background:#031f34;color:#fff}.portfolio-category{display:block;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#8fd9f3;margin-bottom:5px}.portfolio-name{display:block;font-size:14px;font-weight:700;line-height:1.25}.portfolio-arrow{font-size:24px;color:#8fd9f3;flex:none}.portfolio-note{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;color:#526d81;margin:16px 0 0}.portfolio-note p{margin:0}.portfolio-note a{font-weight:700;text-decoration:none;color:#065486;white-space:nowrap}
.project-dialog{border:0;padding:0;border-radius:8px;background:#fff;color:#031f34;width:min(1150px,calc(100vw - 36px));max-height:calc(100dvh - 36px);box-shadow:0 20px 90px #0005;overflow:auto}.project-dialog::backdrop{background:#021726e8}.project-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border-bottom:1px solid #d8e3eb}.project-dialog h3{font-size:20px;margin:0;line-height:1.25}.project-dialog-header p{font-size:13px;color:#526d81;margin:5px 0 0}.project-close{border:1px solid #c5d8e5;background:#fff;color:#031f34;min-width:44px;height:44px;font-size:26px;cursor:pointer;border-radius:4px}.project-image-frame{padding:20px;background:#f4f8fb}.project-full{display:block;width:100%;height:auto;max-height:calc(100dvh - 215px);object-fit:contain;background:#fff}.project-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 24px}.project-switch{display:flex;gap:12px;align-items:center}.project-switch button{width:44px;height:44px;border:1px solid #c5d8e5;border-radius:4px;color:#031f34;background:#fff;font-size:24px;cursor:pointer}.project-counter{font-size:13px;color:#526d81;min-width:45px;text-align:center}.project-original{font-size:13px;color:#065486;font-weight:700;text-decoration:none}.project-dialog button:focus-visible,.project-original:focus-visible{outline:3px solid #087fb8;outline-offset:3px}
@media(max-width:980px){.brand-name{font-size:30px}.nav{gap:16px}.portfolio-name{font-size:15px}.portfolio-caption{padding:13px 12px}.portfolio-arrow{font-size:20px}}
@media(max-width:680px){.brand-name{font-size:26px}.brand-name small{font-size:10px;letter-spacing:.14em}.portfolio{padding:48px 0}.portfolio .section-header{display:block}.portfolio .section-lead{margin-top:16px}.portfolio-strip{height:275px;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px}.portfolio-card,.portfolio-card.is-active{flex:0 0 82%;scroll-snap-align:start;transition:none}.portfolio-name{font-size:17px}.portfolio-note{display:block;font-size:12px}.portfolio-note a{display:inline-block;margin-top:10px}.project-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.project-dialog-header{padding:14px;gap:12px}.project-dialog h3{font-size:17px}.project-image-frame{padding:10px}.project-dialog-footer{padding:12px 14px;flex-wrap:wrap;gap:12px}.project-full{max-height:calc(100dvh - 245px)}.project-original{font-size:12px}}
@media(max-width:380px){.brand-name{font-size:23px}.brand{gap:10px}.brand img{width:54px;height:74px}.portfolio-card,.portfolio-card.is-active{flex-basis:89%}}
@media(prefers-reduced-motion:reduce){.portfolio-card,.portfolio-card img{transition:none!important}}

@media(min-width:1101px){.portfolio-card.is-active .portfolio-name{font-size:17px}.portfolio-arrow{font-size:18px}.portfolio-category{font-size:9px;letter-spacing:.08em}}
@media(min-width:681px) and (max-width:1100px){.portfolio-strip{overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.portfolio-card,.portfolio-card.is-active{flex:0 0 34%;scroll-snap-align:start;transition:none}}

/* v15: image viewer without a white frame, fitted to the viewport. */
.project-dialog{position:fixed;inset:0;margin:0;padding:0;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0;background:transparent;color:#fff;box-shadow:none;overflow:hidden}
.project-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:8px;padding:18px 24px}
.project-dialog::backdrop{background:rgba(0,0,0,.91);backdrop-filter:blur(4px)}
.project-dialog-header{padding:0 0 6px;border:0;background:transparent;min-height:44px}.project-dialog h3{color:#fff;font-size:18px}.project-dialog-header p{color:#cbd5df;font-size:12px;margin-top:4px}
.project-close,.project-previous,.project-next{display:grid;place-items:center;border:1px solid #ffffff50;border-radius:50%;background:#0005;color:#fff;cursor:pointer;width:46px;height:46px;min-width:46px;padding:0;line-height:1}
.project-close{font-size:30px}.project-image-frame{display:flex;align-items:center;justify-content:center;padding:0 56px;min-width:0;min-height:0;background:transparent;overflow:hidden}.project-full{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;background:transparent;display:block}
.project-previous,.project-next{position:absolute;top:50%;transform:translateY(-50%);font-size:40px;z-index:2}.project-previous{left:22px}.project-next{right:22px}.project-dialog-footer{padding:4px 0 0;min-height:28px;justify-content:center;gap:22px}.project-counter{color:#e4e9ee}.project-original{color:#cbd5df;font-size:12px}.project-dialog button:hover{background:#ffffff20}.project-dialog button:focus-visible,.project-original:focus-visible{outline:3px solid #8fd9f3}
@media(max-width:680px){.project-dialog[open]{padding:12px 10px;gap:6px}.project-dialog-header{padding:0;gap:8px}.project-dialog h3{font-size:16px}.project-dialog-header p{font-size:11px}.project-image-frame{padding:0 32px}.project-previous,.project-next{width:36px;height:44px;min-width:36px;font-size:32px;border-radius:8px}.project-previous{left:5px}.project-next{right:5px}.project-close{width:40px;height:40px;min-width:40px}.project-dialog-footer{padding:0;gap:14px;flex-wrap:nowrap}.project-original{font-size:11px}}

/* v16: discreet attribution, no file labels or original-image link. */
.project-image-frame{position:relative}.project-watermark{position:absolute;right:66px;bottom:12px;display:flex;align-items:center;gap:8px;padding:7px 10px;background:rgba(3,31,52,.76);border-radius:4px;pointer-events:none;color:#fff;font-size:11px;line-height:1.2}.project-watermark img{width:26px;height:34px;object-fit:contain}.portfolio-image::after{content:"";position:absolute;bottom:10px;right:10px;width:30px;height:40px;background:rgba(3,31,52,.75) url('logo-i9-header.svg') center / 24px 32px no-repeat;border-radius:3px;pointer-events:none}.project-dialog-footer{gap:0}.project-dialog-header{min-height:46px}
@media(max-width:680px){.project-watermark{right:40px;bottom:8px;gap:5px;padding:5px 7px;font-size:9px}.project-watermark img{width:20px;height:26px}}

/* v17: translucent logo anchored inside the displayed photograph. */
.project-picture{position:relative;flex:none;max-width:100%;max-height:100%;overflow:hidden}.project-picture .project-full{width:100%;height:100%;object-fit:contain}.project-watermark{right:2.5%;bottom:2.5%;display:block;width:clamp(35px,9%,78px);height:auto;background:none;padding:0;border-radius:0;opacity:.32;filter:drop-shadow(0 1px 2px #031f3440)}.project-watermark img{display:block;width:100%;height:auto;object-fit:contain}.portfolio-image::after{background:transparent url('logo-i9-header.svg') center / contain no-repeat;opacity:.32;width:30px;height:40px;border-radius:0}
