.portfolio{position:relative;padding:105px 6% 85px;border-top:1px solid var(--line)}
.portfolio-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:55px}
.portfolio-heading .eyebrow{margin-bottom:25px}.portfolio-heading h2{font-size:clamp(42px,5.5vw,80px)}
.portfolio-heading>p{color:#e7e3e5;font-size:16px;max-width:300px;margin:0 0 6px}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;max-width:1300px;margin:auto}
.portfolio-card:nth-child(2){padding-top:55px}
.portfolio-player{aspect-ratio:9/16;border-radius:18px;overflow:hidden;border:1px solid #ec619b40;background:#171317;box-shadow:0 18px 45px #0004;transition:transform .3s}
.portfolio-player:hover{transform:translateY(-5px)}
.portfolio-player video{display:block;width:100%;height:100%;object-fit:contain;background:#0b0b0d}
.portfolio-player:focus-within{outline:2px solid white;outline-offset:5px}
.portfolio-caption{padding:22px 0}.portfolio-caption>span{font-size:12px;letter-spacing:.12em;color:#c49aac}
.portfolio-caption h3{font-size:clamp(21px,2.3vw,33px);letter-spacing:-.04em;font-weight:400;margin:10px 0 0;color:#f1edef}
.portfolio-caption p{font-size:14px;color:#bfb8bc;margin:8px 0 0}
@media(max-width:700px){.portfolio{padding:65px 6% 35px}.portfolio-heading{display:block;margin-bottom:30px}.portfolio-heading>p{margin-top:25px}.portfolio-grid{grid-template-columns:1fr;gap:25px;max-width:430px}.portfolio-card:nth-child(2){padding-top:0}.portfolio-player{border-radius:14px}.portfolio-caption h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){.portfolio-player{transition:none}.portfolio-player:hover{transform:none}}
/* Static veins preserve the artwork without continuous full-screen filtering. */
body::before{filter:none!important;animation:none!important;transform:none!important}
.intro-growing-veins,.intro-curtain::before{filter:none!important}
.portfolio-open{display:none}
.vena-arrow{display:inline-block;width:24px;height:24px;vertical-align:middle;flex-shrink:0}
.plan-end .vena-arrow,.instagram-link .vena-arrow{width:16px;height:16px}
.service-arrows button{display:grid;place-items:center}
.play-disc::after{content:'';display:block;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid currentColor;margin-left:3px}
.portfolio-modal{border:1px solid #ec619b60;border-radius:18px;padding:16px;background:#101013;color:white;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
.portfolio-modal::backdrop{background:#000e}
.portfolio-modal video{display:block;max-width:100%;width:auto;height:70dvh;object-fit:contain;margin:auto}
.portfolio-modal header{position:static;width:auto;height:auto;padding:0 0 12px;gap:20px}
.portfolio-modal h3{font-size:16px;margin:0;color:white}
.portfolio-close{min-width:44px;min-height:44px;border:1px solid #ffffff60;background:transparent;color:white;border-radius:50%;font-size:24px}
@media(max-width:700px){
 .enhanced .service-art{display:none!important}
 .portfolio{padding:30px 6% 25px}
 .portfolio-heading{margin-bottom:18px}.portfolio-heading .eyebrow{margin-bottom:10px}
 .portfolio-heading h2{font-size:32px}.portfolio-heading>p{display:none}
 .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;max-width:330px}
 .portfolio-card:last-child{grid-column:1 / -1;width:calc((100% - 18px)/2);justify-self:center}
 .portfolio-player{position:relative;aspect-ratio:3/4;border-radius:12px;box-shadow:none}
 .portfolio-player video{object-fit:cover;pointer-events:none}
 .portfolio-player:hover{transform:none}
 .portfolio-caption{padding:7px 0 0}.portfolio-caption>span,.portfolio-caption p{display:none}
 .portfolio-caption h3{font-size:14px;line-height:1.25;letter-spacing:-.02em;margin:0}
 .portfolio-open{display:flex;position:absolute;inset:0;align-items:center;justify-content:center;width:100%;border:0;background:transparent;color:white;cursor:pointer}
 .portfolio-open span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffffa0;border-radius:50%;background:#0007;font-size:16px}
}
@media(pointer:coarse){.enhanced .service-art{display:none!important}}
