.process-section,.craft-section,.team-section,.gallery-section{padding:80px;color:var(--ink);background:var(--paper)}
.lower-section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:8%;align-items:end;margin:64px 0 72px}
.lower-section-heading h2,.process-intro h2{font-size:clamp(48px,4.1vw,64px);font-weight:600;line-height:1.14;letter-spacing:-.045em;margin:0;text-wrap:balance}
.lower-section-description{max-width:440px;font-size:17px;line-height:1.65;letter-spacing:-.015em;margin:0}
.process-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8%;margin-top:64px;align-items:start}
.process-intro{position:sticky;top:60px;padding-bottom:48px}
.process-intro .lower-section-description{margin-top:32px}
.process-steps{min-width:0}
.process-step{display:grid;grid-template-columns:42px minmax(0,1fr);gap:20px;border-top:1px solid var(--line);min-height:300px;padding:30px 0 72px;transition:opacity .55s ease}
.process-number{font-size:13px;line-height:1.8;font-variant-numeric:tabular-nums;color:var(--muted)}
.process-step h3{font-size:32px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0 0 22px}
.process-step p,.craft-item p{max-width:390px;font-size:17px;line-height:1.65;letter-spacing:-.015em;margin:0}
.process-steps.is-enhanced .process-step{opacity:.35}
.process-steps.is-enhanced .process-step.is-active{opacity:1}
.craft-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.craft-item{position:relative;min-height:330px;padding:64px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.craft-number{display:block;font-size:56px;font-weight:400;line-height:1;letter-spacing:-.05em;color:var(--muted);text-align:right;margin-bottom:42px;font-variant-numeric:tabular-nums}
.craft-item h3{font-size:29px;font-weight:500;line-height:1.2;letter-spacing:-.035em;max-width:330px;margin:0 0 22px}
.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.team-card{min-width:0}
.team-photo{margin:0}
.team-photo img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;filter:grayscale(1);transition:filter .7s ease}
.team-photo figcaption{font-size:13px;line-height:1.5;letter-spacing:-.01em;color:var(--muted);padding:16px 0}
.team-bio{padding-top:26px;border-top:1px solid var(--line)}
.team-bio h3{font-size:30px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0 0 22px}
.team-bio p{font-size:16px;line-height:1.7;letter-spacing:-.01em;margin:0;max-width:560px}
.team-bio .team-role{font-size:13px;color:var(--muted);margin-bottom:20px}
.gallery-grid{columns:3;column-gap:24px}
.gallery-item{display:block;width:100%;margin:0 0 36px;padding:0;border:0;border-radius:0;background:none;color:inherit;font:inherit;text-align:left;break-inside:avoid;cursor:pointer;-webkit-tap-highlight-color:transparent}
.gallery-image-wrap{display:block;overflow:hidden;background:#efefed}
.gallery-image-wrap img{display:block;width:100%;height:auto;transform:scale(1);transition:transform .7s cubic-bezier(.22,.61,.36,1)}
.gallery-caption{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:54px;font-size:14px;line-height:1.45;letter-spacing:-.015em;padding:14px 0 0}
.gallery-arrow{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;transition:transform .35s ease}
.gallery-arrow svg{width:20px;height:20px}
.gallery-item:focus-visible{outline:2px solid var(--brand);outline-offset:6px}
.gallery-item:focus-visible .gallery-image-wrap img{transform:scale(1.04)}
.gallery-item:active .gallery-image-wrap img{transform:scale(1.015)}
@media(hover:hover){.gallery-item:hover .gallery-image-wrap img{transform:scale(1.04)}.gallery-item:hover .gallery-arrow{transform:translate(3px,-3px)}.team-card:hover .team-photo img{filter:grayscale(0)}}
@media(min-width:1500px){.process-section,.craft-section,.team-section,.gallery-section{padding:96px 80px}.process-step{min-height:340px}}
@media(max-width:1100px){.craft-item{padding:40px}.team-grid{gap:28px}.gallery-grid{columns:2}.lower-section-heading,.process-layout{column-gap:6%}.process-step{grid-template-columns:28px minmax(0,1fr);gap:14px}.lower-section-heading h2,.process-intro h2{font-size:48px}}
@media(max-width:760px){.process-section,.craft-section,.team-section,.gallery-section{padding:40px}.lower-section-heading{display:block;margin:48px 0}.lower-section-heading h2,.process-intro h2{font-size:38px;line-height:1.15}.lower-section-heading .lower-section-description{margin-top:28px}.lower-section-description{font-size:16px}.process-layout{display:block;margin-top:48px}.process-intro{position:static;padding-bottom:48px}.process-intro .lower-section-description{margin-top:28px}.process-step{min-height:200px;padding:26px 0 48px;grid-template-columns:24px minmax(0,1fr);gap:16px}.process-step h3{font-size:27px;margin-bottom:18px}.process-step p,.craft-item p{font-size:16px}.craft-grid{grid-template-columns:minmax(0,1fr)}.craft-item{min-height:290px;padding:32px}.craft-number{font-size:48px;margin-bottom:32px}.craft-item h3{font-size:27px}.team-grid{grid-template-columns:minmax(0,1fr);gap:52px}.team-bio h3{font-size:28px}.gallery-grid{columns:1}.gallery-item{margin-bottom:32px}.gallery-caption{min-height:50px}}
@media(prefers-reduced-motion:reduce){.process-step,.team-photo img,.gallery-image-wrap img,.gallery-arrow{transition:none}.process-steps.is-enhanced .process-step{opacity:1}.gallery-item:hover .gallery-image-wrap img,.gallery-item:focus-visible .gallery-image-wrap img,.gallery-item:active .gallery-image-wrap img{transform:none}.gallery-item:hover .gallery-arrow{transform:none}}
@media(max-width:359px){.craft-grid .craft-item{padding:24px}.craft-grid .craft-item h3{font-size:24px}.lower-section-heading h2,.process-intro h2{font-size:32px}}
