:root{--wvo-bg:#fbf8f3;--wvo-card:#fff;--wvo-text:#2d2924;--wvo-muted:#817970;--wvo-gold:#b98a49;--wvo-border:#e9e1d7;--wvo-shadow:0 16px 45px rgba(64,48,31,.08)}
.wvo-page{font-family:'Montserrat',sans-serif;background:var(--wvo-bg);color:var(--wvo-text)}
.wvo-main{flex:1}.wvo-container{width:min(1180px,calc(100% - 40px));margin:0 auto}.wvo-hero{padding:48px 0 58px;background:linear-gradient(180deg,#fff 0%,#fbf8f3 100%)}
.wvo-breadcrumbs{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:28px;font-size:12px;color:var(--wvo-muted)}.wvo-breadcrumbs a{color:#765a36;text-decoration:none}.wvo-breadcrumbs a:hover{text-decoration:underline}
.wvo-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:48px;align-items:center}.wvo-media{position:relative;min-height:460px;border-radius:22px;overflow:hidden;background:#f0e9df;box-shadow:var(--wvo-shadow)}.wvo-media img{width:100%;height:100%;min-height:460px;object-fit:cover;display:block}.wvo-media-empty{display:flex;align-items:center;justify-content:center;color:var(--wvo-gold);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.wvo-featured{position:absolute;top:20px;left:20px;background:#2d2924;color:#fff;border-radius:999px;padding:8px 13px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.wvo-eyebrow{display:block;color:var(--wvo-gold);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}.wvo-summary h1,.wvo-card h2,.wvo-vendor-card h2,.wvo-empty-card h1{font-family:'Cormorant Garamond',serif}.wvo-summary h1{font-size:54px;line-height:1.02;font-weight:600;margin:0 0 8px}.wvo-vendor-link{display:inline-block;color:#7d6240;font-weight:600;text-decoration:none;margin-bottom:22px}.wvo-vendor-link:hover{text-decoration:underline}.wvo-lead{font-size:15px;line-height:1.8;color:var(--wvo-muted);margin:0 0 24px}.wvo-price{display:flex;align-items:baseline;gap:14px;margin:8px 0 18px}.wvo-price del{color:#a39b92;font-size:16px}.wvo-price strong{font-family:'Cormorant Garamond',serif;font-size:38px;color:#8b6738}.wvo-validity{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--wvo-muted);margin-bottom:25px}.wvo-validity strong{color:var(--wvo-text)}
.wvo-primary-btn,.wvo-secondary-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:8px;font-size:12px;font-weight:700;text-decoration:none;transition:.2s ease}.wvo-primary-btn{background:var(--wvo-gold);color:#fff}.wvo-primary-btn:hover{filter:brightness(.94)}.wvo-secondary-btn{border:1px solid var(--wvo-border);color:#5f4b32;background:#fff}.wvo-secondary-btn:hover{background:#faf7f2}.wvo-full{width:100%}
.wvo-content-section{padding:60px 0 90px}.wvo-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:34px;align-items:start}.wvo-card,.wvo-vendor-card,.wvo-empty-card{background:var(--wvo-card);border:1px solid var(--wvo-border);border-radius:18px;box-shadow:var(--wvo-shadow)}.wvo-card{padding:34px 38px}.wvo-card h2{font-size:34px;margin:0 0 20px}.wvo-richtext{font-size:14px;line-height:1.9;color:#655f58}.wvo-richtext p{margin:0 0 1em}.wvo-richtext ul,.wvo-richtext ol{padding-left:22px;margin:0 0 1em}.wvo-richtext a{color:#8b6738;text-decoration:underline}
.wvo-sidebar{position:sticky;top:28px}.wvo-vendor-card{padding:25px}.wvo-vendor-head{display:flex;gap:14px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--wvo-border)}.wvo-vendor-head img{width:64px;height:64px;border-radius:50%;object-fit:contain;background:#fff;border:1px solid var(--wvo-border)}.wvo-vendor-head span{font-size:9px;font-weight:700;color:var(--wvo-gold);text-transform:uppercase;letter-spacing:.08em}.wvo-vendor-head h2{font-size:24px;line-height:1.05;margin:3px 0}.wvo-vendor-head p{font-size:11px;color:var(--wvo-muted);margin:0}.wvo-contact-list{margin:8px 0 20px}.wvo-contact-list>div{padding:13px 0;border-bottom:1px solid var(--wvo-border)}.wvo-contact-list span{display:block;font-size:9px;color:#a0988f;text-transform:uppercase;letter-spacing:.09em;font-weight:700;margin-bottom:4px}.wvo-contact-list strong,.wvo-contact-list a{font-size:12px;color:#4c4741;text-decoration:none;overflow-wrap:anywhere}.wvo-vendor-card .wvo-secondary-btn,.wvo-vendor-card .wvo-primary-btn{width:100%;margin-top:9px}.wvo-socials{display:flex;gap:16px;justify-content:center;margin-top:18px}.wvo-socials a{font-size:11px;font-weight:600;color:#765a36;text-decoration:none}
.wvo-not-found{padding:90px 0}.wvo-empty-card{max-width:700px;margin:0 auto;text-align:center;padding:60px 30px}.wvo-empty-icon{display:flex;width:46px;height:46px;border-radius:50%;align-items:center;justify-content:center;background:#f5ede2;color:var(--wvo-gold);font-size:22px;margin:0 auto 18px}.wvo-empty-card h1{font-size:40px;margin:0 0 10px}.wvo-empty-card p{color:var(--wvo-muted);margin:0 0 24px}
@media(max-width:900px){.wvo-hero-grid,.wvo-layout{grid-template-columns:1fr}.wvo-summary h1{font-size:44px}.wvo-sidebar{position:static}.wvo-media,.wvo-media img{min-height:360px}}
@media(max-width:600px){.wvo-container{width:min(100% - 24px,1180px)}.wvo-hero{padding:28px 0 40px}.wvo-hero-grid{gap:26px}.wvo-media,.wvo-media img{min-height:260px}.wvo-summary h1{font-size:38px}.wvo-content-section{padding:36px 0 60px}.wvo-card{padding:25px 20px}.wvo-card h2{font-size:30px}.wvo-price strong{font-size:32px}}


/* =========================================================
   WEDDING ORGANIZER ACTION
========================================================= */
.wvo-organizer-action{margin-top:14px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.wvo-organizer-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:0;border-radius:8px;background:#2d2924;color:#fff;font:700 12px 'Montserrat',sans-serif;cursor:pointer;transition:.2s ease}
.wvo-organizer-btn:hover{background:#443d35}
.wvo-added-notice{padding:12px 15px;border:1px solid #d9c39f;border-radius:8px;background:#fffaf1;color:#6d5432;font-size:12px;line-height:1.6;font-weight:600}

/* =========================================================
   ORGANIZER MODAL
========================================================= */
body.wvo-modal-open{overflow:hidden}
.wvo-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;visibility:hidden;transition:.2s ease}
.wvo-modal.is-visible{opacity:1;visibility:visible}
.wvo-modal-backdrop{position:absolute;inset:0;background:rgba(24,21,18,.62);backdrop-filter:blur(3px)}
.wvo-modal-dialog{position:relative;z-index:1;width:min(520px,100%);background:#fff;border:1px solid var(--wvo-border);border-radius:18px;padding:34px;box-shadow:0 25px 80px rgba(0,0,0,.22)}
.wvo-modal-dialog h2{font-family:'Cormorant Garamond',serif;font-size:36px;line-height:1.08;margin:0 36px 10px 0;color:var(--wvo-text)}
.wvo-modal-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border:0;border-radius:50%;background:#f6f1ea;color:#665d54;font-size:24px;line-height:1;cursor:pointer}
.wvo-modal-text,.wvo-modal-info{font-size:13px;line-height:1.7;color:var(--wvo-muted)}
.wvo-modal-offer{display:grid;gap:5px;margin:22px 0;padding:17px 18px;border:1px solid var(--wvo-border);border-radius:12px;background:#fcfaf7}
.wvo-modal-offer strong{font-family:'Cormorant Garamond',serif;font-size:25px;font-weight:600}
.wvo-modal-offer span{font-size:12px;color:var(--wvo-muted)}
.wvo-modal-offer b{font-size:16px;color:#8b6738}
.wvo-modal-info{padding:12px 14px;border-radius:8px;background:#f7f1e8;color:#705a3d}
.wvo-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
.wvo-modal-actions .wvo-secondary-btn,.wvo-modal-actions .wvo-organizer-btn{margin:0}

@media(max-width:600px){
  .wvo-modal-dialog{padding:27px 20px}
  .wvo-modal-dialog h2{font-size:31px}
  .wvo-modal-actions{flex-direction:column-reverse}
  .wvo-modal-actions .wvo-secondary-btn,.wvo-modal-actions .wvo-organizer-btn{width:100%}
}
