.photography{background:#fff;color:var(--ink);padding-block:95px 90px}
.photography .section-heading{margin-bottom:38px}
.photography .eyebrow{color:var(--purple)}
.niche-tabs{display:flex;gap:10px;flex-wrap:wrap;border-bottom:1px solid #e4dfe9;padding-bottom:26px;margin-bottom:26px}
.niche-tabs button{font:inherit;font-size:14px;font-weight:600;line-height:1.4;background:#fff;color:#655d6e;border:1px solid #dfd8e7;border-radius:30px;padding:13px 21px;transition:background .2s,border-color .2s,color .2s;cursor:pointer;min-height:48px}
.niche-tabs button[aria-selected="true"]{background:var(--purple);border-color:var(--purple);color:#fff}
.niche-tabs button:hover:not([aria-selected="true"]){border-color:var(--purple);color:var(--purple);background:#f6f2ff}
.niche-intro{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:27px}
.niche-intro h3{font-size:26px;font-weight:600;letter-spacing:-.04em;line-height:1.25;margin-bottom:9px}
.niche-intro p{font-size:15px;color:#796f84;line-height:1.6}
#niche-count{font-size:12px;letter-spacing:.03em;white-space:nowrap;padding-bottom:3px;color:#75657f}
.niche-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:start}
.niche-card{min-width:0;margin:0}
.photo-button{display:block;width:100%;position:relative;border:0;padding:0;background:#f6f4f8;overflow:hidden;aspect-ratio:3/4;cursor:zoom-in}
.photo-button img{width:100%;height:100%;display:block;object-fit:contain}
.niche-grid[data-niche="restaurantes"] .photo-button{aspect-ratio:1}
.niche-grid[data-niche="ropa"] .photo-button{aspect-ratio:2/3}
.niche-grid[data-niche="calzado"] .photo-button{aspect-ratio:3/4;background:white;border:1px solid #f1edf5}
.niche-grid[data-niche="bolsos"] .photo-button{aspect-ratio:4/5;background:white}
.photo-zoom{position:absolute;bottom:13px;right:13px;width:34px;height:34px;display:grid;place-items:center;background:#fff;color:#171119;border-radius:50%;font-size:22px;box-shadow:0 2px 12px #16092416;transition:background .2s,color .2s}
.photo-button:hover .photo-zoom,.photo-button:focus-visible .photo-zoom{background:var(--purple);color:#fff}
.niche-card figcaption{display:flex;justify-content:space-between;gap:15px;padding:15px 0 0;font-size:12px;line-height:1.5;letter-spacing:.03em}
.niche-card figcaption>span:last-child{color:#8f819b}
.photography-bottom{margin-top:35px;padding-top:24px;border-top:1px solid #e4dfe9;display:flex;justify-content:space-between;align-items:center;gap:25px}
.photography-bottom p{font-size:16px;line-height:1.6;color:#7a6e83}
.photography-bottom .text-link{color:var(--purple);border-bottom-color:var(--purple)}
.photo-viewer-open{overflow:hidden}
.photo-viewer{background:#0b090e;border:1px solid #ffffff26;color:white;padding:0;width:min(1080px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);border-radius:5px;overflow:hidden}
.photo-viewer::backdrop{background:#08060aed;backdrop-filter:blur(7px)}
.viewer-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 22px;border-bottom:1px solid #ffffff20}
#viewer-caption{font-size:14px;line-height:1.4;margin:0}
.viewer-close,.viewer-nav{color:white;background:transparent;border:1px solid #ffffff45;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-size:26px;line-height:1;cursor:pointer;flex-shrink:0}
.viewer-close:hover,.viewer-nav:hover{background:var(--purple);border-color:var(--purple)}
.viewer-photo{height:min(72dvh,750px);margin:0;padding:12px;display:grid;place-items:center;min-height:0}
.viewer-photo img{display:block;width:100%;height:100%;max-height:min(69dvh,725px);object-fit:contain}
.viewer-footer{display:flex;align-items:center;justify-content:center;gap:23px;padding:12px 22px 18px}
#viewer-position{font-size:14px;min-width:60px;text-align:center;color:#e1d7ef}
@media(max-width:1100px){.niche-grid{gap:16px}.niche-tabs button{padding:12px 18px}}
@media(max-width:760px){.photography{padding-block:65px 58px}.photography .section-heading{margin-bottom:28px}.niche-tabs{gap:8px;padding-bottom:22px;margin-bottom:22px}.niche-tabs button{font-size:14px;min-height:44px;padding:11px 15px}.niche-intro{gap:18px;align-items:start;margin-bottom:22px}.niche-intro h3{font-size:24px}.niche-intro p{font-size:14px;max-width:300px}#niche-count{font-size:11px;padding-top:7px}.niche-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.niche-card figcaption{font-size:11px;padding-top:10px}.photo-zoom{width:30px;height:30px;bottom:9px;right:9px;font-size:20px}.photography-bottom{align-items:start;flex-direction:column;gap:15px;margin-top:28px}.photography-bottom p{font-size:15px}.photo-viewer{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.viewer-header{padding:12px 14px}#viewer-caption{font-size:13px}.viewer-photo{height:65dvh;padding:8px}.viewer-photo img{max-height:63dvh}.viewer-footer{padding:8px 14px 15px}.viewer-close,.viewer-nav{width:40px;height:40px}}
@media(max-width:370px){.niche-tabs button{padding:10px 12px;font-size:13px}.niche-intro{display:block}#niche-count{margin-top:8px}.niche-grid{gap:22px 12px}}

@media(min-width:761px) and (max-width:980px){.header nav{gap:16px;font-size:13px}.header .brand{width:150px;margin-left:-20px}.header .nav-contact{padding:12px 17px;gap:18px}.header{gap:14px}}
