﻿/* Vivesta v18 — páginas de evento, serviços e experiência móvel */
.field-optional{color:var(--muted);font-size:11px;font-weight:400;line-height:1.45}
.coordinate-refresh{min-height:42px;padding:10px 14px;color:#fff;border:0;background:var(--blue);font-size:11px;font-weight:700}
.event-detail-poster{position:relative;overflow:hidden}.gallery-arrow{position:absolute;z-index:5;top:50%;width:48px;height:58px;display:grid;place-items:center;transform:translateY(-50%);color:#fff;border:1px solid #ffffff80;background:#10243ed9;font-size:38px;line-height:1}.gallery-arrow.previous{left:12px}.gallery-arrow.next{right:12px}.gallery-counter{position:absolute;z-index:5;right:14px;bottom:14px;padding:6px 9px;color:#fff;background:#10243ed9;font-size:10px;font-weight:700}
.catalog-picker{display:grid;grid-template-columns:1fr auto;gap:8px;margin:0 0 14px}.catalog-picker select,.catalog-picker button{min-height:42px;padding:9px;border:1px solid #cbd2d6;background:#fff}.catalog-picker button{color:#fff;border-color:var(--blue);background:var(--blue);font-size:11px;font-weight:700}.catalog-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px}.catalog-service-card{display:grid;grid-template-columns:150px 1fr;min-height:190px;border:1px solid var(--line);background:#fff;overflow:hidden}.catalog-service-photo{background:#eef1f2}.catalog-service-photo img{width:100%;height:100%;object-fit:cover}.catalog-service-card>div:last-child{padding:18px}.catalog-service-card small{color:var(--red);font-weight:700;text-transform:uppercase}.catalog-service-card h3{margin:7px 0;font:700 24px var(--display)}.catalog-service-card p{max-height:70px;overflow:hidden;color:var(--muted);font-size:11px}.catalog-service-actions{display:flex;gap:7px}.catalog-service-actions button{padding:7px 10px;border:1px solid #cbd2d6;background:#fff;font-size:10px;font-weight:700}.catalog-service-actions .delete{color:var(--red)}
.gallery-editor{padding:18px;border:1px solid var(--line);background:#f7f8f8}.gallery-editor>header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.gallery-editor h3{margin:0;font:700 22px var(--display)}.gallery-editor header p{margin:3px 0;color:var(--muted);font-size:11px}.gallery-editor header label{margin:0;padding:10px 12px;color:#fff;background:var(--navy);cursor:pointer}.gallery-editor header input{position:absolute;width:1px;height:1px;opacity:0}.gallery-editor-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gallery-editor-item{overflow:hidden;border:1px solid var(--line);background:#fff}.gallery-editor-item img{width:100%;height:130px;display:block;object-fit:contain;background:#eef1f2}.gallery-editor-item div{display:grid;grid-template-columns:36px 36px 1fr;gap:5px;padding:7px}.gallery-editor-item button{min-height:32px;border:1px solid #cbd2d6;background:#fff}.gallery-editor-item button.delete{color:var(--red)}
@media(max-width:760px){.catalog-services{grid-template-columns:1fr}.catalog-service-card{grid-template-columns:100px 1fr}.catalog-picker{grid-template-columns:1fr}.gallery-editor>header{align-items:stretch;flex-direction:column}.gallery-editor-list{grid-template-columns:1fr 1fr}.gallery-arrow{width:42px;height:52px}.gallery-arrow.previous{left:8px}.gallery-arrow.next{right:8px}}
.event-services-jump{color:#fff;background:var(--blue)}
.event-description-block{margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}.event-description-block h2{margin:0 0 13px;font:700 27px var(--display)}.event-description-block .event-description{margin:0}
.service-list .service-card{padding:0;overflow:hidden;color:inherit;text-decoration:none}.service-list a.service-card{cursor:pointer;transition:transform .2s,box-shadow .2s}.service-list a.service-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px #10243e18}.service-card-image{width:100%;height:190px;display:block;object-fit:cover}.service-card-content{padding:22px;display:flex;flex:1;flex-direction:column}.service-card-content p{white-space:pre-line}.service-list a.service-card:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.service-image-field{grid-column:1/2;display:grid;gap:7px}.service-image-field>span{display:grid;gap:7px}.service-image-preview{width:100%;height:100px;object-fit:cover;background:#eef1f2}.service-image-remove{padding:7px;color:var(--red);border:1px solid #e4bdc4;background:#fff;font-size:10px}.service-order{display:flex;gap:5px;align-self:end}.service-order button{width:36px;height:38px;border:1px solid #cbd2d6;background:#fff}.service-order button:disabled{opacity:.35}.service-editor-row .service-remove{width:auto;min-width:105px;padding:0 10px;font-size:10px}.service-editor-row .service-description{grid-column:2/4}
@media(max-width:680px){.service-editor-row .service-remove{width:100%}.service-order{width:100%}.service-order button{flex:1}}
.event-grid{grid-template-columns:1fr}.event-card{display:grid;grid-template-columns:minmax(150px,42%) 1fr;min-height:250px;cursor:pointer}.event-card:focus-visible{outline:3px solid var(--red);outline-offset:3px}.event-photo{height:100%;min-height:250px;aspect-ratio:auto;background:#edf0f1}.event-photo img{object-fit:contain;padding:8px}.event-body{display:flex;flex-direction:column;justify-content:center;padding:26px}.event-body h3{min-height:0;margin:11px 0;font-size:clamp(23px,3vw,31px)}.event-body>p{margin:4px 0}.event-kickers{display:flex;align-items:center;gap:10px}.event-kickers small{color:var(--red);font-size:10px;font-weight:700;text-transform:uppercase}.sponsored-label{padding:4px 7px;color:#7c5410;background:#fff2d6;border-radius:20px;font-size:9px;font-weight:700;text-transform:uppercase}.event-card.sponsored{border-color:#d9b66d;box-shadow:inset 4px 0 #d8a83e}.event-entry{margin-top:15px;color:var(--navy);font-size:12px}.card-open{margin-top:auto;padding-top:18px;color:var(--red);font-size:11px;font-weight:700}.event-date-line{color:var(--ink)!important;font-weight:600}.event-place-line{color:var(--muted)!important}
.event-dialog{width:min(980px,calc(100% - 24px));display:grid;grid-template-columns:minmax(280px,42%) 1fr;overflow:hidden}.event-dialog:not([open]){display:none}.event-dialog>img{width:100%;height:100%;min-height:560px;aspect-ratio:auto;object-fit:contain;padding:16px;background:#eef1f2}.event-dialog .dialog-body{align-self:center;padding:42px}.event-dialog .dialog-body dl{grid-template-columns:1fr}.dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.dialog-actions>*{display:grid;place-items:center;min-height:46px;padding:12px;border:0;color:#fff;background:var(--navy);font-weight:700}.dialog-actions .registration-link{background:var(--red)}
.contact-section{padding:76px max(16px,calc((100vw - 1180px)/2));display:grid;gap:34px;color:#fff;background:#173552}.contact-section h2{max-width:670px;margin:0;font:700 clamp(34px,5vw,54px)/1.05 var(--display)}.contact-section p:not(.eyebrow){max-width:650px;color:#ffffffb3;line-height:1.7}.contact-links{display:grid;gap:12px}.contact-links a{display:grid;gap:4px;padding:20px;border:1px solid #ffffff35;background:#ffffff0d}.contact-links small{color:#ffffffa3}.contact-links strong{font-size:clamp(17px,3vw,24px)}
.brand span{font-weight:700}.admin-editor{width:min(900px,calc(100% - 24px));padding:0}.admin-editor form{padding:34px}.admin-editor h2{margin:0 0 24px;font:700 36px var(--display)}.admin-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.admin-form-grid label{display:grid;gap:7px;color:var(--muted);font-size:11px;font-weight:700}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea{width:100%;padding:11px;border:1px solid var(--line);background:#fff}.admin-form-grid .wide{grid-column:1/-1}.admin-form-grid .inline-check{display:flex;align-items:center;gap:8px}.admin-form-grid .inline-check input{width:auto}.editor-poster{display:flex;align-items:center;gap:15px}.editor-poster img{width:100px;height:100px;object-fit:contain;background:#eef1f2}.editor-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.editor-actions button{padding:12px 18px;border:0}.editor-actions button[type=submit]{color:#fff;background:var(--red)}.sponsor-button.active{color:#7c5410!important;background:#fff2d6!important}.order-buttons{display:flex;gap:5px}.order-buttons button{min-width:32px}.registration-inline{display:inline-flex;margin-top:8px;color:var(--red);font-weight:700}
.map-popup .map-event-link{display:inline-block;margin-top:9px;color:var(--red);font-size:11px;font-weight:700}.dialog-open{position:fixed;left:0;right:0;width:100%;overflow:hidden;overscroll-behavior:none}.dialog-open dialog[open]{overscroll-behavior:contain}.admin-editor{overscroll-behavior:contain}.admin-editor form{overflow:hidden}
.services-editor{grid-column:1/-1;padding:18px;border:1px solid var(--line);background:#f7f8f8}.services-editor>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.services-editor h3{margin:0;font:700 22px var(--display)}.services-editor header p{margin:3px 0 0;color:var(--muted);font-size:11px}.services-editor header button{flex:0 0 auto;padding:9px 12px;color:#fff;border:0;background:var(--navy);font-size:11px;font-weight:700}.service-editor-list{display:grid;gap:10px}.service-editor-row{display:grid;grid-template-columns:140px 1fr 1fr auto;gap:8px;align-items:end;padding:12px;background:#fff;border:1px solid var(--line)}.service-editor-row label{font-size:10px}.service-editor-row .service-description{grid-column:2/4}.service-remove{width:36px;height:38px;color:var(--red);border:1px solid #e4bdc4;background:#fff}
.event-page main{min-height:70vh}.event-status{width:var(--page);min-height:55vh;margin:auto;display:grid;align-content:center;justify-items:start;padding:70px 0}.event-status h1{max-width:700px;margin:0 0 14px;font:700 clamp(42px,7vw,72px)/1 var(--display)}.event-status>a{margin-top:15px;padding-bottom:4px;color:var(--red);border-bottom:1px solid var(--red);font-weight:700}.event-detail-shell{width:var(--page);margin:auto;display:grid;grid-template-columns:minmax(300px,44%) 1fr;gap:clamp(38px,6vw,84px);padding:64px 0 82px}.event-detail-poster{min-width:0;min-height:600px;margin:0;display:grid;place-items:center;align-self:start;background:#eaedef;border:1px solid var(--line)}.event-detail-poster img{display:block;width:100%;height:auto;max-height:760px;object-fit:contain}.event-detail-copy{min-width:0;align-self:center}.event-back{display:inline-block;margin-bottom:34px;color:var(--muted);font-size:12px;font-weight:700}.event-detail-kicker{display:flex;align-items:center;gap:10px;color:var(--red);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.event-detail-kicker span:last-child{padding:5px 8px;color:#795614;background:#fff1ce;border-radius:20px;letter-spacing:0}.event-detail-copy h1{margin:17px 0 25px;font:700 clamp(42px,6vw,68px)/1 var(--display);overflow-wrap:anywhere}.event-description{color:#4f5d68;font-size:16px;line-height:1.75;white-space:pre-line;overflow-wrap:anywhere}.event-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:30px 0;background:var(--line);border:1px solid var(--line)}.event-facts div{min-width:0;padding:15px;background:#fff}.event-facts dt{color:var(--muted);font-size:9px;font-weight:700;text-transform:uppercase}.event-facts dd{margin:5px 0 0;font-size:13px;font-weight:600;line-height:1.45;overflow-wrap:anywhere}.event-primary-actions{display:flex;flex-wrap:wrap;gap:10px}.event-primary-actions a{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;font-size:12px;font-weight:700}.event-registration{color:#fff;background:var(--red)}.event-map-jump{color:#fff;background:var(--navy)}.organization-link{display:inline-flex;margin-top:20px;padding:7px 0;color:var(--muted);border-bottom:1px solid #aeb6bb;font-size:11px;font-weight:600}.organization-link span{margin-left:7px}.event-services{padding:78px max(16px,calc((100vw - 1180px)/2));background:#fff;border-top:1px solid var(--line)}.event-services>header{max-width:680px;margin-bottom:34px}.event-services h2,.event-location h2{margin:0;font:700 clamp(34px,5vw,52px)/1.05 var(--display)}.event-services header>p:last-child,.event-location>div:first-child>p:not(.eyebrow){color:var(--muted)}.services-groups{display:grid;gap:38px}.service-group h3{margin:0 0 14px;color:var(--red);font-size:12px;text-transform:uppercase;letter-spacing:1px}.service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.service-card{min-height:170px;padding:22px;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line)}.service-card strong{font:700 23px var(--display)}.service-card p{color:var(--muted);font-size:13px;line-height:1.55}.service-card a{margin-top:auto;color:var(--red);font-size:11px;font-weight:700}.event-location{width:var(--page);margin:auto;display:grid;grid-template-columns:.65fr 1.35fr;align-items:center;gap:60px;padding:82px 0}.event-location a{display:inline-block;margin-top:18px;color:var(--red);font-size:12px;font-weight:700}.event-location #eventMap{height:480px;border:1px solid #cdd3d7}
@media(min-width:760px){.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-section{grid-template-columns:1.2fr .8fr;align-items:center}}
@media(max-width:760px){.event-detail-shell{grid-template-columns:1fr;gap:30px;padding:24px 0 58px}.event-detail-poster{min-height:0}.event-detail-poster img{max-height:82vh}.event-detail-copy{display:flex;flex-direction:column}.event-back{order:-1;margin-bottom:22px}.event-detail-copy h1{font-size:clamp(38px,12vw,56px)}.event-facts{grid-template-columns:1fr}.event-primary-actions{display:grid}.event-primary-actions a{width:100%}.event-services{padding-top:58px;padding-bottom:58px}.service-list{grid-template-columns:1fr}.event-location{grid-template-columns:1fr;gap:28px;padding:58px 0}.event-location #eventMap{height:360px}.event-page footer{padding-bottom:95px}}
@media(max-width:680px){.event-card{grid-template-columns:1fr}.event-photo{height:auto;min-height:0;aspect-ratio:4/3}.event-dialog{grid-template-columns:1fr;overflow:auto}.event-dialog>img{height:320px;min-height:0}.event-dialog .dialog-body{padding:27px}.dialog-actions{grid-template-columns:1fr}.admin-form-grid{grid-template-columns:1fr}.admin-form-grid .wide,.services-editor{grid-column:auto}.admin-editor form{padding:25px 18px}.service-editor-row{grid-template-columns:1fr}.service-editor-row .service-description{grid-column:auto}.service-remove{width:100%}.editor-actions{position:sticky;bottom:0;padding:12px 0;background:#fff}.panel>header,.dashboard-title{align-items:stretch;flex-direction:column}.dashboard-title>a{text-align:center}.submission-card{grid-template-columns:64px 1fr}.submission-card>img{width:64px;height:82px}.event-status{padding:46px 0}}
