@font-face {
    font-family  : 'ptk-font';
    font-display : swap;
    src          : url('../fonts/ptk-font-bold.eot?63f4t6');
    src          : url('../fonts/ptk-font-bold.eot?63f4t6#iefix') format('embedded-opentype'), url('../fonts/ptk-font-bold.woff2') format('woff2'), url('../fonts/ptk-font-bold.woff') format('woff'), url('../fonts/ptk-font-bold.otf') format('otf');
    font-weight  : 700;
    font-style   : normal;
}

@font-face {
    font-family  : 'ptk-font';
    font-display : swap;
    src          : url('../fonts/ptk-font-medium.eot?63f4t6');
    src          : url('../fonts/ptk-font-medium.eot?63f4t6#iefix') format('embedded-opentype'), url('../fonts/ptk-font-medium.woff2') format('woff2'), url('../fonts/ptk-font-medium.woff') format('woff'), url('../fonts/ptk-font-medium.otf') format('otf');
    font-weight  : 500;
    font-style   : normal;
}

*,
*::before,
*::after {
    box-sizing : border-box;
}

body {
    padding     : 0;
    margin      : 1.5rem 0;
    background  : #2E55C9;
    font-family : 'ptk-font', sans-serif;
}

.wrap {
    max-width    : 650px;
    margin       : 0 auto;
    font-size    : 12px;
    color        : #FFF;
    padding-left : 100px;
    position     : relative;
}

.wrap .logo {
    position  : absolute;
    top       : 82px;
    left      : -88px;
    transform : rotate(-90deg);
}

.wrap:after {
    content : " ";
    display : table;
    clear   : both;
}

.wrap h1 {
    font-size   : 2em;
    margin      : 0 0 0.75em;
    color       : #FFF;
    font-weight : 700;
}

.TTWForm-wrapper.wrapped {
    padding       : 30px 30px 30px 30px;
    border-radius : 4px;
}

/** Field Styles **/
.TTWForm .field,
.TTWForm #form-title.field {
    padding-bottom : 1.25em;
    position       : relative;
}

.TTWForm .input-wrap {
    position      : relative;
    opacity       : 0;
    margin-bottom : 9px;
}

.TTWForm .input-wrap.select-wrap label {
    font-size : 12px;
    top       : 2px;
    color     : gray;
}

.TTWForm .input-wrap.select-wrap select {
    padding : 18px 8px 10px;
    width   : 100%;
}

.TTWForm .field:first-child {
    padding-top : 0;
}

.TTWForm .field:last-child {
    padding-bottom : 0;
}

.TTWForm input,
.TTWForm textarea,
.TTWForm .selector,
.TTWForm .uploader {
    width         : 100%;
    font-family   : 'ptk-font', sans-serif;
    font-size     : 14px;
    padding       : 18px 8px 10px;
    color         : #010101;
    border        : 1px solid #C2D3D7;
    outline       : none;
    display       : inline-block;
    position      : relative;
    border-radius : 2px;
    transition    : 0.3s ease-in-out;
}

.TTWForm input:focus,
.TTWForm textarea:focus,
.TTWForm .selector:focus,
.TTWForm .uploader:focus,
.TTWForm input:active,
.TTWForm textarea:active,
.TTWForm .selector:active,
.TTWForm .uploader:active {
    box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.5);
}

.TTWForm .option {
    margin : 6px 0;
}

.TTWForm .option-title {
    position : relative;
    top      : 2px;
    color    : #798E94;
}

.TTWForm textarea {
    overflow : hidden;
}

.TTWForm label {
    color      : #2E55C9;
    font-size  : 16px;
    position   : absolute;
    left       : 8px;
    top        : 12px;
    transition : all 0.3s ease-in-out;
}

.TTWForm label.active,
.TTWForm label.up {
    font-size : 12px;
    top       : 2px;
    color     : gray;
}

.TTWForm [type="submit"] {
    width           : 100%;
    text-align      : center;
    font-size       : 14px;
    text-decoration : none;
    display         : block;
    margin          : 12px -2px 12px 0;
    padding         : 6px 24px;
    height          : 42px;
    cursor          : pointer;
    background      : #010101;
    border          : 0;
    color           : #FFF;
}

.TTWForm [type="submit"]:hover {
    opacity : 0.7;
}

/**Error Messages **/
.TTWForm .error {
    height    : 16px;
    font-size : 12px;
    color     : red;
    position  : relative;
    top       : -1px;
}

/** Loading Indicator **/
.loading-text {
    position : relative;
    top      : -3px;
}

/** IE Hacks **/
.TTWForm input {
    *height : 28px;
}

/** Clearfix */
.clearfix:after {
    clear       : both;
    content     : ' ';
    display     : block;
    font-size   : 0;
    line-height : 0;
    visibility  : hidden;
    width       : 0;
    height      : 0;
}

/*
	The following zoom:1 rule is specifically for IE6 + IE7.
	Move to separate stylesheet if invalid CSS is a problem.
*/
* html .clearfix,
*:first-child + html .clearfix {
    zoom : 1;
}

.none {
    display : none;
}

.flx {
    float        : left;
    width        : 30%;
    margin-right : 3.333%;
}

.flx .selector.selector {
    margin-bottom : 0;
}

#field10-container a {
    position    : absolute;
    left        : 100%;
    top         : 45px;
    font-size   : 1rem;
    white-space : nowrap;
    margin-left : 12px;
}

#field10-container a.nolink {
    text-decoration : none;
    color           : #000;
    cursor          : auto;
}

#field10-container a img {
    float  : left;
    margin : 3px 5px 0 0;
}

.form-title p {
    width       : 500px;
    line-height : 22px;
}

.msg {
    position   : fixed;
    opacity    : 0;
    padding    : 1rem 1.5em;
    z-index    : 3;
    box-shadow : 0 0 15px rgba(0, 0, 0, 0.5);
}

/*
---
For use with the Uniform plugin:
http://pixelmatrixdesign.com/uniform/
---
Generated by Uniform Theme Generator:
http://pixelmatrixdesign.com/uniform/themer.html

*/
/* Global Declaration */
div.selector,
div.checker span,
div.radio span,
div.uploader,
div.uploader span.action {
    background-repeat : no-repeat;
}

.selector,
.radio,
.checker,
.uploader,
.selector *,
.radio *,
.checker *,
.uploader * {
    margin  : 0;
    padding : 0;
}

/* SPRITES */
/* Select */
div.selector {
    padding    : 6px 6px;
    background : transparent url(../images/select-bg.jpg) no-repeat right top scroll;
}

div.selector,
div.selector.focus,
div.selector.hover {
    background-position : right top;
    line-height         : 28px;
    height              : 28px;
}

div.selector span {
    height      : 28px;
    line-height : 28px;
    padding     : 0 0 0 6px;
}

div.selector select {
    /* change these to adjust positioning of select element */
    top  : 0px;
    left : 0px;
}

/* Checkbox */
div.checker {
    width  : 19px;
    height : 19px;
}

div.checker input {
    width  : 19px;
    height : 19px;
}

div.checker span {
    background : transparent url(../images/check-radio-bg.png) no-repeat left top scroll;
    height     : 19px;
    width      : 19px;
}

div.checker span.checked {
    background-position : right top;
}

/* Radio */
div.radio {
    width  : 18px;
    height : 18px;
}

div.radio input {
    width  : 18px;
    height : 18px;
}

div.radio span {
    height     : 18px;
    width      : 18px;
    background : transparent url(../images/check-radio-bg.png) no-repeat left bottom scroll;
}

div.radio span.checked {
    background-position : -17px bottom;
}

/* Uploader */
div.uploader {
    background : transparent url(../images/file-bg.jpg) no-repeat right top scroll;
}

div.uploader,
div.uploader span.action {
    height : 28px;
}

div.uploader span.action {
    line-height : 28px;
}

div.uploader span.filename {
    height      : 28px;
    /* change this line to adjust positioning of filename area */
    margin      : 0 0 0 2px;
    line-height : 28px;
}

/* PRESENTATION */
/* Select */
div.selector {
    margin-bottom : 20px;
    width         : 100%;
}

div.selector select {
    width       : 100%;
    font-family : "Helvetica Neue", Helvetica, Arial, sans-serif;
    border      : solid 1px #FFF;
}

div.selector span {
    cursor : pointer;
}

div.selector span {
    color : #798E94;
    width : 100%;
}

div.selector.disabled span {
    color : #BBB;
}

/* Checker */
div.checker {
    margin-right : 10px;
}

/* Radio */
div.radio {
    margin-right : 10px;
}

/* Uploader */
div.uploader {
    width         : 100%;
    margin-bottom : 20px;
    cursor        : pointer;
}

div.uploader span.action {
    width       : 85px;
    text-align  : center;
    text-shadow : #FFF 0px 1px 0px;
}

div.uploader span.filename {
    color        : #798E94;
    width        : 100%;
    border-right : solid 1px #BBB;
    font-size    : 90%;
}

div.uploader input {
    width : 100%;
}

div.uploader.disabled span.action {
    color : #AAA;
}

div.uploader.disabled span.filename {
    border-color : #DDD;
    color        : #AAA;
}

/*

CORE FUNCTIONALITY

Not advised to edit stuff below this line
-----------------------------------------------------
*/
.selector select:focus,
.radio input:focus,
.checker input:focus,
uploader input:focus {
    outline : 0;
}

/* Select */
div.selector {
    position     : relative;
    padding-left : 10px;
    overflow     : hidden;
}

div.selector span {
    display       : block;
    float         : left;
    overflow      : hidden;
    text-overflow : ellipsis;
    white-space   : nowrap;
}

div.selector select {
    position   : absolute;
    opacity    : 0;
    height     : 28px;
    border     : none;
    background : none;
}

/* Checker */
div.checker {
    position : relative;
    float    : left;
}

div.checker span {
    display    : block;
    float      : left;
    text-align : center;
}

div.checker input {
    opacity    : 0;
    display    : inline-block;
    background : none;
}

/* Radio */
div.radio {
    position : relative;
    float    : left;
}

div.radio span {
    display    : block;
    float      : left;
    text-align : center;
}

div.radio input {
    opacity    : 0;
    text-align : center;
    display    : inline-block;
    background : none;
}

/* Uploader */
div.uploader {
    position : relative;
    float    : left;
    overflow : hidden;
    padding  : 0 !important;
}

div.uploader span.action {
    float    : left;
    display  : inline;
    padding  : 2px 0;
    overflow : hidden;
    cursor   : pointer;
}

div.uploader span.filename {
    padding       : 0 10px;
    float         : left;
    display       : block;
    overflow      : hidden;
    text-overflow : ellipsis;
    white-space   : nowrap;
}

div.uploader input {
    opacity  : 0;
    position : absolute;
    top      : 0;
    right    : 0;
    bottom   : 0;
    float    : right;
    height   : 16px;
    border   : none;
}

div.uploader span.action,
div.uploader:hover span.action,
div.uploader.active span.action,
div.uploader.focus span.action {
    display     : block;
    position    : absolute;
    top         : 0;
    right       : 0;
    padding     : 0;
    width       : 96px;
    height      : 28px;
    text-indent : -99999px;
}

/** Fixes **/
div.checker input,
div.radio input {
    margin : 0 !important;
    top    : -1px;
}

.selector {
    padding : 0 !important;
}

/*# sourceMappingURL=style.css.map */

/* Add these styles to style.css */

/* Styles for the Dropzone area to make it consistent with other input-wraps */
.file-dropzone-area {
    opacity : 0;
    /* For GSAP animation */
    /* Add any specific spacing if needed */
}

.file-dropzone-area p {
    /* The <p> tag above Dropzone */
    margin-bottom : 10px;
    /* Space between text and Dropzone box */
    color         : #2E55C9;
    /* Match label color or use default */
    font-size     : 16px;
    /* Match label font size or use default */
}

/* Basic Dropzone styling (Dropzone's own CSS handles most of this) */
.dropzone {
    border          : 2px dashed #2E55C9;
    /* Example: match your theme's accent color */
    border-radius   : 4px;
    background      : white;
    padding         : 20px;
    min-height      : 150px;
    /* Adjust as needed */
    display         : flex;
    flex-direction  : column;
    justify-content : center;
    align-items     : center;
    color           : #333;
}

.dropzone .dz-message {
    font-weight : 500;
    font-size   : 1.1em;
    color       : #555;
}

body .dropzone .dz-preview .dz-image {
    border-radius : 20px;
    width         : 100%;
    height        : 120px;
    background    : #DDD;
}

.dropzone .dz-preview .dz-image img {
    width         : 100%;
    border-radius : 20px;
    height        : 100%;
    object-fit    : cover;
}

.dropzone .dz-preview .dz-details {
    background-color : rgba(255, 255, 255, 0.9);
    /* Lighter details background */
    color            : #333;
}

.dropzone .dz-preview .dz-remove {
    color           : #DC352F;
    /* Match your error color for remove links */
    font-size       : 0.9em;
    text-decoration : none;
}

.dropzone .dz-preview .dz-remove:hover {
    text-decoration : underline;
}

/* Ensure Dropzone elements are not affected by generic input styling if too broad */
.TTWForm .dropzone input[type="file"] {
    /* Dropzone creates its own hidden file input */
    display : none !important;
    /* Should already be handled by Dropzone but good for override */
}

.TTWForm .dropzone,
.TTWForm .dropzone * {
    /* Reset any inherited styles from .TTWForm input, .TTWForm textarea if they interfere */
    /* For example, if .TTWForm input has a specific width or padding that breaks Dropzone */
    /* box-shadow: none; */
    /* If inheriting unwanted shadows */
}

.TTWForm .input-wrap.file-dropzone-area {
    position : relative;
    z-index  : 100;
}

.TTWForm .dropzone {
    padding               : 10px;
    display               : grid;
    align-items           : start;
    gap                   : 10px;
    position              : relative;
    z-index               : 100;
    grid-template-columns : repeat(2, calc(50% - 10px));
}

@media screen and (min-width : 441px) {
    .TTWForm .dropzone {
        grid-template-columns : repeat(3, calc(33.333333332% - 10px));
    }
}

@media screen and (min-width : 591px) {
    .TTWForm .dropzone {
        grid-template-columns : repeat(4, calc(25% - 10px));
    }
}

.TTWForm .dz-default.dz-message {
    width       : 100%;
    margin      : 0;
    align-self  : center;
    grid-column : span 2;
}

@media screen and (min-width : 441px) {
    .TTWForm .dz-default.dz-message {
        grid-column : span 3;
    }
}

@media screen and (min-width : 591px) {
    .TTWForm .dz-default.dz-message {
        grid-column : span 4;
    }
}


.TTWForm .dropzone .dz-preview {
    margin : 0;
}

.TTWForm .dropzone .dz-progress {
    display : none;
}

.dropzone .dz-preview .dz-details {
    bottom     : 17px;
    box-sizing : border-box;
}

.TTWForm .dropzone .dz-preview.dz-file-preview {
    position : relative;
    z-index  : 1;
}

.TTWForm .dropzone .dz-preview.dz-file-preview .dz-image {
    background : #999;
}

.TTWForm .dropzone .dz-preview.dz-file-preview:hover {
    z-index : 100;
}

.TTWForm .dropzone .dz-preview .dz-success-mark,
.TTWForm .dropzone .dz-preview .dz-error-mark {
    margin-top : -35px;
}

.TTWForm .dropzone .dz-preview .dz-error-mark svg {
    fill   : darkred;
    stroke : darkred;
}

.TTWForm .dropzone .dz-add-file-btn {
    border          : 3px solid #DC352F;
    border-radius   : 20px;
    width           : 100%;
    height          : 120px;
    display         : flex;
    flex-direction  : column;
    align-items     : center;
    justify-content : center;
    color           : #DC352F;
    font-size       : 16px;
    cursor          : pointer;
}

.TTWForm .dropzone .dz-add-file-btn span {
    font-size : 48px;
    display   : block;
}