/* Layout restored from the supplied ten-board HTML reference. Public pages only. */
body:not(.admin-body){background:#F6F1E8}
body:not(.admin-body) .wrap{max-width:1200px}
body:not(.admin-body) .site-header{background:#F6F1E8}
body:not(.admin-body) .pill{min-height:46px}
.demo-badge{display:inline-flex;align-items:center;border-radius:999px;background:#fff0d9;color:#794010;border:1px solid #e5bc87;padding:3px 8px;font:700 10px/1.3 'Roboto Mono',monospace;letter-spacing:.04em;vertical-align:middle;margin:3px 6px}
.demo-disabled{opacity:.8;cursor:default!important}

/* Main page */
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,90px);min-height:680px;padding-top:88px;padding-bottom:95px}
.hero-image{padding:0 0 24px 30px}
.hero-image>img:first-child{aspect-ratio:1/1;width:100%;max-width:520px;border-radius:32px;object-fit:cover}
.hero-image .hero-inset{position:absolute;left:0;bottom:5px;width:38%;aspect-ratio:1/1;object-fit:cover;border:8px solid #FFFCF6;border-radius:20px;box-shadow:0 18px 40px #16191c30;transform:rotate(-5deg)}
.hero-image span{right:0;bottom:-8px}
.event-row{grid-template-columns:82px minmax(0,1fr) 150px}
.event-row .demo-badge{margin-left:10px}
.types-section .lead{max-width:800px}
.type-card img{height:auto;aspect-ratio:4/3;object-fit:cover;background:#e4dbcb}
.type-card-body{padding:18px 20px 20px}
.type-card h3,.type-card p{margin:0 0 8px}
.type-card p{font-size:14px;line-height:1.45;min-height:62px;color:#3a3f43}
.type-card small{display:block;font:600 11px 'Roboto Mono',monospace;border-top:1px solid var(--line);padding-top:12px;color:#555}
.dark-section .steps{border-top:1px solid #444a4c;padding-top:18px;margin-top:28px}
.gallery-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:20px}
.gallery-grid figure{position:relative;margin:0}
.gallery-grid img{aspect-ratio:1/1;height:auto;border-radius:18px}
.gallery-grid figcaption{position:absolute;left:5px;bottom:5px;background:#fffcf6d9}
.about{max-width:1200px;text-align:left;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(35px,6vw,85px)}
.about>img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:28px}
.about h2{font-size:clamp(32px,3.6vw,50px)}
.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.feature-card{background:var(--card);border-radius:26px;overflow:hidden}
.feature-card>img{width:100%;aspect-ratio:16/9;object-fit:cover}
.feature-card>div{padding:24px 28px 30px}
.feature-card h2{font-size:clamp(28px,3vw,38px)}
.feature-card p{font-size:16px;color:#3a3f43}
.feature-card .pill{margin-top:6px}
.community .wrap{max-width:1200px;text-align:left}
.community-inner{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:50px;align-items:center}
.community .actions{justify-content:flex-start}
.community-collage{display:flex;align-items:center;justify-content:center;padding-right:18px}
.community-collage img{width:36%;aspect-ratio:3/4;object-fit:cover;border:6px solid #fff;border-radius:10px;box-shadow:0 14px 30px #0004;transform:rotate(-7deg) translateY(10px)}
.community-collage img+img{margin-left:-18px;transform:rotate(2deg)}
.community-collage img:last-child{transform:rotate(8deg) translateY(14px)}
.faq-section{max-width:1000px!important}
.blog-card{background:transparent;border:0;border-radius:0;padding:0}
.blog-card img{height:auto;aspect-ratio:3/2;border-radius:18px;margin-bottom:14px}
.blog-card h3,.blog-card h2,.blog-card p,.blog-card .eyebrow{margin:6px 0}
.blog-card h3{font-size:25px}
.blog-card p{font-size:16px;color:#3a3f43}

/* Workshops */
.workshops-intro{padding-bottom:28px}
.workshops-intro h1{font-size:clamp(52px,5vw,72px)}
.workshops-intro p{max-width:730px}
.upcoming-strip{display:flex;align-items:center;gap:20px;background:#16191c;color:#fff;border-radius:18px;padding:16px 22px;margin:18px 0 10px}
.upcoming-strip .eyebrow{color:#6fc2ee}
.upcoming-strip-items{display:flex;flex:1;gap:24px}
.upcoming-strip-item{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1;min-width:0}
.upcoming-strip-item a:not(.pill){color:#fff;text-decoration:none;font-weight:700}
.upcoming-strip-item small{display:block;color:#cad0d2}
.upcoming-strip .pill{min-height:34px;padding:6px 16px;font-size:13px;flex:none}
.workshops-intro .filter-links{margin:18px 0 0}
.workshop-list{display:grid;gap:24px;padding-top:0}
.workshop-card{display:grid;grid-template-columns:minmax(300px,41%) minmax(0,1fr);gap:clamp(20px,3vw,36px);align-items:start;background:#FFFCF6;border:1px solid var(--line);border-radius:28px;padding:20px;scroll-margin-top:28px}
.workshop-card>img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#e4dbcb;border-radius:20px}
.workshop-card-body{display:flex;flex-direction:column;gap:14px;padding:8px 10px 8px 0}
.workshop-card-body h2{font-size:clamp(30px,3vw,40px);margin:0}
.workshop-card-body>p{font-size:17px;line-height:1.6;color:#3a3f43;margin:0}
.workshop-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:10px;margin:0}
.workshop-facts div{background:#f3ece0;border-radius:14px;padding:10px 14px}
.workshop-facts dt{font:600 10px 'Roboto Mono',monospace;text-transform:uppercase;letter-spacing:.1em;color:#555a5e}
.workshop-facts dd{font-size:16px;font-weight:700;margin:3px 0 0}
.workshop-includes{list-style:none;display:flex;flex-wrap:wrap;gap:7px 16px;padding:0;margin:0;font-size:14px;color:#3a3f43}
.workshop-includes li::before{content:'✓';color:#0E5C8C;font-weight:800;margin-right:7px}
.workshop-dates{border-top:1px solid var(--line);padding-top:15px}
.workshop-dates>.eyebrow{display:block;margin-bottom:10px;color:#555a5e}
.workshop-date{background:#f3ece0;border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 14px;margin:6px 0}
.workshop-date small{display:block}
.workshop-date-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.workshop-date-actions .pill{min-height:38px;padding:7px 16px;font-size:13px}
.workshop-empty{border:1px dashed #d4c5ae;border-radius:15px;padding:15px}
.workshop-empty p{margin:4px 0 12px;font-size:14px}
.workshop-empty .pill{min-height:36px;padding:7px 14px;font-size:12px}
.workshops-cta{background:#0E5C8C;color:white;border-radius:24px;padding:28px 34px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:78px}
.workshops-cta h2{font-size:32px;margin:0}
.workshops-cta p{margin:4px 0 0}
.workshops-cta .pill{background:white;color:#0E5C8C;flex:none}

/* Event details */
.event-detail{padding-top:55px}
.event-detail .breadcrumb{margin-bottom:28px}
.event-detail h1{font-size:clamp(50px,5vw,72px)}
.event-meta{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:14px;font-weight:700;color:#3a3f43;margin:12px 0 26px}
.event-detail .detail-cover{max-height:none;aspect-ratio:4/3;margin:0 0 25px}
.event-detail article h2{font-size:30px;margin:26px 0 15px}
.event-detail .ticket-box{box-shadow:0 20px 40px #16191c12}
.event-detail .clean-list b{color:#0E5C8C}
.event-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:25px}
.event-info-card{background:#FFFCF6;border:1px solid var(--line);border-radius:20px;padding:22px}
.event-info-card h2{margin-top:0!important}
.event-location{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}
.map-placeholder{min-height:180px;background:#e9e1d2;border-radius:18px;display:grid;place-items:center;text-align:center;color:#0E5C8C}
.event-conditions{background:#FFFCF6;border:1px solid var(--line);border-radius:16px;margin-top:30px;padding:15px}
.other-event-card{display:flex;align-items:center;gap:18px;background:#FFFCF6;border:1px solid var(--line);border-radius:20px;padding:14px;margin:12px 0;color:var(--ink);text-decoration:none}
.other-event-card img{width:100px;height:100px;object-fit:cover;border-radius:15px}

/* Blog */
.blog-index .filter-links{margin:30px 0}
.blog-featured{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;background:#16191c;color:#FFFCF6;border-radius:28px;padding:24px;margin-bottom:32px;text-decoration:none}
.blog-featured img{width:100%;aspect-ratio:6/5;object-fit:contain;border-radius:20px;background:#1b1430}
.blog-featured h2{color:#FFFCF6;font-size:clamp(34px,3.5vw,50px)}
.blog-featured p{font-size:18px;color:#d7dcde}
.blog-featured .eyebrow{color:#72c0e8}
.blog-featured .read-link{color:#E2702A;font-weight:800}
.blog-index .blog-grid{row-gap:32px}
.blog-index-cta{background:#FFFCF6;border:1px solid var(--line);border-radius:24px;padding:30px 36px;margin-top:68px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.blog-index-cta h2{font-size:34px;margin:0}
.blog-index-cta p{margin:5px 0}
.blog-index-cta .actions{margin:0;flex:none}
.blog-detail{max-width:900px}
.blog-detail .detail-cover{aspect-ratio:3/2;max-height:none;object-fit:contain;background:#1b1430}
.blog-detail .prose{font-size:18px}
.blog-detail h1{font-size:clamp(52px,5vw,74px)}
.post-byline{font-size:14px;font-weight:700;color:#555a5e}
.blog-detail .prose{max-width:720px;margin:auto}
.blog-detail .markdown h2{font-size:32px;margin-top:32px}
.blog-detail .markdown ol{list-style:none;counter-reset:step;padding:0}
.blog-detail .markdown ol li{counter-increment:step;background:#FFFCF6;border:1px solid var(--line);border-radius:14px;padding:13px 15px;margin:8px 0}
.blog-detail .markdown ol li::before{content:counter(step);display:inline-grid;place-items:center;background:#16191c;color:#fff;width:24px;height:24px;border-radius:50%;margin-right:12px;font:700 12px 'Roboto Mono'}
.blog-detail .markdown blockquote{margin:20px 0;padding:18px;background:#d8ecf5;border-radius:14px;color:#0E5C8C}
.related-event{max-width:720px;margin:25px auto 0;background:#16191c;color:#fff;border-radius:18px;padding:22px}
.related-event .eyebrow{color:#7dc4e8}
.related-event h3{margin:6px 0}
.post-actions{max-width:720px;margin:22px auto;border-top:1px solid var(--line);padding-top:20px;align-items:center}
.post-actions a,.post-actions button{border:1px solid var(--line);border-radius:999px;padding:8px 14px;text-decoration:none;background:transparent;color:var(--ink);font-size:13px}
.post-recommendations .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Request form */
.request-intro{max-width:1200px}
.request-intro>p{max-width:780px}
.request-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;align-items:start}
.request-layout .form-card{margin-top:0}
.request-sidebar img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:20px;margin-bottom:15px}
.request-sidebar-card{background:#16191c;color:#fff;border-radius:20px;padding:25px;margin:15px 0}
.request-sidebar-card h2{font-size:27px;margin:0 0 20px}
.request-sidebar-card p{font-size:15px}
.request-sidebar-card.light{background:#FFFCF6;border:1px solid var(--line);color:var(--ink)}
.request-sidebar-card.light a{font-weight:700}
.request-step{margin:0 0 30px}
.request-step h2{font-size:28px;margin:0 0 13px}
.request-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.request-choice-grid label{margin:0!important;border:2px solid #d9cdbb;border-radius:15px;padding:12px;cursor:pointer;background:#fff}
.request-choice-grid input{accent-color:#16191c}
.request-choice-grid label:has(input:checked){background:#16191c;color:#fff;border-color:#16191c}
.request-choice-grid strong,.request-choice-grid small{display:block}
.request-choice-grid small{font-size:13px;line-height:1.35;color:inherit;opacity:.8}
.request-venue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.request-option-pills{display:flex;flex-wrap:wrap;gap:8px}
.request-option-pills label{margin:0!important;border:2px solid #d9cdbb;border-radius:999px;padding:8px 15px;cursor:pointer}
.request-option-pills label:has(input:checked){background:#16191c;color:#fff;border-color:#16191c}
.request-option-pills input{accent-color:#16191c}
.request-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}

/* Contact */
.contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:32px}
.contact-grid .form-card{margin:0}
.contact-grid .form-card{min-height:215px;display:flex;flex-direction:column;padding:22px}
.contact-grid .form-card h2{font-size:23px;margin:10px 0}
.contact-grid .form-card p{font-size:15px;line-height:1.5;margin:0 0 15px}
.contact-grid .form-card a{font-size:14px;font-weight:800;margin-top:auto}
.contact-grid .contact-primary{background:#16191c;color:#fff}
.contact-grid .contact-primary a{color:#fff}
.contact-icon{display:inline-grid;place-items:center;width:38px;height:38px;background:#d8ecf5;color:#16191c;border-radius:10px;font-size:23px}
.contact-primary .contact-icon{background:#343b40;color:white}
.contact-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:72px}
.contact-info-card{background:#FFFCF6;border:1px solid var(--line);border-radius:24px;padding:30px}
.contact-info-card h2{font-size:clamp(30px,3vw,39px)}
.contact-info-card.dark{background:#16191c;color:#fff}
.contact-info-card.dark .eyebrow{color:#75c2e8}
.contact-info-card p,.contact-info-card li{font-size:16px}
.contact-venue-box{background:#f3ece0;padding:18px;border-radius:15px}
.contact-venue{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
.contact-venue img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:25px}
.contact-owner{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}

@media(max-width:900px){
 .hero{min-height:0;gap:30px}.community-inner{grid-template-columns:1fr 240px;gap:20px}
 .workshop-card{grid-template-columns:1fr 1.1fr}
 .workshop-facts{grid-template-columns:repeat(2,1fr)}
 .request-layout{grid-template-columns:minmax(0,1fr) 230px;gap:20px}
 .contact-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
 .hero{grid-template-columns:1fr;padding-top:50px}.hero-image{padding-left:22px}.hero-image>img:first-child{width:100%}
 .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about,.feature-grid,.community-inner,.event-info-grid,.event-location,.request-layout,.contact-venue,.contact-owner{grid-template-columns:1fr}
 .about{gap:25px}.feature-card>div{padding:22px}.community-collage{display:none}
 .type-card p{min-height:0}
 .upcoming-strip,.upcoming-strip-items{display:block}.upcoming-strip-item{margin:12px 0}.upcoming-strip .eyebrow{display:block}
 .workshop-card{grid-template-columns:1fr}.workshop-card-body{padding:0 4px}.workshop-card>img{max-height:340px}
 .workshop-facts{grid-template-columns:repeat(2,1fr)}.workshops-cta,.blog-index-cta{display:block}.workshops-cta .pill{margin-top:18px}
 .blog-featured{grid-template-columns:1fr;gap:20px}.blog-index-cta .actions{margin-top:18px}
 .post-recommendations .blog-grid{grid-template-columns:1fr}
 .request-sidebar{display:none}.request-choice-grid{grid-template-columns:1fr 1fr}.request-contact-grid{grid-template-columns:1fr}
 .contact-grid,.contact-info-grid{grid-template-columns:1fr}
}

/* Upcoming workshops: image-first cards with optional horizontal browsing. */
.event-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/3);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:12px 2px 22px}
.event-carousel.few{grid-auto-columns:calc((100% - 18px)/2)}
.event-carousel.single{grid-auto-columns:min(100%,380px)}
.event-card{display:flex;flex-direction:column;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:24px;overflow:hidden;scroll-snap-align:start;box-shadow:0 10px 24px #16191c0b}
.event-card-main{display:block;flex:1;color:var(--ink);text-decoration:none}
.event-card-main:hover h3{text-decoration:underline;text-decoration-color:var(--orange)}
.event-card-main:focus-visible,.nav-social a:focus-visible,.event-carousel-controls button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.event-card-image{position:relative;overflow:hidden;background:#e7ddcc}
.event-card-image img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .25s}
.event-card-main:hover img{transform:scale(1.035)}
.event-card-date{position:absolute;top:14px;left:14px;background:#16191c;color:#fff;border-radius:11px;padding:7px 11px;font:700 12px 'Roboto Mono',monospace}
.event-card-body{padding:19px 22px 12px}
.event-card-body h3{font-size:28px;margin:8px 0}
.event-card-body p{font-size:15px;line-height:1.5;color:#3a3f43;min-height:45px}
.event-card-body small{display:block;font-size:13px;font-weight:700;color:#3a3f43;line-height:1.4}
.event-card-action{border-top:1px solid var(--line);padding:15px 22px 20px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.event-card-action b{font-size:21px;white-space:nowrap}
.event-card-action b small{font-size:12px}
.event-card-action .pill{min-height:40px;padding:7px 15px;font-size:13px}
.event-carousel-controls{display:flex;justify-content:flex-end;gap:10px;margin:0 0 15px}
.event-carousel-controls button{border:1px solid var(--ink);background:var(--card);border-radius:50%;width:40px;height:40px;font-size:20px}
@media(min-width:751px){.event-carousel.few + .event-carousel-controls{display:none}}
.site-header .nav-row{gap:18px}
.site-header nav{gap:clamp(10px,1.25vw,20px)}
.nav-social{display:inline-flex;gap:8px;align-items:center}
.site-header nav .nav-social a{width:30px;height:30px;display:grid;place-items:center;color:var(--ink)}
.nav-social svg{width:23px;height:23px}
.about-page-intro{max-width:760px}
.about-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin-top:38px}
.about-page-grid img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:26px}
.venue-request{max-width:1200px}
.venue-request>.lead{max-width:800px}
.venue-request-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:34px;align-items:start}
.venue-request-aside{padding-top:25px}
.venue-request-aside img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:22px}
.venue-request-aside a{font-weight:800}
@media(max-width:1050px){.site-header .menu-toggle{display:block;border:1px solid var(--line);border-radius:9px;padding:6px 12px;background:var(--card)}.site-header nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--bg);z-index:5;padding:20px 25px;box-shadow:0 10px 20px #0002;flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.site-header nav .nav-social{display:flex}}
@media(max-width:1000px){.event-carousel{grid-auto-columns:calc((100% - 18px)/2)}.site-header .brand{font-size:13px}.site-header nav a{font-size:13px}}
@media(max-width:750px){.event-carousel,.event-carousel.few{grid-auto-columns:minmax(255px,75%)}.about-page-grid,.venue-request-grid{grid-template-columns:1fr}.venue-request-aside{padding-top:0}}
@media(max-width:650px){.site-header nav{top:64px}.site-header nav .nav-social{display:flex;gap:16px}.site-header nav .nav-social a{width:36px;height:36px}.event-card-body p{min-height:0}}
