@font-face{font-family:DM Serif Display;font-style:italic;font-weight:400;font-display:swap;src:url(../media/26a0a19eb96a029d-s.2ajvp03xtic_0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Serif Display;font-style:italic;font-weight:400;font-display:swap;src:url(../media/fad69795a077455b-s.p.0t285orp4l5or.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Serif Display;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8dd8a3188b79fd8f-s.2o9_j983y90g0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Serif Display;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0c8f209abc35ee02-s.p.0c0g8ifvh7k7-.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Serif Display Fallback;src:local(Times New Roman);ascent-override:94.37%;descent-override:30.51%;line-gap-override:0.0%;size-adjust:109.78%}.dm_serif_display_90e4ed4d-module__lJxmPq__className{font-family:DM Serif Display,DM Serif Display Fallback;font-weight:400}.dm_serif_display_90e4ed4d-module__lJxmPq__variable{--font-display:"DM Serif Display", "DM Serif Display Fallback"}
@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.outfit_41efe173-module__Jy0dBG__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_41efe173-module__Jy0dBG__variable{--font-body:"Outfit", "Outfit Fallback"}
:root{--terracotta:#a85030;--terracotta-hover:#8e3820;--terracotta-light:#f2ddd2;--terracotta-pale:#faf0eb;--sage:#6b7f5e;--sage-light:#d4ddce;--sage-pale:#eef2eb;--ochre:#c69a3a;--ochre-light:#f0e2bf;--ochre-pale:#fbf6ea;--cream:#faf6f1;--cream-dark:#f0e8dd;--warm-white:#fffdf9;--dark:#2d2418;--dark-mid:#4a3d30;--text:#2d2418;--text-secondary:#7a6e62;--text-tertiary:#a89e94;--border:#e5ddd3;--border-light:#f0eae2;--white:#fff;--error:#c44b4b;--success:#4b8b5e;--font-display:"DM Serif Display", serif;--font-body:"Outfit", sans-serif;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-pill:9999px;--shadow-xs:0 1px 2px #2d24180a;--shadow-sm:0 2px 8px #2d24180f;--shadow-md:0 4px 20px #2d241814;--shadow-lg:0 8px 32px #2d24181a;--shadow-xl:0 16px 48px #2d241824;--ease:cubic-bezier(.4, 0, .2, 1);--container:1200px;--header-h:68px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--font-body);color:var(--text);background:var(--cream);font-size:16px;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;outline:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{max-width:var(--container);margin:0 auto;padding:0 24px}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;line-height:1.15}h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.5rem,3vw,2.25rem)}h3{font-size:clamp(1.15rem,2vw,1.5rem)}p{text-wrap:pretty}.btn{border-radius:var(--radius-pill);cursor:pointer;transition:all .25s var(--ease);white-space:nowrap;align-items:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:600;line-height:1.2;display:inline-flex}.btn-primary{background:var(--terracotta);color:var(--white);box-shadow:0 2px 8px #c4704b40}.btn-primary:hover{background:var(--terracotta-hover);transform:translateY(-1px);box-shadow:0 4px 16px #c4704b59}.btn-secondary{background:var(--white);color:var(--text);border:1.5px solid var(--border)}.btn-secondary:hover{border-color:var(--terracotta);color:var(--terracotta)}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover{color:var(--terracotta)}.btn-sm{padding:8px 16px;font-size:14px}.btn-lg{padding:16px 32px;font-size:17px}.header{z-index:100;height:var(--header-h);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-light);transition:box-shadow .3s var(--ease);background:#faf6f1eb;position:sticky;top:0}.header.scrolled{box-shadow:var(--shadow-sm)}.header-inner{max-width:var(--container);align-items:center;gap:32px;height:100%;margin:0 auto;padding:0 24px;display:flex}.logo{font-family:var(--font-display);color:var(--terracotta);cursor:pointer;letter-spacing:-.5px;flex-shrink:0;font-size:26px;transition:opacity .2s}.logo:hover{opacity:.8}.logo-dot{color:var(--ochre)}.nav-links{flex:1;justify-content:center;gap:8px;display:flex}.nav-link{border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;transition:all .2s var(--ease);padding:8px 16px;font-size:15px;font-weight:500}.nav-link:hover{color:var(--text);background:var(--cream-dark)}.nav-link.active{color:var(--terracotta);background:var(--terracotta-pale)}.header-cta{flex-shrink:0}.mobile-menu-btn{cursor:pointer;border-radius:var(--radius-sm);justify-content:center;align-items:center;width:40px;height:40px;display:none}.mobile-menu-btn:hover{background:var(--cream-dark)}.hero{text-align:center;background:var(--cream);padding:80px 0 64px;position:relative;overflow:hidden}.hero:before{content:"";background:var(--terracotta);opacity:.04;border-radius:50%;width:500px;height:500px;position:absolute;top:-200px;right:-100px}.hero:after{content:"";background:var(--sage);opacity:.05;border-radius:50%;width:350px;height:350px;position:absolute;bottom:-120px;left:-80px}.hero-label{color:var(--terracotta);text-transform:uppercase;letter-spacing:2px;margin-bottom:16px;font-size:14px;font-weight:600;display:inline-block}.hero h1{z-index:1;margin-bottom:16px;position:relative}.hero-subtitle{color:var(--text-secondary);z-index:1;max-width:520px;margin:0 auto 40px;font-size:18px;line-height:1.6;position:relative}.search-bar{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);z-index:2;border:1.5px solid var(--border-light);max-width:760px;transition:box-shadow .3s var(--ease), border-color .3s var(--ease);align-items:center;margin:0 auto;display:flex;position:relative}.search-bar:focus-within{box-shadow:var(--shadow-lg);border-color:var(--terracotta-light)}.search-field{flex:1;align-items:center;gap:10px;min-width:0;padding:16px 20px;display:flex}.search-field svg{color:var(--text-tertiary);flex-shrink:0}.search-field input,.search-field select{width:100%;color:var(--text);background:0 0;font-size:15px;font-weight:500}.search-field input::placeholder{color:var(--text-tertiary);font-weight:400}.search-field select{cursor:pointer;appearance:none}.search-divider{background:var(--border);flex-shrink:0;width:1px;height:32px}.search-btn{background:var(--terracotta);color:var(--white);border-radius:var(--radius-xl);cursor:pointer;transition:all .25s var(--ease);flex-shrink:0;align-items:center;gap:8px;margin:6px;padding:12px 24px;font-size:15px;font-weight:600;display:flex}.search-btn:hover{background:var(--terracotta-hover);transform:scale(1.02)}.search-bar--compact{border-radius:var(--radius-lg);max-width:100%;box-shadow:var(--shadow-sm)}.quick-links{z-index:1;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:24px;display:flex;position:relative}.quick-link{border-radius:var(--radius-pill);cursor:pointer;background:var(--white);color:var(--text-secondary);border:1px solid var(--border);transition:all .2s var(--ease);padding:8px 18px;font-size:14px;font-weight:500}.quick-link:hover{border-color:var(--terracotta);color:var(--terracotta);background:var(--terracotta-pale)}.section{padding:64px 0}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:32px;display:flex}.section-header h2{margin:0}.section-subtitle{color:var(--text-secondary);margin-top:4px;font-size:16px}.see-all-link{color:var(--terracotta);cursor:pointer;transition:gap .2s var(--ease);align-items:center;gap:4px;font-size:15px;font-weight:600;display:flex}.see-all-link:hover{gap:8px}.events-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;display:grid}.event-card{background:var(--white);border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow-xs);border:1px solid var(--border-light);transition:all .3s var(--ease);overflow:hidden}.event-card:hover{box-shadow:var(--shadow-lg);border-color:#0000;transform:translateY(-4px)}.event-card-image{justify-content:center;align-items:center;height:200px;display:flex;position:relative;overflow:hidden}.event-card-image svg.placeholder-icon{opacity:.25;width:56px;height:56px;color:var(--white)}.badge-new{border-radius:var(--radius-pill);text-transform:uppercase;background:var(--terracotta);color:var(--white);letter-spacing:.5px;padding:4px 10px;font-size:12px;font-weight:700;position:absolute;top:12px;left:12px}.favorite-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;width:36px;height:36px;transition:all .2s var(--ease);color:var(--text-tertiary);background:#ffffffd9;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:12px;right:12px}.favorite-btn:hover{background:var(--white);transform:scale(1.1)}.favorite-btn.active{color:var(--terracotta)}.date-badge{background:var(--white);border-radius:var(--radius-sm);text-align:center;box-shadow:var(--shadow-sm);padding:6px 10px;line-height:1.1;position:absolute;bottom:12px;left:12px}.date-badge-day{color:var(--text);font-size:20px;font-weight:700;display:block}.date-badge-month{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600;display:block}.event-card-body{padding:16px 20px 20px}.event-type-pill{border-radius:var(--radius-pill);text-transform:capitalize;margin-bottom:8px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.event-type-pill[data-type=brocante]{background:var(--terracotta-pale);color:var(--terracotta)}.event-type-pill[data-type=vide-grenier]{background:var(--sage-pale);color:#4e6042}.event-type-pill[data-type=marché\ vintage]{background:var(--ochre-pale);color:#7a5800}.event-card-title{font-family:var(--font-display);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:8px;font-size:18px;line-height:1.25;display:-webkit-box;overflow:hidden}.event-card-location{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:10px;font-size:14px;display:flex}.event-card-location svg{flex-shrink:0;width:14px;height:14px}.event-card-meta{color:var(--text-tertiary);align-items:center;gap:16px;font-size:13px;display:flex}.event-card-meta span{align-items:center;gap:4px;display:flex}.event-card-meta svg{width:14px;height:14px}.categories-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.category-tile{border-radius:var(--radius-lg);cursor:pointer;transition:all .3s var(--ease);flex-direction:column;gap:8px;min-height:160px;padding:32px 28px;display:flex;position:relative;overflow:hidden}.category-tile:hover{transform:translateY(-3px)}.category-tile h3{color:var(--white);z-index:1;font-size:22px}.category-tile .cat-count{color:#fffc;z-index:1;font-size:14px;font-weight:500}.category-tile:after{content:"";background:#ffffff1a;border-radius:50%;width:120px;height:120px;position:absolute;bottom:-20px;right:-20px}.cat-brocante{background:linear-gradient(145deg,#c4704b,#a85a3a)}.cat-vide-grenier{background:linear-gradient(145deg,#6b7f5e,#556b48)}.cat-vintage{background:linear-gradient(145deg,#c69a3a,#a8822e)}.cta-banner{background:var(--dark);text-align:center;padding:64px 0;position:relative;overflow:hidden}.cta-banner:before{content:"";background:radial-gradient(at 30%,#c4704b26,#0000 70%);position:absolute;inset:0}.cta-banner h2{color:var(--white);z-index:1;margin-bottom:12px;position:relative}.cta-banner p{color:#ffffffb3;z-index:1;margin-bottom:28px;font-size:17px;position:relative}.cta-banner .btn{z-index:1;position:relative}.filters-bar{flex-wrap:wrap;align-items:center;gap:10px;padding:16px 0;display:flex}.filter-chip{border-radius:var(--radius-pill);cursor:pointer;background:var(--white);border:1.5px solid var(--border);transition:all .2s var(--ease);align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;display:flex}.filter-chip:hover{border-color:var(--terracotta);color:var(--terracotta)}.filter-chip.active{background:var(--terracotta);color:var(--white);border-color:var(--terracotta)}.filter-chip svg{width:16px;height:16px}.results-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:24px 0 8px;display:flex}.results-count{color:var(--text-secondary);font-size:15px}.results-count strong{color:var(--text)}.view-toggle{background:var(--cream-dark);border-radius:var(--radius-sm);gap:4px;padding:3px;display:flex}.view-toggle-btn{border-radius:var(--radius-xs);cursor:pointer;width:36px;height:36px;color:var(--text-tertiary);transition:all .2s var(--ease);justify-content:center;align-items:center;display:flex}.view-toggle-btn.active{background:var(--white);color:var(--text);box-shadow:var(--shadow-xs)}.map-placeholder{background:var(--cream-dark);border-radius:var(--radius-lg);border:2px dashed var(--border);flex-direction:column;justify-content:center;align-items:center;gap:8px;height:280px;margin-bottom:24px;display:flex}.map-placeholder svg{color:var(--text-tertiary)}.map-placeholder span{color:var(--text-tertiary);font-size:14px}.breadcrumb{color:var(--text-tertiary);align-items:center;gap:6px;padding:16px 0;font-size:14px;display:flex}.breadcrumb a{color:var(--text-secondary);cursor:pointer;transition:color .2s}.breadcrumb a:hover{color:var(--terracotta)}.breadcrumb svg{width:14px;height:14px}.breadcrumb .current{color:var(--text);font-weight:500}.detail-hero{border-radius:var(--radius-lg);justify-content:center;align-items:center;height:360px;margin-bottom:32px;display:flex;position:relative;overflow:hidden}.detail-hero svg.placeholder-icon{opacity:.2;width:72px;height:72px;color:var(--white)}.detail-hero .back-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;width:44px;height:44px;transition:all .2s var(--ease);color:var(--text);background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:16px;left:16px}.detail-hero .back-btn:hover{background:var(--white);transform:scale(1.05)}.detail-content{grid-template-columns:1fr 360px;gap:40px;display:grid}.detail-title{margin-bottom:16px;font-size:clamp(1.5rem,3.5vw,2.5rem);line-height:1.15}.detail-metas{border-bottom:1px solid var(--border-light);flex-wrap:wrap;gap:20px;margin-bottom:28px;padding-bottom:28px;display:flex}.detail-meta{align-items:flex-start;gap:10px;font-size:15px;display:flex}.detail-meta svg{color:var(--terracotta);flex-shrink:0;margin-top:2px}.detail-meta-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.detail-meta-value{font-weight:500}.detail-description{color:var(--dark-mid);margin-bottom:32px;font-size:16px;line-height:1.8}.sidebar-card{background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:24px}.sidebar-card-title{font-family:var(--font-display);border-bottom:1px solid var(--border-light);margin-bottom:16px;padding-bottom:12px;font-size:17px}.organizer-name{margin-bottom:12px;font-size:16px;font-weight:600}.contact-row{color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:8px;font-size:14px;display:flex}.contact-row svg{width:16px;height:16px;color:var(--terracotta);flex-shrink:0}.share-buttons{gap:8px;display:flex}.share-btn{background:var(--cream);cursor:pointer;width:44px;height:44px;transition:all .2s var(--ease);color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;display:flex}.share-btn:hover{background:var(--terracotta-pale);color:var(--terracotta)}.form-page{padding:40px 0 80px}.form-container{max-width:680px;margin:0 auto}.form-header{text-align:center;margin-bottom:48px}.form-header h1{margin-bottom:12px}.form-header p{color:var(--text-secondary);font-size:17px}.form-section{background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border-light);margin-bottom:20px;padding:28px}.form-section-title{font-family:var(--font-display);margin-bottom:20px;font-size:19px}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-label{color:var(--text);margin-bottom:6px;font-size:14px;font-weight:600;display:block}.form-label .optional{color:var(--text-tertiary);font-weight:400}.form-input,.form-textarea,.form-select{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--white);width:100%;transition:border-color .2s var(--ease), box-shadow .2s var(--ease);padding:12px 16px;font-size:15px}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--terracotta);box-shadow:0 0 0 3px var(--terracotta-light)}.form-textarea{resize:vertical;min-height:120px;line-height:1.6}.form-select{cursor:pointer;appearance:none}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-input.input-error,.form-textarea.input-error{border-color:var(--terracotta)}.field-error{color:var(--terracotta);margin-top:4px;font-size:13px}.type-selector{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.type-option{border:2px solid var(--border);border-radius:var(--radius-md);cursor:pointer;text-align:center;transition:all .2s var(--ease);padding:16px}.type-option:hover{border-color:var(--terracotta-light)}.type-option.selected{border-color:var(--terracotta);background:var(--terracotta-pale)}.type-option-label{font-size:14px;font-weight:600}.upload-area{border:2px dashed var(--border);border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:all .2s var(--ease);color:var(--text-tertiary);padding:40px}.upload-area:hover{border-color:var(--terracotta);color:var(--terracotta);background:var(--terracotta-pale)}.upload-area svg{margin-bottom:8px}.upload-area p{font-size:14px}.upload-area .upload-hint{color:var(--text-tertiary);margin-top:4px;font-size:12px}.footer{background:var(--dark);color:#ffffffb3;padding:64px 0 32px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;display:grid}.footer-brand .logo{color:var(--terracotta-light);margin-bottom:12px;font-size:24px}.footer-brand p{max-width:260px;font-size:14px;line-height:1.6}.footer-col h4{color:var(--white);font-family:var(--font-body);text-transform:uppercase;letter-spacing:1px;margin-bottom:16px;font-size:14px;font-weight:700}.footer-col a{color:#fff9;cursor:pointer;padding:4px 0;font-size:14px;transition:color .2s;display:block}.footer-col a:hover{color:var(--terracotta-light)}.footer-bottom{border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding-top:24px;font-size:13px;display:flex}.footer-bottom a{cursor:pointer}.footer-bottom a:hover{color:var(--terracotta-light)}.footer-bottom-links{gap:24px;display:flex}.toast-container{z-index:1000;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{background:var(--dark);color:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);animation:toastIn .4s var(--ease) forwards;align-items:center;gap:10px;padding:14px 24px;font-size:15px;font-weight:500;display:flex}.toast svg{color:var(--success);flex-shrink:0}.toast.leaving{animation:toastOut .3s var(--ease) forwards}.page-wrapper{transition:opacity .2s var(--ease);min-height:calc(100vh - var(--header-h))}.page-wrapper.fading{opacity:0}.empty-state{text-align:center;color:var(--text-secondary);padding:64px 24px}.empty-state svg{color:var(--text-tertiary);margin-bottom:16px}.empty-state h3{color:var(--text);margin-bottom:8px}.mobile-nav-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .3s var(--ease);background:#2d241866;position:fixed;inset:0}.mobile-nav-overlay.open{opacity:1;pointer-events:auto}.mobile-nav-panel{background:var(--cream);width:300px;max-width:85vw;height:100%;transition:transform .3s var(--ease);flex-direction:column;gap:8px;padding:24px;display:flex;position:absolute;top:0;right:0;transform:translate(100%)}.mobile-nav-overlay.open .mobile-nav-panel{transform:translate(0)}.mobile-nav-close{cursor:pointer;border-radius:var(--radius-sm);justify-content:center;align-self:flex-end;align-items:center;width:40px;height:40px;margin-bottom:16px;display:flex}.mobile-nav-close:hover{background:var(--cream-dark)}.mobile-nav-link{border-radius:var(--radius-md);cursor:pointer;padding:14px 16px;font-size:17px;font-weight:500;transition:background .2s}.mobile-nav-link:hover{background:var(--cream-dark)}@keyframes toastIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.fade-up{animation:fadeUp .5s var(--ease) both}.fade-up-1{animation-delay:.1s}.fade-up-2{animation-delay:.2s}.fade-up-3{animation-delay:.3s}.fade-up-4{animation-delay:.4s}.scale-in{animation:scaleIn .4s var(--ease) both}@media (max-width:1024px){.detail-content{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width:768px){.nav-links,.header-cta{display:none}.mobile-menu-btn{margin-left:auto;display:flex}.hero{padding:48px 0 40px}.search-bar{border-radius:var(--radius-lg);flex-direction:column;max-width:100%}.search-field{padding:14px 16px}.search-divider{width:100%;height:1px}.search-btn{justify-content:center;margin:8px}.events-grid,.categories-grid{grid-template-columns:1fr}.section{padding:40px 0}.form-row,.type-selector{grid-template-columns:1fr}.detail-hero{border-radius:0;height:240px;margin-left:-24px;margin-right:-24px}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{text-align:center;flex-direction:column;gap:12px}}@media (max-width:480px){.container{padding:0 16px}.hero h1{font-size:1.75rem}.event-card-image{height:170px}.quick-links{gap:6px}.quick-link{padding:6px 14px;font-size:13px}}
