/* FreshUp — page Contact « nuit » */
.ct-top{max-width:720px;margin-bottom:34px}
.ct-top h1{font-size:clamp(52px,8vw,112px);line-height:.95;margin:14px 0 16px}
.ct-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:start}
@media (max-width:900px){.ct-grid{grid-template-columns:1fr}}
.ct-infos{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:520px){.ct-infos{grid-template-columns:1fr}}
.ct-card{display:grid;gap:6px;border:1px solid var(--filet2);border-radius:22px;padding:20px;background:var(--encre);text-decoration:none;transition:border-color .3s,transform .4s var(--ease)}
a.ct-card:hover{border-color:var(--or-sombre);transform:translateY(-3px)}
.ct-card b{font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.1}
.ct-card .n-mute{font-size:13px}
.ct-mail{font-size:18px!important;word-break:break-all}
.ct-hours{grid-column:1/-1}
.ct-hours ul{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 24px;font-size:14.5px}
@media (max-width:520px){.ct-hours ul{grid-template-columns:1fr}}
.ct-hours li{display:flex;justify-content:space-between;gap:10px;color:var(--brume);padding:4px 0;border-bottom:1px dashed var(--filet)}
.ct-hours li span:first-child{color:var(--creme)}
.ct-hours li.is-today{color:var(--or-pale)}
.ct-hours li.is-today span:first-child{color:var(--or)}
.ct-insta{grid-column:1/-1;color:var(--or);text-decoration:none;font-size:14.5px;padding:6px 2px}
.ct-form-w{border:1px solid var(--or-sombre);border-radius:28px;padding:clamp(20px,3.5vw,36px);background:radial-gradient(70% 100% at 100% 0,rgba(201,169,97,.12),transparent 60%),var(--encre)}
.ct-form{display:grid;gap:12px}
.ct-form h2{font-size:clamp(34px,4vw,52px);line-height:1;margin-bottom:6px}
.ct-form textarea{width:100%;min-height:130px;border-radius:14px;border:1px solid var(--filet2);background:var(--nuit);color:var(--creme);padding:12px 14px;font:inherit;font-size:15px;resize:vertical}
.ct-form textarea:focus{outline:none;border-color:var(--or)}
.ct-form .n-btn{width:100%}
.ct-note{font-size:13px;text-align:center}
.ct-sujets{margin-bottom:4px}
.ct-map{margin-top:40px;border:1px solid var(--filet2);border-radius:28px;overflow:hidden;height:clamp(280px,40vw,420px)}
.ct-map iframe{width:100%;height:100%;border:0;filter:invert(.9) hue-rotate(185deg) saturate(.6) brightness(.9) contrast(1.05)}
.cp-flash{border-radius:14px;padding:12px 16px;font-size:14.5px}
.cp-flash.is-err{border:1px solid rgba(217,139,130,.5);background:rgba(217,139,130,.1);color:var(--rouge)}
