/*
   =========================================================
   ZOOM PHOTO STUDIO - ENQUIRY-FORMS.CSS v1.1
   Shared by Contact and Book a Consultation
   =========================================================
*/


/*
   =========================================================
   01. PAGE BASE
   =========================================================
*/

.enquiry_page{
    --enquiry-cream:#f8f3ed;
    --enquiry-soft:#f2ebe3;
    --enquiry-border:#dfd3c7;
    --enquiry-text:#24201c;
    --enquiry-muted:#71685f;
    --enquiry-accent:#b48758;
    background:#fff;
    color:var(--enquiry-text);
}

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

.enquiry_kicker,
.enquiry_eyebrow{
    margin:0 0 18px;
    color:var(--enquiry-accent);
    font-size:.6875rem;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
}


/*
   =========================================================
   02. HERO
   =========================================================
*/

.enquiry_hero{
    padding:clamp(75px,9vw,130px) 24px;
    background:var(--enquiry-cream);
    border-bottom:1px solid var(--enquiry-border);
    text-align:center;
}

.enquiry_hero_inner{
    max-width:850px;
    margin:0 auto;
}

.enquiry_hero h1{
    margin:0;
    font-family:var(--zoom-serif);
    font-size:clamp(3rem,6vw,4.875rem);
    font-weight:400;
    line-height:1.03;
}

.enquiry_hero p:last-child{
    max-width:650px;
    margin:28px auto 0;
    color:var(--enquiry-muted);
    font-size:var(--zoom-body-size);
    line-height:1.8;
}


/*
   =========================================================
   03. FORM LAYOUT
   =========================================================
*/

.enquiry_form_section{
    padding:clamp(60px,7vw,105px) 24px;
    background:#fff;
}

.enquiry_form_layout{
    display:grid;
    max-width:1180px;
    margin:0 auto;
    grid-template-columns:minmax(260px,.72fr) minmax(0,1.45fr);
    gap:54px;
    align-items:start;
}

.enquiry_details{
    padding:42px;
    background:var(--enquiry-soft);
    border:1px solid var(--enquiry-border);
}

.enquiry_details h2{
    margin:0;
    font-family:var(--zoom-serif);
    font-size:2.375rem;
    font-weight:400;
    line-height:1.1;
}

.enquiry_details > p:not(.enquiry_kicker){
    margin:22px 0 34px;
    color:var(--enquiry-muted);
    font-size:var(--zoom-body-size);
    line-height:1.8;
}

.enquiry_detail_item{
    display:grid;
    padding:19px 0;
    border-top:1px solid var(--enquiry-border);
    gap:6px;
    color:var(--enquiry-muted);
    font-size:var(--zoom-body-size);
    line-height:1.6;
}

.enquiry_detail_label{
    color:var(--enquiry-text);
    font-size:.625rem;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.enquiry_form_card{
    padding:clamp(30px,4vw,52px);
    border:1px solid var(--enquiry-border);
    background:#fff;
}

.enquiry_error{
    margin:0 0 28px;
    padding:16px 18px;
    border:1px solid #c99898;
    background:#fff7f7;
    color:#754343;
    font-size:var(--zoom-body-size);
    line-height:1.6;
}


/*
   =========================================================
   04. FORM FIELDS
   =========================================================
*/

.enquiry_form_grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px 20px;
}

.enquiry_field{
    min-width:0;
}

.enquiry_field_full{
    grid-column:1 / -1;
}

.enquiry_field label{
    display:block;
    margin:0 0 9px;
    font-size:.625rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.enquiry_field input,
.enquiry_field select,
.enquiry_field textarea{
    box-sizing:border-box;
    width:100%;
    border:1px solid var(--enquiry-border);
    border-radius:0;
    outline:0;
    background:#fff;
    color:var(--enquiry-text);
    font:inherit;
    font-size:var(--zoom-body-size);
}

.enquiry_field input,
.enquiry_field select{
    height:52px;
    padding:0 15px;
}

.enquiry_field input[type="date"]{
    min-width:0;
}

.enquiry_field textarea{
    min-height:180px;
    padding:15px;
    resize:vertical;
    line-height:1.6;
}

.enquiry_field input:focus,
.enquiry_field select:focus,
.enquiry_field textarea:focus{
    border-color:var(--enquiry-accent);
    box-shadow:0 0 0 2px rgba(180,135,88,.10);
}

.enquiry_form_note{
    margin:24px 0 0;
    padding:16px 18px;
    border-left:3px solid var(--enquiry-accent);
    background:var(--enquiry-cream);
    color:var(--enquiry-muted);
    font-size:var(--zoom-body-size);
    line-height:1.65;
}

.enquiry_submit{
    display:inline-flex;
    min-height:52px;
    margin-top:24px;
    padding:14px 28px;
    align-items:center;
    justify-content:center;
    border:1px solid var(--enquiry-text);
    border-radius:0;
    background:var(--enquiry-text);
    color:#fff;
    cursor:pointer;
    font-size:.75rem;
    font-weight:700;
    letter-spacing:.11em;
    text-decoration:none;
    text-transform:uppercase;
    transition:
        background .2s ease,
        border-color .2s ease,
        color .2s ease;
}

.enquiry_submit:hover,
.enquiry_submit:focus-visible{
    border-color:var(--enquiry-accent);
    background:var(--enquiry-accent);
    color:#fff;
}

.enquiry_honeypot{
    position:absolute;
    left:-9999px;
    width:1px;
    height:1px;
    overflow:hidden;
}


/*
   =========================================================
   05. MAILING LIST + SPAM PROTECTION
   =========================================================
*/

.enquiry_preferences{
    margin-top:26px;
    padding-top:24px;
    border-top:1px solid var(--enquiry-border);
}

.enquiry_checkbox{
    display:flex;
    gap:12px;
    align-items:flex-start;
    color:var(--enquiry-muted);
    cursor:pointer;
    font-size:var(--zoom-body-size);
    line-height:1.6;
}

.enquiry_checkbox input{
    flex:0 0 auto;
    width:18px;
    height:18px;
    margin:3px 0 0;
    accent-color:var(--enquiry-accent);
}

.enquiry_security{
    display:flex;
    margin-top:22px;
    padding:18px;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    border:1px solid var(--enquiry-border);
    background:var(--enquiry-cream);
}

.enquiry_security_copy{
    display:grid;
    gap:5px;
    color:var(--enquiry-muted);
    font-size:var(--zoom-body-size);
    line-height:1.55;
}

.enquiry_security_copy strong{
    color:var(--enquiry-text);
    letter-spacing:.08em;
}

.enquiry_security_label{
    color:var(--enquiry-text);
    font-size:.625rem;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.enquiry_security_field{
    flex:0 0 92px;
}

.enquiry_security_field input{
    width:100%;
    height:48px;
    padding:0 10px;
    border:1px solid var(--enquiry-border);
    border-radius:0;
    outline:0;
    background:#fff;
    color:var(--enquiry-text);
    font:inherit;
    font-size:1.125rem;
    font-weight:700;
    letter-spacing:.12em;
    text-align:center;
}

.enquiry_security_field input:focus{
    border-color:var(--enquiry-accent);
    box-shadow:0 0 0 2px rgba(180,135,88,.10);
}

.enquiry_sr_only{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}


/*
   =========================================================
   06. THANK YOU
   =========================================================
*/

.enquiry_thank_you_section{
    padding:clamp(70px,9vw,130px) 24px;
    background:var(--enquiry-cream);
}

.enquiry_thank_you{
    max-width:760px;
    margin:0 auto;
    padding:clamp(38px,6vw,70px);
    border:1px solid var(--enquiry-border);
    background:#fff;
    text-align:center;
}

.enquiry_thank_you h1{
    margin:0;
    font-family:var(--zoom-serif);
    font-size:clamp(2.625rem,5vw,3.75rem);
    font-weight:400;
    line-height:1.05;
}

.enquiry_thank_you_intro{
    margin:22px 0 10px;
    color:var(--enquiry-text);
    font-size:var(--zoom-body-size);
}

.enquiry_thank_you > p:not(.enquiry_kicker):not(.enquiry_thank_you_intro){
    color:var(--enquiry-muted);
    font-size:var(--zoom-body-size);
    line-height:1.8;
}

.enquiry_thank_you_summary{
    display:grid;
    max-width:460px;
    margin:30px auto 0;
    padding:22px;
    background:var(--enquiry-cream);
    gap:8px;
}

.enquiry_thank_you_summary span{
    color:var(--enquiry-muted);
    font-size:.625rem;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.enquiry_thank_you_summary strong{
    font-family:var(--zoom-serif);
    font-size:1.4375rem;
    font-weight:400;
}

.enquiry_summary_spacing{
    margin-top:14px;
}

.enquiry_home_button{
    margin-top:28px;
}


/*
   =========================================================
   07. TABLET
   =========================================================
*/

@media(max-width:850px){

    .enquiry_form_layout{
        grid-template-columns:1fr;
        gap:28px;
    }

    .enquiry_details{
        padding:32px;
    }

}


/*
   =========================================================
   08. MOBILE
   =========================================================
*/

@media(max-width:620px){

    .enquiry_hero{
        padding:58px 22px 64px;
    }

    .enquiry_hero h1{
        font-size:3rem;
    }

    .enquiry_form_section{
        padding:42px 16px 68px;
    }

    .enquiry_form_card{
        padding:28px 20px;
    }

    .enquiry_form_grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .enquiry_field_full{
        grid-column:auto;
    }

    .enquiry_submit{
        width:100%;
    }

    .enquiry_security{
        align-items:stretch;
        flex-direction:column;
    }

    .enquiry_security_field{
        flex:0 0 auto;
        width:100%;
    }

    .enquiry_thank_you_section{
        padding:50px 16px 70px;
    }

}
