.header_container{min-height:120px;contain:layout}.header-with-navigation_header{min-height:120px;contain:layout}@media screen and (max-width:47.99rem){.header-with-navigation_header,.header_container{min-height:140px}}.header-with-navigation_grid{min-height:3.5rem}@media screen and (max-width:47.99rem){.header-with-navigation_grid{min-height:7rem}}.header-with-navigation_logo-svg{width:100%;height:auto;max-width:200px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Arial,sans-serif;color:#333;line-height:1.6}.breadcrumb{background:0 0;padding:20px 0;margin:0;font-size:14px;width:100%}.breadcrumb-list{display:flex;align-items:center;list-style:none;margin:0;padding:0;flex-wrap:wrap}.breadcrumb-item{display:flex;align-items:center}.breadcrumb-item:not(:last-child)::after{content:'>';margin:0 8px;color:#666;font-size:12px}.breadcrumb-link{color:#2c5530;text-decoration:none;transition:color .2s ease}.breadcrumb-link:hover{color:#1e3a21;text-decoration:underline}.breadcrumb-current{color:#666;font-weight:400}.container{min-height:100vh;max-width:var(--d-container-max-width);margin:0 auto;width:100%;padding:20px}.main-card{background:#fff;border-radius:12px;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:40px;min-height:80vh}.main-card{grid-template-columns:minmax(300px,1fr)}@media (min-width:768px){.main-card{grid-template-columns:1fr 1fr}}.left-column{display:flex;flex-direction:column;gap:30px}@media (min-width:768px){.left-column{position:sticky;top:20px;align-self:flex-start;height:fit-content}}.header-graphic{background:linear-gradient(135deg,gold,#ffb347);border-radius:12px;position:relative;overflow:hidden;display:flex;flex-direction:column;aspect-ratio:16/9;min-height:200px}.header-graphic img{width:100%;height:auto;object-fit:cover;display:block}.tab-navigation{display:flex}.tab-button{background:0 0;border:none;padding:15px 25px;font-size:1rem;cursor:pointer;color:#666;border-bottom:3px solid transparent}.tab-button.active{color:var(--button-brand-main);border-bottom-color:var(--button-brand-main);font-weight:700}.tab-button:hover{color:var(--button-brand-hover);background-color:#f8f9fa}.tab-content{flex:1;min-height:200px;contain:layout}.tab-panel{display:none;padding:20px 0;min-height:150px;opacity:0;transition:opacity .2s ease-in-out}.tab-panel.active{display:block;opacity:1}.tab-panel p{margin-bottom:15px;color:#555}.rewards-section{display:flex;align-items:center;gap:8px;margin-top:20px;font-weight:700;color:#2c5530}.paw-icon-small{font-size:1rem}.right-column{display:flex;flex-direction:column;gap:30px}.event-title{font-size:2rem;font-family:var(--font-family-heading);color:var(--c-type-body);font-weight:700}.duration{font-weight:700;color:#2c5530;margin-bottom:10px}.description{color:#555;line-height:1.6}.store-finder{display:flex;flex-direction:column;gap:10px}.store-finder label{font-weight:700;color:#333}.input-group{display:flex;align-items:center;gap:10px}#postcode-input{flex:1;padding:12px 15px;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;background:#fff}#postcode-input:focus{outline:0;border-color:#2c5530}.location-icon{font-size:1.2rem;color:#666}.find-button{background:#2c5530;color:#fff;border:none;padding:12px 20px;border-radius:6px;font-weight:700;cursor:pointer;transition:background-color .3s ease}.find-button:hover{background:#1e3a21}.store-selection{display:flex;flex-direction:column;gap:10px}.store-selection label{font-weight:700;color:#333}.dropdown-container{position:relative}#store-dropdown{width:100%;padding:12px 40px 12px 15px;border:2px solid #e0e0e0;border-radius:6px;background:#fff;font-size:1rem;appearance:none;cursor:pointer}#store-dropdown:focus{outline:0;border-color:#2c5530}.dropdown-arrow{position:absolute;right:15px;top:50%;transform:translateY(-50%);pointer-events:none;color:#666}.availability-section{display:flex;flex-direction:column;gap:20px}.availability-section h3{color:#333;font-size:1.2rem}.month-navigation{display:flex;align-items:center;justify-content:center;gap:20px}.nav-arrow{background:#2c5530;color:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:1.2rem;cursor:pointer;transition:background-color .3s ease}.nav-arrow:hover{background:#1e3a21}.month-year{font-size:1.1rem;font-weight:700;color:#333}.availability-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:15px}.day-column{display:flex;flex-direction:column;gap:10px}.day-column h4{font-size:.9rem;color:#333;text-align:center;margin-bottom:0}.time-slots{display:flex;flex-direction:column;gap:8px}.time-slot{color:var(--button-brand-alt);background-color:var(--button-brand-main);border:none;padding:12px 8px;border-radius:8px;font-size:.85rem;text-align:center;cursor:pointer;transition:all .3s ease;line-height:1.3}.time-slot:hover{background-color:var(--button-brand-hover);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.2)}.time-slot:active{transform:translateY(0)}.time-slot.selected{background:#1e3a21;box-shadow:0 0 0 3px rgba(44,85,48,.3)}@media (max-width:600px){.availability-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:900px){.availability-grid{grid-template-columns:repeat(4,1fr)}}.main-card{grid-template-columns:1fr}@media (min-width:768px){.main-card{grid-template-columns:1fr 1fr}}@media (max-width:768px){.container{padding:10px}.main-card{padding:20px;gap:20px}.workshop-title{font-size:2rem}}.registration-form{display:flex;flex-direction:column;gap:30px;contain:layout}.availability-section{contain:layout}.attendees-container{min-height:100px}.attendee-block{contain:layout}.booking-info-section{background:#f8f9fa;padding:15px;border-radius:8px;border-left:4px solid #2c5530;margin-bottom:20px}.booking-info-section h3{color:#2c5530;font-size:1.1rem;margin-bottom:12px;font-weight:600}.booking-details{display:flex;flex-direction:column;gap:6px}.booking-detail-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0;border-bottom:1px solid #e9ecef;font-size:.9rem}.booking-detail-item:last-of-type{border-bottom:none}.booking-detail-item .label{font-weight:600;color:#495057;min-width:50px;flex-shrink:0}.booking-detail-item .value{color:#2c5530;font-weight:500;flex:1;text-align:right;word-wrap:break-word;overflow-wrap:break-word}.change-date-btn{background:#2c5530;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-weight:700;cursor:pointer;transition:background-color .3s ease;margin-top:10px;align-self:flex-start;font-size:.85rem}.change-date-btn:hover{background:#1e3a21}@media (max-width:480px){.booking-info-section{padding:12px;margin-bottom:15px}.booking-info-section h3{font-size:1rem;margin-bottom:10px}.booking-details{gap:4px}.booking-detail-item{padding:3px 0;font-size:.85rem;flex-direction:column;align-items:flex-start;gap:2px}.booking-detail-item .label{min-width:auto;font-size:.8rem;color:#6c757d}.booking-detail-item .value{text-align:left;font-size:.85rem;width:100%}.change-date-btn{padding:6px 12px;font-size:.8rem;margin-top:8px;width:100%;text-align:center}}.contact-details-section h3,.event-attendees-section h3,.marketing-consent-section h3{color:#2c5530;font-size:1.2rem;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group{position:relative}.form-group.full-width{grid-column:1/-1}.input-container{position:relative}.input-container input{width:100%;padding:16px 20px;border:2px solid #e0e0e0;border-radius:8px;background:#fff;font-size:1rem;transition:all .3s ease;outline:0}.input-container.invalid input{border-color:#dc3545}.input-container.invalid input:focus{border-color:#dc3545;box-shadow:0 0 0 3px rgba(220,53,69,.1)}.input-container.invalid label{color:#dc3545!important}.input-container.valid input{border-color:#28a745}.input-container.valid label{color:#28a745!important}.input-container:not(.invalid):not(.valid) input:focus{border-color:#2c5530;box-shadow:0 0 0 3px rgba(44,85,48,.1)}.input-container input.has-value+label,.input-container input:not(:placeholder-shown)+label,.input-container:not(.invalid):not(.valid) input:focus+label{transform:translateY(-28px) scale(.85);color:#2c5530;background:#fff;padding:0 8px}.input-container label{position:absolute;left:20px;top:16px;color:#666;font-size:1rem;pointer-events:none;transition:all .3s ease;transform-origin:left top}.field-icon{position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:.8rem;color:#666;pointer-events:none}.dots-btn{position:absolute;right:15px;top:50%;transform:translateY(-50%);background:#666;color:#fff;border:none;width:24px;height:24px;border-radius:4px;font-size:.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.select-container{position:relative;margin-bottom:20px}.select-container select{width:100%;padding:16px 50px 16px 20px;border:2px solid #e0e0e0;border-radius:12px;background:#fff;font-size:1rem;font-weight:500;appearance:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);outline:0;box-shadow:0 2px 4px rgba(0,0,0,.05)}.select-container select:hover{border-color:#2c5530;box-shadow:0 4px 12px rgba(44,85,48,.1);transform:translateY(-1px)}.select-container select:focus{border-color:#2c5530;box-shadow:0 0 0 4px rgba(44,85,48,.1),0 4px 12px rgba(44,85,48,.15);transform:translateY(-1px)}.select-container select.invalid{border-color:#dc3545;box-shadow:0 2px 4px rgba(220,53,69,.1)}.select-container select.invalid:hover{border-color:#dc3545;box-shadow:0 4px 12px rgba(220,53,69,.15)}.select-container select.invalid+label{color:#dc3545}.select-container select.valid{border-color:#28a745;box-shadow:0 2px 4px rgba(40,167,69,.1)}.select-container select.valid+label{color:#28a745}.select-container select.has-value+label,.select-container select:focus+label,.select-container select:not([value=""])+label{transform:translateY(-28px) scale(.85);color:#2c5530;background:#fff;padding:0 8px}.select-container label{position:absolute;left:20px;top:16px;color:#666;font-size:1rem;font-weight:500;pointer-events:none;transition:all .3s cubic-bezier(.4,0,.2,1);transform-origin:left top}.select-container::after{content:'';position:absolute;right:20px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid #666;pointer-events:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.select-container:hover::after{border-top-color:#2c5530}.select-container:focus-within::after{border-top-color:#2c5530;transform:translateY(-50%) rotate(180deg)}.select-container select option{padding:12px 16px;font-weight:500;background:#fff;color:#333;border:none;outline:0}.select-container select option:hover{background:#f8f9fa;color:#2c5530}.select-container select option:checked,.select-container select option:focus{background:#2c5530;color:#fff}.select-container select{background-image:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.select-container select::-ms-expand{display:none}.select-container.invalid select{border-color:#dc3545;box-shadow:0 2px 4px rgba(220,53,69,.1)}.select-container.invalid select:hover{border-color:#dc3545;box-shadow:0 4px 12px rgba(220,53,69,.15)}.select-container.invalid label{color:#dc3545!important}.select-container.valid select{border-color:#28a745;box-shadow:0 2px 4px rgba(40,167,69,.1)}.select-container.valid label{color:#28a745!important}.select-container:not(.invalid):not(.valid) select:focus+label{color:#2c5530}.attendee-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}.event-attendees-section{background:#f8f9fa;padding:20px;border-radius:8px}.attendees-instruction{color:#555;margin-bottom:20px;font-size:.9rem}.attendee-block{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px;border:1px solid #e0e0e0;position:relative}.attendee-block h4{color:#333;margin-bottom:15px;font-size:1rem}.remove-attendee-btn{position:absolute;top:15px;right:15px;background:#dc3545;color:#fff;border:none;padding:5px 10px;border-radius:4px;font-size:.8rem;cursor:pointer}.remove-attendee-btn:hover{background:#c82333}.add-attendee-btn{background:#2c5530;color:#fff;border:none;padding:12px 20px;border-radius:6px;font-weight:700;cursor:pointer;margin-bottom:20px;transition:background-color .3s ease}.add-attendee-btn:hover{background:#1e3a21}.add-attendee-btn:disabled{background:#ccc;cursor:not-allowed}.comments-section{margin-top:20px}.comments-section label{font-weight:700;color:#333;margin-bottom:10px;display:block}.comments-section textarea{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:6px;font-family:inherit;resize:vertical}.disclaimer-section{background:#fff3cd;padding:20px;border-radius:8px;border-left:4px solid #ffc107}.allergen-warning{color:#856404;margin-bottom:15px;line-height:1.5}.terms-checkbox{display:flex;flex-direction:column;gap:8px}.consent-option{display:flex;flex-direction:column;gap:5px;cursor:pointer;font-size:.9rem}.consent-option .checkbox-row{display:flex;align-items:center;gap:8px}.consent-option input[type=checkbox]{margin:0}.terms-checkbox input[type=checkbox]{margin-top:2px}.terms-checkbox label{color:#333;font-size:.9rem;line-height:1.4}.terms-checkbox.invalid input[type=checkbox]{border-color:#e74c3c;background-color:#fdf2f2}.terms-checkbox.invalid label{color:#e74c3c!important}.privacy-link,.terms-link{color:#2c5530;text-decoration:underline}.marketing-consent-section{background:#f8f9fa;padding:20px;border-radius:8px}.privacy-text{color:#555;margin-bottom:20px;font-size:.9rem}.marketing-block{margin-bottom:25px;padding:15px;background:#fff;border-radius:6px;border:1px solid #e0e0e0}.marketing-description{color:#555;margin-bottom:15px;font-size:.9rem;line-height:1.5}.consent-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:15px}.form-actions{display:flex;gap:15px;justify-content:center;margin-top:30px}.register-btn{background:#2c5530;color:#fff;border:none;padding:15px 30px;border-radius:6px;font-weight:700;font-size:1rem;cursor:pointer;transition:background-color .3s ease;flex:1;max-width:200px}.register-btn:hover{background:#1e3a21}.cancel-btn{background:#ff6b35;color:#fff;border:none;padding:15px 30px;border-radius:6px;font-weight:700;font-size:1rem;cursor:pointer;transition:background-color .3s ease;flex:1;max-width:200px}.cancel-btn:hover{background:#e55a2b}.validation-message{padding:15px 20px;border-radius:8px;margin-bottom:20px;font-weight:500;animation:slideIn .3s ease-out}.validation-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.validation-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}@keyframes slideIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.field-error{color:#dc3545;font-size:.85rem;margin-top:5px;animation:slideIn .2s ease-out}@media (max-width:768px){.form-grid{grid-template-columns:1fr}.attendee-form-grid{grid-template-columns:1fr}.booking-details{flex-direction:column;align-items:flex-start}.consent-options{grid-template-columns:1fr}.form-actions{flex-direction:column}.cancel-btn,.register-btn{max-width:none}}.header_shop-menu-container{position:relative;max-width:50rem;z-index:1}.navigation-menu_dialog{position:fixed;display:flex;flex-direction:column;max-width:55rem;width:100vw;height:100%;background:0 0;padding:0;border:none;margin:0}.navigation-menu_dialog:before{content:"";position:absolute;top:0;left:0;width:100vw;height:100vh;background-color:var(--c-neutral-black);opacity:.5}.navigation-menu_content{display:flex;flex-direction:column;width:100%;height:100%;padding:1rem;background-color:var(--c-neutral-snow);overflow-y:auto;z-index:1}@media screen and (min-width:48rem){.navigation-menu_content{padding:2rem;width:calc(100% - 4.25rem)}}@media screen and (min-width:md){.navigation-menu_content{padding:2rem;width:calc(100% - 4.25rem)}}.navigation-menu_header{position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.navigation-menu_close{position:absolute;width:2.25rem;height:2.25rem;top:1rem;right:1rem;display:flex;justify-content:center;align-items:center;border-radius:50%;border:none;cursor:pointer;background-color:var(--c-neutral-white);box-shadow:0 6px 12px 0 rgba(0,0,0,.1);z-index:1}