.photo-directory-page,.photo-studio-page,.photo-set-page{padding-top:28px;padding-bottom:110px}.photo-directory-hero{min-height:280px;background:linear-gradient(90deg,rgba(13,11,13,.96),rgba(13,11,13,.47)),radial-gradient(circle at 75% 38%,rgba(168,47,79,.2),transparent 36%),#211b1c}.photo-directory-hero h1{font-size:clamp(36px,4.7vw,66px)}.photo-index{background:linear-gradient(155deg,#211d20,#151316)}.photo-folder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 17px}.photo-folder{position:relative;min-width:0;padding-top:18px}.photo-folder>a{display:block;min-height:350px;color:#231d20}.photo-folder-tab{position:absolute;z-index:1;top:1px;left:0;width:36%;height:35px;padding:8px 17px 0;border:1px solid #d8c5ae;border-bottom:0;border-radius:14px 17px 0 0;background:linear-gradient(#f2e9da,#e8dbc8);box-shadow:inset 0 1px rgba(255,255,255,.9);color:#6a5256;font-size:10px;letter-spacing:.16em}.photo-folder-sheet{position:relative;display:block;min-height:332px;padding:12px;border:1px solid #d8c5ae;border-radius:0 13px 13px 13px;background:linear-gradient(150deg,#f8f1e5,#e8dccb);box-shadow:inset 0 1px #fff,0 16px 26px rgba(0,0,0,.35);transition:transform .28s,box-shadow .28s}.photo-folder:hover .photo-folder-sheet{transform:translateY(-5px);box-shadow:inset 0 1px #fff,0 22px 35px rgba(0,0,0,.42)}.photo-folder-collage{display:grid;height:245px;grid-template-columns:1.45fr 1fr;grid-template-rows:repeat(2,1fr);gap:5px;overflow:hidden;border:1px solid rgba(60,42,42,.22);border-radius:8px;background:#2a2425}.photo-folder-collage img{width:100%;height:100%;object-fit:cover}.photo-folder-collage img:first-child{grid-row:1/3}.photo-folder-collage img:nth-child(n+4){display:none}.photo-empty-preview{display:grid;grid-column:1/3;grid-row:1/3;place-items:center;background:radial-gradient(circle at 50% 40%,#534245,#211b20 66%);color:#d7c8bd;font-family:Georgia,serif;font-size:22px;letter-spacing:.26em}.photo-folder-info{display:flex;min-height:62px;padding:10px 2px 0;align-items:center;gap:10px}.photo-folder-logo{display:grid;width:43px;height:43px;flex:0 0 43px;border:1px solid #a82f4f;border-radius:50%;place-items:center;overflow:hidden;background:#20191b;color:#fff;font-family:Georgia,serif;font-size:18px}.photo-folder-logo img{width:100%;height:100%;object-fit:cover}.photo-folder-name{display:flex;min-width:0;flex:1;flex-direction:column}.photo-folder-name strong{overflow:hidden;font-family:var(--font-serif);font-size:18px;text-overflow:ellipsis;white-space:nowrap}.photo-folder-name small{overflow:hidden;color:#786b68;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.photo-folder-count{color:#786b68;font-size:10px;white-space:nowrap}.photo-folder-arrow{display:grid;width:30px;height:30px;flex:0 0 30px;border:1px solid #a82f4f;border-radius:50%;place-items:center;color:#a82f4f}.photo-folder:hover .photo-folder-arrow{background:#a82f4f;color:#fff}
.photo-studio-hero{position:relative;min-height:420px;border:1px solid rgba(255,255,255,.12);border-radius:20px;overflow:hidden;background:#181417}.photo-studio-hero>img,.photo-studio-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.photo-studio-shade{background:linear-gradient(90deg,rgba(12,10,12,.97),rgba(12,10,12,.74) 45%,rgba(12,10,12,.15))}.photo-studio-hero-copy{position:relative;z-index:1;display:flex;min-height:420px;max-width:680px;padding:44px;justify-content:end;align-items:flex-start;flex-direction:column}.photo-studio-hero-logo{display:grid;width:72px;height:72px;margin-bottom:15px;border:1px solid var(--mint);border-radius:50%;place-items:center;overflow:hidden;background:#1b1719;font-family:var(--font-serif);font-size:25px}.photo-studio-hero-logo img{width:100%;height:100%;object-fit:cover}.photo-studio-hero h1{margin:7px 0;font-family:var(--font-serif);font-size:clamp(37px,4vw,60px)}.photo-studio-hero p{max-width:540px;margin:0;color:#d0c6cb;line-height:1.7}.photo-studio-hero-stats{display:flex;margin-top:21px;gap:18px;color:var(--mint);font-size:13px}.photo-album-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.photo-album-card{display:block;min-width:0;border:1px solid rgba(255,255,255,.11);border-radius:13px;overflow:hidden;background:#1d191d;color:#fff;transition:.25s}.photo-album-card:hover{border-color:var(--mint);transform:translateY(-3px)}.photo-album-image{display:block;aspect-ratio:4/3;background:linear-gradient(145deg,#3b2a32,#161215)}.photo-album-image img{width:100%;height:100%;object-fit:cover}.photo-album-info{display:flex;padding:12px;flex-direction:column}.photo-album-info strong{font-size:14px}.photo-album-info small{margin-top:4px;color:#999099;font-size:11px}.photo-muted{color:var(--muted)}
.photo-set-header{max-width:850px;margin:0 auto 30px;text-align:center}.photo-set-header h1{margin:7px 0;font-family:var(--font-serif);font-size:clamp(38px,5vw,68px)}.photo-set-header p{color:#c1b7bd}.photo-set-meta{display:flex;justify-content:center;gap:16px;color:var(--muted);font-size:12px}.photo-set-meta a{color:var(--mint)}.photo-set-description{max-width:850px;margin:0 auto 28px}.photo-set-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.photo-set-tile{display:block;padding:0;border:0;border-radius:12px;overflow:hidden;background:#211a20;cursor:zoom-in}.photo-set-tile img{display:block;width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .4s}.photo-set-tile:hover img{transform:scale(1.035)}.photo-lightbox{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:25px;border:0;background:rgba(8,6,9,.96);overflow:auto}.photo-lightbox::backdrop{background:rgba(0,0,0,.85)}.photo-lightbox img{display:block;max-width:100%;max-height:calc(100dvh - 50px);margin:auto;object-fit:contain}.photo-lightbox [data-photo-close]{position:fixed;z-index:2;right:18px;top:14px;width:44px;height:44px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:#292126;color:#fff;font-size:29px;cursor:pointer}

/* Photo collection pagination: a quiet index instead of boxed controls. */
.photo-page-index{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:35px;padding-top:20px;border-top:1px solid rgba(215,196,206,.22)}
.photo-page-index-summary{display:flex;align-items:baseline;gap:13px;white-space:nowrap}
.photo-page-index-summary span{color:#ab9ca5;font-size:10px;font-weight:700;letter-spacing:.19em}
.photo-page-index-summary strong{color:var(--mint);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.09em}
.photo-page-index .page-numbers{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:3px;margin:0;padding:0;list-style:none}
.photo-page-index .page-numbers li{margin:0;padding:0}
.photo-page-index .page-numbers li>a,.photo-page-index .page-numbers li>span{display:grid;place-items:center;min-width:40px;min-height:42px;padding:0 8px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;box-shadow:none;color:#bdb0b7;font-family:inherit;font-size:14px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1;transition:color .2s,border-color .2s,background-color .2s}
.photo-page-index .page-numbers li>a:hover,.photo-page-index .page-numbers li>a:focus-visible{border-color:rgba(135,229,209,.65);background:rgba(135,229,209,.06);color:var(--mint)}
.photo-page-index .page-numbers li>a:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
.photo-page-index .page-numbers li>span.current{border-color:var(--mint);background:transparent;color:var(--mint);font-weight:700}
.photo-page-index .page-numbers li>span.dots{min-width:23px;padding:0 2px;color:#877b83}
.photo-page-index .page-numbers li>a.prev,.photo-page-index .page-numbers li>a.next{min-width:auto;padding:0 13px;color:#ded2d8;font-size:12px;white-space:nowrap}
.photo-page-index .page-numbers li>a.prev{margin-right:8px}
.photo-page-index .page-numbers li>a.next{margin-left:8px}
@media(max-width:760px){.photo-page-index{align-items:flex-start;flex-direction:column;gap:8px;margin-top:27px;padding-top:18px}.photo-page-index .page-numbers{justify-content:flex-start}.photo-page-index .page-numbers li>a,.photo-page-index .page-numbers li>span{min-width:40px;min-height:44px}.photo-page-index .page-numbers li>a.prev{margin-right:2px}.photo-page-index .page-numbers li>a.next{margin-left:2px}}
@media(max-width:1050px){.photo-album-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-folder-collage{height:205px}.photo-folder-sheet{min-height:290px}.photo-folder>a{min-height:308px}}
@media(max-width:760px){.photo-directory-page,.photo-studio-page,.photo-set-page{padding-top:18px;padding-bottom:118px}.photo-directory-hero{min-height:210px}.photo-directory-hero h1{font-size:35px}.photo-folder-grid{grid-template-columns:1fr;gap:15px}.photo-folder-collage{height:230px}.photo-folder-sheet{min-height:310px}.photo-folder>a{min-height:328px}.photo-studio-hero,.photo-studio-hero-copy{min-height:350px}.photo-studio-shade{background:linear-gradient(0deg,rgba(12,10,12,.98),rgba(12,10,12,.58) 60%,rgba(12,10,12,.12))}.photo-studio-hero-copy{padding:24px}.photo-studio-hero h1{font-size:37px}.photo-album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.photo-set-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.photo-set-header h1{font-size:35px}.photo-set-meta{flex-wrap:wrap}.photo-lightbox{padding:50px 8px}}
@media(max-width:420px){.photo-folder-collage{height:195px}.photo-folder-sheet{min-height:275px}.photo-folder>a{min-height:293px}.photo-folder-count{display:none}.photo-folder-name strong{font-size:16px}.photo-album-info strong{font-size:12px}}
:root{--font-serif:"Songti SC","Noto Serif CJK SC","SimSun",serif}
@media(min-width:1401px){.site-header .brand{max-width:180px;flex-basis:180px}.site-header .desktop-nav{gap:22px}}
@media(min-width:761px) and (max-width:1400px){.site-header .header-inner{gap:clamp(12px,1.8vw,24px)}.site-header .brand{max-width:150px;flex-basis:150px}.site-header .desktop-nav{gap:clamp(9px,1.2vw,18px)}.site-header .header-search,.site-header .header-inner:has(.header-auth-actions) .header-search{position:static;right:auto;left:auto;width:clamp(155px,21vw,290px);min-width:0;margin-left:auto;transform:none}.site-header .header-account-menu,.site-header .header-auth-actions{margin-left:0}}
@media(min-width:761px) and (max-width:900px){.site-header .brand{max-width:120px;flex-basis:120px;font-size:27px}.site-header .desktop-nav a{font-size:12px}.site-header .header-auth-actions button{min-width:55px;padding:0 10px}}
