/* Theme monograma */
body.theme-monograma {
  --paper: #f4f0e8;
  --ink: #111;
  --muted: #6d675e;
  --line: #d8d0c4;
  --seal: #2c2c2c;
  --env-back: #2c2c2c;
  --env-front: linear-gradient(115deg,#3a3a3a,#1a1a1a);
  --env-flap: #333;
}
body.theme-monograma{background:var(--paper);color:var(--ink);font-family:Jost,sans-serif}
body.theme-monograma h1,body.theme-monograma h2,body.theme-monograma h3{font-family:'Bodoni Moda',Georgia,serif;font-weight:400}
body.theme-monograma .demo-banner{background:#202326;color:#f4f0e8}
body.theme-monograma .desktop-header{background:rgba(244,240,232,.92);color:#202326;border-bottom:1px solid var(--line)}
body.theme-monograma .monogram{font-family:'Bodoni Moda',serif;letter-spacing:.08em}
body.theme-monograma .hero{height:calc(100svh - 42px);min-height:650px;background:#e7dfd4;display:grid;place-items:center;position:relative;overflow:hidden}
body.theme-monograma .hero-photo{position:absolute;inset:0;margin:0;display:grid;place-items:center}
body.theme-monograma .hero-photo img{width:min(72vw,760px);height:min(72vw,760px);object-fit:cover;opacity:.92;filter:sepia(.12) contrast(.94);box-shadow:0 18px 60px rgba(32,35,38,.16)}
body.theme-monograma .hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(244,240,232,.86),rgba(244,240,232,.15) 42%,rgba(244,240,232,.12) 65%,rgba(244,240,232,.76));pointer-events:none}
body.theme-monograma .hero-copy{left:10vw;bottom:12vh;z-index:1;color:#202326;max-width:560px}
body.theme-monograma .hero-copy h1{font-size:clamp(4rem,9vw,9rem);line-height:.82;letter-spacing:-.08em;margin:1rem 0;text-shadow:0 1px 0 #fff}
body.theme-monograma .hero-copy .amp{color:#8d5b4e;font-style:italic}
body.theme-monograma .hero-line{font-size:1.1rem;max-width:26rem}
body.theme-monograma .text-link{color:#202326;border-color:#8d5b4e}
body.theme-monograma .section{max-width:1280px;padding:clamp(5rem,9vw,8rem) 8vw}
body.theme-monograma .story{background:#e7dfd4;grid-template-columns:.8fr 1fr;gap:10%}
body.theme-monograma .story h2{font-size:clamp(3rem,6vw,6rem);line-height:.86}
body.theme-monograma .story h2 em{color:#8d5b4e}
body.theme-monograma .countdown{background:#202326;color:#f4f0e8}
body.theme-monograma .countdown .clock strong{color:#b7896d}
body.theme-monograma .celebration,body.theme-monograma .gallery{background:#f4f0e8}
body.theme-monograma .venue{max-width:1080px;background:#e7dfd4;border:1px solid var(--line)}
body.theme-monograma .venue-copy h3{color:#8d5b4e}
body.theme-monograma .program{background:#202326;color:#f4f0e8}
body.theme-monograma .details{background:#e7dfd4;color:#202326}
body.theme-monograma .gallery-grid{height:380px;grid-template-columns:1.2fr .8fr .8fr}
body.theme-monograma .gallery-grid figure{border:1px solid var(--line)}
body.theme-monograma .gallery-placeholder{background:#202326;color:#b7896d}
body.theme-monograma footer{background:#202326;color:#f4f0e8}
body.theme-monograma .footer-names em{color:#b7896d}
@media(max-width:800px){body.theme-monograma .hero{min-height:620px}.hero-photo img{width:92vw;height:92vw}.hero-copy{left:1.25rem;right:1.25rem;bottom:2.5rem}.hero-copy h1{font-size:clamp(4rem,18vw,7rem)}body.theme-monograma .story{display:block}.story h2{margin-bottom:2rem}.gallery-grid{height:auto!important;grid-template-columns:1fr!important}.gallery-grid figure{height:240px}}
body.theme-monograma .hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:stretch;gap:0;padding:0 7vw;background:#e7dfd4}
body.theme-monograma .hero-photo{position:relative;inset:auto;display:block;order:1;padding:5rem 0 5rem 3vw}
body.theme-monograma .hero-photo img{width:100%;height:100%;max-height:none;object-fit:cover;box-shadow:none;filter:none}
body.theme-monograma .hero-photo:after{display:none}
body.theme-monograma .hero-copy{position:relative;left:auto;bottom:auto;order:2;align-self:center;padding:4rem 0 4rem 5vw;max-width:560px}
body.theme-monograma .hero-copy h1{font-size:clamp(4.5rem,7vw,8rem);text-shadow:none}
body.theme-monograma .hero-copy .hero-line{max-width:22rem}
@media(max-width:800px){body.theme-monograma .hero{display:flex;flex-direction:column;padding:0 1.25rem}.hero-photo{padding:2rem 0 0!important;order:1}.hero-photo img{height:58vw!important}.hero-copy{order:2;padding:2rem 0 3rem!important}.hero-copy h1{font-size:clamp(4rem,16vw,6rem)}}
body.theme-monograma #celebracion,
body.theme-monograma #programa,
body.theme-monograma #detalles,
body.theme-monograma #galeria,
body.theme-monograma #asistencia{width:min(100% - 8vw,1400px);max-width:none;margin-left:auto;margin-right:auto}
body.theme-monograma #celebracion .section-heading,
body.theme-monograma #programa>.eyebrow,
body.theme-monograma #programa>h2,
body.theme-monograma #galeria .section-heading{text-align:center}
body.theme-monograma #celebracion .venue,
body.theme-monograma #programa .timeline,
body.theme-monograma #galeria .gallery-grid,
body.theme-monograma #galeria .gallery-upload{margin-left:auto;margin-right:auto}
body.theme-monograma #detalles{grid-template-columns:minmax(0,520px) minmax(0,620px);justify-content:center;gap:8vw}
body.theme-monograma #asistencia{grid-template-columns:minmax(0,420px) minmax(0,620px);justify-content:center;gap:8vw}
@media(max-width:800px){body.theme-monograma #celebracion,body.theme-monograma #programa,body.theme-monograma #detalles,body.theme-monograma #galeria,body.theme-monograma #asistencia{width:100%;margin-left:0;margin-right:0}body.theme-monograma #detalles,body.theme-monograma #asistencia{display:block}}
