.page-head{padding:168px 0 24px}.page-head .grid{display:grid;grid-template-columns:1fr;gap:48px;align-items:end}@media (min-width:980px){.page-head .grid{grid-template-columns:1.3fr .9fr;gap:72px;align-items:center}}.page-head .intro-copy{max-width:560px}.page-head h1{font-family:var(--font-display);font-weight:400;font-size:clamp(2.75rem,5vw + 1rem,5.5rem);line-height:1.02;letter-spacing:-.025em;margin:22px 0 0;color:var(--ink);text-wrap:balance}.page-head h1 em{font-style:italic;color:var(--saffron)}.page-head .lede{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:clamp(1.25rem,1.2vw + .9rem,1.625rem);line-height:1.45;color:var(--ink-soft);margin:32px 0 0;max-width:520px;text-wrap:pretty;letter-spacing:-.01em}.page-head .lede em{font-style:normal;color:var(--ink)}.page-head .intro-cta{margin-top:36px;display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.14em;color:#fff;background:var(--saffron);border:1px solid var(--saffron);border-radius:var(--radius-xs);padding:13px 22px;text-decoration:none;cursor:pointer;transition:background .28s var(--ease-out),border-color .28s var(--ease-out),box-shadow .28s var(--ease-out),transform .14s var(--ease-out)}.page-head .intro-cta:hover{background:var(--saffron-deep);border-color:var(--saffron-deep);box-shadow:0 8px 20px var(--saffron-glow)}.page-head .intro-cta:active{transform:scale(.985)}.page-head .intro-cta .arrow{display:inline-block;transition:transform .28s var(--ease-out)}.page-head .intro-cta:hover .arrow{transform:translateX(3px)}.page-head .portrait{position:relative;aspect-ratio:4/5;border-radius:var(--radius-l);overflow:hidden;background:linear-gradient(165deg,#cfb89a,#8a6e54);box-shadow:0 16px 50px #1f1b161f,inset 0 1px 0 #fff6}.page-head .portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%;display:block}.page-head .portrait:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.12  0 0 0 0 0.11  0 0 0 0 0.09  0 0 0 0.5 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.1;pointer-events:none;z-index:2}.page-head .portrait .caption{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius-full);background:#fffaf3d1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffffb3;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);z-index:3}.page-head .portrait .caption .dot{width:6px;height:6px;border-radius:50%;background:var(--saffron)}.services{padding:96px 0 32px}.services .head{margin-bottom:48px}.services .head h2{font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,2.4vw + 1rem,3rem);line-height:1.05;letter-spacing:-.02em;color:var(--ink);margin:14px 0 0;max-width:620px;text-wrap:balance}.services .head h2 em{font-style:italic;color:var(--saffron)}.services-grid{display:grid;grid-template-columns:1fr;gap:22px}@media (min-width:760px){.services-grid{grid-template-columns:repeat(2,1fr);gap:26px}}.service{background:#fffaf38c;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border:1px solid #ffffffbf;box-shadow:var(--shadow-soft),inset 0 1px 0 #ffffffd9;border-radius:var(--radius-l);padding:36px 32px 34px;display:flex;flex-direction:column;gap:16px;position:relative;transition:transform .32s var(--ease-out),box-shadow .32s var(--ease-out)}.service:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift),inset 0 1px 0 #ffffffd9}.service .idx{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--stone);display:inline-flex;align-items:center;gap:10px}.service .idx .dot{width:6px;height:6px;border-radius:50%;background:var(--saffron)}.service .service-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--saffron);margin-bottom:2px;animation:serviceIconIn .6s var(--ease-out) both}.service .service-icon svg{width:100%;height:100%;display:block;overflow:visible}@keyframes serviceIconIn{0%{opacity:0;transform:scale(.88) rotate(-6deg)}to{opacity:1;transform:scale(1) rotate(0)}}.service h3{font-family:var(--font-display);font-weight:400;font-style:italic;font-size:clamp(1.5rem,1vw + 1.1rem,1.875rem);line-height:1.1;letter-spacing:-.015em;color:var(--ink);margin:0;text-wrap:balance}.service p{font-size:15.5px;line-height:1.62;color:var(--ink-soft);margin:0;text-wrap:pretty}[data-services=list] .services-grid{grid-template-columns:1fr;gap:0;max-width:880px}[data-services=list] .service{background:#0000;backdrop-filter:none;-webkit-backdrop-filter:none;border:0;border-top:1px solid var(--stone-faint);box-shadow:none;border-radius:0;padding:40px 0}[data-services=list] .service:last-child{border-bottom:1px solid var(--stone-faint)}[data-services=list] .service:hover{transform:none;box-shadow:none}@media (min-width:760px){[data-services=list] .service{display:grid;grid-template-columns:auto 1fr;column-gap:48px;align-items:start}[data-services=list] .service .idx,[data-services=list] .service .service-icon{grid-row:1/span 3;align-self:start}[data-services=list] .service h3{margin-bottom:14px}}.portfolio{padding:96px 0;border-top:1px solid var(--stone-faint);margin-top:80px}.portfolio .head{display:grid;grid-template-columns:1fr;gap:24px;align-items:end;margin-bottom:56px}@media (min-width:880px){.portfolio .head{grid-template-columns:1.4fr 1fr;gap:64px}}.portfolio .head h2{font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,2.4vw + 1rem,3rem);line-height:1.05;letter-spacing:-.02em;margin:14px 0 0;color:var(--ink);text-wrap:balance}.portfolio .head h2 em{font-style:italic;color:var(--saffron)}.portfolio .head .meta{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--stone);display:flex;align-items:center;gap:14px;flex-wrap:wrap}.portfolio .head .meta .dot{width:5px;height:5px;border-radius:50%;background:var(--saffron)}.portfolio-grid{display:grid;grid-template-columns:1fr;gap:28px}@media (min-width:620px){.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:28px}}@media (min-width:980px){.portfolio-grid{grid-template-columns:repeat(3,1fr);gap:32px 28px}}@media (max-width:619px){.pcard .image{aspect-ratio:1/1}}@media (max-width:719px){html[data-layout=bento] .portfolio-grid{grid-auto-rows:calc((100vw - 2 * var(--gutter) - 14px) / 2)}html[data-layout=bento][data-density=compact] .portfolio-grid{grid-auto-rows:calc((100vw - 2 * var(--gutter) - 12px) / 2)}}.pcard{display:flex;flex-direction:column;background:#0000;border-radius:var(--radius-m);text-decoration:none;color:inherit;transition:transform .32s var(--ease-out)}.pcard .image{position:relative;aspect-ratio:4/3;border-radius:var(--radius-l);overflow:hidden;box-shadow:var(--shadow-soft),inset 0 1px 0 #fff6;margin-bottom:18px;transition:box-shadow .32s var(--ease-out)}.pcard .image .grad,.pcard .image .photo{position:absolute;inset:0;transition:transform .7s var(--ease-out)}.pcard .image .photo{width:100%;height:100%;object-fit:cover;display:block;z-index:1}.pcard:hover .image .grad,.pcard:hover .image .photo{transform:scale(1.04)}.pcard .image:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.12  0 0 0 0 0.11  0 0 0 0 0.09  0 0 0 0.5 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.14;pointer-events:none;z-index:2}.pcard:hover .image{box-shadow:var(--shadow-lift),inset 0 1px 0 #fff6}.pcard .image .role{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;gap:8px;padding:7px 11px 7px 10px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);background:#fffaf3d1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffffb3;border-radius:var(--radius-full);z-index:3}.pcard .image .role .dot{width:5px;height:5px;border-radius:50%;background:var(--saffron)}.pcard .image .domain{left:14px;bottom:14px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:lowercase;color:#fffaf3eb;padding:6px 10px;border:1px solid #fffaf352;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.pcard .image .domain,.pcard .image .ext{position:absolute;border-radius:var(--radius-full);z-index:3}.pcard .image .ext{top:14px;right:14px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;background:#fffaf3d1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffffb3;color:var(--ink);font-size:13px;opacity:0;transform:translateY(-2px);transition:opacity .28s var(--ease-out),transform .28s var(--ease-out)}.pcard:hover .image .ext{opacity:1;transform:translateY(0)}.pcard .meta{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--stone);margin-bottom:8px}.pcard h3{font-family:var(--font-display);font-weight:400;font-style:italic;font-size:clamp(1.375rem,.6vw + 1.1rem,1.625rem);line-height:1.15;letter-spacing:-.015em;margin:0;color:var(--ink);text-wrap:balance}[data-density=compact] .portfolio-grid{gap:22px 20px}@media (min-width:980px){[data-density=compact] .portfolio-grid{grid-template-columns:repeat(4,1fr);gap:24px 18px}}[data-density=compact] .pcard .image{margin-bottom:14px}[data-density=compact] .pcard h3{font-size:clamp(1.125rem,.4vw + 1rem,1.25rem)}.pcard .image .overlay,[data-show-categories=false] .pcard .image .role{display:none}html[data-layout=bento] .portfolio-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:158px;grid-auto-flow:dense;gap:14px}@media (min-width:720px){html[data-layout=bento] .portfolio-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:18px}}@media (min-width:1100px){html[data-layout=bento] .portfolio-grid{grid-auto-rows:212px}}html[data-layout=bento][data-density=compact] .portfolio-grid{grid-auto-rows:132px;gap:12px}@media (min-width:720px){html[data-layout=bento][data-density=compact] .portfolio-grid{grid-auto-rows:158px;gap:14px}}html[data-layout=bento] .pcard{height:100%}html[data-layout=bento] .pcard .image{aspect-ratio:auto;height:100%;margin-bottom:0}html[data-layout=bento] .pcard .image .domain,html[data-layout=bento] .pcard>h3{display:none}html[data-layout=bento] .pcard .image .ext,html[data-layout=bento] .pcard .image .role{z-index:4}@media (min-width:720px){html[data-layout=bento][data-bento-shape=mixed] .pcard:nth-child(8n+1){grid-column:span 2;grid-row:span 2}html[data-layout=bento][data-bento-shape=mixed] .pcard:nth-child(8n+4){grid-column:span 2}html[data-layout=bento][data-bento-shape=mixed] .pcard:nth-child(8n+6){grid-row:span 2}}@media (max-width:719px){html[data-layout=bento][data-bento-shape=mixed] .pcard:nth-child(6n+1){grid-column:span 2;grid-row:span 2}html[data-layout=bento][data-bento-shape=mixed] .pcard:nth-child(6n+4){grid-column:span 2}}@media (min-width:720px){html[data-bento-shape=squares] .pcard:first-child{grid-column:1/span 2;grid-row:1/span 2}html[data-bento-shape=squares] .pcard:nth-child(4){grid-column:3/span 2;grid-row:2/span 2}html[data-bento-shape=squares] .pcard:nth-child(11){grid-column:1/span 2;grid-row:5/span 2}html[data-bento-shape=squares] .pcard:nth-child(14){grid-column:3/span 2;grid-row:6/span 2}}@media (max-width:719px){html[data-bento-shape=squares] .pcard:nth-child(8n+1){grid-column:span 2;grid-row:span 2}}html[data-layout=bento] .pcard .image .overlay{display:flex;flex-direction:column;justify-content:flex-end;gap:5px;position:absolute;inset:0;padding:18px;z-index:3;background:linear-gradient(0deg,#1f1b16bd 0,#1f1b164d 38%,#0000 66%)}html[data-layout=bento] .pcard .image .overlay-title{font-family:var(--font-display);font-weight:400;font-style:italic;font-size:clamp(1.0625rem,.5vw + .95rem,1.5rem);line-height:1.12;letter-spacing:-.015em;color:var(--paper);margin:0;text-wrap:balance;text-shadow:0 1px 14px #1f1b1673}html[data-layout=bento] .pcard .image .overlay-domain{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:lowercase;color:#f4ede2d1}html[data-layout=bento] .pcard .image .ext,html[data-layout=bento] .pcard .image .overlay,html[data-layout=bento] .pcard .image .role{transition:opacity .36s var(--ease-out)}html[data-layout=bento] .pcard .image .ext{opacity:1;transform:none}html[data-layout=bento] .pcard:hover .image .ext,html[data-layout=bento] .pcard:hover .image .overlay,html[data-layout=bento] .pcard:hover .image .role{opacity:0;transform:none}.page-head .eyebrow-label,.portfolio .head .eyebrow-label,.services .head .eyebrow-label{margin-bottom:4px}