.portfolio-page{background:radial-gradient(circle at 50% 12%,rgba(201,156,77,.1),transparent 30%),var(--color-night)}
.portfolio-hero{width:min(var(--container-wide),calc(100% - 104px));margin:0 auto;padding:clamp(142px,14vw,210px) 0 clamp(76px,8vw,116px)}
.portfolio-eyebrow,.portfolio-archive-label{margin:0 0 18px;color:var(--color-amber);font-size:.68rem;font-weight:800;letter-spacing:.17em;line-height:1.4}
.portfolio-title{max-width:850px;margin:0;color:var(--color-text-strong);font-size:clamp(3.1rem,7.1vw,7.4rem);font-weight:800;letter-spacing:-.06em;line-height:.98}
.portfolio-lead{max-width:640px;margin:38px 0 0;color:var(--color-text-muted);font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.85}
.portfolio-content{width:min(var(--container-wide),calc(100% - 104px));margin:0 auto;padding-bottom:clamp(110px,12vw,190px)}
.featured-case{margin:0 0 clamp(122px,13vw,210px)}
.featured-case__media{display:grid;grid-template-columns:1.5fr .5fr;gap:2px;background:var(--color-line)}
.featured-case__media img{width:100%;height:100%;min-height:244px;object-fit:cover;background:var(--color-surface-deep)}
.featured-case__media img:first-child{grid-row:span 2;min-height:560px}
.featured-case__body{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(48px,7vw,120px);padding:clamp(42px,5vw,78px) 0 0}
.featured-case__title{margin:0 0 22px;color:var(--color-text-strong);font-size:clamp(2rem,3.2vw,3.8rem);letter-spacing:-.05em;line-height:1.08}.featured-case__summary{max-width:660px;margin:0;color:var(--color-text-muted);font-size:.98rem;line-height:1.9}
.featured-case__meta{display:grid;align-content:start;margin:0;padding:0;list-style:none;border-top:1px solid var(--color-line)}.featured-case__meta li{padding:13px 0;border-bottom:1px solid var(--color-line);color:rgba(247,245,239,.78);font-size:.84rem;line-height:1.65}.featured-case__meta li::before{content:'—';margin-right:10px;color:var(--color-amber)}
.portfolio-archive-label{margin-bottom:30px}.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2.2vw,34px);background:transparent}.portfolio-card,.portfolio-grid .g-card{margin:0;overflow:hidden;background:transparent}.portfolio-card:nth-child(even),.portfolio-grid .g-card:nth-child(even){margin-top:clamp(46px,6vw,92px)}.portfolio-card__image,.portfolio-grid .g-img{width:100%;aspect-ratio:3/4;object-fit:cover;border:0;background:var(--color-surface-deep);filter:saturate(.82) contrast(1.03);transition:filter .35s ease,transform .5s ease}.portfolio-card:hover .portfolio-card__image,.portfolio-grid .g-card:hover .g-img{filter:saturate(1) contrast(1.06);transform:translateY(-5px)}.portfolio-card__caption,.portfolio-grid .g-num{display:block;padding-top:13px;color:var(--color-text-faint);font-size:.65rem;font-weight:700;letter-spacing:.14em}.portfolio-grid .g-overlay{position:static;display:block;padding:0;opacity:1;background:none}.portfolio-grid .g-num{color:var(--color-text-faint)}
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.rv.in{opacity:1;transform:none}

.legacy-portfolio .tech-header>.eyebrow:first-child{grid-column:1}.legacy-portfolio .tech-header>.tech-title{grid-column:1}.legacy-portfolio .tech-header>.tech-desc{grid-column:2;grid-row:1 / span 2;align-self:end;margin:0}

/* Existing portfolio content mapped to the shared archive system. */
.legacy-portfolio #cv,.legacy-portfolio #cur,.legacy-portfolio #cur2{display:none!important}.legacy-portfolio .page-hero{width:min(var(--container-wide),calc(100% - 104px));margin:0 auto;padding:clamp(142px,14vw,210px) 0 clamp(70px,8vw,112px)}.legacy-portfolio .page-hero-inner{max-width:760px}.legacy-portfolio .eyebrow{margin:0 0 18px;color:var(--color-amber);font-size:.68rem;font-weight:800;letter-spacing:.17em;line-height:1.4}.legacy-portfolio .ttl{margin:0;color:var(--color-text-strong);font-size:clamp(3.1rem,7.1vw,7.4rem);font-weight:800;letter-spacing:-.06em;line-height:.98}.legacy-portfolio .divider{width:48px;height:1px;margin:30px 0;background:var(--color-amber)}.legacy-portfolio .body-t{max-width:640px;margin:0;color:var(--color-text-muted);font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.85}.legacy-portfolio .gallery-wrap,.legacy-portfolio .equipment-wrap{width:min(var(--container-wide),calc(100% - 104px));margin:0 auto;padding-bottom:clamp(110px,12vw,190px)}.legacy-portfolio .gallery-hero-img{width:100%;max-height:80vh;object-fit:cover;margin:0 0 clamp(28px,3vw,48px);background:var(--color-surface-deep)}.legacy-portfolio .gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2.2vw,34px);background:transparent}.legacy-portfolio .g-card{position:relative;margin:0;overflow:hidden;background:transparent}.legacy-portfolio .gallery-grid .g-card:nth-child(even){margin-top:clamp(46px,6vw,92px)}.legacy-portfolio .g-card img,.legacy-portfolio .g-img{width:100%;aspect-ratio:3/4;object-fit:cover;border:0;background:var(--color-surface-deep);filter:saturate(.82) contrast(1.03);transition:filter .35s ease,transform .5s ease}.legacy-portfolio .g-card:hover img{filter:saturate(1) contrast(1.06);transform:translateY(-5px)}.legacy-portfolio .g-overlay{position:static;display:block;padding:0;opacity:1;background:none}.legacy-portfolio .g-num,.legacy-portfolio .g-label{display:block;padding-top:13px;color:var(--color-text-faint);font-size:.65rem;font-weight:700;letter-spacing:.14em}.legacy-portfolio .tech-section{margin:0 0 clamp(90px,10vw,160px)}.legacy-portfolio .tech-section:last-child{margin-bottom:0}.legacy-portfolio .tech-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.8fr);gap:clamp(44px,7vw,110px);align-items:end;margin:0 0 40px}.legacy-portfolio .tech-title,.legacy-portfolio .equip-title{margin:0;color:var(--color-text-strong);font-size:clamp(1.9rem,3.2vw,3.8rem);font-weight:800;letter-spacing:-.045em;line-height:1.1}.legacy-portfolio .tech-desc,.legacy-portfolio .equip-desc{margin:16px 0 0;color:var(--color-text-muted);font-size:.96rem;line-height:1.9}.legacy-portfolio .tech-note{margin:14px 0 0;color:var(--color-text-faint);font-size:.68rem;line-height:1.7}.legacy-portfolio .g-card.single{width:min(100%,760px)}.legacy-portfolio .product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2.2vw,34px);margin:0 0 34px}.legacy-portfolio .product-row{margin:0 0 34px;padding:0}.legacy-portfolio .product-img{width:100%;background:var(--color-surface-raised)}.legacy-portfolio .equip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(46px,7vw,120px)}.legacy-portfolio .equip-card{padding-top:24px;border-top:1px solid var(--color-line)}.legacy-portfolio .equip-card .iph{margin-top:32px;overflow:hidden;background:var(--color-surface-deep)}.legacy-portfolio .equip-card .iph img{width:100%;aspect-ratio:4/3;object-fit:cover}.site-footer .flogo{display:flex;align-items:center}.site-footer .flogo img{width:42px;height:42px;object-fit:contain}.site-footer .fcopy{color:var(--color-text-faint);font-size:.7rem;font-weight:700;letter-spacing:.08em;white-space:nowrap}.site-footer .site-footer__details [style]{color:var(--color-text-muted)!important}
@media(max-width:960px){.portfolio-hero,.portfolio-content{width:min(760px,calc(100% - 48px))}.featured-case__body{grid-template-columns:1fr;gap:38px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.portfolio-card:nth-child(even){margin-top:54px}}
@media(max-width:600px){.portfolio-hero,.portfolio-content{width:calc(100% - 40px)}.portfolio-hero{padding-top:112px;padding-bottom:64px}.portfolio-title{font-size:clamp(2.8rem,14vw,4.1rem)}.portfolio-lead{margin-top:28px;font-size:.98rem}.featured-case{margin-bottom:108px}.featured-case__media{grid-template-columns:1fr 1fr}.featured-case__media img:first-child{grid-column:1/-1;grid-row:auto;min-height:300px}.featured-case__media img{min-height:150px}.featured-case__body{padding-top:32px;gap:30px}.featured-case__title{font-size:2.1rem}.featured-case__summary{font-size:.93rem}.portfolio-grid{gap:14px}.portfolio-card:nth-child(even){margin-top:34px}.portfolio-card__caption{font-size:.58rem;letter-spacing:.1em}}
@media(max-width:960px){.legacy-portfolio .page-hero,.legacy-portfolio .gallery-wrap,.legacy-portfolio .equipment-wrap{width:min(760px,calc(100% - 48px))}.legacy-portfolio .tech-header{grid-template-columns:1fr;gap:22px}.legacy-portfolio .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.legacy-portfolio .gallery-grid .g-card:nth-child(even){margin-top:54px}}
@media(max-width:960px){.legacy-portfolio .tech-header>.eyebrow:first-child,.legacy-portfolio .tech-header>.tech-title,.legacy-portfolio .tech-header>.tech-desc{grid-column:auto;grid-row:auto}.legacy-portfolio .tech-header>.tech-desc{margin:0}}
@media(max-width:600px){.legacy-portfolio .page-hero,.legacy-portfolio .gallery-wrap,.legacy-portfolio .equipment-wrap{width:calc(100% - 40px)}.legacy-portfolio .page-hero{padding-top:112px;padding-bottom:64px}.legacy-portfolio .ttl{font-size:clamp(2.8rem,14vw,4.1rem)}.legacy-portfolio .gallery-grid{gap:14px}.legacy-portfolio .gallery-grid .g-card:nth-child(even){margin-top:34px}.legacy-portfolio .tech-section{margin-bottom:96px}.legacy-portfolio .tech-title,.legacy-portfolio .equip-title{font-size:2.1rem}.legacy-portfolio .product-grid{grid-template-columns:1fr;gap:16px}.legacy-portfolio .product-row{margin-bottom:16px}.legacy-portfolio .equip-grid{grid-template-columns:1fr;gap:56px}.site-footer .fcopy{white-space:normal}}
