.elementor-106 .elementor-element.elementor-element-ed3dce6{--display:flex;}.elementor-106 .elementor-element.elementor-element-b26acdd{--spacer-size:50px;}.elementor-106 .elementor-element.elementor-element-3a3f61f6{--display:flex;--min-height:50vh;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:100px 100px;--row-gap:100px;--column-gap:100px;--padding-top:5%;--padding-bottom:5%;--padding-left:5%;--padding-right:5%;}.elementor-106 .elementor-element.elementor-element-3a3f61f6:not(.elementor-motion-effects-element-type-background), .elementor-106 .elementor-element.elementor-element-3a3f61f6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #1C4258 35%, #122631 70%);}.elementor-106 .elementor-element.elementor-element-3a3f61f6.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-106 .elementor-element.elementor-element-4e75975 .elementor-icon-wrapper{text-align:start;}.elementor-106 .elementor-element.elementor-element-4e75975.elementor-view-stacked .elementor-icon{background-color:#fab617;}.elementor-106 .elementor-element.elementor-element-4e75975.elementor-view-framed .elementor-icon, .elementor-106 .elementor-element.elementor-element-4e75975.elementor-view-default .elementor-icon{color:#fab617;border-color:#fab617;}.elementor-106 .elementor-element.elementor-element-4e75975.elementor-view-framed .elementor-icon, .elementor-106 .elementor-element.elementor-element-4e75975.elementor-view-default .elementor-icon svg{fill:#fab617;}.elementor-106 .elementor-element.elementor-element-a6bec2f{--display:flex;}.elementor-106 .elementor-element.elementor-element-c3775c6 .elementor-icon-wrapper{text-align:start;}.elementor-106 .elementor-element.elementor-element-c3775c6.elementor-view-stacked .elementor-icon{background-color:#fab617;}.elementor-106 .elementor-element.elementor-element-c3775c6.elementor-view-framed .elementor-icon, .elementor-106 .elementor-element.elementor-element-c3775c6.elementor-view-default .elementor-icon{color:#fab617;border-color:#fab617;}.elementor-106 .elementor-element.elementor-element-c3775c6.elementor-view-framed .elementor-icon, .elementor-106 .elementor-element.elementor-element-c3775c6.elementor-view-default .elementor-icon svg{fill:#fab617;}.elementor-106 .elementor-element.elementor-element-adfd154{background-color:#000000;}.elementor-106 .elementor-element.elementor-element-adfd154.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-106 .elementor-element.elementor-element-df3b184{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:120px;--padding-bottom:120px;--padding-left:15px;--padding-right:15px;}.elementor-106 .elementor-element.elementor-element-28db973{border-radius:7px 7px 7px 7px;}.elementor-106 .elementor-element.elementor-element-28db973 iframe{height:600px;filter:brightness( 95% ) contrast( 100% ) saturate( 20% ) blur( 0px ) hue-rotate( 0deg );}@media(min-width:768px){.elementor-106 .elementor-element.elementor-element-3a3f61f6{--width:100%;}}@media(max-width:1366px){.elementor-106 .elementor-element.elementor-element-df3b184{--padding-top:100px;--padding-bottom:100px;--padding-left:15px;--padding-right:15px;}.elementor-106 .elementor-element.elementor-element-28db973 iframe{height:550px;}}@media(max-width:1200px){.elementor-106 .elementor-element.elementor-element-df3b184{--padding-top:80px;--padding-bottom:80px;--padding-left:15px;--padding-right:15px;}}@media(max-width:1024px){.elementor-106 .elementor-element.elementor-element-3a3f61f6{--min-height:600px;--padding-top:10%;--padding-bottom:10%;--padding-left:5%;--padding-right:5%;}.elementor-106 .elementor-element.elementor-element-df3b184{--padding-top:80px;--padding-bottom:80px;--padding-left:15px;--padding-right:15px;}.elementor-106 .elementor-element.elementor-element-28db973 iframe{height:500px;}}@media(max-width:767px){.elementor-106 .elementor-element.elementor-element-3a3f61f6{--gap:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:20%;--padding-bottom:20%;--padding-left:5%;--padding-right:5%;}.elementor-106 .elementor-element.elementor-element-adfd154{width:var( --container-widget-width, 467px );max-width:467px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 80px;padding:0px 0px 0px 0px;--container-widget-width:467px;--container-widget-flex-grow:0;}.elementor-106 .elementor-element.elementor-element-adfd154.elementor-element{--align-self:center;}.elementor-106 .elementor-element.elementor-element-df3b184{--padding-top:60px;--padding-bottom:60px;--padding-left:15px;--padding-right:15px;}.elementor-106 .elementor-element.elementor-element-28db973 iframe{height:450px;}}/* Start custom CSS for shortcode, class: .elementor-element-adfd154 *//* =========================================
   KARIKARI CONTACT FORM
========================================= */

.karikari-contact-form {
    width: 100%;
    color: #ffffff;
    font-family: inherit;
}


/* =========================================
   SECTION TITLE
========================================= */

.form-section-title {
    display: block;
    margin-bottom: 14px;
    color: #9fb2c7;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.2px;
}

.form-section-title span,
.form-field label span {
    color: #f4d000;
}


/* =========================================
   DISCUSSION CARDS
========================================= */

.discussion-options {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-bottom: 30px;
}

.discussion-card {
    position: relative;
    display: block;
    min-height: 108px;
    padding: 18px;
    background: #17191c;
    border: 1px solid #363a3f;
    cursor: pointer;
    transition: all 0.25s ease;
}


/* Hide radio button */

.discussion-card input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}


/* Card title */

.discussion-card .wpcf7-list-item-label {
    display: block;
    color: #ffffff;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
}


/* Description */

.discussion-description {
    display: block;
    margin-top: 9px;
    color: #8ea1b5;
    font-size: 14px;
    line-height: 1.45;
}


/* Selected card */

.discussion-card:has(input[type="radio"]:checked) {
    border-color: #f4d000;
    background: #24230f;
}


/* Hover */

.discussion-card:hover {
    border-color: #f4d000;
}


/* =========================================
   ABOUT YOU
========================================= */

.about-you-section h3 {
    margin: 0 0 18px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
}


/* =========================================
   TWO COLUMN ROW
========================================= */

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-bottom: 17px;
}


/* =========================================
   FORM LABELS
========================================= */

.form-field label {
    display: block;
    margin-bottom: 9px;
    color: #9fb2c7;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.7px;
}

/* =========================================
   INPUTS
========================================= */

.karikari-contact-form input[type="text"],
.karikari-contact-form input[type="email"],
.karikari-contact-form select,
.karikari-contact-form textarea {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #363a3f;
    border-radius: 0;
    background: #181a1d;
    color: #ffffff;
    padding: 14px;
    font-family: inherit;
    font-size: 14px;
    outline: none;
    transition: border-color 0.2s ease;
}


/* Placeholder */

.karikari-contact-form input::placeholder,
.karikari-contact-form textarea::placeholder {
    color: #697787;
    opacity: 1;
}


/* Focus */

.karikari-contact-form input:focus,
.karikari-contact-form select:focus,
.karikari-contact-form textarea:focus {
    border-color: #f4d000;
}


/* =========================================
   COUNTRY
========================================= */

.country-field {
    width: 50%;
    margin-bottom: 28px;
}


/* =========================================
   TEXTAREA
========================================= */

.project-field textarea {
    min-height: 108px;
    resize: vertical;
}


/* =========================================
   SUBMIT BUTTON
========================================= */

.form-submit {
    margin-top: 25px;
}

.form-submit input[type="submit"] {
    border: none;
    border-radius: 0;
    background: #FAB617;
    color: #0b0d0f;
    padding: 15px 26px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.7px;
    cursor: pointer;
    transition: all 0.25s ease;
}

.form-submit input[type="submit"]:hover {
    background: #ffffff;
    color: #0b0d0f;
}


/* =========================================
   VALIDATION
========================================= */

.wpcf7-not-valid {
    border-color: #d9534f !important;
}

.wpcf7-not-valid-tip {
    margin-top: 5px;
    font-size: 12px;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .discussion-options {
        grid-template-columns: 1fr;
    }

    .form-row {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .country-field {
        width: 100%;
    }

    .discussion-card {
        min-height: auto;
    }

}
/* =====================================================
   KARIKARI LAB — RESPONSIVE CONTACT FORM
   ===================================================== */


/* =====================================================
   TABLET — 768px to 1024px
   ===================================================== */

@media (min-width: 768px) and (max-width: 1024px) {

    .karikari-contact-form {
        width: 100%;
    }

    /* Discussion cards */
    .discussion-options {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }

    .discussion-card {
        min-height: 115px;
        padding: 18px;
    }

    /* Two-column fields remain side-by-side */
    .form-row {
        grid-template-columns: 1fr 1fr;
        gap: 15px;
    }

    /* Country */
    .country-field {
        width: 50%;
    }

    /* Inputs */
    .karikari-contact-form input[type="text"],
    .karikari-contact-form input[type="email"],
    .karikari-contact-form select,
    .karikari-contact-form textarea {
        font-size: 14px;
        padding: 13px;
    }

    /* Text */
    .discussion-card .wpcf7-list-item-label {
        font-size: 15px;
    }

    .discussion-description {
        font-size: 13px;
    }
}


/* =====================================================
   MOBILE — BELOW 767px
   ===================================================== */

@media (max-width: 767px) {

    .karikari-contact-form {
        width: 100%;
        max-width: 100%;
    }


    /* ---------------------------------------------
       DISCUSSION OPTIONS
       --------------------------------------------- */

    .discussion-options {
        display: grid;
        grid-template-columns: 1fr;
        gap: 12px;
        width: 100%;
    }

    .discussion-card {
        width: 100%;
        min-height: auto;
        box-sizing: border-box;
        padding: 17px;
    }

    .discussion-card .wpcf7-list-item-label {
        font-size: 15px;
        line-height: 1.35;
    }

    .discussion-description {
        font-size: 13px;
        line-height: 1.45;
        margin-top: 7px;
    }


    /* ---------------------------------------------
       ABOUT YOU
       --------------------------------------------- */

    .about-you-section h3 {
        font-size: 18px;
        margin-bottom: 18px;
    }


    /* ---------------------------------------------
       FORM ROWS
       --------------------------------------------- */

    .form-row {
        display: grid;
        grid-template-columns: 1fr;
        gap: 16px;
        margin-bottom: 16px;
    }


    /* ---------------------------------------------
       COUNTRY
       --------------------------------------------- */

    .country-field {
        width: 100%;
        margin-bottom: 24px;
    }


    /* ---------------------------------------------
       LABELS
       --------------------------------------------- */

    .form-field label,
    .form-section-title {
        font-size: 12px;
        letter-spacing: 0.8px;
    }


    /* ---------------------------------------------
       INPUTS
       --------------------------------------------- */

    .karikari-contact-form input[type="text"],
    .karikari-contact-form input[type="email"],
    .karikari-contact-form select,
    .karikari-contact-form textarea {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        font-size: 14px;
        padding: 13px;
    }


    /* ---------------------------------------------
       TEXTAREA
       --------------------------------------------- */

    .project-field textarea {
        min-height: 130px;
    }


    /* ---------------------------------------------
       SUBMIT BUTTON
       --------------------------------------------- */

    .form-submit {
        margin-top: 22px;
    }

    .form-submit input[type="submit"] {
        width: 100%;
        padding: 15px 20px;
        text-align: center;
    }
}


/* =====================================================
   SMALL PHONES — BELOW 480px
   ===================================================== */

@media (max-width: 480px) {

    .karikari-contact-form {
        padding: 0;
    }


    /* Discussion cards */

    .discussion-card {
        padding: 15px;
    }

    .discussion-card .wpcf7-list-item-label {
        font-size: 14px;
    }

    .discussion-description {
        font-size: 12px;
    }


    /* Heading */

    .about-you-section h3 {
        font-size: 17px;
    }


    /* Inputs */

    .karikari-contact-form input[type="text"],
    .karikari-contact-form input[type="email"],
    .karikari-contact-form select,
    .karikari-contact-form textarea {
        padding: 12px;
        font-size: 14px;
    }


    /* Project textarea */

    .project-field textarea {
        min-height: 120px;
    }
}/* End custom CSS */