:root{--blue:#172554;--blue2:#1e3a8a;--red:#dc2626;--red2:#b91c1c;--bg:#fffdf8;--yellow:#f4c542;--text:#172033;--muted:#5b6475;--border:#e5e7eb;--heading:"Poppins","Segoe UI",sans-serif;--body:"Inter","Segoe UI",sans-serif}*{box-sizing:border-box}html{color:var(--text);background:#eef2f8;font-family:var(--body);line-height:1.5;-webkit-font-smoothing:antialiased}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}.skip-link{position:fixed;top:1rem;left:1rem;z-index:20;padding:.75rem 1rem;border-radius:.5rem;color:#fff;background:var(--blue);font-weight:700;transform:translateY(-200%)}.skip-link:focus{transform:none}.page-shell{min-height:100vh;background:radial-gradient(circle at 8% 5%,rgba(30,58,138,.12),transparent 28rem),radial-gradient(circle at 92% 95%,rgba(220,38,38,.08),transparent 26rem),#eef2f8}.digital-card{position:relative;width:100%;min-height:100vh;overflow:hidden;background:var(--bg)}.card-accent{display:grid;grid-template-columns:repeat(3,1fr);height:.375rem}.card-accent span:first-child{background:var(--blue2)}.card-accent span:nth-child(2){background:#fff}.card-accent span:last-child{background:var(--red)}.profile-header,.specialties,.contact-actions,.card-footer{padding-inline:1.25rem}.profile-header{padding-top:2rem;text-align:center}.photo-placeholder{display:grid;width:8.5rem;aspect-ratio:1;margin:auto;place-items:center;border:.375rem solid #fff;border-radius:50%;color:#fff;background:linear-gradient(145deg,rgba(255,255,255,.12),transparent),var(--blue2);box-shadow:0 0 0 1px rgba(23,37,84,.12),0 .875rem 2rem rgba(23,37,84,.18);font:700 2rem var(--heading);letter-spacing:.04em}.bonjour{display:flex;justify-content:center;align-items:center;gap:.5rem;margin:1.5rem 0 0;color:var(--red);font:600 1rem var(--heading)}.french-flag{display:inline-grid;grid-template-columns:repeat(3,1fr);width:1.5rem;height:1rem;overflow:hidden;border-radius:.125rem;box-shadow:0 0 0 1px rgba(23,37,84,.12)}.french-flag span:first-child{background:#002395}.french-flag span:nth-child(2){background:#fff}.french-flag span:last-child{background:#ed2939}h1,h2,h3,p{overflow-wrap:break-word}h1{margin:.25rem 0 0;color:var(--blue);font:700 clamp(2.25rem,10vw,3.25rem)/1.08 var(--heading);letter-spacing:-.035em}.profession{margin:.5rem 0 0;color:var(--blue2);font:600 1rem var(--heading)}.introduction{max-width:31rem;margin:1.25rem auto 0;color:var(--muted);font-size:.9375rem;line-height:1.75}.specialties{padding-top:2.5rem}.specialties h2{margin:0 0 1rem;color:var(--blue);font:600 1.25rem var(--heading);text-align:center}.specialty-list{display:grid;gap:.75rem}.specialty{position:relative;padding:1.125rem 1.125rem 1.125rem 3.75rem;border:1px solid var(--border);border-radius:.875rem;background:#fff;box-shadow:0 .375rem 1rem rgba(23,37,84,.045);transition:.18s}.specialty:hover{border-color:rgba(30,58,138,.3);box-shadow:0 .75rem 1.5rem rgba(23,37,84,.08);transform:translateY(-2px)}.specialty>span{position:absolute;top:1.125rem;left:1rem;color:var(--red);font:700 .75rem var(--heading);letter-spacing:.08em}.specialty h3{margin:0;color:var(--blue);font:600 .9375rem var(--heading)}.specialty p{margin:.375rem 0 0;color:var(--muted);font-size:.8125rem;line-height:1.55}.contact-actions{display:grid;gap:.75rem;padding-top:2rem}.contact-button{display:flex;width:100%;min-height:3.25rem;align-items:center;justify-content:center;gap:.625rem;padding:.75rem 1rem;border:2px solid transparent;border-radius:.75rem;font-size:.875rem;font-weight:700;line-height:1.35;text-align:center;text-decoration:none;transition:.16s}.contact-button svg{width:1.25rem;height:1.25rem;flex:none;fill:currentColor}.contact-button:hover{transform:translateY(-2px)}.primary{color:#fff;background:var(--red);box-shadow:0 .625rem 1.25rem rgba(220,38,38,.18)}.primary:hover{background:var(--red2)}.secondary{border-color:var(--blue);color:var(--blue)}.secondary:hover{color:#fff;background:var(--blue)}.instagram{border-color:rgba(30,58,138,.15);color:var(--blue2);background:rgba(30,58,138,.055)}.instagram:hover{background:rgba(30,58,138,.1)}.card-footer{margin-top:2.5rem;padding-top:1.75rem;padding-bottom:1.75rem;color:rgba(255,255,255,.76);background:var(--blue);font-size:.75rem;text-align:center}.card-footer p{margin:0}.footer-brand{color:#fff;font:600 .75rem var(--heading)}.card-footer a{display:inline-block;margin-block:.75rem;color:#fff;font-weight:600;text-underline-offset:.2em}.card-footer a:hover{color:var(--yellow)}.nero{color:#c084fc;font-weight:700}.copyright{margin-top:.5rem!important;color:rgba(255,255,255,.58)}:focus-visible{border-radius:.25rem;outline:3px solid var(--yellow);outline-offset:3px}@media(min-width:37.5rem){.page-shell{padding:2.5rem 1.5rem}.digital-card{width:min(100%,35rem);min-height:auto;margin:auto;border:1px solid rgba(23,37,84,.08);border-radius:1.5rem;box-shadow:0 1.5rem 4rem rgba(23,37,84,.16)}.profile-header,.specialties,.contact-actions,.card-footer{padding-inline:2.25rem}.profile-header{padding-top:2.75rem}.photo-placeholder{width:10rem}.specialty-list{grid-template-columns:repeat(3,minmax(0,1fr))}.specialty{padding:2.75rem 1rem 1rem}.specialty>span{top:1rem}.card-footer{border-radius:0 0 1.5rem 1.5rem}}@media(prefers-reduced-motion:reduce){*,::before,::after{transition-duration:.01ms!important}}
