﻿:root{--kh-cream: #FFF8F0;--kh-paper: #FFFFFF;--kh-tan: #E8D5B7;--kh-terracotta: #C84B31;--kh-terracotta-deep: #A73919;--kh-sage: #4A7C59;--kh-sage-deep: #2E5338;--kh-slate: #1F2937;--kh-slate-soft: #475569;--kh-slate-line: #E5E0D5;--kh-font-display: "Fraunces", Georgia, "Times New Roman", serif;--kh-font-body: "DM Sans", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--kh-font-script: "Caveat", "Segoe Script", cursive;--kh-radius-sm: 8px;--kh-radius-md: 14px;--kh-radius-lg: 24px;--kh-shadow-sm: 0 1px 2px rgba(31, 41, 55, 0.06), 0 1px 3px rgba(31, 41, 55, 0.04);--kh-shadow-md: 0 4px 6px rgba(31, 41, 55, 0.05), 0 10px 15px rgba(31, 41, 55, 0.05);--kh-poster-red: #D43321;--kh-poster-red-deep: #A6261A;--kh-poster-teal: #0E3A3A;--kh-cream-warm: #FBEBC8;--kh-font-poster: "Archivo Black", "DM Sans", system-ui, sans-serif;--poster-display-color: var(--kh-poster-red);--poster-eyebrow-color: var(--kh-poster-teal);--poster-bg: var(--kh-cream-warm)}html,body{font-family:var(--kh-font-body);color:var(--kh-slate);background-color:var(--kh-cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,.display-serif{font-family:var(--kh-font-display);letter-spacing:-0.01em}.script-accent{font-family:var(--kh-font-script);font-weight:700;letter-spacing:.01em}a{color:#c84b31}a:hover{color:#a73919}.kh-poster-section{background:var(--poster-bg);padding:clamp(3rem,8vw,6rem) 0;position:relative;overflow:hidden}.kh-poster-eyebrow{display:inline-block;font-family:var(--kh-font-body);font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--poster-eyebrow-color);font-size:clamp(.85rem,1.6vw,1.05rem);margin-bottom:.75rem}.kh-poster-display{font-family:var(--kh-font-poster);font-weight:900;text-transform:uppercase;color:var(--poster-display-color);font-size:clamp(3.5rem,11vw,8rem);line-height:.9;letter-spacing:-0.01em;margin:0 0 1rem;text-wrap:balance}.kh-bullet-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:.85rem 1.5rem}@media(min-width: 768px){.kh-bullet-list{grid-template-columns:repeat(auto-fit, minmax(220px, 1fr))}}.kh-bullet-list__item{display:flex;align-items:center;gap:.85rem;padding:.4rem 0;transition:transform .18s ease}.kh-bullet-list__item:hover{transform:translateX(4px)}.kh-bullet-list__icon{font-size:1.6rem;line-height:1;flex-shrink:0;width:2.2rem;text-align:center}.kh-bullet-list__label{font-family:var(--kh-font-body);font-weight:600;font-size:1.05rem;color:var(--kh-slate)}.kh-paper-patch{--patch-tilt: -1.5deg;background:var(--kh-paper);border:1px solid var(--kh-slate-line);border-radius:var(--kh-radius-lg);padding:1.5rem;box-shadow:var(--kh-shadow-md);transform:rotate(var(--patch-tilt));text-align:center;position:relative;display:inline-block}.kh-paper-patch--straight{--patch-tilt: 0deg}.kh-mascot{display:inline-block;line-height:0}.kh-mascot--bounce:hover{animation:kh-mascot-bounce .5s ease}@keyframes kh-mascot-bounce{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-12px) rotate(-3deg)}60%{transform:translateY(-4px) rotate(2deg)}}.btn-primary{background-color:#c84b31;border-color:#c84b31;color:#fff}.btn-primary:hover,.btn-primary:focus{background-color:#a73919;border-color:#a73919;color:#fff}.btn-secondary{background-color:#4a7c59;border-color:#4a7c59;color:#fff}.btn-secondary:hover,.btn-secondary:focus{background-color:#2e5338;border-color:#2e5338}.btn-challenge{background:linear-gradient(135deg, #C84B31 0%, #4A7C59 100%);border:none;color:#fff;font-weight:600;padding:.5rem 1.5rem;border-radius:9999px;transition:transform .2s,box-shadow .2s}.btn-challenge:hover{transform:scale(1.05);box-shadow:0 10px 15px rgba(0,0,0,.1);color:#fff}.btn-cta .cta-emoji{margin-right:.5rem}.student-banner{background:linear-gradient(135deg, #FFF8F0 0%, #FFFFFF 100%);border-bottom:2px solid #e07b5f;padding:1rem 0}.student-avatar{width:48px;height:48px;border-radius:9999px;background:linear-gradient(135deg, #C84B31 0%, #4A7C59 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem}.student-avatar-small{width:36px;height:36px;border-radius:9999px;background:linear-gradient(135deg, #C84B31 0%, #4A7C59 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.75rem}.hero-section{background:linear-gradient(180deg, #FFFFFF 0%, #F9F9F9 100%);padding:3rem 0;text-align:center}.hero-title{font-size:2.5rem;font-weight:700;color:#000;margin-bottom:1rem}.hero-subtitle{font-size:1.25rem;color:#6c757d}.hero-section-home{background:linear-gradient(135deg, #FFF8F0 0%, #FFF0E8 50%, #E8F5E9 100%);padding:4rem 0 5rem;position:relative;overflow:hidden}.hero-decoration{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.cookie-float{position:absolute;font-size:3rem;opacity:.15;animation:float 6s ease-in-out infinite}.cookie-float.cookie-1{top:10%;left:5%;animation-delay:0s}.cookie-float.cookie-2{top:20%;right:8%;animation-delay:1.5s;font-size:2.5rem}.cookie-float.cookie-3{bottom:15%;left:10%;animation-delay:3s;font-size:2rem}.cookie-float.cookie-4{bottom:25%;right:5%;animation-delay:4.5s;font-size:3.5rem}@keyframes float{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(10deg)}}.hero-badge{display:inline-block;background:linear-gradient(135deg, #C84B31 0%, #4A7C59 100%);color:#fff;padding:.5rem 1.5rem;border-radius:9999px;font-weight:600;font-size:.875rem;margin-bottom:1.5rem;text-transform:uppercase;letter-spacing:.5px}.hero-title-home{font-size:3rem;font-weight:800;color:#000;margin-bottom:1.5rem;line-height:1.2}.text-gradient{background:linear-gradient(135deg, #C84B31 0%, #4A7C59 100%);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text}.hero-subtitle-home{font-size:1.25rem;color:#6c757d;max-width:600px;margin:0 auto 2rem;line-height:1.6}.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.hero-buttons .btn{padding:.75rem 2rem;font-weight:600;border-radius:9999px}.hero-buttons .btn-outline-dark{border-width:2px}.hero-buttons .btn-outline-dark:hover{background-color:#000;color:#fff}.usp-section{padding:3rem 0;background:#fff}.usp-card{text-align:center;padding:1.5rem;border-radius:1rem;background:#f9f9f9;height:100%;transition:transform .2s,box-shadow .2s}.usp-card:hover{transform:translateY(-4px);box-shadow:0 4px 6px rgba(0,0,0,.1)}.usp-card .usp-icon{font-size:2.5rem;margin-bottom:1rem;display:block}.usp-card h3{font-size:1rem;font-weight:700;color:#000;margin-bottom:.5rem}.usp-card p{font-size:.875rem;color:#6c757d;margin:0;line-height:1.4}.products-section-home{padding:3rem 0 4rem;background:linear-gradient(180deg, #FFFFFF 0%, #F9F9F9 100%)}.section-header{margin-bottom:2rem}.section-title{font-size:2rem;font-weight:700;color:#000;margin-bottom:.5rem}.section-subtitle{font-size:1.125rem;color:#6c757d}.cta-section{padding:2rem 0 4rem;background:#f9f9f9}.cta-card{background:linear-gradient(135deg, #C84B31 0%, #4A7C59 100%);border-radius:1.5rem;padding:2rem 3rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;box-shadow:0 10px 15px rgba(0,0,0,.1)}.cta-card .cta-content h2{font-size:1.75rem;font-weight:700;color:#fff;margin-bottom:.5rem}.cta-card .cta-content p{font-size:1.125rem;color:hsla(0,0%,100%,.9);margin:0}.cta-card .btn-light{background:#fff;color:#c84b31;font-weight:600;padding:.75rem 2rem;border-radius:9999px;border:none}.cta-card .btn-light:hover{background:#f9f9f9;transform:scale(1.05)}.empty-state-icon{font-size:5rem;margin-bottom:1.5rem;display:block}.products-section{padding:2rem 0 3rem}.product-card{background:#fff;border-radius:1rem;overflow:hidden;transition:transform .2s,box-shadow .2s;border:1px solid rgba(0,0,0,.05)}.product-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px rgba(0,0,0,.1)}.product-card-image{width:100%;height:200px;object-fit:cover}.product-card-placeholder{width:100%;height:200px;background:linear-gradient(135deg, #F9F9F9 0%, #e0e0e0 100%);display:flex;align-items:center;justify-content:center;color:#6c757d}.product-card-skeleton{background:linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;height:280px;border-radius:1rem}@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.price-display{font-weight:700;color:#c84b31}.price-display-large{font-size:1.5rem}.challenges-page{min-height:100vh;background:linear-gradient(180deg, #FFF8F5 0%, #F0FFF4 100%)}.challenges-header{padding:3rem 0;text-align:center;position:relative;overflow:hidden}.challenges-title{font-size:2.5rem;font-weight:800;color:#000;margin-bottom:1rem}.challenges-title .emoji{display:inline-block}.challenges-title .emoji.bounce{animation:bounce 1s infinite}.challenges-title .emoji.delay{animation-delay:.5s}@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.challenges-subtitle{font-size:1.25rem;color:#6c757d}.challenges-progress{padding:2rem 0}.total-progress-card{background:linear-gradient(135deg, #C84B31 0%, #4A7C59 100%);border-radius:1.5rem;padding:2rem;display:flex;align-items:center;gap:1.5rem;color:#fff;margin-bottom:2rem;box-shadow:0 10px 15px rgba(0,0,0,.1)}.total-progress-card .progress-icon{font-size:4rem}.total-progress-card .progress-number{font-size:3.5rem;font-weight:800;display:block;line-height:1}.total-progress-card .progress-label{font-size:1.5rem;opacity:.9}.goals-list{display:flex;flex-direction:column;gap:1.5rem}.goal-card{background:#fff;border-radius:1rem;padding:1.5rem;display:flex;gap:1.5rem;box-shadow:0 4px 6px rgba(0,0,0,.1);transition:transform .2s;border-left:4px solid #c84b31}.goal-card:hover{transform:scale(1.01)}.goal-card.completed{border-left-color:#4a7c59;background:linear-gradient(90deg, #F0FFF4 0%, #FFFFFF 20%)}.goal-card .goal-icon{font-size:3rem;flex-shrink:0;display:flex;align-items:flex-start}.goal-card .goal-content{flex:1}.goal-card .goal-title{font-size:1.25rem;font-weight:700;color:#000;margin-bottom:.25rem}.goal-card .goal-description{color:#6c757d;margin-bottom:1rem}.goal-progress{margin-bottom:.5rem}.goal-progress .progress-bar-container{height:16px;background:#f9f9f9;border-radius:9999px;overflow:hidden;margin-bottom:.25rem}.goal-progress .progress-bar-fill{height:100%;background:linear-gradient(90deg, #C84B31 0%, #E07B5F 100%);border-radius:9999px;transition:width .5s ease}.goal-progress .progress-bar-fill.completed{background:linear-gradient(90deg, #4A7C59 0%, #6B9B7A 100%)}.goal-progress .progress-text{font-size:.875rem;color:#6c757d;font-weight:600}.goal-reward{background:#fff8f0;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;color:#a73919;display:inline-flex;align-items:center;gap:.5rem}.goal-reward.unlocked{background:linear-gradient(135deg, #6B9B7A 0%, #E8F5E9 100%);color:#2e5338}.goal-reward .reward-icon{font-size:1.25rem}.motivation-section{padding:2rem 0}.motivation-section .motivation-cards{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.motivation-section .motivation-card{background:#fff;border-radius:1rem;padding:1.5rem;text-align:center;box-shadow:0 1px 2px rgba(0,0,0,.05);min-width:150px}.motivation-section .motivation-card .motivation-emoji{font-size:2.5rem;display:block;margin-bottom:.5rem}.motivation-section .motivation-card p{margin:0;font-weight:600;color:#444}.challenges-cta{padding:2rem 0 3rem}.social-share-buttons{display:flex;align-items:center;justify-content:center;gap:.5rem}.social-share-buttons .share-label{font-size:.875rem;color:#6c757d}.social-share-buttons .share-btn{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s;text-decoration:none;border:none}.social-share-buttons .share-btn:hover{transform:scale(1.1);box-shadow:0 4px 6px rgba(0,0,0,.1)}.social-share-buttons .share-btn.whatsapp{background-color:#25d366;color:#fff}.social-share-buttons .share-btn.facebook{background-color:#1877f2;color:#fff}.social-share-buttons .share-btn.twitter{background-color:#000;color:#fff}.social-share-buttons .share-btn.copy{background-color:#6c757d;color:#fff}.social-share-buttons .share-btn.copy:hover{background-color:#5a6268}.personal-progress-section{padding:2rem 0}.personal-progress-card{background:linear-gradient(135deg, #FFF8F0 0%, #F0FFF4 100%);border-radius:1rem;padding:1.5rem;border:2px solid #e07b5f}.personal-progress-card .progress-stat{text-align:center;padding:1rem}.personal-progress-card .progress-stat .stat-value{font-size:2rem;font-weight:800;color:#c84b31;display:block}.personal-progress-card .progress-stat .stat-label{font-size:.875rem;color:#6c757d}.leaderboard-section{padding:2rem 0}.leaderboard-card{background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 4px 6px rgba(0,0,0,.1)}.leaderboard-tabs{display:flex;border-bottom:2px solid #f0f0f0}.leaderboard-tabs .tab-btn{flex:1;padding:1rem;border:none;background:rgba(0,0,0,0);font-weight:600;color:#6c757d;cursor:pointer;transition:all .2s}.leaderboard-tabs .tab-btn.active{color:#c84b31;border-bottom:2px solid #c84b31;margin-bottom:-2px}.leaderboard-tabs .tab-btn:hover:not(.active){background:#f9f9f9}.leaderboard-list{padding:.5rem 0}.leaderboard-entry{display:flex;align-items:center;padding:.75rem 1.5rem;gap:1rem;transition:background .2s}.leaderboard-entry:hover{background:#f9f9f9}.leaderboard-entry.highlight{background:linear-gradient(90deg, #FFF8F0 0%, #FFFFFF 100%);border-left:3px solid #c84b31}.leaderboard-entry .rank{font-size:1.25rem;font-weight:800;color:#6c757d;min-width:2rem}.leaderboard-entry .rank.top-3{color:#c84b31}.leaderboard-entry .entry-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg, #C84B31 0%, #4A7C59 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.875rem}.leaderboard-entry .entry-info{flex:1}.leaderboard-entry .entry-info .entry-name{font-weight:600;color:#000}.leaderboard-entry .entry-info .entry-class{font-size:.75rem;color:#6c757d}.leaderboard-entry .entry-score{font-weight:700;color:#4a7c59}.event-card{background:#fff;border-radius:.5rem;padding:1.5rem;transition:transform .2s,box-shadow .2s;height:100%}.event-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px rgba(0,0,0,.1)}.cart-item-row{padding:1rem 0;border-bottom:1px solid #dee2e6}.cart-item-row:last-child{border-bottom:none}.cart-item-image{width:80px;height:80px;object-fit:cover;border-radius:.375rem}.cart-item-placeholder{width:80px;height:80px;background:#f0f0f0;border-radius:.375rem;display:flex;align-items:center;justify-content:center}.quantity-control{display:inline-flex;align-items:center;gap:.5rem}.quantity-control input{width:60px;text-align:center}.cart-item-row.donation-item{background:linear-gradient(135deg, #FAF3E0 0%, #FFF8F0 100%);border-radius:.5rem;padding:1rem;margin:.5rem 0;border-bottom:none}.cart-item-donation-icon{width:80px;height:80px;background:linear-gradient(135deg, #6B9B7A 0%, #4A7C59 100%);border-radius:.375rem;display:flex;align-items:center;justify-content:center;color:#fff}.donation-badge{display:inline-block;background:#4a7c59;color:#fff;font-size:.625rem;font-weight:700;padding:.125rem .5rem;border-radius:9999px;margin-left:.5rem;text-transform:uppercase;letter-spacing:.5px;vertical-align:middle}.donation-quantity{font-size:1rem;font-weight:600;color:#6c757d}.order-status-pending{background-color:#ffc107;color:#212529}.order-status-paid{background-color:#4a7c59;color:#fff}.order-status-processing{background-color:#0dcaf0;color:#212529}.order-status-delivered{background-color:#6c757d;color:#fff}.order-status-cancelled{background-color:#e74c3c;color:#fff}.student-selector .form-select{max-width:100%}.student-distribution-row{display:flex;align-items:end;gap:.5rem}.student-distribution-selector{flex:1;min-width:0}.student-distribution-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}@media(max-width: 767.98px){.student-distribution-row{flex-direction:column;align-items:stretch;background:#f9f9f9;border:1px solid #e9ecef;border-radius:.5rem;padding:1rem;gap:.75rem}.student-distribution-actions{justify-content:space-between;padding-top:.75rem;border-top:1px solid #e9ecef}.student-distribution-actions .d-flex{flex:1}.student-distribution-actions .form-control{flex:1;width:auto !important}}.checkout-summary{background:#fff;border-radius:1rem;padding:1.5rem;border:2px solid #e07b5f}.checkout-items{display:flex;flex-direction:column;gap:.5rem}.checkout-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f9f9f9;border-radius:.5rem}.checkout-item.donation-item{background:linear-gradient(135deg, #FAF3E0 0%, #FFF8F0 100%)}.checkout-item-info{flex:1;min-width:0}.checkout-item-name{display:block;font-weight:600;color:#000;margin-bottom:.25rem}.checkout-item-price-per{font-size:.875rem;color:#6c757d}.checkout-item-quantity{display:flex;align-items:center;gap:.25rem}@media(max-width: 767.98px){.checkout-item{flex-wrap:wrap}.checkout-item-info{flex-basis:100%}.checkout-item-quantity{flex:1}.checkout-item-total{min-width:auto}}.qty-btn-small{width:32px;height:32px;border-radius:9999px;border:1px solid #ddd;background:#fff;color:#c84b31;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.qty-btn-small:hover:not(:disabled){background:#c84b31;border-color:#c84b31;color:#fff}.qty-btn-small:disabled{opacity:.4;cursor:not-allowed}.qty-display{min-width:32px;text-align:center;font-weight:600;font-size:1rem}.checkout-item-total{min-width:80px;text-align:right}.checkout-item-remove{width:32px;height:32px;border-radius:9999px;border:none;background:rgba(0,0,0,0);color:#6c757d;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.checkout-item-remove:hover{background:#e74c3c;color:#fff}.checkout-add-more{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #eee}.page-header{margin-bottom:2rem}.page-header h1{margin-bottom:.5rem}.empty-state{text-align:center;padding:3rem}.empty-state svg{width:80px;height:80px;margin-bottom:1rem;color:#6c757d}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem}.valid.modified:not([type=checkbox]){outline:1px solid #6fc191}.invalid{outline:1px solid #e74c3c}.validation-message{color:#e74c3c;font-size:.875rem}.blazor-error-boundary{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem,#b32121;padding:1rem 1rem 1rem 3.7rem;color:#fff}.blazor-error-boundary::after{content:"Er is een fout opgetreden."}.btn:focus,.btn:active:focus,.btn-link.nav-link:focus,.form-control:focus,.form-check-input:focus{box-shadow:0 0 0 .1rem #fff,0 0 0 .25rem #e07b5f}h1:focus{outline:none}.darker-border-checkbox.form-check-input{border-color:#929292}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:var(--bs-secondary-color);text-align:end}.form-floating>.form-control-plaintext:focus::placeholder,.form-floating>.form-control:focus::placeholder{text-align:start}.landing-page{background:#f9f9f9}.landing-hero{background:linear-gradient(135deg, #FAF3E0 0%, #FFF0E0 50%, #E8F5E9 100%);padding:4rem 0 5rem;position:relative;overflow:hidden}.floating-decorations{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:0}.float-item{position:absolute;font-size:2.5rem;opacity:.15;animation:float 8s ease-in-out infinite}.float-item.apple-1{top:10%;left:5%;animation-delay:0s;font-size:3rem}.float-item.apple-2{top:15%;right:8%;animation-delay:2s;font-size:2.5rem}.float-item.apple-3{bottom:20%;right:15%;animation-delay:4s;font-size:2rem}.float-item.leaf-1{top:25%;left:15%;animation-delay:1s;font-size:2rem}.float-item.leaf-2{bottom:30%;left:8%;animation-delay:3s;font-size:2.5rem}.float-item.leaf-3{top:40%;right:5%;animation-delay:5s;font-size:2rem}.hero-logos{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-bottom:3rem;padding:1rem;background:#fff;border-radius:1rem;box-shadow:0 4px 6px rgba(0,0,0,.1);max-width:fit-content;margin-left:auto;margin-right:auto}.hero-logo{height:90px;width:auto;object-fit:contain}.logo-divider{font-size:1.5rem;color:#6c757d;font-weight:300}.landing-hero-content{max-width:700px;margin:0 auto;text-align:center;position:relative;z-index:1}.landing-hero-decoration{position:absolute;bottom:-50px;left:0;right:0;height:100px;background:#f9f9f9;border-radius:50% 50% 0 0/100% 100% 0 0}.landing-badge{display:inline-flex;align-items:center;gap:.5rem;background:#fff;color:#c84b31;padding:.5rem 1.5rem;border-radius:9999px;font-weight:600;font-size:.875rem;margin-bottom:1.5rem;box-shadow:0 4px 6px rgba(0,0,0,.1);text-transform:uppercase;letter-spacing:.5px}.landing-badge .badge-icon{font-size:1.25rem}.landing-title{font-size:3.5rem;font-weight:800;color:#000;margin-bottom:1rem;line-height:1.1;background:linear-gradient(135deg, #C84B31 0%, #DAA520 50%, #4A7C59 100%);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text}.landing-subtitle{font-size:1.125rem;color:#6c757d;margin-bottom:1.5rem;font-weight:500}.landing-intro{font-size:1.25rem;color:#444;line-height:1.8;margin:0 0 2rem 0}.campaign-dates{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;margin-top:1.5rem}.date-item{display:flex;align-items:center;gap:.5rem;background:#fff;padding:1rem 1.5rem;border-radius:1rem;box-shadow:0 4px 6px rgba(0,0,0,.1);border-left:4px solid #c84b31}.date-icon{font-size:1.5rem}.date-content{display:flex;flex-direction:column}.date-label{font-size:.75rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.date-value{font-size:1.125rem;font-weight:700;color:#c84b31}.landing-content{padding:3rem 0 5rem;background:#f9f9f9}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.landing-product{background:#fff;padding:3rem 0}.order-donation-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.module-title{font-size:1.5rem;font-weight:700;color:#000;margin-bottom:1.5rem;text-align:center}.product-showcase{text-align:center}.product-name{font-size:2.25rem;font-weight:700;color:#000;margin-bottom:1.5rem}.product-images{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:2rem;flex-wrap:wrap}.product-image-main{position:relative;flex:1 1 300px;max-width:450px}.product-image{width:100%;height:auto;border-radius:1.5rem;box-shadow:0 20px 60px rgba(0,0,0,.15);position:relative;z-index:1;transition:transform .4s ease}.product-image:hover{transform:scale(1.02) translateY(-5px)}.product-image-secondary{flex:0 0 auto}.product-image-small{width:150px;height:auto;border-radius:1rem;box-shadow:0 10px 15px rgba(0,0,0,.1);transition:transform .3s ease}.product-image-small:hover{transform:scale(1.05)}.product-specs{display:flex;justify-content:center;gap:2rem;margin-bottom:1.5rem;flex-wrap:wrap}.spec-item{display:flex;align-items:center;gap:.5rem;background:#fff;padding:.5rem 1rem;border-radius:9999px;box-shadow:0 1px 2px rgba(0,0,0,.05)}.spec-icon{font-size:1.25rem}.spec-text{font-weight:500;color:#444}.product-scores{display:flex;justify-content:center;gap:1rem;margin-bottom:1.5rem}.score-badge{height:50px;width:auto;object-fit:contain}.product-image-container{position:relative;margin-bottom:2rem;display:inline-block}.product-image-placeholder{width:100%;max-width:400px;height:350px;background:linear-gradient(135deg, #f0f0f0 0%, #e0e0e0 100%);border-radius:1.5rem;display:flex;align-items:center;justify-content:center;color:#6c757d}.product-image-glow{position:absolute;top:20%;left:50%;transform:translateX(-50%);width:80%;height:60%;background:linear-gradient(135deg, rgba(200, 75, 49, 0.2) 0%, rgba(74, 124, 89, 0.2) 100%);filter:blur(40px);border-radius:50%;z-index:0}.product-description{background:#fff;border-radius:1rem;padding:2rem;text-align:left;box-shadow:0 1px 2px rgba(0,0,0,.05);border:1px solid rgba(0,0,0,.05);font-size:1rem;line-height:1.8;color:#444}.product-description p{margin-bottom:1rem}.product-description p:last-child{margin-bottom:0}.product-description ul,.product-description ol{margin:1rem 0;padding-left:2rem}.product-description li{margin-bottom:.5rem}.product-details{margin-top:2rem;text-align:left}.product-detail-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;color:#444;font-size:1rem}.product-detail-item .detail-icon{font-size:1.25rem}.order-section{display:flex;flex-direction:column;gap:2rem}.order-module{background:#fff;border-radius:1.5rem;padding:2rem;box-shadow:0 15px 50px rgba(0,0,0,.1);border:2px solid #e07b5f;position:sticky;top:100px}.order-header{text-align:center;padding-bottom:1.5rem;border-bottom:1px solid #f0f0f0;margin-bottom:1.5rem}.order-label{display:block;font-size:.875rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.order-price{font-size:3rem;font-weight:800;color:#c84b31;line-height:1;margin-bottom:.25rem}.order-tax{font-size:.875rem;color:#6c757d}.order-quantity{text-align:center;margin-bottom:1.5rem}.quantity-label{display:block;font-size:.875rem;color:#6c757d;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.5px}.quantity-controls{display:inline-flex;align-items:center;gap:.5rem;background:#f9f9f9;padding:.25rem;border-radius:9999px}.qty-btn{width:48px;height:48px;border-radius:9999px;border:none;background:#fff;color:#c84b31;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px rgba(0,0,0,.05)}.qty-btn:hover:not(:disabled){background:#c84b31;color:#fff;transform:scale(1.05)}.qty-btn:disabled{opacity:.4;cursor:not-allowed}.qty-input{width:70px;height:48px;text-align:center;font-size:1.5rem;font-weight:700;border:none;background:rgba(0,0,0,0);color:#000}.qty-input:focus{outline:none}.qty-input::-webkit-outer-spin-button,.qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qty-input{-moz-appearance:textfield}.quantity-max{display:block;font-size:.75rem;color:#6c757d;margin-top:.5rem}.order-total{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:#fff8f0;border-radius:1rem;margin-bottom:1.5rem}.total-label{font-size:1rem;color:#444;font-weight:600}.total-price{font-size:1.5rem;font-weight:800;color:#c84b31}.order-button{width:100%;padding:1.125rem 2rem;font-size:1.125rem;font-weight:700;border-radius:9999px;background:linear-gradient(135deg, #C84B31 0%, #4A7C59 100%);border:none;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 15px rgba(200,75,49,.3)}.order-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px rgba(200,75,49,.4)}.order-button:active:not(:disabled){transform:translateY(0)}.order-button:disabled{opacity:.7;cursor:not-allowed}.order-success{margin-top:1.5rem;padding:1.5rem;background:linear-gradient(135deg, #E8F5E9 0%, #C8E6C9 100%);border-radius:1rem;display:flex;align-items:center;gap:1rem}.order-success svg{color:#4a7c59;flex-shrink:0}.order-success .success-text strong{display:block;color:#2e5338;margin-bottom:.25rem}.order-success .success-text a{color:#2e5338;font-weight:600;text-decoration:none}.order-success .success-text a:hover{text-decoration:underline}.donation-module{background:linear-gradient(135deg, #FAF3E0 0%, #FFF8F0 100%);border-radius:1.5rem;padding:2rem;border:2px dashed #6b9b7a}.donation-header{text-align:center;margin-bottom:1.5rem}.donation-title{font-size:1.5rem;font-weight:700;color:#2e5338;margin-bottom:.5rem}.donation-description{font-size:.95rem;color:#444;line-height:1.6;margin:0}.donation-presets{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem}.preset-btn{padding:.5rem 1.5rem;border-radius:9999px;border:2px solid #4a7c59;background:#fff;color:#4a7c59;font-weight:600;cursor:pointer;transition:all .2s}.preset-btn:hover{background:#6b9b7a;color:#fff;border-color:#6b9b7a}.preset-btn.active{background:#4a7c59;color:#fff;border-color:#4a7c59}.donation-custom{margin-bottom:1.5rem}.custom-label{display:block;font-size:.875rem;color:#6c757d;margin-bottom:.5rem;text-align:center}.custom-input-wrapper{display:flex;align-items:center;background:#fff;border-radius:1rem;padding:.5rem 1rem;border:2px solid #e0e0e0;max-width:200px;margin:0 auto}.custom-input-wrapper:focus-within{border-color:#4a7c59}.currency-symbol{font-size:1.25rem;font-weight:700;color:#6c757d;margin-right:.5rem}.custom-input{flex:1;border:none;background:rgba(0,0,0,0);font-size:1.25rem;font-weight:700;color:#000;text-align:center}.custom-input:focus{outline:none}.custom-input::placeholder{color:#ccc}.custom-input::-webkit-outer-spin-button,.custom-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.custom-input{-moz-appearance:textfield}.validation-error{display:block;color:#e74c3c;font-size:.875rem;text-align:center;margin-top:.5rem}.donation-button{width:100%;padding:1rem 2rem;font-size:1rem;font-weight:700;border-radius:9999px;background:linear-gradient(135deg, #4A7C59 0%, #2E5338 100%);border:none;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 15px rgba(74,124,89,.3)}.donation-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px rgba(74,124,89,.4)}.donation-button:disabled{opacity:.5;cursor:not-allowed}.donation-success{margin-top:1.5rem;padding:1rem;background:linear-gradient(135deg, #E8F5E9 0%, #C8E6C9 100%);border-radius:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem;color:#2e5338;font-weight:600}.donation-success svg{color:#4a7c59}.landing-tagline{background:linear-gradient(135deg, #C84B31 0%, #DAA520 50%, #4A7C59 100%);padding:2rem 0;text-align:center}.tagline-text{font-size:1.25rem;font-weight:600;color:#fff;margin:0;font-style:italic}@media(max-width: 991px){.content-grid{grid-template-columns:1fr;gap:2rem;max-width:600px;margin:0 auto}.order-donation-grid{grid-template-columns:1fr;gap:2rem;max-width:500px;margin:0 auto}.order-module{position:static}}@media(max-width: 768px){.landing-hero{padding:3rem 0 4rem}.landing-title{font-size:2.5rem}.landing-intro{font-size:1.125rem}.product-name{font-size:1.75rem}.product-image{max-width:350px}.product-image-placeholder{max-width:350px;height:300px}.order-price{font-size:2.5rem}.order-module{padding:1.5rem}}@media(max-width: 576px){.landing-hero{padding:2rem 0 3rem}.hero-logos{padding:.5rem;margin-bottom:2rem}.hero-logo{height:70px}.landing-badge{font-size:.75rem;padding:.25rem 1rem}.landing-title{font-size:2rem}.landing-intro{font-size:1rem;line-height:1.7}.landing-content{padding:2rem 0 3rem}.content-grid{gap:1.5rem}.order-donation-grid{gap:1.5rem}.product-name{font-size:1.5rem;margin-bottom:1.5rem}.product-image{max-width:100%}.product-image-placeholder{max-width:100%;height:240px}.product-description{padding:1.5rem;font-size:.9375rem}.order-module{padding:1rem;border-radius:1rem}.order-price{font-size:2.25rem}.qty-btn{width:42px;height:42px}.qty-input{width:60px;height:42px;font-size:1.25rem}.order-total{padding:1rem}.total-price{font-size:1.25rem}.order-button{padding:1rem 1.5rem;font-size:1rem}.order-success{padding:1rem;flex-direction:column;text-align:center}}@media(max-width: 768px){.hero-title{font-size:1.75rem}.hero-section-home{padding:3rem 0 3rem}.hero-title-home{font-size:2rem}.hero-subtitle-home{font-size:1rem}.hero-buttons{flex-direction:column;align-items:center}.hero-buttons .btn{width:100%;max-width:280px}.cookie-float{font-size:2rem}.cookie-float.cookie-1,.cookie-float.cookie-2,.cookie-float.cookie-3,.cookie-float.cookie-4{font-size:1.5rem}.usp-section{padding:2rem 0}.usp-card{padding:1rem}.usp-card .usp-icon{font-size:2rem}.usp-card h3{font-size:.875rem}.usp-card p{font-size:.75rem}.cta-card{padding:1.5rem;text-align:center;justify-content:center}.cta-card .cta-content h2{font-size:1.5rem}.cta-card .cta-content p{font-size:1rem}.section-title{font-size:1.5rem}.challenges-title{font-size:1.75rem}.total-progress-card{flex-direction:column;text-align:center}.total-progress-card .progress-icon{font-size:3rem}.total-progress-card .progress-number{font-size:2.5rem}.total-progress-card .progress-label{font-size:1.25rem}.goal-card{flex-direction:column;text-align:center}.goal-card .goal-icon{justify-content:center}.motivation-section .motivation-cards{gap:1rem}.motivation-section .motivation-card{min-width:120px;padding:1rem}.motivation-section .motivation-card .motivation-emoji{font-size:2rem}.personal-progress-card .progress-stat .stat-value{font-size:1.5rem}.leaderboard-entry{padding:.75rem 1rem}.leaderboard-entry .rank{font-size:1rem;min-width:1.5rem}.leaderboard-entry .entry-avatar{width:32px;height:32px;font-size:.75rem}.leaderboard-entry .entry-score{font-size:.875rem}.social-share-buttons .share-btn{width:32px;height:32px}}.product-ended-badge{position:absolute;top:16px;right:16px;background:linear-gradient(135deg, #C84B31, #A73919);color:#fff;padding:6px 16px;border-radius:20px;font-size:.85rem;font-weight:600;letter-spacing:.5px;z-index:2;box-shadow:0 2px 8px rgba(200,75,49,.3)}.product-image-main{position:relative}.event-ended-section{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg, #FFF8F0, #FFF0E6);border-radius:16px;border:1px solid #ffe0cc;max-width:640px;margin:0 auto}.event-ended-section .event-ended-icon{font-size:3rem;margin-bottom:1rem}.event-ended-section h2{color:#c84b31;font-size:1.5rem;font-weight:700;margin-bottom:1rem}.event-ended-section p{color:#666;font-size:1rem;line-height:1.6;margin-bottom:.5rem}.event-ended-section .event-ended-thanks{color:#c84b31;font-size:1.15rem;font-weight:600;margin-top:1rem}.event-ended-banner{display:flex;align-items:center;gap:12px;padding:14px 20px;background:linear-gradient(135deg, #FFF8F0, #FFF0E6);border:1px solid #ffe0cc;border-radius:12px;margin-bottom:1.5rem;font-size:.95rem;color:#8b4513}.event-ended-banner .event-ended-banner-icon{font-size:1.3rem}.row.event-ended>div{position:relative}.row.event-ended>div::after{content:"Afgelopen";position:absolute;top:24px;right:24px;background:linear-gradient(135deg, #C84B31, #A73919);color:#fff;padding:4px 12px;border-radius:16px;font-size:.75rem;font-weight:600;letter-spacing:.5px;z-index:2;box-shadow:0 2px 6px rgba(200,75,49,.25);pointer-events:none}.reg-section{--reg-bg: #F5EFE0;--reg-paper: #FFFFFF;--reg-display: #E84B1F;--reg-display-2: #C03914;--reg-ink: #1A1747;--reg-ink-soft: #4B4880;--reg-accent: #1FA89E;--reg-cloud: #A89EE0;--reg-strip-h: 22px;position:relative;background:var(--reg-bg);color:var(--reg-ink);font-family:var(--kh-font-body, "DM Sans", system-ui, sans-serif);overflow-x:clip;isolation:isolate;padding-top:calc(var(--reg-strip-h) + .25rem);padding-bottom:calc(var(--reg-strip-h) + .25rem)}.reg-crane-rig{position:absolute;top:var(--reg-strip-h);bottom:var(--reg-strip-h);left:0;right:0;z-index:0;pointer-events:none;display:none}.reg-crane__tower{width:100%;height:100%;color:var(--reg-ink)}.reg-crane__load{position:absolute;top:50.7%;left:18.33%;transform:translateX(-50%);width:clamp(240px,24vw,380px);display:block}.reg-chalkboard{--chalk-frame: #6b4322;--chalk-frame-dark: #3d2510;--chalk-board: #1f3b2b;--chalk-ink: #f4f0e6;--chalk-ink-soft: rgba(244, 240, 230, 0.78)}.reg-crane__load.reg-chalkboard{padding-top:14px;transform:translateX(-50%) rotate(-1.2deg);transform-origin:top center}.reg-chalkboard__cord{position:absolute;top:0;width:2px;height:14px;background:var(--reg-ink)}.reg-chalkboard__cord--left{left:22%}.reg-chalkboard__cord--right{right:22%}.reg-chalkboard__board{position:relative;border:9px solid var(--chalk-frame);border-radius:4px;background:radial-gradient(ellipse at 25% 20%, rgba(255, 255, 255, 0.05), transparent 55%),radial-gradient(ellipse at 80% 75%, rgba(255, 255, 255, 0.04), transparent 55%),var(--chalk-board);box-shadow:inset 0 0 0 2px var(--chalk-frame-dark),inset 0 0 18px rgba(0,0,0,.35),4px 4px 0 rgba(0,0,0,.18);color:var(--chalk-ink);padding:.85rem 1rem 1rem;text-shadow:0 0 1px rgba(244,240,230,.35)}.reg-chalkboard__title{text-align:center;font-family:"Archivo Black","DM Sans",system-ui,sans-serif;font-weight:900;text-transform:uppercase;font-size:clamp(1.05rem,1.7vw,1.35rem);letter-spacing:.1em;margin-bottom:.55rem;padding-bottom:.45rem;border-bottom:1px dashed rgba(244,240,230,.45)}.reg-chalkboard__list{list-style:none;margin:0;padding:0;font-family:"DM Sans",system-ui,sans-serif;font-weight:500;font-size:clamp(.72rem,.95vw,.85rem);line-height:1.3;color:var(--chalk-ink-soft)}.reg-chalkboard__list li{position:relative;padding-left:.95rem;margin-bottom:.4rem}.reg-chalkboard__list li:last-child{margin-bottom:0}.reg-chalkboard__list li::before{content:"•";position:absolute;left:.05rem;color:var(--chalk-ink);font-weight:700}@media(min-width: 1024px){.reg-crane-rig{display:block}.reg-hero{padding-top:clamp(4.5rem,7vw,6.5rem)}}.reg-section::before,.reg-section::after{content:"";position:absolute;left:0;right:0;height:var(--reg-strip-h);z-index:0;pointer-events:none;background:linear-gradient(var(--reg-accent), var(--reg-accent)) top/100% 6px no-repeat,repeating-linear-gradient(90deg, var(--reg-accent) 0 24px, transparent 24px 32px) 0 9px/100% 13px no-repeat}.reg-section::before{top:0}.reg-section::after{bottom:0;transform:scaleY(-1)}@media(max-width: 480px){.reg-section{--reg-strip-h: 16px}.reg-section::before,.reg-section::after{background:linear-gradient(var(--reg-accent), var(--reg-accent)) top/100% 5px no-repeat,repeating-linear-gradient(90deg, var(--reg-accent) 0 18px, transparent 18px 26px) 0 7px/100% 9px no-repeat}}.reg-hero{position:relative;z-index:1;padding:clamp(4.5rem,7vw,6.5rem) 0 clamp(.5rem,1.5vw,1rem)}.reg-hero__inner{position:relative;z-index:2;max-width:64rem;text-align:center;margin:0 auto}.reg-eyebrow{display:inline-block;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:var(--reg-ink);font-size:clamp(.7rem,1.1vw,.85rem);margin-bottom:.4rem}.reg-headline{font-family:"Archivo Black","DM Sans",system-ui,sans-serif;font-weight:900;text-transform:uppercase;color:var(--reg-display);font-size:clamp(1.6rem,4.5vw,3rem);line-height:.95;letter-spacing:-0.01em;margin:0 0 .5rem;text-wrap:balance}.reg-meta{display:inline-block;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--reg-ink);font-size:clamp(.8rem,1.2vw,.95rem);margin:0 0 .4rem;max-width:60ch;text-wrap:balance}@media(max-width: 480px){.reg-meta{letter-spacing:.04em}}.reg-meta span{color:var(--reg-ink-soft)}.reg-intro{color:var(--reg-ink);line-height:1.45;max-width:60ch;margin:0 auto .4rem;font-size:.92rem}.reg-capacity{display:inline-block;margin-top:.4rem;padding:.35rem .85rem;border:2px solid var(--reg-ink);background:var(--reg-paper);color:var(--reg-ink);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem}.reg-capacity--full{background:var(--reg-display);color:var(--reg-paper);border-color:var(--reg-display)}.reg-hero-art{display:block;width:min(560px,80%);height:auto;margin:1.5rem auto .5rem;color:var(--reg-accent)}.reg-form{position:relative;z-index:1;padding:clamp(1.5rem,4vw,1rem) 0 clamp(3rem,6vw,5rem)}.reg-form>.container{padding-right:max(.75rem,4vw);padding-left:max(.75rem,4vw)}.reg-card{position:relative;background:var(--reg-paper);border:2px solid var(--reg-ink);border-radius:0;padding:clamp(1.25rem,4vw,2.75rem);box-shadow:10px 10px 0 var(--reg-accent);max-width:56rem;margin:0 auto}.reg-fieldset{border:0;padding:0;margin:0 0 2.25rem}.reg-fieldset:last-of-type{margin-bottom:1.5rem}.reg-fieldset__legend{width:100%;margin:0 0 1.5rem;padding:0;border:0}.reg-beam{display:flex;align-items:stretch}.reg-beam__label{background:var(--reg-accent);color:var(--reg-paper);font-family:"Archivo Black","DM Sans",system-ui,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.04em;font-size:clamp(1rem,2vw,1.3rem);padding:.55rem 1.1rem;line-height:1.2;flex:0 0 auto}.reg-beam__planks{flex:1;align-self:end;height:18px;background:linear-gradient(var(--reg-accent), var(--reg-accent)) top/100% 5px no-repeat,repeating-linear-gradient(90deg, var(--reg-accent) 0 22px, transparent 22px 30px) 0 7px/100% 11px no-repeat}.reg-card .form-label{font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;color:var(--reg-ink-soft);margin-bottom:.4rem}.reg-card .form-label .text-danger{color:var(--reg-display) !important}.reg-card .form-control,.reg-card input.form-control{border-radius:0;border:2px solid var(--reg-ink);background:var(--reg-paper);color:var(--reg-ink);font-weight:500;padding:.55rem .75rem;box-shadow:none;transition:border-color .15s ease}.reg-card .form-control:focus,.reg-card input.form-control:focus{border-color:var(--reg-display);box-shadow:0 0 0 3px rgba(232,75,31,.18);outline:none}.reg-pricing-list{color:var(--reg-ink);display:flex;flex-direction:column;gap:.75rem}.reg-pricing-row{display:flex;flex-direction:column;gap:.85rem;padding:1rem;border:2px solid var(--reg-ink);background:var(--reg-paper)}.reg-pricing-row__info{display:flex;flex-direction:column;gap:.15rem}.reg-pricing-row__name{font-weight:800;font-size:1rem;line-height:1.2;text-wrap:balance}.reg-pricing-row__age{font-size:.78rem;color:var(--reg-ink-soft);font-weight:600;letter-spacing:.02em}.reg-pricing-row__price{font-weight:700;font-size:.92rem;margin-top:.15rem}.reg-pricing-row__price span{color:var(--reg-ink-soft);font-weight:500;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin-left:.25rem}.reg-pricing-row__controls{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.reg-pricing-row__subtotal{display:flex;flex-direction:column;align-items:flex-end;line-height:1.1;gap:.15rem;margin-left:auto}.reg-pricing-row__subtotal-label{font-size:.7rem;color:var(--reg-ink-soft);font-weight:700;text-transform:uppercase;letter-spacing:.14em}.reg-pricing-row__subtotal-value{font-family:"Archivo Black","DM Sans",system-ui,sans-serif;font-weight:900;font-size:1.1rem}.reg-qty{display:inline-flex;align-items:stretch;border:2px solid var(--reg-ink);background:var(--reg-paper);height:48px}.reg-qty__btn{appearance:none;background:var(--reg-paper);color:var(--reg-ink);border:0;width:44px;min-width:44px;font-family:"Archivo Black","DM Sans",system-ui,sans-serif;font-size:1.4rem;line-height:1;font-weight:900;cursor:pointer;transition:background-color .15s ease,color .15s ease}.reg-qty__btn:hover:not(:disabled),.reg-qty__btn:focus-visible:not(:disabled){background:var(--reg-ink);color:var(--reg-paper)}.reg-qty__btn:focus-visible{outline:3px solid rgba(232,75,31,.35);outline-offset:-3px}.reg-qty__btn:disabled{opacity:.35;cursor:not-allowed}.reg-qty__input.form-control{width:64px;border:0;border-left:2px solid var(--reg-ink);border-right:2px solid var(--reg-ink);border-radius:0;text-align:center;font-weight:800;font-size:1.05rem;padding:0 .25rem;background:var(--reg-paper);appearance:textfield;-moz-appearance:textfield}.reg-qty__input.form-control::-webkit-outer-spin-button,.reg-qty__input.form-control::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.reg-qty__input.form-control:focus{box-shadow:inset 0 0 0 3px rgba(232,75,31,.18);outline:none}.reg-pricing-total{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:1rem;margin-top:.5rem;border:2px solid var(--reg-ink);background:var(--reg-ink);color:var(--reg-paper)}.reg-pricing-total__label{font-weight:700;text-transform:uppercase;letter-spacing:.18em;font-size:.85rem}.reg-pricing-total__value{font-family:"Archivo Black","DM Sans",system-ui,sans-serif;font-weight:900;font-size:clamp(1.3rem,3vw,1.6rem);letter-spacing:-0.01em}@media(min-width: 640px){.reg-pricing-row{flex-direction:row;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.1rem 1.25rem}.reg-pricing-row__info{flex:1 1 auto;min-width:0}.reg-pricing-row__controls{flex:0 0 auto;flex-wrap:nowrap}.reg-pricing-row__subtotal{min-width:6rem}}.reg-submit{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;padding-top:1.75rem;margin-top:1.5rem;position:relative;border:0}.reg-submit::before{content:"";position:absolute;left:0;right:0;top:0;height:16px;background:linear-gradient(var(--reg-accent), var(--reg-accent)) top/100% 5px no-repeat,repeating-linear-gradient(90deg, var(--reg-accent) 0 18px, transparent 18px 26px) 0 7px/100% 9px no-repeat}.reg-submit__total{display:flex;flex-direction:column;line-height:1;gap:.4rem}.reg-submit__total-label{font-weight:700;text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;color:var(--reg-ink-soft)}.reg-submit__amount{font-family:"Archivo Black","DM Sans",system-ui,sans-serif;font-weight:900;font-size:clamp(2.2rem,5.5vw,3.4rem);color:var(--reg-display);line-height:1;letter-spacing:-0.01em}.reg-submit__button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;background:var(--reg-display);color:var(--reg-paper);border:2px solid var(--reg-ink);border-radius:0;font-family:"Archivo Black","DM Sans",system-ui,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.05em;font-size:clamp(1rem,1.7vw,1.15rem);padding:1rem 1.85rem;min-width:240px;box-shadow:6px 6px 0 var(--reg-ink);transition:transform .15s ease,box-shadow .15s ease,background-color .2s ease;cursor:pointer}.reg-submit__button:hover:not(:disabled),.reg-submit__button:focus-visible:not(:disabled){background:var(--reg-display-2);transform:translate(-2px, -2px);box-shadow:8px 8px 0 var(--reg-ink);color:var(--reg-paper)}.reg-submit__button:focus-visible{outline:3px solid rgba(232,75,31,.35);outline-offset:3px}.reg-submit__button:disabled{opacity:.55;cursor:not-allowed;box-shadow:4px 4px 0 var(--reg-ink-soft);transform:none}.reg-submit__button:active:not(:disabled){transform:translate(2px, 2px);box-shadow:2px 2px 0 var(--reg-ink)}@media(max-width: 640px){.reg-card{box-shadow:5px 5px 0 var(--reg-accent)}.reg-submit{gap:1rem}.reg-submit__total{width:100%}.reg-submit__button{width:100%;min-width:0}.reg-beam__planks{height:12px;background-size:100% 4px,100% 7px}}@media(prefers-reduced-motion: reduce){.reg-submit__button,.reg-submit__button:hover,.reg-submit__button:active{transition:none;transform:none}}.reg-menu-mobile{position:relative;z-index:1;margin-top:clamp(.5rem,2vw,1rem)}.reg-menu-mobile>.container{padding-right:max(.75rem,4vw);padding-left:max(.75rem,4vw)}@media(min-width: 1024px){.reg-menu-mobile{display:none}}.reg-menu-mobile__toggle{display:flex;align-items:stretch;width:100%;min-height:48px;padding:0;border:0;background:rgba(0,0,0,0);cursor:pointer;font:inherit;color:inherit;text-align:left}.reg-menu-mobile__toggle:focus-visible{outline:3px solid rgba(232,75,31,.35);outline-offset:3px}.reg-menu-mobile__label{background:var(--reg-accent);color:var(--reg-paper);font-family:"Archivo Black","DM Sans",system-ui,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.04em;font-size:clamp(.95rem,2.5vw,1.1rem);padding:.65rem 1rem;line-height:1.2;display:inline-flex;align-items:center;gap:.55rem;flex:0 0 auto}.reg-menu-mobile__icon{flex:0 0 auto}.reg-menu-mobile__chevron{flex:0 0 auto;margin-left:.35rem;transition:transform 200ms ease}.reg-menu-mobile__toggle[aria-expanded=true] .reg-menu-mobile__chevron{transform:rotate(180deg)}.reg-menu-mobile__planks{flex:1;align-self:end;height:18px;background:linear-gradient(var(--reg-accent), var(--reg-accent)) top/100% 5px no-repeat,repeating-linear-gradient(90deg, var(--reg-accent) 0 22px, transparent 22px 30px) 0 7px/100% 11px no-repeat}.reg-menu-mobile__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows 280ms ease}.reg-menu-mobile__panel.is-open{grid-template-rows:1fr}.reg-menu-mobile__panel-inner{overflow:hidden;min-height:0;padding-top:.75rem}.reg-chalkboard--inline{transform:rotate(-0.6deg);transform-origin:top center}.reg-chalkboard--inline .reg-chalkboard__board{box-shadow:inset 0 0 0 2px var(--chalk-frame-dark),inset 0 0 18px rgba(0,0,0,.35)}@media(prefers-reduced-motion: reduce){.reg-menu-mobile__chevron,.reg-menu-mobile__panel{transition:none}}
