/* Ziarama V4.22 — network/render budget for the whole public experience. */
:root{--zi-content-visibility-margin:900px}

/* Keep expensive off-screen sections out of the initial render tree while
   preserving an estimated size to avoid layout shifts. */
.home-story-intro,.home-couples-section,.home-experience,.home-journal,.home-final-cta,
.providers-signature-list,.journal-list-signature,.portfolio-v422 .portfolio-v3-grid,
.portfolio-story-v422,.portfolio-gallery-v422,.portfolio-events-v422,
.v3-footer{content-visibility:auto;contain-intrinsic-size:auto 780px}

/* Decorative assets never block meaningful content. */
.portfolio-flair,.public-invite-flair,.invite-card-floral,.rsvp-flair{content-visibility:auto}
.brand-mark{width:48px;height:48px;object-fit:contain}
.v3-footer-logo{height:auto;max-height:180px;object-fit:contain;object-position:left center}

/* Portfolio V4.22 */
.portfolio-v422{padding-top:150px}
.portfolio-v422-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.7fr);gap:70px;align-items:end;margin-bottom:58px}
.portfolio-v422-head h1{margin:0;font:400 clamp(62px,7.2vw,108px)/.86 var(--zi-serif);letter-spacing:-.05em}
.portfolio-v422-head>div:last-child>p{max-width:480px;margin:0 0 24px;color:var(--zi-muted);font:400 18px/1.5 var(--zi-serif)}
.portfolio-search{display:flex;gap:8px;padding:7px;border:1px solid var(--zi-line);border-radius:999px;background:rgba(255,255,255,.78)}
.portfolio-search input{min-width:0;flex:1;border:0;background:transparent;padding:0 14px;outline:0;color:var(--zi-ink)}
.portfolio-search button{border:0;border-radius:999px;background:var(--zi-brown);color:#fff;padding:11px 17px;font-size:11px;cursor:pointer}
.portfolio-card-meta{display:flex;justify-content:space-between;gap:10px;align-items:center}
.portfolio-card-meta small:last-child{color:var(--zi-muted)}
.portfolio-pagination{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:48px;font-size:12px}
.portfolio-pagination a{padding:10px 16px;border:1px solid var(--zi-line);border-radius:999px;background:#fff}
.portfolio-pagination span{color:var(--zi-muted)}

.portfolio-detail-v422 .portfolio-detail-title h1 i{font-weight:400;color:#f1cfaa}
.portfolio-story-v422,.portfolio-gallery-v422,.portfolio-events-v422{padding-top:40px;margin-top:40px;border-top:1px solid var(--zi-line)}
.portfolio-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.portfolio-story-card{display:grid;grid-template-columns:180px minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:24px;padding:16px;border:1px solid var(--zi-line);border-radius:24px;background:#fff}
.portfolio-story-photo{grid-row:1/4;height:210px;border-radius:17px;overflow:hidden;background:#eee5dc}
.portfolio-story-photo .zi-image-shell{height:100%}
.portfolio-story-card small{align-self:end;color:var(--zi-terracotta);font-size:8px;letter-spacing:.16em;text-transform:uppercase}
.portfolio-story-card h3{margin:6px 0 5px;font-size:28px}
.portfolio-story-card p{margin:0;color:var(--zi-muted);font:400 15px/1.45 var(--zi-serif)}
.portfolio-event-list{border-top:1px solid var(--zi-line)}
.portfolio-event-row{display:grid;grid-template-columns:90px minmax(0,1fr) 110px;gap:22px;align-items:center;padding:20px 0;border-bottom:1px solid var(--zi-line)}
.portfolio-event-row time{font:500 24px var(--zi-serif);color:var(--zi-terracotta)}
.portfolio-event-row h3{margin:0 0 4px;font-size:26px}.portfolio-event-row p{margin:0;color:var(--zi-muted)}
.portfolio-event-thumb{width:110px;height:76px;border-radius:14px;overflow:hidden;background:#eee5dc}
.portfolio-detail-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* On data-saving / reduced-motion environments avoid expensive visual effects. */
@media (prefers-reduced-motion:reduce){.portfolio-v3-card,.portfolio-v3-photo img,.reveal{transition:none!important}}
@media(max-width:900px){.portfolio-v422-head{grid-template-columns:1fr;gap:26px}.portfolio-story-grid{grid-template-columns:1fr}.portfolio-story-card{grid-template-columns:150px minmax(0,1fr)}.portfolio-event-row{grid-template-columns:70px minmax(0,1fr) 90px}.portfolio-event-thumb{width:90px;height:68px}}
@media(max-width:600px){.portfolio-v422{padding-top:120px}.portfolio-v422-head h1{font-size:62px}.portfolio-search{border-radius:20px;align-items:stretch}.portfolio-search button{padding-inline:14px}.portfolio-story-card{grid-template-columns:1fr}.portfolio-story-photo{grid-row:auto;height:260px;margin-bottom:8px}.portfolio-event-row{grid-template-columns:55px minmax(0,1fr)}.portfolio-event-thumb{display:none}.portfolio-pagination{gap:8px;justify-content:space-between}.portfolio-pagination span{font-size:10px}}
