.portfolio-page{background:#fff;color:#17212d}
.portfolio-page .site-header{position:relative}
.portfolio-hero{padding:3rem 0 4.5rem;background:#f4f7fa;border-bottom:1px solid #dce3e9}
.portfolio-breadcrumb{display:flex;gap:.65rem;align-items:center;margin:0 0 4rem;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#738090}
.portfolio-breadcrumb a{color:#0b578e}
.portfolio-hero-copy{max-width:980px}
.portfolio-hero h1{max-width:930px;margin:.7rem 0 1.25rem;font-size:clamp(3.2rem,6.4vw,6.4rem);line-height:.94;letter-spacing:-.055em}
.portfolio-hero-copy>p:last-child{max-width:760px;margin:0;color:#687585;font-size:1.18rem;line-height:1.7}
.portfolio-lines{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.96);border-bottom:1px solid #dce3e9;backdrop-filter:blur(12px)}
.portfolio-line-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.portfolio-line{display:flex;gap:1rem;align-items:center;min-height:92px;padding:1.1rem 1.5rem;color:#667483;border-right:1px solid #dce3e9}
.portfolio-line:first-child{border-left:1px solid #dce3e9}
.portfolio-line span{font-size:.75rem;color:#1683ce;font-weight:700}
.portfolio-line strong{font-size:.95rem;line-height:1.3}
.portfolio-line.active{color:#17212d;box-shadow:inset 0 -4px #1683ce}
.portfolio-collection{padding:6rem 0 7rem}
.portfolio-collection-alt{background:#f4f7fa}
.portfolio-collection-head{display:grid;grid-template-columns:1.2fr .8fr;gap:5rem;align-items:end;margin-bottom:3.5rem}
.portfolio-collection-head h2{max-width:750px;margin:.7rem 0 0;font-size:clamp(2.6rem,5vw,4.7rem);line-height:1;letter-spacing:-.045em}
.portfolio-collection-head>p{margin:0;color:#687585;line-height:1.75;font-size:1.08rem}
.portfolio-toolbar{display:flex;justify-content:space-between;padding:1rem 0;border-top:1px solid #17212d;border-bottom:1px solid #d8dde2;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;color:#627081}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}
.portfolio-card{min-width:0;background:#f2f1ef}
.portfolio-photo{position:relative;aspect-ratio:1122/1402;overflow:hidden;background:#f2f1ef}
.portfolio-photo img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .45s ease}
.portfolio-card:hover .portfolio-photo img{transform:scale(1.015)}
.portfolio-next{padding:6rem 0;background:#18212d;color:#fff}
.portfolio-next-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#46515d}
.portfolio-next-grid:has(>article:only-child){grid-template-columns:1fr}
.portfolio-next article{min-height:390px;padding:3.3rem;background:#18212d;display:flex;flex-direction:column}
.portfolio-next span{color:#54b4ef;font-weight:700}
.portfolio-next h2{max-width:520px;margin:auto 0 1.25rem;font-size:clamp(2.1rem,3.7vw,3.8rem);line-height:1.02;letter-spacing:-.04em}
.portfolio-next p{max-width:520px;color:#b4bec8;line-height:1.6}
.portfolio-next em{margin-top:2rem;color:#54b4ef;font-style:normal;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase}
.portfolio-cta{text-align:center;padding:7rem 0;background:#eef6fb}
.portfolio-cta h2{max-width:780px;margin:.7rem auto 2rem;font-size:clamp(2.5rem,5vw,5rem);line-height:1;letter-spacing:-.045em}
@media(max-width:900px){.portfolio-line{padding:1rem}.portfolio-line strong{font-size:.8rem}.portfolio-collection-head{grid-template-columns:1fr;gap:1.5rem}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-next-grid{grid-template-columns:1fr}}
@media(max-width:620px){.portfolio-hero{padding:2rem 0 3rem}.portfolio-breadcrumb{margin-bottom:2.5rem}.portfolio-line-grid{display:flex;overflow:auto}.portfolio-line{min-width:245px}.portfolio-grid{grid-template-columns:1fr}.portfolio-next article{min-height:330px;padding:2rem}.portfolio-toolbar span:last-child{display:none}}
