:root{--color-primary: #5b7ba3;--color-primary-dark: #4a6582;--color-secondary: #d47a1f;--color-secondary-dark: #b06214;--color-background: #fafaf8;--color-surface: #ffffff;--color-footer: #1f2937;--color-text: #333333;--color-text-muted: #5c5c5c;--color-text-inverse: #f9fafb;--color-border: #e5e5e0;--color-border-active: #5b7ba3;--color-alert-bg: #fef3c7;--color-alert-text: #92400e;--color-focus-ring: rgba(91, 123, 163, .5);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--color-text);background-color:var(--color-background);line-height:1.7;font-size:1rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{margin:0;font-family:Playfair Display,Georgia,serif;font-weight:600;color:var(--color-text);text-wrap:balance}h1{font-size:2rem;line-height:1.2}h2{font-size:1.625rem;line-height:1.25}h3{font-size:1.25rem;line-height:1.3;font-weight:500}h4{font-family:Inter,sans-serif;font-size:1rem;line-height:1.4;font-weight:600}p{margin:0 0 1rem}a{color:var(--color-primary);text-decoration:none}a:hover{color:var(--color-secondary)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}button,a{touch-action:manipulation}.serif{font-family:Playfair Display,Georgia,serif}.label{font-family:Inter,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-primary)}.container{width:100%;max-width:var(--container-lg);margin-left:auto;margin-right:auto;padding-left:var(--space-4);padding-right:var(--space-4)}.container-sm{max-width:var(--container-sm)}.container-md{max-width:var(--container-md)}.container-xl{max-width:var(--container-xl)}.section{padding-top:var(--space-12);padding-bottom:var(--space-12)}.section-title{margin-bottom:var(--space-6)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:Inter,sans-serif;font-size:.875rem;font-weight:600;line-height:1;border-radius:var(--radius-sm);border:2px solid transparent;cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .15s ease;min-height:44px}.btn:active{transform:translateY(1px)}.btn-primary{background-color:var(--color-secondary);color:#fff}.btn-primary:hover{background-color:var(--color-secondary-dark);color:#fff}.btn-secondary{background-color:var(--color-primary);color:#fff}.btn-secondary:hover{background-color:var(--color-primary-dark);color:#fff}.btn-outline{background-color:transparent;border-color:currentColor;color:var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:#fff}.btn-white{background-color:#fff;color:var(--color-primary)}.btn-white:hover{background-color:var(--color-border);color:var(--color-primary-dark)}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.textlink{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.textlink:hover{color:var(--color-secondary)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.grid-2{display:grid;gap:var(--space-8);grid-template-columns:1fr}.grid-3{display:grid;gap:var(--space-6);grid-template-columns:1fr}.grid-4{display:grid;gap:var(--space-4);grid-template-columns:1fr}@media (min-width: 640px){.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}}@media (min-width: 1024px){.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.section{padding-top:var(--space-16);padding-bottom:var(--space-16)}}.site-header{position:sticky;top:0;z-index:100;color:var(--color-text-inverse);transition:background-color .2s ease}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:var(--space-4)}.header-logo{display:inline-flex;align-items:center;flex-shrink:0}.header-logo img{width:auto;height:48px}.desktop-nav{display:none}.desktop-nav ul{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:var(--space-6)}.desktop-nav a{color:var(--color-text-inverse);font-size:.9375rem;font-weight:500;padding:var(--space-2) 0;border-bottom:2px solid transparent;transition:border-color .15s ease,color .15s ease}.desktop-nav a:hover,.desktop-nav a.active{border-bottom-color:var(--color-secondary);color:#fff}.header-actions{display:flex;align-items:center;gap:var(--space-4)}.header-phone{display:none;align-items:center;gap:var(--space-2);color:var(--color-text-inverse);font-weight:600;font-size:.875rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background-color:#ffffff26}.header-phone:hover{background-color:#ffffff40;color:#fff}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-sm);color:var(--color-text-inverse);cursor:pointer}.mobile-menu{position:fixed;top:72px;right:0;bottom:0;left:0;background-color:var(--color-footer);padding:var(--space-8) var(--space-4);z-index:99;overflow-y:auto}.mobile-menu ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.mobile-menu a{display:block;color:var(--color-text-inverse);font-size:1.25rem;padding:var(--space-3) 0;border-bottom:1px solid rgba(255,255,255,.15)}.mobile-menu a.active{color:var(--color-secondary)}.mobile-phone{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-secondary);font-weight:600;margin-top:var(--space-4)}@media (min-width: 1024px){.desktop-nav{display:block}.header-phone{display:inline-flex}.menu-toggle,.mobile-menu{display:none}}.site-footer{background-color:var(--color-footer);color:var(--color-text-inverse);padding-top:var(--space-12)}.footer-grid{display:grid;gap:var(--space-8);grid-template-columns:1fr}.footer-logo{width:auto;height:56px;margin-bottom:var(--space-4)}.footer-tagline{color:#ffffffd9;font-size:.9375rem}.footer-title{color:#fff;margin-bottom:var(--space-4);font-family:Inter,sans-serif;font-size:1rem;font-weight:600}.footer-address{font-style:normal}.footer-address p{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3);color:#ffffffd9}.footer-address a{color:#ffffffd9}.footer-address a:hover{color:#fff}.footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.footer-links a{color:#ffffffd9}.footer-links a:hover{color:#fff}.footer-bottom{margin-top:var(--space-12);border-top:1px solid rgba(255,255,255,.15);padding:var(--space-6) 0}.footer-bottom-inner{display:flex;flex-direction:column;gap:var(--space-2);text-align:center;font-size:.875rem;color:#ffffffb3}.footer-bottom a{color:#ffffffd9}@media (min-width: 768px){.footer-grid{grid-template-columns:repeat(3,1fr)}.footer-bottom-inner{flex-direction:row;justify-content:space-between;text-align:left}}.page-header{padding:var(--space-12) 0}.page-header-blue{background-color:var(--color-primary);color:var(--color-text-inverse)}.page-header-blue h1,.page-header-blue .page-header-subtitle,.page-header-blue .label{color:var(--color-text-inverse)}.page-header-light{background-color:var(--color-surface);border-bottom:1px solid var(--color-border)}.page-header-title{margin-top:var(--space-2)}.page-header-subtitle{margin-top:var(--space-4);max-width:640px;opacity:.95}.hero{position:relative;min-height:35vh;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;object-fit:cover;width:100%;height:100%}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#1f29378c,#1f293759)}.hero-content{position:relative;z-index:1;padding:var(--space-12) var(--space-4)}.hero h1{color:#fff;margin-bottom:var(--space-4)}.hero-subtitle{font-size:1.125rem;margin-bottom:var(--space-6);opacity:.95}@media (min-width: 1024px){.hero{min-height:50vh}.hero h1{font-size:3rem}}.bloc-rdv{background-color:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-12) 0}.bloc-rdv-title{color:#fff;text-align:center;margin-bottom:var(--space-8)}.rdv-grid{display:grid;gap:var(--space-4);grid-template-columns:1fr;max-width:900px;margin:0 auto}.rdv-tile{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6);background-color:#ffffff1f;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-md);color:#fff;text-align:center;min-height:44px;transition:background-color .15s ease,transform .15s ease}.rdv-tile:hover{background-color:#ffffff38;color:#fff;transform:translateY(-2px)}.rdv-label{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.85}.rdv-value{font-size:1.125rem;font-weight:600}.bloc-rdv-cta{text-align:center;margin-top:var(--space-8)}@media (min-width: 640px){.rdv-grid{grid-template-columns:repeat(3,1fr)}}.faq-accordion{display:flex;flex-direction:column;gap:var(--space-3)}.faq-item{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.faq-item h3{font-family:Inter,sans-serif;font-size:1rem;font-weight:600}.faq-item button{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:transparent;border:none;color:var(--color-text);text-align:left;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px}.faq-icon{flex-shrink:0;color:var(--color-secondary)}.faq-panel{padding:0 var(--space-5) var(--space-5) calc(var(--space-5) + 32px + var(--space-3));color:var(--color-text-muted)}.faq-answer p{margin-bottom:var(--space-3)}.contact-form{padding:var(--space-6)}.alert-box{display:flex;gap:var(--space-3);align-items:flex-start;background-color:var(--color-alert-bg);color:var(--color-alert-text);padding:var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-6);font-size:.9375rem}.form-field{margin-bottom:var(--space-4)}.form-field label{display:block;font-size:.875rem;font-weight:600;margin-bottom:var(--space-2)}.form-field label span[aria-hidden=true]{color:var(--color-secondary)}.form-field input,.form-field textarea{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit;font-size:1rem;background-color:var(--color-surface);color:var(--color-text)}.form-field input:focus,.form-field textarea:focus{border-color:var(--color-border-active)}.field-error{color:#b91c1c;font-size:.875rem;margin-top:var(--space-2);margin-bottom:0}.form-status{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:.9375rem}.form-status.success{background-color:#dcfce7;color:#166534}.form-status.error{background-color:#fee2e2;color:#991b1b}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.google-map{width:100%;height:100%;min-height:280px;border:0;border-radius:var(--radius-md)}.specialty-card{padding:var(--space-6);text-align:center}.specialty-card-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background-color:#5b7ba31a;color:var(--color-primary);margin-bottom:var(--space-4)}.specialty-card h3{margin-bottom:var(--space-2)}.specialty-card p{color:var(--color-text-muted);font-size:.9375rem;margin:0}.doctor-card,.assistant-card{text-align:center;padding:var(--space-6)}.doctor-card img,.assistant-card img{width:140px;height:140px;border-radius:50%;object-fit:cover;margin:0 auto var(--space-4);border:4px solid var(--color-border)}.doctor-card h3{font-size:1.25rem;margin-bottom:var(--space-1)}.doctor-card .specialty{color:var(--color-primary);font-weight:600;font-size:.875rem;margin-bottom:var(--space-3)}.doctor-card .bio{color:var(--color-text-muted);font-size:.9375rem;line-height:1.6;margin-bottom:var(--space-4)}.doctor-card .hours{background-color:var(--color-background);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4);font-size:.875rem;color:var(--color-text)}.doctor-card .hours li{margin-bottom:var(--space-1)}.assistant-card h3{font-size:1.125rem}.feature-card{display:grid;gap:var(--space-6);align-items:center;background-color:var(--color-surface)}.feature-card img{width:100%;height:auto;object-fit:cover}.feature-card-content{padding:var(--space-6)}.feature-card-content h3{margin-bottom:var(--space-3)}.feature-card-content p{color:var(--color-text-muted);margin-bottom:var(--space-4)}.badge{display:inline-block;padding:var(--space-1) var(--space-3);background-color:var(--color-secondary);color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;border-radius:var(--radius-full)}.badge-outline{background-color:transparent;border:1px solid var(--color-secondary);color:var(--color-secondary)}.gallery{display:grid;gap:var(--space-4);grid-template-columns:1fr}.gallery img{width:100%;height:260px;object-fit:cover;border-radius:var(--radius-md)}@media (min-width: 640px){.gallery{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.gallery{grid-template-columns:repeat(3,1fr)}.feature-card{grid-template-columns:1fr 1fr}.feature-card.reverse .feature-card-content{order:-1}}.contact-grid{display:grid;gap:var(--space-8);grid-template-columns:1fr}.contact-info-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-6)}.contact-info-card h2{margin-bottom:var(--space-4)}.contact-info-card .logo{width:auto;height:56px;margin-bottom:var(--space-4)}.contact-detail{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);color:var(--color-text-muted)}.contact-detail strong{display:block;color:var(--color-text);margin-bottom:var(--space-1)}.contact-detail a{color:var(--color-primary)}.contact-tiles{display:grid;gap:var(--space-4);grid-template-columns:1fr;margin-bottom:var(--space-8)}.contact-tile{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);min-height:44px;transition:border-color .15s ease,box-shadow .15s ease}.contact-tile:hover{border-color:var(--color-border-active);box-shadow:var(--shadow-md);color:var(--color-text)}.contact-tile-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background-color:#5b7ba31a;color:var(--color-primary);flex-shrink:0}.contact-tile-label{display:block;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-primary)}.contact-tile-value{font-weight:600}@media (min-width: 640px){.contact-tiles{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.contact-grid{grid-template-columns:1fr 1fr}.contact-tiles{grid-template-columns:repeat(3,1fr)}}.privacy-layout{display:grid;gap:var(--space-8);grid-template-columns:1fr}.privacy-toc{display:none}.privacy-toc ul{position:sticky;top:100px;list-style:none;margin:0;padding:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.privacy-toc a{display:block;padding:var(--space-2) 0;color:var(--color-text-muted);font-size:.9375rem}.privacy-toc a:hover{color:var(--color-primary)}.privacy-content h2{margin-top:var(--space-10);margin-bottom:var(--space-4);font-size:1.5rem}.privacy-content h2:first-child{margin-top:0}.privacy-content p{color:var(--color-text-muted)}@media (min-width: 1024px){.privacy-layout{grid-template-columns:280px 1fr}.privacy-toc{display:block}}.not-found{text-align:center;padding:var(--space-16) 0}.not-found h1{font-size:4rem;color:var(--color-primary)}.intro-images{position:relative;display:grid;gap:var(--space-4)}.intro-images img{border-radius:var(--radius-md)}.intro-badge{position:absolute;bottom:var(--space-4);left:var(--space-4);background-color:var(--color-secondary);color:#fff;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.access-grid{display:grid;gap:var(--space-8);grid-template-columns:1fr}.access-info h2{margin-bottom:var(--space-4)}.access-info h4{margin-top:var(--space-6);margin-bottom:var(--space-2);color:var(--color-primary)}.access-info p{color:var(--color-text-muted)}@media (min-width: 1024px){.access-grid{grid-template-columns:1fr 1fr}}.prestation-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.prestation-list li{display:flex;align-items:flex-start;gap:var(--space-2);color:var(--color-text-muted)}.prestation-list svg{flex-shrink:0;color:var(--color-secondary);margin-top:4px}
