/* 반복된 외곽선을 줄이고 여백과 면으로 정보를 구분합니다. */
.event-guide .guide-section,.event-guide .guide-section+.guide-section{border:0;box-shadow:0 12px 36px #173f3506}
.event-guide .guide-facts{gap:0 38px;padding:8px 28px;margin-top:26px;background:#f6f8f4;border-radius:14px}
.event-guide .guide-facts>div{padding:22px 0;border:0;border-bottom:1px solid #254a3712;border-radius:0;background:transparent}
.event-guide .guide-facts>div:nth-last-child(2),.event-guide .guide-facts>div:last-child{border-bottom:0}
.event-guide .guide-facts>div:last-child{grid-column:auto}
.event-guide .guide-facts dt{font-size:12px;letter-spacing:.02em;margin-bottom:8px;color:#758278}
.event-guide .guide-facts dd{font-size:17px;line-height:1.75;color:#254a37}
.event-guide #process .overview-format article{border:0;background:#f5f7f2;box-shadow:0 8px 22px #173f3505;border-radius:14px}
.event-guide #support .overview-support article{border:0;border-radius:0;background:transparent;padding:0 24px 0 0;box-shadow:none}
.event-guide #support .overview-support article+article{padding-left:24px;border-left:1px solid #e4eae2}
.event-guide #support .overview-support article:before{display:none}
.event-guide .guide-note{border:0;border-radius:10px;background:#f8f6ef}
/* 도시 이미지는 카드 상단에, 행사장 정보는 흰 면에 표시합니다. */
.event-guide #venues .session-grid{align-items:start}
.event-guide #venues .session-grid article.city-session{padding:0;overflow:hidden;display:flex;flex-direction:column;border:0;border-radius:18px;background:#fff;box-shadow:0 12px 32px #173f3510}
.event-guide .city-cover{position:relative;isolation:isolate;min-height:235px;display:flex;align-items:flex-end;overflow:hidden;background:#214b3c}
.event-guide .city-cover:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#103b3299 0%,#103b3240 28%,#103b3200 65%)}
.event-guide .city-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.event-guide .city-cover-copy{padding:24px 28px 32px;width:100%;color:white;text-shadow:0 1px 4px #102f2866}
.event-guide #venues .city-cover .session-top{margin:0 0 5px}
.event-guide #venues .city-cover .session-top span:first-child{background:transparent;border:0;border-radius:0;padding:0;width:auto;height:auto;font-size:12px;color:#e7eedf;font-weight:500}
.event-guide #venues .city-cover h3{font-size:31px;margin:0 0 7px;line-height:1.35;color:#fff}
.event-guide #venues .city-cover .session-date-confirmed{color:#f5f6ee;margin:0;font-size:16px;font-weight:500}
.event-guide .city-image-caption{position:absolute;right:14px;bottom:10px;text-shadow:0 1px 4px #102f28;color:#fff;font-size:9px;line-height:1.5}
.event-guide .city-details{padding:24px 28px 28px;flex:1}
.event-guide .city-details .event-detail{margin:0}
.event-guide .city-details .event-detail>div:first-child{border-top:0;padding-top:0}
.event-guide .city-details .event-detail>div{grid-template-columns:95px minmax(0,1fr);gap:15px}
.event-guide .city-details .event-detail dt{font-size:14px}
.event-guide .city-details .event-detail dd{font-size:16px}
.event-guide .city-details .event-detail strong{font-size:20px}
.event-guide .city-details .venue-note{margin-bottom:0}
/* 이메일을 안내 문구와 아이콘이 있는 문의 수단으로 구성합니다. */
.event-guide #guide-contact .guide-contact-actions{background:#ffffff0b;border-radius:14px;padding:22px;gap:18px}
.event-guide #guide-contact a.contact-email-link{display:flex;align-items:center;align-self:stretch;width:100%;gap:13px;padding:0 0 19px;border-bottom:1px solid #ffffff25;color:#fff;text-decoration:none}
.event-guide #guide-contact .contact-email-link>.ui-icon{width:24px;height:24px;flex:0 0 24px;color:#c7d9bd}
.event-guide #guide-contact .contact-email-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}
.event-guide #guide-contact .contact-email-label{color:#c7d9c8;font-size:12px;font-weight:400}
.event-guide #guide-contact .contact-email-address{color:#fff;font-size:clamp(15px,1.4vw,19px);font-weight:500;line-height:1.5;overflow-wrap:anywhere}
.event-guide #guide-contact .contact-email-arrow{color:#d8e6cf;font-size:22px;font-weight:400}
.event-guide #guide-contact a.contact-email-link:hover .contact-email-address{text-decoration:underline;text-underline-offset:5px}
.event-guide #guide-contact a.contact-email-link:hover{text-decoration:none}
.event-guide #guide-contact .button{border:0;background:#f4f6ed;color:#214b3c;border-radius:10px}
.event-guide #guide-contact .button:hover{background:#dce9d0;color:#173d33}
.event-guide #guide-contact a:focus-visible{outline:3px solid #d4bd83;outline-offset:5px}
@media(max-width:1050px){
 .event-guide #support .overview-support{gap:24px}
 .event-guide #support .overview-support article,.event-guide #support .overview-support article+article{padding:0;border:0}
 .event-guide #support .overview-support article+article{padding-top:24px;border-top:1px solid #e4eae2}
 .event-guide .city-details{padding:22px}
 .event-guide .city-details .event-detail>div{grid-template-columns:1fr;gap:8px}
}
@media(max-width:700px){
 .event-guide .guide-facts{padding:0 20px;gap:0;border-radius:12px}
 .event-guide .guide-facts>div{padding:18px 0;border-radius:0}
 .event-guide .guide-facts>div:nth-last-child(2){border-bottom:1px solid #254a3712}
 .event-guide .guide-facts dd{font-size:16px}
 .event-guide .city-cover{min-height:210px}
 .event-guide .city-cover-copy{padding:22px 22px 30px}
 .event-guide #venues .city-cover h3{font-size:28px}
 .event-guide .city-details .event-detail strong{font-size:19px}
 .event-guide #guide-contact .guide-contact-actions{padding:18px 16px}
 .event-guide #guide-contact .contact-email-link{gap:10px}
 .event-guide #guide-contact .contact-email-address{font-size:14px;white-space:nowrap}
 .event-guide #guide-contact .contact-email-arrow{display:none}
}
