/* Perspective is applied to a stable hit area; each visual occupies its own depth. */
.hero-visual{perspective:1100px;isolation:isolate;padding-bottom:34px}
.hero-visual::before{content:"";position:absolute;inset:18% 8% 8%;border-radius:50%;background:radial-gradient(ellipse,#b8c6a54a,transparent 68%);filter:blur(18px);pointer-events:none}
.portrait-scene{position:relative;display:grid;place-items:center;width:100%;min-height:inherit;transform-style:preserve-3d;transform:rotateX(var(--scene-rx,2deg)) rotateY(var(--scene-ry,-7deg));will-change:transform}
.portrait-frame{border-radius:190px 190px 24px 24px;border:7px solid #fbfcf5;outline:1px solid #d1d9c7;transform:translateZ(30px);box-shadow:4px 6px 0 #c9d2bd,8px 12px 0 #dce2d2,18px 35px 40px -15px #1a3b3450,0 1px 3px #fff inset}
.portrait-frame img{object-position:50% 52%;height:100%;width:100%;object-fit:cover;transform:scale(1.03)}
.portrait-frame::before{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--shine-x,32%) var(--shine-y,25%),#fff4,transparent 55%);mix-blend-mode:soft-light}
.portrait-frame::after{background:linear-gradient(transparent,rgba(10,33,27,.6))}
.portrait-caption{bottom:60px}
.orbit{transform:translateZ(-45px) rotate(-4deg);stroke:#a6b68d;stroke-width:1.3;pointer-events:none}
.hero-stamp{transform:translateZ(95px) rotate(9deg);box-shadow:4px 5px 0 #c9b48d,10px 20px 25px -12px #344b3f55;top:47px;right:3px;pointer-events:none}
.visual-index{transform:translateZ(-18px);right:-8px;pointer-events:none}
.depth-label{position:absolute;bottom:37px;left:6px;transform:translateZ(105px) rotate(-5deg);background:#fafcf3ed;backdrop-filter:blur(10px);border:1px solid #fff;border-radius:10px;padding:12px 17px;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.6px;color:var(--green);box-shadow:2px 3px 0 #dce3d2,4px 15px 24px -10px #243d3355;pointer-events:none}
.depth-toggle{position:absolute;bottom:0;left:50%;transform:translateX(-50%);background:transparent;border:1px solid #c5cebd;border-radius:30px;padding:7px 16px;font-size:10px;color:#62765b;white-space:nowrap;transition:background .2s,color .2s;z-index:4}
.depth-toggle span{display:inline-block;margin-left:15px;font-size:15px;line-height:1}
.depth-toggle:hover,.depth-toggle[aria-pressed="true"]{background:#e4ebdb;color:var(--green)}
.depth-toggle:disabled{opacity:.55;cursor:default}
.project{--card-rx:0deg;--card-ry:0deg;--card-lift:0px;transform:perspective(900px) translateY(var(--card-lift)) rotateX(var(--card-rx)) rotateY(var(--card-ry));transform-style:preserve-3d;transition:transform .32s ease}
.project:hover{--card-lift:-6px;transform:perspective(900px) translateY(var(--card-lift)) rotateX(var(--card-rx)) rotateY(var(--card-ry))}
.project-image{box-shadow:0 1px 0 #ffffffb3 inset,0 2px 0 #dce1d5,0 10px 20px -18px #204e4280;transition:box-shadow .3s}
.project:hover .project-image{box-shadow:0 1px 0 #ffffffb3 inset,0 3px 0 #cdd6c3,6px 18px 25px -14px #204e424a}
.project-type{box-shadow:0 4px 10px #243d331c}
.project-info{transform:translateZ(16px)}
.campaign-project{box-shadow:0 4px 0 #d3ddc6,0 15px 25px -24px #204e4270}
@media(min-width:1500px){.depth-label{bottom:42px}}
@media(max-width:1100px){.hero-stamp{right:-1px}.depth-label{bottom:30px;left:0;font-size:9px;padding:10px 13px}}
@media(max-width:760px){.hero-visual{padding-bottom:38px;perspective:950px;margin-top:5px}.portrait-scene{min-height:350px}.portrait-frame{border-width:5px;border-radius:155px 155px 20px 20px;transform:translateZ(18px);box-shadow:3px 4px 0 #c9d2bd,6px 8px 0 #dce2d2,10px 22px 35px -14px #1a3b344d}.hero-stamp{transform:translateZ(56px) rotate(9deg);right:4%;top:24px}.depth-label{transform:translateZ(64px) rotate(-5deg);font-size:8px;left:3%;bottom:22px;padding:9px 11px;gap:7px}.visual-index{right:5px;font-size:6px}.depth-toggle{font-size:9px;padding:6px 14px}.portrait-caption{font-size:9px;left:15px;bottom:49px}}
@media(hover:none){.project:hover{--card-lift:0px}.project:active{transform:perspective(900px) translateY(2px) rotateX(2deg);transition-duration:.15s}}
@media(prefers-reduced-motion:reduce){.portrait-scene{transform:none!important;will-change:auto}.project,.project:hover,.project:active{transform:none!important}.portrait-frame::before{display:none}}

/* The team story precedes the production portfolio. */
.team-section{padding:90px 0 0}.team-section .section-heading h2{font-size:35px}
.team-lead{display:grid;grid-template-columns:1.5fr 1fr;gap:60px;border-top:1px solid var(--line);padding:29px 0 34px}
.team-role{font-size:10px;letter-spacing:1.5px;color:#6e8262}.team-lead h3{font:500 27px/1.5 var(--serif);margin:10px 0 16px}
.team-lead p{font-size:12px;line-height:2.05;color:var(--muted);max-width:620px}
.team-direction{border-left:1px solid var(--line);padding-left:40px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.team-direction>span{font-size:9px;letter-spacing:1.5px;color:#7e8b73}.team-direction strong{font:500 22px/1.5 var(--serif);margin:9px 0}.team-direction small{font-size:10px;color:#7d8974;line-height:1.8}
.partner-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.partner-card{min-width:0;border-radius:12px;background:#e9eee1;border:1px solid #dbe3d2;box-shadow:0 4px 0 #d8e0cf;overflow:hidden}
.partner-heading{display:flex;align-items:center;gap:15px;padding:20px 23px;border-bottom:1px solid #d2ddc7}.partner-number{font:17px Georgia,serif;color:#819571}.partner-heading p{font-size:8px;letter-spacing:1px;color:#7e8e70}.partner-heading h3{font-size:18px;font-weight:500;margin-top:3px}.partner-label{margin-left:auto;font-size:8px;color:#5c7551;border:1px solid #bcccaf;border-radius:20px;padding:4px 8px;white-space:nowrap}
.partner-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:23px;padding:25px 23px 0}.partner-shot{border:5px solid #f9fbf2;border-radius:20px 20px 0 0;overflow:hidden;max-height:320px;box-shadow:4px 8px 18px #203e3417;transform:perspective(800px) rotateY(6deg)}
.partner-shot img{width:100%;height:auto;min-height:100%;object-fit:cover;object-position:top}.partner-copy{padding:9px 0 22px}.partner-theme{font-size:9px;color:#7f8f72}.partner-copy>strong{display:block;font:38px/1.2 Georgia,serif;color:var(--green);margin-top:10px;white-space:nowrap}.partner-copy>strong>span{display:block;font:10px var(--sans);margin-top:7px;color:#6f8262}.partner-counter{font-size:10px;margin-top:14px;color:#627858}.partner-copy hr{border:0;border-top:1px solid #ccd8bf;margin:17px 0}.partner-copy>p:not([class]){font-size:11px;line-height:1.9;color:#5f7354}.partner-copy>small{display:block;font-size:8px;line-height:1.8;color:#8b967e;margin-top:12px}.team-case-link{border-radius:0;background:transparent;padding:0 0 5px;margin-top:18px;font-size:10px}.team-case-link>span{margin-left:12px}
.team-note{font-size:9px;line-height:2;color:#87927c;margin-top:23px;max-width:1000px}.team-project-image{background:#dde7d1;overflow:hidden}.team-project-image>img{width:51%;height:290px;position:absolute;right:15px;top:25px;object-fit:cover;object-position:top;transform:rotate(7deg);border:4px solid #f9fbf2;border-radius:15px;box-shadow:0 8px 20px #203e3426}.team-project-word{font:22px/1.2 Georgia,serif;position:absolute;top:95px;left:20px;color:#8ca17d}.project:hover .team-project-image>img{transform:rotate(3deg)}
@media(max-width:1100px){.team-lead{gap:30px}.partner-body{gap:17px;padding:20px 17px 0}.partner-heading{padding:18px 17px;gap:10px}.partner-label{font-size:7px;padding:3px 6px}.partner-copy>strong{font-size:32px}.team-section .section-heading h2{font-size:30px}}
@media(max-width:760px){.header nav{gap:12px;font-size:10px}.team-section{padding-top:55px}.team-section .section-heading h2{font-size:27px}.team-section .section-heading>p{display:none}.team-lead{grid-template-columns:1fr;gap:23px;padding:24px 0}.team-lead h3{font-size:24px;margin:9px 0 13px}.team-lead p{font-size:11px}.team-direction{padding-left:17px}.team-direction strong{font-size:20px}.team-direction small{font-size:9px}.partner-grid{grid-template-columns:1fr;gap:23px}.partner-heading{padding:17px 19px}.partner-heading h3{font-size:17px}.partner-label{font-size:8px}.partner-body{gap:21px;padding:22px 20px 0;grid-template-columns:minmax(0,.9fr) minmax(0,1fr)}.partner-shot{max-height:310px}.partner-copy>strong{font-size:34px}.partner-copy>p:not([class]){font-size:10px}.partner-copy>small{font-size:8px}.team-note{font-size:8px;line-height:1.9}.team-project-word{font-size:19px;left:15px}.team-project-image>img{top:25px;right:13px}.team-section+.work-section{padding-top:55px}}
@media(max-width:390px){.header nav{gap:9px;font-size:9px}.brand{gap:6px}.team-project-word{font-size:22px;top:90px}.partner-body{padding:19px 15px 0;gap:16px}}
