/* Shared neutral photographic design for both archives. */
.site-header .brand strong{font-size:22px}.site-header .brand small{letter-spacing:.4px}.photo-logo{width:28px;height:28px;flex-shrink:0;color:#d7bd91}.photo-hero{position:relative;min-height:620px;height:calc(100svh - 88px);isolation:isolate;overflow:hidden;background:#232923;color:#f5f0e6;display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,620px);align-items:center;gap:clamp(30px,5vw,100px);padding:40px clamp(24px,6vw,96px)}.photo-backdrop{position:absolute;inset:-12px;background:center/cover no-repeat;filter:blur(2px);z-index:-2}.photo-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111c169e,#18251a26),linear-gradient(0deg,#131d1766,transparent);z-index:-1}.hero-copy{max-width:550px}.hero-copy .eyebrow{color:#dac6a4;font-size:11px;letter-spacing:2px;margin:0 0 22px}.hero-copy h1{font:clamp(42px,4.4vw,66px)/1.13 Georgia,serif;letter-spacing:-1px;margin:0 0 26px}.hero-subtitle{font-size:17px;line-height:1.85;color:#eeece0;max-width:510px;margin:0 0 32px}.hero-links{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.hero-links .primary{border:0;border-radius:4px;padding:14px 22px;background:#f0e5d2;color:#263026;font-size:14px}.hero-links .primary:hover{background:#fff7e8}.photo-total{font-size:12px;color:#ddd6c3}.photo-frame{width:100%;padding:20px;background:#f8f4e9c9;backdrop-filter:blur(22px);border:1px solid #ffffff70;box-shadow:0 16px 55px #07170d33;border-radius:7px;color:#333b30}.frame-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px;font-size:11px;color:#56624b}.frame-top>span:before{content:'';display:inline-block;width:5px;height:5px;margin-inline-end:9px;border-radius:50%;background:#a28b5c}.frame-add{border:1px solid #868d7655;background:#f5f3ed55;color:#46543f;font-size:12px;padding:6px 10px;border-radius:4px}.frame-open{display:block;height:clamp(300px,52svh,500px);background:#e6e3d957;overflow:hidden;border-radius:2px}.frame-open img{display:block;width:100%;height:100%;object-fit:contain}.frame-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px}.frame-meta{min-width:0}.frame-meta p{font:19px/1.3 Georgia,serif;margin:0;overflow-wrap:anywhere}.frame-meta small{display:block;margin-top:5px;color:#65705a;font-size:10px}.frame-controls{display:flex;gap:5px;flex-shrink:0}.frame-controls button{border:1px solid #868d7640;border-radius:50%;width:32px;height:32px;background:transparent;color:#46543f;font-size:17px}.frame-controls button:hover{background:#f8f4e980}.frame-pause{display:block;margin-top:16px;border:0;padding:3px 0;background:transparent;color:#56624b;font-size:11px;text-decoration:underline;text-underline-offset:4px}.frame-status{font-size:12px;margin:8px 0 0}.photo-about{max-width:900px;margin:auto;min-height:calc(100svh - 104px);padding:92px 28px;text-align:center}.photo-about h2{font:38px/1.2 Georgia,serif;margin:12px 0 24px}.photo-about p{font-size:16px;line-height:1.9;color:#737b6a}.about-actions{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:36px}.about-top-arrow{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:#795235}.photo-hero:focus,.photo-about:focus{outline:none}.site-footer .footer-brand{font-size:18px}.site-footer{flex-wrap:wrap}.site-footer .footer-links{flex-wrap:wrap}.site-footer .site-copyright{font-size:11px;color:#b7bbad}.photo-frame .frame-add:focus-visible{outline-offset:3px}.large-text .hero-subtitle{font-size:20px}
@media(max-width:1050px){.site-header .brand strong{font-size:19px}.site-header{gap:12px}.site-header nav{gap:18px}.photo-hero{grid-template-columns:minmax(0,1fr) minmax(370px,520px);gap:30px;padding-inline:36px}.hero-copy h1{font-size:46px}.hero-subtitle{font-size:15px}.frame-open{height:390px}}
@media(max-width:760px){.photo-hero{height:auto;min-height:calc(100svh - 104px);grid-template-columns:minmax(0,1fr);gap:32px;padding:36px 22px 42px}.hero-copy{max-width:600px}.hero-copy h1{font-size:39px;margin-bottom:18px}.hero-subtitle{font-size:15px;line-height:1.7;margin-bottom:24px}.hero-copy .eyebrow{margin-bottom:14px}.photo-frame{max-width:650px;justify-self:center;padding:16px}.frame-open{height:clamp(240px,50svh,450px)}.photo-about{padding-block:64px;min-height:calc(100svh - 120px)}}
@media(max-width:680px){.site-header .brand strong{font-size:17px}.site-header .brand{gap:9px}.site-header .brand small{font-size:9px}.site-header .photo-logo{width:23px;height:23px}.site-header .header-tools{gap:5px}.site-footer{padding-inline:22px}.hero-copy h1{font-size:36px}.photo-about h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

@media(max-width:680px){.hero-frames{width:auto;inset-inline:16px;gap:10px}.hero-frames .frame-image{height:112px}.memory-frame{min-height:0}.memory-content blockquote{font-size:12px}}
#add-photo{width:min(580px,calc(100vw - 32px));max-height:calc(100svh - 32px);overflow:auto;background:#f5f3ed;color:#2d302b;border:1px solid #a8b295;border-radius:8px;padding:26px;text-align:start;box-shadow:0 20px 70px #0005}#add-photo::backdrop{background:#16201799;backdrop-filter:blur(6px)}.upload-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.upload-heading h2{font:28px/1.2 Georgia,serif}.upload-heading button{border:0;background:transparent;color:#485540;font-size:26px;line-height:1}.upload-intro,.upload-notice{font-size:13px;color:#6a755f;margin:16px 0}#photo-upload-form{position:relative}#photo-upload-form label{display:block;font-size:13px;margin-top:16px;margin-bottom:6px}#photo-upload-form input:not([type=hidden]),#photo-upload-form textarea{display:block;width:100%;font:14px Arial,sans-serif;color:#2d302b;background:#fffdf7;border:1px solid #bac2aa;border-radius:4px;padding:11px;box-sizing:border-box}#photo-upload-form small{display:block;font-size:11px;color:#77816c;margin-top:6px}#photo-upload-form .primary{border:0;background:#627252;color:white;gap:10px}#photo-upload-form .primary:disabled{opacity:.6}#upload-preview{width:100%;max-height:210px;object-fit:contain;display:block;margin-top:16px;background:#e5e8df}#upload-preview[hidden],#upload-result[hidden],#upload-submit[hidden]{display:none}.upload-details{font-size:13px;margin-top:18px}.upload-details summary{cursor:pointer;color:#53644a}#upload-status{font-size:13px;margin:14px 0}.upload-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(100%);white-space:nowrap}#upload-result{display:inline-block}
@media(max-width:680px){.hero-frames .frame-top{gap:5px}.frame-add{padding:4px 6px;font-size:10px}.hero-frames .frame-top>span[data-i]{flex:1;min-width:60px}#add-photo{padding:20px}.upload-heading h2{font-size:25px}}
.text-link{border-bottom:1px solid #a5ae96;padding-bottom:5px;font-size:13px;color:#627252}.primary{display:inline-flex;border-radius:4px;padding:12px 20px;font-size:13px}.photo-about .eyebrow{font-size:11px;letter-spacing:2px;color:#ad8b55}

/* Slow photographic background; the glass panel stays independent and clickable. */
.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 3s ease-in-out;transform:scale(1.025);pointer-events:none}.hero-slide.is-active{opacity:1}.photo-backdrop.has-slides{background-image:none!important}.photo-backdrop[data-motion="paused"] .hero-slide{transition:none}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none;transform:none!important}}
