    .inv-hero { text-align:center; padding:48px 24px 40px; }
    .inv-hero h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,4vw,3rem); font-weight:300; color:var(--cream); margin-bottom:10px; }
    .inv-hero p { color:var(--muted); font-size:.9rem; max-width:500px; margin:0 auto; }

    .templates-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:28px; max-width:1000px; margin:0 auto; padding:0 24px 80px; }

    .template-card { background:var(--dark-card); border:1px solid var(--border); border-radius:8px; overflow:hidden; transition:transform .25s, border-color .25s; cursor:pointer; }
    .template-card:hover { transform:translateY(-6px); border-color:var(--border-h); }
    .template-preview { height:320px; position:relative; overflow:hidden; display:flex; align-items:center; justify-content:center; }
    .template-info { padding:20px; }
    .template-name { font-family:'Cormorant Garamond',serif; font-size:1.2rem; color:var(--cream); margin-bottom:6px; }
    .template-desc { font-size:.78rem; color:var(--muted); line-height:1.6; margin-bottom:16px; }
    .template-tags { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:16px; }
    .tag { font-size:.62rem; letter-spacing:.08em; text-transform:uppercase; padding:3px 10px; border-radius:20px; background:rgba(201,169,110,.1); color:var(--gold-dark); border:1px solid var(--border); }
    .btn-use { width:100%; padding:12px; background:linear-gradient(135deg,var(--gold-dark),var(--gold)); color:var(--dark); font-family:'Jost',sans-serif; font-size:.75rem; font-weight:500; letter-spacing:.12em; text-transform:uppercase; border:none; border-radius:3px; cursor:pointer; transition:opacity .2s; text-decoration:none; display:block; text-align:center; }
    .btn-use:hover { opacity:.85; color:var(--dark); }

    /* ── TEMPLATE 1: Elegant Gold ── */
    .tpl-elegant { background:linear-gradient(160deg,#1a1008 0%,#2c1a0a 50%,#1a1008 100%); width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:20px; position:relative; }
    .tpl-elegant::before { content:''; position:absolute; inset:12px; border:1px solid rgba(201,169,110,.3); pointer-events:none; }
    .tpl-elegant::after { content:''; position:absolute; inset:16px; border:1px solid rgba(201,169,110,.15); pointer-events:none; }
    .tpl-e-top { font-size:.5rem; letter-spacing:.2em; text-transform:uppercase; color:rgba(201,169,110,.6); margin-bottom:8px; }
    .tpl-e-names { font-family:'Great Vibes',cursive; font-size:1.8rem; color:#c9a96e; line-height:1.2; text-align:center; }
    .tpl-e-and { font-size:.55rem; letter-spacing:.2em; text-transform:uppercase; color:rgba(201,169,110,.5); margin:6px 0; }
    .tpl-e-divider { width:60px; height:1px; background:linear-gradient(to right,transparent,#c9a96e,transparent); margin:10px auto; }
    .tpl-e-date { font-family:'Cormorant Garamond',serif; font-size:.75rem; color:rgba(253,248,240,.7); letter-spacing:.1em; }
    .tpl-e-location { font-size:.55rem; color:rgba(201,169,110,.5); letter-spacing:.1em; margin-top:4px; }
    .tpl-e-ornament { font-size:.8rem; color:rgba(201,169,110,.3); margin:8px 0; }

    /* ── TEMPLATE 2: Floral White ── */
    .tpl-floral { background:linear-gradient(135deg,#f9f4ee 0%,#fdf8f0 50%,#f5ede0 100%); width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:20px; position:relative; }
    .tpl-f-top { font-size:.45rem; letter-spacing:.2em; text-transform:uppercase; color:#9a7a45; margin-bottom:6px; }
    .tpl-f-flower { font-size:1.2rem; margin-bottom:6px; }
    .tpl-f-names { font-family:'Great Vibes',cursive; font-size:1.8rem; color:#5c3d1e; line-height:1.2; text-align:center; }
    .tpl-f-and { font-size:.5rem; letter-spacing:.15em; text-transform:uppercase; color:#9a7a45; margin:5px 0; }
    .tpl-f-line { width:80px; height:1px; background:linear-gradient(to right,transparent,#c9a96e,transparent); margin:8px auto; }
    .tpl-f-date { font-family:'Playfair Display',serif; font-size:.7rem; color:#5c3d1e; letter-spacing:.05em; }
    .tpl-f-location { font-size:.5rem; color:#9a7a45; letter-spacing:.1em; margin-top:4px; text-transform:uppercase; }
    .tpl-f-flowers { font-size:1rem; margin-top:8px; }

    /* ── TEMPLATE 3: Modern Dark ── */
    .tpl-modern { background:#0d0d0d; width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:20px; position:relative; overflow:hidden; }
    .tpl-m-bg { position:absolute; inset:0; background:radial-gradient(ellipse 80% 60% at 50% 50%,rgba(180,120,60,.12) 0%,transparent 70%); }
    .tpl-m-top { font-size:.42rem; letter-spacing:.3em; text-transform:uppercase; color:rgba(201,169,110,.4); margin-bottom:10px; position:relative; }
    .tpl-m-names { font-family:'Playfair Display',serif; font-size:1.1rem; color:#f5f0e8; text-align:center; position:relative; font-weight:400; }
    .tpl-m-names em { font-style:italic; color:#c9a96e; }
    .tpl-m-symbol { font-size:1rem; color:rgba(201,169,110,.5); margin:8px 0; position:relative; }
    .tpl-m-date { font-family:'Jost',sans-serif; font-size:.6rem; letter-spacing:.2em; color:rgba(201,169,110,.7); position:relative; text-transform:uppercase; }
    .tpl-m-line { width:40px; height:1px; background:#c9a96e; margin:10px auto; opacity:.4; position:relative; }
    .tpl-m-location { font-size:.5rem; letter-spacing:.15em; text-transform:uppercase; color:rgba(245,240,232,.3); position:relative; margin-top:4px; }

    /* ── TEMPLATE 4: Rustic ── */
    .tpl-rustic { background:linear-gradient(160deg,#2d1f0f 0%,#3d2a12 60%,#2d1f0f 100%); width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:20px; position:relative; }
    .tpl-r-wreath { font-size:1.4rem; margin-bottom:4px; }
    .tpl-r-top { font-size:.42rem; letter-spacing:.2em; text-transform:uppercase; color:rgba(210,170,100,.6); margin-bottom:4px; }
    .tpl-r-names { font-family:'Great Vibes',cursive; font-size:1.6rem; color:#e8c880; line-height:1.2; text-align:center; }
    .tpl-r-and { font-size:.48rem; color:rgba(210,170,100,.5); letter-spacing:.2em; text-transform:uppercase; margin:5px 0; }
    .tpl-r-divider { font-size:.7rem; color:rgba(210,170,100,.4); margin:6px 0; }
    .tpl-r-date { font-family:'Playfair Display',serif; font-size:.68rem; color:rgba(240,220,180,.8); }
    .tpl-r-location { font-size:.5rem; color:rgba(210,170,100,.5); letter-spacing:.1em; margin-top:4px; text-transform:uppercase; }
    .tpl-r-wreath2 { font-size:1.2rem; margin-top:6px; transform:rotate(180deg); display:inline-block; }
    .tpl-new{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;position:relative;overflow:hidden}.tpl-new .mini{font:.44rem Jost;letter-spacing:.25em;text-transform:uppercase;margin-bottom:10px}.tpl-new .couple{font:400 1.65rem/1.05 Playfair Display}.tpl-new .amp{font:italic .9rem Playfair Display;margin:6px}.tpl-new .rule{width:50px;height:1px;margin:12px auto}.tpl-new .when{font:600 .7rem Cormorant Garamond}.tpl-new .where{font:.48rem Jost;letter-spacing:.08em;margin-top:5px}.tpl-editorial{background:#f6f3ec;color:#111;border:9px solid #111}.tpl-editorial .rule{background:#111}.tpl-botanical{background:linear-gradient(145deg,#f7f8f1,#dfe8d6);color:#36513b}.tpl-botanical:before{content:'❧';position:absolute;left:-12px;top:-22px;font-size:7rem;color:#77916a33;transform:rotate(-30deg)}.tpl-botanical .rule{background:#718563}.tpl-celestial{background:radial-gradient(circle at 30% 20%,#263960,#0c1326 68%);color:#f6e8c4}.tpl-celestial:before{content:'✦  ·  ✧  ·  ✦';position:absolute;top:25px;color:#d9bb7677;letter-spacing:14px}.tpl-celestial .rule{background:#d9bb76}.tpl-terracotta{background:linear-gradient(150deg,#f8e9dc,#fff8ee);color:#6b392d}.tpl-terracotta:before{content:'';position:absolute;width:230px;height:230px;border-radius:50% 50% 0 0;background:#b9664930;bottom:-70px}.tpl-terracotta .rule{background:#b96649}
  
    .title-accent{color:var(--gold);font-style:italic}
