.mel-module{max-width:1180px;margin:0 auto;padding:38px 0 100px;color:var(--mel-ink,#fff7ed)}
.mel-module-heading{max-width:850px;padding-bottom:36px}
.mel-module-heading h1{font-family:Georgia,serif;font-size:clamp(2.6rem,6vw,5.3rem);line-height:1.04;letter-spacing:-.045em;margin:.2em 0;color:var(--mel-ink,#fff7ed)}
.mel-module-heading p{max-width:730px;font-size:clamp(1rem,1.9vw,1.24rem);color:var(--mel-muted,#d6c9d6);line-height:1.65}
.mel-eyebrow{display:block;color:var(--mel-gold,#f6c56c);font-size:.73rem;letter-spacing:.22em;text-transform:uppercase;font-weight:800}
.mel-empty{margin:14px 0;padding:65px 24px;border:1px solid rgba(255,199,107,.26);background:linear-gradient(130deg,rgba(255,199,107,.08),rgba(222,46,164,.1));border-radius:22px;text-align:center;color:#e0d0dc}
.mel-empty .mel-spark{display:block;font-size:4rem;color:#ffd37c}.mel-empty p{font-size:1.1rem}
.mel-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:12px 0 30px}
.mel-item{display:block;position:relative;overflow:hidden;border:1px solid rgba(248,199,122,.26);border-radius:19px;background:#1b1021;color:inherit;text-decoration:none;min-width:0;transition:transform .2s,border-color .2s}
a.mel-item:hover{transform:translateY(-6px);border-color:#ffbe6a}.mel-item .mel-photo{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.mel-item-body{padding:24px;position:relative}.mel-item h3{font:700 clamp(1.3rem,2.4vw,1.8rem)/1.14 Georgia,serif;margin:.5em 0;color:#fff6e9}.mel-item p{color:#d4c7d4;line-height:1.58}.mel-arrow{color:#ffcd80;font-size:1.5rem}.mel-photo-empty{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 20%,#743671,#1b1021 70%);color:#ffcc80;font-size:5rem}
.mel-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid #e7b75f;border-radius:8px;padding:13px 21px;text-decoration:none;color:#ffe8bb;background:transparent;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;cursor:pointer;transition:transform .2s,background .2s}.mel-btn:hover{transform:translateY(-2px);background:#4b2637;color:white}.mel-btn-primary{border-color:#ffd88b;background:linear-gradient(110deg,#ffd477,#fda53c);color:#190913;box-shadow:0 10px 28px #eb8d4030}.mel-btn-primary:hover{background:linear-gradient(110deg,#ffe3a8,#ffc066);color:#130815}.mel-module-actions{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}
.mel-form{display:flex;flex-direction:column;gap:18px;max-width:630px;margin:18px 0 40px}.mel-form-wide{max-width:1050px}.mel-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.mel-field{display:flex;flex-direction:column;gap:8px;font-size:.88rem;color:#f3e4ea;font-weight:650}.mel-field input:not([type=checkbox]):not([type=file]),.mel-field textarea,.mel-field select,.mel-inline-form select{background:#1b1322;color:#fff9ee;border:1px solid #765570;border-radius:9px;width:100%;min-height:50px;padding:12px 14px;font:inherit;box-sizing:border-box;max-width:100%}.mel-field textarea{resize:vertical;min-height:100px}.mel-field input:focus,.mel-field textarea:focus,.mel-field select:focus{outline:2px solid #fcbc60;outline-offset:2px}.mel-field input[type=file]{font-size:.87rem;padding:9px 0}.mel-consent{display:flex;align-items:flex-start;gap:12px;font-size:.95rem;line-height:1.5;color:#efdeec}.mel-consent input{accent-color:#f6b84a;margin-top:5px;flex-shrink:0}.mel-form button{align-self:flex-start;max-width:100%}.mel-trap{position:absolute!important;width:1px;height:1px;overflow:hidden;left:-9999px;opacity:0}
.mel-panel{border:1px solid #7c526b55;background:linear-gradient(145deg,#28172c,#150f1d);border-radius:17px;padding:25px;margin:15px 0;color:#eee0ec}.mel-panel h2{font:700 clamp(1.7rem,2.6vw,2.45rem)/1.15 Georgia,serif;color:#fff3e6;margin:.28em 0}.mel-panel p{line-height:1.62}.mel-price{display:block;color:#fcca6a;font-size:1.8rem;margin:16px 0}.mel-footnote{color:#cfbfcf;font-size:.89rem;line-height:1.7}.mel-notice{padding:15px 21px;background:#373023;border-left:4px solid #ffd16f;margin:18px 0;border-radius:8px;color:#fff6e9}.mel-notice-error{border-left-color:#ff558f}
.mel-info-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0 45px}.mel-info-strip>div{padding:20px 22px;background:#26172b;border:1px solid #76557077;border-radius:12px}.mel-info-strip strong{display:block;font-size:1.12rem;margin:10px 0 0}.mel-ticket-pass{max-width:570px;margin:auto;border:2px solid #f1ba63;background:#221321;text-align:center;padding:30px;border-radius:20px}.mel-pass-valid{background:#1c513a;color:#c4ffe4;padding:12px}.mel-pass-used{background:#6b2648;color:white;padding:12px}.mel-qr{max-width:245px;margin:18px auto;background:#fff;padding:10px;border-radius:8px}.mel-qr svg{display:block;max-width:100%;height:auto}.mel-guest-row{padding:20px 0;border-top:1px solid #604761}.mel-timeline-step{display:flex;gap:25px;border-left:2px solid #f3bd57;padding:0 0 35px 30px}.mel-timeline-step time{color:#ffc868;min-width:75px}.mel-timeline-step h3{margin:0}.mel-feature-photo{width:100%;height:clamp(260px,40vw,490px);border-radius:18px;background:linear-gradient(140deg,#7f2b82,#2f162d);background-position:center;background-size:cover}.mel-feature-carpet,.mel-feature-dinner{background:linear-gradient(135deg,#8f295f,#1e123d)}
.mel-hub{max-width:1200px;margin:0 auto;color:var(--mel-ink,#fff7ed)}.mel-hub-header{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:26px}.mel-hub-header h1{font:700 3.3rem/1 Georgia,serif;margin:8px 0;color:#fff}.mel-hub-header p{color:#d9c3d2}.mel-hub-tabs{display:flex;gap:7px;flex-wrap:wrap;padding:12px 0;margin:0 0 28px;border-bottom:1px solid #805873}.mel-hub-tabs a{padding:8px 12px;border-radius:8px;color:#d4c4d1;text-decoration:none;background:#26192f;font-size:.85rem}.mel-hub-tabs a.active{background:#ffc76e;color:#261323;font-weight:700}.mel-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mel-metric{padding:20px;background:#28182e;border:1px solid #775774;border-radius:13px}.mel-metric strong{font-size:2.4rem;display:block;color:#ffcd76}.mel-metric span{font-size:.85rem;color:#e1d3dd}.mel-table-scroll{width:100%;overflow:auto}.mel-table{width:100%;border-collapse:collapse;margin:10px 0;color:#f5eaf1;text-align:left;min-width:600px}.mel-table th{font-size:.73rem;text-transform:uppercase;letter-spacing:.11em;color:#e9bb74;background:#301c30}.mel-table td,.mel-table th{padding:12px;border-bottom:1px solid #58425a;vertical-align:top}.mel-table td small{display:block;color:#b4a3b2}.mel-table a{color:#ffd37c}.mel-hub-section{margin:20px 0 30px}.mel-hub-line{display:flex;align-items:center;justify-content:space-between;gap:20px}.mel-hub-line h2{font-size:1.7rem}.mel-tiny-action{font-size:.72rem;white-space:nowrap}.mel-hub-bottom{padding:35px 0;border-top:1px solid #806078;margin-top:35px}.mel-hub-bottom a{color:#f6c56c}.mel-cue{display:flex;justify-content:space-between;gap:20px;background:#28172c;padding:18px;border:1px solid #795a70;margin:10px 0;border-radius:10px}.mel-inline-form{display:flex;gap:8px;align-items:center}.mel-inline-form select{width:auto;min-height:40px}.mel-inline-form .mel-btn{padding:10px}.mel-readiness{list-style:none;padding:0}.mel-readiness li{padding:12px;border-bottom:1px solid #644b66}.mel-readiness li span{color:#ffc76e;margin-right:18px}.mel-score-panel{margin:14px 0}.mel-score-form .mel-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:800px){.mel-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mel-info-strip{grid-template-columns:1fr}.mel-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.mel-score-form .mel-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.mel-module{padding:20px 0 65px}.mel-card-grid,.mel-form-grid{grid-template-columns:1fr}.mel-hub-header{flex-direction:column;align-items:flex-start}.mel-hub-header h1{font-size:2.5rem}.mel-timeline-step{gap:12px;padding-left:16px}.mel-timeline-step time{min-width:45px}.mel-cue{flex-direction:column}.mel-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.mel-score-form .mel-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
