@import url("../css/basis.css") layer(base);@layer base, layout, components, utilities, overrides;@layer base {:root {--form-input-border: #ddd;--form-input-border-focus: #aaa;--form-input-border-valid: var(--color-green-contrast);--form-input-border-invalid: var(--color-primary);--form-bg: rgba(255, 255, 255, 0.95);--form-bg-focus: rgba(255, 255, 255, 1);--invalid-color: #dc3545;--valid-color: #28a745;--warning-color: #ffc107;--cookie-overlay-bg: rgba(0, 0, 0, 0.8);--cookie-banner-bg: rgba(255, 255, 255, 0.98);--cookie-border: #e9ecef;--cookie-button-spacing: var(--spacing-sm);--lock-overlay-bg: rgba(255, 255, 255, 0.95);--lock-icon-size: 3.5rem;--min-touch-target: 44px;--preferred-touch-target: 48px;--shadow-form: 0 8px 25px rgba(0, 0, 0, 0.15);--shadow-card-hover: 0 12px 35px rgba(0, 0, 0, 0.2);--shadow-button: 0 4px 12px rgba(205, 0, 11, 0.3);--shadow-button-hover: 0 6px 20px rgba(205, 0, 11, 0.4);--form-focus-ring: 0 0 0 3px color-mix(in srgb, var(--color-primary) 20%, transparent);--modern-backdrop: color-mix(in srgb, black 80%, transparent);--section-spacing: clamp(1.5rem, 4vw, 3rem);--card-spacing: var(--spacing-lg);@supports not (color: color-mix(in srgb, red, blue)) {--form-focus-ring: 0 0 0 3px rgba(205, 0, 11, 0.2);--modern-backdrop: rgba(0, 0, 0, 0.8);}}}.tagline {font-size: var(--font-size-lg);font-style: italic;color: var(--color-text);text-align: center;margin-top: -0.5rem;margin-bottom: 1.5rem;font-weight: normal;letter-spacing: 1px;}@layer components {.skip-links {position: absolute;top: -50px;left: var(--spacing-sm);z-index: calc(var(--z-preloader) + 1);display: flex;flex-direction: column;gap: var(--spacing-xs);inset-block-start: -50px;inset-inline-start: var(--spacing-sm);}.skip-link {position: absolute;left: -10000px;top: auto;width: 1px;height: 1px;overflow: hidden;background: linear-gradient( 135deg, var(--color-primary) 0%, var(--color-primary-dark) 100% );color: var(--color-white);padding: var(--spacing-sm) var(--spacing-md);text-decoration: none;border-radius: var(--border-radius);font-weight: 600;font-size: var(--font-size-sm);transition: var(--transition-standard);box-shadow: var(--shadow-lg);border: 2px solid var(--color-white);min-height: var(--min-touch-target);display: flex;align-items: center;&:focus-visible {position: static;width: auto;height: auto;overflow: visible;left: auto;top: auto;z-index: calc(var(--z-preloader) + 2);transform: translateY(0);animation: skipLinkFadeIn 0.3s ease-out;outline: 2px solid var(--color-white);outline-offset: 2px;}}@keyframes skipLinkFadeIn {from {opacity: 0;transform: translateY(-10px);}to {opacity: 1;transform: translateY(0);}}.contact-card {width: 100%;max-width: 100%;container-type: inline-size;container-name: contact-form;&:hover {box-shadow: var(--shadow-card-hover);transform: translateY(-2px);}}}.scroll-to-top {position: fixed;bottom: calc(var(--spacing-xl) * 2.5);right: var(--spacing-lg);width: var(--button-size-md, 2.5rem);height: var(--button-size-md, 2.5rem);z-index: var(--z-overlay);transition: var(--transition-standard);}.grecaptcha-badge {z-index: 9999 !important;position: fixed !important;}.recaptcha-info {display: flex;flex-direction: column;align-items: center;gap: var(--spacing-xs);width: 100%;}.recaptcha-row {display: flex;align-items: center;gap: var(--spacing-sm);}.recaptcha-info i {color: var(--color-primary);font-size: 1.3em;margin-bottom: var(--spacing-xs);}.recaptcha-info span {font-size: var(--font-size-sm);color: var(--color-gray-dark);}.recaptcha-links {display: flex;gap: var(--spacing-xs);align-items: center;font-size: var(--font-size-xs);margin-top: var(--spacing-xs);}.recaptcha-links a {color: var(--color-primary);text-decoration: underline;font-weight: 500;transition: color 0.2s;}.recaptcha-links a:hover, .recaptcha-links a:focus {color: var(--color-primary-dark);text-decoration: none;}@layer components {.cookie-overlay {position: fixed;top: 0;left: 0;width: 100%;height: 100%;background-color: var(--cookie-overlay-bg);backdrop-filter: blur(8px);-webkit-backdrop-filter: blur(8px);z-index: var(--z-overlay);display: flex;justify-content: center;align-items: center;padding: var(--spacing-md);opacity: 0;visibility: hidden;transition: opacity 0.4s ease, visibility 0.4s ease;will-change: opacity, visibility;inset: 0;&.visible {opacity: 1;visibility: visible;}}.cookie-banner {width: 100%;max-width: 100%;animation: cookieBannerSlideIn 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);z-index: calc(var(--z-overlay) + 1);position: relative;}@keyframes cookieBannerSlideIn {from {opacity: 0;transform: scale(0.9) translateY(30px);}to {opacity: 1;transform: scale(1) translateY(0);}}.cookie-content {background: var(--cookie-banner-bg);border-radius: var(--border-radius-lg);box-shadow: var(--shadow-xl);max-width: 650px;width: 100%;padding: var(--spacing-xl);text-align: center;border: 1px solid var(--cookie-border);margin: 0 auto;contain: layout style;& h3 {color: var(--color-primary);margin-bottom: var(--spacing-md);font-weight: bold;display: flex;align-items: center;justify-content: center;gap: var(--spacing-sm);}& p {margin-bottom: var(--spacing-md);font-size: var(--font-size-base);line-height: var(--line-height-relaxed);color: var(--color-gray-dark);}& a {color: var(--color-primary);text-decoration: underline;font-weight: 600;transition: var(--transition-fast);&:hover {color: var(--color-primary-dark);text-decoration: none;}}}.cookie-buttons {display: flex;gap: var(--cookie-button-spacing);flex-wrap: wrap;justify-content: center;margin-top: var(--spacing-lg);}.cookie-button {padding: var(--spacing-sm) var(--spacing-lg);border: none;border-radius: var(--border-radius);font-weight: 600;font-size: var(--font-size-base);cursor: pointer;transition: var(--transition-standard);min-width: 160px;min-height: var(--preferred-touch-target);display: flex;align-items: center;justify-content: center;text-decoration: none;position: relative;overflow: hidden;&.accept {background: linear-gradient( 135deg, var(--color-primary) 0%, var(--color-primary-dark) 100% );color: var(--color-white);box-shadow: var(--shadow-button);&:hover {transform: translateY(-3px);box-shadow: var(--shadow-button-hover);}&:focus-visible {outline: 2px solid var(--color-white);outline-offset: 2px;}}&.decline {background-color: var(--color-gray-light);border: 2px solid var(--color-gray);color: var(--color-gray-dark);&:hover {background-color: var(--color-gray);color: var(--color-white);transform: translateY(-2px);}&:focus-visible {outline: 2px solid var(--color-gray-dark);outline-offset: 2px;}}}.judo-lock-icon {font-size: var(--lock-icon-size);color: var(--color-primary);margin-bottom: var(--spacing-md);animation: judoIconPulse 2s ease-in-out infinite;}@keyframes judoIconPulse {0%, 100% {transform: scale(1);opacity: 1;}50% {transform: scale(1.05);opacity: 0.8;}}.judo-belt-icon {max-width: 60px;max-height: 60px;filter: drop-shadow(var(--shadow-sm));}.form-locked {position: relative;pointer-events: none;}.form-locked .formfields {opacity: 0.1;pointer-events: none;}.form-locked .form-lock-message {opacity: 1;pointer-events: auto;position: relative;z-index: 10;}.form-lock-message {position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: var(--lock-overlay-bg);backdrop-filter: blur(3px);-webkit-backdrop-filter: blur(3px);display: flex;flex-direction: column;align-items: center;justify-content: center;text-align: center;padding: var(--spacing-lg);border-radius: var(--border-radius-lg);z-index: 10;animation: formLockFadeIn 0.3s ease-out;inset: 0;& h3 {color: var(--color-primary);margin-bottom: var(--spacing-md);}& p {margin-bottom: var(--spacing-lg);font-size: var(--font-size-base);line-height: var(--line-height-relaxed);max-width: 400px;}}@keyframes formLockFadeIn {from {opacity: 0;transform: scale(0.95);}to {opacity: 1;transform: scale(1);}}}@layer components {.contact-form {width: 100%;max-width: 100%;container-type: inline-size;}.formfields {transition: var(--transition-standard);}.form-elements {display: flex;flex-direction: column;gap: var(--spacing-lg);@container contact-form (min-width: 30rem) {display: grid;grid-template-columns: repeat(2, 1fr);@supports selector(:has(*)) {& .form-element:has(textarea), & .form-submit {grid-column: 1 / -1;}}}}.form-element {display: flex;flex-direction: column;margin-bottom: 0;position: relative;}.form-label {margin-bottom: var(--spacing-sm);font-weight: 600;color: var(--color-gray-dark);font-size: var(--font-size-base);display: flex;align-items: center;gap: var(--spacing-xs);line-height: var(--line-height-normal);& i {color: var(--color-primary);width: 18px;text-align: center;}}.required-marker {color: var(--invalid-color);font-weight: bold;margin-left: var(--spacing-xs);}.form-control {padding: var(--spacing-md);border: 2px solid var(--form-input-border);border-radius: var(--border-radius);font-size: var(--font-size-base);font-family: inherit;line-height: var(--line-height-normal);transition: var(--transition-standard);background-color: var(--form-bg);color: var(--color-text);min-height: var(--min-touch-target);width: 100%;will-change: border-color, box-shadow, background-color;&:focus-visible {outline: none;border-color: var(--color-primary);background-color: var(--form-bg-focus);box-shadow: var(--form-focus-ring);transform: translateY(-1px);}&:focus {outline: none;border-color: var(--color-primary);background-color: var(--form-bg-focus);box-shadow: 0 0 0 3px rgba(205, 0, 11, 0.1);transform: translateY(-1px);}&:hover:not(:focus) {border-color: var(--form-input-border-focus);}@supports selector(:user-invalid) {&:user-invalid {border-color: var(--form-input-border-invalid);background-color: rgba(220, 53, 69, 0.05);animation: inputShake 0.5s ease-in-out;}&:user-valid {border-color: var(--form-input-border-valid);background-color: rgba(40, 167, 69, 0.05);}}&.is-invalid, &.has-error {border-color: var(--form-input-border-invalid);background-color: rgba(220, 53, 69, 0.05);animation: inputShake 0.5s ease-in-out;}&.is-valid, &.valid-field {border-color: var(--form-input-border-valid);background-color: rgba(40, 167, 69, 0.05);}}@keyframes inputShake {0%, 100% {transform: translateX(0);}25% {transform: translateX(-5px);}75% {transform: translateX(5px);}}textarea.form-control {resize: vertical;min-height: 120px;max-height: 300px;font-family: inherit;line-height: var(--line-height-relaxed);}.character-count {font-size: var(--font-size-xs);color: var(--color-gray);text-align: right;margin-top: var(--spacing-xs);font-weight: 500;}.invalid-feedback, .valid-feedback {display: none;font-size: var(--font-size-sm);margin-top: var(--spacing-xs);padding: var(--spacing-xs) var(--spacing-sm);border-radius: var(--border-radius-sm);font-weight: 500;line-height: var(--line-height-normal);}.invalid-feedback {color: var(--invalid-color);background-color: rgba(220, 53, 69, 0.1);border-left: 3px solid var(--invalid-color);}.valid-feedback {color: var(--valid-color);background-color: rgba(40, 167, 69, 0.1);border-left: 3px solid var(--valid-color);}.form-control.is-invalid + .invalid-feedback, .form-control.has-error + .invalid-feedback {display: block;animation: feedbackSlideIn 0.3s ease-out;}.form-control.is-valid + .valid-feedback, .form-control.valid-field + .valid-feedback {display: block;animation: feedbackSlideIn 0.3s ease-out;}@keyframes feedbackSlideIn {from {opacity: 0;transform: translateY(-10px);}to {opacity: 1;transform: translateY(0);}}.form-submit {margin-top: var(--spacing-lg);display: flex;flex-direction: column;align-items: center;gap: var(--spacing-md);}.submit-button {display: inline-flex;align-items: center;justify-content: center;gap: var(--spacing-sm);background: var(--color-primary);color: var(--color-white);padding: var(--spacing-md) var(--spacing-xl);border: none;border-radius: var(--border-radius);font-weight: 600;font-size: var(--font-size-base);cursor: pointer;transition: var(--transition-standard);min-height: var(--preferred-touch-target);min-width: 200px;position: relative;overflow: hidden;box-shadow: var(--shadow-button);will-change: transform, box-shadow;&:hover:not(:disabled) {transform: translateY(-3px);box-shadow: var(--shadow-button-hover);}&:active:not(:disabled) {transform: translateY(-1px);transition-duration: 0.1s;}&:disabled {opacity: 0.6;cursor: not-allowed;transform: none;box-shadow: var(--shadow-sm);}&:focus-visible {outline: 2px solid var(--color-white);outline-offset: 2px;}& i {transition: transform 0.3s ease;font-size: 1.1em;}&:hover:not(:disabled) i {transform: translateX(3px);}}.submit-button.loading {pointer-events: none;& .button-text {opacity: 0;}&::after {content: "";position: absolute;width: 20px;height: 20px;border: 2px solid transparent;border-top: 2px solid currentColor;border-radius: 50%;animation: buttonSpinner 1s linear infinite;top: 50%;left: 50%;transform: translate(-50%, -50%);}}@keyframes buttonSpinner {to {transform: translate(-50%, -50%) rotate(360deg);}}.alert {margin-top: var(--spacing-lg);padding: var(--spacing-md);border-radius: var(--border-radius);display: none;font-weight: 500;line-height: var(--line-height-normal);border-left: 4px solid;animation: alertSlideDown 0.4s ease-out;will-change: opacity, transform;&.show {display: block;}&.success {background-color: rgba(40, 167, 69, 0.1);color: var(--valid-color);border-left-color: var(--valid-color);}&.error {background-color: rgba(220, 53, 69, 0.1);color: var(--invalid-color);border-left-color: var(--invalid-color);}&.info {background-color: rgba(0, 123, 255, 0.1);color: #0066cc;border-left-color: #0066cc;}}@keyframes alertSlideDown {from {opacity: 0;transform: translateY(-20px);max-height: 0;}to {opacity: 1;transform: translateY(0);max-height: 200px;}}}@layer layout {.contact-page-container {display: flow-root;container-type: inline-size;}.contact-page-container > * + * {margin-block-start: var(--section-spacing);}.contact-info-container {display: grid;grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));gap: var(--section-spacing);container-type: inline-size;margin-block: 0;@container (min-width: 48rem) {grid-template-columns: repeat(2, 1fr);}@container (min-width: 64rem) {grid-template-columns: repeat(3, 1fr);}@supports not (container-type: inline-size) {@media (min-width: 768px) {grid-template-columns: repeat(2, 1fr);}@media (min-width: 1024px) {grid-template-columns: repeat(3, 1fr);}}}}@supports selector(:has(*)) {.contact-page-container:has(> .contact-card) > *:not(.contact-card) + .contact-card {margin-block-start: var(--section-spacing);}.contact-page-container:has(> .contact-info-container) > *:not(.contact-info-container) + .contact-info-container {margin-block-start: var(--section-spacing);}.contact-page-container:has(> .additional-info-section) > *:not(.additional-info-section) + .additional-info-section {margin-block-start: var(--section-spacing);}}@layer components {.contact-info {height: 100%;transition: var(--transition-standard);contain: layout style;&:hover {transform: translateY(-5px);box-shadow: var(--shadow-card-hover);}& .card-body {display: flex;flex-direction: column;justify-content: space-between;min-height: 150px;}}.contact-info address, .contact-info p {margin-bottom: var(--spacing-sm);font-style: normal;line-height: var(--line-height-relaxed);}.contact-info address {font-weight: 500;}.contact-methods {display: flex;flex-direction: column;gap: var(--spacing-sm);& p {display: flex;align-items: center;gap: var(--spacing-lg);padding: var(--spacing-sm);border-radius: var(--border-radius);transition: var(--transition-fast);margin-bottom: 0;&:hover {color: var(--color-primary);transform: translateX(3px);}}& i {color: var(--color-primary);width: 20px;text-align: center;}& a {color: var(--color-gray-dark);text-decoration: none;font-weight: 500;transition: var(--transition-fast);&:hover {color: var(--color-primary);}}}.response-info, .social-info {font-style: italic;color: var(--color-gray);margin-top: var(--spacing-sm);}.social-info i {color: var(--color-primary);}.additional-info {margin-top: var(--spacing-md);padding-top: var(--spacing-md);border-top: 1px solid var(--color-gray-light);}.social-links {display: flex;flex-direction: column;gap: var(--spacing-sm);}.social-link {display: flex;align-items: center;gap: var(--spacing-sm);color: var(--color-text);text-decoration: none;transition: var(--transition-standard);padding: var(--spacing-sm);border-radius: var(--border-radius);min-height: var(--min-touch-target);font-weight: 500;&:hover {color: var(--color-primary);transform: translateX(5px);}&:focus-visible {outline: 2px solid var(--color-primary);outline-offset: 2px;background-color: rgba(205, 0, 11, 0.1);}& i {font-size: 1.3rem;width: 24px;height: 24px;display: flex;align-items: center;justify-content: center;color: var(--color-primary);}&.facebook i {color: #1877f2;}&.instagram i {background: linear-gradient( 45deg, #405de6, #5851db, #833ab4, #c13584, #e1306c, #fd1d1d );-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;}}}@layer components {.quick-info-grid {display: grid;grid-template-columns: repeat(3, 1fr);gap: var(--spacing-lg);margin: var(--spacing-lg) 0;@container (max-width: 48rem) {grid-template-columns: repeat(2, 1fr);}@container (max-width: 32rem) {grid-template-columns: 1fr;}@supports not (container-type: inline-size) {@media (max-width: 768px) {grid-template-columns: repeat(2, 1fr);}@media (max-width: 480px) {grid-template-columns: 1fr;}}}.quick-info-item {display: flex;align-items: flex-start;gap: var(--spacing-md);padding: var(--spacing-md);background-color: var(--color-white);border-radius: var(--border-radius);box-shadow: var(--shadow-sm);transition: var(--transition-standard);flex-direction: column;&:hover {transform: translateY(-5px);box-shadow: var(--shadow-md);}& h4 {color: var(--color-primary);margin-bottom: var(--spacing-sm);display: flex;align-items: center;gap: var(--spacing-xs);font-size: var(--font-size-md);& i {color: var(--color-primary);font-size: var(--font-size-lg);flex-shrink: 0;}}& p {margin: 0;font-size: var(--font-size-sm);color: var(--color-text);}}}@layer utilities {@keyframes contactFadeInUp {from {opacity: 0;transform: translateY(30px);}to {opacity: 1;transform: translateY(0);}}.fade-in-delayed {animation: contactFadeInUp 0.8s ease-out forwards;animation-delay: 0.2s;opacity: 0;}.interactive-hover {transition: var(--transition-standard);&:hover {transform: translateY(-2px);box-shadow: var(--shadow-md);}}.form-loading {position: relative;&::before {content: "";position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: linear-gradient( 90deg, transparent, rgba(205, 0, 11, 0.1), transparent );animation: formLoadingShimmer 1.5s ease-in-out infinite;z-index: 1;pointer-events: none;}}@keyframes formLoadingShimmer {0% {transform: translateX(-100%);}100% {transform: translateX(100%);}}@container (max-width: 48rem) {:root {--section-spacing: clamp(1rem, 3vw, 2rem);}}@container (min-width: 64rem) {:root {--section-spacing: clamp(2rem, 5vw, 4rem);}}@supports not (container-type: inline-size) {@media (max-width: 768px) {:root {--section-spacing: clamp(1rem, 3vw, 2rem);}}@media (min-width: 1024px) {:root {--section-spacing: clamp(2rem, 5vw, 4rem);}}}}@layer overrides {@media (max-width: 768px) {:root {--spacing-xl: 2rem;--spacing-lg: 1.5rem;--lock-icon-size: 2.5rem;}.recaptcha-row {flex-direction: column;align-items: center;gap: var(--spacing-xs);text-align: center;}.recaptcha-row i {margin-top: var(--spacing-sm);margin-bottom: var(--spacing-xs);margin-right: 0;}.recaptcha-info span {text-align: center;}.recaptcha-links {flex-direction: column;gap: 0;margin-top: var(--spacing-xs);}.recaptcha-links span {display: none;}.skip-links {top: -40px;left: var(--spacing-xs);inset-block-start: -40px;inset-inline-start: var(--spacing-xs);}.skip-link {font-size: var(--font-size-xs);padding: var(--spacing-xs) var(--spacing-sm);min-height: var(--min-touch-target);}.cookie-overlay {padding: var(--spacing-sm);align-items: center;}.cookie-content {max-width: 100%;padding: var(--spacing-lg);margin-bottom: var(--spacing-sm);max-height: 90vh;overflow-y: auto;}.cookie-buttons {flex-direction: column;gap: var(--spacing-sm);}.cookie-button {width: 100%;min-width: auto;}.form-elements {gap: var(--spacing-md);}.form-control {padding: var(--spacing-sm);font-size: var(--font-size-base);}textarea.form-control {min-height: 100px;}.submit-button {width: 100%;min-width: auto;padding: var(--spacing-md);font-size: var(--font-size-base);}.contact-info-container {grid-template-columns: 1fr;gap: var(--section-spacing);}.contact-info .card-body {min-height: auto;}.social-links {flex-direction: row;flex-wrap: wrap;justify-content: center;}.social-link {flex: 1;min-width: 120px;justify-content: center;}.quick-info-grid {grid-template-columns: 1fr;gap: var(--spacing-md);}.quick-info-item {padding: var(--spacing-sm);}.form-lock-message {padding: var(--spacing-md);& p {font-size: var(--font-size-sm);}}}@media (max-width: 480px) {:root {--spacing-xl: 1.5rem;--spacing-lg: 1rem;--lock-icon-size: 2rem;}.recaptcha-row {flex-direction: column;align-items: center;gap: var(--spacing-xs);text-align: center;}.recaptcha-row i {margin-bottom: var(--spacing-xs);margin-right: 0;}.recaptcha-info span {text-align: center;}.recaptcha-links {flex-direction: column;gap: 0;margin-top: var(--spacing-xs);}.recaptcha-links span {display: none;}.container {padding: 0 var(--spacing-sm);}.cookie-content {padding: var(--spacing-md);border-radius: var(--border-radius);& h3 {margin-bottom: var(--spacing-sm);}& p {font-size: var(--font-size-sm);}}.contact-card {border-radius: var(--border-radius);}.form-label {font-size: var(--font-size-sm);margin-bottom: var(--spacing-xs);}.form-control {padding: var(--spacing-sm);font-size: var(--font-size-sm);}.submit-button {font-size: var(--font-size-sm);padding: var(--spacing-sm) var(--spacing-md);}.character-count {font-size: var(--font-size-xxs);}.contact-methods p {padding: var(--spacing-xs);font-size: var(--font-size-sm);}.social-link {font-size: var(--font-size-sm);padding: var(--spacing-xs);}.quick-info-item {& h4 {font-size: var(--font-size-sm);}& p {font-size: var(--font-size-xs);}}}@media (max-width: 360px) {.cookie-content {padding: var(--spacing-sm);margin: var(--spacing-xs);}.recaptcha-row {flex-direction: column;align-items: center;gap: var(--spacing-xs);text-align: center;}.recaptcha-row i {margin-bottom: var(--spacing-xs);margin-right: 0;}.recaptcha-info span {text-align: center;}.recaptcha-links {flex-direction: column;gap: 0;margin-top: var(--spacing-xs);}.recaptcha-links span {display: none;}.contact-card {box-shadow: none;border: 1px solid var(--color-gray-light);}.form-elements {gap: var(--spacing-sm);}.cookie-button {padding: var(--spacing-sm);font-size: var(--font-size-sm);}}@media (max-width: 1024px) and (min-width: 768px) {.cookie-content {max-width: 500px;padding: var(--spacing-lg);}.form-elements {gap: var(--spacing-md);}.quick-info-grid {grid-template-columns: repeat(2, 1fr);}.recaptcha-row {gap: var(--spacing-xs);}.recaptcha-info span {text-align: center;}.recaptcha-links {flex-direction: column;gap: 0;margin-top: var(--spacing-xs);}.recaptcha-links span {display: none;}}}@layer utilities {.form-control:focus-visible {outline: 3px solid var(--color-primary);outline-offset: 2px;border-color: var(--color-primary);}.submit-button:focus-visible, .cookie-button:focus-visible {outline: 3px solid var(--color-white);outline-offset: 2px;box-shadow: 0 0 0 1px var(--color-primary), 0 0 0 4px var(--color-white);}.social-link:focus-visible {outline: 2px solid var(--color-primary);outline-offset: 2px;background-color: rgba(205, 0, 11, 0.1);}@media (prefers-contrast: high) {.form-control {border-width: 3px;}.card {border: 2px solid var(--color-gray-dark);}.submit-button, .cookie-button.accept {border: 2px solid var(--color-white);}.cookie-button.decline {border-width: 3px;}}@media (prefers-reduced-motion: reduce) {*, *::before, *::after {animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important;scroll-behavior: auto !important;}.submit-button:hover i {transform: none;}.judo-lock-icon {animation: none;}.contact-card:hover, .contact-info:hover, .quick-info-item:hover {transform: none;}}.sr-only {position: absolute !important;width: 1px !important;height: 1px !important;padding: 0 !important;margin: -1px !important;overflow: hidden !important;clip: rect(0, 0, 0, 0) !important;white-space: nowrap !important;border: 0 !important;}@media (hover: none) and (pointer: coarse) {.form-control {padding: var(--spacing-md);font-size: 16px;}.submit-button, .cookie-button {min-height: var(--preferred-touch-target);padding: var(--spacing-md);}.social-link {min-height: var(--preferred-touch-target);padding: var(--spacing-sm) var(--spacing-md);}.submit-button:active {transform: scale(0.98);transition-duration: 0.1s;}.cookie-button:active {transform: scale(0.96);transition-duration: 0.1s;}.form-control:focus {transform: none;}}}@layer utilities {@media print {.cookie-overlay, .cookie-banner, .skip-links {display: none !important;}.contact-card {box-shadow: none;border: 1px solid #000;}.form-control {border: 1px solid #000;background: transparent;}.submit-button {background: transparent;color: #000;border: 2px solid #000;}.social-link[href^="http"]:after {content: " (" attr(href) ")";font-size: smaller;}}}@layer utilities {.contact-card, .contact-info, .quick-info-item {contain: layout style;}.form-control, .submit-button, .cookie-button {contain: layout;}.submit-button, .cookie-button, .social-link, .contact-info {will-change: transform;}.submit-button:not(:hover):not(:focus), .cookie-button:not(:hover):not(:focus), .social-link:not(:hover):not(:focus), .contact-info:not(:hover) {will-change: auto;}}@layer overrides {@supports not (container-type: inline-size) {.contact-info-container {display: grid;grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));gap: var(--spacing-lg);}@media (min-width: 768px) {.contact-info-container {grid-template-columns: repeat(2, 1fr);}.quick-info-grid {grid-template-columns: repeat(2, 1fr);}}@media (min-width: 1024px) {.contact-info-container {grid-template-columns: repeat(3, 1fr);}.quick-info-grid {grid-template-columns: repeat(3, 1fr);}}}@supports not (margin-block-start: 0) {.contact-page-container > * + * {margin-top: var(--section-spacing);}.contact-card, .additional-info-section {margin-bottom: 0;}}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {.contact-page-container > section {margin-bottom: 3rem;}.contact-page-container > section:last-child {margin-bottom: 0;}}@supports not selector(:has(*)) {.form-elements {& .form-element:nth-child(3) {grid-column: 1 / -1;}& .form-submit {grid-column: 1 / -1;}}}@supports not selector(:focus-visible) {.form-control:focus, .submit-button:focus, .cookie-button:focus, .social-link:focus, .skip-link:focus {outline: 2px solid var(--color-primary);outline-offset: 2px;}}@supports not (color: color-mix(in srgb, red, blue)) {.form-control:focus {box-shadow: 0 0 0 3px rgba(205, 0, 11, 0.2);}.cookie-overlay {background: rgba(0, 0, 0, 0.8);}.card {box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);}.card:hover {box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 10px 15px rgba(0, 0, 0, 0.15);}}@supports not (inset-block-start: 0) {.skip-links {top: -50px;left: var(--spacing-sm);}.skip-link:focus {top: var(--spacing-sm);}.cookie-overlay {top: 0;left: 0;right: 0;bottom: 0;}.form-lock-message {top: 0;left: 0;right: 0;bottom: 0;}}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {.contact-info-container {display: flex;flex-wrap: wrap;}.contact-info {flex: 1 1 300px;}.quick-info-grid {display: flex;flex-wrap: wrap;}.quick-info-item {flex: 1 1 250px;}.form-elements {display: block;}.form-element {margin-bottom: var(--spacing-lg);}}}.cookie-settings-widget {position: fixed !important;bottom: 20px !important;left: 20px !important;background: var(--color-primary, #cd000b) !important;color: white !important;padding: 12px 16px !important;border-radius: 50px !important;box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;cursor: pointer !important;z-index: 999 !important;display: none !important;font-size: 14px !important;font-weight: 500 !important;transition: all 0.3s ease !important;min-height: 44px !important;min-width: 44px !important;align-items: center !important;justify-content: center !important;border: none !important;font-family: inherit !important;text-decoration: none !important;opacity: 0 !important;transform: translateY(20px) !important;}.cookie-settings-widget:hover {transform: translateY(-2px) !important;box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2) !important;text-decoration: none !important;color: white !important;}.cookie-settings-widget:focus, .cookie-settings-widget:focus-visible {outline: 2px solid var(--color-white) !important;outline-offset: 2px !important;box-shadow: 0 0 0 1px var(--color-primary), 0 0 0 4px var(--color-white) !important;}.cookie-settings-widget:active {transform: translateY(-1px) !important;transition-duration: 0.1s !important;}@media (max-width: 768px) {.cookie-settings-widget {bottom: 15px !important;left: 15px !important;padding: 10px 14px !important;font-size: 13px !important;min-height: 44px !important;min-width: 44px !important;}.cookie-settings-widget svg {width: 14px !important;height: 14px !important;margin-right: 6px !important;}.scroll-to-top{bottom: 80px !important;right: 15px !important;}}@media (max-width: 480px) {.cookie-settings-widget {bottom: 10px !important;left: 10px !important;padding: 8px 12px !important;font-size: 12px !important;}}@media (prefers-contrast: high) {.cookie-settings-widget {border: 2px solid var(--color-white) !important;box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;}}@media (prefers-reduced-motion: reduce) {.cookie-settings-widget, .cookie-settings-widget:hover, .cookie-settings-widget:active {transition: none !important;animation: none !important;transform: none !important;}}@media (hover: none) and (pointer: coarse) {.cookie-settings-widget {min-height: 48px !important;min-width: 48px !important;padding: 12px 16px !important;}.cookie-settings-widget:active {transform: scale(0.95) !important;transition-duration: 0.1s !important;}}.form-lock-message {position: absolute !important;top: 0 !important;left: 0 !important;right: 0 !important;bottom: 0 !important;background: var(--lock-overlay-bg, rgba(255, 255, 255, 0.95)) !important;backdrop-filter: blur(3px) !important;-webkit-backdrop-filter: blur(3px) !important;display: flex !important;flex-direction: column !important;align-items: center !important;justify-content: center !important;text-align: center !important;padding: var(--spacing-lg, 2rem) !important;border-radius: var(--border-radius-lg, 12px) !important;z-index: 10 !important;animation: formLockFadeIn 0.3s ease-out !important;}.form-lock-message h3 {color: var(--color-primary, #cd000b) !important;margin-bottom: var(--spacing-md, 1rem) !important;font-size: var(--font-size-lg, 1.25rem) !important;}.form-lock-message p {margin-bottom: var(--spacing-lg, 2rem) !important;font-size: var(--font-size-base, 1rem) !important;line-height: var(--line-height-relaxed, 1.6) !important;max-width: 400px !important;color: var(--color-text, #333) !important;}.unlock-form-btn {background: var(--color-primary, #cd000b) !important;color: white !important;padding: var(--spacing-sm, 0.75rem) var(--spacing-lg, 2rem) !important;border: none !important;border-radius: var(--border-radius, 6px) !important;font-weight: 600 !important;cursor: pointer !important;transition: var(--transition-standard, all 0.3s ease) !important;min-height: var(--min-touch-target, 44px) !important;font-family: inherit !important;font-size: var(--font-size-base, 1rem) !important;}.unlock-form-btn:hover {background: var(--color-primary-dark, #a00009) !important;transform: translateY(-2px) !important;box-shadow: 0 4px 12px rgba(205, 0, 11, 0.3) !important;}.unlock-form-btn:focus, .unlock-form-btn:focus-visible {outline: 2px solid var(--color-white) !important;outline-offset: 2px !important;box-shadow: 0 0 0 1px var(--color-primary), 0 0 0 4px var(--color-white) !important;}.unlock-form-btn {background: var(--color-primary, #cd000b) !important;color: white !important;padding: var(--spacing-sm, 0.75rem) var(--spacing-lg, 2rem) !important;border: none !important;border-radius: var(--border-radius, 6px) !important;font-weight: 600 !important;cursor: pointer !important;transition: var(--transition-standard, all 0.3s ease) !important;min-height: var(--min-touch-target, 44px) !important;font-family: inherit !important;font-size: var(--font-size-base, 1rem) !important;opacity: 1 !important;pointer-events: auto !important;display: inline-block !important;}.unlock-form-btn:hover {background: var(--color-primary-dark, #a00009) !important;transform: translateY(-2px) !important;box-shadow: 0 4px 12px rgba(205, 0, 11, 0.3) !important;}.unlock-form-btn:focus, .unlock-form-btn:focus-visible {outline: 2px solid var(--color-white, #fff) !important;outline-offset: 2px !important;box-shadow: 0 0 0 1px var(--color-primary), 0 0 0 4px var(--color-white) !important;}.form-locked .form-lock-message .unlock-form-btn {opacity: 1 !important;pointer-events: auto !important;cursor: pointer !important;background: var(--color-primary, #cd000b) !important;}.unlock-form-btn:disabled, .unlock-form-btn[disabled] {background: #cd000b !important;color: white !important;opacity: 1 !important;pointer-events: auto !important;cursor: pointer !important;}.form-locked .unlock-form-btn, .form-locked .unlock-form-btn:disabled {background: #cd000b !important;color: white !important;opacity: 1 !important;pointer-events: auto !important;cursor: pointer !important;}@keyframes formLockFadeIn {from {opacity: 0 !important;transform: scale(0.95) !important;}to {opacity: 1 !important;transform: scale(1) !important;}}@media (min-width: 1024px) {.cookie-settings-widget {display: flex !important;opacity: 1 !important;transform: translateY(0) !important;}.form-lock-message .unlock-form-btn {display: none !important;}}@media (max-width: 1023px) {.cookie-settings-widget {display: none !important;}.form-lock-message .unlock-form-btn {display: inline-block !important;pointer-events: auto !important;}.form-locked .form-lock-message .unlock-form-btn {pointer-events: auto !important;cursor: pointer !important;}}.cc-window {font-family: inherit !important;}.cc-banner {background: var(--cookie-banner-bg, rgba(255, 255, 255, 0.98)) !important;border: 1px solid var(--cookie-border, #e9ecef) !important;border-radius: var(--border-radius-lg, 12px) !important;box-shadow: var( --shadow-xl, 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04) ) !important;padding: var(--spacing-xl, 2rem) !important;}.cc-btn {border-radius: var(--border-radius, 6px) !important;padding: var(--spacing-sm, 0.75rem) var(--spacing-lg, 2rem) !important;font-weight: 600 !important;min-height: var(--preferred-touch-target, 48px) !important;transition: var(--transition-standard, all 0.3s ease) !important;font-family: inherit !important;}.cc-btn.cc-allow {background: linear-gradient( 135deg, var(--color-primary, #cd000b) 0%, var(--color-primary-dark, #a00009) 100% ) !important;color: var(--color-white, #fff) !important;border: none !important;box-shadow: var(--shadow-button, 0 4px 12px rgba(205, 0, 11, 0.3)) !important;}.cc-btn.cc-allow:hover {transform: translateY(-3px) !important;box-shadow: var( --shadow-button-hover, 0 6px 20px rgba(205, 0, 11, 0.4) ) !important;}.cc-btn.cc-deny {background-color: var(--color-gray-light, #f8f9fa) !important;border: 2px solid var(--color-gray, #6c757d) !important;color: var(--color-gray-dark, #343a40) !important;}.cc-btn.cc-deny:hover {background-color: var(--color-gray, #6c757d) !important;color: var(--color-white, #fff) !important;transform: translateY(-2px) !important;}@media (max-width: 768px) {.cc-banner {padding: var(--spacing-lg, 2rem) !important;margin: var(--spacing-sm, 0.75rem) !important;}.cc-btn {width: 100% !important;margin: var(--spacing-xs, 0.5rem) 0 !important;}}@media (max-width: 480px) {.cc-banner {padding: var(--spacing-md, 1rem) !important;margin: var(--spacing-xs, 0.5rem) !important;}}@media print {.cookie-settings-widget, .form-lock-message, .cc-window {display: none !important;}}@media (max-width: 768px) {.cookie-overlay {transition: opacity 0.3s ease, visibility 0.3s ease !important;}.cookie-banner {animation: cookieBannerSlideInMobile 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) !important;}.cookie-button {transition: all 0.2s ease !important;transform: translateZ(0) !important;}.cookie-button.accept, .cookie-button.decline {opacity: 1 !important;visibility: visible !important;pointer-events: auto !important;}}@keyframes cookieBannerSlideInMobile {0% {opacity: 0;transform: scale(0.95) translateY(20px);}50% {opacity: 0.7;transform: scale(0.98) translateY(10px);}100% {opacity: 1;transform: scale(1) translateY(0);}}.cookie-overlay[aria-hidden="false"] .cookie-button {opacity: 1 !important;visibility: visible !important;display: flex !important;pointer-events: auto !important;}.cookie-button.processing {opacity: 0.7 !important;transform: scale(0.98) !important;transition: all 0.2s ease !important;}.cookie-button.processing:hover {transform: scale(0.98) !important;}.cookie-button:not(.processing) {opacity: 1 !important;pointer-events: auto !important;cursor: pointer !important;}.unlock-form-btn {opacity: 1 !important;pointer-events: auto !important;cursor: pointer !important;}.unlock-form-btn:disabled, .unlock-form-btn[disabled] {opacity: 1 !important;pointer-events: auto !important;cursor: pointer !important;background: var(--color-primary, #cd000b) !important;}