/* Form */
form .border-box h2 {
    font-size:1.8em;
}
form .border-box h2 span {
    font-size:var(--font-size);
}

form dd:has(> button) {
	display:flex;
	align-items: center;
	justify-content: center;
}

form dl > div {
    display:flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap:10px;
    padding:var(--padding) 0;
    margin:0;
    border-bottom:solid 1px var(--color-gray);
    font-size:1.1em;
}
form dl > div:last-of-type {
    border:none;
}
form dl > div.top {
    align-items: flex-start;
}
body#contact form dl > div dt {
    min-width:260px;
    display:block;
}
form dl > div dt .not-null {
    margin-left:5px;
}
form dl > div dd {
    flex:1;
}
form dl > div dd p {
    margin:0;
}
form dl > div dd p small {
    font-size:1em;
}
form dl > div dd label + ul {
    margin-top:10px;
    padding-left:30px;
}
form dl > div dd div + div {
    margin-top:10px;
}

form dl.enquete > div {
    display:block;
}
form dl.enquete > div dt {
    color:var(--color-green);
    margin-bottom:10px;
}


:where(form, .form) input:not(.button), 
:where(form, .form) select, 
:where(form, .form) textarea {
    background:var(--color-white);
    padding:10px;
    border-radius:4px;
    box-shadow:none;
}

form input[name="postalcode"] {
    max-width:10em;
}
form input[name="phone"] ,
form input[type="date"] {
    max-width:20em;
}

#privacy-policy :is(aside, dl.form) {
    margin-top:20px;
}
.privacy-policy {
    border:solid 1px var(--color-black);
    border-radius:var(--radius);
    box-shadow:var(--shadow-2);
    padding:10px;
    height:300px;
    overflow-y:auto;
}
.border-box .privacy-policy {
    box-shadow:none;
    border-radius:var(--radius-inner);
    margin-bottom:20px;
}
.privacy-policy #page-header {
    display:none;
}
.privacy-policy section {
    padding:0;
}
.privacy-policy h2 {
    font-size:1.4em;
}
.privacy-policy h3 {
    font-size:1.2em;
    text-align:left;
}


.not-null ,
.attention {
    color:var(--color-red) !important;
    font-size:var(--font-size);
}

.form-back button {
    background:transparent;
    border:solid 1px var(--color-black);
}
.form-back button:hover {
    background:var(--color-black);
    color:var(--color-cream);
}


.finished {
    margin-top:40px;
}
.finished h3 {
    font-size:1.8em;
}
.finished h4 {
    font-size:1.8em;
    text-align:center;
    margin-top:10px;
}
.finished p {
    text-align:center;
}


/* Media Query */
@media (max-width:920px ) {}
@media (max-width:720px ){
    form .border-box h2 {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }
    form .border-box h2 + dl{
        margin-block-start: 0;
    }
    form dl > div {
        flex-direction: column;
        align-items: flex-start;
    }
    form dd,
    form dd :is(input[type="text"],input[type="tel"], textarea) {
        width: 100%;
        max-width: 100% !important;
    }
}
@media (max-width:520px ){
    form dt {
        width:100%;
    }

    form textarea {
        max-width:100%;
        width:100% !important;
    }

    form :is(.form-back, .form-send) {
        width:100%;
        display:block;
    }
}