/* ==========================================================
   INFO PRO 13 — CONTACT FINAL
========================================================== */

body.page-id-5750 {
    overflow-x:hidden;
    background:#ffffff;
    color:#151515;
}

body.page-id-5750 .ip13-contact,
body.page-id-5750 .ip13-contact * {
    box-sizing:border-box;
}

body.page-id-5750 .ip13-contact {
    position:relative;
    width:100%;
    overflow:hidden;
    background:radial-gradient(
            circle at 70% 15%,
            rgba(102,137,255,.09),
            transparent 30%
        ),
        #ffffff;
}

body.page-id-5750 .ip13-contact-container {
    width:min(1240px, calc(100% - 40px));
    margin:0 auto;
}


/* ==========================================================
   HERO
========================================================== */

body.page-id-5750 .ip13-contact-hero {
    position:relative;
    overflow:hidden;
    padding:85px 0 72px;
    text-align:center;
    border-bottom:1px solid rgba(0, 0, 0,.07);
}

body.page-id-5750 .ip13-contact-hero__glow {
    position:absolute;
    top:-220px;
    left:50%;
    width:760px;
    height:520px;
    transform:translateX(-50%);
    border-radius:50%;
    background:rgba(102,137,255,.16);
    filter:blur(120px);
    pointer-events:none;
}

body.page-id-5750 .ip13-contact-hero .ip13-contact-container {
    position:relative;
    z-index:2;
}

body.page-id-5750 .ip13-contact-eyebrow,
body.page-id-5750 .ip13-contact-small-title {
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#7a97ff;
    font-size:.65rem;
    line-height:1;
    font-weight:900;
    letter-spacing:.13em;
}

body.page-id-5750 .ip13-contact-eyebrow {
    padding:8px 12px;
    border:1px solid rgba(102,137,255,.32);
    border-radius:999px;
    background:rgba(102,137,255,.08);
}

body.page-id-5750 .ip13-contact-eyebrow::before {
    content:"";
    width:7px;
    height:7px;
    border-radius:50%;
    background:#6689ff;
    box-shadow:0 0 16px rgba(102,137,255,.85);
}

body.page-id-5750 .ip13-contact-hero h1 {
    max-width:950px;
    margin:22px auto 0;
    color:#151515;
    font-size:clamp(3rem, 6vw, 5.8rem);
    line-height:.94;
    font-weight:950;
    letter-spacing:-.065em;
}

body.page-id-5750 .ip13-contact-hero h1 span {
    display:block;
    margin-top:8px;
    color:#6689ff;
}

body.page-id-5750 .ip13-contact-hero p {
    max-width:680px;
    margin:25px auto 0;
    color:#6b7280;
    font-size:.95rem;
    line-height:1.75;
}


/* ==========================================================
   CONTENU
========================================================== */

body.page-id-5750 .ip13-contact-main {
    padding:72px 0 90px;
}

body.page-id-5750 .ip13-contact-layout {
    display:grid;
    grid-template-columns:minmax(0, .8fr) minmax(0, 1.2fr);
    gap:28px;
    align-items:start;
}


/* ==========================================================
   COLONNE INFORMATIONS
========================================================== */

body.page-id-5750 .ip13-contact-sidebar {
    padding:34px;
    border:1px solid rgba(0, 0, 0,.08);
    border-radius:20px;
    background:linear-gradient(
            145deg,
            rgba(102,137,255,.07),
            rgba(255,255,255,.015) 50%
        ),
        #ffffff;
    box-shadow:0 24px 60px rgba(0,0,0,.25);
}

body.page-id-5750 .ip13-contact-sidebar__intro h2 {
    margin:13px 0 0;
    color:#151515;
    font-size:clamp(1.7rem, 3vw, 2.45rem);
    line-height:1.05;
    font-weight:900;
    letter-spacing:-.04em;
}

body.page-id-5750 .ip13-contact-sidebar__intro p {
    margin:16px 0 0;
    color:#5b6472;
    font-size:.85rem;
    line-height:1.7;
}

body.page-id-5750 .ip13-contact-infos {
    display:grid;
    gap:10px;
    margin-top:30px;
}

body.page-id-5750 .ip13-contact-info {
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    gap:13px;
    align-items:start;
    padding:17px;
    border:1px solid rgba(0, 0, 0,.07);
    border-radius:12px;
    background:rgba(255,255,255,.025);
}

body.page-id-5750 .ip13-contact-info__icon {
    display:flex;
    width:44px;
    height:44px;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(102,137,255,.27);
    border-radius:10px;
    background:rgba(102,137,255,.08);
    color:#6689ff;
    font-size:1rem;
}

body.page-id-5750 .ip13-contact-info strong {
    display:block;
    margin:1px 0 5px;
    color:#151515;
    font-size:.75rem;
    font-weight:850;
}

body.page-id-5750 .ip13-contact-info span {
    display:block;
    color:#6b7280;
    font-size:.73rem;
    line-height:1.65;
}

body.page-id-5750 .ip13-contact-info a {
    display:block;
    width:fit-content;
    padding:3px 0;
    color:#55606e;
    text-decoration:none;
    transition:color .15s ease;
}

body.page-id-5750 .ip13-contact-info a:hover {
    color:#6689ff;
}


/* ==========================================================
   FORMULAIRE
========================================================== */

body.page-id-5750 .ip13-contact-card {
    padding:38px;
    border:1px solid rgba(102,137,255,.22);
    border-radius:20px;
    background:#ffffff;
    box-shadow:0 24px 70px rgba(0,0,0,.32),
        0 0 40px rgba(102,137,255,.05);
}

body.page-id-5750 .ip13-contact-card__head h2 {
    margin:12px 0 0;
    color:#151515;
    font-size:clamp(1.8rem, 3vw, 2.6rem);
    line-height:1.05;
    font-weight:900;
    letter-spacing:-.04em;
}

body.page-id-5750 .ip13-contact-card__head p {
    margin:9px 0 0;
    color:#6b7280;
    font-size:.72rem;
}

body.page-id-5750 .ip13-contact-form {
    display:grid;
    gap:17px;
    margin-top:30px;
}

body.page-id-5750 .ip13-contact-form__row {
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:12px;
}

body.page-id-5750 .ip13-contact-form > label,
body.page-id-5750 .ip13-contact-form__row > label {
    display:grid;
    gap:8px;
    min-width:0;
}

body.page-id-5750 .ip13-contact-form label > span {
    color:#6b7280;
    font-size:.68rem;
    font-weight:750;
}

body.page-id-5750 .ip13-contact-form input[type="text"],
body.page-id-5750 .ip13-contact-form input[type="email"],
body.page-id-5750 .ip13-contact-form input[type="tel"],
body.page-id-5750 .ip13-contact-form select,
body.page-id-5750 .ip13-contact-form textarea {
    width:100%;
    max-width:100%;
    margin:0;
    border:1px solid rgba(0, 0, 0,.09);
    border-radius:10px;
    outline:none;
    background:#ffffff;
    color:#151515;
    font-family:inherit;
    font-size:.82rem;
    transition:border-color .15s ease,
        box-shadow .15s ease,
        background .15s ease;
}

body.page-id-5750 .ip13-contact-form input[type="text"],
body.page-id-5750 .ip13-contact-form input[type="email"],
body.page-id-5750 .ip13-contact-form input[type="tel"],
body.page-id-5750 .ip13-contact-form select {
    height:52px;
    padding:0 14px;
}

body.page-id-5750 .ip13-contact-form textarea {
    min-height:165px;
    padding:14px;
    resize:vertical;
    line-height:1.6;
}

body.page-id-5750 .ip13-contact-form input::placeholder,
body.page-id-5750 .ip13-contact-form textarea::placeholder {
    color:#5f5f73;
}

body.page-id-5750 .ip13-contact-form select {
    cursor:pointer;
}

body.page-id-5750 .ip13-contact-form select option {
    background:#ffffff;
    color:#151515;
}

body.page-id-5750 .ip13-contact-form input:focus,
body.page-id-5750 .ip13-contact-form select:focus,
body.page-id-5750 .ip13-contact-form textarea:focus {
    border-color:rgba(102,137,255,.72);
    background:#ffffff;
    box-shadow:0 0 0 3px rgba(102,137,255,.09),
        0 0 22px rgba(102,137,255,.05);
}


/* ==========================================================
   CONSENTEMENT
========================================================== */

body.page-id-5750 .ip13-contact-consent {
    display:flex !important;
    grid-template-columns:none !important;
    align-items:flex-start;
    gap:10px !important;
    cursor:pointer;
}

body.page-id-5750 .ip13-contact-consent input {
    flex:0 0 auto;
    width:17px;
    height:17px;
    margin:1px 0 0;
    accent-color:#6689ff;
}

body.page-id-5750 .ip13-contact-consent span {
    color:#85859a !important;
    font-size:.66rem !important;
    line-height:1.5;
}


/* ==========================================================
   BOUTON
========================================================== */

body.page-id-5750 .ip13-contact-submit {
    display:flex;
    width:100%;
    min-height:55px;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin:3px 0 0;
    padding:12px 20px;
    border:1px solid rgba(102,137,255,.58);
    border-radius:11px;
    background:linear-gradient(
            135deg,
            #1d3fd1,
            #6689ff
        );
    color:#fff;
    cursor:pointer;
    font-family:inherit;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.045em;
    box-shadow:0 14px 35px rgba(102,137,255,.18);
    transition:transform .15s ease,
        filter .15s ease,
        box-shadow .15s ease;
}

body.page-id-5750 .ip13-contact-submit:hover {
    transform:translateY(-2px);
    filter:brightness(1.08);
    box-shadow:0 18px 42px rgba(102,137,255,.26);
}

body.page-id-5750 .ip13-contact-submit strong {
    font-size:1rem;
}

body.page-id-5750 .ip13-contact-form__footer {
    margin:-3px 0 0;
    color:#6b7280;
    font-size:.6rem;
    line-height:1.5;
    text-align:center;
}


/* ==========================================================
   NOTICES
========================================================== */

body.page-id-5750 .ip13-contact-notice {
    margin-top:22px;
    padding:14px 16px;
    border-radius:10px;
    font-size:.72rem;
    line-height:1.5;
}

body.page-id-5750 .ip13-contact-notice strong {
    display:block;
    margin-bottom:2px;
}

body.page-id-5750 .ip13-contact-notice--success {
    border:1px solid rgba(34,197,94,.28);
    background:rgba(34,197,94,.08);
    color:#bbf7d0;
}

body.page-id-5750 .ip13-contact-notice--error {
    border:1px solid rgba(239,68,68,.28);
    background:rgba(239,68,68,.08);
    color:#fecaca;
}


/* ==========================================================
   HONEYPOT
========================================================== */

body.page-id-5750 .ip13-contact-honeypot {
    position:absolute !important;
    left:-10000px !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
}


/* ==========================================================
   TABLETTE
========================================================== */

@media (max-width: 1000px) {

    body.page-id-5750 .ip13-contact-hero {
        padding:65px 0 55px;
    }

    body.page-id-5750 .ip13-contact-main {
        padding:50px 0 65px;
    }

    body.page-id-5750 .ip13-contact-layout {
        grid-template-columns:1fr;
    }

    body.page-id-5750 .ip13-contact-sidebar {
        order:2;
    }

    body.page-id-5750 .ip13-contact-card {
        order:1;
    }

    body.page-id-5750 .ip13-contact-infos {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 650px) {

    body.page-id-5750 .ip13-contact-container {
        width:calc(100% - 20px);
    }

    body.page-id-5750 .ip13-contact-hero {
        padding:48px 0 42px;
    }

    body.page-id-5750 .ip13-contact-hero h1 {
        margin-top:17px;
        font-size:clamp(2.6rem, 13vw, 3.7rem);
    }

    body.page-id-5750 .ip13-contact-hero p {
        margin-top:18px;
        font-size:.8rem;
        line-height:1.6;
    }

    body.page-id-5750 .ip13-contact-main {
        padding:28px 0 48px;
    }

    body.page-id-5750 .ip13-contact-card,
    body.page-id-5750 .ip13-contact-sidebar {
        padding:22px 16px;
        border-radius:15px;
    }

    body.page-id-5750 .ip13-contact-form__row,
    body.page-id-5750 .ip13-contact-infos {
        grid-template-columns:1fr;
    }

    body.page-id-5750 .ip13-contact-form {
        gap:15px;
    }

    body.page-id-5750 .ip13-contact-form input[type="text"],
    body.page-id-5750 .ip13-contact-form input[type="email"],
    body.page-id-5750 .ip13-contact-form input[type="tel"],
    body.page-id-5750 .ip13-contact-form select {
        height:54px;
        font-size:16px;
    }

    body.page-id-5750 .ip13-contact-form textarea {
        min-height:150px;
        font-size:16px;
    }

    body.page-id-5750 .ip13-contact-submit {
        min-height:55px;
    }
}

/* ==========================================================
   IP13 CONTACT FILE UPLOAD
   ========================================================== */

body.page-id-5750 .ip13-contact-file {
    display:block;
}

body.page-id-5750 .ip13-contact-file__field {
    display:flex;
    align-items:center;

    min-height:58px;

    margin-top:8px;
    padding:8px;

    border:1px solid rgba(0, 0, 0,.10);
    border-radius:10px;

    background:rgba(255,255,255,.025);

    transition:border-color .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

body.page-id-5750 .ip13-contact-file__field:focus-within {
    border-color:rgba(102,137,255,.65);

    background:rgba(102,137,255,.045);

    box-shadow:0 0 0 3px rgba(102,137,255,.08);
}

body.page-id-5750 .ip13-contact-file input[type="file"] {
    display:block;

    width:100%;
    max-width:100%;

    margin:0;
    padding:0;

    border:0;

    background:transparent;

    color:#cfcfd8;

    font-family:inherit;
    font-size:.78rem;

    cursor:pointer;
}

body.page-id-5750
.ip13-contact-file
input[type="file"]::file-selector-button {

    min-height:40px;

    margin-right:12px;
    padding:0 16px;

    border:1px solid rgba(102,137,255,.36);
    border-radius:8px;

    background:linear-gradient(
            135deg,
            rgba(29,63,209,.90),
            rgba(102,137,255,.90)
        );

    color:#fff;

    font-family:inherit;
    font-size:.72rem;
    font-weight:800;

    cursor:pointer;
}

body.page-id-5750
.ip13-contact-file
input[type="file"]::file-selector-button:hover {

    filter:brightness(1.10);
}

body.page-id-5750 .ip13-contact-file__help {
    display:block;

    margin-top:7px;

    color:#6b7280;

    font-size:.68rem;
    line-height:1.45;
}

@media (max-width:650px) {

    body.page-id-5750
    .ip13-contact-file
    input[type="file"] {

        font-size:.70rem;
    }

    body.page-id-5750
    .ip13-contact-file
    input[type="file"]::file-selector-button {

        margin-right:8px;
        padding:0 12px;
    }
}

