:root {
--jachting-primary: #22438F;
--jachting-accent: #a9873f;
}   .jachting-reg-form-wrapper {
min-height: 200px;
}
.jachting-reg-form-loading {
display: flex;
align-items: center;
justify-content: center;
gap: var(--space-s, 1rem);
padding: var(--space-l, 2rem);
color: var(--neutral, #333);
}
.jachting-reg-form-spinner {
width: 24px;
height: 24px;
border: 3px solid var(--neutral-trans-20, #ccc);
border-top-color: var(--jachting-primary, #22438F);
border-radius: 50%;
animation: jachting-spin 0.8s linear infinite;
}
@keyframes jachting-spin {
to { transform: rotate(360deg); }
}
.jachting-reg-form-error {
text-align: center;
padding: var(--space-l, 2rem);
color: var(--neutral, #333);
}
.jachting-reg-form-retry {
margin-top: var(--space-s, 1rem);
padding: var(--space-xs, 0.5rem) var(--space-m, 1rem);
border: 1px solid var(--neutral-trans-30, #999);
border-radius: var(--radius-m, 4px);
background: var(--white, #fff);
cursor: pointer;
}
.jachting-reg-form-retry:hover {
background: var(--neutral-trans-5, #f5f5f5);
}   .contact-25__form .form-group--website {
position: absolute;
left: -9999px;
top: -9999px;
opacity: 0;
height: 0;
width: 0;
overflow: hidden;
pointer-events: none;
}    .contact-25__form.brxe-form {
max-width: 640px;
margin-left: auto;
margin-right: auto;
}
.contact-25__form.brxe-form label {
font-size: var(--text-m);
text-transform: none;
color: var(--neutral);
}
.contact-25__form.brxe-form .label {
font-size: var(--text-m);
text-transform: none;
color: var(--neutral);
}
.contact-25__form.brxe-form .form-group input {
line-height: 120%;
font-size: var(--text-m);
color: var(--neutral-trans-80);
padding-top: var(--space-xs);
padding-right: var(--space-xs);
padding-bottom: var(--space-xs);
padding-left: var(--space-xs);
border-radius: var(--radius-m);
}
.contact-25__form.brxe-form select {
line-height: 120%;
font-size: var(--text-m);
color: var(--neutral-trans-80);
padding-top: var(--space-xs);
padding-right: var(--space-xs);
padding-bottom: var(--space-xs);
padding-left: var(--space-xs);
border-radius: var(--radius-m);
}
.contact-25__form.brxe-form textarea {
line-height: 120%;
font-size: var(--text-m);
color: var(--neutral-trans-80);
padding-top: var(--space-xs);
padding-right: var(--space-xs);
padding-bottom: var(--space-xs);
padding-left: var(--space-xs);
border-radius: var(--radius-m);
}
.contact-25__form.brxe-form .flatpickr {
padding-top: var(--space-xs);
padding-right: var(--space-xs);
padding-bottom: var(--space-xs);
padding-left: var(--space-xs);
border-radius: var(--radius-m);
}
.contact-25__form.brxe-form .form-group:not(:last-child):not(.captcha) {
padding-bottom: var(--space-s);
} .contact-25__form.brxe-form .bricks-button {
background-color: var(--jachting-primary, #22438F);
font-size: var(--text-m);
color: var(--white);
line-height: 150%;
} .contact-25__form.brxe-form button[type="submit"].bricks-button {
background-color: var(--jachting-accent, #a9873f);
}
.contact-25__form.brxe-form button[type="submit"].bricks-button:hover {
filter: brightness(1.1);
}
.contact-25__form.brxe-form .submit-button-wrapper {
width: 100%;
}
.contact-25__form.brxe-form {
margin-top: var(--content-gap);
}
.contact-25__form.brxe-form .bricks-button:not([type=submit]) {
border-radius: var(--radius-m);
}
.contact-25__form.brxe-form .choose-files {
border-radius: var(--radius-m);
}
.contact-25__form.brxe-form button[type=submit].bricks-button {
border-radius: var(--radius-m);
} .contact-25__form .options-wrapper li {
display: flex;
align-items: flex-start;
flex-wrap: nowrap;
gap: 1rem;
} .contact-25__form .options-wrapper label {
font-size: var(--text-s);
line-height: 1.15;
}
.contact-25__form .options-wrapper label a {
color: var(--primary);
}    .contact-25__form .form-row {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-s);
} @media (min-width: 768px) {
.contact-25__form .form-row.columns-2 {
grid-template-columns: 1fr 1fr;
}
} @media (min-width: 768px) {
.contact-25__form .form-row.columns-3 {
grid-template-columns: 1fr 1fr 1fr;
}
} .contact-25__form .form-group {
width: 100%;
} .contact-25__form .form-section-title {
margin-top: var(--space-l);
margin-bottom: var(--space-xs);
font-size: var(--text-l);
font-weight: 600;
} .contact-25__form .options-wrapper {
display: flex;
flex-direction: column;
gap: var(--space-xs);
} .contact-25__form .options-wrapper li {
padding: var(--space-s);
border-radius: var(--radius-m);
border: 1px solid var(--neutral-trans-20);
} .contact-25__form .options-wrapper li:hover {
background: var(--neutral-trans-5);
} .contact-25__form .options-wrapper li label {
display: block;
cursor: pointer;
}   .contact-25__form .billing-tabs {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 0;
border: 1px solid var(--neutral-trans-20);
border-radius: var(--radius-m);
overflow: hidden;
}
.contact-25__form .billing-tabs li {
flex: 1 1 auto;
padding: 0;
border: none;
border-radius: 0;
border-right: 1px solid var(--neutral-trans-20);
text-align: center;
}
.contact-25__form .billing-tabs li:last-child {
border-right: none;
}
.contact-25__form .billing-tabs li:hover {
background: var(--neutral-trans-5);
}
.contact-25__form .billing-tabs li:has(input:checked) {
background: var(--jachting-primary, #22438F);
}
.contact-25__form .billing-tabs li:has(input:checked) label {
color: var(--white);
}
.contact-25__form .billing-tabs input[type="radio"] {
position: absolute;
opacity: 0;
width: 0;
height: 0;
}
.contact-25__form .billing-tabs label {
display: block;
padding: var(--space-xs) var(--space-s);
cursor: pointer;
font-size: var(--text-s);
font-weight: 500;
}    .contact-25__form .billing-box {
display: none;
margin-top: var(--space-s);
padding: 0;
border-radius: var(--radius-m);
background: transparent;
}    @media (min-width: 768px) {
.contact-25__form .personal-names {
grid-template-columns: 1fr 1fr 1fr;
}
} @media (min-width: 768px) {
.contact-25__form .address-fields.columns-3 {
grid-template-columns: 2fr 1fr 1fr;
}
}   .contact-25__form textarea {
width: 100%;
}   @media (min-width: 768px) {
.contact-25__form .coupon-row {
display: flex;
gap: var(--space-s);
align-items: center;
}
.contact-25__form .coupon-row input {
flex: 1 1 auto;
}
}   .contact-25__form .submit-button-wrapper,
.contact-25__form button[type="submit"] {
width: 100%;
}   .contact-25__form .form-group--quantity {
max-width: 160px;
}
.contact-25__form .form-group--quantity .quantity-wrapper {
display: inline-flex;
align-items: stretch;
border-radius: var(--radius-m, 8px);
border: 1px solid var(--neutral-trans-20);
overflow: hidden;
}
.contact-25__form .form-group--quantity .quantity-button {
width: 48px;
height: 48px;
border: none;
background: var(--neutral-trans-5);
font-size: 24px;
font-weight: 600;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
user-select: none;
transition: background 0.15s ease;
}
.contact-25__form .form-group--quantity .quantity-button:hover {
background: var(--neutral-trans-10);
}
.contact-25__form .form-group--quantity .quantity-button:active {
background: var(--neutral-trans-20);
}
.contact-25__form .form-group--quantity input[type="number"] {
width: 60px;
height: 48px;
border: none;
border-left: 1px solid var(--neutral-trans-20);
border-right: 1px solid var(--neutral-trans-20);
text-align: center;
font-size: var(--text-m, 1rem);
font-weight: 600;
background: var(--white, #fff);
-moz-appearance: textfield;
cursor: default;
}
.contact-25__form .form-group--quantity input[type="number"]::-webkit-outer-spin-button,
.contact-25__form .form-group--quantity input[type="number"]::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}   .contact-25__form .form-group--total {
text-align: right;
}
.contact-25__form .form-group--total label {
display: block;
text-align: right;
}
.contact-25__form .form-group--total input {
text-align: right;
}   @media (min-width: 768px) {
.contact-25__form .ico-row {
display: flex;
gap: var(--space-s);
align-items: flex-start;
}
.contact-25__form .ico-row .form-group:first-child {
flex: 1 1 auto;
}
.contact-25__form .ico-row .form-group--button {
padding-top: calc(var(--text-m, 1rem) * 1.2 + var(--space-xs, 0.25rem));
}
} .contact-25__form .ico-read-button.bricks-button {
padding: var(--space-xs) var(--space-m);
border-radius: var(--radius-m);
font-size: var(--text-s);
font-weight: 600;
cursor: pointer;
white-space: nowrap;
height: fit-content;
}
.contact-25__form .form-group--button {
padding-bottom: var(--space-s);
} .contact-25__form .finstat-error {
color: var(--error, #dc3545);
font-size: var(--text-s, 0.875rem);
padding-top: 0.15rem;
padding-bottom: var(--space-xs);
}   .contact-25__form .coupon-apply-button {
padding: var(--space-xs) var(--space-m);
border-radius: var(--radius-m);
border: none;
background: var(--jachting-primary, #22438F);
color: var(--white);
font-size: var(--text-s);
font-weight: 600;
cursor: pointer;
white-space: nowrap;
}
.contact-25__form .coupon-apply-button:hover {
filter: brightness(1.1);
} .contact-25__form .coupon-message {
font-size: var(--text-s, 0.875rem);
padding-top: 0.15rem;
padding-bottom: var(--space-xs);
}
.contact-25__form .coupon-message--success {
color: var(--success, #28a745);
}
.contact-25__form .coupon-message--error {
color: var(--error, #dc3545);
} .contact-25__form .discount-applied-message {
color: var(--success, #28a745);
font-size: var(--text-s, 0.875rem);
margin-top: 0.15rem;
text-align: right;
}   .contact-25__form .terms-loading {
display: flex;
align-items: center;
gap: var(--space-s, 1rem);
padding: var(--space-m, 1rem);
color: var(--neutral, #333);
}
.contact-25__form .terms-list .no-terms {
border: none;
background: none;
padding: var(--space-m, 1rem);
}
.contact-25__form .terms-list .no-terms p {
margin: 0;
color: var(--neutral-trans-60, #666);
} .contact-25__form .terms-list li {
cursor: pointer;
transition: background 0.15s ease, border-color 0.15s ease;
}
.contact-25__form .terms-list li:has(input:checked) {
background: rgba(34, 67, 143, 0.1);
border-color: var(--jachting-primary, #22438F);
} .contact-25__form .terms-list li input[type="radio"] {
position: absolute;
opacity: 0;
width: 0;
height: 0;
} .contact-25__form .terms-list li label {
display: flex;
flex-wrap: nowrap;
gap: var(--space-s, 0.5rem);
align-items: center;
justify-content: space-between;
width: 100%;
cursor: pointer;
}
.contact-25__form .terms-list .term-date {
font-weight: 500;
}
.contact-25__form .terms-list .term-right {
display: flex;
gap: var(--space-m, 1rem);
align-items: center;
margin-left: auto;
}
.contact-25__form .terms-list .term-availability {
display: flex;
align-items: center;
gap: 0.4em;
font-size: var(--text-s, 0.875rem);
color: var(--neutral-trans-60, #666);
}
.contact-25__form .terms-list .term-availability-dot {
display: inline-block;
width: 8px;
height: 8px;
border-radius: 50%;
background: var(--success, #28a745);
flex-shrink: 0;
}
.contact-25__form .terms-list .term-full-text {
color: var(--error, #dc3545);
}
.contact-25__form .terms-list .term-full-text .term-availability-dot {
background: var(--error, #dc3545);
}
.contact-25__form .terms-list .term-price {
font-weight: 600;
color: var(--jachting-primary, #22438F);
min-width: 80px;
text-align: right;
} .contact-25__form .terms-list li.term-full {
opacity: 0.6;
cursor: not-allowed;
}
.contact-25__form .terms-list li.term-full:hover {
background: transparent;
}
.contact-25__form .terms-list li.term-full label {
cursor: not-allowed;
}    .contact-25__form .terms-list li.term-hidden {
display: none;
} .contact-25__form .terms-change-btn {
display: block;
width: 100%;
margin-top: var(--space-s);
padding: var(--space-xs) var(--space-m);
border: none;
border-radius: var(--radius-m);
background: var(--jachting-primary, #22438F);
color: var(--white, #fff);
font-size: var(--text-m);
font-weight: 500;
line-height: 150%;
text-align: center;
cursor: pointer;
transition: filter 0.15s ease;
}
.contact-25__form .terms-change-btn:hover {
filter: brightness(1.1);
}   .contact-25__form .checkboxes-list {
border: 1px solid var(--neutral-trans-20);
border-radius: var(--radius-m);
padding: var(--space-s);
}
.contact-25__form .checkboxes-list li {
border: none;
padding: var(--space-xs) 0;
border-radius: 0;
}
.contact-25__form .checkboxes-list li:hover {
background: transparent;
}
.contact-25__form .checkboxes-list li:not(:last-child) { }    .contact-25__form .field-error-message {
display: block;
color: var(--error, #dc3545);
font-size: var(--text-s, 0.875rem);
margin-top: 0.15rem;
} .contact-25__form .form-group.field-error > label:first-child {
color: var(--error, #dc3545);
}
.contact-25__form .form-group.field-error input,
.contact-25__form .form-group.field-error select,
.contact-25__form .form-group.field-error textarea {
border-color: var(--error, #dc3545);
}
.contact-25__form .form-group.field-error input:focus,
.contact-25__form .form-group.field-error select:focus,
.contact-25__form .form-group.field-error textarea:focus {
outline-color: var(--error, #dc3545);
box-shadow: 0 0 0 2px var(--error-trans-20, rgba(220, 53, 69, 0.2));
} .contact-25__form .checkboxes-list li.field-error {
background: var(--error-trans-10, rgba(220, 53, 69, 0.1));
}
.contact-25__form .checkboxes-list li.field-error label {
color: var(--error, #dc3545);
}   .jachting-reg-form-success {
text-align: center;
padding: var(--space-xl, 3rem) var(--space-m);
}
.jachting-reg-form-success h3 {
color: var(--jachting-primary, #22438F);
margin-bottom: var(--space-s);
}
.jachting-reg-form-success p {
color: var(--neutral, #333);
}    .contact-25__form .company-toggle-list {
border: none;
padding: 0;
}
.contact-25__form .company-toggle-list li {
border: none;
padding: 0;
border-radius: 0;
}
.contact-25__form .company-toggle-list li:hover {
background: transparent;
}
.contact-25__form .company-toggle-list label {
font-size: var(--text-s, 0.875rem);
font-weight: 400;
color: var(--neutral-trans-80, #555);
} .contact-25__form .company-billing-box {
margin-top: var(--space-s);
padding: var(--space-m);
border: 1px solid var(--neutral-trans-20);
border-radius: var(--radius-m);
background: var(--neutral-trans-5, #f9f9f9);
} .contact-25__form .section-heading {
font-size: var(--text-l, 1.125rem);
font-weight: 600;
color: var(--neutral);
margin-bottom: var(--space-xs);
} .contact-25__form .form-note {
font-size: var(--text-s, 0.875rem);
color: var(--neutral-trans-60, #666);
margin-top: var(--space-s);
margin-bottom: 0;
font-style: italic;
}