*{box-sizing:border-box}body{margin:0;background:#f2f0eb;color:#182d32;font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #bd9041;outline-offset:4px}.card-top{max-width:720px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:22px 24px;font-size:13px}.card-top b{font:700 30px Georgia,serif}.card-top b span{color:#a97f33}.business-card{max-width:520px;margin:0 auto;border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 16px 65px #162c3212}.card-cover{height:155px;padding:24px;display:flex;justify-content:space-between;gap:12px;background:linear-gradient(125deg,#162c32,#35555b);color:#e4d7ba;font-size:10px;letter-spacing:1.7px}.identity{text-align:center;padding:0 22px}.portrait{display:block;margin:-65px auto 20px;border-radius:50%;border:6px solid #fff;object-fit:cover;object-position:center 25%;background:#e9e7e0;position:relative}.eyebrow{color:#92713b;font-size:10px;letter-spacing:2px;font-weight:700}h1{font:normal 36px Georgia,serif;margin:12px 0 4px}h1 strong{font-weight:normal}p{margin:10px 0}.job{font-size:13px}.intro{font:23px/1.35 Georgia,serif;margin:22px 0 12px}.area{font-size:12px;color:#687578}.card-content{padding:24px 28px 28px}.action{display:flex;align-items:center;justify-content:center;gap:9px;min-height:51px;padding:12px 14px;border:1px solid #dddcd6;border-radius:11px;background:#fff;font-size:14px;font-weight:600;width:100%;transition:background .2s,transform .2s}.action:hover{background:#eeefea}.primary{background:#182f35;color:#fff;border-color:#182f35}.primary:hover{background:#2f4d54}.primary small{font-size:10px;background:#ffffff19;padding:2px 7px;border-radius:20px}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 20px}.contact-line{display:flex;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid #eeede8;font-size:14px;overflow-wrap:anywhere}.contact-line>span:nth-child(2){flex:1}.contact-line small{display:block;font-size:9px;letter-spacing:1.7px;color:#7d8788;margin-bottom:3px}.project-links{margin:20px 0}.project-links a{display:flex;justify-content:space-between;padding:10px 0;font-size:14px}.socials{display:flex;gap:20px;font-size:12px;color:#67767a;margin:10px 0 25px}.keep-card{background:#f5f4ef;border-radius:16px;padding:20px;text-align:center}.keep-card h2{font:25px Georgia,serif;margin:0}.keep-card p{font-size:12px;color:#647073}.keep-card .action{font-size:12px;margin-top:14px}.wallet{background:#17272c;color:#fff}.wallet:hover{color:#17272c}summary{cursor:pointer;font-size:13px;margin-top:18px}.qr{display:block;max-width:100%;height:auto;margin:20px auto 10px}.keep-card details a{font-size:12px;text-decoration:underline}.share{margin-top:18px;color:#8b692f;border-color:#cbb993}.card-footer{text-align:center;padding:24px 16px 35px;font-size:12px}.card-footer p{font-size:10px;color:#6d7777}#card-status{font-size:12px;text-align:center}dialog{border:0;border-radius:20px;padding:30px;max-width:440px;width:calc(100% - 32px);color:#182d32}dialog::backdrop{background:#10282ddd}dialog h2{font:26px Georgia,serif}dialog p{font-size:14px}dialog>button.close:first-child{float:right;background:transparent;border:0;font-size:26px}dialog .action{margin-top:20px}[hidden]{display:none!important}@media(max-width:560px){.card-top{padding:15px 20px}.business-card{margin:0 12px}.card-content{padding:22px 20px}.card-cover{padding:22px 18px;font-size:9px}.card-footer{padding-bottom:max(28px,env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){.action{transition:none}}

.socials a{display:inline-flex;align-items:center;gap:8px}.social-icon{width:19px;height:19px;flex:none}.socials a:hover{color:#162c32}.recommend-card{padding:22px 20px;margin:0 0 22px;border:1px solid #dbc8a3;border-radius:16px;background:#fbf8f1}.recommend-card .eyebrow{font-size:9px;margin:0 0 12px}.recommend-card h2{font:28px/1.15 Georgia,serif;margin:0 0 14px}.recommend-card>p{font-size:13px;line-height:1.6}.nationwide{display:inline-block;font-size:10px;letter-spacing:.7px;text-transform:uppercase;color:#806128;background:#efe7d7;padding:4px 10px;border-radius:20px;margin:3px 0 15px}.recommend-card .action{font-size:12px}.mareco-contact{display:flex;align-items:center;gap:12px;margin:22px 0 14px}.mareco-contact img{object-fit:contain}.mareco-contact p{font-size:11px;margin:2px 0}.mareco-contact strong{color:#8a6627;font-size:16px;letter-spacing:2px}.recommend-card .reco-conditions{font-size:10px;color:#667372;margin:14px 0 0}.reco-conditions a{text-decoration:underline}

.team-card{background:linear-gradient(145deg,#edf6ff,#f8fbff);border:1px solid #bad8f6;border-radius:16px;padding:24px 20px;margin:0 0 22px}.team-card .eyebrow{font-size:9px;color:#28587e;margin:0 0 12px}.success-badge{display:inline-block;background:#0077e7;color:#fff;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:700;letter-spacing:1px}.team-card h2{font:29px/1.2 Georgia,serif;margin:17px 0}.team-card h2 em{color:#0064c5}.team-card p{font-size:13px;line-height:1.6}.team-card .team-offer{font-size:19px;margin:0 0 14px}.team-offer strong{color:#0064c5}.team-support{padding:12px 0}.team-cta{background:#0077e7;color:#fff;border-color:#0077e7;font-size:12px}.team-cta:hover{background:#005eb8;color:#fff}.team-details{display:block;margin:13px 0;font-size:12px;color:#005da8;text-decoration:underline}.team-card .team-terms{font-size:10px;color:#51677b;margin:15px 0 0}

/* Feedback for text links only; .action links keep their button styles. */
a:not(.action){cursor:pointer;text-decoration-thickness:1px;text-underline-offset:4px;transition:color .18s ease,text-decoration-color .18s ease,background-color .18s ease}
@media(hover:hover){
 a:not(.action):hover{color:#8b652a;text-decoration-line:underline;text-decoration-color:currentColor}
 .team-card a:not(.action):hover{color:#004c96}
 .contact-line:hover,.project-links a:hover{background-color:#f7f4ed}
}
a:not(.action):focus-visible{color:#8b652a;text-decoration-line:underline}
a:not(.action):active{color:#70501e;text-decoration-line:underline;background-color:#efe7d7}
@media(prefers-reduced-motion:reduce){a:not(.action){transition:none}}

/* Bandeau compact : carte de visite uniquement. */
.card-success-banner{max-width:520px;margin:0 auto 16px;background:linear-gradient(110deg,#071c35,#0b4475);color:#fff;display:flex;align-items:center;border-radius:12px;border:1px solid #428bbb;overflow:hidden;position:relative}
.card-success-link{display:block;flex:1;min-width:0;overflow:hidden;padding:16px 0;cursor:pointer;color:#fff!important;mask-image:linear-gradient(to right,transparent,#000 10px,#000 calc(100% - 10px),transparent)}
.card-success-track{display:flex;width:max-content;animation:card-success-travel 32s linear infinite}
.card-success-copy{display:flex;align-items:center;flex-shrink:0;gap:26px;padding-right:26px;white-space:nowrap;font-size:14px}
.card-success-copy strong{color:#ffdb82;letter-spacing:1px;font-size:13px}
.card-success-banner a.card-success-link:hover{background:#164e78;transform:none;text-decoration:none}
.card-success-link:hover .card-success-track,.card-success-link:focus .card-success-track,.card-success-pause:checked~.card-success-link .card-success-track{animation-play-state:paused}
.card-success-control{cursor:pointer;flex:0 0 auto;padding:16px 10px;font-size:11px;color:#ffdb82;border-left:1px solid #ffffff22}
.card-success-pause,.card-success-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.card-success-play{display:none}.card-success-pause:checked~.card-success-control .card-success-play{display:inline}.card-success-pause:checked~.card-success-control .card-success-stop{display:none}
.card-success-pause:focus-visible~.card-success-control{outline:2px solid #ffdb82;outline-offset:-4px}.card-success-link:focus-visible{outline:2px solid #ffdb82;outline-offset:-4px}
@keyframes card-success-travel{to{transform:translateX(-50%)}}
@media(max-width:560px){.card-success-banner{margin:0 12px 14px}.card-success-copy{font-size:13px}}
@media(prefers-reduced-motion:reduce){.card-success-track{animation:none;width:auto}.card-success-copy{white-space:normal;padding:0 14px;flex-wrap:wrap;gap:5px 12px}.card-success-copy+.card-success-copy,.card-success-control,.card-success-pause{display:none}.card-success-link{mask-image:none}}
