/* V4 : parcours artisans et TPE, palette de la V3 conservée. */
.v4 { --v4-muted:#b4bfd0; }
.v4 [hidden] { display:none!important; }
.v4 main { scroll-margin-top:100px; }
.v4 a:focus-visible,.v4 button:focus-visible,.v4 summary:focus-visible { outline:2px solid #a78bfa;outline-offset:5px; }
.v4 .v4-kicker { font:600 11px/1.7 var(--mono,monospace);letter-spacing:.12em;color:#a9bbdf;margin:0 0 20px; }
.v4 .v4-hero { padding:0;position:relative;background:radial-gradient(ellipse at 85% 40%,#131f453d,transparent 60%);overflow:hidden; }
.v4-topline { display:flex;justify-content:space-between;gap:20px;padding:27px 0;border-bottom:1px solid #a78bfa26;font:10px/1.6 var(--mono,monospace);letter-spacing:.1em;color:#9aabc5; }
.v4-hero-grid { display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:40px;min-height:605px;padding:48px 0 56px; }
.v4 #v4-title { font-size:clamp(48px,5.5vw,82px);font-weight:500;line-height:1.06;letter-spacing:-.06em;margin:0 0 26px;text-align:left; }
.v4 #v4-title em,.v4 h2 em { font-family:Georgia,'Times New Roman',serif;color:#a78bfa;font-weight:400; }
.v4 #v4-title em { display:inline;letter-spacing:-.07em; }
.v4 .v4-lead { font-size:18px;line-height:1.8;color:var(--v4-muted);max-width:545px;margin-bottom:30px; }
.v4-actions { display:flex;flex-wrap:wrap;align-items:center;gap:18px 24px; }
.v4 .r-pill { gap:24px;min-height:54px;font-size:14px; }
.v4-text-link { display:inline-flex;align-items:center;gap:16px;font-size:14px;line-height:1.6;color:#d4dcf0;min-height:44px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#a78bfa55; }
.v4-text-link:hover { color:#a78bfa; }
.v4 .v4-hero-note { font-size:12px;line-height:1.8;color:#a4b3cb;margin-top:24px; }
.v4-hero-visual { position:relative;padding:45px 15px 70px 20px;isolation:isolate; }
.v4-sculpture { position:absolute;width:400px;height:auto;max-width:100%;right:-45px;top:-78px;opacity:.6;z-index:-1;mix-blend-mode:lighten;mask-image:radial-gradient(ellipse,#000 20%,transparent 70%); }
.v4-site-preview { display:block;border:1px solid #a78bfa60;border-radius:13px;overflow:hidden;background:#0c172b;transform:rotate(-3deg);box-shadow:0 30px 70px #0005;transition:transform .3s; }
.v4-site-preview:hover { transform:rotate(-1deg) translateY(-3px); }
.v4-browser-bar { display:flex;justify-content:space-between;gap:10px;padding:14px 18px;color:#b2bfd9;font:8px/1.4 var(--mono,monospace);letter-spacing:.08em;background:#112039; }
.v4-browser-bar>span:first-child { color:#8b5cf6;letter-spacing:4px; }
.v4-preview-body { padding:30px;background:linear-gradient(135deg,#14253e,#101a2d); }
.v4-preview-brand { display:block;font-size:10px;letter-spacing:.15em;color:#c9d9ef;margin-bottom:34px; }
.v4-preview-tag { font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#a2b5ce; }
.v4-preview-body strong { display:block;font:400 clamp(27px,2.8vw,40px)/1.14 Georgia,serif;letter-spacing:-.03em;margin:12px 0 25px;color:#f4f7f8; }
.v4-preview-line { display:block;height:1px;background:#a78bfa60;width:64px;margin-bottom:20px; }
.v4-preview-link { display:flex;justify-content:space-between;font-size:12px;color:#d2dcf0; }
.v4-preview-foot { padding:14px 20px;font-size:10px;color:#9cabc4; }
.v4-price-note { position:absolute;right:-6px;bottom:12px;max-width:300px;display:grid;padding:20px 25px;border:1px solid #a78bfa70;background:#141f3b;box-shadow:0 16px 35px #0003;border-radius:12px;transform:rotate(2deg); }
.v4-price-note>span:first-child { font:9px var(--mono,monospace);letter-spacing:.13em;color:#b5c4df; }
.v4-price-note strong { font-size:38px;letter-spacing:-.05em;font-weight:500;color:#d1c2ff; }
.v4-price-note>span,.v4-price-note small { font-size:10px;line-height:1.7;color:#b8c4d8; }
.v4-price-note small { font-size:9px; }
.v4-promise-row { display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid #a78bfa26;padding:23px 0;gap:20px;font-size:12px;color:#b8c4d8; }
.v4-promise-row b { font:10px var(--mono,monospace);margin-right:20px;color:#a78bfa; }
.v4 .v4-needs,.v4 .v4-method,.v4 .v4-faq { padding-top:90px;padding-bottom:80px; }
.v4-section-head { display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:36px; }
.v4 h2 { line-height:1.12; }
.v4 .v4-section-head h2,.v4 .v4-region h2,.v4 .v4-faq h2 { font-size:clamp(32px,3.4vw,50px);font-weight:500;letter-spacing:-.045em;margin:0; }
.v4-section-head>p { font-size:14px;line-height:1.8;color:var(--v4-muted); }
.v4-needs-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px; }
.v4-need { position:relative;background:#0b172c;border:1px solid #a78bfa26;border-radius:16px;padding:30px;display:flex;flex-direction:column;align-items:start; }
.v4-need-featured { background:linear-gradient(155deg,#192546,#101c34);border-color:#a78bfa60; }
.v4-card-number { font:9px/1.6 var(--mono,monospace);letter-spacing:.12em;color:#a8bad7; }
.v4-need img { margin:28px 0 22px;object-fit:contain; }
.v4 .v4-need h3 { font-size:25px;font-weight:500;letter-spacing:-.03em;line-height:1.2;margin:0 0 17px; }
.v4 .v4-need p { font-size:14px;line-height:1.85;color:var(--v4-muted);margin:0 0 28px; }
.v4-need>a { display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:auto;padding-top:20px;border-top:1px solid #a78bfa26;width:100%;font-size:12px;line-height:1.7;color:#cdbdff;min-height:44px; }
.v4-underlinks { display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 16px;font-size:12px;line-height:2;color:#9bacc7;margin:25px 0 0; }
.v4-underlinks a { color:#cad5e9;text-decoration:underline;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center; }
.v4-steps { display:grid;grid-template-columns:repeat(3,1fr);gap:35px;list-style:none;padding:0;margin:0; }
.v4-steps li { border-top:1px solid #a78bfa40;padding:24px 0; }
.v4-steps li>span { font:12px var(--mono,monospace);color:#a78bfa; }
.v4 .v4-steps h3 { font-size:20px;font-weight:500;line-height:1.3;margin:24px 0 14px; }
.v4 .v4-steps p { font-size:14px;line-height:1.8;color:var(--v4-muted); }
.v4 .v4-region { border-block:1px solid #a78bfa26;display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-top:50px;padding-bottom:50px; }
.v4 .v4-region p:not(.v4-kicker) { font-size:15px;line-height:1.8;color:var(--v4-muted);margin:0 0 16px; }
.v4 .v4-future { display:flex;align-items:center;gap:40px;margin-top:65px;margin-bottom:20px;padding:40px;background:#111b34;border:1px solid #a78bfa30;border-radius:16px; }
.v4-future>div { flex:1; }
.v4-status { display:inline-block;font:9px/1.6 var(--mono,monospace);letter-spacing:.1em;color:#c0adff;border:1px solid #a78bfa55;padding:6px 12px;border-radius:30px; }
.v4 .v4-future h2 { font-size:32px;font-weight:500;letter-spacing:-.035em;margin:22px 0 18px; }
.v4 .v4-future p { max-width:670px;font-size:14px;color:var(--v4-muted);line-height:1.8; }
.v4-wave { display:flex;align-items:center;gap:8px;padding:30px; }
.v4-wave i { height:40px;width:7px;background:linear-gradient(#a78bfa,#3b82f6);border-radius:10px; }
.v4-wave i:nth-child(3n) { height:90px; }.v4-wave i:nth-child(2n) { height:65px; }
.v4 .v4-faq { display:grid;grid-template-columns:1fr 1.4fr;gap:70px; }
.v4-faq .v4-text-link { margin-top:24px; }
.v4-answers details { border-bottom:1px solid #a78bfa35;padding:0; }
.v4-answers summary { cursor:pointer;font-size:16px;font-weight:500;line-height:1.6;padding:22px 26px 22px 0; }
.v4-answers details p { font-size:14px;line-height:1.85;color:var(--v4-muted);margin:0 0 12px; }
.v4-answers details a { display:inline-block;font-size:13px;color:#bfa8ff;text-decoration:underline;text-underline-offset:4px;margin-bottom:24px;min-height:32px; }
.v4 .v4-closing { text-align:center;background:radial-gradient(ellipse at 50% 100%,#36307866,transparent 70%);border-block:1px solid #a78bfa30;padding:85px 0; }
.v4 .v4-closing h2 { font-size:clamp(38px,5.5vw,74px);font-weight:500;letter-spacing:-.05em;margin:0 0 24px; }
.v4 .v4-closing p:not(.v4-kicker) { font-size:16px;line-height:1.8;color:var(--v4-muted);margin-bottom:25px; }
.v4-closing .v4-text-link { display:flex;justify-content:center;margin-top:16px;font-size:12px; }
.v4 .v4-inline-note { border-left:2px solid #a78bfa;padding:15px 20px;margin:20px 0;background:#101c32;color:#bac8df;line-height:1.8;font-size:14px; }
.v4 .v4-contact-options { display:flex;flex-wrap:wrap;gap:10px;margin:22px 0; }
.v4-contact-options a { min-height:44px;display:flex;align-items:center;border:1px solid #a78bfa55;border-radius:30px;padding:8px 18px;font-size:13px; }
.v4-contact-options a[aria-current] { background:#a78bfa;color:#050d1e; }
.v4 label input,.v4 label textarea { font-size:16px; }
.v4 .v4-contact-help { font-size:13px;color:#b4bfd0;line-height:1.8; }
.v4 .v4-contact-help a { text-decoration:underline; }
.v4 .v4-page-start { padding-top:45px; }
.v4 .head-title { max-width:1000px;text-wrap:balance; }
.v4 .prix-bandeau { flex-wrap:wrap; }
.v4 .demo-frame iframe { width:100%; }
.v4 .v4-nav-project { background:#a78bfa!important;color:#050d1e!important;border-color:#a78bfa!important; }
.v4 .ga-skip { z-index:1000; }
@media(min-width:1100px) { .v4 .navbar { gap:22px; }.v4 nav.main { gap:2px; }.v4 nav.main a { font-size:12px;padding-inline:10px; }.v4 .nav-right .btn-glass { display:none; } }
@media(max-width:1050px) { .v4-hero-grid { gap:22px; }.v4 #v4-title { font-size:58px; }.v4-hero-visual { padding-left:0; }.v4-need { padding:24px; }.v4 .v4-need h3 { font-size:22px; }.v4 .v4-lead { font-size:16px; } }
@media(max-width:760px) { .v4-topline { font-size:8px; }.v4-topline>span:last-child { display:none; }.v4-hero-grid { grid-template-columns:1fr;padding-top:36px;gap:25px; }.v4 #v4-title { font-size:clamp(42px,9.8vw,66px); }.v4 .v4-lead { max-width:560px; }.v4-hero-visual { width:min(460px,100%);margin:auto;padding:22px 12px 85px; }.v4-sculpture { top:-80px;right:-10px;width:270px; }.v4-price-note { right:0; }.v4-promise-row { gap:15px;font-size:10px; }.v4-promise-row b { display:block;margin:0 0 7px; }.v4 .v4-needs,.v4 .v4-method,.v4 .v4-faq { padding-top:58px;padding-bottom:45px; }.v4-section-head { display:block; }.v4-section-head>p { margin-top:20px; }.v4-needs-grid,.v4-steps,.v4 .v4-region,.v4 .v4-faq { grid-template-columns:1fr;gap:24px; }.v4-need { padding:27px; }.v4-need img { width:46px;height:46px;margin:20px 0; }.v4 .v4-need h3 { font-size:27px; }.v4 .v4-region { gap:25px; }.v4 .v4-future { padding:25px;margin-top:35px; }.v4-wave { display:none; }.v4 .v4-closing { padding:60px 0; }.v4 .v4-faq h2 { margin-bottom:5px; }.v4-steps { gap:0; }.v4-underlinks { justify-content:flex-start; }.v4 .v4-future h2 { font-size:29px; } }
@media(prefers-reduced-motion:reduce) { .v4-site-preview { transition:none; } }
