/* Daegu Indians — public website
   Palette taken from the logo: navy lettering, plum eagle, forest-green rings, cream seal. */
:root{
  --navy:#0F2C5C; --navy-d:#0A1F43; --navy-l:#1F4A8A;
  --plum:#A3195B; --plum-d:#83104A; --plum-l:#F6E4EC;
  --green:#3E5F2F; --leaf:#5FA83A; --saffron:#E58A1C; --saffron-l:#FFF1DE;
  --cream:#F7F3EA; --cream-d:#EFE8D8; --ink:#1A2233; --muted:#5E6878; --line:#E6DFD0;
  --serif:"Fraunces", Georgia, "Times New Roman", serif;
  --sans:"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --radius:18px; --shadow:0 18px 40px -18px rgba(15,44,92,.25);
  --header-h:84px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--top-h,var(--header-h)) + 10px)}
body{font-family:var(--sans);color:var(--ink);background:#fff;font-size:1.02rem;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:var(--plum);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--plum-d)}
img{max-width:100%}
.skip-link{position:absolute;left:-999px;top:0;background:#fff;padding:.5rem 1rem;z-index:2000}.skip-link:focus{left:1rem}
:focus-visible{outline:3px solid var(--saffron);outline-offset:2px}

h1,h2,h3,.display-title{font-family:var(--serif);color:var(--navy);font-weight:600;letter-spacing:-.015em;line-height:1.15}
.display-title{font-size:clamp(2rem,4.2vw,3.1rem)}
.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--plum);margin-bottom:.8rem}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--saffron);border-radius:2px}
.eyebrow.light{color:#FFD7A6}
.lead{font-size:1.15rem;color:var(--muted)}
.section{padding:clamp(4rem,8vw,6.5rem) 0}
.section.tight{padding:clamp(3rem,5vw,4rem) 0}
.bg-cream{background:var(--cream)}
.bg-navy{background:var(--navy);color:#D5DEEE}
.section-head{max-width:720px;margin-bottom:2.8rem}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center}
.section-head.center .eyebrow{justify-content:center}
.section-head h2{font-size:clamp(1.9rem,3.4vw,2.7rem);margin-bottom:.8rem}
.section-head p{color:var(--muted);font-size:1.08rem;margin:0}
.rich p:last-child{margin-bottom:0}
.rich h2,.rich h3{margin-top:1.6rem}
.rich img{border-radius:12px;height:auto}
.rich iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:12px}
.rich blockquote{border-left:3px solid var(--saffron);padding-left:1rem;color:var(--muted);font-style:italic}

/* Buttons */
.btn{font-weight:600;border-radius:999px;padding:.72rem 1.45rem;transition:transform .15s,box-shadow .15s,background .15s}
.btn:active{transform:translateY(1px)}
.btn-brand{background:var(--plum);color:#fff;border:0;box-shadow:0 10px 22px -10px rgba(163,25,91,.7)}
.btn-brand:hover{background:var(--plum-d);color:#fff;transform:translateY(-1px)}
.btn-navy{background:var(--navy);color:#fff;border:0}.btn-navy:hover{background:var(--navy-d);color:#fff}
.btn-ghost{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.45);backdrop-filter:blur(4px)}
.btn-ghost:hover{background:#fff;color:var(--navy)}
.btn-outline-navy{border:1.5px solid var(--navy);color:var(--navy);background:transparent}.btn-outline-navy:hover{background:var(--navy);color:#fff}
.btn-donate{background:var(--saffron);color:#fff;border:0;padding:.55rem 1.15rem;font-size:.92rem}
.btn-donate:hover{background:#C9740F;color:#fff}
.link-arrow{font-weight:700;color:var(--navy);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}
.link-arrow i{transition:transform .2s}.link-arrow:hover{color:var(--plum)}.link-arrow:hover i{transform:translateX(4px)}

/* Announcement */
.announce{background:var(--saffron);color:#fff;font-size:.88rem;font-weight:600;text-align:center;padding:.45rem 0}

/* Header */
.site-top{position:fixed;top:0;left:0;right:0;z-index:1030}
.site-header{height:var(--header-h);display:flex;align-items:center;transition:background .25s,box-shadow .25s,color .25s;background:linear-gradient(180deg,rgba(8,20,45,.55),rgba(8,20,45,0))}
.site-header.scrolled{background:rgba(255,255,255,.97);backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--line),0 8px 24px -16px rgba(15,44,92,.25)}
.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}
.brand img{border-radius:50%;background:#fff;padding:2px;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.brand-text{display:flex;flex-direction:column;line-height:1.1}
.brand-text strong{font-family:var(--serif);font-size:1.32rem;color:var(--navy);font-weight:700}
.brand-text small{font-size:.72rem;color:var(--muted);letter-spacing:.02em}
.overlay:not(.scrolled) .brand-text strong{color:#fff}.overlay:not(.scrolled) .brand-text small{color:rgba(255,255,255,.75)}
.main-nav{display:flex;align-items:center;gap:1.2rem}
.main-nav>ul{list-style:none;display:flex;gap:.15rem;margin:0;padding:0}
.main-nav>ul>li{position:relative}
.main-nav a{display:block;padding:.5rem .7rem;font-weight:600;font-size:.93rem;color:var(--ink);text-decoration:none;border-radius:8px}
.main-nav>ul>li>a.active{color:var(--plum)}
.main-nav>ul>li>a:hover{color:var(--plum)}
.overlay:not(.scrolled) .main-nav>ul>li>a{color:#fff}
.overlay:not(.scrolled) .main-nav>ul>li>a:hover,.overlay:not(.scrolled) .main-nav>ul>li>a.active{color:#FFD7A6}
.main-nav .sub{display:none;position:absolute;top:100%;left:0;min-width:200px;background:#fff;border-radius:12px;box-shadow:var(--shadow);list-style:none;padding:.4rem;margin:0}
.main-nav .has-sub:hover .sub,.main-nav .has-sub:focus-within .sub{display:block}
.main-nav .sub a{color:var(--ink)}
.nav-toggle{display:none;margin-left:auto;background:none;border:0;width:44px;height:44px;position:relative}
.nav-toggle span{position:absolute;left:10px;right:10px;height:2px;background:var(--navy);border-radius:2px;transition:.25s}
.overlay:not(.scrolled) .nav-toggle span{background:#fff}
.nav-toggle span:nth-child(1){top:14px}.nav-toggle span:nth-child(2){top:21px}.nav-toggle span:nth-child(3){top:28px}
.nav-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-open .nav-toggle span:nth-child(2){opacity:0}.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Hero */
.hero{position:relative;height:min(100vh,860px);min-height:600px;color:#fff;overflow:hidden;background:var(--navy)}
.hero .carousel,.hero .carousel-inner,.hero .carousel-item{height:100%}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 7s ease-out}
.carousel-item.active .hero-img{transform:scale(1)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,31,67,.88) 0%,rgba(10,31,67,.55) 45%,rgba(10,31,67,.12) 100%),linear-gradient(0deg,rgba(10,31,67,.6),transparent 40%)}
.hero-content{position:absolute;inset:0;display:flex;align-items:center}
.hero-content .inner{max-width:640px;padding-top:var(--top-h,var(--header-h))}
.hero h1,.hero .h1-like{color:#fff;font-size:clamp(2.5rem,6vw,4.6rem);font-weight:600;margin-bottom:1.1rem;text-shadow:0 2px 24px rgba(0,0,0,.25)}
.hero h1 em{font-style:italic;color:#FFD7A6}
.hero p{font-size:clamp(1.05rem,1.6vw,1.25rem);color:rgba(255,255,255,.88);margin-bottom:2rem;max-width:520px}
.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap}
.hero-bars{position:absolute;bottom:2.2rem;left:0;right:0;z-index:3}
.hero-bars .container{display:flex;gap:.5rem}
.hero-bars button{width:46px;height:4px;border:0;background:rgba(255,255,255,.35);border-radius:4px;padding:0;transition:background .3s,width .3s}
.hero-bars button.active{background:var(--saffron);width:70px}

/* Stats */
.stats{position:relative;z-index:5;margin-top:-3.5rem}
.stats-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));overflow:hidden}
.stat{padding:1.6rem 1.8rem;border-right:1px solid var(--line)}
.stat:last-child{border-right:0}
.stat-v{font-family:var(--serif);font-size:2.4rem;font-weight:600;color:var(--navy);line-height:1}
.stat-l{color:var(--muted);font-size:.9rem;margin-top:.35rem}

/* Intro / collage */
.collage{position:relative;padding:0 0 3rem 3rem}
.collage .c1{border-radius:var(--radius);box-shadow:var(--shadow);aspect-ratio:4/3;object-fit:cover;width:100%}
.collage .c2{position:absolute;left:0;bottom:0;width:48%;border-radius:14px;border:6px solid #fff;box-shadow:var(--shadow);aspect-ratio:1;object-fit:cover}
.collage .seal{position:absolute;right:-14px;top:-18px;width:110px;height:110px;border-radius:50%;background:#fff;padding:6px;box-shadow:var(--shadow);animation:spin 40s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.collage .seal{animation:none}.hero-img{transition:none}}

/* Pillars */
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.25rem}
.pillar{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}
.pillar:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pillar .ic{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;font-size:1.45rem;margin-bottom:1.1rem;background:var(--plum-l);color:var(--plum)}
.pillar:nth-child(2) .ic{background:#E7F0E2;color:var(--green)}
.pillar:nth-child(3) .ic{background:#E3EAF6;color:var(--navy)}
.pillar:nth-child(4) .ic{background:var(--saffron-l);color:#B66A0E}
.pillar h3{font-size:1.3rem;margin-bottom:.5rem}
.pillar p{color:var(--muted);margin:0;font-size:.97rem}
.pillar::after{content:"";position:absolute;right:-30px;bottom:-30px;width:110px;height:110px;border-radius:50%;border:16px solid var(--cream);opacity:.7}

/* Event cards */
.event-card{display:flex;flex-direction:column;background:#fff;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);height:100%;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}
.event-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);color:inherit}
.event-media{position:relative;aspect-ratio:16/10;background:var(--cream-d);overflow:hidden}
.event-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.event-card:hover .event-media img{transform:scale(1.05)}
.event-media .ph{display:grid;place-items:center;height:100%;font-size:3rem;color:var(--plum);background:linear-gradient(135deg,var(--plum-l),var(--cream))}
.date-badge{position:absolute;top:1rem;left:1rem;background:#fff;border-radius:12px;text-align:center;padding:.4rem .7rem;line-height:1.05;box-shadow:0 6px 16px rgba(0,0,0,.12)}
.date-badge span{display:block;font-size:.7rem;text-transform:uppercase;font-weight:700;color:var(--plum);letter-spacing:.05em}
.date-badge strong{font-family:var(--serif);font-size:1.5rem;color:var(--navy)}
.event-body{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;flex:1}
.event-body h3{font-size:1.3rem;margin-bottom:.4rem}
.event-meta{display:flex;flex-wrap:wrap;gap:.3rem 1rem;color:var(--muted);font-size:.88rem;margin-bottom:.7rem}
.event-meta i{color:var(--saffron)}
.event-body p{color:var(--muted);font-size:.95rem}
.event-cta{margin-top:auto;font-weight:700;color:var(--navy)}
.tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--green);background:#E7F0E2;border-radius:20px;padding:.18rem .65rem;margin-bottom:.6rem}
.tag.plum{color:var(--plum);background:var(--plum-l)}.tag.grey{color:#666;background:#EEE}

/* News cards */
.news-card{display:block;text-decoration:none;color:inherit;height:100%}
.news-card .thumb{border-radius:var(--radius);overflow:hidden;aspect-ratio:16/10;background:var(--cream-d);margin-bottom:1rem}
.news-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.news-card:hover .thumb img{transform:scale(1.05)}
.news-card .thumb .ph{height:100%;display:grid;place-items:center;font-size:2.5rem;color:var(--navy);background:linear-gradient(135deg,#E3EAF6,var(--cream))}
.news-card time{font-size:.82rem;color:var(--muted);font-weight:600}
.news-card h3{font-size:1.3rem;margin:.3rem 0 .4rem}
.news-card:hover h3{color:var(--plum)}
.news-card p{color:var(--muted);font-size:.95rem}

/* Gallery */
.mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:.8rem}
.mosaic a{position:relative;border-radius:14px;overflow:hidden;display:block}
.mosaic a:nth-child(1){grid-column:span 2;grid-row:span 2}

.mosaic img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.mosaic a:hover img{transform:scale(1.06)}
.mosaic a::after{content:"\F52A";font-family:bootstrap-icons;position:absolute;inset:0;display:grid;place-items:center;font-size:1.6rem;color:#fff;background:rgba(15,44,92,.35);opacity:0;transition:opacity .25s}
.mosaic a:hover::after{opacity:1}
.album-card{display:block;text-decoration:none;color:inherit}
.album-card .cover{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;margin-bottom:.9rem;background:var(--cream-d)}
.album-card .cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.album-card:hover .cover img{transform:scale(1.05)}
.album-card .count{position:absolute;right:.8rem;bottom:.8rem;background:rgba(10,31,67,.75);color:#fff;font-size:.8rem;border-radius:20px;padding:.2rem .7rem}
.album-card h3{font-size:1.25rem;margin:0}
.photo-grid{columns:3 260px;column-gap:.9rem}
.photo-grid a{display:block;margin-bottom:.9rem;border-radius:12px;overflow:hidden;break-inside:avoid}
.photo-grid img{width:100%;display:block;transition:transform .5s}
.photo-grid a:hover img{transform:scale(1.03)}
.lightbox{position:fixed;inset:0;background:rgba(6,14,30,.94);z-index:3000;display:none;align-items:center;justify-content:center}
.lightbox.open{display:flex}
.lightbox img{max-width:92vw;max-height:84vh;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lightbox .cap{position:absolute;bottom:1.4rem;left:0;right:0;text-align:center;color:#ddd;font-size:.95rem}
.lightbox button{position:absolute;background:rgba(255,255,255,.1);border:0;color:#fff;width:52px;height:52px;border-radius:50%;font-size:1.4rem}
.lightbox button:hover{background:rgba(255,255,255,.22)}
.lb-close{top:1.2rem;right:1.2rem}.lb-prev{left:1.2rem;top:50%;transform:translateY(-50%)}.lb-next{right:1.2rem;top:50%;transform:translateY(-50%)}

/* People */
.person{text-align:center}
.person .ph{width:170px;height:170px;margin:0 auto 1.1rem;border-radius:50%;padding:6px;background:conic-gradient(from 200deg,var(--plum),var(--saffron),var(--leaf),var(--navy),var(--plum))}
.person .ph img,.person .ph .ini{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid #fff;background:#fff}
.person .ph .ini{display:grid;place-items:center;font-family:var(--serif);font-size:2.6rem;color:var(--navy)}
.person h3{font-size:1.3rem;margin-bottom:.15rem}
.person .role{color:var(--plum);font-weight:700;font-size:.9rem;margin-bottom:.6rem}
.person p{color:var(--muted);font-size:.94rem;max-width:340px;margin:0 auto}

.committee-tile{background:#fff;border-radius:var(--radius);padding:1.5rem;border:1px solid var(--line);height:100%;border-top:4px solid var(--c)}
.committee-tile .ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:1.25rem;background:color-mix(in srgb,var(--c) 12%,#fff);color:var(--c);margin-bottom:.9rem}
.committee-tile h3{font-size:1.2rem;margin-bottom:.35rem}
.committee-tile p{color:var(--muted);font-size:.93rem;margin:0}

/* Testimonials */
.quote-card{background:#fff;border-radius:var(--radius);padding:2rem;height:100%;position:relative;border:1px solid var(--line)}
.quote-card::before{content:"\201C";font-family:var(--serif);font-size:5rem;line-height:1;color:var(--plum-l);position:absolute;top:.6rem;right:1.4rem}
.quote-card blockquote{font-family:var(--serif);font-size:1.15rem;color:var(--navy);font-style:italic;margin:0 0 1.2rem}
.quote-card .who{display:flex;gap:.8rem;align-items:center}
.quote-card .who img,.quote-card .who .ini{width:46px;height:46px;border-radius:50%;object-fit:cover;background:var(--cream-d);display:grid;place-items:center;font-weight:700;color:var(--navy)}

/* Sponsors */
.sponsors{display:flex;flex-wrap:wrap;justify-content:center;gap:1.2rem}
.sponsor{width:190px;height:96px;background:#fff;border:1px solid var(--line);border-radius:16px;display:grid;place-items:center;padding:1rem;text-decoration:none;transition:transform .2s,box-shadow .2s}
.sponsor:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.sponsor img{max-height:60px;max-width:100%;object-fit:contain;filter:grayscale(1);opacity:.8;transition:.25s}
.sponsor:hover img{filter:none;opacity:1}
.sponsor .wordmark{font-family:var(--serif);font-weight:700;font-size:1.5rem;color:var(--navy);letter-spacing:-.01em}

/* CTA band */
.cta-band{position:relative;border-radius:28px;overflow:hidden;background:var(--navy);color:#fff;padding:clamp(2.5rem,5vw,4rem)}
.cta-band::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 20%,rgba(163,25,91,.65),transparent 50%),radial-gradient(circle at 10% 110%,rgba(229,138,28,.45),transparent 45%)}
.cta-band>*{position:relative}
.cta-band h2{color:#fff;font-size:clamp(1.8rem,3.4vw,2.6rem)}
.cta-band p{color:rgba(255,255,255,.82);font-size:1.08rem}

/* Page banner */
.page-banner{position:relative;padding:calc(var(--top-h,var(--header-h)) + 3rem) 0 4rem;color:#fff;background:var(--navy);overflow:hidden}
.page-banner::before{content:"";position:absolute;inset:0;background-image:linear-gradient(100deg,rgba(10,31,67,.94) 0%,rgba(10,31,67,.78) 55%,rgba(163,25,91,.55) 100%),var(--bg);background-size:cover;background-position:center}
.page-banner .container{position:relative}
.page-banner h1{color:#fff;font-size:clamp(2.2rem,5vw,3.4rem);margin:.4rem 0 .5rem}
.page-banner p{color:rgba(255,255,255,.85);font-size:1.12rem;max-width:640px;margin:0}
.crumbs{font-size:.85rem;color:rgba(255,255,255,.7)}
.crumbs a{color:rgba(255,255,255,.85);text-decoration:none}.crumbs a:hover{color:#fff}
.crumbs i{font-size:.7rem;margin:0 .3rem}

/* Info cards / forms */
.info-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem;height:100%}
.info-card .ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--plum-l);color:var(--plum);font-size:1.3rem;margin-bottom:1rem}
.info-card h3{font-size:1.2rem;margin-bottom:.4rem}
.form-card{background:#fff;border-radius:22px;padding:clamp(1.5rem,3vw,2.4rem);box-shadow:var(--shadow);border:1px solid var(--line)}
.form-card h2{font-size:1.7rem}
.form-label{font-weight:600;font-size:.9rem;color:#2F3A4D;margin-bottom:.35rem}
.form-control,.form-select{border-radius:12px;border:1.5px solid #DDD5C5;padding:.7rem .95rem;font-size:.98rem}
.form-control:focus,.form-select:focus{border-color:var(--navy);box-shadow:0 0 0 .22rem rgba(15,44,92,.1)}
.form-check-input:checked{background-color:var(--plum);border-color:var(--plum)}
.hp-field{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-alert{border-radius:12px}
.skill-pills{display:flex;flex-wrap:wrap;gap:.5rem}
.skill-pills input{display:none}
.skill-pills label{border:1.5px solid #DDD5C5;border-radius:999px;padding:.38rem .9rem;font-size:.88rem;cursor:pointer;font-weight:600;color:#3A4558;transition:.15s}
.skill-pills input:checked+label{background:var(--navy);border-color:var(--navy);color:#fff}

.bank-card{border-radius:20px;padding:1.6rem;color:#fff;position:relative;overflow:hidden;height:100%}
.bank-card.kr{background:linear-gradient(135deg,var(--navy),#1E4C8F)}
.bank-card.in{background:linear-gradient(135deg,var(--plum),#C2512A)}
.bank-card::after{content:"";position:absolute;right:-50px;top:-50px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.08)}
.bank-card h3{color:#fff;font-size:1.25rem}
.bank-card pre{font-family:var(--sans);white-space:pre-wrap;color:rgba(255,255,255,.95);font-size:1rem;margin:0 0 1rem;line-height:1.8}
.bank-card .btn{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.35);padding:.4rem 1rem;font-size:.85rem}

.detail-list{list-style:none;padding:0;margin:0}
.detail-list li{display:flex;gap:.9rem;padding:.85rem 0;border-bottom:1px solid var(--line)}
.detail-list li:last-child{border:0}
.detail-list i{font-size:1.2rem;color:var(--plum);margin-top:.15rem}
.detail-list .k{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}
.sticky-side{position:sticky;top:calc(var(--top-h,var(--header-h)) + 1rem)}
.capacity-bar{height:8px;border-radius:8px;background:var(--cream-d);overflow:hidden}
.capacity-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--leaf),var(--saffron))}
.success-ticket{border:2px dashed var(--leaf);border-radius:18px;padding:1.6rem;background:#F3F9EF;text-align:center}
.success-ticket .code{font-family:ui-monospace,Menlo,monospace;font-size:1.8rem;letter-spacing:.2em;color:var(--navy);font-weight:700}

.resource{display:flex;gap:1rem;background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.2rem 1.3rem;height:100%}
.resource .ic{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#E3EAF6;color:var(--navy);font-size:1.2rem}
.resource h3{font-size:1.1rem;margin:0 0 .25rem;font-family:var(--sans);font-weight:700}
.resource p{margin:0;color:var(--muted);font-size:.93rem}
.tabs-pill{display:inline-flex;background:var(--cream);border-radius:999px;padding:.3rem;gap:.2rem}
.tabs-pill a{padding:.5rem 1.2rem;border-radius:999px;text-decoration:none;font-weight:700;color:var(--muted);font-size:.93rem}
.tabs-pill a.active{background:#fff;color:var(--navy);box-shadow:0 2px 8px rgba(0,0,0,.08)}
.empty-box{text-align:center;padding:3rem 1rem;background:var(--cream);border-radius:var(--radius);color:var(--muted)}
.empty-box i{font-size:2.4rem;color:var(--plum);display:block;margin-bottom:.6rem}
.map-frame{width:100%;height:380px;border:0;border-radius:var(--radius);display:block}
.pagination{--bs-pagination-active-bg:var(--navy);--bs-pagination-active-border-color:var(--navy);--bs-pagination-color:var(--navy);justify-content:center}
.article{max-width:760px;margin:0 auto}
.article .cover{border-radius:var(--radius);margin-bottom:2rem;width:100%;aspect-ratio:16/9;object-fit:cover}

/* Footer */
.site-footer{background:var(--navy-d);color:#B9C6DD;font-size:.95rem}
.footer-top{padding:4.5rem 0 3rem;background:radial-gradient(circle at 100% 0,rgba(163,25,91,.25),transparent 40%)}
.footer-logo{background:#fff;border-radius:50%;padding:3px}
.footer-name{font-family:var(--serif);font-size:1.5rem;color:#fff;font-weight:600}
.footer-sub{font-size:.8rem;color:#8EA0C2}
.footer-about{max-width:360px}
.footer-h{font-family:var(--sans);font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:#FFD7A6;font-weight:700;margin-bottom:1rem}
.footer-links,.footer-contact{list-style:none;padding:0;margin:0}
.footer-links li{margin-bottom:.5rem}
.footer-links a,.footer-contact a{color:#D5DEEE;text-decoration:none}.footer-links a:hover,.footer-contact a:hover{color:#fff}
.footer-contact li{display:flex;gap:.7rem;margin-bottom:.7rem}.footer-contact i{color:var(--saffron)}
.social{display:flex;gap:.5rem;margin-top:1.2rem}
.social a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#fff;text-decoration:none;transition:.2s}
.social a:hover{background:var(--plum);color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:1.2rem 0;font-size:.85rem;color:#8EA0C2}
.footer-bottom a{color:#B9C6DD;text-decoration:none}
.to-top{position:fixed;right:1.2rem;bottom:1.2rem;width:46px;height:46px;border-radius:50%;background:var(--plum);color:#fff;display:grid;place-items:center;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.25s;z-index:1000;text-decoration:none}
.to-top.show{opacity:1;pointer-events:auto}.to-top:hover{color:#fff;background:var(--plum-d)}

/* Reveal on scroll */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* Responsive */
@media (max-width:1199.98px){
  .main-nav>ul>li>a{padding:.5rem .45rem;font-size:.88rem}
}
@media (max-width:991.98px){
  :root{--header-h:72px}
  .brand-text small{display:none}
  .nav-toggle{display:block}
  .main-nav{position:fixed;top:var(--top-h,var(--header-h));left:0;right:0;bottom:0;background:#fff;flex-direction:column;align-items:stretch;padding:1.2rem 1.4rem 2rem;gap:1rem;transform:translateX(100%);transition:transform .3s;overflow-y:auto}
  .nav-open .main-nav{transform:none}
  .main-nav>ul{flex-direction:column}
  .main-nav>ul>li>a,.overlay:not(.scrolled) .main-nav>ul>li>a{color:var(--ink);font-size:1.1rem;padding:.8rem .2rem;border-bottom:1px solid var(--line);border-radius:0}
  .main-nav .sub{display:block;position:static;box-shadow:none;padding:0 0 0 1rem}
  .nav-open .site-header{background:#fff}
  .nav-open .site-header .brand-text strong{color:var(--navy)}
  .nav-open .nav-toggle span{background:var(--navy)}
  .mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}

  .collage{padding:0 0 2rem 1.5rem;margin-top:2rem}
  .stat{border-right:0;border-bottom:1px solid var(--line)}
}
@media (max-width:575.98px){
  .hero{min-height:560px}
  .hero-actions .btn{width:100%}
  .brand-text strong{font-size:1.12rem}
  .brand img{width:44px;height:44px}
}

.cm-list{list-style:none;padding:0;margin:1rem 0 0;border-top:1px dashed var(--line);padding-top:.9rem;display:grid;gap:.55rem}
.cm-list li{display:flex;align-items:center;gap:.65rem;line-height:1.2}
.cm-list img,.cm-list .ini{width:36px;height:36px;border-radius:50%;object-fit:cover;flex:none;background:color-mix(in srgb,var(--c) 12%,#fff);color:var(--c);display:grid;place-items:center;font-weight:700;font-size:.78rem}
.cm-list strong{display:block;font-size:.93rem;color:var(--ink)}
.cm-list small{color:var(--muted);font-size:.8rem}

.preview-ribbon{background:repeating-linear-gradient(135deg,#0F2C5C 0 14px,#16376F 14px 28px);color:#fff;font-size:.82rem;text-align:center;padding:.35rem 0}
.preview-ribbon a{color:#FFD7A6;font-weight:700}

.cm-mail{display:inline-flex;align-items:center;gap:.4rem;margin-top:.7rem;font-size:.88rem;font-weight:600;color:var(--c);text-decoration:none}
.cm-mail:hover{text-decoration:underline;color:var(--c)}

/* Join us on — community channels */
.join-channels{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem}
.join-channels.compact{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.6rem}
.join-btn{display:flex;align-items:center;gap:.8rem;padding:.9rem 1rem;border-radius:16px;background:#fff;border:1.5px solid color-mix(in srgb,var(--b) 30%,#fff);text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s,background .15s}
.join-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px -12px color-mix(in srgb,var(--b) 70%,transparent);background:color-mix(in srgb,var(--b) 6%,#fff);color:var(--ink)}
.join-btn i{width:44px;height:44px;flex:none;border-radius:12px;display:grid;place-items:center;font-size:1.35rem;color:#fff;background:var(--b)}
.join-btn span{display:flex;flex-direction:column;line-height:1.15}
.join-btn small{font-size:.74rem;color:var(--muted)}
.join-btn strong{font-size:1rem}
.join-section{background:linear-gradient(180deg,#fff,var(--cream))}
.footer-ko{color:#8EA0C2;font-size:.88rem}

/* Rich-text image alignment (set in the admin editor) */
.rich img.img-left{float:left;max-width:45%;margin:.3rem 1.5rem 1rem 0}
.rich img.img-right{float:right;max-width:45%;margin:.3rem 0 1rem 1.5rem}
.rich img.img-center{display:block;margin:1.2rem auto;max-width:75%}
.rich img.img-full{display:block;width:100%;margin:1.2rem 0}
.rich::after{content:"";display:block;clear:both}
.rich .ql-align-center{text-align:center}.rich .ql-align-right{text-align:right}.rich .ql-align-justify{text-align:justify}
@media (max-width:575.98px){.rich img.img-left,.rich img.img-right{float:none;max-width:100%;margin:1rem 0}}

/* Message template (President's Message) */
.msg-portrait{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:#fff}
.msg-portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.msg-caption{padding:1rem 1.2rem;border-top:4px solid var(--plum)}
.msg-caption strong{display:block;font-family:var(--serif);color:var(--navy);font-size:1.2rem}
.msg-caption span{color:var(--plum);font-weight:600;font-size:.9rem}
.msg-body{position:relative;font-size:1.1rem;line-height:1.85}
.msg-quote{display:block;font-size:3.4rem;line-height:1;color:var(--plum-l);margin:-.6rem 0 .2rem -.3rem}
.msg-sign{margin-top:2.5rem;padding-top:1.2rem;border-top:1px solid var(--line);max-width:420px}
.msg-sign-name{font-family:var(--serif);font-style:italic;font-size:2rem;color:var(--navy);line-height:1.1}
.msg-sign-title{color:var(--muted);font-weight:600;margin-top:.3rem}

/* Timeline template (History) */
.timeline-v{position:relative;max-width:980px;margin:0 auto}
.timeline-v::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:3px;background:linear-gradient(var(--saffron),var(--plum),var(--navy));transform:translateX(-50%);border-radius:3px}
.tl-item{position:relative;width:50%;padding:0 2.5rem 2.5rem}
.tl-item.left{left:0;text-align:right}
.tl-item.right{left:50%}
.tl-year{display:inline-block;background:var(--navy);color:#fff;font-family:var(--serif);font-weight:600;font-size:1.15rem;padding:.25rem .9rem;border-radius:999px;margin-bottom:.7rem}
.tl-item::after{content:"";position:absolute;top:.6rem;width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--plum);z-index:1}
.tl-item.left::after{right:-9px}.tl-item.right::after{left:-9px}
.tl-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem;text-align:left;box-shadow:0 10px 30px -22px rgba(15,44,92,.4)}
.tl-card img{width:100%;border-radius:12px;margin-bottom:.9rem;aspect-ratio:16/10;object-fit:cover}
.tl-card h3{font-size:1.25rem;margin-bottom:.4rem}
@media (max-width:767.98px){
  .timeline-v::before{left:14px}
  .tl-item,.tl-item.right{width:100%;left:0;text-align:left;padding:0 0 2rem 2.6rem}
  .tl-item.left::after,.tl-item.right::after{left:5px;right:auto}
}
.photo-grid a{position:relative}
.pg-cap{position:absolute;left:0;right:0;bottom:0;padding:.5rem .7rem;font-size:.82rem;color:#fff;background:linear-gradient(transparent,rgba(10,31,67,.8))}

/* ================= v1.6 Community: Today in Daegu ================= */
.today-section{padding-bottom:clamp(2.5rem,5vw,4rem)}
.today-grid{display:grid;gap:1.1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.today-grid.full{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.today-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.3rem 1.1rem;box-shadow:0 10px 30px -22px rgba(15,44,92,.45);display:flex;flex-direction:column;gap:.35rem;color:var(--ink);text-decoration:none;overflow:hidden}
.tc-head{display:flex;align-items:center;gap:.6rem;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem}
.tc-ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--plum-l);color:var(--plum);font-size:1.05rem;flex:none}
.tc-more{margin-left:auto;font-size:.78rem;text-transform:none;letter-spacing:0;font-weight:600}
.tc-big{font-size:1.25rem;line-height:1.3;color:var(--navy)}
.tc-big strong{font-family:var(--serif);font-size:1.5rem;font-weight:600}
.tc-sub{font-size:.88rem;color:var(--muted);line-height:1.45}
.tc-foot{font-size:.74rem;color:#8a93a3;margin-top:auto;padding-top:.6rem;line-height:1.4}
.tc-rate .tc-ic{background:#E3F4F1;color:#0E7C86}
.tc-rate .tc-spark{color:#0E7C86;margin:.2rem 0}
.sparkline{display:block;overflow:visible}
.fx-verdict{display:flex;gap:.45rem;align-items:flex-start;font-size:.86rem;font-weight:600;padding:.5rem .7rem;border-radius:10px;line-height:1.35}
.fx-verdict.good{background:#E7F5EA;color:#1E6B34}.fx-verdict.fair{background:#F2F4F7;color:#475467}.fx-verdict.wait{background:#FFF1DE;color:#9A4D00}.fx-verdict.unknown{background:#F2F4F7;color:#667085}
.fx-calc .input-group-text.fx-out{background:#E3F4F1;color:#0E7C86;font-weight:700;min-width:7rem;justify-content:flex-end}
.tc-pan .tc-ic{background:var(--saffron-l);color:#B36200}
.moon-ic{color:#B36200}
.sun-row{display:flex;gap:1.1rem;font-size:.95rem;font-weight:600;color:var(--navy);margin-top:.3rem}
.sun-row i{color:var(--saffron);margin-right:.25rem}
.ramadan-box{margin-top:.5rem;background:#E8F4EC;color:#1B5E3A;border-radius:12px;padding:.6rem .75rem;font-size:.88rem}
.ramadan-box .small{color:#3b7a57;font-size:.74rem}
.tc-fest .tc-ic{background:#F3E8FF;color:#6B3FA0}
.fest-today{display:flex;gap:.7rem;align-items:center;background:color-mix(in srgb,var(--f) 12%,#fff);border-left:4px solid var(--f);border-radius:10px;padding:.55rem .7rem;margin-bottom:.35rem}
.fest-today>i{color:var(--f);font-size:1.3rem}.fest-today .greet{font-size:.85rem;color:var(--muted);font-style:italic}
.fest-list{list-style:none;margin:0;padding:0}
.fest-list li{display:flex;align-items:center;gap:.7rem;padding:.42rem 0;border-bottom:1px dashed var(--line)}
.fest-list li:last-child{border-bottom:0}
.fest-list .fd{width:42px;flex:none;text-align:center;border-radius:9px;background:color-mix(in srgb,var(--f) 13%,#fff);color:var(--f);font-size:.66rem;font-weight:700;text-transform:uppercase;line-height:1.1;padding:.25rem 0}
.fest-list .fd b{display:block;font-size:1.05rem;font-family:var(--serif)}
.fest-list .fn{flex:1;font-weight:600;font-size:.92rem;line-height:1.25;color:var(--ink)}.fest-list .fn small{display:block;font-weight:500;color:var(--muted);font-size:.74rem}
.fest-list .fc{font-size:.75rem;font-weight:700;color:var(--plum);white-space:nowrap}
.tc-event{background:linear-gradient(160deg,rgba(15,44,92,.93),rgba(131,16,74,.9)),var(--bg,none) center/cover;color:#fff;border:0}
.tc-event .tc-head{color:#FFD7A6}.tc-event .tc-ic{background:rgba(255,255,255,.15);color:#fff}
.tc-event .tc-sub{color:#E3E8F3}
.tc-ev-title{font-family:var(--serif);font-size:1.35rem;line-height:1.2;font-weight:600}
.tc-event:hover{color:#fff;transform:translateY(-2px);transition:transform .2s}
.countdown{display:flex;gap:.45rem;margin:.6rem 0 .3rem}
.countdown div{flex:1;background:rgba(255,255,255,.12);border-radius:10px;text-align:center;padding:.4rem 0;line-height:1.1}
.countdown b{display:block;font-size:1.35rem;font-variant-numeric:tabular-nums}
.countdown span{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;opacity:.8}
.tc-cta{margin-top:auto;font-weight:700;color:#FFD7A6;font-size:.9rem}
.board-band{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:1.4rem}
.board-band a{display:flex;align-items:center;gap:.8rem;padding:.85rem 1rem;border-radius:14px;background:var(--cream);color:var(--navy);text-decoration:none;border:1px solid var(--line);transition:.2s}
.board-band a:hover{background:#fff;border-color:var(--plum);box-shadow:var(--shadow)}
.board-band a>i:first-child{font-size:1.35rem;color:var(--plum)}
.board-band small{display:block;color:var(--muted);font-size:.8rem}

/* ================= v1.6 Community boards ================= */
.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .75rem;border-radius:999px;background:var(--cream);border:1px solid var(--line);font-size:.85rem;color:var(--ink);text-decoration:none}
a.chip:hover,.chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.chip[style*="--f"] i{color:var(--f)}.chip.active[style*="--f"]{background:var(--f);border-color:var(--f)}.chip.active i{color:#fff}
.date-tile{width:54px;flex:none;text-align:center;border-radius:12px;background:var(--plum-l);color:var(--plum);padding:.35rem 0;line-height:1.1;font-size:.68rem;font-weight:700;text-transform:uppercase}
.date-tile strong{display:block;font-size:1.4rem;font-family:var(--serif);color:var(--plum-d)}
.side-box{background:var(--cream);border-radius:var(--radius);padding:1.3rem 1.4rem;border:1px solid var(--line)}
.board-rules{list-style:none;padding:0;margin:0 0 .8rem}
.board-rules li{display:flex;gap:.5rem;font-size:.92rem;padding:.25rem 0}.board-rules i{color:var(--green)}
.board-toolbar{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center;margin-bottom:1.8rem}
.board-filter{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;flex:1;max-width:760px}
.board-filter .input-group{flex:1 1 240px;width:auto}.board-filter .form-select{width:auto;flex:0 1 210px}
.mk-grid{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.mk-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink);transition:.2s}
.mk-card:hover{box-shadow:var(--shadow);transform:translateY(-3px);color:var(--ink)}
.mk-img{position:relative;aspect-ratio:4/3;background:var(--cream);display:grid;place-items:center}
.mk-img img{width:100%;height:100%;object-fit:cover}.mk-img>i{font-size:2.4rem;color:#C9BFA8}
.mk-price{position:absolute;left:.7rem;bottom:.7rem;background:var(--navy);color:#fff;font-weight:700;font-size:.85rem;padding:.25rem .7rem;border-radius:999px}
.mk-price.free{background:var(--green)}
.mk-price.static{position:static;font-size:1rem;padding:.35rem .9rem}
.mk-body{padding:.85rem 1rem 1rem}.mk-body h3{font-family:var(--sans);font-size:1rem;font-weight:700;margin:0 0 .35rem;color:var(--ink);line-height:1.35}
.mk-meta{display:flex;flex-direction:column;font-size:.8rem;color:var(--muted)}
.ride-list{display:flex;flex-direction:column;gap:.7rem}
.ride-row{display:flex;align-items:center;gap:1rem;padding:.85rem 1rem;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);text-decoration:none;transition:.2s}
.ride-row:hover{box-shadow:var(--shadow);color:var(--ink);border-color:#d8cfbd}
.ride-route{flex:1;min-width:0}
.rr{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-weight:700;color:var(--navy)}.rr i{color:var(--plum)}
.rr.big{font-family:var(--serif);font-size:1.6rem;font-weight:600}
.ride-kind{font-size:.8rem;font-weight:700;padding:.3rem .75rem;border-radius:999px;white-space:nowrap}
.ride-kind.offer{background:#E7F5EA;color:#1E6B34}.ride-kind.request{background:var(--saffron-l);color:#9A4D00}
.wish-grid{columns:3 280px;column-gap:1.2rem}
.wish-card{break-inside:avoid;margin-bottom:1.2rem;background:#fff;border:1px solid var(--line);border-top:4px solid var(--w);border-radius:16px;overflow:hidden}
.wish-card img{width:100%;display:block;max-height:320px;object-fit:cover}
.wish-body{padding:1rem 1.15rem}.wish-body h3{font-size:1.2rem;margin:.45rem 0}.wish-body h3 a{color:var(--navy);text-decoration:none}
.wish-body p{font-size:.93rem;color:#3b4456;margin-bottom:.6rem}
.wish-kind{display:inline-flex;gap:.35rem;align-items:center;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--w);background:color-mix(in srgb,var(--w) 10%,#fff);padding:.25rem .6rem;border-radius:999px}
.wish-foot{display:flex;justify-content:space-between;align-items:center;gap:.5rem}
.cheer-btn{border:1.5px solid var(--plum);background:#fff;color:var(--plum);border-radius:999px;padding:.2rem .7rem;font-weight:700;font-size:.85rem;transition:.2s}
.cheer-btn:hover,.cheer-btn.done{background:var(--plum);color:#fff}.cheer-btn.big{font-size:1rem;padding:.45rem 1.1rem}
.board-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}.board-gallery.one{grid-template-columns:1fr}
.board-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}.board-gallery.one img{aspect-ratio:auto;max-height:480px}
.board-body{font-size:1.05rem}
.safety-note{display:flex;gap:.7rem;background:#EEF4FF;color:#1F3A6B;border-radius:14px;padding:.85rem 1rem;font-size:.88rem}.safety-note i{font-size:1.3rem}
.report-box{background:#FFF5F5;border-radius:12px;padding:.8rem}
.board-thumb-edit{display:flex;flex-direction:column;align-items:center;font-size:.8rem;gap:.2rem}.board-thumb-edit img{width:96px;height:72px;object-fit:cover;border-radius:8px}
.price-toggle .btn{font-size:.9rem}
.board-tiles{display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.board-tile{background:#fff;border-radius:var(--radius);padding:1.4rem;border:1px solid var(--line);display:flex;flex-direction:column}
.bt-head{display:flex;gap:.8rem;margin-bottom:1rem}.bt-head h3{font-size:1.25rem;margin:0 0 .2rem}.bt-head p{font-size:.88rem;color:var(--muted);margin:0}
.bt-list{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem}
.bt-list.market{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}
.bt-list.market .mk-body{padding:.5rem .55rem}.bt-list.market .mk-body h3{font-size:.8rem}.bt-list.market .mk-meta{display:none}.bt-list.market .mk-price{font-size:.7rem;left:.4rem;bottom:.4rem;padding:.15rem .5rem}
.bt-list.ride .ride-row{padding:.55rem .7rem;gap:.6rem}.bt-list.ride .date-tile{width:44px}.bt-list.ride .date-tile strong{font-size:1.1rem}.bt-list.ride .ride-kind{display:none}
.bt-list.wish .wish-card{margin:0}.bt-list.wish .wish-card img{display:none}.bt-list.wish .wish-body p{display:none}
.bt-actions{margin-top:auto;display:flex;justify-content:space-between;align-items:center}
/* festivals page */
.faith-filter{display:flex;flex-wrap:wrap;gap:.5rem}
.fest-month{font-size:1.5rem;margin:2.2rem 0 1rem;padding-bottom:.4rem;border-bottom:2px solid var(--cream-d)}
.fest-cards{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(330px,1fr))}
.fest-card{display:flex;gap:1rem;background:#fff;border:1px solid var(--line);border-left:5px solid var(--f);border-radius:16px;padding:1rem 1.1rem}
.fest-card.now{background:color-mix(in srgb,var(--f) 7%,#fff);box-shadow:var(--shadow)}
.fc-date{width:56px;flex:none;text-align:center;line-height:1.05;color:var(--f)}
.fc-date b{display:block;font-family:var(--serif);font-size:2rem}.fc-date span{font-weight:700;text-transform:uppercase;font-size:.8rem}.fc-date small{display:block;color:var(--muted);font-size:.72rem;margin-top:.15rem}
.fc-body{flex:1;min-width:0}.fc-body h3{font-size:1.2rem;margin:.1rem 0 .3rem}.fc-body p{font-size:.9rem;color:var(--muted);margin-bottom:.4rem}
.fc-type{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--f)}
.fc-foot{display:flex;justify-content:space-between;gap:.5rem;align-items:center;flex-wrap:wrap}
.fc-foot .greet{font-style:italic;font-size:.88rem;color:var(--navy)}
.fc-when{font-size:.78rem;font-weight:700;color:var(--plum);background:var(--plum-l);padding:.15rem .6rem;border-radius:999px}.fc-when.on{background:var(--f);color:#fff}
@media (max-width:575px){.ride-row{flex-wrap:wrap}.ride-kind{margin-left:calc(54px + 1rem)}.bt-list.market{grid-template-columns:repeat(2,1fr)}.board-filter .form-select{flex:1 1 100%}}
.pan-facts{list-style:none;padding:0;margin:.7rem 0 0;border-top:1px dashed var(--line)}
.pan-facts li{display:flex;justify-content:space-between;font-size:.86rem;padding:.32rem 0;border-bottom:1px dashed var(--line)}
.pan-facts li span{color:var(--muted)}

/* ================= v1.7 Gallery videos, social wall, share photos ================= */
.gallery-tabs{display:flex;flex-wrap:wrap;gap:.5rem}
.gallery-tabs a{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1.1rem;border-radius:999px;border:1.5px solid var(--line);color:var(--navy);font-weight:600;text-decoration:none;background:#fff}
.gallery-tabs a span{background:var(--cream);border-radius:999px;padding:0 .5rem;font-size:.8rem}
.gallery-tabs a.active,.gallery-tabs a:hover{background:var(--navy);border-color:var(--navy);color:#fff}.gallery-tabs a.active span{background:rgba(255,255,255,.2)}
.video-grid{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.video-tile{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--line);transition:.2s}
.video-tile:hover{box-shadow:var(--shadow);transform:translateY(-3px);color:var(--ink)}
.vt-img{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,color-mix(in srgb,var(--p) 25%,#0F2C5C),#0F2C5C);display:grid;place-items:center;overflow:hidden}
.video-tile.portrait .vt-img{aspect-ratio:16/9}
.vt-img img{width:100%;height:100%;object-fit:cover}
.vt-brand{font-size:3rem;color:rgba(255,255,255,.35)}
.vt-play{position:absolute;inset:0;margin:auto;width:64px;height:64px;border-radius:50%;background:rgba(163,25,91,.92);color:#fff;display:grid;place-items:center;font-size:2rem;box-shadow:0 10px 30px rgba(0,0,0,.35);transition:transform .2s}
.video-tile:hover .vt-play,.wall-card:hover .vt-play{transform:scale(1.1)}
.vt-prov{position:absolute;left:.6rem;bottom:.6rem;background:rgba(0,0,0,.6);color:#fff;font-size:.72rem;font-weight:700;padding:.15rem .55rem;border-radius:999px}
.vt-cap{padding:.75rem 1rem;font-weight:600;line-height:1.35}.vt-cap small{display:block;font-weight:500;color:var(--muted);font-size:.8rem}
.lightbox .lb-video{width:min(92vw,1100px);aspect-ratio:16/9;border:0;border-radius:12px;background:#000;max-height:82vh}
.lightbox .lb-video.portrait{width:min(92vw,420px);aspect-ratio:9/16}
.lightbox video.lb-file{height:auto;object-fit:contain}
.share-cta{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;background:var(--plum-l);border-radius:var(--radius);padding:1.1rem 1.3rem}
.share-cta>i{font-size:1.8rem;color:var(--plum)}.share-cta div{flex:1;min-width:220px}.share-cta span{display:block;color:var(--muted);font-size:.92rem}
.wall-grid{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.wall-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--ink);transition:.2s}
.wall-card:hover{box-shadow:var(--shadow);transform:translateY(-3px);color:var(--ink)}
.wc-img{position:relative;aspect-ratio:1/1;background:#f3f0e8;display:grid;place-items:center;overflow:hidden}
.wc-img img{width:100%;height:100%;object-fit:cover}
.wc-img.empty{background:linear-gradient(135deg,var(--p),color-mix(in srgb,var(--p) 55%,#0F2C5C))}.wc-img.empty>i{font-size:3.4rem;color:rgba(255,255,255,.9)}
.wc-badge{position:absolute;top:.6rem;right:.6rem;width:34px;height:34px;border-radius:50%;background:#fff;color:var(--p);display:grid;place-items:center;box-shadow:0 4px 12px rgba(0,0,0,.2)}
.wc-pin{position:absolute;top:.6rem;left:.6rem;background:var(--saffron);color:#fff;border-radius:999px;padding:.1rem .5rem;font-size:.8rem}
.wc-body{padding:.85rem 1rem 1rem;display:flex;flex-direction:column;gap:.5rem;flex:1}
.wc-cap{font-size:.93rem;line-height:1.45}
.wc-foot{margin-top:auto;display:flex;justify-content:space-between;font-size:.78rem;color:var(--muted)}.wc-go{font-weight:700;color:var(--p)}
.follow-box{background:var(--cream);border-radius:var(--radius);padding:1.6rem}
.drop-zone{position:relative;display:flex;flex-direction:column;align-items:center;gap:.2rem;text-align:center;border:2px dashed #cfc5ae;border-radius:16px;padding:1.6rem 1rem;background:var(--cream);color:var(--navy);transition:.2s}
.drop-zone:hover,.drop-zone:focus-within{border-color:var(--plum);background:#fff}
.drop-zone>i{font-size:2.2rem;color:var(--plum)}.drop-zone small{color:var(--muted)}
.drop-input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.share-preview{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}
.share-preview img{width:84px;height:84px;object-fit:cover;border-radius:10px}

/* ================= v1.8 Paid registration & event pass ================= */
.fee-table{width:100%;font-size:.88rem;margin-top:.3rem;border-collapse:separate;border-spacing:0}
.fee-table th,.fee-table td{padding:.35rem .4rem;border-bottom:1px dashed var(--line);text-align:right}
.fee-table thead th{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}
.fee-table tbody th{text-align:left;font-weight:700;color:var(--navy)}.fee-table tbody th small{display:block;font-weight:500;color:var(--muted);font-size:.72rem}
.fee-table tr.now{background:var(--plum-l)}.fee-table tr.now th,.fee-table tr.now td{color:var(--plum-d);font-weight:700}
.fee-table tr.over{opacity:.45;text-decoration:line-through}
.early-note{margin-top:.5rem;font-size:.85rem;font-weight:700;color:#9A4D00;background:var(--saffron-l);padding:.35rem .6rem;border-radius:8px}
.people-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}
.people-pick:has(> .pp:nth-child(2):last-child){grid-template-columns:repeat(2,1fr)}
.people-pick .pp{display:flex;flex-direction:column;gap:.3rem;background:var(--cream);border-radius:12px;padding:.55rem .6rem;font-weight:600;font-size:.88rem;color:var(--navy)}
.people-pick .pp small{display:block;font-weight:500;color:var(--muted);font-size:.72rem}
.pay-box{background:#F6F8FC;border:1px solid #DCE3F0;border-radius:14px;padding:1rem}
.pay-total{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px dashed #cdd6e6;padding-bottom:.6rem;margin-bottom:.8rem}
.pay-total span{font-weight:600;color:var(--muted)}.pay-total strong{font-family:var(--serif);font-size:1.7rem;color:var(--navy)}
.pay-waitlist{background:#EEF4FF;border-radius:10px;padding:.5rem .7rem;margin-bottom:.6rem;color:#1F3A6B}
.bank-lines{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;background:#fff;border-radius:10px;padding:.6rem .8rem;border:1px solid #e3e8f2;line-height:1.6}
.pass-section{background:linear-gradient(180deg,var(--cream),#fff 60%)}
.event-pass{background:#fff;border-radius:24px;box-shadow:0 30px 60px -30px rgba(15,44,92,.45);overflow:hidden;border:1px solid var(--line)}
.ep-head{display:flex;align-items:center;gap:.7rem;padding:1rem 1.2rem;background:var(--navy);color:#fff}
.ep-head img{background:#fff;border-radius:50%;padding:2px}.ep-head small{display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#FFD7A6}
.ep-state{margin-left:auto;font-size:.78rem;font-weight:700;padding:.3rem .7rem;border-radius:999px;background:rgba(255,255,255,.15);white-space:nowrap}
.ep-state.success{background:#2E9E5B}.ep-state.warning{background:var(--saffron)}.ep-state.danger{background:#D92D20}.ep-state.info{background:#2563EB}
.ep-event{padding:1.2rem 1.4rem .4rem;text-align:center}.ep-event h2{font-size:1.5rem;margin-bottom:.4rem}.ep-event div{font-size:.9rem;color:var(--muted)}
.ep-qr{display:flex;flex-direction:column;align-items:center;padding:.8rem 1rem 1rem}
.ep-qr svg{max-width:100%;height:auto;border-radius:12px}
.ep-qr-wait{width:230px;height:230px;border:2px dashed var(--line);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;color:var(--muted);text-align:center;font-size:.9rem}
.ep-qr-wait i{font-size:2.4rem;color:var(--saffron)}
.ep-id{margin-top:.6rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.35rem;font-weight:700;letter-spacing:.08em;color:var(--navy)}
.ep-tear{height:0;border-top:2px dashed var(--line);margin:0 1.2rem;position:relative}
.ep-tear::before,.ep-tear::after{content:"";position:absolute;top:-13px;width:24px;height:24px;border-radius:50%;background:var(--cream)}
.ep-tear::before{left:-34px}.ep-tear::after{right:-34px}
.ep-details{display:grid;grid-template-columns:1fr 1fr;gap:.8rem 1rem;padding:1.1rem 1.4rem .4rem;margin:0}
.ep-details dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.ep-details dd{margin:0;font-weight:600}
.ep-msg{margin:.6rem 1.4rem 1.2rem;padding:.6rem .8rem;border-radius:10px;font-size:.9rem;text-align:center}
.ep-msg.success{background:#E7F5EA;color:#1E6B34}.ep-msg.warning{background:var(--saffron-l);color:#9A4D00}.ep-msg.danger{background:#FEECEB;color:#B42318}.ep-msg.info{background:#EEF4FF;color:#1F3A6B}
@media (max-width:575px){.people-pick,.people-pick:has(> .pp:nth-child(2):last-child){grid-template-columns:1fr}.ep-details{grid-template-columns:1fr}}
@media print{.site-top,.site-footer,footer,.page-banner,.no-print,.preview-ribbon{display:none!important}.pass-section{padding:0!important;background:#fff}.event-pass{box-shadow:none;border:1px solid #ccc}.ep-head{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.people-pick .pp select{margin-top:auto}
.badge[class*="badge-soft-"]{font-weight:700;border-radius:999px;padding:.3em .65em}
.badge-soft-success{background:#E7F5EA;color:#1E6B34}.badge-soft-warning{background:var(--saffron-l);color:#9A4D00}.badge-soft-danger{background:#FEECEB;color:#B42318}
.badge-soft-info{background:#EEF4FF;color:#1F3A6B}.badge-soft-secondary{background:#F2F4F7;color:#475467}
.ep-details .ep-wide{grid-column:1/-1}

/* v1.9 lucky draw */
.lucky-nums{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.3rem}
.lucky-nums .ln{display:inline-flex;flex-direction:column;align-items:center;padding:.2rem .55rem;border-radius:9px;background:#F6E4EC;color:#83104A;line-height:1.05}
.lucky-nums .ln b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem;letter-spacing:.06em}
.lucky-nums .ln small{font-size:.58rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;opacity:.8}
.lucky-nums .ln.child{background:#FFF1DE;color:#9A4D00}
.lucky-nums .ln.won{background:#16A34A;color:#fff;box-shadow:0 0 0 3px #BBF7D0}
.lucky-nums .ln.absent{opacity:.45;text-decoration:line-through}
.lucky-nums.big .ln{padding:.45rem .8rem;border-radius:12px}.lucky-nums.big .ln b{font-size:1.45rem}
.ep-lucky{margin:0 1.4rem 1.2rem;padding:.9rem;border-radius:14px;background:#FFFBF5;border:1px dashed #F3C98B;text-align:center}
.ep-lucky .lucky-nums{justify-content:center;margin:.5rem 0}
.ep-lucky-h{font-weight:700;color:#9A4D00}
.ep-win{display:flex;gap:.7rem;align-items:center;margin:0 1.4rem 1rem;padding:.8rem 1rem;border-radius:14px;background:linear-gradient(135deg,#FFF3C4,#FFE08A);color:#5C3B00}
.ep-win>i{font-size:1.8rem;color:#C27C00}.ep-win span{display:block;font-size:.88rem}
.winners-box{background:linear-gradient(160deg,#FFF8E6,#fff);border:1px solid #F3DDAA;border-radius:var(--radius);padding:1.3rem 1.4rem;margin-bottom:2rem}
.winners-box h2 i{color:#C27C00}
.win-check{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin:.5rem 0}.win-check input{max-width:240px;font-family:ui-monospace,monospace;font-size:1.1rem;letter-spacing:.15em}
.win-check span{font-weight:700;color:var(--plum)}
.win-list{list-style:none;padding:0;margin:0}
.win-list li{display:flex;align-items:center;gap:.8rem;padding:.5rem .3rem;border-bottom:1px dashed #EADFC4}
.win-list li.hit{background:#DCFCE7;border-radius:10px}
.win-list .wn{font-family:ui-monospace,monospace;font-weight:800;font-size:1.25rem;letter-spacing:.08em;color:var(--navy);min-width:4.2rem}
.win-list .wt{flex:1;font-weight:600}.win-list .wt small{display:block;font-weight:500;color:var(--muted);font-size:.78rem}
.win-list .wp{font-size:.9rem;color:var(--muted);text-align:right}

/* ================= v1.11 FAQ ================= */
.faq-search{display:flex;align-items:center;gap:.5rem;border:1.5px solid var(--line);border-radius:999px;padding:.55rem 1rem;background:#fff;margin-bottom:1rem}
.faq-search:focus-within{border-color:var(--plum)}
.faq-search input{border:0;outline:0;flex:1;min-width:0;background:transparent}.faq-search i{color:var(--muted)}
.faq-cats{display:flex;flex-direction:column;gap:.2rem}
.faq-cats a{display:flex;align-items:center;gap:.55rem;padding:.5rem .75rem;border-radius:10px;color:var(--navy);text-decoration:none;font-weight:600;font-size:.95rem}
.faq-cats a:hover{background:var(--cream)}.faq-cats a i{color:var(--plum)}
.faq-cats a span{margin-left:auto;font-size:.75rem;background:var(--cream);border-radius:999px;padding:0 .5rem;color:var(--muted)}
.faq-group{margin-bottom:2.2rem;scroll-margin-top:calc(var(--top-h,84px) + 16px)}
.faq-cat-title{font-size:1.4rem;margin-bottom:.8rem}.faq-cat-title i{color:var(--plum);font-size:1.2rem}
.faq-item{border:1px solid var(--line);border-radius:14px;background:#fff;margin-bottom:.6rem;transition:box-shadow .2s;scroll-margin-top:calc(var(--top-h,84px) + 16px)}
.faq-item[open]{box-shadow:var(--shadow);border-color:#e3d6bb}
.faq-item summary{list-style:none;cursor:pointer;padding:1rem 3rem 1rem 1.2rem;font-weight:700;color:var(--navy);position:relative;line-height:1.4}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:1.1rem;top:50%;transform:translateY(-50%);width:1.7rem;height:1.7rem;border-radius:50%;background:var(--plum-l);color:var(--plum);display:grid;place-items:center;font-weight:800;transition:transform .2s}
.faq-item[open] summary::after{content:"−";background:var(--plum);color:#fff}
.faq-item summary:focus-visible{outline:3px solid var(--saffron);border-radius:14px}
.faq-a{padding:0 1.2rem 1.1rem;color:#3b4456}
.faq-a ul{padding-left:1.2rem}.faq-a p:last-child{margin-bottom:.4rem}
.faq-tools{margin-top:.4rem}.faq-tools .btn-link{color:var(--muted);text-decoration:none;font-size:.82rem}
.faq-item.hit summary{background:linear-gradient(90deg,#FFF6D6,transparent);border-radius:14px}
.faq-cta{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;background:var(--navy);color:#fff;border-radius:var(--radius);padding:1.2rem 1.4rem;margin-top:2rem}
.faq-cta>i{font-size:2rem;color:#FFD7A6}.faq-cta div{flex:1;min-width:220px}.faq-cta span{display:block;color:#D5DEEE;font-size:.92rem}
.faq-related-wrap{max-width:880px}
.faq-related{margin-top:2.5rem}
.faq-related .faq-item summary{font-size:.97rem}
@media (max-width:991px){.faq-cats{flex-direction:row;flex-wrap:wrap}.faq-cats a{background:var(--cream);font-size:.85rem}}
@media (max-width:991px){.faq-cats{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -1rem;padding:0 1rem .3rem}.faq-cats::-webkit-scrollbar{display:none}.faq-cats a{flex:none;white-space:nowrap}}

/* v1.12 extra registration questions */
.evq{display:flex;flex-direction:column;gap:1rem}
.evq-q{border:1px solid var(--line);border-radius:14px;padding:.85rem .95rem;background:#fff}
.evq-label{font-weight:700;color:var(--navy);font-size:.95rem}
.evq-help{font-size:.8rem;color:var(--muted);margin:.1rem 0 .55rem}
.meal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.45rem}
.meal-opt{display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:var(--cream);border-radius:10px;padding:.4rem .5rem .4rem .7rem;font-size:.86rem;font-weight:600;margin:0}
.meal-opt input{width:64px;text-align:center;font-weight:700}
.meal-check{margin-top:.5rem;color:var(--muted)}.meal-check.ok{color:#1E6B34}.meal-check.bad{color:#B42318;font-weight:600}
.evq-checks{display:flex;flex-wrap:wrap;gap:.4rem}
.evq-chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:999px;padding:.32rem .8rem;font-size:.85rem;cursor:pointer;background:#fff;margin:0}
.evq-chip:has(input:checked){border-color:var(--navy);background:#EEF3FB;color:var(--navy);font-weight:600}
.evq-chip input{accent-color:var(--navy)}
.evq-players{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.6rem;font-size:.85rem}
.evq-players label{display:flex;align-items:center;gap:.35rem;margin:0}.evq-players input{width:64px;text-align:center}
.perf-slots{margin-top:.6rem}
.perf-slot{border:1px dashed var(--line);border-radius:12px;padding:.6rem .75rem .75rem;margin-bottom:.6rem;background:#FCFBF8}
.perf-slot legend{float:none;width:auto;font-size:.8rem;font-weight:700;color:var(--navy);margin:0 0 .2rem;padding:0}
.perf-locked{background:var(--cream);border-radius:10px;padding:.5rem .7rem;font-size:.86rem;margin:.4rem 0}
.ep-prefs{margin:0 1.4rem .9rem;padding:.7rem .9rem;background:var(--cream);border-radius:12px;font-size:.88rem}
.ep-prefs .pref-row{display:flex;gap:.8rem;padding:.2rem 0}.ep-prefs dt{min-width:38%;color:var(--muted);font-weight:500}.ep-prefs dd{margin:0;font-weight:600;color:var(--ink)}
.resend-link summary{font-size:.85rem;color:var(--plum);cursor:pointer}
@media print{.ep-prefs{background:#fff;border:1px solid #ddd}}

/* v1.12 feedback */
.stars{color:#E5A50A;letter-spacing:1px;white-space:nowrap}.stars .off{color:#D9D4C7}
.star-input{display:inline-flex;flex-direction:row-reverse;gap:.1rem}
.star-input input{position:absolute;opacity:0;width:1px;height:1px}
.star-input label{font-size:1.45rem;line-height:1;color:#D9D4C7;cursor:pointer;transition:transform .1s,color .1s;padding:0 .05rem}
.star-input.big label{font-size:2.3rem}
.star-input label:hover,.star-input label:hover~label,.star-input input:checked~label{color:#E5A50A}
.star-input input:focus-visible+label{outline:2px solid var(--navy);border-radius:4px}
.star-input label:active{transform:scale(1.15)}
.fb-form{display:flex;flex-direction:column;gap:1rem}
.fb-q .evq-label{display:block;margin-bottom:.35rem}
.fb-topics{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.35rem .9rem}
.fb-topic{display:flex;align-items:center;justify-content:space-between;gap:.6rem;background:var(--cream);border-radius:10px;padding:.3rem .7rem;font-size:.9rem;font-weight:600}
.fb-quote{background:var(--cream);border-radius:12px;padding:.8rem .9rem}.fb-quote-name{margin-top:.5rem;max-width:360px}
.fb-card{display:flex;align-items:center;gap:.9rem;background:#FFF8E6;border:1px solid #F3DFA8;border-radius:16px;padding:.9rem 1rem;margin-bottom:1rem}
.fb-card-ic{font-size:1.6rem}

/* v1.12 raise a concern */
.emergency-box{background:#FEF3F2;border:1px solid #FECDCA;border-radius:16px;padding:1rem 1.2rem}.emergency-box h2{color:#B42318}.emergency-box ul{padding-left:1.1rem}
.concern-how{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.7rem}.concern-how li{display:flex;gap:.7rem;font-size:.93rem}.concern-how i{color:var(--plum);font-size:1.2rem}
.concern-anon{background:var(--cream);border-radius:12px;padding:.7rem .9rem .7rem 2.2rem}
.concern-done{background:#ECFDF3;border:1px solid #ABEFC6;border-radius:16px;padding:1.1rem 1.2rem;margin-bottom:1.2rem}.concern-done>i{font-size:2rem;color:#067647}.concern-done .code{font-size:1.15rem;letter-spacing:1px}
.concern-steps{display:flex;list-style:none;padding:0;margin:.8rem 0 1rem;gap:.4rem}.concern-steps li{flex:1;text-align:center;font-size:.8rem;padding:.4rem;border-radius:8px;background:var(--cream);color:var(--muted)}.concern-steps li.done{background:#E7F5EA;color:#1E6B34;font-weight:700}
.concern-thread{display:flex;flex-direction:column;gap:.6rem}.cm{border-radius:14px;padding:.7rem .9rem;max-width:92%}.cm.person{background:var(--cream);align-self:flex-start}.cm.panel{background:#EEF3FB;align-self:flex-end}
.cm-h{font-size:.75rem;color:var(--muted);font-weight:600;margin-bottom:.2rem}.cm-b{font-size:.93rem}
.concern-link{display:flex;gap:.7rem;background:var(--cream);border-radius:14px;padding:.8rem 1rem}.concern-link>i{font-size:1.4rem;color:var(--plum)}
.concern-thread,.concern-thread .cm{text-align:left}

/* v1.12 event poster popup */
body.pp-open{overflow:hidden}
.poster-pop{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:16px}
.poster-pop[hidden]{display:none}
.pp-back{position:absolute;inset:0;background:rgba(10,20,40,.72);backdrop-filter:blur(3px);animation:ppfade .25s ease}
.pp-box{position:relative;background:#fff;border-radius:20px;box-shadow:0 30px 80px -20px rgba(0,0,0,.6);width:min(460px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden;animation:pprise .3s ease}
.pp-x{position:absolute;top:10px;right:10px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.92);box-shadow:0 2px 8px rgba(0,0,0,.25);font-size:1.05rem;color:var(--ink)}
.pp-slides{position:relative;flex:1;min-height:0;overflow:hidden}
.pp-slide{display:none;margin:0;height:100%;flex-direction:column}.pp-slide.on{display:flex}
.pp-slide>a{display:block;flex:1;min-height:0;background:#111}
.pp-slide img{display:block;width:100%;height:100%;max-height:calc(100vh - 210px);object-fit:contain;background:#111}
.pp-slide figcaption{display:flex;align-items:center;gap:.8rem;padding:.75rem 1rem;border-bottom:1px solid var(--line)}
.pp-slide figcaption>div{flex:1;min-width:0}
.pp-slide figcaption strong{display:block;color:var(--navy);font-size:.98rem;line-height:1.25}
.pp-slide figcaption span{display:block;font-size:.8rem;color:var(--muted)}
.pp-slide figcaption .btn{flex:none}
.pp-nav{position:absolute;top:40%;z-index:2;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.9);box-shadow:0 2px 8px rgba(0,0,0,.25)}
.pp-nav.prev{left:10px}.pp-nav.next{right:10px}
.pp-dots{display:flex;justify-content:center;gap:6px;padding:.5rem 0 0}
.pp-dots button{width:8px;height:8px;border-radius:50%;border:0;background:#D0CBBF;padding:0}.pp-dots button.on{background:var(--plum);width:20px;border-radius:99px}
.pp-foot{display:flex;justify-content:space-between;align-items:center;padding:.5rem .8rem .7rem}
.pp-foot .btn-link{color:var(--muted);text-decoration:underline}
@keyframes ppfade{from{opacity:0}}@keyframes pprise{from{opacity:0;transform:translateY(16px) scale(.97)}}
@media (prefers-reduced-motion:reduce){.pp-back,.pp-box{animation:none}}
/* poster on the event page */
.ev-poster{display:block;position:relative;border-radius:18px;overflow:hidden;background:var(--cream);box-shadow:var(--shadow, 0 10px 30px -18px rgba(0,0,0,.4))}
.ev-poster img{display:block;width:100%;height:auto;max-height:80vh;object-fit:contain;margin:0 auto}
.ev-poster .zoom{position:absolute;right:10px;top:10px;opacity:.9;background:rgba(15,44,92,.85);color:#fff;border-radius:999px;padding:.3rem .7rem;font-size:.78rem}

/* v1.13 members */
.member-tick{display:inline-flex;align-items:center;gap:.2rem;font-size:.72rem;font-weight:700;color:#0E7C86;background:#E3F4F4;border-radius:999px;padding:.05rem .45rem;margin-left:.25rem;vertical-align:middle;white-space:nowrap}
.member-card{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:linear-gradient(120deg,var(--navy),#1F4A8A);color:#fff;border-radius:18px;padding:1.1rem 1.3rem;box-shadow:0 16px 30px -18px rgba(15,44,92,.8)}
.member-card .mc-no{font-family:ui-monospace,Menlo,monospace;font-size:1.15rem;letter-spacing:1px;margin-top:.3rem}
.member-cta{background:#E3F4F4;border-color:#BFE3E3}
.member-prefill{background:#E3F4F4;color:#0B5F66;border-radius:10px;padding:.45rem .7rem}
/* v1.14 Newcomer welcome + language coordinators */
.sos-head{font-weight:700;color:var(--navy);margin-bottom:.6rem;font-size:.95rem}.sos-head i{color:#B42318}.sos-head span{font-weight:400;color:#667085;font-size:.85rem}
.sos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem}
.sos-tile{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.1rem;padding:1rem .6rem;border-radius:16px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--c);text-decoration:none;color:inherit;box-shadow:var(--shadow);transition:transform .15s}
.sos-tile:hover,.sos-tile:focus-visible{transform:translateY(-2px);color:inherit}
.sos-tile i{font-size:1.4rem;color:var(--c)}.sos-tile .no{font-size:2rem;font-weight:800;line-height:1.1;color:var(--c);letter-spacing:.02em}.sos-tile .lbl{font-size:.85rem;color:#344054;font-weight:600}
.sos-tile .no{white-space:nowrap}.sos-tile .no.long{font-size:1.35rem;padding:.3rem 0}.sos-tile.red{--c:#B42318}.sos-tile.blue{--c:#1C6390}.sos-tile.teal{--c:#0E7C86}.sos-tile.green{--c:#1E6B34}.sos-tile.orange{--c:#B54708}
.sos-note{font-size:.82rem;color:#667085;margin:.6rem 0 0}
@media (max-width:767px){.sos-grid{grid-template-columns:repeat(2,1fr)}.sos-tile .no{font-size:1.7rem}}
.lang-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem}
.lang-card{display:flex;flex-direction:column;gap:.15rem;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.1rem 1.2rem;text-decoration:none;color:inherit;box-shadow:var(--shadow);transition:transform .15s,border-color .15s}
.lang-card:hover{transform:translateY(-3px);border-color:var(--saffron)}.lang-card .hi{font-size:1.45rem;color:var(--plum);font-weight:700;line-height:1.3}.lang-card small{color:#667085;font-size:.78rem;line-height:1.35}.lang-card .n{margin-top:.5rem;font-size:.82rem;font-weight:700;color:#0E7C86}
.check-card{background:#fff;border-radius:16px;padding:1.1rem;height:100%;border:1px solid var(--line)}.check-card i{font-size:1.5rem;color:var(--saffron)}.check-card strong{display:block;margin:.35rem 0 .2rem}.check-card p{font-size:.86rem;color:#475467;margin:0}
.coord-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.2rem;height:100%;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:flex-start}
.coord-photo{width:58px;height:58px;border-radius:50%;object-fit:cover;flex:0 0 58px}.coord-photo.ini{display:flex;align-items:center;justify-content:center;background:var(--saffron-l);color:#9A4D00;font-weight:700;font-size:1.4rem}
.vtick{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#0E7C86;color:#fff;font-size:.7rem;vertical-align:1px}
.uni-tag{margin-top:.7rem;font-size:.78rem;font-weight:700;background:#E1F0F8;color:#1C6390;border-radius:999px;padding:.2rem .65rem}
.topic-chips{display:flex;flex-wrap:wrap;gap:.3rem}.topic-chips span{font-size:.74rem;background:var(--cream);border-radius:999px;padding:.15rem .55rem;color:#475467}
.topic-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.4rem}.topic-pick label{display:flex;gap:.45rem;align-items:center;font-size:.9rem;border:1px solid var(--line);border-radius:12px;padding:.45rem .7rem;cursor:pointer}.topic-pick label:has(input:checked){border-color:var(--saffron);background:var(--saffron-l)}
.ask-to{background:#E1F0F8;border-radius:12px;padding:.55rem .8rem;font-size:.9rem}
.ev-faq{max-width:900px}
/* v1.15.1 Leadership page — one band per section, each with its own layout */
.ld-band{padding:clamp(3rem,6vw,4.5rem) 0;position:relative}
.ld-band.ld-alt{background:var(--cream)}
.ld-band+.ld-band:not(.ld-alt)::before{content:"";position:absolute;top:0;left:50%;width:min(1100px,90%);height:1px;background:var(--line);transform:translateX(-50%)}
.ld-head{text-align:center;max-width:640px;margin:0 auto 2.4rem}
.ld-head h2{font-size:clamp(1.7rem,3.2vw,2.3rem);margin:.35rem 0 .4rem}
.ld-head h2::after{content:"";display:block;width:56px;height:3px;border-radius:3px;margin:.8rem auto 0;background:linear-gradient(90deg,var(--saffron),var(--plum))}
.ld-head p{color:var(--muted);margin:0}
.ld-count{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--plum)}
.ld-role{color:var(--plum);font-weight:700;font-size:.86rem;letter-spacing:.01em}
.ld-cmt{color:var(--muted);font-weight:600}
.ld-ini{display:grid;place-items:center;width:100%;height:100%;font-family:var(--serif);color:var(--navy);background:var(--cream-d);font-size:2.4rem}
.ld-links{display:flex;gap:.5rem;flex-wrap:wrap}
.ld-links a{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;font-weight:600;text-decoration:none;color:var(--navy);border:1px solid var(--line);background:#fff;border-radius:999px;padding:.3rem .8rem}
.ld-links a:hover{border-color:var(--plum);color:var(--plum)}
/* spotlight / feature */
.ld-spot{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center;max-width:980px;margin:0 auto 2.5rem;background:#fff;border:1px solid var(--line);border-radius:28px;padding:clamp(1.2rem,3vw,2.2rem);box-shadow:var(--shadow)}
.ld-spot+.ld-spot{margin-top:-.5rem}
.ld-spot-ph{position:relative;aspect-ratio:4/5;border-radius:22px;overflow:hidden;background:var(--cream-d)}
.ld-spot-ph::after{content:"";position:absolute;inset:0;border-radius:22px;box-shadow:inset 0 0 0 1px rgba(15,44,92,.08)}
.ld-spot-ph img{width:100%;height:100%;object-fit:cover}
.ld-spot-ph .ld-ini{font-size:4.5rem}
.ld-spot-body h3{font-size:clamp(1.7rem,3.4vw,2.4rem);margin:.3rem 0 .8rem}
.ld-spot-body p{color:var(--muted);font-size:1.05rem;margin-bottom:1.1rem;max-width:56ch}
.ld-spot-body .ld-role{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}
.ld-spot-body .ld-role::before{content:"";display:inline-block;width:22px;height:2px;background:var(--saffron);vertical-align:middle;margin-right:.6rem}
/* portrait cards */
.ld-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,280px));gap:1.4rem;justify-content:center}
.ld-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.ld-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.ld-card-ph{aspect-ratio:1/1;background:var(--cream-d)}
.ld-card-ph img{width:100%;height:100%;object-fit:cover}
.ld-card-body{padding:1.1rem 1.2rem 1.3rem;display:flex;flex-direction:column;gap:.35rem}
.ld-card-body h3{font-size:1.25rem;margin:0}
.ld-card-body p{color:var(--muted);font-size:.9rem;margin:.2rem 0 .3rem}
/* committee cards */
.ld-cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,290px));gap:1.4rem;justify-content:center}
.ld-cc{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;text-align:center;padding-bottom:1.3rem;display:flex;flex-direction:column;align-items:center;transition:transform .2s,box-shadow .2s}
.ld-cc:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.ld-cc-top{align-self:stretch;background:var(--c);color:#fff;padding:.85rem 1rem 3.4rem;display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:700;font-size:.9rem;letter-spacing:.02em}
.ld-cc-top i{font-size:1.1rem;opacity:.9}
.ld-cc-ph{width:116px;height:116px;border-radius:50%;overflow:hidden;margin-top:-3rem;border:5px solid #fff;box-shadow:0 8px 20px -10px rgba(0,0,0,.35);background:var(--cream-d)}
.ld-cc-ph img{width:100%;height:100%;object-fit:cover}
.ld-cc-ph .ld-ini{font-size:2rem}
.ld-cc h3{font-size:1.2rem;margin:.8rem 1rem .15rem}
.ld-cc .ld-role{color:var(--c)}
.ld-cc p{color:var(--muted);font-size:.88rem;margin:.5rem 1.2rem 0}
.ld-cc-mail{margin-top:.8rem;font-size:.8rem;font-weight:600;color:var(--navy);text-decoration:none;word-break:break-all;padding:0 1rem}
.ld-cc-mail:hover{color:var(--c)}
/* compact */
.ld-compact{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem 1.4rem;max-width:1000px;margin:0 auto}
.ld-mini{display:flex;align-items:center;gap:.9rem;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.45rem 1.1rem .45rem .45rem}
.ld-alt .ld-mini{background:#fff}
.ld-mini-ph{width:62px;height:62px;flex:0 0 62px;border-radius:50%;overflow:hidden;background:var(--cream-d)}
.ld-mini-ph img{width:100%;height:100%;object-fit:cover}
.ld-mini-ph .ld-ini{font-size:1.2rem}
.ld-mini strong{display:block;font-family:var(--serif);color:var(--navy);font-size:1.02rem;line-height:1.25}
.ld-mini .ld-role{font-size:.78rem}
/* list */
.ld-list{list-style:none;padding:0;margin:0 auto;max-width:860px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 2rem}
.ld-list li{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px dashed var(--line)}
.ld-list strong{font-family:var(--serif);color:var(--navy);font-weight:600}
.ld-list span{color:var(--muted);font-size:.9rem;text-align:right}
@media (max-width:767px){.ld-spot{grid-template-columns:1fr;text-align:center}.ld-spot-ph{max-width:260px;margin:0 auto}.ld-spot-body p{margin-left:auto;margin-right:auto}.ld-spot-body .ld-links{justify-content:center}.ld-mini{border-radius:18px}}
.ld-card-ph .ld-ini,.ld-spot-ph .ld-ini{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-l) 55%,var(--plum) 130%);color:#fff;font-size:3.2rem;letter-spacing:.04em}
@media (max-width:575px){.ld-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.ld-card-body{padding:.75rem .8rem .9rem}.ld-card-body h3{font-size:1.02rem}.ld-card-body .ld-role{font-size:.78rem}.ld-card-body p{font-size:.82rem;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.ld-card-ph .ld-ini{font-size:2.2rem}.ld-links a{padding:.25rem .6rem}}
/* v1.15.2 portrait cards: every card the same width and every photo exactly the same size */
.ld-grid{grid-template-columns:repeat(auto-fit,260px)}
.ld-card-ph{width:100%;aspect-ratio:4/5;height:auto;overflow:hidden;flex:0 0 auto}
.ld-card-ph img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%}
.ld-card-ph .ld-ini{width:100%;height:100%}
@media (max-width:575px){.ld-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ld-grid{display:flex;flex-wrap:wrap;justify-content:center}
.ld-grid>.ld-card{width:260px}
@media (max-width:575px){.ld-grid>.ld-card{width:calc(50% - .4rem)}}
/* v1.15.4 Testimonials: spotlight-style cards, two per slide */
.tst{position:relative}
.tst-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 1.5rem) / 2);gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:.4rem .2rem 1rem;outline:none}
.tst-track::-webkit-scrollbar{display:none}
.tst-card{scroll-snap-align:start;display:grid;grid-template-columns:190px minmax(0,1fr);gap:1.6rem;align-items:start;background:#fff;border:1px solid var(--line);border-radius:26px;padding:1.4rem;box-shadow:var(--shadow)}
.tst-ph{aspect-ratio:4/5;border-radius:18px;overflow:hidden;background:var(--cream-d)}
.tst-ph img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%}
.tst-ini{display:grid;place-items:center;width:100%;height:100%;font-family:var(--serif);font-size:3rem;color:#fff;background:linear-gradient(135deg,var(--navy) 0%,var(--navy-l) 55%,var(--plum) 130%)}
.tst-body{display:flex;flex-direction:column;min-width:0;padding-top:.2rem}
.tst-mark{font-size:2.6rem;line-height:.8;color:var(--saffron);margin-bottom:.4rem}
.tst-q{font-family:var(--serif);font-style:italic;color:var(--navy);font-size:1.04rem;line-height:1.65;margin:0;display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden}
.tst-card.open .tst-q{-webkit-line-clamp:unset;display:block}
.tst-more{align-self:flex-start;background:none;border:0;padding:0;margin-top:.4rem;color:var(--plum);font-weight:700;font-size:.85rem;text-decoration:underline;text-underline-offset:3px}
.tst-who{margin-top:1.1rem;padding-top:.9rem;border-top:1px solid var(--line);display:flex;flex-direction:column}
.tst-who strong{color:var(--ink);font-size:1rem}
.tst-who span{color:var(--muted);font-size:.86rem;line-height:1.45}
.tst-nav{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.2rem}
.tst-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--navy);display:grid;place-items:center;font-size:1.1rem;transition:background .15s,color .15s}
.tst-btn:hover:not(:disabled){background:var(--navy);color:#fff}
.tst-btn:disabled{opacity:.4}
.tst-dots{display:flex;gap:.45rem}
.tst-dots button{width:10px;height:10px;border-radius:999px;border:0;background:var(--cream-d);padding:0;transition:width .2s,background .2s}
.tst-dots button[aria-selected="true"]{width:28px;background:var(--plum)}
@media (max-width:991px){.tst-track{grid-auto-columns:100%}}
@media (max-width:575px){.tst-card{grid-template-columns:1fr;gap:1rem;text-align:left}.tst-ph{width:150px;aspect-ratio:1/1;border-radius:50%}}
/* v1.15.5 testimonials: the photo fills the whole left side of the card, shown at its own shape (not cropped) */
.tst-track{align-items:start}
.tst-card{grid-template-columns:260px minmax(0,1fr);padding:0;overflow:hidden;gap:0}
.tst-ph{position:relative;aspect-ratio:auto;border-radius:0;align-self:stretch;height:100%}
.tst-ph::before{content:"";display:block;padding-top:var(--r,125%)}
.tst-ph img,.tst-ph .tst-ini{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%}
.tst-body{padding:1.6rem 1.6rem 1.4rem}
.tst-card.no-ph{grid-template-columns:150px minmax(0,1fr)}
.tst-card.no-ph .tst-ph::before{padding-top:100%}
@media (max-width:575px){
  .tst-card,.tst-card.no-ph{grid-template-columns:1fr;padding:1.4rem}
  .tst-ph{width:150px;height:150px;border-radius:50%;overflow:hidden}
  .tst-ph::before{display:none}
  .tst-body{padding:0}
}
/* v1.15.6 testimonials: every card exactly the same size; the photo fills its side and is cropped to fit */
.tst-track{align-items:stretch}
.tst-card,.tst-card.no-ph{height:440px;grid-template-columns:240px minmax(0,1fr)}
.tst-ph{height:100%}
.tst-ph::before{display:none}
.tst-ph img{object-fit:cover;object-position:center 25%}
.tst-card .tst-ph .tst-ini{font-size:3.4rem}
.tst-body{height:100%;overflow:hidden}
.tst-q{-webkit-line-clamp:7}
.tst-card.open .tst-body{overflow-y:auto}
@media (max-width:575px){.tst-card,.tst-card.no-ph{height:auto;min-height:560px;grid-template-columns:1fr}.tst-ph{height:150px}.tst-body{height:auto;overflow:visible}}
/* v1.15.7 testimonial "Read more" opens in a window */
.tst-modal{border:0;padding:0;border-radius:24px;width:min(860px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:hidden;box-shadow:0 30px 80px -20px rgba(10,31,67,.5)}
.tst-modal::backdrop{background:rgba(10,31,67,.6);backdrop-filter:blur(3px)}
.tst-modal-in{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);max-height:calc(100vh - 48px)}
.tst-modal-ph{position:relative;background:var(--cream-d);min-height:320px}
.tst-modal-ph img,.tst-modal-ph .tst-ini{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%}
.tst-modal-body{padding:2.2rem 2.2rem 1.8rem;overflow-y:auto}
.tst-modal blockquote{font-family:var(--serif);font-style:italic;color:var(--navy);font-size:1.12rem;line-height:1.7;margin:0}
.tst-close{position:absolute;top:12px;right:12px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:var(--navy);display:grid;place-items:center;box-shadow:0 4px 14px -6px rgba(0,0,0,.35)}
.tst-close:hover{background:var(--navy);color:#fff}
@media (max-width:640px){.tst-modal-in{grid-template-columns:1fr}.tst-modal-ph{min-height:0;height:220px}.tst-modal-body{padding:1.4rem}}
@media (max-width:640px){.tst-modal-in{overflow-y:auto}.tst-modal-body{overflow:visible}}
/* v1.15.8 sponsors: full colour, the logo fills the card */
.sponsors{gap:1.2rem}
.sponsor{width:230px;height:130px;padding:.55rem;overflow:hidden;background:#fff}
.sponsor img{width:100%;height:100%;max-height:none;object-fit:contain;filter:none;opacity:1;border-radius:10px}
.sponsor:hover img{transform:scale(1.03)}
.sponsor img{transition:transform .25s}
@media (max-width:575px){.sponsors{gap:.8rem}.sponsor{width:calc(50% - .4rem);height:100px}}
/* v1.15.9 announcement bar links */
.announce a{color:#fff;font-weight:800;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;white-space:nowrap}
.announce a:hover{color:var(--navy)}
/* v1.15.9 news post */
.nb-section{padding-top:clamp(2rem,4vw,3rem)}
.nb{max-width:780px;margin:0 auto}
.nb-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem;color:var(--muted);font-size:.88rem;padding-bottom:1.2rem;margin-bottom:1.6rem;border-bottom:1px solid var(--line)}
.nb-meta i{color:var(--plum);margin-right:.2rem}
.nb-chip{background:var(--plum-l);color:var(--plum);font-weight:700;border-radius:999px;padding:.2rem .75rem;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}
.nb-chip i{margin:0}
.nb-meta .nb-share{margin-left:auto}
.nb-share{display:flex;align-items:center;gap:.4rem}
.nb-share>span{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:.2rem}
.nb-share a,.nb-share button{position:relative;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#fff;display:grid;place-items:center;color:var(--navy);font-size:1rem;text-decoration:none;padding:0}
.nb-share a:hover,.nb-share button:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.nb-share button em{position:absolute;bottom:115%;left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;font-style:normal;font-size:.72rem;white-space:nowrap;padding:.2rem .5rem;border-radius:6px;opacity:0;pointer-events:none;transition:opacity .2s}
.nb-share button.ok em{opacity:1}
.nb-cover{margin:0 0 2rem}
.nb-cover img{display:block;width:100%;border-radius:22px;box-shadow:var(--shadow);max-height:520px;object-fit:cover}
.nb-lead{font-family:var(--serif);font-size:clamp(1.25rem,2.4vw,1.5rem);line-height:1.5;color:var(--navy);border-left:4px solid var(--saffron);padding:.2rem 0 .2rem 1.1rem;margin:0 0 2rem}
.nb-body{font-size:1.06rem;line-height:1.85;color:#2B3446}
.nb-body p{margin-bottom:1.15rem}
.nb-body h2,.nb-body h3,.nb-body .nb-h{font-family:var(--serif);color:var(--navy);font-size:1.45rem;font-weight:600;margin:2.2rem 0 .8rem;display:flex;align-items:center;gap:.6rem}
.nb-body .nb-h::before{content:"";width:6px;height:1.3em;border-radius:3px;background:linear-gradient(var(--saffron),var(--plum));flex:0 0 6px}
.nb-body strong{color:var(--ink)}
.nb-body a:not(.btn){color:var(--plum);font-weight:600}
.nb-body ul,.nb-body ol{list-style:none;padding:0;margin:0 0 1.4rem;display:grid;gap:.6rem}
.nb-body li{position:relative;padding:.75rem 1rem .75rem 3.1rem;background:var(--cream);border-radius:14px;line-height:1.6}
.nb-body ol{counter-reset:nb}
.nb-body ol>li{counter-increment:nb}
.nb-body ol>li::before{content:counter(nb);position:absolute;left:.8rem;top:.72rem;width:1.65rem;height:1.65rem;border-radius:50%;background:var(--plum);color:#fff;font-weight:700;font-size:.85rem;display:grid;place-items:center}
.nb-body ul>li::before{content:"\F26A";font-family:"bootstrap-icons";position:absolute;left:.95rem;top:.72rem;color:var(--leaf);font-size:1.15rem}
.nb-body blockquote{background:var(--saffron-l);border-left:4px solid var(--saffron);border-radius:0 14px 14px 0;padding:1rem 1.2rem;font-style:normal;color:var(--ink)}
.nb-cta{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1rem;background:linear-gradient(135deg,var(--navy),var(--navy-l));border-radius:20px;padding:1.3rem 1.5rem;margin:1.6rem 0 2rem}
.nb-cta .btn{box-shadow:0 10px 24px -12px rgba(0,0,0,.6)}
.nb-cta .nb-url{color:rgba(255,255,255,.75);font-size:.88rem;word-break:break-all}
.nb-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:3rem;padding-top:1.4rem;border-top:1px solid var(--line)}
@media (max-width:575px){.nb-meta .nb-share{margin-left:0;width:100%}.nb-body li{padding-left:2.8rem}}
/* Quill 2 writes bullet lists as <ol><li data-list="bullet"> */
.nb-body ol>li[data-list="bullet"]{counter-increment:none}
.nb-body ol>li[data-list="bullet"]::before{content:"\F26A";font-family:"bootstrap-icons";background:none;color:var(--leaf);font-size:1.15rem;font-weight:400;width:auto;height:auto;left:.95rem;display:block}
.nb-body li .ql-ui{display:none}
/* v1.16.3 announcement bar: up to three lines */
.announce .container{position:relative}
.announce-line{line-height:1.45}
.announce-stack .announce-line+.announce-line{margin-top:.2rem;padding-top:.2rem;border-top:1px solid rgba(255,255,255,.3)}
.announce-rotate .container{display:grid;align-items:center;padding-right:2.6rem;padding-left:2.6rem}
.announce-rotate .announce-line{grid-area:1/1;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .45s,transform .45s,visibility .45s}
.announce-rotate .announce-line.on{opacity:1;visibility:visible;transform:none}
.announce-dots{position:absolute;right:max(16px,env(safe-area-inset-right,0px));top:50%;transform:translateY(-50%);display:flex;gap:4px}
.announce-dots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.45)}
.announce-dots i.on{background:#fff}
@media (prefers-reduced-motion:reduce){.announce-rotate .announce-line{transition:none}}
/* v1.16.4 mobile fixes */
html,body{overflow-x:clip}
@supports not (overflow:clip){body{overflow-x:hidden}}
@media (max-width:575.98px){.row.g-5{--bs-gutter-x:1.5rem}.announce{font-size:.8rem;padding:.35rem 0}.announce-rotate .container{padding-left:1.6rem;padding-right:2.4rem}}
@media (max-width:991.98px){
  /* the blur on the scrolled header made the menu panel open inside the header strip */
  .site-header.scrolled,.nav-open .site-header{backdrop-filter:none;-webkit-backdrop-filter:none}
  .main-nav{bottom:auto;height:calc(100vh - var(--top-h,var(--header-h)));height:calc(100dvh - var(--top-h,var(--header-h)));overflow-y:auto;overscroll-behavior:contain;z-index:1040;box-shadow:0 20px 40px -20px rgba(15,44,92,.35)}
  .nav-close{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;background:var(--cream);border:0;border-radius:12px;padding:.7rem 1rem;font-weight:700;color:var(--navy);font-size:1rem}
  .nav-close i{font-size:1.4rem}
  .nav-open .nav-toggle{background:var(--cream);border-radius:50%}
}
@media (min-width:992px){.nav-close{display:none}}
.visit-count{display:inline-flex;align-items:center;gap:.35rem}
/* v1.18 Who we are / What we do / Vision & Mission / Get involved */
.vm-card{position:relative;overflow:hidden;padding:2rem;border-radius:22px}
.vm-card .ic{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;font-size:1.6rem;margin-bottom:1rem}
.vm-vision .ic{background:var(--navy);color:#fff}
.vm-mission .ic{background:var(--plum);color:#fff}
.vm-card::after{content:"";position:absolute;right:-40px;top:-40px;width:140px;height:140px;border-radius:50%;opacity:.08}
.vm-vision::after{background:var(--navy)}.vm-mission::after{background:var(--plum)}
.vm-label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--saffron);margin-bottom:.2rem}
.vm-card h3{font-size:1.5rem;margin-bottom:.7rem}
.vm-card .rich{color:#3A4456}
.vm-card .rich ul,.vm-card .rich ol{padding-left:0;list-style:none;margin:0;display:grid;gap:.45rem}
.vm-card .rich li{position:relative;padding-left:1.6rem}
.vm-card .rich li::before{content:"\F26A";font-family:"bootstrap-icons";position:absolute;left:0;top:0;color:var(--leaf)}
.vm-card .rich li .ql-ui{display:none}
.wa-intro{font-size:1.08rem}
.wa-facts{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.4rem}
.wa-facts span{display:inline-flex;align-items:center;gap:.4rem;background:var(--cream);border:1px solid var(--line);border-radius:999px;padding:.35rem .9rem;font-size:.85rem;font-weight:600;color:var(--navy)}
.wa-facts i{color:var(--plum)}
.wa-photo{width:100%;max-width:460px;border-radius:26px;box-shadow:var(--shadow);aspect-ratio:4/3;object-fit:cover}
.wa-seal{display:inline-grid;place-items:center;width:min(340px,80vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#fff 55%,var(--cream) 56%,var(--cream) 70%,transparent 71%);box-shadow:inset 0 0 0 1px var(--line)}
.wa-seal img{width:72%}
.sc-intro{max-width:760px}
.sc-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:22px;padding:1.8rem 1.6rem 1.6rem;transition:transform .2s,box-shadow .2s;overflow:hidden}
.sc-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.sc-card::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--c)}
.sc-saffron{--c:var(--saffron);--cl:var(--saffron-l)}.sc-plum{--c:var(--plum);--cl:var(--plum-l)}.sc-navy{--c:var(--navy);--cl:#E3EAF6}.sc-green{--c:var(--green);--cl:#E7F0E2}
.sc-ic{width:54px;height:54px;border-radius:16px;background:var(--cl);color:var(--c);display:grid;place-items:center;font-size:1.5rem;margin-bottom:1rem}
.sc-num{position:absolute;right:1.2rem;top:1rem;font-family:var(--serif);font-size:2.2rem;color:var(--cl);font-weight:700;line-height:1}
.sc-card h3{font-size:1.25rem;margin-bottom:.6rem}
.sc-card .rich{color:#4A5568;font-size:.95rem;line-height:1.7}
.sc-card .rich p:last-child{margin-bottom:0}
.page-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.2rem;background:linear-gradient(120deg,var(--navy),var(--navy-l) 60%,var(--plum));color:#fff;border-radius:26px;padding:clamp(1.6rem,4vw,2.6rem)}
.page-cta h2{color:#fff;margin-bottom:.3rem;font-size:clamp(1.5rem,3vw,2rem)}
.page-cta p{color:rgba(255,255,255,.85);margin:0;max-width:520px}
.page-cta-btns{display:flex;flex-wrap:wrap;gap:.6rem}
.join-band{background:linear-gradient(120deg,var(--navy-d),var(--navy) 55%,#2A1F5C);color:#fff}
.join-band h2{color:#fff}.join-band .text-muted{color:rgba(255,255,255,.75)!important}.join-band .eyebrow{color:#FFD7A6}

/* v1.22 Community profiles: directory + editor */
.pf-preview-bar{background:#FFF1DE;color:#7A4A06;text-align:center;font-size:.85rem;padding:.45rem .8rem;border-bottom:1px solid #F5D9B0}
.pfd-bar{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.6rem}
.pfd-tabs{display:flex;flex-wrap:wrap;gap:.4rem}
.pfd-tabs a{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);background:#fff;border-radius:999px;padding:.4rem .95rem;font-weight:600;font-size:.88rem;color:var(--ink);text-decoration:none}
.pfd-tabs a span{background:var(--cream);border-radius:999px;padding:0 .5rem;font-size:.75rem;color:var(--muted)}
.pfd-tabs a.on{background:var(--navy);border-color:var(--navy);color:#fff}.pfd-tabs a.on span{background:rgba(255,255,255,.18);color:#fff}
.pfd-search{position:relative;flex:1 1 280px;max-width:420px}.pfd-search i{position:absolute;left:.95rem;top:50%;transform:translateY(-50%);color:var(--muted)}
.pfd-search input{width:100%;border:1px solid var(--line);border-radius:999px;padding:.6rem 1rem .6rem 2.4rem;font-size:.95rem;background:#fff}
.pfd-card{display:flex;flex-direction:column;gap:.7rem;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.3rem 1.3rem 1.1rem;text-decoration:none;color:var(--ink);transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}
.pfd-card:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--navy),var(--plum) 60%,var(--saffron))}
.pfd-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(15,44,92,.12);color:var(--ink)}
.pfd-head{display:flex;gap:.9rem;align-items:center}
.pfd-ph{width:68px;height:80px;flex:0 0 68px;border-radius:12px;overflow:hidden;background:linear-gradient(160deg,#E9EEF7,#D5DDEC);display:grid;place-items:center}
.pfd-ph img{width:100%;height:100%;object-fit:cover}.pfd-ph span{font-family:var(--serif);color:#fff;font-size:1.5rem;font-weight:600}
.pfd-type{font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--plum)}
.pfd-card h3{font-size:1.15rem;margin:.1rem 0 .1rem}.pfd-pos{font-size:.88rem;color:var(--muted);line-height:1.35}
.pfd-org{font-size:.88rem;color:#3a4458}.pfd-org i{color:var(--plum)}
.pfd-left{font-size:.8rem;color:#33476B;background:#EEF2F8;border-radius:8px;padding:.2rem .6rem;align-self:flex-start}
.pfd-tags{display:flex;flex-wrap:wrap;gap:.35rem}.pfd-tags span{background:var(--cream);border:1px solid var(--line);border-radius:999px;padding:.1rem .6rem;font-size:.75rem;color:#3a4458}
.pfd-go{margin-top:auto;font-weight:700;font-size:.85rem;color:var(--plum)}
.pfd-cta{display:flex;flex-wrap:wrap;gap:1.2rem;align-items:center;background:var(--cream);border:1px solid var(--line);border-radius:20px;padding:1.6rem 1.8rem;margin-top:2.6rem}
.pfd-cta h2{font-size:1.45rem;margin:0 0 .25rem}.pfd-cta p{margin:0;color:var(--muted)}
.pfd-cta-ic{width:58px;height:58px;border-radius:16px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:1.6rem}
.min-w-0{min-width:0}
.pfe-wrap{max-width:900px;margin:0 auto}
.pfe-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.5rem 1.6rem;margin-bottom:1.3rem}
.pfe-card h2{font-size:1.25rem;display:flex;align-items:center;gap:.5rem;margin-bottom:.2rem}.pfe-card h2 i{color:var(--plum);font-size:1.05rem}
.pfe-card .sub{color:var(--muted);font-size:.88rem;margin-bottom:1rem}
.pfe-status{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;justify-content:space-between;border-radius:16px;padding:1rem 1.2rem;margin-bottom:1.3rem;border:1px solid var(--line);background:#fff}
.pfe-status.live{background:#EEF7EA;border-color:#CFE5C5}.pfe-status.pending{background:#FFF6E8;border-color:#F3DDB6}.pfe-status.back{background:#FDF0F0;border-color:#F2CFCF}
.pfe-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.pfe-type{border:2px solid var(--line);border-radius:16px;padding:1.2rem;background:#fff;text-align:left;cursor:pointer;width:100%}
.pfe-type:hover{border-color:var(--plum)}.pfe-type i{font-size:1.6rem;color:var(--plum)}.pfe-type b{display:block;font-size:1.1rem;margin:.4rem 0 .1rem;color:var(--navy)}.pfe-type span{color:var(--muted);font-size:.88rem}
.rep-row{display:grid;gap:.5rem;align-items:start;background:#FBFAF7;border:1px solid var(--line);border-radius:12px;padding:.7rem;margin-bottom:.6rem;position:relative}
.rep-row .rep-del{position:absolute;top:.4rem;right:.4rem;border:0;background:none;color:#B42318;font-size:1.05rem}
.rep-row .form-control{font-size:.9rem}
.rep-cols-3{grid-template-columns:2fr 2fr 1fr 32px}.rep-cols-2{grid-template-columns:1fr 1fr 32px}.rep-cols-pub{grid-template-columns:1fr 32px}
.rep-pub-meta{display:grid;grid-template-columns:2fr 1.4fr .6fr 1.2fr;gap:.5rem}
.rep-flags{display:flex;gap:1rem;font-size:.85rem;color:var(--muted)}
@media(max-width:700px){.rep-cols-3,.rep-cols-2{grid-template-columns:1fr}.rep-pub-meta{grid-template-columns:1fr 1fr}.rep-row .rep-del{position:static;justify-self:end}}
.pfe-photo{width:110px;height:130px;border-radius:12px;overflow:hidden;background:linear-gradient(160deg,#E9EEF7,#D5DDEC);display:grid;place-items:center;flex:0 0 110px}
.pfe-photo img{width:100%;height:100%;object-fit:cover}.pfe-photo span{font-family:var(--serif);color:#fff;font-size:2rem}
.pfe-code{font-size:1.6rem;letter-spacing:.5em;text-align:center;font-weight:700;max-width:260px}
.pfe-actions{position:sticky;bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-top:1px solid var(--line);padding:.8rem 0;margin-top:1rem;z-index:5;display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.text-plum{color:var(--plum)!important}
/* v1.32 bank details on the registration form / pass: bold values, copy the account number */
.bank-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:.35rem .9rem}
.bk-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .8rem;padding:.45rem 0;border-bottom:1px dashed var(--line)}.bk-row:last-child{border-bottom:0}
.bk-label{flex:0 0 130px;color:var(--muted);font-size:.85rem}
.bk-value{font-weight:700;color:var(--navy);font-size:1.02rem}
.bk-acc{font-size:1.15rem;letter-spacing:.02em}
.bk-copy{margin-left:.4rem;border:1px solid var(--line);background:var(--cream);border-radius:999px;font-size:.75rem;font-weight:600;padding:.1rem .55rem;color:var(--ink);vertical-align:middle}
@media(max-width:480px){.bk-label{flex-basis:100%}}

/* v1.39 When & Where card */
.eww{display:grid;gap:0;margin:-.3rem 0 .3rem}
.eww-row{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}
.eww .k{font-size:.74rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:700;display:flex;align-items:center;gap:.5rem;margin-bottom:.15rem}
.eww-soon{background:var(--saffron-l);color:#9A5A0B;border-radius:999px;padding:.08rem .55rem;font-size:.7rem;letter-spacing:.02em;text-transform:none}
.eww-cal{flex:0 0 54px;height:auto;align-self:flex-start;padding-bottom:.3rem;border-radius:14px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 6px 16px -10px rgba(163,25,91,.45);display:flex;flex-direction:column;align-items:center;text-align:center}
.eww-cal .m{display:block;width:100%;background:linear-gradient(135deg,var(--plum),var(--plum-d));color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.14em;padding:.22rem 0}
.eww-cal .d{font-family:var(--serif);font-size:1.5rem;font-weight:600;line-height:1.05;color:var(--navy);margin-top:.12rem}
.eww-cal .w{font-size:.62rem;font-weight:700;letter-spacing:.12em;color:var(--muted)}
.eww-pin{flex:0 0 54px;height:54px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 30% 30%,#fff,var(--plum-l));border:1px solid var(--line);color:var(--plum);font-size:1.35rem;box-shadow:0 6px 16px -10px rgba(163,25,91,.45)}
.eww-main{font-weight:700;color:var(--navy);font-size:1.05rem;line-height:1.3}
.eww-sub{color:var(--ink);font-size:.93rem;margin-top:.15rem}
.eww-sub i{color:var(--plum)}
.eww-btns,.eww-maps{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.65rem}
.eww-chip{display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap;font-size:.76rem;font-weight:600;color:var(--navy);background:var(--cream);border:1px solid var(--line);border-radius:999px;padding:.3rem .65rem;text-decoration:none;transition:.15s}
.eww-chip:hover{background:var(--plum-l);border-color:var(--plum-l);color:var(--plum)}
.eww-addr{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.3rem;font-size:.92rem;color:var(--ink);background:var(--cream);border-radius:10px;padding:.4rem .55rem}
.eww-addr span{flex:1 1 auto}
.eww-copy{border:0;background:#fff;border-radius:999px;font-size:.75rem;font-weight:700;color:var(--plum);padding:.2rem .6rem;box-shadow:0 1px 3px rgba(16,24,40,.12)}
.map-btn{flex:1 1 0;min-width:0;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font-weight:700;font-size:.88rem;border-radius:12px;padding:.6rem .5rem;text-decoration:none;transition:transform .12s, box-shadow .12s}
.map-btn b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;font-size:.85rem;font-weight:900}
.map-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px -10px rgba(0,0,0,.4)}
.map-btn.naver{background:#03C75A;color:#fff}.map-btn.naver b{background:#fff;color:#03C75A}
.map-btn.kakao{background:#FEE500;color:#191919}.map-btn.kakao b{background:#191919;color:#FEE500;font-size:.75rem}
.eww-google{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;color:var(--muted);margin-top:.5rem}
/* the rows below use the same icon column as When & Where */
.ev-side .detail-list > li{gap:1rem;padding:1rem 0}
.ev-side .detail-list > li > i{flex:0 0 54px;height:54px;border-radius:50%;display:grid;place-items:center;margin:0;background:var(--plum-l);font-size:1.25rem}
@media (max-width:400px){.eww-pin,.ev-side .detail-list > li > i{flex-basis:46px;height:46px}.eww-cal{flex-basis:46px}.eww-row,.ev-side .detail-list > li{gap:.75rem}.map-btn{font-size:.82rem;gap:.35rem}.map-btn b{width:20px;height:20px}.eww-chip .xs-hide{display:none}}
.eww-addr span[lang=ko]{word-break:keep-all}
.eww-park{display:flex;gap:.6rem;align-items:flex-start;margin-top:.7rem;font-size:.86rem;border-radius:12px;padding:.55rem .7rem;background:#EEF4FF;color:var(--navy)}
.eww-park .pk{flex:0 0 26px;height:26px;border-radius:7px;display:grid;place-items:center;background:#2E5AAC;color:#fff;font-weight:800;font-size:.9rem}
.eww-park.free{background:#ECFDF3}.eww-park.free .pk{background:#17B26A}
.eww-park.none{background:#FEF3F2}.eww-park.none .pk{background:#D92D20}
.eww-park .small{color:var(--muted);margin-top:.1rem}
.fee-note{display:flex;gap:.55rem;align-items:flex-start;margin-top:.6rem;font-size:.84rem;line-height:1.45;color:var(--navy);background:#EEF4FF;border-left:3px solid #2E5AAC;border-radius:8px;padding:.55rem .7rem}
.fee-note i{color:#2E5AAC;margin-top:.1rem;font-size:1rem}
.ev-wide{margin:0 0 2rem;background:#fff;border:1px solid var(--line);border-radius:20px;padding:.6rem;box-shadow:0 22px 44px -28px rgba(15,44,92,.45)}
.ev-wide > a{display:block;position:relative;border-radius:14px;overflow:hidden;background:var(--navy)}
.ev-wide img{display:block;width:100%;height:auto;transition:transform .4s}
.ev-wide > a:hover img{transform:scale(1.015)}
.ev-wide .zoom{position:absolute;right:10px;bottom:10px;background:rgba(15,44,92,.82);color:#fff;border-radius:999px;padding:.3rem .75rem;font-size:.78rem;backdrop-filter:blur(4px)}
.ev-wide figcaption{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.65rem .4rem .2rem;font-size:.85rem;color:var(--muted);font-weight:600}
@media (max-width:575px){.ev-wide .zoom .zt{display:none}.ev-wide .zoom{padding:.35rem .5rem;right:8px;bottom:8px}}
.ev-wide > img{display:block;width:100%;height:auto;border-radius:14px}
.ev-wide{padding:.5rem}
.stall-box{margin-top:.6rem;padding:.75rem .85rem;border-radius:12px;background:#FFF8EE;border:1px dashed #F2C47E}
.evq-stall .evq-help{white-space:pre-line}
.stall-fee{display:block;margin:.4rem 0 .2rem;font-size:.86rem;font-weight:600;border-radius:10px;padding:.4rem .65rem}.stall-fee.free{background:#ECFDF3;color:#067647}.stall-fee.paid{background:#EEF4FF;color:#0F2C5C}.stall-fee .small{font-weight:400;color:var(--muted)}
.stall-price{font-weight:700;color:var(--plum);margin-left:.15rem}

/* v1.42.5 bigger, tap-friendly copy buttons; the button text itself can't be selected (iPhone long-press) and the number selects in one tap */
.bk-copy,.eww-copy,[data-copy]{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}
.bk-copy{display:inline-flex;align-items:center;gap:.35rem;min-height:40px;padding:.45rem 1rem;font-size:.9rem;font-weight:700;border:1.5px solid var(--plum);background:#fff;color:var(--plum);border-radius:999px;margin-left:.5rem;cursor:pointer}
.bk-copy:active,.bk-copy.copied{background:var(--plum);color:#fff}
.bk-num{-webkit-user-select:all;user-select:all}
.eww-copy{min-height:36px;padding:.35rem .85rem;font-size:.85rem}
.bank-card .btn.bk-copy-lg{background:#fff;color:var(--navy);font-weight:700;font-size:.95rem;padding:.55rem 1.1rem}
@media (max-width:575px){.bk-acc{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.bk-copy{margin-left:0;width:100%;justify-content:center;min-height:44px;font-size:1rem}}

/* v1.42.6 When/Where/Fees/Places: icons in the top-right corner, content uses the full width */
.eww-row,.ev-side .detail-list > li{display:block!important;position:relative}
.eww-row::after{content:"";display:table;clear:both}
.eww-cal,.eww-pin{float:right;margin:0 0 .4rem .9rem!important}
.eww-cal{width:52px}
.eww-pin{width:38px!important;height:38px!important;flex:none!important;font-size:1rem!important}
.ev-side .detail-list > li > i{position:absolute;top:.85rem;right:0;width:30px!important;height:30px!important;font-size:.9rem!important;margin:0!important}
.eww-row > .flex-grow-1,.ev-side .detail-list > li > div{display:block}
