*{margin:0;padding:0;box-sizing:border-box;font-family:Arial,sans-serif;}body{margin:0;padding:0;}.main-content{padding-top:10px;}.profile-picture-container{width:100%;text-align:center;margin:0 auto;padding:0;max-width:400px;max-height:400px;}.profile-picture-container .profile-picture{max-width:400px!important;max-height:400px!important;width:auto!important;height:auto!important;object-fit:contain!important;display:block!important;margin:0 auto!important;border:none;border-radius:0;}.conteneur-principal-new,.conteneur-principal-profil{width:80%;margin:10px auto;padding:5px;box-sizing:border-box;display:flex;flex-direction:row;gap:10px;justify-content:center;flex-wrap:wrap;}.conteneur-principal-profil{flex-wrap:wrap;gap:20px;}.sous-conteneur-new,.sous-conteneur-profil,.sous-conteneur-secondaire{border:1px solid #9E9E9E;border-radius:0;margin:0;padding:5px;flex:1;display:flex;flex-direction:column;background-color:transparent;min-width:250px;min-height:auto;}.sous-conteneur-profil{flex:1;min-width:300px;max-width:600px;}.sous-conteneur-new:first-child,.sous-conteneur-profil:first-child{align-items:center;justify-content:center;overflow:hidden;}.sous-conteneur-new:last-child{align-items:flex-start;}.sous-conteneur-new:first-child h3{color:#1E90FF;margin:0 0 3px;font-size:16px;line-height:1;}.sous-conteneur-secondaire h3{color:#3498db;margin-bottom:8px;font-size:16px;text-align:center;}.availability-calendar{width:100%;height:100%;padding:5px;}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-weight:700;color:#3498db;font-size:16px;}.calendar-nav{display:flex;gap:8px;}.calendar-nav button{background:none;border:none;color:#3498db;cursor:pointer;font-size:1em;padding:4px 8px;}.calendar-days{display:flex;flex-wrap:wrap;gap:3px;justify-content:flex-start;}.calendar-day{width:calc(100% / 7 - 3px);height:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:13px;border-radius:0;cursor:pointer;position:relative;padding:2px;box-sizing:border-box;flex-shrink:0;min-width:35px;}.calendar-day.available{background:#d4edda;color:#28a745;}.calendar-day.unavailable{background:#f8d7da;color:#721c24;}.calendar-day.today{font-weight:700;border:1px solid #3498db;}.calendar-day.empty{visibility:hidden;}.day-note{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:center;max-width:90%;margin-top:2px;}.legend{display:flex;justify-content:space-between;margin-top:8px;font-size:11px;}.conteneur-infos{width:100%;padding:5px;display:flex;flex-direction:column;}.conteneur-infos h3,.sous-conteneur-profil h3{color:#3498db;margin-bottom:8px;font-size:18px;text-align:center;}.age-display{text-align:center;margin-bottom:8px;font-size:16px;color:#555;}.presentation-text{font-size:16px;line-height:1.4;margin-bottom:20px;color:#555;}.info-block{margin-bottom:8px;width:100%;display:flex;}.info-block .label{font-weight:700;color:#555;font-size:14px;white-space:nowrap;margin-right:0;}.info-block .value{color:#333;font-size:14px;line-height:1.4;flex:1;margin-left:0;padding-left:5px;}.info-detailed-container{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;margin:4px 0;}.sous-conteneur-new:first-child .info-detailed-container{display:grid;grid-template-columns:1fr;gap:1px;margin:0;padding:0;}.info-detailed-item{display:flex;align-items:center;margin-bottom:0;padding:1px 0;}.sous-conteneur-new:first-child .info-detailed-item{display:grid;grid-template-columns:auto 1fr;gap:5px;margin:0;padding:0;line-height:1;}.info-detailed-label{font-weight:700;color:#555;font-size:14px;line-height:1;white-space:nowrap;}.info-detailed-value{color:#333;font-size:14px;line-height:1;}.button-container{display:flex;justify-content:center;gap:10px;width:100%;margin-top:10px;}.btn{padding:8px 16px;border-radius:6px;text-decoration:none;font-weight:700;display:inline-block;}.button-container .btn{padding:6px 12px;border-radius:4px;text-decoration:none;font-weight:700;font-size:13px;display:inline-flex;align-items:center;gap:5px;}.retour-btn{background:#4CAF50;color:#fff;}.avis-btn{background:#FF9800;color:#fff;}.signaler-btn{background:#f44336;color:#fff;}.annuler-btn{background:#f5f5f5;color:#333;border:1px solid #ddd;}.voir-albums-btn{display:block;background:#3498db;color:#fff;padding:10px 15px;border-radius:0;text-decoration:none;font-size:14px;margin-top:auto;width:100%;text-align:center;transition:background-color .2s;}.voir-albums-btn:hover{background:#2980b9;}.reserver-btn-container{margin-top:10px;text-align:center;}.reservation-btn{padding:10px 20px;background:#2ecc71;color:#fff;text-decoration:none;border-radius:0;font-weight:500;display:inline-block;transition:background-color .2s;}.reservation-btn:hover{background:#27ae60;}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgba(0,0,0,.5);}.modal-content{background:#fefefe;margin:10% auto;padding:20px;border:1px solid #888;width:80%;max-width:600px;border-radius:8px;position:relative;box-shadow:0 4px 8px rgba(0,0,0,.2);}.close{color:#aaa;position:absolute;top:10px;right:20px;font-size:28px;font-weight:700;cursor:pointer;}.close:hover{color:#333;}.modal h2{color:#d9534f;margin-bottom:15px;font-size:18px;}.form-group{margin-bottom:15px;}.form-group label{display:block;margin-bottom:5px;font-weight:700;color:#333;}.form-group input[type=email],.form-group textarea{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box;}.form-group textarea{min-height:100px;resize:vertical;}.modal-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;}.message{padding:10px;margin:10px 0;border-radius:4px;display:none;}.message.success{display:block;background:#d4edda;color:#155724;text-align:center;}.message.error{display:block;background:#f8d7da;color:#721c24;text-align:center;}.social-container{display:flex;gap:12px;margin-top:10px;flex-wrap:nowrap;}.social-item a{font-size:28px;color:#333;transition:color .3s;}.social-item a:hover{color:#007bff;}.social-container .fab.fa-instagram{color:#E1306C;}.social-container .fab.fa-facebook{color:#1877F2;}.social-container .fas.fa-globe{color:#3498db;}.conteneur-secondaire{width:90%;margin:10px auto;padding:5px;box-sizing:border-box;display:flex;flex-direction:row;gap:10px;justify-content:center;flex-wrap:wrap;}.avis-container{margin-top:10px;}.avis-item{border-bottom:1px solid #eee;padding:10px 0;margin-bottom:10px;}.avis-header{display:flex;align-items:center;margin-bottom:5px;flex-wrap:wrap;gap:8px;}.avis-name{font-size:14px;font-weight:bold;}.avis-rating{color:#FFC107;font-size:14px;}.avis-date{font-size:12px;color:#777;}.avis-comment{color:#333;line-height:1.4;font-size:14px;margin-top:5px;}.footer{padding:15px 0;background-color:#f8f9fa;border-top:1px solid #e9ecef;margin-top:10px;}.footer-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;}.footer p{margin:5px 0;color:#666;font-size:.85rem;}.social-links{display:flex;gap:15px;margin:10px 0;}.social-links a{color:#666;font-size:1.2rem;transition:color .2s;}.social-links a:hover{color:#3498db;}@media (max-width:1024px){.conteneur-principal-new,.conteneur-principal-profil{width:100%;flex-direction:column;}.sous-conteneur-new,.sous-conteneur-profil{width:100%!important;flex:none!important;min-height:auto;margin-bottom:10px;}.calendar-day{width:calc(100% / 5 - 3px);min-width:30px;font-size:11px;}.day-note{font-size:8px;}}@media (max-width:768px){.conteneur-principal-new,.conteneur-principal-profil{width:100%;flex-direction:column;}.sous-conteneur-new,.sous-conteneur-profil,.conteneur-secondaire,.sous-conteneur-secondaire{width:100%!important;min-width:100%!important;margin-bottom:10px;}.info-detailed-container{grid-template-columns:1fr;gap:3px;margin:3px 0;}.info-detailed-item{margin-bottom:0;padding:1px 0;}.calendar-day{width:calc(100% / 5 - 3px);min-width:30px;font-size:11px;}.day-note{font-size:8px;}}@media (max-width:480px){.calendar-day{width:calc(100% / 5 - 3px);min-width:30px;font-size:11px;}.day-note{font-size:8px;}.btn{padding:6px 10px;font-size:12px;}}