:root{--hajk-color-bg: #f7f5f0;--hajk-color-surface: #ffffff;--hajk-color-surface-muted: #efede6;--hajk-color-text: #1d2621;--hajk-color-text-muted: #4f5c54;--hajk-color-border: #d5d9d2;--hajk-color-border-strong: #8a948d;--hajk-color-accent: #2c5a43;--hajk-color-accent-hover: #224835;--hajk-color-accent-text: #ffffff;--hajk-color-accent-soft: #e2ebe5;--hajk-color-accent-softer: #cddcd3;--hajk-color-focus: #1a5fb4;--hajk-color-error: #a3271d;--hajk-color-error-soft: #fbeceb;--hajk-color-notice: #fff5d6;--hajk-font-body: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--hajk-font-heading: var(--hajk-font-body);--hajk-font-size-sm: .875rem;--hajk-font-size-md: 1rem;--hajk-font-size-lg: 1.25rem;--hajk-font-size-xl: clamp(1.6rem, 1.2rem + 1.8vw, 2.25rem);--hajk-line-height: 1.5;--hajk-font-weight-bold: 650;--hajk-space-1: .25rem;--hajk-space-2: .5rem;--hajk-space-3: .75rem;--hajk-space-4: 1rem;--hajk-space-6: 1.5rem;--hajk-space-8: 2rem;--hajk-radius-sm: 6px;--hajk-radius-md: 10px;--hajk-shadow-card: 0 1px 2px rgba(29, 38, 33, .06), 0 2px 8px rgba(29, 38, 33, .05);--hajk-content-width: 72rem;--hajk-tap-target: 2.75rem;--hajk-image-hero: none}*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:var(--hajk-color-bg);color:var(--hajk-color-text);font-family:var(--hajk-font-body);font-size:var(--hajk-font-size-md);line-height:var(--hajk-line-height)}h1,h2,h3{font-family:var(--hajk-font-heading);line-height:1.2}h1{font-size:var(--hajk-font-size-xl);margin:0 0 var(--hajk-space-2)}h2{font-size:var(--hajk-font-size-lg);margin:0 0 var(--hajk-space-4)}a{color:var(--hajk-color-accent);text-underline-offset:.15em}a:hover{color:var(--hajk-color-accent-hover)}:focus-visible{outline:3px solid var(--hajk-color-focus);outline-offset:2px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--hajk-space-4);top:-4rem;z-index:10;background:var(--hajk-color-surface);padding:var(--hajk-space-2) var(--hajk-space-4);border-radius:var(--hajk-radius-sm)}.skip-link:focus{top:var(--hajk-space-2)}.site-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--hajk-space-2) var(--hajk-space-4);padding:var(--hajk-space-3) var(--hajk-space-4);border-bottom:1px solid var(--hajk-color-border);background:var(--hajk-color-surface)}.site-header .brand{font-weight:var(--hajk-font-weight-bold);font-size:var(--hajk-font-size-lg);text-decoration:none;color:var(--hajk-color-text)}.site-header nav{display:flex;gap:var(--hajk-space-1)}.site-header nav a{display:inline-flex;align-items:center;min-height:var(--hajk-tap-target);padding:0 var(--hajk-space-2);border-radius:var(--hajk-radius-sm)}.site-header nav a.current{font-weight:var(--hajk-font-weight-bold);text-decoration:none;color:var(--hajk-color-text);background:var(--hajk-color-surface-muted)}.booking{max-width:var(--hajk-content-width);margin:0 auto;padding:var(--hajk-space-4)}.product-header{padding:var(--hajk-space-6) 0 var(--hajk-space-4);background-image:var(--hajk-image-hero);background-size:cover;background-position:center}.camp-name{margin:0;color:var(--hajk-color-text-muted);font-weight:var(--hajk-font-weight-bold)}.intro{margin:0;max-width:40rem;color:var(--hajk-color-text-muted)}.progress{display:flex;flex-wrap:wrap;gap:var(--hajk-space-2);list-style:none;padding:0;margin:0 0 var(--hajk-space-4);counter-reset:step}.progress li{counter-increment:step;display:flex;align-items:center;gap:var(--hajk-space-2);padding:var(--hajk-space-1) var(--hajk-space-3);border-radius:999px;background:var(--hajk-color-surface-muted);color:var(--hajk-color-text-muted);font-size:var(--hajk-font-size-sm)}.progress li:before{content:counter(step);font-weight:var(--hajk-font-weight-bold)}.progress li.done{background:var(--hajk-color-accent-soft);color:var(--hajk-color-text)}.progress li.done:before{content:"\2713"}.progress li.current{background:var(--hajk-color-accent);color:var(--hajk-color-accent-text)}.booking-layout{display:grid;gap:var(--hajk-space-4);grid-template-columns:minmax(0,1fr)}@media(min-width:60rem){.booking-layout{grid-template-columns:minmax(0,2fr) minmax(18rem,1fr);grid-template-areas:"party price" "dates price" "details price";align-items:start}.step-party{grid-area:party}.step-dates{grid-area:dates}.step-details{grid-area:details}.step-price{grid-area:price;align-self:start;position:sticky;top:var(--hajk-space-4)}}.step{background:var(--hajk-color-surface);border:1px solid var(--hajk-color-border);border-radius:var(--hajk-radius-md);box-shadow:var(--hajk-shadow-card);padding:var(--hajk-space-4);min-width:0}.step-heading{display:flex;align-items:center;gap:var(--hajk-space-3)}.step-number{display:inline-grid;place-items:center;width:2rem;height:2rem;flex:none;border-radius:50%;background:var(--hajk-color-accent);color:var(--hajk-color-accent-text);font-size:var(--hajk-font-size-md)}.hint{color:var(--hajk-color-text-muted);margin:0 0 var(--hajk-space-3)}.notice{background:var(--hajk-color-notice);padding:var(--hajk-space-3);border-radius:var(--hajk-radius-sm);margin:var(--hajk-space-3) 0}.error{color:var(--hajk-color-error);margin:var(--hajk-space-2) 0;font-weight:500}input,select,button{font:inherit}input,select{min-height:var(--hajk-tap-target);padding:var(--hajk-space-2) var(--hajk-space-3);border:1px solid var(--hajk-color-border-strong);border-radius:var(--hajk-radius-sm);background:var(--hajk-color-surface);color:var(--hajk-color-text)}[aria-invalid=true]{border-color:var(--hajk-color-error);box-shadow:0 0 0 1px var(--hajk-color-error)}button{min-height:var(--hajk-tap-target);padding:var(--hajk-space-2) var(--hajk-space-4);border-radius:var(--hajk-radius-sm);border:1px solid var(--hajk-color-border-strong);background:var(--hajk-color-surface);color:var(--hajk-color-text);cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button.primary{width:100%;background:var(--hajk-color-accent);color:var(--hajk-color-accent-text);border-color:var(--hajk-color-accent);font-weight:var(--hajk-font-weight-bold);font-size:var(--hajk-font-size-lg)}button.primary:hover:not(:disabled){background:var(--hajk-color-accent-hover)}button.link{border:0;background:none;color:var(--hajk-color-accent);text-decoration:underline;padding:0 var(--hajk-space-1)}.field,.stepper{display:flex;flex-direction:column;gap:var(--hajk-space-1);margin-bottom:var(--hajk-space-3)}.field label,.stepper label,.field>span{font-weight:500}.stepper-controls{display:flex;align-items:center;gap:var(--hajk-space-2)}.stepper-controls input{width:4.5rem;text-align:center}.stepper-button{width:var(--hajk-tap-target);padding:0;font-size:var(--hajk-font-size-lg);line-height:1}.tents{display:grid;gap:var(--hajk-space-4);grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));margin-top:var(--hajk-space-2)}.tent{border:1px solid var(--hajk-color-border);border-radius:var(--hajk-radius-md);padding:var(--hajk-space-3) var(--hajk-space-4);margin:0}.tent legend{font-weight:var(--hajk-font-weight-bold);padding:0 var(--hajk-space-1)}.month-nav{display:flex;gap:var(--hajk-space-2);align-items:center;flex-wrap:wrap;margin-bottom:var(--hajk-space-2)}.month-button{width:var(--hajk-tap-target);padding:0;font-size:var(--hajk-font-size-lg)}.month-nav .hint{margin:0}.legend{display:flex;flex-wrap:wrap;gap:var(--hajk-space-1) var(--hajk-space-4);list-style:none;padding:0;margin:0 0 var(--hajk-space-3);font-size:var(--hajk-font-size-sm);color:var(--hajk-color-text-muted)}.legend li{display:flex;align-items:center;gap:var(--hajk-space-2)}.swatch{width:1rem;height:1rem;border-radius:4px;border:1px solid var(--hajk-color-border)}.swatch-available{background:var(--hajk-color-accent-soft)}.swatch-selected{background:var(--hajk-color-accent)}.swatch-unavailable{background:var(--hajk-color-surface)}.months{display:grid;gap:var(--hajk-space-6);grid-template-columns:repeat(auto-fit,minmax(17rem,1fr))}.month{border-collapse:collapse;width:100%;table-layout:fixed}.month caption{font-weight:var(--hajk-font-weight-bold);text-transform:capitalize;padding-bottom:var(--hajk-space-2)}.month th{font-size:var(--hajk-font-size-sm);font-weight:500;color:var(--hajk-color-text-muted);text-transform:capitalize;padding-bottom:var(--hajk-space-1)}.month td{padding:1px}.month[aria-busy=true]{opacity:.6}.day{width:100%;min-height:var(--hajk-tap-target);padding:var(--hajk-space-1) 0;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--hajk-radius-sm);border:1px solid transparent;background:var(--hajk-color-accent-soft)}.day:hover:not(:disabled){border-color:var(--hajk-color-accent)}.day:disabled{background:transparent;color:var(--hajk-color-text-muted);opacity:.55;text-decoration:line-through}.day.in-stay{background:var(--hajk-color-accent-softer)}.day.edge{background:var(--hajk-color-accent);color:var(--hajk-color-accent-text)}.day-number{font-weight:var(--hajk-font-weight-bold)}.day-price{font-size:.65rem;white-space:nowrap}@media(max-width:26rem){.day-price{display:none}}.stay-text{font-weight:500;margin:0 0 var(--hajk-space-3)}.price{width:100%;border-collapse:collapse}.price th{text-align:left;font-weight:400;padding:var(--hajk-space-1) var(--hajk-space-2) var(--hajk-space-1) 0}.price td{text-align:right;white-space:nowrap}.price .total th,.price .total td{font-weight:var(--hajk-font-weight-bold);border-top:1px solid var(--hajk-color-border);padding-top:var(--hajk-space-2)}.price .vat th,.price .vat td{color:var(--hajk-color-text-muted);font-size:var(--hajk-font-size-sm)}.codes{margin-top:var(--hajk-space-4);border-top:1px solid var(--hajk-color-border);padding-top:var(--hajk-space-3)}.codes summary{cursor:pointer;color:var(--hajk-color-accent);min-height:var(--hajk-tap-target);display:flex;align-items:center}.code-field{display:flex;gap:var(--hajk-space-2);align-items:flex-end;margin:var(--hajk-space-2) 0}.code-field label{display:flex;flex-direction:column;gap:var(--hajk-space-1);flex:1;min-width:0}.code-field input{width:100%}.code-field button{white-space:nowrap}.applied{margin:var(--hajk-space-1) 0}.fields{display:grid;gap:0 var(--hajk-space-4);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.check{display:flex;gap:var(--hajk-space-3);align-items:flex-start;margin:var(--hajk-space-3) 0}.check input{min-height:0;width:1.25rem;height:1.25rem;margin-top:.15rem;flex:none}.error-summary{border:2px solid var(--hajk-color-error);background:var(--hajk-color-error-soft);border-radius:var(--hajk-radius-sm);padding:var(--hajk-space-3) var(--hajk-space-4);margin-bottom:var(--hajk-space-4)}.error-summary p{margin:0 0 var(--hajk-space-2);font-weight:var(--hajk-font-weight-bold)}.error-summary ul{margin:0;padding-left:var(--hajk-space-6)}.error-summary a{color:var(--hajk-color-error)}.turnstile{margin:var(--hajk-space-4) 0;min-height:65px}.confirmation{max-width:40rem}.confirmation dl{display:grid;grid-template-columns:max-content 1fr;gap:var(--hajk-space-2) var(--hajk-space-4);background:var(--hajk-color-surface);padding:var(--hajk-space-4);border-radius:var(--hajk-radius-md);border:1px solid var(--hajk-color-border)}.confirmation dt{color:var(--hajk-color-text-muted)}.confirmation dd{margin:0;font-weight:var(--hajk-font-weight-bold)}.held-until{font-weight:500}.camp-list{padding-left:var(--hajk-space-6)}.camp-list a{display:inline-flex;min-height:var(--hajk-tap-target);align-items:center}
