/* Photo-first homepage. Intentionally scoped to leave service pages unchanged. */
.photo-home{background:#f7f8f3}.photo-home [data-site-header]{position:sticky;top:-31px;z-index:100}.photo-home .site-header{background:rgba(250,252,248,.86);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);box-shadow:0 8px 30px #07162a0b;border-bottom:1px solid #ffffffb3}.photo-home .header-cta{box-shadow:inset 0 1px 1px #ffffffb3,0 5px 18px #8fc62f33}.photo-home .button{transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.photo-home .button:hover{transform:translateY(-3px);box-shadow:0 12px 26px #07162a26}.photo-home :focus-visible{outline:3px solid #8fc62f;outline-offset:5px}
.photo-home .photo-hero{min-height:0;background:#07162a}.photo-home .photo-hero .work-slides{height:100%;bottom:90px}.photo-home .photo-hero::before{background:linear-gradient(0deg,rgba(4,16,31,.9),rgba(4,16,31,.06) 82%),linear-gradient(90deg,rgba(4,16,31,.3),transparent 75%)}.photo-home .photo-hero::after{display:none}.photo-home .photo-hero>.hero-layout{min-height:clamp(500px,calc(100svh - 260px),650px);display:flex;align-items:flex-end;padding-top:170px;padding-bottom:28px}.photo-home .hero-copy{padding:0;max-width:750px}.photo-home .hero-copy h1{font-size:clamp(2.8rem,5.7vw,5.2rem);line-height:1.06;letter-spacing:-.045em}.photo-home .hero-copy>p{font-size:1rem;max-width:580px;margin:22px 0}.photo-home .hero-proof{margin-top:24px;gap:20px}.photo-home .work-slide{object-position:center 58%;transition:opacity 1.4s ease;transform:scale(1.025)}.photo-home .work-slide.is-active{animation:photo-drift 9s ease-out both}@keyframes photo-drift{from{transform:scale(1.025)}to{transform:scale(1)}}
.photo-home .glass{background:rgba(13,32,45,.65);border:1px solid rgba(255,255,255,.3);box-shadow:inset 0 1px 0 #ffffff26,0 12px 34px #0002;backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%);color:#fff}.photo-home .button-outline{background:#ffffff16;border-color:#ffffff70;backdrop-filter:blur(12px)}.photo-home .photo-story{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:30px;min-height:0}.photo-caption{display:grid;grid-template-columns:1fr 25px;gap:4px 30px;border-radius:16px;padding:14px 20px;text-decoration:none}.photo-kicker{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#dce7de}.photo-caption strong{font-size:14px;font-weight:600}.photo-caption>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:22px}.photo-controls{display:flex;gap:6px;align-items:center;padding:5px;border-radius:99px}.photo-controls button{background:transparent;color:inherit;border:0;border-radius:50%;height:44px;width:44px;font-size:20px;cursor:pointer}.photo-controls button:hover{background:#ffffff20}.photo-controls [data-slide-count]{font-size:11px;font-variant-numeric:tabular-nums;padding:0 6px}.photo-home .hero-service-strip{background:#edf1e8}.photo-home .hero-service-strip small{color:#526171}
.photo-home .featured-work{background:#f7f8f3;padding-bottom:65px;scroll-margin-top:100px}.photo-home .section-heading h2{letter-spacing:-.035em}.photo-home .home-comparisons{display:grid;gap:38px}.photo-home .project-comparison{margin:0;padding:0;border:0;background:none}.photo-home .project-comparison h3{font-size:1.25rem;margin:0 0 6px}.photo-home .project-comparison>p{margin:0 0 18px;color:#5c6b72;font-size:14px}.photo-home .comparison-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.photo-home .comparison-pair figure{position:relative;margin:0;overflow:hidden;border-radius:18px;background:#e4e9df}.photo-home .comparison-pair a{display:block;aspect-ratio:4/3;overflow:hidden;cursor:zoom-in}.photo-home .comparison-pair img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .65s cubic-bezier(.2,.65,.2,1)}.photo-home .comparison-pair a:hover img{transform:scale(1.025)}.photo-home .comparison-pair figcaption{position:absolute;bottom:16px;left:16px;padding:8px 17px;border-radius:50px;background:#07162abc;backdrop-filter:blur(12px);border:1px solid #ffffff5c;color:white;font-size:12px;font-weight:700;pointer-events:none}.photo-home .comparison-pair figure:nth-child(2) figcaption{background:#d8f3a9ed;color:#07162a}.photo-hint{font-size:12px;color:#667466;text-align:center;margin:22px 0 0}.photo-home .request-section{background:#e8eee1}.request-layout{display:grid;grid-template-columns:.7fr 1fr;gap:70px;align-items:start}.request-intro{position:sticky;top:140px;padding-top:35px}.request-intro h2{font-size:clamp(2.5rem,4vw,4rem);letter-spacing:-.04em}.request-intro p{color:#526171;margin:22px 0 30px}.request-section .hero-conversion-card{box-shadow:0 20px 55px #07162a12;border:1px solid #fff}.photo-home .project-tile{cursor:zoom-in}.photo-home .project-tile span{backdrop-filter:blur(12px);background:#07162a80;border:1px solid #ffffff30;border-radius:12px;padding:10px 14px;left:15px;bottom:15px;right:15px}.photo-home .reveal{transition:opacity .7s ease,transform .7s cubic-bezier(.2,.65,.2,1)}
.photo-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:100%;max-height:100%;margin:0;border:0;padding:20px 28px;background:#07101bf5;color:white;overflow:auto}.photo-dialog[open]{display:flex;flex-direction:column;align-items:center}.photo-dialog::backdrop{background:#07101b}.lightbox-toolbar{display:flex;width:100%;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.lightbox-toolbar p{margin:0;font-size:14px}.lightbox-toolbar button{border:1px solid #ffffff70;border-radius:99px;padding:12px 20px;background:#ffffff10;color:white;cursor:pointer;white-space:nowrap}.photo-dialog img{width:100%;height:calc(100dvh - 135px);object-fit:contain;min-height:0}.lightbox-tip{font-size:12px;color:#bac8cf;margin:12px 0 0}
@media(max-width:1100px){.request-layout{gap:35px;grid-template-columns:.6fr 1fr}}
@media(max-width:850px){.photo-home [data-site-header]{top:0}.photo-home .photo-hero>.hero-layout{min-height:620px;padding-top:180px}.photo-home .photo-hero .work-slides{height:100%}.photo-home .work-slide{animation:none!important;transform:none}.photo-home .request-layout{grid-template-columns:1fr;gap:25px}.request-intro{position:static;padding:0;max-width:600px}.photo-home .main-nav.open{background:rgba(250,252,248,.98)}.photo-home .hero-proof{gap:10px 20px}}
@media(max-width:620px){.photo-home .photo-hero>.hero-layout{min-height:570px;padding-top:170px;padding-bottom:25px}.photo-home .hero-copy h1{font-size:clamp(2.7rem,11vw,3.8rem)}.photo-home .hero-copy>p{font-size:.93rem;line-height:1.6}.photo-home .hero-proof{font-size:11px;margin-top:22px}.photo-home .hero-proof span{font-size:10px}.photo-home .photo-story{flex-wrap:wrap;gap:12px;padding-bottom:25px}.photo-caption{padding:10px 14px;gap:2px 20px}.photo-kicker{font-size:9px}.photo-caption strong{font-size:12px}.photo-controls{gap:0}.photo-controls button{width:38px;height:40px}.photo-controls [data-slide-count]{font-size:10px;padding:0 3px}.photo-home .comparison-pair{gap:10px}.photo-home .comparison-pair figure{border-radius:10px}.photo-home .comparison-pair figcaption{bottom:8px;left:8px;font-size:10px;padding:5px 10px}.photo-home .home-comparisons{gap:30px}.photo-home .featured-work{padding-block:55px}.photo-home .hero-tool-tabs button{padding:10px 7px;font-size:12px}.photo-home .hero-tool-tabs button span{font-size:10px}.photo-dialog{padding:16px}.lightbox-toolbar p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.photo-home *, .photo-home *::before,.photo-home *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.photo-home .reveal{opacity:1;transform:none}}
html[data-reduced-motion="true"] .photo-home *,html[data-reduced-motion="true"] .photo-home *::before,html[data-reduced-motion="true"] .photo-home *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
/* On phones, show the actual project before the copy instead of cropping it behind text. */
@media(max-width:620px){.photo-home .photo-hero .work-slides{height:300px;bottom:auto}.photo-home .photo-hero .work-slide{object-position:center 65%}.photo-home .photo-hero::before{height:301px;bottom:auto;background:linear-gradient(0deg,#07162a,transparent 26%)}.photo-home .photo-hero>.hero-layout{min-height:0;padding-top:325px;padding-bottom:24px}.photo-home .hero-copy h1{font-size:clamp(2.6rem,10.6vw,3.5rem)}.photo-home .hero-copy>p{margin:18px 0}.photo-home .hero-proof{margin-top:20px}.photo-home .hero-actions{gap:10px}}

.photo-controls [data-slide-pause]{font-size:11px;font-weight:700;width:48px}.photo-controls [data-slide-pause]:disabled{opacity:.6;cursor:default}
/* Compact first screen: keep the headline and both actions in view. */
.photo-home .photo-hero>.hero-layout{min-height:0;padding-top:clamp(45px,8vh,85px);padding-bottom:20px}.photo-home .hero-copy h1{font-size:clamp(2.6rem,4.5vw,4rem)}.photo-home .hero-copy>p{font-size:.95rem;line-height:1.6;margin:18px 0;max-width:560px}.photo-home .hero-proof{margin-top:20px}.photo-home .photo-story{padding-bottom:20px}.photo-home .photo-caption{padding:10px 16px}.photo-home .photo-hero .work-slides{bottom:0}.photo-home .photo-hero .hero-service-strip .service-strip-grid a{padding-block:17px}
@media(max-width:850px){.photo-home .photo-hero>.hero-layout{padding-top:80px}.photo-home .hero-copy h1{font-size:clamp(2.5rem,6vw,3.5rem)}}
@media(max-width:620px){.photo-home .photo-hero .work-slides{height:clamp(130px,23svh,180px)}.photo-home .photo-hero::before{height:clamp(131px,23svh,181px)}.photo-home .photo-hero>.hero-layout{padding-top:calc(clamp(130px,23svh,180px) + 18px);padding-bottom:16px}.photo-home .hero-copy h1{font-size:clamp(2rem,8.4vw,2.6rem);line-height:1.06}.photo-home .hero-copy .eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:10px}.photo-home .hero-copy>p{font-size:13px;line-height:1.5;margin:13px 0 16px}.photo-home .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.photo-home .hero-actions .button{min-width:0;width:auto;padding:12px 8px;font-size:11px;white-space:nowrap}.photo-home .hero-proof{margin-top:15px;gap:7px 12px}.photo-home .hero-proof span{font-size:9px}.photo-home .hero-proof span::before{width:17px;height:17px;flex:0 0 17px}.photo-home .photo-story{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-bottom:18px}.photo-home .photo-kicker{display:none}.photo-home .photo-caption{padding:10px;gap:2px 7px;border-radius:12px;min-height:46px;align-items:center}.photo-home .photo-caption strong{font-size:11px}.photo-home .photo-caption>span:last-child{font-size:16px}.photo-controls button{width:30px;height:34px;font-size:16px}.photo-controls [data-slide-pause]{width:40px;font-size:10px}.photo-controls [data-slide-count]{font-size:9px;padding:0 2px}.photo-home .hero-service-strip .service-strip-grid a{padding-block:10px!important}.photo-home .hero-service-strip small{display:none}}
@media(max-height:700px) and (min-width:621px){.photo-home .photo-hero>.hero-layout{padding-top:32px;padding-bottom:16px}.photo-home .hero-copy h1{font-size:3rem}.photo-home .hero-copy>p{margin:12px 0}.photo-home .hero-proof{margin-top:14px}.photo-home .nav-shell{height:70px}}
