/* Tiqqet BI v0.4 — shared typography, task-first discovery. */
/* Event discovery extension: reuse the existing BI palette, fonts and qq assets. */
[hidden]{display:none!important}
.discovery-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:26px 0 12px}
.type-shortcut{background:#fffdf9;color:var(--ink);border:1px solid var(--line);text-align:left;padding:19px;min-width:0}
.type-shortcut strong,.type-shortcut span{display:block}.type-shortcut span{font-size:12px;font-weight:400;line-height:1.7;margin-top:8px}
.type-shortcut[aria-pressed=true]{background:var(--lavender);border-color:var(--violet);color:var(--ink);box-shadow:inset 0 0 0 1px var(--violet)}
.discovery-controls{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:16px}.discovery-controls>div{min-width:0}
.reset-filters{background:transparent;color:var(--muted);text-decoration:underline;margin-left:auto;padding:8px}
.event-labels{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.small-group{background:var(--paper);color:var(--ink)}
.occasion-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:18px}.occasion-links a{font-size:14px;padding:8px 0}
.organizer-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);gap:24px;align-items:start}.organizer-events article{padding:16px 0}.organizer-events h3{margin:12px 0}
.builder-steps{display:flex;gap:12px;list-style:none;padding:0;margin:22px 0 28px;font-size:13px;color:var(--muted)}.builder-steps li{flex:1;border-top:3px solid var(--line);padding-top:10px}.builder-steps [aria-current=step]{border-color:var(--violet);color:#6042c5;font-weight:650}
.template-actions button{font-size:13px;margin:0}.event-builder details{margin-top:20px}.event-builder summary{cursor:pointer;padding:10px 0}.builder-navigation{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between}.builder-navigation button{margin:0}.event-review{border:1px solid var(--line);background:var(--paper);border-radius:16px;padding:22px}.event-review h3{margin-top:12px}.event-review pre{font-size:14px}.event-builder textarea{min-height:150px}.event-builder input[type=checkbox]{min-height:0}.builder-pair{display:block}
@media(max-width:1000px){.discovery-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.organizer-layout{grid-template-columns:1fr}.event-builder{order:-1}}
@media(max-width:700px){.discovery-controls{grid-template-columns:1fr;gap:0}.type-shortcut{padding:14px;font-size:14px}.type-shortcut span{font-size:11px}.builder-steps{gap:8px;font-size:12px}.event-review{padding:16px}.reset-filters{margin-left:0}.discovery-hero .hero-visual{display:none}.discovery-hero{padding-bottom:26px}.hero-links{flex-wrap:wrap}.event-builder h2{font-size:24px}}
:root{--ink:#22203b;--muted:#625c73;--violet:#7152e8;--paper:#f7f4ee;--line:#ded9e8;--lavender:#e5def7}
body{font-family:'Tiqqet Thai','Tiqqet Sans',sans-serif;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit}h1,h2,h3{letter-spacing:normal;overflow-wrap:anywhere;text-wrap:pretty}h1{font-size:clamp(32px,4.6vw,58px);font-weight:650;line-height:1.4}h2{font-size:clamp(23px,2.2vw,30px);font-weight:650;line-height:1.5}h3{font-size:21px;line-height:1.5;font-weight:650}p{line-height:1.8}button,.button{min-height:48px;font-size:15px;font-weight:600;border-radius:12px;transition:background .15s}button:hover,.button:hover{background:#6042c5;color:white}.button.secondary,button.secondary{background:var(--lavender);color:var(--ink)}a,button,input{touch-action:manipulation}img{max-width:100%}header{max-width:1280px;margin:auto;padding:23px 32px;gap:40px}header nav{gap:30px;font-size:15px}header nav a{padding:10px 0;white-space:nowrap}header nav a[aria-current=page]{color:#6042c5;box-shadow:0 2px #7152e8}#account{display:flex;align-items:center;gap:12px;font-size:14px}#account>span{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}main{max-width:1280px;padding:36px 32px 72px}main>*{min-width:0}main:focus{outline:none}footer{max-width:1280px;margin:auto;padding:32px;gap:24px}footer a{padding:10px 0}.eyebrow{font-family:'Tiqqet Sans',sans-serif;font-size:11px;letter-spacing:2px;font-weight:650;color:#6042c5}.skip-link{position:absolute;top:-80px;left:12px;background:var(--ink);color:#fff;padding:12px;z-index:20}.skip-link:focus{top:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.discovery-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center;padding:40px 0 80px}.hero-copy h1{font-size:clamp(40px,4.4vw,62px);line-height:1.42;margin:20px 0 22px;font-weight:650}.hero-copy h1 span{color:var(--violet)}.hero-copy>p{font-size:16px;color:var(--muted);margin-bottom:26px}.event-search{display:flex;gap:8px;background:#fff;border:1px solid #bcb4cd;padding:7px;border-radius:16px;max-width:580px}.event-search input{border:0;background:transparent;padding:10px;min-width:0;flex:1;font-size:16px}.event-search button{flex-shrink:0;margin:0;padding:12px 20px}.hero-links{display:flex;justify-content:space-between;gap:15px;max-width:580px;font-size:13px;margin-top:19px}.hero-links span{color:var(--muted)}.hero-links a{text-decoration:none}.hero-visual{position:relative;padding:24px 40px 30px;min-width:0}.visual-orbit{position:absolute;inset:10% -2% 0;border:1px solid #c8bddf;border-radius:50%;transform:rotate(-20deg)}.brand-admit{position:relative;transform:rotate(-7deg);background:var(--violet);color:white;padding:30px 32px 0;border-radius:22px;box-shadow:16px 18px 0 var(--lavender)}.brand-admit>img{display:block}.admit-label{display:block;font-family:'Tiqqet Sans',sans-serif;font-size:9px;letter-spacing:2px;margin-top:18px}.brand-admit>strong{display:block;font-family:'Tiqqet Sans',sans-serif;font-size:clamp(44px,5vw,68px);line-height:1.02;letter-spacing:-3px;font-weight:800;margin:27px 0 32px}.admit-stub{border-top:2px dashed #ffffff70;padding:22px 0;display:flex;justify-content:space-between;align-items:center;font-family:'Tiqqet Sans',sans-serif;font-size:9px;line-height:1.8;letter-spacing:1.5px}.admit-stub img{filter:brightness(0) invert(1)}.visual-sticker{position:absolute;right:4px;top:6px;width:88px;height:88px;display:grid;place-content:center;background:var(--ink);color:white;border-radius:50%;text-align:center;font-size:14px;transform:rotate(10deg)}.visual-caption{position:relative;display:block;text-align:right;margin-top:33px;font:9px 'Tiqqet Sans',sans-serif;letter-spacing:2px;color:var(--muted)}
.event-discovery{scroll-margin-top:24px}.subhead h2{margin:10px 0 0}.subhead>span{font-size:14px}.catalog-filters{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0 28px}.filter{border:1px solid #d2cadc;border-radius:99px;background:transparent;color:var(--ink);min-height:44px;padding:9px 21px;font-size:14px}.filter.active{background:var(--ink);border-color:var(--ink);color:white}.catalog-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.event-card{padding:0;overflow:hidden;border:1px solid #ded9e8;border-radius:20px;background:#fffdf9;min-width:0}.event-poster{min-height:244px;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:25px;overflow:hidden;isolation:isolate}.event-poster:after{content:'';position:absolute;width:210px;height:210px;border:1px solid currentColor;border-radius:50%;right:-85px;top:28px;opacity:.2;box-shadow:0 0 0 24px #ffffff30,0 0 0 48px #ffffff18;z-index:-1}.event-poster>span{font:9px 'Tiqqet Sans',sans-serif;letter-spacing:2px}.event-poster>strong{font-family:'Tiqqet Sans','Tiqqet Thai',sans-serif;font-size:35px;line-height:1.15;letter-spacing:-1px;font-weight:750;max-width:240px;margin:20px 0;overflow-wrap:anywhere}.event-poster>div{display:flex;align-items:center;justify-content:space-between;font:11px 'Tiqqet Sans',sans-serif;text-transform:uppercase;letter-spacing:1.5px}.poster-0{background:#7152e8;color:white}.poster-0 img{filter:brightness(0) invert(1)}.poster-1{background:#e5def7;color:#22203b}.poster-2{background:#22203b;color:#f7f4ee}.poster-2 img{filter:brightness(0) invert(1)}.event-content{padding:22px;display:flex;flex-direction:column;flex:1}.event-topline{display:flex;justify-content:space-between;gap:8px;align-items:center}.event-date{color:#6042c5;font-size:12px;font-weight:600}.event-content h3{margin:13px 0 9px}.event-venue{font-size:14px;color:var(--muted);margin:0 0 18px}.event-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:15px;margin-top:auto}.event-bottom strong{font-size:17px;font-weight:650}.event-bottom a{font-size:14px;padding:8px 0;min-height:44px;display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:#6042c5}.tag{font-size:12px;line-height:1.7}.test-label{align-self:start;margin:0 0 18px}.sold-out{background:#eee8e3;color:#625c73}.empty{grid-column:1/-1;background:#fffdf9}.brand-invitation{display:flex;justify-content:space-between;align-items:center;gap:28px;background:var(--lavender);padding:38px;margin-top:64px;border-radius:22px}.brand-invitation .tiqqet-quote{margin:10px 0}.brand-invitation .tiqqet-quote p{font-size:clamp(23px,2.6vw,34px);letter-spacing:normal;font-weight:650;line-height:1.65}.brand-invitation>div>p{font-size:14px;color:var(--muted);margin:10px 0 0}.brand-invitation .button{background:var(--ink);color:white;white-space:nowrap}.hero{max-width:850px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.event-detail{grid-template-columns:1.2fr 1fr;align-items:start}.event-detail>.panel:last-child{position:sticky;top:24px}.panel,.ticket{min-width:0}.panel h2,.ticket h2{font-size:25px}pre{line-height:1.9}label{font-size:15px;font-weight:600}input,select,textarea{font-size:16px;min-height:48px}.check input{min-height:auto}#notice:not(:empty){max-width:1216px;margin:16px auto}.demo-notice{background:#e5def7;color:#403061;padding:10px 24px;display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-size:13px}.demo-notice a{font-weight:650}.demo-ticket-mark{margin:20px 0;padding:30px;background:var(--lavender);border-radius:16px;text-align:center}
@media(max-width:1000px){header{gap:22px}header nav{gap:18px}.discovery-hero{gap:20px}.hero-visual{padding:20px 25px}.hero-copy h1{font-size:45px}.catalog-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-invitation{padding:28px}.hero-links span{display:none}}
@media(max-width:700px){header{padding:17px 20px;gap:14px}header>a img{width:108px;height:36px}header nav{order:3;flex-basis:100%;justify-content:space-between;gap:10px;font-size:13px}header nav a{min-height:44px;padding:9px 0}#account{margin-left:auto;font-size:12px}#account>span{max-width:100px}#account .button,#account button{padding:10px 14px;font-size:13px;min-height:44px}main{padding:20px 20px 48px}.discovery-hero{grid-template-columns:1fr;padding:18px 0 42px;gap:24px}.hero-copy h1{font-size:clamp(35px,9.2vw,46px);line-height:1.45;margin:14px 0 18px}.hero-copy>p{font-size:14px;line-height:1.9}.hero-copy>p br{display:none}.event-search input{padding:10px 6px;font-size:16px}.event-search button{padding:11px 13px;font-size:14px}.hero-visual{max-width:330px;width:100%;margin:6px auto 0;padding:16px 32px 24px}.brand-admit{padding:24px 26px 0}.brand-admit>strong{font-size:54px;margin:21px 0}.brand-admit>img{width:110px;height:36px}.admit-stub{padding:16px 0}.visual-sticker{width:73px;height:73px;font-size:12px}.visual-caption{font-size:8px}.catalog-cards{grid-template-columns:1fr;gap:22px}.event-poster{min-height:245px}.event-poster>strong{font-size:36px;max-width:250px}.subhead{flex-direction:row;align-items:end;gap:12px}.subhead>span{white-space:nowrap;font-size:12px}.subhead h2{font-size:23px}.subhead .eyebrow{font-size:9px;letter-spacing:1.3px}.catalog-filters{gap:7px;margin:21px 0}.filter{font-size:13px;padding:9px 15px}.brand-invitation{flex-direction:column;align-items:start;padding:26px 22px;margin-top:38px}.brand-invitation .tiqqet-quote p{font-size:25px}.brand-invitation .eyebrow{font-size:9px}.two,.event-detail{grid-template-columns:1fr}.event-detail>.panel:last-child{position:static}.panel,.ticket{padding:22px}.hero h1{font-size:32px;line-height:1.5}.panel h2,.ticket h2{font-size:23px}footer{padding:25px 20px;gap:15px;font-size:12px}footer span:first-of-type{flex-basis:55%}#notice:not(:empty){margin:12px 20px}.demo-notice{padding:10px 18px;font-size:12px;gap:6px;justify-content:start}.table-wrap{max-width:100%}}
@media(max-width:360px){header,main{padding-left:16px;padding-right:16px}.filter{padding:9px 12px}.subhead{align-items:start;flex-direction:column}header nav{gap:8px;font-size:12px}.event-search button{padding:11px 10px}.event-content{padding:19px}.event-bottom{gap:8px}.hero-visual{max-width:285px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.hero-visual{overflow:clip}.event-poster>strong{font-size:30px;letter-spacing:-.5px}@media(max-width:360px){.event-poster>strong{font-size:28px}}
/* Social authentication: one full-width action per provider on every viewport. */
.social-buttons{display:grid;gap:12px;margin:24px 0 12px;min-width:0}
.social-buttons form{margin:0;display:block}
.social-button{width:100%;min-height:52px;display:flex;align-items:center;justify-content:center;gap:14px;background:#fff;color:#252239;border:1px solid #d3cede;font-size:1rem;line-height:1.5;padding:12px 16px;border-radius:14px}
.social-button:hover{background:#f2eefb;border-color:#7450db}
.social-button:focus-visible{outline:3px solid #7450db;outline-offset:3px}
.social-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;font-family:Arial,sans-serif;font-weight:700;font-size:22px;flex-shrink:0}
.social-facebook .social-icon{color:#1877f2}.social-line .social-icon{color:#008a40;font-size:12px}.social-google .social-icon{color:#4285f4}
.social-pending{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 16px;color:#6d657a;background:#f4f1f7;border-radius:12px}
.social-pending small{font-size:.8rem}.social-help{font-size:.85rem;line-height:1.65}
.auth-divider{display:flex;align-items:center;gap:12px;color:#756c83;font-size:.85rem;margin:26px 0}
.auth-divider:before,.auth-divider:after{content:'';flex:1;height:1px;background:#ded8e5}

#account{display:flex;align-items:center;gap:12px;min-width:0}.member-profile{display:flex;align-items:center;gap:10px;min-width:0}.member-avatar{width:40px;height:40px;flex:none;border-radius:50%;background:#eee8ff;color:#5538bd;display:grid;place-items:center;overflow:hidden;font-weight:700}.member-avatar img{width:100%;height:100%;object-fit:cover}.member-details{display:flex;flex-direction:column;min-width:0;max-width:220px;line-height:1.4}.member-details strong,.member-details small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-details small{font-size:12px}@media(max-width:700px){.member-details{max-width:140px}#account{gap:8px}#account button{padding:8px 12px}.member-avatar{width:32px;height:32px}}

/* Photography: keep Tiqqet cream, violet, typography and qq as the frame. */
.discovery-hero{grid-template-columns:1fr 1fr;gap:44px;padding:18px 0 44px}
.photo-hero{min-width:0;background:var(--lavender);border-radius:26px;padding:18px;transform:rotate(1deg)}
.photo-hero-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 2px 14px}.photo-hero-heading .eyebrow{font-size:9px;letter-spacing:1.4px}.photo-hero-heading img{flex:none}
.photo-collage{display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:175px 175px;gap:10px}.photo-scene{position:relative;isolation:isolate;overflow:hidden;border-radius:16px;background:var(--ink);border:0;padding:0;text-align:left;min-width:0;margin:0}.scene-main{grid-row:span 2}.photo-scene img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0}.photo-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,#22203be8);z-index:1}.photo-scene>span{position:absolute;bottom:16px;left:16px;right:12px;z-index:2;color:white;font-size:12px;font-weight:400;line-height:1.8}.photo-scene b{display:block;font-size:16px;font-weight:600}.photo-scene:hover{outline:2px solid var(--violet);outline-offset:2px}.photo-caption{font-size:11px;color:var(--muted);margin:12px 2px 0;text-align:right}
.discovery-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.type-shortcut{padding:0;overflow:hidden;border-radius:18px;background:#fffdf9}.type-shortcut:hover{background:var(--lavender);color:var(--ink)}.type-shortcut .category-photo{position:relative;aspect-ratio:2/1;overflow:hidden;margin:0;background:var(--lavender)}.category-photo>img:first-child{display:block;width:100%;height:100%;object-fit:cover}.category-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(140deg,transparent 50%,#22203b70)}.category-photo .category-qq{position:absolute;bottom:12px;right:12px;filter:brightness(0) invert(1);z-index:1;width:32px;height:26px}.type-shortcut .category-caption{position:relative;margin:0;padding:15px 42px 16px 16px}.category-caption strong{font-size:16px;line-height:1.5}.category-caption>span{font-size:12px;color:var(--muted);margin-top:6px}.category-caption>b{position:absolute;right:16px;top:16px;color:var(--violet);font-size:19px}.type-shortcut[aria-pressed=true] .category-caption{background:var(--lavender)}.category-photo-note{font-size:12px;color:var(--muted);margin:12px 0 0}
.event-photo{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--lavender)}.event-photo>img{display:block;width:100%;height:100%;object-fit:cover}.photo-demo-label{position:absolute;bottom:10px;right:10px;border-radius:20px;background:#22203bd9;color:white;padding:4px 10px;font-size:10px}.photo-unavailable{background:var(--lavender)}.photo-fallback{display:grid;place-content:center;min-height:180px;color:var(--muted);font-size:14px}.photo-credits{font-size:12px;color:var(--muted);text-align:right}.detail-cover{margin:0 0 28px;overflow:hidden;border-radius:20px;background:var(--lavender)}.detail-cover>img{display:block;max-height:460px;width:100%;object-fit:cover}.detail-cover figcaption{font-size:12px;padding:10px 16px;color:var(--muted)}
@media(max-width:1000px){.discovery-hero{gap:24px}.photo-collage{grid-template-rows:150px 150px}.photo-scene b{font-size:14px}.photo-hero-heading .eyebrow{font-size:8px}.discovery-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.discovery-hero{grid-template-columns:1fr;gap:22px;padding:8px 0 32px}.photo-hero{padding:12px;transform:none;border-radius:20px}.photo-collage{grid-template-rows:105px 105px;gap:8px}.photo-scene{border-radius:12px}.photo-scene>span{left:10px;bottom:10px;right:8px;font-size:10px}.photo-scene b{font-size:13px}.photo-hero-heading{padding-bottom:9px}.photo-caption{font-size:10px;margin-top:9px}.discovery-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.type-shortcut .category-photo{aspect-ratio:1.5/1}.type-shortcut .category-caption{padding:12px 26px 12px 12px}.category-caption strong{font-size:14px}.category-caption>span{display:none!important}.category-caption>b{right:10px;top:11px;font-size:16px}.category-photo .category-qq{width:24px;height:20px;bottom:8px;right:8px}.category-photo-note{font-size:11px}.detail-cover>img{max-height:260px}.hero-copy>p{margin-bottom:20px}}

/* Organizer cover crop: exactly the event-card aspect ratio (8:5). */
.cover-editor{margin:22px 0;padding:18px;border:1px dashed #bcb4cd;border-radius:16px;background:var(--paper)}
.cover-editor input[type=file]{padding:10px;max-width:100%;font-size:13px}.cover-editor input[type=range]{padding:0;accent-color:var(--violet);min-height:36px;border:0;background:transparent}
.crop-canvas{display:block;width:100%;height:auto;aspect-ratio:8/5;background:var(--lavender);border-radius:12px;touch-action:none;cursor:grab}.crop-canvas:active{cursor:grabbing}.crop-position{display:grid;grid-template-columns:1fr 1fr;gap:16px}.crop-position>div{min-width:0}.crop-zoom-value{float:right;font-weight:400}.crop-workspace .actions button{margin:6px 0;font-size:13px;padding:10px 12px}.crop-status:empty{display:none}
.cover-dialog{width:min(740px,95vw);max-height:92vh;overflow:auto;border:1px solid var(--line);border-radius:22px;padding:24px;background:var(--paper);color:var(--ink)}.cover-dialog::backdrop{background:#22203b99}.cover-dialog .subhead h2{font-size:22px;margin:0}.cover-dialog .subhead{align-items:start}.cover-dialog .cover-close{flex:none}.cover-current{max-width:240px;margin:18px 0}.cover-current img{display:block;width:100%;height:auto;border-radius:12px}.detail-cover>img{height:auto;max-height:none;object-fit:contain}.cover-dialog .cover-editor{background:#fff}.cover-dialog .actions{align-items:stretch}
@media(max-width:700px){.cover-editor{padding:12px}.cover-dialog{padding:18px}.cover-dialog .subhead{flex-direction:column}.cover-dialog .subhead h2{font-size:20px}.crop-position{gap:12px}.crop-position label{font-size:13px}.detail-cover>img{max-height:none}}

.review-cover{width:100%;height:auto;aspect-ratio:8/5;border-radius:12px;display:block;margin-bottom:16px}

.organizer-fee-dialog{width:min(540px,calc(100vw - 32px));max-height:85dvh;overflow:auto;border:1px solid #ddd7eb;border-radius:24px}.organizer-fee-dialog::backdrop{background:#221c3c88}.fee-actions{display:flex;flex-wrap:wrap;gap:12px}.fee-actions button{white-space:normal}
.organizer-onboarding{margin:28px 0 32px}.packages-heading{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:32px}.packages-heading h2{font-size:clamp(30px,3.5vw,46px);line-height:1.3;letter-spacing:-.025em;margin:12px 0 16px}.packages-heading p{color:var(--muted,#716b80);line-height:1.8;margin:0}.packages-heading>.button{flex-shrink:0}.package-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.package-card{display:flex;flex-direction:column;background:#fffdf9;border:1px solid #ded8e9;border-radius:24px;padding:26px 22px;min-width:0}.package-card.package-free{background:#eeE8ff;border-color:#c9baf8}.package-kicker{font-size:12px;font-weight:600;color:#6549b7;min-height:24px}.package-card h3{font-size:30px;line-height:1.2;letter-spacing:-.035em;margin:16px 0 8px}.package-card .package-subtitle{font-size:14px;color:#716b80;margin:0 0 26px;line-height:1.6}.package-price{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;min-height:67px}.package-price strong{font-size:40px;line-height:1.3;letter-spacing:-.05em;font-weight:650}.package-price>span{font-size:12px;color:#716b80;white-space:nowrap}.package-card .package-capacity{display:flex;align-items:center;gap:7px;font-size:15px;font-weight:600;border-top:1px solid #ded8e9;padding-top:20px;margin:8px 0 12px;flex-wrap:wrap}.package-capacity>span:first-child{color:#7152e8}.package-capacity>span:last-child{font-size:13px;font-weight:400}.package-card .package-example{font-size:13px;color:#716b80;line-height:1.8;min-height:48px;margin:0 0 24px}.package-card .package-foot{font-size:12px;margin:auto 0 0;line-height:1.6;color:#544767}.package-note{display:flex;align-items:flex-start;gap:12px;margin-top:22px}.package-check{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e7defa;color:#6549b7;flex-shrink:0}.package-note p{margin:0;font-size:14px;line-height:1.8}.package-note strong{margin-right:8px}.package-inclusions{display:flex;flex-wrap:wrap;gap:10px 24px;padding-top:22px;margin-top:22px;border-top:1px solid #ded8e9;font-size:13px;color:#544767}.package-inclusions>span:first-child{font-weight:600;color:#211c35}.package-fineprint{font-size:12px!important;color:#716b80;line-height:1.9!important;margin-top:20px!important}.organizer-start{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;padding:32px!important}.organizer-start h2{font-size:25px;margin:12px 0}.organizer-start p{font-size:14px;color:#716b80;line-height:1.8}.organizer-start form{margin:0}.organizer-start form button{margin-top:8px}.organizer-start input{width:100%;box-sizing:border-box}
@media(max-width:1100px){.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.package-card .package-example{min-height:0}.package-card{padding:24px}.package-price strong{font-size:42px}}
@media(max-width:600px){.packages-heading{display:block}.packages-heading>.button{display:inline-flex;margin-top:24px}.package-grid{grid-template-columns:1fr;gap:14px}.package-card{padding:24px}.package-card .package-subtitle{margin-bottom:16px}.package-card h3{margin-top:10px}.package-card .package-example{margin-bottom:18px}.organizer-start{grid-template-columns:1fr;gap:18px;padding:24px!important}.package-inclusions{gap:12px}.package-inclusions>span:first-child{width:100%}.package-note p{font-size:13px}}
.wedding-tools{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.wedding-dialog{width:min(650px,calc(100vw - 32px));max-height:90dvh;overflow:auto;border:1px solid #ddd5eb;border-radius:24px;padding:24px;color:#211c35}.wedding-dialog::backdrop{background:#211c3577}.wedding-dialog ul{max-height:180px;overflow:auto;overflow-wrap:anywhere}.wedding-card{padding:40px 28px;background:linear-gradient(145deg,#f8f1e7,#f1eafd);border:1px solid #d5c4e2;border-radius:24px;text-align:center;margin:16px 0 24px}.wedding-card h2{font-size:clamp(26px,4vw,42px);line-height:1.35;margin:22px 0}.wedding-card hr{border:0;border-top:1px solid #cdbdd9;width:70px;margin:28px auto}.wedding-card .eyebrow{font-size:10px}.wedding-rings{font-family:serif;font-size:60px;color:#876198}.wedding-message{white-space:pre-line;line-height:1.9;overflow-wrap:anywhere}.wedding-signature{display:block;font-size:10px;letter-spacing:.12em;margin-top:30px;color:#71526e}.wedding-rsvp{max-width:720px;margin:auto}.wedding-tools input[type=file]{max-width:100%}.wedding-tools ul{overflow-wrap:anywhere}.wedding-tools textarea{width:100%;box-sizing:border-box}.wedding-date{color:#71526e;font-weight:600}@media(max-width:720px){.wedding-tools{grid-template-columns:1fr}.wedding-card{padding:28px 18px}.wedding-dialog{padding:16px}.wedding-rsvp button{margin-bottom:12px}}

/* Keep faces in the shared wide category frame. */
.category-photo>img:first-child{object-position:50% 32%}


/* Equal cover geometry for uploaded photos and generated text posters. */
.catalog-cards .event-card{container-type:inline-size}
.catalog-cards .event-poster,.catalog-cards .event-photo{height:auto;min-height:0;aspect-ratio:8/5;flex:none;width:100%}
.catalog-cards .event-poster{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:10px;padding:clamp(16px,5cqw,25px)}
.catalog-cards .event-poster>strong{align-self:center;min-height:0;max-width:100%;margin:0;font-size:clamp(21px,7.5cqw,32px);line-height:1.22;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.catalog-cards .event-poster>span{font-size:8px;letter-spacing:1.7px}
.catalog-cards .event-poster>div img{width:40px;height:32px}
.catalog-cards .event-labels{min-height:32px;display:flex;align-items:flex-start;flex-wrap:wrap;gap:6px}
.catalog-cards .event-content h3{overflow-wrap:anywhere}

.catalog-group-nav{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 30px}.catalog-group-nav a{padding:12px 20px;border-radius:99px;background:#e5def7;color:#403061;text-decoration:none;font-weight:600}.catalog-group{margin:0 0 64px}.catalog-group>.event-search{max-width:700px;margin:24px 0 12px}.catalog-group>.reset-filters{margin:0 0 20px}.catalog-loading{text-align:center;padding:24px 0;color:var(--muted)}.catalog-loading p:empty{display:none}.past-feed{grid-template-columns:1fr;max-width:880px;margin:auto}.past-feed .event-card{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);container-type:normal}.past-feed .event-poster{font-size:14px;padding:20px;align-self:start}.past-feed .event-poster>strong{font-size:24px}.past-feed .event-content{min-width:0}.past-feed .event-bottom{margin-top:18px}#past-events{padding-top:32px;border-top:1px solid var(--line)}@media(max-width:700px){.past-feed .event-card{display:flex;container-type:inline-size}.past-feed .event-poster>strong{font-size:clamp(21px,7.5cqw,32px)}.catalog-group-nav{gap:8px}.catalog-group-nav a{font-size:14px;padding:10px 15px}}
/* A single-column archive reads like a photo feed at every screen size. */
.past-feed{max-width:760px}.past-feed .event-card{display:flex;container-type:inline-size}.past-feed .event-poster{padding:clamp(16px,5cqw,25px)}.past-feed .event-poster>strong{font-size:clamp(21px,7.5cqw,32px)}

.event-hero-banner{position:relative;isolation:isolate;overflow:hidden;background:#22203b;border-radius:20px;margin:24px 0 32px;padding:24px}.event-hero-backdrop{position:absolute;inset:-10%;width:120%;height:120%;object-fit:cover;filter:blur(32px) brightness(.45);z-index:-1;pointer-events:none}.event-hero-art{position:relative;max-width:1140px;margin:auto;display:flex;justify-content:center;min-height:160px}.event-hero-art>img{display:block;width:100%;height:auto;max-height:460px;object-fit:contain}.event-hero-empty{display:flex;gap:26px;justify-content:center;align-items:center;min-height:220px;color:#e5def7;font-size:13px;letter-spacing:2px;flex-wrap:wrap}.event-hero-empty img{filter:brightness(0) invert(1)}.event-summary{max-width:100%;padding:0 0 24px}.event-summary h1{font-size:clamp(30px,4vw,48px);line-height:1.4;letter-spacing:-.5px;overflow-wrap:anywhere}.event-subtitle{font-size:20px!important;color:#6042c5}.event-section-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.event-section-nav button{background:#eeebfa;color:#5538bd;font-size:14px;padding:10px 18px}.event-information-stack{display:flex;flex-direction:column;gap:20px;min-width:0}.event-information,.event-booking{scroll-margin-top:24px}.event-information h3{font-size:20px;overflow-wrap:anywhere}.event-prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.event-booking{height:fit-content}.presentation-dialog{width:min(760px,calc(100vw - 32px));max-height:90dvh;overflow:auto;border:1px solid #d5cde7;background:#fffdf9;color:#22203b;border-radius:24px;padding:28px}.presentation-dialog::backdrop{background:#22203b88}.presentation-dialog input,.presentation-dialog textarea{width:100%;box-sizing:border-box}.presentation-dialog input[type=checkbox]{width:auto}.banner-preview{margin:16px 0;background:#22203b;border-radius:12px;overflow:hidden}.banner-preview img{width:100%;max-height:300px;object-fit:contain;display:block}.presentation-status{color:#6042c5}.event-detail{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr)}@media(max-width:700px){.event-hero-banner{margin:16px -20px 24px;border-radius:0;padding:12px 0}.event-hero-art{min-height:0}.event-hero-art>img{max-height:320px}.event-summary h1{font-size:30px}.event-detail{grid-template-columns:1fr}.event-booking{position:static!important}.presentation-dialog{padding:20px}.event-section-nav button{font-size:13px;padding:10px 14px}}
@media(max-width:700px){.event-hero-banner{margin:16px 0 24px;border-radius:12px}}
/* Keep the lead couple and celebration gestures within the category crop. */
[data-category="wedding"] .category-photo>img:first-child,[data-category="party"] .category-photo>img:first-child{object-position:50% 20%}
.member-connections{margin-block:2rem}.connect-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem}.connect-person{overflow-wrap:anywhere}.connect-person h3{margin-block:.6rem}.connect-avatar{display:inline-grid;place-items:center;background:#ece5ff;color:#6543ca;border-radius:50%;width:48px;height:48px;font-weight:700}.connect-links{display:flex;flex-wrap:wrap;gap:1rem}.connect-stat{font-weight:600;color:#6543ca}.connect-settings fieldset{border:1px solid #ded7ea;border-radius:12px;padding:1rem;margin:1rem 0;min-width:0}.connect-settings legend{font-weight:600}.connect-settings .check{align-items:flex-start;line-height:1.7}.connect-attendance{padding-block:1rem;border-bottom:1px solid #ded7ea}.connect-settings input:not([type=checkbox]),.connect-settings textarea{width:100%;box-sizing:border-box}
.hero-copy>p.hero-purpose{max-width:34em;padding-inline-start:18px;border-inline-start:3px solid var(--violet);font-size:15px;line-height:1.9;margin-block:24px}.hero-purpose strong{color:var(--ink,#24213b);font-weight:600}
.hero-copy .hero-purpose strong{display:block;margin-bottom:6px}.hero-copy .hero-purpose br{display:none}
.event-hashtags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 12px;min-width:0;width:100%}.event-hashtag{display:inline-block;max-width:100%;overflow-wrap:anywhere;border-radius:9px;padding:5px 9px;font-size:12px;line-height:1.6;font-weight:600}.category-hashtag{border:1px solid currentColor}.custom-hashtag{background:#f1eef6;color:#51465f}.hashtag-more{background:#f1eef6;color:#51465f}.hashtag-concert{background:#eee6ff;color:#57319d}.hashtag-conference{background:#e1edff;color:#244d89}.hashtag-workshop{background:#fff0db;color:#805017}.hashtag-community{background:#e0f3ed;color:#216550}.hashtag-wedding{background:#fce5ef;color:#90395f}.hashtag-party{background:#f3e3fc;color:#783996}.hashtag-sports{background:#e5f1ce;color:#4b621b}.hashtag-food{background:#ffe8db;color:#8c4425}.hashtag-arts{background:#e7e6fb;color:#50488b}.hashtag-volunteer{background:#def2f2;color:#246065}.hashtag-wellness{background:#e6f2e6;color:#39623a}.hashtag-family{background:#fff3cd;color:#75531a}.hashtag-other{background:#ececf0;color:#4f4f61}.event-labels{flex-wrap:wrap}.event-labels .event-hashtags{margin-top:0}.event-summary .event-hashtags{margin-block:16px}
footer{flex-wrap:wrap}footer .powered-by{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-basis:100%;border-top:1px solid var(--line);padding-top:20px;margin-top:4px;color:var(--muted);font-size:12px}footer .powered-by span{flex:0 0 auto}footer .powered-by img{display:block;width:90px;height:auto;flex:none}


.language-picker{display:flex;align-items:center;gap:8px;font-size:13px}.language-picker select{width:auto;min-width:95px;margin:0;padding:8px 10px}html[lang=lo] body{font-family:"Tiqqet Lao","Tiqqet Sans",sans-serif;line-height:1.75}html[lang=lo] h1,html[lang=lo] h2{line-height:1.5}@media(max-width:600px){.language-picker{margin-left:auto}.language-picker>span{display:none}header{flex-wrap:wrap}}
.guest-dropzone{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;border:2px dashed #c5b8f0;border-radius:18px;padding:28px 18px;background:#faf8ff;transition:background .15s,border-color .15s;margin:10px 0 18px;min-width:0}
.guest-dropzone.is-dragging,.guest-dropzone:focus-within{border-color:#7152e8;background:#eee8ff;outline:2px solid #7152e8;outline-offset:3px}
.guest-drop-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#e9e0ff;color:#6242d0;font-size:28px}
.guest-dropzone .help{margin:0}.guest-dropzone label.button{margin:0;cursor:pointer}.guest-file-name{max-width:100%;overflow-wrap:anywhere;font-size:.9rem;color:#625975}
.guest-dropzone .guest-file-input{position:absolute;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
