/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */



/* =========================================================
   CF7 FRAME STYLE - CLEAN BASELINE (WORKING VERSION)
   ========================================================= */

.form-style-1{

    --accent:#ef3f4b;
    --text:#111;
    --muted:#777;
    --border:#e2e2e2;

    width:100%;
}

/* =========================
   LAYOUT
========================= */

.form-style-1 .columns_wrap{
    display:flex;
    gap:40px;
}

.form-style-1 .column-1_2,
.form-style-1 .column-1_1{
    flex:1;
}

@media(max-width:768px){
    .form-style-1 .columns_wrap{
        flex-direction:column;
        gap:20px;
    }
}

.form-style-1 .columns_wrap > [class*=column-]{
    padding-bottom:37px;
}

.form-style-1 .columns_wrap.margin-bottom > [class*=column-]{
    padding-bottom:60px;
}

/* =========================
   WRAPPER (IMPORTANT FIX POINT)
========================= */

.form-style-1 .style-line{
    position:relative;
    display:block;
    width:100%;
    padding-bottom:10px;
}

/* =========================
   ICONS (THEME FONTELLO - WORKING)
========================= */

.form-style-1 .style-line:before{

    font-family:"fontello";
    font-weight:400;

    position:absolute;
    left:0;
    top:10px;

    font-size:18px;
    color:var(--muted);

    pointer-events:none;
}

.icon-name:before{ content:"\e9ae"; }
.icon-email:before{ content:"\e9a3"; }
.icon-phone:before{ content:"\e9b8"; }
.icon-subject:before{ content:"\e9cd"; }
.icon-textarea:before{ content:"\e9e7"; }

.form-style-1 .style-line:focus-within:before{
    color:var(--accent);
}

/* =========================
   INPUTS
========================= */

.form-style-1 input,
.form-style-1 textarea,
.form-style-1 select{

    width:100%;
    padding:13px 0 13px 36px;

    background:transparent;
    border:none;
    outline:none;

    font-size:16px;
    color:var(--text);

    box-shadow:none;
}

/* placeholder */
.form-style-1 ::placeholder{
    color:var(--muted);
}

/* textarea */
.form-style-1 textarea{
    min-height:140px;
    resize:vertical;
}

/* =========================
   UNDERLINE (SIMPLE + RELIABLE)
========================= */

.form-style-1 .style-line{
    border-bottom:1px solid var(--border);
}

/* animated red line */
.form-style-1 .style-line::after{

    content:"";
    position:absolute;

    left:0;
    bottom:-1px;

    height:1px;
    width:0%;

    background:var(--accent);

    transition:width .35s ease;
}

.form-style-1 .style-line:focus-within::after{
    width:100%;
}

/* =========================
   BUTTON
========================= */

.form-style-1 .wpcf7-submit,
.form-style-1 input[type="submit"]{

    background:#ef3f4b !important;
    color:#fff !important;

    border:1px solid #ef3f4b !important;

    padding:18px 44px;

    border-radius:999px;

    font-size:15px;
    font-weight:600;

    cursor:pointer;

    transition:.3s ease;
}

.form-style-1 .wpcf7-submit:hover,
.form-style-1 input[type="submit"]:hover{

    background:#aaaaaa !important;
    color:#ef3f4b !important;
    border-color:#ef3f4b !important;

    transform:translateY(-2px);
}

/* =========================
   ACCEPTANCE
========================= */

.form-style-1 .wpcf7-acceptance{
    margin-top:12px;
    font-size:14px;
    color:var(--muted);
}

.form-style-1 .wpcf7-acceptance a{
    color:var(--accent);
    text-decoration:none;
}

.form-style-1 .wpcf7-acceptance a:hover{
    text-decoration:underline;
}

/* =========================
   VALIDATION
========================= */

.form-style-1 .wpcf7-not-valid-tip{
    font-size:13px;
    margin-top:5px;
}

.form-style-1 .wpcf7-response-output{
    margin-top:37px;
}


/* =========================================================
   ICON SYSTEM (ELEMENTOR FONT AWESOME SAFE)
   ========================================================= */

.form-style-1 .style-line{
    position: relative;
}

/* ICON BASE */
.form-style-1 .style-line:before{

    font-family:"Font Awesome 5 Free";
    font-weight:900;

    position:absolute;
    left:0;
    top:10px;   /* 👈 forces top alignment */

    transform:none;  /* 👈 remove vertical centering */

    font-size:16px;
    color:var(--muted);

    pointer-events:none;
}

/* ICONS */
.icon-name:before{ content: "\f007"; }     /* user */
.icon-email:before{ content: "\f0e0"; }    /* envelope */
.icon-phone:before{ content: "\f095"; }    /* phone */
.icon-subject:before{ content: "\f02b"; }  /* tag */
.icon-textarea:before{ content: "\f086"; } /* comments */

/* focus state */
.form-style-1 .style-line:focus-within:before{
    color: var(--accent);
}

/* spacing so text doesn't overlap icon */
.form-style-1 input,
.form-style-1 textarea,
.form-style-1 select{
    padding-left: 40px;
}