/* ================================================================
   12 · ALBUM — photo-first keepsake: glass caption card over a
   full-bleed hero, 5-up mosaic gallery, filmstrip schedule
================================================================ */
#sitePreview #tpl-album,#siteFull #tpl-album{background:#FFFEFB;color:#2B2018}
#sitePreview #tpl-album .hero,#siteFull #tpl-album .hero{position:relative;min-height:96dvh;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;overflow:hidden;color:#fff;padding-bottom:clamp(26px,4cqw,54px)}
#sitePreview #tpl-album .al-photo,#siteFull #tpl-album .al-photo{position:absolute;inset:0;background-size:cover;background-position:center 35%}
#sitePreview #tpl-album .hero::after,#siteFull #tpl-album .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,14,8,.4),transparent 30%,transparent 55%,rgba(20,14,8,.35))}
#sitePreview #tpl-album .hero .nav,#siteFull #tpl-album .hero .nav{position:absolute;top:0;left:0;right:0;color:#fff;z-index:2}
#sitePreview #tpl-album .al-card,#siteFull #tpl-album .al-card{position:relative;z-index:2;text-align:center;width:min(620px,calc(100% - 40px));padding:clamp(26px,3.6cqw,44px) clamp(20px,3.4cqw,44px);border-radius:18px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 24px 60px rgba(0,0,0,.28)}
#sitePreview #tpl-album .al-card .eyebrow,#siteFull #tpl-album .al-card .eyebrow{margin-bottom:12px;opacity:.95}
#sitePreview #tpl-album h1,#siteFull #tpl-album h1{font-size:clamp(38px,6cqw,74px)}
#sitePreview #tpl-album .al-meta,#siteFull #tpl-album .al-meta{font-family:'Cormorant Garamond';font-style:italic;font-size:clamp(16px,2cqw,22px);margin-top:12px;opacity:.95}
#sitePreview #tpl-album .al-card .cd,#siteFull #tpl-album .al-card .cd{justify-content:center;margin-top:20px}
#sitePreview #tpl-album .al-card .cta,#siteFull #tpl-album .al-card .cta{margin-top:22px}
#sitePreview #tpl-album .btn-hero,#siteFull #tpl-album .btn-hero{background:#fff;color:#2B2018;border-color:#fff}
#sitePreview #tpl-album .btn-hero:hover,#siteFull #tpl-album .btn-hero:hover{background:transparent;color:#fff}
#sitePreview #tpl-album .al-sec,#siteFull #tpl-album .al-sec{padding:clamp(50px,7cqw,90px) clamp(22px,5cqw,48px);text-align:center}
#sitePreview #tpl-album .al-alt,#siteFull #tpl-album .al-alt{background:#F7F3EB}
#sitePreview #tpl-album .al-sec .ey,#siteFull #tpl-album .al-sec .ey{font-family:'Space Mono';font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:#B5654A;margin-bottom:14px}
#sitePreview #tpl-album .al-sec h2,#siteFull #tpl-album .al-sec h2{font-family:'Playfair Display';font-size:clamp(26px,3.4cqw,40px);font-weight:500;margin:0 0 36px}
#sitePreview #tpl-album .al-strip,#siteFull #tpl-album .al-strip{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;padding:14px 4px;max-width:880px;margin:0 auto}
#sitePreview #tpl-album .al-frame,#siteFull #tpl-album .al-frame{flex:0 0 178px;scroll-snap-align:start;background:#fff;border:1px solid #E7E0D4;border-radius:6px;box-shadow:0 10px 24px rgba(43,32,24,.08);padding:18px 16px 20px;text-align:left;position:relative}
#sitePreview #tpl-album .al-frame::before,#siteFull #tpl-album .al-frame::before{content:"";position:absolute;top:8px;left:14px;right:14px;height:4px;background:repeating-linear-gradient(90deg,#E7E0D4 0 6px,transparent 6px 12px);border-radius:2px}
#sitePreview #tpl-album .al-ftime,#siteFull #tpl-album .al-ftime{font-family:'Space Mono';font-size:11px;color:#B5654A;margin:12px 0 4px}
#sitePreview #tpl-album .al-fname,#siteFull #tpl-album .al-fname{font-family:'Playfair Display';font-size:17px;line-height:1.25}
#sitePreview #tpl-album .al-fnote,#siteFull #tpl-album .al-fnote{font-size:12px;color:#7A6A5A;margin-top:5px;line-height:1.5}
#sitePreview #tpl-album .al-mosaic,#siteFull #tpl-album .al-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:150px;gap:6px;padding:6px}
#sitePreview #tpl-album .al-mosaic img,#siteFull #tpl-album .al-mosaic img{width:100%;height:100%;object-fit:cover;display:block;border-radius:4px;transition:transform .8s var(--e)}
#sitePreview #tpl-album .al-mosaic img:hover,#siteFull #tpl-album .al-mosaic img:hover{transform:scale(1.03)}
#sitePreview #tpl-album .al-m1,#siteFull #tpl-album .al-m1{grid-column:span 2;grid-row:span 2}
#sitePreview #tpl-album .al-m4,#siteFull #tpl-album .al-m4{grid-column:span 2}
#sitePreview #tpl-album .travel-cols,#siteFull #tpl-album .travel-cols{display:grid;grid-template-columns:1fr 1fr;gap:36px;max-width:760px;margin:0 auto;text-align:left}
#sitePreview #tpl-album .travel-cols h4,#siteFull #tpl-album .travel-cols h4{font-family:'Playfair Display';font-size:18px;font-weight:500;margin:0 0 10px}
#sitePreview #tpl-album .travel-cols p,#sitePreview #tpl-album .travel-cols address,#siteFull #tpl-album .travel-cols p,#siteFull #tpl-album .travel-cols address{font-style:normal;font-size:13.5px;color:#7A6A5A;line-height:1.7;margin:0 0 10px}
#sitePreview #tpl-album .map-link,#siteFull #tpl-album .map-link{color:#B5654A;font-size:13px}
#sitePreview #tpl-album .al-invite,#siteFull #tpl-album .al-invite{font-family:'Cormorant Garamond';font-size:clamp(21px,2.8cqw,30px);line-height:1.55;max-width:700px;margin:0 auto}
#sitePreview #tpl-album .al-faq,#siteFull #tpl-album .al-faq{max-width:620px;margin:0 auto 20px;text-align:left}
#sitePreview #tpl-album .al-faq h4,#siteFull #tpl-album .al-faq h4{font-family:'Jost';font-weight:500;font-size:14.5px;margin:0 0 4px}
#sitePreview #tpl-album .al-faq p,#siteFull #tpl-album .al-faq p{font-size:13.5px;color:#7A6A5A;margin:0;line-height:1.6}
#sitePreview #tpl-album .al-rsvp,#siteFull #tpl-album .al-rsvp{background:#F7F3EB}
#sitePreview #tpl-album footer,#siteFull #tpl-album footer{text-align:center;padding:clamp(44px,6cqw,70px) 24px;background:#2B2018;color:#cbbfae}
#sitePreview #tpl-album footer .fn,#siteFull #tpl-album footer .fn{font-family:'Playfair Display';font-size:clamp(20px,2.8cqw,28px);color:#fff;margin-bottom:8px}
#sitePreview #tpl-album footer .fd,#siteFull #tpl-album footer .fd{font-family:'Space Mono';font-size:11px;margin-bottom:22px}
#sitePreview #tpl-album footer .fnav,#siteFull #tpl-album footer .fnav{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 20px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:22px}
#sitePreview #tpl-album footer .fnav a,#siteFull #tpl-album footer .fnav a{color:#cbbfae;text-decoration:none}
#sitePreview #tpl-album footer .copy,#siteFull #tpl-album footer .copy{font-size:11px;color:#8d8172}

