/* Stream Cloud — Contact premium V1. CSS isolé à la page contact. */
body:has(.contact-page){background:#edf3ff!important;color:#0b1d4c;}
.contact-page{position:relative;isolation:isolate;overflow:hidden;padding:0 0 90px!important;min-height:80vh;background:linear-gradient(150deg,#edf5ff 10%,#f6f9ff 60%,#e8efff 100%);}
.contact-page::before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:355px;background:radial-gradient(circle at 76% 30%,rgba(40,123,255,.54),transparent 27%),radial-gradient(circle at 90% 75%,rgba(36,76,170,.6),transparent 32%),linear-gradient(112deg,#061433,#092660 62%,#103e8b);}
.contact-page::after{content:"";position:absolute;z-index:-1;top:295px;left:-10%;width:120%;height:110px;background:#edf3ff;border-radius:50% 50% 0 0/70% 70% 0 0;transform:rotate(-1deg);}
.contact-page>.container{position:relative;max-width:1200px!important;margin:auto;padding:0 22px!important;}
.contact-page .contact-heading{max-width:none!important;text-align:left!important;margin:0!important;padding:56px 0 48px!important;color:#fff;animation:scContactRise .7s both;}
.contact-page .contact-heading .contact-label{display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.11);color:#d8eaff!important;padding:8px 15px;border-radius:99px;font-weight:700;letter-spacing:.03em;backdrop-filter:blur(6px);}
.contact-page .contact-heading h1{font-size:clamp(30px,4vw,49px)!important;line-height:1.18!important;letter-spacing:-.035em;color:#fff!important;max-width:980px;margin:18px 0 14px!important;font-weight:800;}
.contact-page .contact-heading p{color:#dce7ff!important;font-size:clamp(14px,1.6vw,18px)!important;max-width:680px;line-height:1.7!important;margin:0!important;}
.contact-page .contact-layout{display:grid!important;grid-template-columns:minmax(290px,.88fr) minmax(0,1.55fr)!important;gap:24px!important;align-items:start!important;position:relative;z-index:1;}
.contact-page .contact-informations,.contact-page .contact-form-card{width:auto!important;max-width:none!important;margin:0!important;background:rgba(255,255,255,.98)!important;border:1px solid rgba(209,224,250,.8)!important;border-radius:26px!important;padding:30px!important;box-shadow:0 22px 65px rgba(13,43,101,.12)!important;animation:scContactRise .8s both;}
.contact-page .contact-form-card{animation-delay:.1s;}
.contact-page .contact-channel{display:flex!important;align-items:center!important;gap:17px!important;padding-bottom:22px!important;margin-bottom:24px!important;border-bottom:1px solid #e6edf8;}
.contact-page .contact-channel img{width:76px!important;height:76px!important;object-fit:contain;border-radius:18px!important;background:#f5f8ff;box-shadow:0 8px 24px rgba(11,36,90,.08);padding:5px;flex-shrink:0;}
.contact-page .contact-channel h2{font-size:22px!important;line-height:1.3!important;color:#091d4d!important;margin:0 0 6px!important;}
.contact-page .contact-channel span{font-size:13px!important;color:#60749b!important;}
.contact-page .contact-details{display:flex;flex-direction:column;gap:12px!important;margin-bottom:20px!important;}
.contact-page .contact-detail{display:flex!important;align-items:center!important;gap:13px!important;padding:14px!important;border-radius:15px!important;background:linear-gradient(120deg,#f0f5ff,#f8faff)!important;border:1px solid #eaf0fb!important;text-decoration:none!important;transition:transform .25s,box-shadow .25s,border-color .25s;min-width:0;}
.contact-page a.contact-detail:hover{transform:translateX(4px);box-shadow:0 10px 24px rgba(25,77,167,.09);border-color:#b9d2ff!important;}
.contact-page .contact-detail-icon{width:46px!important;height:46px!important;min-width:46px!important;display:grid!important;place-items:center!important;border-radius:13px!important;background:linear-gradient(145deg,#081b4c,#163e8c)!important;color:#fff!important;font-size:19px!important;}
.contact-page .contact-detail>div:last-child{min-width:0;}
.contact-page .contact-detail span{display:block;color:#7585a4!important;font-size:12px!important;margin-bottom:3px;}
.contact-page .contact-detail strong{display:block;color:#0d2255!important;font-size:14px!important;overflow-wrap:anywhere;}
.contact-page .contact-whatsapp{display:flex!important;justify-content:center!important;align-items:center!important;gap:10px!important;width:100%!important;min-height:51px;padding:14px 18px!important;border-radius:13px!important;background:linear-gradient(100deg,#11bf66,#17d67c)!important;color:#fff!important;font-weight:750!important;text-decoration:none!important;box-shadow:0 9px 22px rgba(16,188,100,.2);transition:transform .25s,box-shadow .25s;}
.contact-page .contact-whatsapp:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(16,188,100,.3);}
.contact-page .contact-form-card>h2{display:flex;align-items:center;gap:14px;font-size:clamp(23px,2.6vw,29px)!important;color:#081c4b!important;line-height:1.25;margin:0 0 10px!important;}
.contact-page .contact-form-card>h2::before{content:"\f1d8";font-family:"Font Awesome 6 Free";font-weight:900;display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,#238cff,#1734e9);color:#fff;font-size:20px;box-shadow:0 8px 20px rgba(32,95,234,.25);}
.contact-page .contact-form-card>p{color:#65769a!important;margin:0 0 28px!important;line-height:1.6;}
.contact-page .contact-form{display:flex;flex-direction:column;gap:18px!important;}
.contact-page .contact-form-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
.contact-page .contact-field{margin:0!important;min-width:0;}
.contact-page .contact-field label{display:block!important;color:#122858!important;font-size:13px!important;font-weight:750!important;margin:0 0 8px!important;}
.contact-page .contact-field input,.contact-page .contact-field textarea{display:block!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;border:1.5px solid #dce5f4!important;background:#fff!important;color:#0c2455!important;border-radius:12px!important;padding:14px 16px!important;font-family:inherit!important;font-size:14px!important;outline:none!important;transition:border-color .2s,box-shadow .2s,transform .2s;}
.contact-page .contact-field input{min-height:49px!important;}
.contact-page .contact-field textarea{min-height:150px!important;resize:vertical;}
.contact-page .contact-field input:focus,.contact-page .contact-field textarea:focus{border-color:#397eff!important;box-shadow:0 0 0 4px rgba(50,115,247,.11)!important;}
.contact-page .contact-field input::placeholder,.contact-page .contact-field textarea::placeholder{color:#97a5be!important;}
.contact-page .contact-submit{width:100%!important;min-height:55px!important;border:0!important;border-radius:14px!important;background:linear-gradient(105deg,#168aff,#2024e8)!important;color:#fff!important;font-size:16px!important;font-weight:800!important;box-shadow:0 13px 26px rgba(29,81,225,.22);cursor:pointer;transition:transform .25s,box-shadow .25s,filter .25s;}
.contact-page .contact-submit:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(29,81,225,.32);filter:brightness(1.05);}
.contact-page .contact-submit:active{transform:translateY(0);}
.contact-page .contact-success,.contact-page .contact-error{border-radius:13px!important;padding:14px 17px!important;margin:15px 0!important;}
@keyframes scContactRise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:850px){.contact-page .contact-layout{grid-template-columns:1fr!important;}.contact-page .contact-heading{padding:42px 0 38px!important;}.contact-page .contact-informations,.contact-page .contact-form-card{padding:25px!important;}}
@media(max-width:540px){.contact-page>.container{padding:0 15px!important;}.contact-page .contact-heading{padding:32px 0 35px!important;}.contact-page .contact-layout{gap:17px!important;}.contact-page .contact-informations,.contact-page .contact-form-card{padding:21px!important;border-radius:19px!important;}.contact-page .contact-form-row{grid-template-columns:1fr!important;}.contact-page .contact-channel img{width:64px!important;height:64px!important;}.contact-page .contact-form-card>h2::before{width:44px;height:44px;flex-basis:44px;}}
@media(prefers-reduced-motion:reduce){.contact-page *, .contact-page *::before,.contact-page *::after{animation:none!important;transition:none!important;}}
