/* Shared photographic theme for the three content pages. */
.portfolio-page{isolation:isolate;min-height:100svh;background:#152126;color:#dce0e2;--ink:#e1e6e8;--muted:#c4cdd2;--line:#d6dcdf38;--accent:#f28c28;--accent-2:#ffb279}
.page-backdrop{position:fixed;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;z-index:-2;pointer-events:none}
.portfolio-page::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(270deg,#0b141cc2 0%,#0b141c59 60%,#0b141c33),linear-gradient(0deg,#0b141c99,transparent 65%,#0b141c70)}
[dir=ltr] .portfolio-page::before{background:linear-gradient(90deg,#0b141cc2 0%,#0b141c59 60%,#0b141c33),linear-gradient(0deg,#0b141c99,transparent 65%,#0b141c70)}
.portfolio-page .site-header{position:relative;top:auto;background:transparent;color:#e1e5e6;border:0;backdrop-filter:none}
.portfolio-page .site-header .nav{width:calc(100% - 72px)}
.portfolio-page .container:not(.nav){width:min(1180px,calc(100% - 72px))}
.portfolio-page .page-hero{background:transparent;min-height:48svh;display:flex;align-items:flex-end;padding:clamp(40px,7vw,100px) 0 40px}
.portfolio-page .page-hero h1{max-width:850px;font-size:clamp(40px,5.5vw,78px);font-weight:300;line-height:1.08;letter-spacing:-.035em;margin:18px 0 24px;text-wrap:balance;text-shadow:0 2px 20px #0005}
.portfolio-page .page-hero p{font-size:18px;line-height:1.75;max-width:700px;color:#d3dbe0;text-shadow:0 1px 8px #0008}
.portfolio-page .eyebrow{font-size:12px;font-weight:500;letter-spacing:.08em;color:#ffb279}
.portfolio-page .eyebrow::before{height:1px;width:30px}
.portfolio-page .section,.portfolio-page .section.alt{background:transparent;padding:32px 0 48px}
.portfolio-page h2,.portfolio-page h3{font-weight:400;line-height:1.3}
.portfolio-page p{color:#d0d8dd}
.portfolio-page .service-detail,.portfolio-page .card,.portfolio-page .manifesto,.portfolio-page .split>div:first-child{background:#111e27c7;border:1px solid var(--line);border-radius:0;box-shadow:none;backdrop-filter:blur(7px)}
.portfolio-page .service-detail{max-width:900px;padding:30px;margin-bottom:16px;grid-template-columns:58px minmax(0,1fr);gap:22px;scroll-margin-top:24px}
.portfolio-page .service-detail .num{font-size:20px;font-weight:400;letter-spacing:.08em;padding-top:7px}
.portfolio-page .service-detail h2{font-size:clamp(23px,2.5vw,32px)}
.portfolio-page .service-detail p{max-width:700px;line-height:1.85}
.portfolio-page .chip{background:transparent;color:#c7d0d5;border:1px solid #d6dcdf30;border-radius:0}
.portfolio-page .split{gap:28px;align-items:start}
.portfolio-page .split>div:first-child{padding:34px}
.portfolio-page .split h2{font-size:clamp(28px,3.2vw,42px);margin:16px 0}
.portfolio-page .manifesto{padding:38px;border-top:2px solid #f28c28}
.portfolio-page .manifesto blockquote{font-weight:300;font-size:clamp(27px,3vw,40px)}
.portfolio-page .section-head h2{font-size:clamp(30px,4vw,48px);font-weight:300}
.portfolio-page .grid-3{gap:18px}
.portfolio-page .card{padding:28px;transition:border-color .2s}
.portfolio-page .card:hover{transform:none;box-shadow:none;border-color:#f28c2899}
.portfolio-page .card h3{font-size:24px}
.portfolio-page .card p{color:#c4cdd2}
.portfolio-page .icon{width:auto;height:auto;display:block;background:transparent;color:#ffb279;border-radius:0;font-size:24px}
.portfolio-page .project-card{min-height:240px;display:flex;align-items:center}
.portfolio-page .project-card .content{padding:0;width:100%}
.portfolio-page .project-visual{display:none}
.portfolio-page .tag{background:transparent;color:#ffb279;border:1px solid #f28c2866;border-radius:0;font-weight:400;font-size:11px}
.portfolio-page .note{padding:16px 20px;border-inline-start:2px solid #f28c28;background:#111e27bd;color:#d2dbe0;margin:0 0 24px}
.portfolio-page .cta{border-radius:0;background:#111e27d9;border:1px solid var(--line);margin-block:24px 64px;padding:36px;backdrop-filter:blur(7px)}
.portfolio-page .cta h2{font-weight:300;font-size:clamp(28px,3.4vw,44px)}
.portfolio-page .btn{background:#e8edef;color:#152126;box-shadow:none;border-radius:0}
.portfolio-page .btn:hover{background:#fff;transform:none}
.portfolio-page .site-header .header-contact{background:transparent;color:inherit;box-shadow:none;border-radius:0}
.portfolio-page .site-footer{background:#0b141cd9;border-top:1px solid var(--line);backdrop-filter:blur(7px);padding:42px 0 28px}
.portfolio-page .site-footer a,.portfolio-page .site-footer p,.portfolio-page .site-footer span{color:#c4cdd2}
.portfolio-page .site-footer img{width:255px;max-width:100%;filter:none}
.portfolio-page .fineprint{border-color:var(--line);color:#aab6bd;padding-bottom:20px}
.portfolio-page .skip{color:#152126}
@media(max-width:900px){.portfolio-page .split{grid-template-columns:1fr}.portfolio-page .service-detail{max-width:none}}
@media(max-width:620px){
 .portfolio-page .site-header .nav{width:calc(100% - 32px)}
 .portfolio-page .container:not(.nav){width:calc(100% - 36px)}
 .portfolio-page .page-hero{min-height:0;padding:36px 0 20px}
 .portfolio-page .page-hero h1{font-size:clamp(35px,9vw,48px)}
 .portfolio-page .page-hero p{font-size:16px}
 .portfolio-page .section,.portfolio-page .section.alt{padding:20px 0 28px}
 .portfolio-page .service-detail{grid-template-columns:1fr;gap:8px;padding:23px}
 .portfolio-page .service-detail .num{padding:0}
 .portfolio-page .split>div:first-child,.portfolio-page .manifesto,.portfolio-page .card,.portfolio-page .cta{padding:24px}
 .portfolio-page .project-card{min-height:0}
 .portfolio-page .grid-3{grid-template-columns:1fr}
 .portfolio-page .cta{margin-block:16px 40px}
 .portfolio-page::before,[dir=ltr] .portfolio-page::before{background:linear-gradient(180deg,#0b141c80,#0b141c8c 48%,#0b141cb3)}
}
@media(prefers-reduced-motion:reduce){.portfolio-page *{scroll-behavior:auto!important;transition:none!important}}
