.back-top{z-index:40;color:#dbc291;cursor:pointer;opacity:0;visibility:hidden;width:52px;height:52px;transition:opacity var(--transition), visibility var(--transition), transform var(--transition), border-color var(--transition), background var(--transition), color var(--transition);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121212eb;border:1px solid #c9a86a59;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:0;display:inline-flex;position:fixed;bottom:28px;right:20px;transform:translateY(12px);box-shadow:0 8px 24px #00000059}@media (min-width:640px){.back-top{bottom:40px;right:32px}}.back-top:hover{color:#c9a86a;background:#c9a86a1f;border-color:#c9a86aa6}.back-top--visible{opacity:1;visibility:visible;transform:translateY(0)}.back-top__icon{width:18px;height:18px}.back-top__label{letter-spacing:.12em;font-size:10px;line-height:1}.photography-page{flex-direction:column;min-height:100vh;display:flex}.photography-page main{flex:1 0 auto;padding:56px 0 96px}.photography-hero{text-align:center;max-width:640px;margin:0 auto 48px}.photography-hero__eyebrow{letter-spacing:.32em;color:var(--color-text-muted);text-transform:uppercase;margin:0 0 16px;font-size:12px}.photography-hero__title{font-family:var(--font-serif);letter-spacing:.12em;margin:0 0 18px;font-size:clamp(2rem,4.5vw,2.75rem);font-weight:600}.photography-hero__desc{letter-spacing:.04em;color:var(--color-text-secondary);margin:0;font-size:14px;line-height:1.9}.photography-tabs{flex-wrap:wrap;justify-content:center;gap:10px;margin:-12px auto 40px;display:flex}.photography-tabs__item{border-radius:var(--radius-pill);border:1px solid rgba(var(--rgb-fg), .12);background:rgba(var(--rgb-fg), .02);letter-spacing:.05em;color:var(--color-text-secondary);transition:border-color var(--transition), color var(--transition), background var(--transition);align-items:center;gap:7px;padding:7px 18px;font-size:13px;display:inline-flex}.photography-tabs__item:hover{border-color:rgba(var(--rgb-fg), .3);color:var(--color-text);background:rgba(var(--rgb-fg), .05)}.photography-tabs__item--active{border-color:var(--color-cream);background:var(--color-cream);color:var(--color-dark-text);font-weight:500}.photography-tabs__count{opacity:.7;font-size:11px}.photography-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:1080px;margin:0 auto;display:grid}@media (min-width:640px){.photography-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}}.photography-card{--rgb-fg:255, 255, 255;--color-cream:#e5e1d8;--color-text-muted:#ffffff52;--color-text-secondary:#ffffff85;border-radius:var(--radius-md);border:1px solid var(--color-card-border);transition:border-color var(--transition), transform var(--transition);display:block;overflow:hidden}.photography-card:hover{border-color:var(--color-card-border-hover);transform:translateY(-3px)}.photography-card:hover .photography-card__cover{transform:scale(1.04)}.photography-card:hover .photography-card__action{color:var(--color-cream);opacity:1}.photography-card__media{aspect-ratio:4/5;background:var(--color-card-dark);position:relative;overflow:hidden}.photography-card__cover{object-fit:cover;width:100%;height:100%;transition:transform .45s;display:block}.photography-card__placeholder{background:linear-gradient(145deg, rgba(var(--rgb-fg), .04), transparent 55%), var(--color-card-dark);width:100%;height:100%}.photography-card__shade{pointer-events:none;background:linear-gradient(#00000014 0%,#0000002e 40%,#000000c7 100%);position:absolute;inset:0}.photography-card__body{z-index:1;padding:18px 16px 16px;position:absolute;bottom:0;left:0;right:0}.photography-card__tag{letter-spacing:.14em;color:rgba(var(--rgb-fg), .72);margin-bottom:8px;font-size:11px;display:inline-block}.photography-card__name{font-family:var(--font-serif);letter-spacing:.08em;color:var(--color-cream);margin:0 0 6px;font-size:17px;font-weight:560;line-height:1.35}.photography-card__meta{letter-spacing:.06em;color:rgba(var(--rgb-fg), .55);white-space:nowrap;text-overflow:ellipsis;margin:0 0 10px;font-size:12px;overflow:hidden}.photography-card__action{letter-spacing:.08em;color:rgba(var(--rgb-fg), .55);opacity:.85;transition:color var(--transition), opacity var(--transition);align-items:center;gap:6px;font-size:12px;display:inline-flex}.photography-card__badge{z-index:1;border-radius:var(--radius-pill);border:1px solid rgba(var(--rgb-fg), .35);letter-spacing:.12em;color:var(--color-cream);background:#00000059;padding:3px 10px;font-size:11px;position:absolute;top:12px;left:12px}.photography-empty{text-align:center;letter-spacing:.08em;min-height:360px;color:var(--color-text-muted);justify-content:center;align-items:center;margin:0 auto;padding:72px 24px;font-size:14px;display:flex}.photography-pagination{justify-content:center;align-items:center;gap:10px;margin-top:48px;display:flex}.photography-pagination__link,.photography-pagination__current{border-radius:var(--radius-pill);border:1px solid rgba(var(--rgb-fg), .12);letter-spacing:.04em;justify-content:center;align-items:center;min-width:38px;height:38px;padding:0 16px;font-size:13px;display:inline-flex}.photography-pagination__link{background:rgba(var(--rgb-fg), .02);color:var(--color-text-secondary);transition:border-color var(--transition), color var(--transition), background var(--transition)}.photography-pagination__link:hover{border-color:rgba(var(--rgb-fg), .3);color:var(--color-text);background:rgba(var(--rgb-fg), .05)}.photography-pagination__link--disabled{opacity:.35;pointer-events:none}.photography-pagination__current{border-color:var(--color-cream);background:var(--color-cream);color:var(--color-dark-text);font-weight:500}.photography-detail{max-width:960px;margin:0 auto}.photography-detail__back{letter-spacing:.04em;color:var(--color-text-secondary);transition:color var(--transition);margin-bottom:28px;font-size:13px;display:inline-flex}.photography-detail__back:hover{color:var(--color-cream)}.photography-detail__head{text-align:center;margin-bottom:36px}.photography-detail__badges{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:18px;display:flex}.photography-badge{border-radius:var(--radius-pill);border:1px solid rgba(var(--rgb-fg), .14);background:rgba(var(--rgb-fg), .03);letter-spacing:.08em;color:var(--color-text-secondary);transition:border-color var(--transition), color var(--transition);align-items:center;padding:4px 12px;font-size:12px;display:inline-flex}.photography-badge:hover{border-color:rgba(var(--rgb-fg), .3);color:var(--color-text)}.photography-badge--top{border-color:var(--color-cream);color:var(--color-cream)}.photography-detail__title{font-family:var(--font-serif);letter-spacing:.1em;margin:0 0 16px;font-size:clamp(1.75rem,4vw,2.4rem);font-weight:600;line-height:1.35}.photography-detail__meta{letter-spacing:.06em;color:var(--color-text-muted);flex-wrap:wrap;justify-content:center;gap:8px 18px;margin-bottom:18px;font-size:13px;display:flex}.photography-detail__summary{letter-spacing:.04em;max-width:640px;color:var(--color-text-secondary);margin:0 auto 20px;font-size:14px;line-height:1.9}.photography-detail__tags{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.photography-tag{border-radius:var(--radius-pill);border:1px solid rgba(var(--rgb-fg), .1);letter-spacing:.06em;color:var(--color-text-secondary);padding:3px 10px;font-size:12px;display:inline-flex}.photo-gallery{grid-template-columns:1fr;gap:12px;margin-top:8px;display:grid}@media (min-width:640px){.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}.photo-gallery__item{border:1px solid var(--color-card-border);border-radius:var(--radius-md);background:var(--color-card-dark);cursor:zoom-in;width:100%;transition:border-color var(--transition), transform var(--transition);padding:0;display:block;overflow:hidden}.photo-gallery__item:hover{border-color:var(--color-card-border-hover);transform:translateY(-2px)}.photo-gallery__item:hover .photo-gallery__img{transform:scale(1.02)}.photo-gallery__img{vertical-align:middle;width:100%;height:auto;transition:transform .4s;display:block}.photo-gallery__empty{text-align:center;color:var(--color-text-muted);margin:48px 0;font-size:14px}.photo-lightbox{z-index:1000;cursor:zoom-out;background:#000000eb;justify-content:center;align-items:center;padding:48px 56px;display:flex;position:fixed;inset:0}.photo-lightbox__img{object-fit:contain;cursor:default;border-radius:4px;width:auto;max-width:min(96vw,1200px);height:auto;max-height:86vh}.photo-lightbox__close{width:40px;height:40px;color:rgba(var(--rgb-fg), .8);cursor:pointer;transition:color var(--transition);background:0 0;border:none;font-size:32px;line-height:1;position:absolute;top:18px;right:22px}.photo-lightbox__close:hover{color:#fff}.photo-lightbox__nav{border:1px solid rgba(var(--rgb-fg), .2);background:rgba(var(--rgb-fg), .06);width:44px;height:44px;color:rgba(var(--rgb-fg), .85);cursor:pointer;transition:background var(--transition), border-color var(--transition);border-radius:50%;font-size:28px;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.photo-lightbox__nav:hover{background:rgba(var(--rgb-fg), .12);border-color:rgba(var(--rgb-fg), .4)}.photo-lightbox__nav--prev{left:16px}.photo-lightbox__nav--next{right:16px}.photo-lightbox__counter{letter-spacing:.12em;color:rgba(var(--rgb-fg), .55);margin:0;font-size:13px;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.photography-adjacent{border-top:1px solid rgba(var(--rgb-fg), .08);grid-template-columns:1fr;gap:12px;margin-top:48px;padding-top:32px;display:grid}@media (min-width:640px){.photography-adjacent{grid-template-columns:1fr 1fr}}.photography-adjacent__link{max-width:100%;color:var(--color-text-secondary);transition:color var(--transition);align-items:baseline;gap:10px;display:inline-flex}.photography-adjacent__link:hover,.photography-adjacent__link:hover .photography-adjacent__name,.photography-adjacent__link:hover .photography-adjacent__label{color:var(--color-cream)}@media (min-width:640px){.photography-adjacent__link--next{justify-self:end}}.photography-adjacent__name{font-family:var(--font-serif);letter-spacing:.06em;color:var(--color-cream);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.photography-adjacent__label{letter-spacing:.12em;color:var(--color-text-muted);flex-shrink:0;font-size:12px}
