:root{--navy:#06152f;--navy2:#0a2347;--gold:#c99735;--gold2:#efc36a;--cream:#f6f3ec;--white:#fff;--ink:#10203a;--muted:#657083;--line:#e7e8eb;--shadow:0 25px 70px rgba(6,21,47,.14);--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:99;background:transparent}.scroll-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--gold2))}.site-header{height:94px;padding:0 5vw;display:flex;align-items:center;gap:34px;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(7,23,51,.06)}.brand{width:250px;flex:0 0 auto}.brand img{width:100%;height:66px;object-fit:contain;object-position:left center}.main-nav{margin-left:auto;display:flex;align-items:center;gap:25px;font-size:14px;font-weight:650}.main-nav a{position:relative;padding:10px 0}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:var(--gold);transition:.25s}.main-nav a:hover:after,.main-nav a.active:after{right:0}.header-cta{padding:14px 20px;border-radius:999px;background:var(--navy);color:#fff;font-size:13px;font-weight:750;white-space:nowrap}.menu-toggle{display:none;margin-left:auto;border:0;background:none;font-size:24px}.hero{min-height:calc(100vh - 94px);position:relative;display:grid;grid-template-columns:.86fr 1.14fr;align-items:center;padding:70px 5vw 90px;background:radial-gradient(circle at 11% 20%,rgba(207,158,61,.12),transparent 24%),linear-gradient(180deg,#fff,#f7f9fc 72%,#fff);overflow:hidden}.hero-orb{position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}.orb-one{width:460px;height:460px;right:-210px;top:40px;border:1px solid rgba(201,151,53,.18)}.orb-two{width:240px;height:240px;left:-120px;bottom:60px;background:rgba(7,25,55,.035)}.eyebrow{font-size:12px;font-weight:850;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 18px}.hero h1,.section-heading h2,.offer-copy h2,.manifesto h2,.local-copy h2,.contact-hero h1{font-size:clamp(46px,5.1vw,82px);line-height:.98;letter-spacing:-.055em;margin:0;color:var(--navy)}.hero h1 span,.section-heading h2 span,.offer-copy h2 span,.manifesto h2 span,.local-copy h2 span,.contact-hero h1 span{color:var(--gold)}.hero-lead{font-size:19px;line-height:1.65;max-width:640px;color:#4f5d70;margin:28px 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:16px 24px;font-weight:800;font-size:14px;border:1px solid transparent;transition:.25s}.btn:hover{transform:translateY(-2px)}.btn-gold{background:linear-gradient(135deg,var(--gold),#e6b654);color:#081631;box-shadow:0 13px 30px rgba(201,151,53,.24)}.btn-ghost{border-color:#cfd4dc;background:#fff}.btn-light{background:#fff;color:var(--navy)}.hero-proof{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px;color:#657083;font-size:12px;font-weight:650}.hero-showcase{position:relative;height:610px;min-width:0}.browser{position:absolute;background:#fff;border:1px solid #e5e7eb;border-radius:20px;overflow:hidden;box-shadow:0 35px 90px rgba(7,25,55,.2)}.browser-top{height:38px;background:#f3f5f7;display:flex;align-items:center;gap:6px;padding:0 12px;color:#8b95a3;font-size:10px}.browser-top i{width:8px;height:8px;border-radius:50%;background:#c7ccd3}.browser-top b{font-weight:600;margin-left:8px}.browser-main{width:78%;height:470px;right:2%;top:65px;z-index:3;transform:rotate(-1deg)}.browser-back{width:48%;height:300px;z-index:1;filter:saturate(.9)}.browser-left{left:0;top:0;transform:rotate(-5deg)}.browser-right{right:-4%;bottom:0;transform:rotate(5deg)}.mock{height:calc(100% - 38px);padding:24px}.mock-builder{background:linear-gradient(135deg,#0c3150,#1a5875);color:#fff}.mock-nav{display:flex;justify-content:space-between;font-size:11px;align-items:center}.mock-nav strong{font-size:15px}.mock-hero{margin-top:75px;max-width:75%}.mock-hero small{letter-spacing:.15em;font-size:9px;color:#ffd27b}.mock-hero h3{font-size:34px;line-height:1.03;margin:12px 0}.mock-hero p{font-size:12px}.mock-hero button{border:0;border-radius:99px;padding:10px 14px;background:#f2ad42;color:#12213a;font-weight:800}.mock-estate{background:linear-gradient(140deg,#eaf5fb,#fff);display:flex;flex-direction:column;justify-content:center}.mock-estate strong{color:#173c5c;font-size:18px}.mock-estate h4{font-size:26px;max-width:250px;color:#0e2f4c}.mock-service{background:linear-gradient(140deg,#eef4fa,#dcecf4);display:flex;flex-direction:column;justify-content:center}.mock-service strong{color:#086a8d;font-size:22px}.mock-service h4{font-size:24px;max-width:270px}.scroll-cue{position:absolute;left:5vw;bottom:24px;display:flex;align-items:center;gap:10px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#768092}.scroll-cue span{width:38px;height:1px;background:#aeb5be}.trust-line{display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center;padding:34px 8vw;background:var(--navy);color:#fff}.trust-line div:not(.trust-arrow){display:flex;justify-content:center;gap:14px;align-items:baseline}.trust-line strong{font-size:20px}.trust-line span{color:#acb7c8}.trust-arrow{font-size:25px;color:var(--gold)}.section{padding:110px 7vw}.section-heading{max-width:900px;margin-bottom:55px}.section-heading h2{font-size:clamp(38px,4.2vw,64px);line-height:1.03}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{border:1px solid var(--line);border-radius:var(--radius);padding:34px;min-height:270px;background:#fff;transition:.3s}.feature-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.feature-card .icon{font-size:12px;font-weight:900;color:var(--gold);margin-bottom:58px}.feature-card h3{font-size:23px;margin:0 0 12px;color:var(--navy)}.feature-card p{color:var(--muted);line-height:1.7;margin:0}.portfolio-section{padding:110px 5vw;background:linear-gradient(145deg,#07172f,#0b2345);color:#fff;overflow:hidden}.section-heading.light h2{color:#fff}.portfolio-rail{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card{min-width:0}.project-browser{border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 28px 60px rgba(0,0,0,.24)}.project-screen{height:390px;padding:48px 38px;display:flex;flex-direction:column;justify-content:flex-end}.project-screen small{font-size:10px;letter-spacing:.15em;font-weight:850}.project-screen h3{font-size:34px;line-height:1.06;margin:12px 0}.project-screen p{line-height:1.6;max-width:390px}.project-artisan .project-screen{background:linear-gradient(145deg,#173e5c,#2e6b86);color:#fff}.project-commerce .project-screen{background:linear-gradient(145deg,#f8e9df,#fbf7f4);color:#4c2930}.project-pro .project-screen{background:linear-gradient(145deg,#dce9f3,#f7fafc);color:#132f4f}.project-meta{padding:18px 3px 5px;display:flex;flex-direction:column;gap:5px}.project-meta b{font-size:18px}.project-meta span{font-size:12px;color:#aeb9c9}.offer-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;background:#f8f7f3}.offer-copy h2{font-size:clamp(38px,4.3vw,64px)}.offer-copy>p:not(.eyebrow){font-size:17px;line-height:1.75;color:var(--muted);max-width:600px}.text-link{display:inline-block;margin-top:18px;font-weight:850;color:var(--navy)}.offer-card{background:#fff;border-radius:32px;box-shadow:var(--shadow);overflow:hidden}.offer-top{padding:28px 32px;background:var(--navy);color:#fff;display:flex;justify-content:space-between;gap:20px;align-items:center}.offer-top span{font-size:13px;color:#d7dce6}.offer-card ul{list-style:none;margin:0;padding:12px 32px}.offer-card li{display:flex;justify-content:space-between;gap:25px;padding:20px 0;border-bottom:1px solid #eceef1}.offer-card li strong{color:var(--navy)}.offer-card li span{color:#778193;text-align:right;font-size:13px}.offer-bottom{display:flex;justify-content:space-between;align-items:center;padding:22px 32px;background:#faf8f3}.offer-bottom p{margin:0;color:#717b8b}.offer-bottom a{font-weight:900;font-size:20px;color:var(--navy)}.method-section{padding:110px 7vw}.centered{text-align:center;margin:0 auto 55px}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1200px;margin:auto}.method-card{padding:36px;border-radius:24px;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #e8ebef}.method-card>span{display:flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:50%;background:var(--gold);font-weight:900;margin-bottom:55px}.method-card h3{font-size:24px;color:var(--navy)}.method-card p{line-height:1.7;color:var(--muted)}.manifesto-section{position:relative;min-height:520px;background:var(--navy);color:#fff;display:flex;align-items:center;padding:80px 8vw;overflow:hidden}.manifesto{position:relative;z-index:2}.manifesto p{font-size:16px;color:#b5c0cf}.manifesto h2{color:#fff;font-size:clamp(46px,5.4vw,78px);margin-bottom:30px}.gold-shape{position:absolute;width:520px;height:520px;border:100px solid rgba(201,151,53,.2);border-radius:50%;right:-160px;top:0;transform:rotate(-25deg)}.local-section{display:grid;grid-template-columns:1.05fr .95fr;gap:0;background:#f3f5f7}.local-image{min-height:620px}.local-image img{width:100%;height:100%;object-fit:cover}.local-copy{padding:90px 7vw;display:flex;flex-direction:column;justify-content:center}.local-copy h2{font-size:clamp(40px,4.3vw,63px)}.local-copy>p:not(.eyebrow){font-size:16px;line-height:1.75;color:var(--muted)}.address-box{margin-top:24px;padding:24px;border-left:3px solid var(--gold);background:#fff}.address-box small{display:block;color:#7b8492;margin-bottom:7px}.address-box strong{display:block;color:var(--navy);font-size:19px;line-height:1.5}.address-box a{display:inline-block;margin-top:10px;color:var(--gold);font-weight:900}.final-cta{padding:120px 7vw;text-align:center;background:#fff}.final-cta>div{max-width:800px;margin:auto}.final-cta h2{font-size:clamp(44px,5vw,72px);color:var(--navy);letter-spacing:-.04em;margin:8px 0 18px}.final-cta p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.7;margin-bottom:28px}.site-footer{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding:60px 6vw;background:#041127;color:#fff}.site-footer>div{display:flex;flex-direction:column;gap:9px}.site-footer b{margin-bottom:7px}.site-footer a,.site-footer span,.site-footer p{font-size:13px;color:#aeb8c6;line-height:1.55;margin:0}.footer-brand img{width:220px;height:62px;object-fit:contain;object-position:left;background:#fff;border-radius:8px;padding:8px}.footer-brand p{max-width:310px;margin-top:10px}.site-footer.compact{grid-template-columns:2fr 1fr 1fr;align-items:center;padding-top:30px;padding-bottom:30px}.inner-page{background:#f7f8fa}.contact-hero{min-height:720px;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;padding:100px 7vw;align-items:center}.contact-hero h1{font-size:clamp(44px,5vw,72px)}.contact-hero>div:first-child>p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.7;max-width:550px}.contact-panel{background:#fff;border-radius:30px;padding:34px;box-shadow:var(--shadow)}.contact-panel form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-panel label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:800;color:#374357}.contact-panel label:nth-child(5){grid-column:1/-1}.contact-panel input,.contact-panel textarea{border:1px solid #dfe3e8;border-radius:12px;padding:13px 14px;font:inherit;background:#fbfcfd}.contact-panel button{grid-column:1/-1;border:0}.contact-panel small{grid-column:1/-1;color:#8a93a0}.contact-details{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dfe3e8}.contact-details>div{background:#fff;padding:40px 7vw}.contact-details small{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.1em;font-weight:850;margin-bottom:10px}.contact-details a,.contact-details strong{font-size:18px;color:var(--navy);line-height:1.45}.legal{max-width:960px;margin:0 auto;padding:90px 24px 120px}.legal h1{font-size:60px;color:var(--navy);margin:0 0 35px}.legal-card{background:#fff;border-radius:28px;padding:40px;box-shadow:var(--shadow)}.legal-card h2{color:var(--navy);margin-top:32px}.legal-card p{line-height:1.75;color:#5d6878}.reveal,.reveal-left,.reveal-right,.reveal-scale{opacity:0;transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.reveal{transform:translateY(26px)}.reveal-left{transform:translateX(-40px)}.reveal-right{transform:translateX(40px)}.reveal-scale{transform:scale(.96) translateY(18px)}.is-visible{opacity:1;transform:none}@media(max-width:1100px){.main-nav{display:none}.header-cta{margin-left:auto}.menu-toggle{display:block}.site-header.menu-open .main-nav{display:flex;position:absolute;left:3vw;right:3vw;top:84px;background:#fff;border-radius:20px;padding:20px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start}.hero{grid-template-columns:1fr;padding-top:55px}.hero-showcase{height:540px;margin-top:20px}.browser-main{width:72%}.feature-grid,.portfolio-rail,.method-grid{grid-template-columns:1fr 1fr}.portfolio-rail .project-card:last-child{grid-column:1/-1}.offer-section,.local-section,.contact-hero{grid-template-columns:1fr}.local-image{min-height:460px}.site-footer{grid-template-columns:1fr 1fr}.contact-details{grid-template-columns:1fr}}@media(max-width:720px){.site-header{height:78px;padding:0 20px}.brand{width:175px}.brand img{height:52px}.header-cta{display:none}.hero{min-height:auto;padding:70px 20px 95px}.hero h1{font-size:48px}.hero-lead{font-size:16px}.hero-proof{flex-direction:column;gap:8px}.hero-showcase{height:390px}.browser-main{width:88%;height:330px;top:40px;right:0}.browser-left{width:58%;height:220px}.browser-right{width:55%;height:210px}.mock-hero{margin-top:38px}.mock-hero h3{font-size:24px}.trust-line{grid-template-columns:1fr;text-align:center}.trust-arrow{transform:rotate(90deg)}.trust-line div:not(.trust-arrow){flex-direction:column;gap:4px}.section,.portfolio-section,.method-section,.final-cta{padding:75px 20px}.feature-grid,.portfolio-rail,.method-grid{grid-template-columns:1fr}.portfolio-rail .project-card:last-child{grid-column:auto}.project-screen{height:330px}.offer-section{padding:75px 20px;gap:35px}.offer-card li{flex-direction:column;gap:5px}.offer-card li span{text-align:left}.manifesto-section{padding:70px 20px;min-height:430px}.local-copy{padding:65px 20px}.local-image{min-height:330px}.site-footer,.site-footer.compact{grid-template-columns:1fr;padding:45px 20px}.contact-hero{padding:70px 20px;gap:35px}.contact-panel{padding:22px}.contact-panel form{grid-template-columns:1fr}.contact-panel label:nth-child(5),.contact-panel button,.contact-panel small{grid-column:auto}.legal h1{font-size:46px}.legal-card{padding:26px}}

/* === QUARTZ'EO V2 : plus de caractère, plus de couleur === */
.site-header .brand{width:310px;min-width:310px}.site-header .brand img{width:100%;height:82px;object-fit:contain;object-position:left center}.site-header{height:96px}
.hero-v2{position:relative;min-height:850px;background:linear-gradient(135deg,#fffaf3 0%,#eef7ff 42%,#fff 100%);overflow:hidden}.hero-v2:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#071a38 1px,transparent 1px);background-size:28px 28px;opacity:.045;pointer-events:none}.hero-v2 .hero-copy{z-index:8}.hero-v2 h1{font-size:clamp(58px,6.5vw,94px);line-height:.94;max-width:820px}.hero-v2 h1 span{background:linear-gradient(90deg,#1e59ff,#8b43ff 44%,#ff5a75 70%,#d29a2f);-webkit-background-clip:text;background-clip:text;color:transparent}.pill-eye{display:inline-flex;background:#071a38;color:white!important;border-radius:99px;padding:9px 15px;letter-spacing:.07em}.hero-v2 .hero-lead{max-width:690px;font-size:19px}.hero-v2 .hero-proof span{background:white;border:1px solid #e5e9f0;border-radius:999px;padding:9px 13px;box-shadow:0 8px 24px rgba(7,26,56,.06)}
.aurora{position:absolute;border-radius:50%;filter:blur(4px);opacity:.9;animation:floatOrb 8s ease-in-out infinite alternate}.aurora-a{width:560px;height:560px;background:radial-gradient(circle,#ffdf7b 0%,rgba(255,221,123,.12) 62%,transparent 72%);right:-100px;top:-170px}.aurora-b{width:420px;height:420px;background:radial-gradient(circle,#9ed9ff 0%,rgba(158,217,255,.1) 65%,transparent 73%);left:38%;bottom:-170px}.aurora-c{width:300px;height:300px;background:radial-gradient(circle,#ffafc2 0%,rgba(255,175,194,.1) 65%,transparent 74%);left:-120px;top:210px}.spark{position:absolute;font-size:34px;color:#d3a03d;z-index:2;animation:spinSpark 10s linear infinite}.s1{left:47%;top:14%}.s2{right:4%;bottom:20%;font-size:20px;color:#8b43ff}.s3{left:4%;bottom:16%;font-size:18px;color:#ff5a75}@keyframes floatOrb{to{transform:translate(28px,-24px) scale(1.06)}}@keyframes spinSpark{to{transform:rotate(360deg)}}
.hero-showcase-v2{height:650px;position:relative}.vivid-main{width:76%;height:520px;right:4%;top:64px;transform:rotate(-2.5deg);box-shadow:0 40px 90px rgba(17,37,70,.2)}.vivid-screen{height:100%;position:relative;overflow:hidden;background:#ffc942;color:#111;padding:34px}.vivid-nav{display:flex;justify-content:space-between;align-items:center;font-size:11px;position:relative;z-index:3}.vivid-nav strong{font-size:19px}.vivid-kicker{font-size:10px;font-weight:900;letter-spacing:.16em;margin-top:78px;position:relative;z-index:3}.vivid-screen h3{font-size:52px;line-height:.86;margin:14px 0 24px;letter-spacing:-.055em;position:relative;z-index:3}.vivid-screen h3 em{font-family:Georgia,serif;font-weight:400;color:#fb3d73}.vivid-button{display:inline-block;background:#111;color:#fff;padding:12px 16px;border-radius:999px;font-weight:800;font-size:11px;position:relative;z-index:3}.vivid-shape{position:absolute;border-radius:50%}.shape-a{width:270px;height:270px;background:#1640ff;right:-48px;bottom:-38px}.shape-b{width:175px;height:175px;background:#ff4d77;right:115px;bottom:70px;border:20px solid #fff}.mini-site{position:absolute;width:265px;height:315px;z-index:6;box-shadow:0 28px 60px rgba(17,37,70,.18)}.mini-pink{left:-22px;bottom:22px;transform:rotate(-8deg)}.mini-green{right:-28px;top:10px;transform:rotate(7deg)}.mini-inner{height:100%;padding:28px 22px;position:relative;overflow:hidden}.mini-inner small{font-weight:900;letter-spacing:.1em;font-size:8px}.mini-inner b{display:block;font-size:35px;line-height:.93;margin-top:52px;letter-spacing:-.05em;position:relative;z-index:2}.mini-inner span{display:inline-block;margin-top:20px;font-size:9px;font-weight:900;position:relative;z-index:2}.mini-pink .mini-inner{background:#f8cddd;color:#752948}.mini-green .mini-inner{background:#8edc93;color:#0c4f2f}.bubble{width:170px;height:170px;border-radius:50%;background:#ff6d98;position:absolute;right:-60px;bottom:-45px;border:18px solid #fff5}.leaf{position:absolute;width:170px;height:240px;border-radius:100% 0 100% 0;background:#0d6b42;right:-70px;bottom:-75px;transform:rotate(-18deg)}.floating-tag{position:absolute;z-index:9;padding:8px 12px;border-radius:999px;font-size:9px;font-weight:950;letter-spacing:.12em;color:#fff;box-shadow:0 10px 25px #0012}.tag-one{background:#1640ff;left:14%;top:5%}.tag-two{background:#ff4d77;right:8%;bottom:6%}.tag-three{background:#0d6b42;left:0;top:39%}
.portfolio-v2{position:relative;background:#07172f;padding-top:120px;padding-bottom:135px}.portfolio-v2 .section-heading{position:relative;z-index:2;max-width:1050px}.portfolio-v2 .section-heading h2{font-size:clamp(48px,5vw,78px)}.portfolio-v2 .section-heading h2 span{color:#ffca48}.portfolio-intro{max-width:760px;color:#aeb9c9;line-height:1.7;font-size:17px}.portfolio-burst{position:absolute;border-radius:50%;filter:blur(2px);opacity:.18}.burst-1{width:520px;height:520px;background:#174dff;right:-180px;top:80px}.burst-2{width:360px;height:360px;background:#ff4773;left:-150px;top:44%}.showcase-stack{display:flex;flex-direction:column;gap:90px;position:relative;z-index:2}.showcase-row{display:grid;grid-template-columns:.78fr 1.22fr;gap:60px;align-items:center}.showcase-row:nth-child(even){grid-template-columns:1.22fr .78fr}.showcase-copy{color:#fff}.showcase-copy .number{font-size:11px;color:#ffca48;font-weight:950;letter-spacing:.18em}.showcase-copy small{display:block;margin:16px 0 18px;color:#aeb9c9;font-weight:900;letter-spacing:.13em}.showcase-copy h3{font-size:clamp(38px,4vw,60px);line-height:1;letter-spacing:-.04em;margin:0 0 22px}.showcase-copy p{color:#b8c2d1;line-height:1.72;max-width:520px}.palette{display:flex;gap:8px;margin-top:24px}.palette i{width:25px;height:25px;border-radius:50%;border:2px solid #fff3}.site-canvas{height:530px;border-radius:30px;overflow:hidden;position:relative;box-shadow:0 34px 80px #0006;transition:transform .45s ease}.showcase-row:hover .site-canvas{transform:translateY(-8px) rotate(.5deg)}.artisan-canvas img,.service-canvas img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.canvas-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#0a1829e8 0%,#0a1829a0 45%,transparent 82%)}.canvas-nav,.beauty-nav,.service-nav,.food-nav{position:absolute;left:34px;right:34px;top:30px;z-index:3;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.05em}.canvas-nav{color:#fff}.canvas-nav b{font-size:24px}.canvas-copy{position:absolute;left:42px;bottom:48px;color:#fff;z-index:3}.canvas-copy small{font-weight:900;letter-spacing:.14em}.canvas-copy h4{font-size:52px;line-height:.95;margin:12px 0 24px}.canvas-copy button,.beauty-copy button,.service-copy button,.food-copy button{border:0;border-radius:999px;padding:13px 18px;font-weight:900;font-size:10px}.row-artisan .palette i:nth-child(1){background:#0a1829}.row-artisan .palette i:nth-child(2){background:#276a87}.row-artisan .palette i:nth-child(3){background:#f4b62b}.row-artisan .palette i:nth-child(4){background:#f4f0e7}.beauty-canvas{background:linear-gradient(145deg,#ffd8e7,#ffefb7);color:#6b1741}.beauty-nav{color:#6b1741}.beauty-nav b{font-size:20px}.beauty-copy{position:absolute;left:45px;bottom:48px;z-index:2}.beauty-copy small{font-weight:900;letter-spacing:.14em}.beauty-copy h4{font-size:68px;line-height:.83;margin:12px 0 20px}.beauty-copy h4 em{font-family:Georgia,serif;font-weight:400;color:#e22868}.beauty-copy p{max-width:330px;line-height:1.5}.beauty-copy button{background:#6b1741;color:white}.beauty-orb{position:absolute;width:370px;height:370px;border-radius:50%;background:#ff6f9d;right:-80px;top:60px;border:45px solid #fff6}.beauty-sticker{position:absolute;right:55px;bottom:45px;width:90px;height:90px;border-radius:50%;background:#7e4cff;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-size:11px;font-weight:950;transform:rotate(12deg)}.row-beauty .palette i:nth-child(1){background:#ffd8e7}.row-beauty .palette i:nth-child(2){background:#ff6f9d}.row-beauty .palette i:nth-child(3){background:#7e4cff}.row-beauty .palette i:nth-child(4){background:#ffefb7}.service-filter{position:absolute;inset:0;background:linear-gradient(90deg,#073150e6,#11699499 55%,#1aa5c844)}.service-nav,.service-copy{color:#fff;z-index:3}.service-nav b{font-size:28px}.service-copy{position:absolute;left:45px;bottom:48px}.service-copy small{font-weight:900;letter-spacing:.14em}.service-copy h4{font-size:60px;line-height:.88;margin:14px 0 24px}.service-copy h4 em{color:#78e7ff;font-style:normal}.service-copy button{background:#fff;color:#073150}.row-service .palette i:nth-child(1){background:#073150}.row-service .palette i:nth-child(2){background:#0d83af}.row-service .palette i:nth-child(3){background:#78e7ff}.row-service .palette i:nth-child(4){background:#fff}.food-canvas{background:#ff5a28;color:#25130b}.food-nav{color:#25130b}.food-nav b{font-size:22px}.food-copy{position:absolute;left:45px;bottom:45px;z-index:3}.food-kicker{display:inline-block;background:#ffe23b;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:950}.food-copy h4{font-size:62px;line-height:.88;margin:16px 0 24px;letter-spacing:-.045em}.food-copy button{background:#25130b;color:#fff}.tomato{position:absolute;width:170px;height:170px;border-radius:50%;background:#e52d1d;border:15px solid #ff7a3f}.t1{right:70px;top:120px}.t2{right:-50px;top:260px;width:230px;height:230px}.scribble{position:absolute;right:42px;bottom:45px;font-family:Georgia,serif;font-style:italic;font-size:42px;transform:rotate(-10deg);z-index:2;color:#ffe23b}.row-food .palette i:nth-child(1){background:#ff5a28}.row-food .palette i:nth-child(2){background:#ffe23b}.row-food .palette i:nth-child(3){background:#e52d1d}.row-food .palette i:nth-child(4){background:#25130b}
.intro-section{background:linear-gradient(180deg,#fff,#fff8ed)}.intro-section .section-heading h2 span{background:linear-gradient(90deg,#1640ff,#8b43ff,#ff4d77);-webkit-background-clip:text;background-clip:text;color:transparent}.feature-card:nth-child(1){border-top:5px solid #1640ff}.feature-card:nth-child(2){border-top:5px solid #ff4d77}.feature-card:nth-child(3){border-top:5px solid #d49b26}.feature-card .icon{font-size:34px;letter-spacing:-.05em;margin-bottom:45px}.manifesto-section{background:linear-gradient(135deg,#1012a7 0%,#7540dd 48%,#e9457b 100%)}.gold-shape{border-color:rgba(255,220,94,.28)}.final-cta{background:linear-gradient(135deg,#fff7df,#ffe9f1 55%,#edf7ff)}
@media(max-width:1100px){.site-header .brand{width:245px;min-width:245px}.hero-showcase-v2{height:560px}.vivid-main{width:74%;height:455px}.mini-site{width:220px;height:270px}.showcase-row,.showcase-row:nth-child(even){grid-template-columns:1fr;gap:32px}.showcase-row:nth-child(even) .showcase-copy{order:-1}.site-canvas{height:500px}}
@media(max-width:720px){.site-header .brand{width:205px;min-width:205px}.site-header .brand img{height:58px}.hero-v2{padding-top:55px}.hero-v2 h1{font-size:52px}.hero-showcase-v2{height:440px}.vivid-main{width:88%;height:360px;right:3%;top:54px}.vivid-screen h3{font-size:36px}.vivid-kicker{margin-top:40px}.mini-site{width:155px;height:205px}.mini-pink{left:-6px;bottom:4px}.mini-green{right:-8px}.mini-inner{padding:18px 14px}.mini-inner b{font-size:24px;margin-top:30px}.showcase-stack{gap:62px}.site-canvas{height:400px;border-radius:22px}.canvas-nav,.beauty-nav,.service-nav,.food-nav{left:20px;right:20px;top:22px}.canvas-copy,.beauty-copy,.service-copy,.food-copy{left:24px;bottom:30px}.canvas-copy h4,.service-copy h4,.food-copy h4{font-size:40px}.beauty-copy h4{font-size:48px}.beauty-orb{width:260px;height:260px;right:-95px}.beauty-sticker{right:20px;bottom:22px;width:72px;height:72px}.showcase-copy h3{font-size:40px}}

/* ===== V3 : header plus clair + hero plus lisible ===== */
.site-header{
  height:118px;
  padding:0 4.2vw;
  gap:26px;
  background:rgba(255,255,255,.96);
  border-bottom:0;
  box-shadow:0 8px 28px rgba(6,21,47,.06);
}
.site-header::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:3px;
  background:linear-gradient(90deg,#174dff 0 20%,#7e4cff 20% 40%,#ff4d77 40% 60%,#ffb326 60% 80%,#18a36d 80% 100%);
}
.site-header .brand{width:360px;min-width:360px}
.site-header .brand img{height:92px;width:100%;object-fit:contain;object-position:left center}
.main-nav{gap:28px;font-size:14px}
.main-nav a:after{background:linear-gradient(90deg,#174dff,#ff4d77)}
.header-cta{background:#ff5a28;color:#fff;padding:15px 22px;box-shadow:0 10px 25px rgba(255,90,40,.22)}

.hero-v3{
  min-height:calc(100vh - 118px);
  grid-template-columns:.92fr 1.08fr;
  gap:30px;
  padding:72px 5vw 86px;
  background:#0a1730;
  color:#fff;
  isolation:isolate;
}
.hero-v3::before{
  content:"";position:absolute;inset:0;z-index:-3;
  background:radial-gradient(circle at 10% 15%,rgba(126,76,255,.22),transparent 29%),radial-gradient(circle at 88% 75%,rgba(255,77,119,.18),transparent 28%),linear-gradient(135deg,#071327 0%,#0a1830 58%,#12284b 100%);
}
.hero-v3::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:8px;z-index:5;
  background:linear-gradient(90deg,#174dff,#7e4cff,#ff4d77,#ffb326,#18a36d);
}
.hero-v3-accent{position:absolute;border-radius:50%;z-index:-1;filter:blur(2px)}
.accent-one{width:240px;height:240px;right:4%;top:8%;border:34px solid rgba(255,199,61,.16)}
.accent-two{width:130px;height:130px;left:43%;bottom:10%;background:rgba(23,77,255,.13)}
.hero-copy-v3{max-width:700px}
.hero-kicker{color:#ffd05c}
.hero-v3 h1{color:#fff;font-size:clamp(55px,5.5vw,88px);line-height:.94}
.hero-v3 h1 span{background:linear-gradient(90deg,#5ac8ff,#8f6bff 36%,#ff5d8f 70%,#ffd052);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-v3 .hero-lead{color:#d1d8e4;max-width:650px;font-size:19px}
.btn-punch{background:#27c6d9;color:#062033;box-shadow:0 14px 34px rgba(39,198,217,.24)}
.btn-dark-ghost{border-color:#ffffff40;background:#ffffff0c;color:#fff}
.btn-dark-ghost:hover{background:#ffffff18}
.hero-proof-v3{color:#d6deea;gap:13px 20px;font-size:12px}

.hero-v3-visual{height:640px;position:relative;max-width:850px;margin-left:auto;width:100%}
.display-screen{position:absolute;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 36px 90px rgba(0,0,0,.38);border:1px solid #ffffff26}
.display-main{width:78%;height:520px;right:2%;top:56px;transform:rotate(-1.3deg)}
.display-body{height:calc(100% - 38px);position:relative;overflow:hidden;padding:34px;color:#171717}
.display-yellow{background:#ffd04b}
.display-nav{display:flex;justify-content:space-between;font-size:10px;position:relative;z-index:3}.display-nav strong{font-size:18px}
.display-body>small{display:block;margin-top:78px;font-weight:900;letter-spacing:.16em;font-size:9px;position:relative;z-index:3}
.display-body h3{font-size:62px;line-height:.83;margin:14px 0 24px;letter-spacing:-.06em;position:relative;z-index:3}.display-body h3 em{font-family:Georgia,serif;color:#ff3f79;font-weight:400}
.display-cta{display:inline-block;background:#111;color:#fff;padding:12px 16px;border-radius:999px;font-weight:900;font-size:10px;position:relative;z-index:3}
.shape-blue,.shape-pink{position:absolute;border-radius:50%}.shape-blue{width:300px;height:300px;background:#194cff;right:-80px;bottom:-80px}.shape-pink{width:170px;height:170px;background:#ff4d78;right:100px;bottom:55px;border:22px solid #fff6}
.phone-mock{position:absolute;width:190px;height:380px;border-radius:34px;background:#111;padding:10px;box-shadow:0 30px 60px rgba(0,0,0,.35);z-index:6}.phone-notch{position:absolute;top:17px;left:50%;transform:translateX(-50%);width:70px;height:16px;border-radius:999px;background:#111;z-index:4}.phone-screen{height:100%;border-radius:25px;padding:42px 17px 20px;overflow:hidden;position:relative}.phone-screen small{font-size:8px;font-weight:950;letter-spacing:.12em}.phone-screen b{display:block;font-size:32px;line-height:.9;margin-top:85px;letter-spacing:-.055em;position:relative;z-index:2}.phone-screen span{display:inline-block;margin-top:18px;font-size:9px;font-weight:900;position:relative;z-index:2}.phone-pink{background:linear-gradient(155deg,#ffd6e4,#ffc2d6);color:#7e214a}.phone-pink::after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:#ff6694;right:-80px;bottom:-30px;border:20px solid #fff5}.phone-green{background:linear-gradient(155deg,#9ae29e,#d9f5c8);color:#0d5f39}.phone-green::after{content:"";position:absolute;width:200px;height:260px;border-radius:100% 0 100% 0;background:#087047;right:-110px;bottom:-100px;transform:rotate(-15deg)}
.phone-left{left:0;bottom:18px;transform:rotate(-8deg)}.phone-right{right:-10px;top:0;transform:rotate(7deg)}
.hero-stamp{position:absolute;left:9%;top:16px;width:116px;height:116px;border-radius:50%;background:#ff5a28;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;font-size:26px;font-weight:950;line-height:.9;z-index:8;transform:rotate(-9deg);box-shadow:0 20px 35px rgba(255,90,40,.25)}.hero-stamp span{font-size:9px;line-height:1.1;margin-top:7px;letter-spacing:.04em;text-transform:uppercase}
.scroll-cue-v3{color:#d6deea}

@media(max-width:1180px){
  .site-header .brand{width:310px;min-width:310px}.site-header .brand img{height:82px}.main-nav{gap:18px}.header-cta{padding:13px 17px}
  .hero-v3{grid-template-columns:1fr}.hero-v3-visual{max-width:900px;margin:10px auto 0}.hero-copy-v3{max-width:850px}.scroll-cue-v3{display:none}
}
@media(max-width:820px){
  .site-header{height:96px}.site-header .brand{width:255px;min-width:255px}.site-header .brand img{height:70px}.main-nav,.header-cta{display:none}.menu-toggle{display:block}
  .hero-v3{min-height:auto;padding-top:55px}.hero-v3 h1{font-size:54px}.hero-v3-visual{height:500px}.display-main{height:410px;width:82%}.display-body h3{font-size:45px}.phone-mock{width:145px;height:290px}.phone-screen b{font-size:24px;margin-top:58px}.hero-stamp{width:92px;height:92px;font-size:21px}
}
@media(max-width:560px){
  .site-header .brand{width:220px;min-width:220px}.site-header .brand img{height:62px}
  .hero-v3{padding-left:6vw;padding-right:6vw}.hero-v3 h1{font-size:45px}.hero-v3 .hero-lead{font-size:16px}.hero-v3-visual{height:410px}.display-main{width:88%;height:335px;right:0;top:42px}.display-body{padding:22px}.display-body>small{margin-top:45px}.display-body h3{font-size:36px}.phone-mock{width:112px;height:226px;padding:7px;border-radius:25px}.phone-screen{padding:31px 10px 14px}.phone-screen b{font-size:19px;margin-top:42px}.phone-left{left:-4px}.phone-right{right:-5px}.hero-stamp{width:76px;height:76px;font-size:17px;left:2%}.hero-stamp span{font-size:7px}
}

/* QUARTZ'EO V4 — logo plus présent + références réalistes */
@media (min-width:1101px){
  .site-header{height:112px;padding-left:3.5vw;padding-right:3.5vw;gap:28px}
  .site-header .brand{width:445px;min-width:445px}
  .site-header .brand img{height:104px;width:100%;object-fit:contain;object-position:left center}
  .main-nav{gap:22px}
}
.portfolio-real{background:#24415f;padding:110px 4vw 130px;position:relative;overflow:hidden}
.portfolio-real:before{content:"";position:absolute;width:540px;height:540px;border-radius:50%;background:#ff557d18;right:-180px;top:-170px}
.portfolio-real:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:#5cc9ff16;left:-160px;bottom:-160px}
.portfolio-real .section-heading{position:relative;z-index:2;max-width:930px}
.portfolio-real .section-heading h2 span{color:#ffd052}
.reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;position:relative;z-index:2}
.reference-card{background:#1d2630;border-radius:28px;overflow:hidden;min-height:690px;display:flex;flex-direction:column;box-shadow:0 28px 70px rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.06);transition:transform .35s ease,box-shadow .35s ease}
.reference-card:hover{transform:translateY(-8px);box-shadow:0 38px 85px rgba(0,0,0,.28)}
.reference-copy{padding:34px 34px 12px;color:#fff}
.reference-type{display:inline-block;font-size:10px;letter-spacing:.16em;font-weight:900;color:#72cdf8;margin-bottom:12px}
.reference-copy h3{font-size:28px;margin:0 0 14px;letter-spacing:-.025em}
.reference-copy p{color:#cbd3dc;line-height:1.65;margin:0 0 14px;font-size:15px}
.reference-link{display:inline-block;color:#fff;font-size:13px;font-weight:850;border-bottom:1px solid #72cdf8;padding-bottom:3px}
.reference-visual{position:relative;height:405px;margin-top:auto;overflow:hidden;padding:28px 18px 0;background:linear-gradient(145deg,#253544,#18212a)}
.desktop-frame{position:absolute;width:94%;height:330px;left:8%;bottom:-18px;border-radius:18px 18px 0 0;background:#d8dde2;padding:8px 8px 0;box-shadow:0 18px 45px #0007;transform:rotate(-2deg)}
.desktop-bar{height:24px;border-radius:11px 11px 0 0;background:#eef1f4;display:flex;align-items:center;gap:5px;padding:0 8px;font-size:8px;color:#77818b}
.desktop-bar i{width:6px;height:6px;border-radius:50%;background:#bbc3ca}.desktop-bar span{margin-left:6px}
.desktop-site{height:calc(100% - 24px);position:relative;overflow:hidden;padding:22px;color:#fff}
.mini-nav{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2}.mini-nav b{font-size:14px}.mini-nav small{font-size:6px;letter-spacing:.06em}
.mini-hero{position:absolute;left:22px;bottom:28px;z-index:2;display:flex;flex-direction:column;align-items:flex-start}.mini-hero small{font-size:7px;letter-spacing:.12em;font-weight:900}.mini-hero strong{font-size:28px;line-height:.95;margin:8px 0 14px}.mini-hero em{font-size:7px;font-style:normal;font-weight:900;padding:7px 10px;border-radius:99px;background:#f7b52c;color:#102036}
.ref-site-roof{background:linear-gradient(90deg,#0d253ce8,#173b5999),url('assets/demo-toiture.webp') center/cover}.ref-site-asd{background:linear-gradient(90deg,#0a345bea,#0e82ab88),url('assets/demo-aulnay.webp') center/cover}.ref-site-chelet{background:radial-gradient(circle at 80% 25%,#c9e7b3 0 16%,transparent 17%),linear-gradient(135deg,#183f31,#6c9874);color:#fff}.ref-site-chelet:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-55px;bottom:-75px;background:#94bc77aa}.ref-site-chelet .mini-hero em{background:#f4efe3;color:#1d4435}
.mobile-frame{position:absolute;z-index:5;width:118px;height:245px;left:18px;bottom:-12px;background:#111;border:6px solid #bfc7ce;border-radius:28px;padding:6px;box-shadow:0 18px 40px #0008;transform:rotate(8deg)}
.mobile-notch{position:absolute;width:40px;height:10px;border-radius:0 0 8px 8px;background:#111;top:2px;left:50%;transform:translateX(-50%);z-index:3}
.mobile-site{height:100%;border-radius:19px;overflow:hidden;padding:25px 11px 12px;display:flex;flex-direction:column;color:#fff;position:relative}.mobile-site b{font-size:10px}.mobile-site strong{font-size:18px;line-height:1.02;margin-top:52px}.mobile-site span{margin-top:auto;align-self:flex-start;padding:6px 8px;border-radius:99px;font-size:7px;font-weight:900;background:#fff;color:#172536}
.roof-mobile{background:linear-gradient(#0e2940cc,#0e2940e8),url('assets/demo-toiture.webp') center/cover}.asd-mobile{background:linear-gradient(145deg,#0a496d,#19a7c4)}.chelet-mobile{background:linear-gradient(145deg,#234c38,#87aa71)}
.ref-lenestour{background:linear-gradient(145deg,#102b43,#3b627b)}.ref-asd{background:linear-gradient(145deg,#0c6f96,#5ac9df)}.ref-chelet{background:linear-gradient(145deg,#294a36,#8ea87b)}
@media(max-width:1100px){.reference-grid{grid-template-columns:1fr 1fr}.reference-card:last-child{grid-column:1/-1;max-width:620px;margin:auto;width:100%}}
@media(max-width:720px){.reference-grid{grid-template-columns:1fr}.reference-card:last-child{grid-column:auto;max-width:none}.reference-card{min-height:620px}.reference-visual{height:350px}.desktop-frame{height:285px}.mobile-frame{width:100px;height:205px}.reference-copy{padding:28px 24px 10px}.portfolio-real{padding:80px 20px 95px}}

/* QUARTZ'EO V5 — références plus vivantes, plus colorées et plus compactes */
.portfolio-real{
  background:
    radial-gradient(circle at 8% 12%,rgba(255,208,75,.22),transparent 23%),
    radial-gradient(circle at 92% 18%,rgba(255,77,120,.24),transparent 24%),
    radial-gradient(circle at 72% 94%,rgba(50,197,255,.22),transparent 28%),
    linear-gradient(135deg,#102b55 0%,#203e70 48%,#17345c 100%);
}
.portfolio-real:before{background:linear-gradient(135deg,#ff4f8b55,#ff9b3d22);filter:blur(2px)}
.portfolio-real:after{background:linear-gradient(135deg,#43d7ff44,#6d5cff33);filter:blur(2px)}
.portfolio-intro{max-width:760px;color:#dbe8f7;line-height:1.7;font-size:16px}
.reference-grid{gap:22px;align-items:stretch}
.reference-card{min-height:0;background:#fff;color:#10203a;border:0;box-shadow:0 28px 65px rgba(4,17,41,.28);position:relative;isolation:isolate;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease}
.reference-card:before{content:"";position:absolute;inset:0 0 auto;height:6px;z-index:5;background:linear-gradient(90deg,#ffd04b,#ff4f79,#4d8cff,#42d8b4)}
.reference-card:hover{transform:translateY(-12px) rotate(.25deg);box-shadow:0 42px 90px rgba(4,17,41,.38)}
.reference-copy{padding:28px 30px 18px;color:#10203a;min-height:215px}
.reference-type{color:#174fff;background:#eaf1ff;padding:7px 10px;border-radius:999px;margin-bottom:11px;letter-spacing:.12em}
.reference-copy h3{font-size:27px;color:#071a38;margin-bottom:10px}
.reference-copy p{color:#56657a;line-height:1.55;margin-bottom:11px;font-size:14px}
.reference-link{color:#0c2b55;border-bottom-color:#ff4f79}
.reference-visual{height:335px;margin-top:0;padding:16px 10px 0;overflow:hidden}
.ref-lenestour{background:linear-gradient(135deg,#ffca45 0%,#ff8b3d 48%,#ff4e72 100%)}
.ref-asd{background:linear-gradient(135deg,#3bd8e8 0%,#338cff 52%,#6957e8 100%)}
.ref-chelet{background:linear-gradient(135deg,#9de36e 0%,#36c99a 52%,#087f69 100%)}
.desktop-frame{height:290px;width:91%;left:12%;bottom:-7px;transform:rotate(-2.5deg);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.mobile-frame{width:106px;height:220px;left:13px;bottom:-7px;transform:rotate(8deg);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.reference-card:hover .desktop-frame{transform:translateY(-8px) rotate(-1deg) scale(1.025)}
.reference-card:hover .mobile-frame{transform:translate(5px,-12px) rotate(4deg) scale(1.04)}
.desktop-site{padding:18px}.mini-hero{left:18px;bottom:22px}.mini-hero strong{font-size:24px}.mobile-site strong{font-size:16px;margin-top:42px}
.reference-card:nth-child(2){transform:translateY(20px)}
.reference-card:nth-child(2):hover{transform:translateY(8px) rotate(-.25deg)}
.reference-card:nth-child(1) .reference-type{color:#a34300;background:#fff0d6}
.reference-card:nth-child(2) .reference-type{color:#075ca8;background:#e0f5ff}
.reference-card:nth-child(3) .reference-type{color:#116342;background:#e2f8e8}
.reference-card .reference-visual:after{content:"";position:absolute;width:120px;height:120px;border:18px solid rgba(255,255,255,.18);border-radius:50%;right:-38px;top:-42px;animation:qeFloat 5s ease-in-out infinite}
.reference-card:nth-child(2) .reference-visual:after{animation-delay:-1.4s}.reference-card:nth-child(3) .reference-visual:after{animation-delay:-2.8s}
@keyframes qeFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(14px) rotate(12deg)}}
@media(max-width:1100px){.reference-card:nth-child(2){transform:none}.reference-card:nth-child(2):hover{transform:translateY(-8px)}.reference-copy{min-height:205px}}
@media(max-width:720px){.reference-copy{min-height:0}.reference-visual{height:315px}.desktop-frame{height:270px}.reference-card{min-height:0}}
@media(prefers-reduced-motion:reduce){.reference-card .reference-visual:after{animation:none}.reference-card,.desktop-frame,.mobile-frame{transition:none}}

/* QUARTZ'EO V6 — pavé Réalisations inspiré de la structure Linkeo, recoloré et animé */
.portfolio-real{
  background:
    radial-gradient(circle at 9% 10%,rgba(255,196,61,.20),transparent 22%),
    radial-gradient(circle at 87% 14%,rgba(255,78,137,.20),transparent 24%),
    radial-gradient(circle at 72% 92%,rgba(61,211,255,.20),transparent 28%),
    linear-gradient(135deg,#17375f 0%,#244b76 47%,#1b3d68 100%);
  padding:96px 2.3vw 118px;
}
.portfolio-real .section-heading{margin:0 auto 42px;max-width:1000px;text-align:center}
.portfolio-real .section-heading .eyebrow{color:#ffd55c}
.portfolio-real .section-heading h2{font-size:clamp(40px,4vw,62px)}
.portfolio-real .section-heading h2 span{color:#ffcf4d}
.portfolio-intro{margin:18px auto 0;max-width:760px;color:#dbe9f8}
.reference-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;max-width:1460px;margin:0 auto;align-items:stretch}
.reference-card,
.reference-card:nth-child(2){
  min-height:610px;
  transform:none;
  border-radius:22px;
  overflow:hidden;
  background:#1b222c;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 24px 62px rgba(5,20,45,.26);
  color:#fff;
  display:flex;
  flex-direction:column;
  position:relative;
  isolation:isolate;
  transition:transform .42s cubic-bezier(.2,.8,.2,1),box-shadow .42s ease,border-color .42s ease;
}
.reference-card:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:5px;
  z-index:8;
  background:linear-gradient(90deg,#ffd44f,#ff5989,#5f86ff,#44dec0);
}
.reference-card:nth-child(1){background:linear-gradient(180deg,#24232c 0%,#1c222b 100%)}
.reference-card:nth-child(2){background:linear-gradient(180deg,#1c2935 0%,#19242e 100%)}
.reference-card:nth-child(3){background:linear-gradient(180deg,#1d2928 0%,#192524 100%)}
.reference-card:hover,
.reference-card:nth-child(2):hover{
  transform:translateY(-10px);
  box-shadow:0 38px 84px rgba(4,18,42,.36);
  border-color:rgba(255,255,255,.16);
}
.reference-copy{
  padding:36px 34px 20px;
  min-height:242px;
  color:#fff;
  position:relative;
  z-index:4;
}
.reference-copy h3{font-size:26px;margin:0 0 18px;color:#fff;letter-spacing:-.02em}
.reference-copy p{font-size:15px;line-height:1.58;color:#d0d8e4;margin:0 0 17px;max-width:95%}
.reference-link{display:inline-block;font-size:14px;font-weight:850;color:#fff;border:0;padding:0;position:relative}
.reference-link:after{content:"";display:block;width:100%;height:2px;margin-top:5px;background:linear-gradient(90deg,#5ec8ff,#ff5c8d);transform-origin:left;transform:scaleX(.72);transition:transform .3s ease}
.reference-card:hover .reference-link:after{transform:scaleX(1)}
.reference-visual{
  height:368px;
  margin-top:auto;
  padding:0;
  overflow:hidden;
  position:relative;
  background:#202a35;
}
.ref-lenestour{background:linear-gradient(145deg,#ffb23d 0%,#ff6e5c 48%,#ef4c85 100%)}
.ref-asd{background:linear-gradient(145deg,#36d6e8 0%,#348df5 50%,#6c5bf0 100%)}
.ref-chelet{background:linear-gradient(145deg,#a7e66a 0%,#42cf9c 52%,#16846c 100%)}
.reference-visual:before{
  content:"";
  position:absolute;
  width:115%;height:210px;
  left:-8%;bottom:-54px;
  border-radius:50% 50% 0 0;
  background:rgba(9,20,35,.20);
  transform:rotate(-5deg);
  z-index:0;
}
.reference-card .reference-visual:after{
  content:"";
  position:absolute;
  width:155px;height:155px;
  border:24px solid rgba(255,255,255,.15);
  border-radius:50%;
  right:-44px;top:-58px;
  animation:qeOrbit 6.5s ease-in-out infinite;
  z-index:0;
}
.reference-card:nth-child(2) .reference-visual:after{animation-delay:-2.1s}
.reference-card:nth-child(3) .reference-visual:after{animation-delay:-4.2s}
.desktop-frame{
  width:108%;
  height:315px;
  left:7%;
  bottom:-24px;
  border-radius:17px 17px 0 0;
  transform:rotate(-4deg);
  z-index:2;
  box-shadow:0 22px 46px rgba(0,0,0,.38);
  transition:transform .48s cubic-bezier(.2,.8,.2,1);
}
.mobile-frame{
  width:128px;
  height:264px;
  left:20px;
  bottom:-19px;
  transform:rotate(10deg);
  z-index:5;
  box-shadow:0 24px 44px rgba(0,0,0,.45);
  animation:qePhoneFloat 4.8s ease-in-out infinite;
  transition:transform .48s cubic-bezier(.2,.8,.2,1);
}
.reference-card:nth-child(2) .mobile-frame{animation-delay:-1.5s}
.reference-card:nth-child(3) .mobile-frame{animation-delay:-3s}
.reference-card:hover .desktop-frame{transform:translateY(-9px) rotate(-2deg) scale(1.018)}
.reference-card:hover .mobile-frame{transform:translate(8px,-12px) rotate(6deg) scale(1.035)}
.desktop-site{padding:19px}.mini-hero{left:19px;bottom:23px}.mini-hero strong{font-size:25px}.mobile-site strong{font-size:17px;margin-top:44px}
@keyframes qePhoneFloat{0%,100%{margin-bottom:0}50%{margin-bottom:9px}}
@keyframes qeOrbit{0%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(-10px,12px) rotate(18deg)}}
@media(max-width:1100px){
  .reference-grid{grid-template-columns:1fr 1fr;max-width:980px}
  .reference-card:nth-child(3){grid-column:1/-1;max-width:520px;width:100%;margin:0 auto}
}
@media(max-width:720px){
  .portfolio-real{padding:76px 18px 90px}
  .portfolio-real .section-heading{text-align:left}
  .portfolio-intro{margin-left:0}
  .reference-grid{grid-template-columns:1fr;gap:22px}
  .reference-card:nth-child(3){grid-column:auto;max-width:none}
  .reference-card{min-height:560px}
  .reference-copy{min-height:0;padding:30px 25px 18px}
  .reference-visual{height:330px}
  .desktop-frame{height:282px;width:109%;left:8%}
  .mobile-frame{width:108px;height:225px;left:14px}
}
@media(prefers-reduced-motion:reduce){.mobile-frame,.reference-card .reference-visual:after{animation:none}}

/* V7 — références façon photographie + proximité humaine */
.reference-grid-photo{align-items:stretch}
.photo-card{background:#202831!important;color:#fff!important;border-radius:28px!important;overflow:hidden!important;transform:none!important}
.photo-card:hover{transform:translateY(-7px)!important}
.photo-card .reference-copy{min-height:215px;padding:34px 32px 24px;color:#fff}
.photo-card .reference-copy h3{color:#fff;font-size:22px}
.photo-card .reference-copy p{color:#d6dde7;line-height:1.55}
.photo-card .reference-link{display:block;margin-top:18px;color:#fff;font-weight:800;font-size:14px}
.photo-card .reference-link u{color:#75b9ff;text-underline-offset:3px}
.site-photo{position:relative;height:385px;margin-top:auto;overflow:hidden;background-size:cover;background-position:center;padding:48px 16px 0}
.site-photo-roof{background-image:linear-gradient(#0b152b55,#0b152b88),url('assets/demo-toiture.webp')}
.site-photo-asd{background-image:linear-gradient(#10294444,#10294499),url('assets/demo-aulnay.webp')}
.site-photo-chelet{background-image:linear-gradient(#193b2a44,#102b2099),url('assets/aulnay-hotel-ville.webp')}
.site-photo-page{height:300px;border-radius:13px 13px 0 0;background:#fff;color:#15233a;box-shadow:0 18px 45px #0008;overflow:hidden;transform:perspective(900px) rotateX(2deg)}
.photo-nav{height:48px;display:flex;justify-content:space-between;align-items:center;padding:0 18px;font-size:9px;background:#fff}.photo-nav b{font-size:13px}.photo-nav span{color:#5f6b7a}
.photo-content{height:252px;padding:46px 28px;background:linear-gradient(110deg,#ffffffed,#ffffff66),url('assets/demo-toiture.webp') center/cover;color:#10203a}.site-photo-asd .photo-content{background:linear-gradient(110deg,#eef8ffef,#ffffff72),url('assets/demo-aulnay.webp') center/cover}.site-photo-chelet .photo-content{background:linear-gradient(110deg,#f3f0e6ef,#ffffff55),url('assets/aulnay-hotel-ville.webp') center/cover}
.photo-content small{display:block;font-size:8px;letter-spacing:.13em;font-weight:900}.photo-content strong{display:block;font-size:28px;line-height:1.02;margin:9px 0 15px}.photo-content em{display:inline-block;font-style:normal;font-size:8px;font-weight:900;padding:9px 12px;border-radius:99px;background:#f0b942}
.phone-static{position:absolute;left:22px;bottom:-18px;width:105px;height:225px;border:7px solid #bfc7cf;border-radius:27px;background:#111;padding:6px;box-shadow:0 18px 40px #0009;z-index:4;transform:rotate(7deg)}
.phone-static>div{height:100%;border-radius:17px;background:linear-gradient(160deg,#fff,#e8edf3);color:#10203a;padding:34px 10px 10px;display:flex;flex-direction:column;gap:12px}.phone-static b{font-size:9px}.phone-static strong{font-size:13px;line-height:1.05}.phone-static span{font-size:8px;font-weight:800;color:#b1780d}
.photo-card .reference-visual:after,.photo-card:before{display:none!important}

.method-with-person{position:relative;background-color:#f9fbfe;background-image:radial-gradient(#b8c9df 1px,transparent 1px);background-size:18px 18px;overflow:hidden;padding:95px 5vw}
.method-with-person:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f9fbfef7 0%,#f9fbfee8 62%,#f9fbfe77 100%);pointer-events:none}
.method-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr);gap:25px;max-width:1450px;margin:auto;align-items:end}
.method-main .section-heading{margin:0 0 38px;text-align:left}.method-main .section-heading h2{font-size:clamp(42px,4vw,62px)}.method-lead{font-size:16px;line-height:1.65;color:#657083;max-width:720px}
.method-with-person .method-grid{grid-template-columns:repeat(3,1fr);gap:15px}.method-with-person .method-card{background:#ffffffdf;backdrop-filter:blur(8px);box-shadow:0 14px 35px rgba(6,21,47,.07)}.method-with-person .method-card>span{margin-bottom:32px}
.method-person{position:relative;height:510px;display:flex;align-items:flex-end;justify-content:center}.method-person img{max-height:500px;width:auto;filter:drop-shadow(0 22px 28px rgba(6,21,47,.16))}.person-bubble{position:absolute;z-index:3;top:45px;left:-10px;background:#fff;border-radius:22px;padding:17px 20px;box-shadow:0 18px 45px rgba(6,21,47,.14);font-size:14px;line-height:1.4;transform:rotate(-3deg)}.person-bubble:after{content:"";position:absolute;right:24px;bottom:-12px;border:12px solid transparent;border-top-color:#fff;border-right:0}.person-bubble strong{color:#c99735}
@media(max-width:1100px){.method-inner{grid-template-columns:1fr}.method-person{height:400px}.method-person img{max-height:390px}.person-bubble{left:18%;top:20px}}
@media(max-width:720px){.method-with-person{padding:70px 20px}.method-with-person .method-grid{grid-template-columns:1fr}.method-person{height:350px}.method-person img{max-height:340px}.site-photo{height:340px}.site-photo-page{height:270px}.photo-content{height:222px;padding:35px 22px}.photo-card .reference-copy{min-height:0}}


/* V8 — page Tarifs */
.pricing-page{background:#f7f9fd}.pricing-hero{min-height:720px;padding:150px 6vw 90px;display:grid;grid-template-columns:1.02fr .98fr;gap:7vw;align-items:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#f7faff 52%,#fff4f9 100%)}
.pricing-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}.orb-a{width:440px;height:440px;right:-160px;top:30px;background:radial-gradient(circle at 30% 30%,#ff3d9b,#8c4dff 58%,transparent 70%);opacity:.16}.orb-b{width:300px;height:300px;left:-120px;bottom:-100px;background:radial-gradient(circle,#ffc62f,transparent 68%);opacity:.28}
.pricing-hero-copy,.seo-warning{position:relative;z-index:2}.pricing-hero h1{font-size:clamp(52px,6vw,86px);line-height:.96;letter-spacing:-.055em;margin:14px 0 26px;color:#071b3c}.pricing-hero h1 span,.seo-warning em,.pricing-intro h2 span,.pricing-contact h2 span,.seo-band h2 span{color:#c9932f}.pricing-hero-copy>p:not(.eyebrow){max-width:690px;font-size:19px;line-height:1.65;color:#5b6678;margin-bottom:30px}
.seo-warning{background:#0a1e3d;color:#fff;border-radius:34px;padding:52px 48px;box-shadow:0 35px 80px rgba(7,27,60,.2);overflow:hidden}.seo-warning:before{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-75px;top:-70px;background:linear-gradient(135deg,#ff3c98,#784cff);opacity:.9}.seo-warning-kicker{position:relative;font-size:12px;letter-spacing:.16em;font-weight:900;color:#ffc84c}.seo-warning h2{position:relative;font-size:clamp(36px,3.6vw,57px);line-height:1.03;margin:18px 0 20px}.seo-warning h2 em{font-style:normal}.seo-warning p{position:relative;color:#d9e3f0;font-size:17px;line-height:1.55;max-width:570px}.search-demo{position:relative;margin-top:34px;background:#fff;color:#0b1d38;border-radius:99px;padding:17px 22px;display:flex;align-items:center;gap:14px;box-shadow:0 12px 30px #0003}.search-demo b{font-size:14px}.search-demo i{margin-left:auto;width:70px;height:9px;border-radius:9px;background:linear-gradient(90deg,#ffbe25,#ff3d97)}
.pricing-intro{padding:105px 5vw;background-image:radial-gradient(#c8d3e3 .8px,transparent .8px);background-size:20px 20px}.pricing-intro .section-heading{text-align:center;max-width:1050px;margin:0 auto 55px}.pricing-intro .section-heading h2{font-size:clamp(43px,4.5vw,66px)}.pricing-lead{font-size:17px;color:#697488;max-width:760px;margin:20px auto 0}.pricing-grid{max-width:1220px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.price-card{position:relative;border-radius:32px;padding:44px;background:#fff;box-shadow:0 22px 55px rgba(10,31,67,.09);border:1px solid #e4eaf2}.price-visibility{background:linear-gradient(145deg,#0b2142,#102f59);color:#fff;border:0;transform:translateY(-12px);box-shadow:0 30px 75px rgba(7,27,60,.25)}.popular-badge{position:absolute;right:28px;top:-15px;background:linear-gradient(90deg,#ffbe26,#ff8f2b,#ff3d98);color:#101d35;font-size:11px;font-weight:1000;letter-spacing:.11em;padding:10px 16px;border-radius:99px;box-shadow:0 8px 20px #ff9b3d55}.price-label{font-size:12px;letter-spacing:.16em;font-weight:900;color:#c58e27}.price-visibility .price-label{color:#ffd05a}.price-head h3{font-size:34px;line-height:1.08;margin:14px 0 22px}.price{display:flex;align-items:end;gap:12px;margin:8px 0 18px}.price strong{font-size:66px;line-height:.9;letter-spacing:-.05em}.price span{font-size:13px;font-weight:800;padding-bottom:7px;color:#6b7687}.price-visibility .price span{color:#c9d5e5}.price-head>p{line-height:1.55;color:#697488;min-height:75px}.price-visibility .price-head>p{color:#cbd8e8}.price-features{margin:30px 0}.price-features h4{font-size:14px;margin-bottom:15px}.price-features ul{list-style:none;padding:0;margin:0}.price-features li{position:relative;padding:15px 0 15px 30px;border-top:1px solid #e8edf3}.price-visibility .price-features li{border-color:#ffffff20}.price-features li:before{content:"✓";position:absolute;left:0;top:15px;width:20px;height:20px;border-radius:50%;background:#e8f7ef;color:#18814a;display:grid;place-items:center;font-size:11px;font-weight:900}.price-visibility .price-features li:before{background:#ffc43b;color:#14223b}.price-features li b,.price-features li span{display:block}.price-features li b{font-size:14px;margin-bottom:4px}.price-features li span{font-size:12px;line-height:1.45;color:#788394}.price-visibility .price-features li span{color:#afbed2}.price-features .not-included{opacity:.6}.price-features .not-included:before{content:"—";background:#eef1f5;color:#7a8491}.price-card>.btn{width:100%;text-align:center;justify-content:center}.price-visibility .btn-punch{box-shadow:0 10px 30px #ffb62d33}.pricing-note{max-width:1000px;margin:42px auto 0;text-align:center;font-size:12px;line-height:1.6;color:#758093}
.seo-band{padding:90px 6vw;background:linear-gradient(115deg,#ffbe25 0%,#ff9b2e 42%,#ff3d98 100%);display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;color:#0a1d3c}.seo-band .eyebrow{color:#0a1d3c}.seo-band h2{font-size:clamp(40px,4vw,62px);line-height:1;margin:12px 0 22px}.seo-band h2 span{color:#fff}.seo-band-copy>p:last-child{font-size:17px;line-height:1.65;max-width:680px}.seo-steps{display:flex;align-items:center;justify-content:center;gap:16px}.seo-steps div{width:150px;height:150px;border-radius:28px;background:#fff;box-shadow:0 18px 40px #9d235633;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:15px}.seo-steps b{font-size:32px;color:#d09827}.seo-steps span{font-weight:900;font-size:14px;margin-top:8px}.seo-steps i{font-style:normal;font-size:28px;font-weight:900;color:#fff}
.pricing-contact{padding:105px 6vw;background:#0a1e3d;display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:center;position:relative;overflow:hidden}.pricing-contact:after{content:"";position:absolute;right:-160px;bottom:-180px;width:460px;height:460px;border-radius:50%;background:linear-gradient(135deg,#824cff,#ff3d98);opacity:.17}.pricing-contact-copy{position:relative;z-index:2;color:#fff}.pricing-contact .eyebrow{color:#ffc64a}.pricing-contact h2{font-size:clamp(43px,4.6vw,67px);line-height:1;margin:12px 0 25px}.pricing-contact h2 span{color:#ffc64a}.pricing-contact-copy>p:not(.eyebrow){color:#c6d3e5;font-size:17px;line-height:1.6}.pricing-phone{display:inline-block;margin-top:25px;font-size:29px;font-weight:900;color:#fff;text-decoration:none}.pricing-form{position:relative;z-index:2;background:#fff!important}.pricing-form select{width:100%;padding:14px 12px;border:1px solid #d8dfe8;border-radius:10px;background:#fff;font:inherit;color:#17263c}
@media(max-width:980px){.pricing-hero,.seo-band,.pricing-contact{grid-template-columns:1fr}.pricing-hero{padding-top:125px}.pricing-grid{grid-template-columns:1fr}.price-visibility{transform:none}.seo-steps{justify-content:flex-start;flex-wrap:wrap}}@media(max-width:650px){.pricing-hero{padding:115px 20px 65px}.seo-warning{padding:36px 27px}.pricing-intro{padding:75px 18px}.price-card{padding:34px 24px}.price strong{font-size:54px}.seo-band,.pricing-contact{padding:70px 20px}.seo-steps div{width:115px;height:115px}.seo-steps i{display:none}}
/* ===== V9 — tarifs : deux besoins, deux formules ===== */
.pricing-page .pricing-intro{padding-top:75px}
.pricing-intro-top{max-width:1220px;margin:0 auto 58px;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;position:relative}
.pricing-intro-top .section-heading{text-align:left!important;max-width:none!important;margin:0!important}
.pricing-intro-top .section-heading h1{font-size:clamp(48px,5.2vw,76px);line-height:.98;letter-spacing:-.05em;margin:14px 0 24px;color:#071b3c}
.pricing-intro-top .section-heading h1 span{background:linear-gradient(90deg,#147cf5,#8a4dff 43%,#ff3d98 72%,#f1a51c);-webkit-background-clip:text;background-clip:text;color:transparent}
.pricing-intro-top .pricing-lead{margin:0;max-width:720px;font-size:18px;line-height:1.65}
.pricing-person{min-height:355px;position:relative;display:flex;align-items:flex-end;justify-content:center;border-radius:40px;overflow:hidden;background:linear-gradient(135deg,#eaf6ff,#fff3fa 55%,#fff5dc);box-shadow:0 26px 65px rgba(13,39,79,.11)}
.pricing-person:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-65px;top:-75px;background:linear-gradient(135deg,#ff3d98,#8b4cff);opacity:.16}
.pricing-person img{height:390px;width:auto;max-width:92%;object-fit:contain;object-position:bottom center;position:relative;z-index:2;filter:drop-shadow(0 18px 25px rgba(11,32,66,.12))}
.pricing-person-bubble{position:absolute;z-index:4;left:26px;top:28px;width:min(270px,55%);background:#fff;border-radius:22px;padding:18px 20px;box-shadow:0 16px 32px rgba(13,39,79,.12);transform:rotate(-2deg)}
.pricing-person-bubble:after{content:"";position:absolute;left:42px;bottom:-13px;border:14px solid transparent;border-top-color:#fff;border-bottom:0}
.pricing-person-bubble b,.pricing-person-bubble span{display:block}.pricing-person-bubble b{font-size:18px;color:#102749;margin-bottom:5px}.pricing-person-bubble span{font-size:12px;line-height:1.4;color:#6e7989}
.price-head>p{min-height:0!important}
.price-head>p b{color:#132b4d}.price-visibility .price-head>p b{color:#fff}
.formula-usecase{margin-top:20px;padding:17px 18px;border-radius:18px;background:linear-gradient(135deg,#edf7ff,#f9f4ff);border:1px solid #dfeaf5;font-size:13px;line-height:1.5;color:#3e536f;font-weight:650}
.visibility-usecase{background:linear-gradient(135deg,#ffffff14,#ffbe2520,#ff3d981c);border-color:#ffffff22;color:#dce7f4}
.btn-essential{background:linear-gradient(90deg,#1288f4,#6d5cff 55%,#bb43e6);color:#fff!important;border:0!important;box-shadow:0 12px 30px rgba(75,91,225,.26);font-weight:900}
.btn-essential:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(75,91,225,.34)}
.price-essential{border-top:5px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,#1288f4,#8255f2,#ff3d98) border-box}
.price-essential .price strong{background:linear-gradient(90deg,#1288f4,#7458f3);-webkit-background-clip:text;background-clip:text;color:transparent}
@media(max-width:980px){.pricing-intro-top{grid-template-columns:1fr}.pricing-person{min-height:330px}.pricing-person img{height:355px}.pricing-page .pricing-intro{padding-top:125px}}
@media(max-width:650px){.pricing-intro-top{gap:30px}.pricing-intro-top .section-heading h1{font-size:44px}.pricing-person{min-height:300px;border-radius:28px}.pricing-person img{height:320px;transform:translateX(34px)}.pricing-person-bubble{left:16px;top:18px;width:62%;padding:14px 15px}.pricing-person-bubble b{font-size:15px}}

/* ===== V10 — tarifs : ambiance plus posée, sans rose ===== */
.pricing-intro-top .section-heading h1 span{background:linear-gradient(90deg,#147cf5,#2f77d0 48%,#d6a02d 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.pricing-person{background:linear-gradient(135deg,#eaf4ff 0%,#f7fbff 52%,#fff4d9 100%)}
.pricing-person:before{background:linear-gradient(135deg,#3187dc,#e1ad38);opacity:.16}
.price-essential{border-top:5px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,#1288f4,#4b86d8,#e0ad38) border-box}
.btn-essential{background:linear-gradient(90deg,#1288f4,#316fc0 62%,#d9a32c);box-shadow:0 12px 30px rgba(49,111,192,.22)}
.visibility-usecase{background:linear-gradient(135deg,#ffffff14,#ffbe2520,#4f8bd31c)}
.pricing-contact:after{background:linear-gradient(135deg,#2f7ec9,#e0aa34)}

/* ===== V11 — personnage plus naturel sur la page Tarifs ===== */
.pricing-person{background:linear-gradient(135deg,#edf5ff 0%,#f9fbff 58%,#fff6df 100%);align-items:stretch}
.pricing-person:before{width:310px;height:310px;right:-110px;top:-105px;background:linear-gradient(135deg,#2d7fd1,#e4b241);opacity:.12}
.pricing-person img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 40%;filter:none;z-index:1}
.pricing-person:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(238,246,255,.86) 0%,rgba(238,246,255,.18) 38%,rgba(255,255,255,0) 66%);z-index:2;pointer-events:none}
.pricing-person-bubble{z-index:4;left:24px;top:26px;width:min(250px,52%);transform:none;border:1px solid rgba(15,45,84,.06);box-shadow:0 14px 34px rgba(13,39,79,.10)}
.pricing-person-bubble:after{display:none}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-status{display:block;line-height:1.45}.contact-panel button:disabled{cursor:wait;opacity:.7}
.pricing-person-bubble b{font-size:17px}
@media(max-width:650px){.pricing-person img{transform:none;object-position:center 38%}.pricing-person-bubble{width:58%;left:14px;top:14px}}


/* V12 — QUARTZ'EO devient une vraie signature de marque */
.brand-signature{position:relative;overflow:hidden;padding:115px 7vw 125px;background:linear-gradient(120deg,#071a38 0%,#0c2c55 54%,#123b69 100%);color:#fff;isolation:isolate}
.brand-signature:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-155px;top:-210px;background:radial-gradient(circle,#efbd55 0 2%,#efbd5538 24%,transparent 67%);z-index:-1}
.brand-signature:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;left:-180px;bottom:-200px;border:70px solid rgba(239,189,85,.10);z-index:-1}
.brand-watermark{position:absolute;left:-1vw;bottom:-.13em;font-size:clamp(100px,15vw,245px);font-weight:950;letter-spacing:-.075em;line-height:.8;color:rgba(255,255,255,.035);white-space:nowrap;pointer-events:none;z-index:-1}
.brand-signature-inner{max-width:1450px;margin:auto;display:grid;grid-template-columns:.88fr 1.12fr;gap:8vw;align-items:center}
.brand-signature-head .eyebrow{color:#f2c25e}
.brand-signature-head img{width:min(560px,100%);height:auto;max-height:150px;object-fit:contain;object-position:left center;background:#fff;border-radius:18px;padding:13px 20px;margin:0 0 32px;box-shadow:0 25px 70px rgba(0,0,0,.22)}
.brand-signature-head h2{font-size:clamp(44px,4.7vw,74px);line-height:.98;letter-spacing:-.052em;margin:0 0 24px;color:#fff}
.brand-signature-head h2 span{color:#f0be55}
.brand-signature-head>p:not(.eyebrow){max-width:660px;font-size:18px;line-height:1.72;color:#cbd7e5;margin:0 0 30px}
.btn-brand{background:linear-gradient(135deg,#f3c865,#d89c2e);color:#071a38;box-shadow:0 14px 35px rgba(225,170,61,.23)}
.brand-promises{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.brand-promises article{min-height:210px;padding:28px 27px;border-radius:26px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(8px);transition:transform .35s ease,background .35s ease,border-color .35s ease;position:relative;overflow:hidden}
.brand-promises article:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-55px;bottom:-55px;background:rgba(240,190,85,.13);transition:.35s}
.brand-promises article:hover{transform:translateY(-7px);background:rgba(255,255,255,.13);border-color:rgba(240,190,85,.5)}
.brand-promises article:hover:after{transform:scale(1.45)}
.brand-promises article>span{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:#f0be55;color:#071a38;font-size:12px;font-weight:950;margin-bottom:24px}
.brand-promises strong{display:block;font-size:21px;line-height:1.15;margin-bottom:10px;color:#fff}
.brand-promises p{font-size:14px;line-height:1.65;color:#bfccdc;margin:0}
@media(max-width:1000px){.brand-signature-inner{grid-template-columns:1fr;gap:55px}.brand-signature-head img{width:min(520px,100%)}}
@media(max-width:650px){.brand-signature{padding:78px 20px 90px}.brand-promises{grid-template-columns:1fr}.brand-promises article{min-height:auto}.brand-signature-head img{max-height:115px;padding:10px 14px}.brand-watermark{font-size:105px}}


/* V14 — bloc identité QUARTZ'EO plus compact et recentré */
.quartz-showcase{
  width:100%;
  margin:0;
  padding:0;
  overflow:hidden;
  background:#052a4b;
  line-height:0;
}
.quartz-showcase img{
  display:block;
  width:100%;
  height:auto;
  max-height:590px;
  object-fit:cover;
  object-position:center center;
}
@media (max-width:900px){
  .quartz-showcase img{max-height:none;width:100%;height:auto;object-fit:contain;}
}
\n\n/* V15 — Réalisations plus lumineuses + URLs sobres + bloc QUARTZ'EO en dernier */\n.portfolio-real{\n  background:\n    radial-gradient(circle at 12% 10%,rgba(255,211,92,.18),transparent 24%),\n    radial-gradient(circle at 88% 18%,rgba(99,190,255,.16),transparent 26%),\n    linear-gradient(135deg,#48647f 0%,#3e5b79 48%,#36536f 100%);\n}\n.photo-card,\n.photo-card:nth-child(1),\n.photo-card:nth-child(2),\n.photo-card:nth-child(3){\n  background:linear-gradient(180deg,#344b61 0%,#2d4257 100%)!important;\n  border-color:rgba(255,255,255,.14)!important;\n  box-shadow:0 24px 58px rgba(11,30,52,.22)!important;\n}\n.photo-card:hover{box-shadow:0 32px 68px rgba(11,30,52,.28)!important}\n.photo-card .reference-copy p{color:#e2e9f1}\n.photo-card .reference-link{color:#f7f9fc}\n.photo-card .reference-link u{\n  color:inherit;\n  text-decoration-color:rgba(255,255,255,.62);\n  text-decoration-thickness:1px;\n  text-underline-offset:3px;\n}\n.reference-link:after{\n  background:rgba(255,255,255,.58)!important;\n  height:1px!important;\n}\n.quartz-showcase{margin-top:0}\n\n\n/* V16 — finitions portfolio, bloc identité et footer */
.reference-link,
.photo-card .reference-link{
  color:#f7f9fc!important;
  border-bottom:0!important;
  text-decoration:none!important;
  padding-bottom:0!important;
}
.reference-link:after{display:none!important;content:none!important;}
.quartz-showcase{
  margin:0 0 42px!important;
  padding:0!important;
  background:#fff;
  display:flex;
  justify-content:center;
  overflow:hidden;
}
.quartz-showcase img{
  width:100%;
  max-height:360px!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.footer-brand img{
  width:285px!important;
  height:82px!important;
  padding:8px 10px!important;
}
@media(max-width:760px){
  .quartz-showcase{margin-bottom:28px!important;}
  .quartz-showcase img{max-height:300px!important;}
  .footer-brand img{width:255px!important;height:76px!important;}
}

/* V17 — réalisations : titre plus humain, cartes plus compactes et projet automobile */
.portfolio-real .section-heading{
  margin-bottom:34px;
}
.portfolio-real .section-heading h2{
  line-height:1.02;
}
.photo-card .reference-copy{
  min-height:180px;
  padding:27px 30px 22px;
}
.photo-card .reference-type{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin-bottom:13px;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.10)!important;
  color:#dbe7f4!important;
  font-size:10px;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.photo-card .reference-copy h3{
  margin:0 0 9px;
  font-size:21px;
  line-height:1.15;
}
.photo-card .reference-copy p{
  margin:0;
  font-size:14px;
  line-height:1.48;
}
.photo-card .reference-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  margin-top:15px;
  font-size:13px;
  font-weight:850;
  opacity:.92;
  transition:opacity .2s ease,transform .2s ease;
}
.photo-card .reference-link span{transition:transform .2s ease}
.photo-card .reference-link:hover{opacity:1;transform:translateX(2px)}
.photo-card .reference-link:hover span{transform:translateX(3px)}
.site-photo{
  height:410px;
  padding-top:35px;
}
.site-photo-page{
  height:325px;
}
.photo-content{
  height:277px;
}
.site-photo-auto{
  padding:0;
  background:#081a2b;
}
.project-screenshot{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transition:transform .5s cubic-bezier(.2,.8,.2,1);
}
.auto-card:hover .project-screenshot{
  transform:scale(1.025);
}
@media(max-width:720px){
  .photo-card .reference-copy{min-height:0;padding:25px 23px 20px}
  .site-photo{height:330px;padding-top:28px}
  .site-photo-auto{padding:0}
  .site-photo-page{height:270px}
  .photo-content{height:222px}
}

/* ===== V18 — Réalisations premium, animées et unifiées ===== */
.portfolio-premium{
  position:relative;
  overflow:hidden;
  padding:108px 3.4vw 124px;
  background:
    radial-gradient(circle at 12% 18%,rgba(71,151,255,.16),transparent 31%),
    radial-gradient(circle at 90% 18%,rgba(232,186,84,.13),transparent 27%),
    linear-gradient(145deg,#09223e 0%,#12385f 48%,#0d2e50 100%);
}
.portfolio-premium:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.16;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(to bottom,transparent,black 22%,black 78%,transparent);
}
.portfolio-premium .section-heading{position:relative;z-index:2;margin-bottom:54px}
.portfolio-premium .section-heading h2{letter-spacing:-.045em;line-height:.98}
.portfolio-premium .portfolio-intro{max-width:720px;margin:22px auto 0;color:#bfcfe1;font-size:15px;line-height:1.7}
.premium-projects{position:relative;z-index:2;gap:24px;max-width:1480px}
.premium-project{
  min-height:650px!important;
  border-radius:30px!important;
  background:rgba(10,27,47,.88)!important;
  border:1px solid rgba(255,255,255,.095)!important;
  box-shadow:0 30px 80px rgba(1,12,27,.25)!important;
  backdrop-filter:blur(12px);
  transition:transform .7s cubic-bezier(.18,.84,.2,1),box-shadow .7s ease,border-color .7s ease!important;
  will-change:transform;
}
.premium-project:nth-child(2){transform:translateY(22px)!important}
.premium-project:hover{transform:translateY(-12px)!important;box-shadow:0 44px 100px rgba(0,10,25,.40)!important;border-color:rgba(235,196,105,.33)!important}
.premium-project:nth-child(2):hover{transform:translateY(10px)!important}
.premium-project .reference-copy{min-height:225px;padding:30px 30px 25px}
.reference-meta{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:15px}
.premium-project .reference-type{display:inline-flex;margin:0;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.07)!important;color:#d8e8f8!important;border:1px solid rgba(255,255,255,.08);font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.reference-number{font-size:11px;font-weight:900;letter-spacing:.16em;color:#d7ad53}
.premium-project .reference-copy h3{font-size:25px;margin-bottom:12px;letter-spacing:-.035em}
.premium-project .reference-copy p{font-size:14px;line-height:1.6;color:#bdc9d7;max-width:100%;margin-bottom:15px}
.premium-project .reference-link{display:inline-flex;align-items:center;gap:8px;margin-top:5px;font-size:13px;color:#fff;font-weight:850;letter-spacing:.01em}
.premium-project .reference-link i{font-style:normal;color:#e1b554;transition:transform .35s ease}
.premium-project:hover .reference-link i{transform:translate(4px,-4px)}
.premium-project .reference-link:after{display:none!important}

.premium-visual{position:relative;height:415px;margin-top:auto;padding:23px 18px 0;overflow:hidden;background:linear-gradient(145deg,#1a3f66,#204b75 56%,#163856)}
.premium-project:nth-child(1) .premium-visual{background:linear-gradient(145deg,#365b7b 0%,#4d7696 50%,#243f58 100%)}
.premium-project:nth-child(2) .premium-visual{background:linear-gradient(145deg,#141a22,#26303c 52%,#10151c)}
.premium-project:nth-child(3) .premium-visual{background:linear-gradient(145deg,#234437,#4e7150 48%,#182f2a)}
.premium-visual:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-95px;top:-120px;border:45px solid rgba(255,255,255,.08);animation:premiumOrbit 8s ease-in-out infinite}
.premium-project:nth-child(2) .premium-visual:before{animation-delay:-2.6s}.premium-project:nth-child(3) .premium-visual:before{animation-delay:-5.2s}
.premium-visual:after{content:"";position:absolute;inset:-20% -70%;background:linear-gradient(100deg,transparent 42%,rgba(255,255,255,.10) 50%,transparent 58%);transform:translateX(-35%);animation:premiumSheen 8.5s ease-in-out infinite;pointer-events:none;z-index:6}
.premium-project:nth-child(2) .premium-visual:after{animation-delay:-2.8s}.premium-project:nth-child(3) .premium-visual:after{animation-delay:-5.6s}

.premium-browser{position:relative;height:378px;width:100%;border-radius:17px 17px 0 0;background:#fff;overflow:hidden;box-shadow:0 28px 58px rgba(0,0,0,.42);z-index:2;transform:translateY(12px) scale(.985);transition:transform .8s cubic-bezier(.18,.84,.2,1)}
.premium-project:hover .premium-browser{transform:translateY(0) scale(1)}
.premium-browserbar{height:36px;padding:0 14px;display:flex;align-items:center;gap:6px;background:#f5f6f8;border-bottom:1px solid #e7e9ed;color:#657183;font-size:8px;letter-spacing:.04em}
.premium-browserbar i{display:block;width:6px;height:6px;border-radius:50%;background:#c8ccd2}.premium-browserbar i:first-child{background:#df9d8f}.premium-browserbar i:nth-child(2){background:#dfc47d}.premium-browserbar i:nth-child(3){background:#89bd97}.premium-browserbar span{margin-left:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.project-image-wrap{height:342px;background:#0e1823;display:flex;align-items:center;justify-content:center;overflow:hidden}
.project-image-wrap img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#101820;transition:transform 1.2s cubic-bezier(.18,.84,.2,1)}
.premium-project:hover .project-image-wrap img{transform:scale(1.018)}
.garden-image-wrap img{object-fit:cover;object-position:center center}

.lenestour-site{height:342px;background:linear-gradient(110deg,rgba(255,255,255,.94),rgba(255,255,255,.28)),url('assets/demo-toiture.webp') center/cover;position:relative;color:#10203a}
.mini-site-nav{height:45px;background:rgba(255,255,255,.94);display:flex;align-items:center;justify-content:space-between;padding:0 18px;font-size:8px}.mini-site-nav b{font-size:11px}.mini-site-nav span{color:#6d7785}
.lenestour-copy{padding:58px 28px}.lenestour-copy small{font-size:8px;letter-spacing:.15em;font-weight:950}.lenestour-copy strong{display:block;font-size:30px;line-height:1.02;margin:11px 0 18px;letter-spacing:-.035em}.lenestour-copy em{display:inline-block;font-style:normal;font-size:8px;font-weight:950;padding:9px 13px;background:#dfa62c;border-radius:99px}
.premium-phone{position:absolute;z-index:5;left:17px;bottom:-23px;width:100px;height:215px;border:7px solid #d5dae0;border-radius:28px;background:linear-gradient(160deg,#fff,#e7edf3);box-shadow:0 20px 48px rgba(0,0,0,.45);padding:37px 10px 12px;color:#10203a;display:flex;flex-direction:column;gap:13px;transform:rotate(6deg);animation:premiumPhone 5.5s ease-in-out infinite}.premium-phone:before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:34px;height:4px;border-radius:4px;background:#b8bec6}.premium-phone b{font-size:8px}.premium-phone strong{font-size:13px;line-height:1.04}.premium-phone span{font-size:8px;font-weight:900;color:#a87518}

@keyframes premiumOrbit{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(-16px,18px) rotate(18deg)}}
@keyframes premiumSheen{0%,26%{transform:translateX(-38%)}45%,100%{transform:translateX(38%)}}
@keyframes premiumPhone{0%,100%{translate:0 0}50%{translate:0 -9px}}
@media(max-width:1100px){.premium-project:nth-child(2){transform:none!important}.premium-project:nth-child(2):hover{transform:translateY(-12px)!important}.premium-project{min-height:620px!important}}
@media(max-width:720px){.portfolio-premium{padding:80px 18px 92px}.portfolio-premium .portfolio-intro{margin-left:0}.premium-project{min-height:560px!important}.premium-project .reference-copy{min-height:0;padding:27px 24px 22px}.premium-visual{height:360px}.premium-browser{height:329px}.project-image-wrap,.lenestour-site{height:293px}.lenestour-copy{padding:45px 22px}.premium-phone{width:90px;height:190px}.premium-project:nth-child(2){transform:none!important}}
@media(prefers-reduced-motion:reduce){.premium-visual:before,.premium-visual:after,.premium-phone{animation:none!important}.premium-project,.premium-browser,.project-image-wrap img{transition:none!important}}

/* ===== V19 — Réalisations éditoriales premium ===== */
.portfolio-premium{
  padding:118px 5vw 132px;
  background:
    radial-gradient(circle at 8% 16%,rgba(57,126,205,.18),transparent 30%),
    radial-gradient(circle at 92% 88%,rgba(204,166,92,.14),transparent 28%),
    linear-gradient(145deg,#071a2d 0%,#0d2d4b 52%,#0a2137 100%);
}
.portfolio-premium .section-heading{
  max-width:980px;
  margin:0 auto 72px;
  text-align:center;
}
.portfolio-premium .section-heading h2{font-size:clamp(42px,5.2vw,78px);line-height:.98}
.portfolio-premium .portfolio-intro{font-size:16px;max-width:760px;color:#c6d2df}

.premium-projects{
  display:flex!important;
  flex-direction:column;
  gap:72px!important;
  max-width:1380px;
  margin:0 auto;
}
.premium-project{
  position:relative;
  display:grid!important;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.55fr);
  min-height:520px!important;
  overflow:hidden;
  border-radius:34px!important;
  background:rgba(9,25,42,.76)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 35px 90px rgba(0,10,24,.34)!important;
  backdrop-filter:blur(16px);
  transform:none!important;
}
.premium-project:nth-child(even){grid-template-columns:minmax(0,1.55fr) minmax(280px,.72fr)}
.premium-project:nth-child(even) .reference-copy{order:2}
.premium-project:nth-child(even) .premium-visual{order:1}
.premium-project:hover{transform:translateY(-8px)!important;box-shadow:0 46px 110px rgba(0,10,24,.46)!important}

.premium-project .reference-copy{
  min-height:0;
  padding:58px 48px 48px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  position:relative;
  z-index:3;
}
.premium-project .reference-meta{margin-bottom:22px}
.premium-project .reference-type{
  padding:8px 12px;
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(255,255,255,.10)!important;
  color:#dbe5ef!important;
}
.premium-project .reference-number{font-size:12px;color:#e2bb69}
.premium-project .reference-copy h3{font-size:clamp(30px,3vw,46px);line-height:1.02;margin-bottom:20px}
.premium-project .reference-copy p{font-size:15px;line-height:1.75;color:#c1ccd8;max-width:430px;margin:0}

.premium-visual{
  height:auto;
  min-height:520px;
  margin:0;
  padding:34px 28px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.premium-browser{
  height:auto;
  width:100%;
  max-width:860px;
  border-radius:20px;
  transform:translateY(14px) scale(.975);
  box-shadow:0 34px 70px rgba(0,0,0,.46);
}
.premium-project:hover .premium-browser{transform:translateY(0) scale(1)}
.premium-browserbar{height:38px}
.project-image-wrap,
.lenestour-site{height:408px}
.project-image-wrap img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:#0d1722;
  transform:scale(1);
}
.garage-image-wrap img{object-fit:contain!important;object-position:center center!important}
.garden-image-wrap img{object-fit:cover!important;object-position:center 52%!important}
.premium-project:hover .project-image-wrap img{transform:scale(1.015)}
.premium-phone{left:28px;bottom:2px}

/* arrivée élégante au scroll */
.premium-project.reveal{opacity:0;filter:blur(3px)}
.premium-project.reveal:nth-child(odd){transform:translateX(-58px)!important}
.premium-project.reveal:nth-child(even){transform:translateX(58px)!important}
.premium-project.reveal.is-visible{
  opacity:1;
  filter:blur(0);
  transform:translateX(0)!important;
  transition:opacity .9s ease,transform 1.05s cubic-bezier(.18,.84,.2,1),filter .9s ease,box-shadow .7s ease!important;
}
.premium-project.reveal.is-visible:hover{transform:translateY(-8px)!important}

@media(max-width:980px){
  .premium-project,.premium-project:nth-child(even){grid-template-columns:1fr}
  .premium-project:nth-child(even) .reference-copy,.premium-project:nth-child(even) .premium-visual{order:initial}
  .premium-project .reference-copy{padding:38px 30px 30px}
  .premium-visual{min-height:430px}
  .project-image-wrap,.lenestour-site{height:350px}
  .premium-project.reveal:nth-child(odd),.premium-project.reveal:nth-child(even){transform:translateY(42px)!important}
  .premium-project.reveal.is-visible{transform:translateY(0)!important}
}
@media(max-width:720px){
  .portfolio-premium{padding:86px 18px 96px}
  .portfolio-premium .section-heading{margin-bottom:46px;text-align:left}
  .premium-projects{gap:38px!important}
  .premium-project{border-radius:25px!important}
  .premium-visual{min-height:330px;padding:22px 14px}
  .premium-browser{border-radius:15px}
  .project-image-wrap,.lenestour-site{height:285px}
  .premium-phone{display:none}
}

/* V20 — Réalisations premium sur une seule ligne */
.premium-projects{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px!important;
  max-width:1480px;
  margin:0 auto;
}
.premium-project,
.premium-project:nth-child(even){
  display:flex!important;
  flex-direction:column;
  min-height:0!important;
  border-radius:28px!important;
  transform:none!important;
}
.premium-project:nth-child(even) .reference-copy,
.premium-project:nth-child(even) .premium-visual{order:initial}
.premium-project .reference-copy{
  min-height:220px;
  padding:30px 30px 26px;
  justify-content:flex-start;
}
.premium-project .reference-meta{margin-bottom:15px}
.premium-project .reference-copy h3{
  font-size:clamp(24px,2vw,31px);
  margin-bottom:12px;
}
.premium-project .reference-copy p{
  font-size:14px;
  line-height:1.62;
  max-width:none;
}
.premium-visual{
  height:390px;
  min-height:390px;
  padding:22px 18px 0;
  align-items:flex-end;
}
.premium-browser{
  width:100%;
  height:360px;
  max-width:none;
  border-radius:18px 18px 0 0;
  transform:translateY(10px) scale(.985);
}
.premium-browserbar{height:34px}
.project-image-wrap,
.lenestour-site{height:326px}
.project-image-wrap img{
  width:100%;
  height:100%;
}
.garage-image-wrap img{
  object-fit:contain!important;
  object-position:center center!important;
  background:#0d1722;
}
.garden-image-wrap img{
  object-fit:cover!important;
  object-position:center center!important;
}
.premium-phone{left:18px;bottom:0}

/* mouvement : apparition décalée + léger soulèvement */
.premium-project.reveal:nth-child(1),
.premium-project.reveal:nth-child(2),
.premium-project.reveal:nth-child(3){
  transform:translateY(44px)!important;
}
.premium-project.reveal.is-visible{
  transform:translateY(0)!important;
}
.premium-project.reveal:nth-child(2).is-visible{transition-delay:.10s!important}
.premium-project.reveal:nth-child(3).is-visible{transition-delay:.20s!important}
.premium-project.reveal.is-visible:hover{
  transform:translateY(-10px)!important;
}

@media(max-width:1100px){
  .premium-projects{grid-template-columns:1fr 1fr}
  .premium-project:last-child{grid-column:1/-1;max-width:700px;width:100%;justify-self:center}
}
@media(max-width:760px){
  .premium-projects{grid-template-columns:1fr}
  .premium-project:last-child{grid-column:auto;max-width:none}
  .premium-project .reference-copy{min-height:0;padding:27px 24px 22px}
  .premium-visual{height:340px;min-height:340px;padding:18px 14px 0}
  .premium-browser{height:315px}
  .project-image-wrap,.lenestour-site{height:281px}
}

/* V21 — Bloc QUARTZ'EO éditorial, sans image de fond */
.quartz-benefits{
  position:relative;
  background:#fff;
  padding:78px 5vw 86px;
  overflow:hidden;
}
.quartz-benefits::before,
.quartz-benefits::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.quartz-benefits::before{
  width:300px;
  height:300px;
  left:-185px;
  top:-170px;
  background:#f1f5fa;
  border:2px solid rgba(201,151,53,.55);
}
.quartz-benefits::after{
  width:250px;
  height:250px;
  right:-165px;
  bottom:-165px;
  background:#f3f6fa;
}
.quartz-benefits-inner{
  position:relative;
  z-index:1;
  max-width:1500px;
  margin:0 auto;
  text-align:center;
}
.quartz-benefits-brand{
  display:flex;
  flex-direction:column;
  align-items:center;
  margin-bottom:28px;
}
.quartz-benefits-brand img{
  width:min(590px,58vw);
  height:auto;
  max-height:185px;
  object-fit:contain;
}
.quartz-benefits-line{
  width:116px;
  height:4px;
  margin-top:13px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--gold),var(--gold2));
}
.quartz-benefits h2{
  margin:0 auto 58px;
  max-width:1250px;
  color:var(--navy);
  font-size:clamp(42px,4.3vw,72px);
  line-height:1.02;
  letter-spacing:-.045em;
  font-weight:850;
}
.quartz-benefits h2 span{color:var(--gold)}
.quartz-benefits-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  align-items:stretch;
  max-width:1500px;
  margin:0 auto;
}
.quartz-benefit{
  position:relative;
  padding:0 42px;
  min-width:0;
}
.quartz-benefit+.quartz-benefit::before{
  content:"";
  position:absolute;
  left:0;
  top:28px;
  bottom:8px;
  width:1px;
  background:#d8dde5;
}
.quartz-benefit-icon{
  width:106px;
  height:106px;
  margin:0 auto 24px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#f2f5f9;
}
.quartz-benefit-icon svg{
  width:61px;
  height:61px;
  fill:none;
  stroke:var(--gold);
  stroke-width:3.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.quartz-benefit:nth-child(3) .quartz-benefit-icon svg{fill:none}
.quartz-benefit h3{
  margin:0 0 20px;
  color:var(--navy);
  font-size:clamp(22px,1.65vw,31px);
  line-height:1.16;
  letter-spacing:-.025em;
}
.quartz-benefit p{
  max-width:310px;
  margin:0 auto;
  color:#566279;
  font-size:17px;
  line-height:1.55;
}
@media(max-width:1050px){
  .quartz-benefits-grid{grid-template-columns:1fr 1fr;row-gap:55px}
  .quartz-benefit:nth-child(3)::before{display:none}
  .quartz-benefit{padding:0 34px}
}
@media(max-width:650px){
  .quartz-benefits{padding:60px 20px 68px}
  .quartz-benefits-brand img{width:min(430px,92vw);max-height:none}
  .quartz-benefits h2{font-size:40px;margin-bottom:46px}
  .quartz-benefits-grid{grid-template-columns:1fr;row-gap:42px}
  .quartz-benefit{padding:0 10px 42px}
  .quartz-benefit+.quartz-benefit::before{left:15%;right:15%;top:-22px;bottom:auto;width:auto;height:1px}
  .quartz-benefit p{font-size:16px}
}

/* ===== QUARTZ'EO V22 — QUI SOMMES-NOUS ===== */
.about-page{background:#fff}.about-hero{min-height:760px;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center;padding:105px 7vw 110px;position:relative;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#f7f9ff 48%,#fff8f2 100%)}
.about-hero:before{content:"Q";position:absolute;right:2vw;top:34px;font-size:520px;line-height:.8;font-weight:900;color:rgba(20,77,255,.035);letter-spacing:-.12em;pointer-events:none}.about-hero-glow{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}.about-glow-one{width:430px;height:430px;right:-150px;top:-100px;background:radial-gradient(circle,rgba(255,77,119,.16),transparent 66%)}.about-glow-two{width:420px;height:420px;left:-230px;bottom:-180px;background:radial-gradient(circle,rgba(23,77,255,.13),transparent 68%)}
.about-hero-copy{position:relative;z-index:2;max-width:850px}.about-hero h1{font-size:clamp(50px,5.7vw,88px);line-height:.96;letter-spacing:-.06em;color:#071a38;margin:0}.about-hero h1 span{background:linear-gradient(90deg,#174dff,#a844ff,#ff4d77);-webkit-background-clip:text;background-clip:text;color:transparent}.about-hero-lead{font-size:20px;line-height:1.65;color:#4f5d70;max-width:760px;margin:30px 0}.about-hero-points{display:flex;gap:10px;flex-wrap:wrap}.about-hero-points span{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #e2e7f0;font-size:12px;font-weight:800;color:#24344e;box-shadow:0 8px 24px rgba(7,26,56,.05)}
.about-hero-card{position:relative;z-index:2;background:#071a38;color:#fff;padding:50px;border-radius:34px;box-shadow:0 40px 90px rgba(7,26,56,.23);transform:rotate(1deg)}.about-card-kicker{margin:0 0 25px;color:#efc36a;font-size:12px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}.about-hero-card blockquote{font-size:clamp(28px,2.7vw,43px);line-height:1.12;letter-spacing:-.035em;font-weight:800;margin:0}.about-card-rule{height:4px;width:92px;background:linear-gradient(90deg,#174dff,#ff4d77,#efb52f);border-radius:99px;margin:34px 0}.about-hero-card>p:last-child{font-size:16px;line-height:1.7;color:#cbd4e2;margin:0}
.about-experience{padding:115px 7vw;display:grid;grid-template-columns:.68fr 1.32fr;gap:75px;align-items:center}.about-experience-number{min-height:390px;border-radius:36px;background:linear-gradient(145deg,#174dff,#7136ec 58%,#ff4d77);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 35px 80px rgba(42,63,190,.2)}.about-experience-number span{font-size:130px;line-height:.85;font-weight:950;letter-spacing:-.08em}.about-experience-number small{margin-top:24px;font-size:15px;line-height:1.5;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.about-experience-copy h2,.about-investment h2,.about-seo-manifesto h2,.about-values h2{font-size:clamp(40px,4.6vw,70px);line-height:1.02;letter-spacing:-.055em;color:#071a38;margin:0 0 28px}.about-experience-copy h2 span,.about-investment h2 span,.about-seo-manifesto h2 span,.about-values h2 span{color:#d99f24}.about-experience-copy>p:not(.eyebrow),.about-investment-copy>p:not(.eyebrow){font-size:17px;line-height:1.8;color:#5c6879;max-width:850px}
.about-investment{padding:115px 7vw;background:#f6f7fb}.about-investment-copy{max-width:1050px}.about-roi{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:16px;align-items:center;margin-top:65px}.about-roi>div{background:#fff;border-radius:26px;padding:28px 25px;min-height:180px;box-shadow:0 18px 50px rgba(7,26,56,.07);border:1px solid #eaedf3}.about-roi b{display:block;font-size:12px;color:#ff4d77;margin-bottom:34px}.about-roi span{display:block;font-size:24px;font-weight:900;color:#071a38;margin-bottom:8px}.about-roi small{font-size:13px;line-height:1.55;color:#6e7888}.about-roi>i{font-style:normal;color:#a7b0bf;font-size:26px}
.about-pillars{padding:115px 7vw}.about-pillar-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.about-pillar{border-radius:30px;padding:38px 38px 42px;min-height:300px;position:relative;overflow:hidden}.about-pillar:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-65px;bottom:-78px;background:rgba(255,255,255,.25)}.about-pillar-no{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.75);font-size:11px;font-weight:950;margin-bottom:60px}.about-pillar h3{font-size:30px;line-height:1.12;letter-spacing:-.03em;color:#071a38;margin:0 0 18px;max-width:520px}.about-pillar p{font-size:16px;line-height:1.72;color:#30415a;max-width:620px;margin:0}.about-pillar-blue{background:linear-gradient(145deg,#dbe9ff,#edf5ff)}.about-pillar-gold{background:linear-gradient(145deg,#fff0c8,#fff8e6)}.about-pillar-pink{background:linear-gradient(145deg,#ffe2eb,#fff0f5)}.about-pillar-green{background:linear-gradient(145deg,#dcf7e7,#effcf4)}
.about-seo-manifesto{padding:110px 7vw;display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:end;background:#071a38;color:#fff}.about-seo-manifesto h2{color:#fff;margin-bottom:0}.about-seo-manifesto h2 span{color:#efb52f}.about-seo-text p{font-size:17px;line-height:1.8;color:#c4cedc;margin:0 0 22px}.about-seo-text strong{color:#fff}
.about-values{padding:115px 7vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;background:linear-gradient(180deg,#fff,#f8f9fc)}.about-values-list{display:flex;flex-direction:column}.about-values-list>div{padding:30px 0;border-top:1px solid #dfe4ec}.about-values-list>div:last-child{border-bottom:1px solid #dfe4ec}.about-values-list strong{font-size:22px;color:#071a38}.about-values-list p{font-size:15px;line-height:1.7;color:#677284;margin:8px 0 0}
.about-cta{min-height:500px;padding:90px 8vw;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(120deg,#174dff 0%,#5539e9 38%,#b72cba 68%,#ff4d77 100%);color:#fff}.about-cta>div:first-child{position:relative;z-index:2}.about-cta p{font-size:18px;margin:0 0 18px;color:#e8eaff}.about-cta h2{font-size:clamp(50px,6vw,88px);line-height:.96;letter-spacing:-.055em;margin:0 0 35px}.about-cta h2 span{color:#ffd472}.about-cta-orb{position:absolute;right:-140px;top:-95px;width:520px;height:520px;border-radius:50%;border:85px solid rgba(255,209,102,.18)}
@media(max-width:1100px){.about-hero,.about-experience,.about-seo-manifesto,.about-values{grid-template-columns:1fr}.about-roi{grid-template-columns:1fr 1fr}.about-roi>i{display:none}.about-pillar-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.about-hero{padding:70px 20px 80px;min-height:auto;gap:40px}.about-hero:before{font-size:280px;right:-80px}.about-hero h1{font-size:50px}.about-hero-lead{font-size:17px}.about-hero-card{padding:32px;border-radius:26px}.about-experience,.about-investment,.about-pillars,.about-seo-manifesto,.about-values{padding:75px 20px;gap:45px}.about-experience-number{min-height:280px}.about-experience-number span{font-size:92px}.about-roi,.about-pillar-grid{grid-template-columns:1fr}.about-pillar{min-height:260px;padding:30px}.about-pillar-no{margin-bottom:42px}.about-cta{min-height:420px;padding:70px 20px}.about-cta h2{font-size:52px}}


/* ===== QUARTZ'EO V23 — ACCROCHE CLIENTS APRÈS HERO ===== */
.client-hook{
  position:relative;
  overflow:hidden;
  padding:82px 5vw 90px;
  background:
    radial-gradient(circle at -7% 28%, transparent 0 115px, rgba(201,151,53,.09) 116px 171px, transparent 172px),
    radial-gradient(circle at 106% 15%, transparent 0 145px, rgba(39,120,204,.07) 146px 201px, transparent 202px),
    linear-gradient(180deg,#fff 0%,#fdfcf9 100%);
}
.client-hook-inner{max-width:1450px;margin:0 auto;text-align:center}
.client-hook-rule{display:block;width:76px;height:3px;border-radius:99px;margin:0 auto 28px;background:linear-gradient(90deg,var(--gold),var(--gold2))}
.client-hook h2{margin:0;color:var(--navy);font-size:clamp(52px,6.1vw,92px);line-height:.93;letter-spacing:-.055em;font-weight:900}
.client-hook h2 span{color:var(--gold)}
.client-hook>div>h3{margin:18px 0 26px;color:var(--navy);font-size:clamp(27px,3.1vw,48px);line-height:1.05;letter-spacing:-.035em}
.client-hook>div>p{max-width:1000px;margin:0 auto;color:#505c6d;font-size:clamp(17px,1.45vw,21px);line-height:1.55}
.client-hook>div>p strong{color:var(--navy);font-weight:900}
.client-services-intro{margin-top:80px}
.client-services-intro .client-hook-rule{margin-bottom:18px}
.client-services-kicker{margin:0 0 16px!important;color:#313c4e!important;font-size:12px!important;font-weight:900;text-transform:uppercase;letter-spacing:.16em}
.client-services-intro h3{margin:0;color:var(--navy);font-size:clamp(33px,3.4vw,54px);line-height:1.03;letter-spacing:-.045em}
.client-services-intro>p:last-child{margin:18px auto 0;color:#687385;font-size:17px;line-height:1.6}
.client-services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px;text-align:left}
.client-service-card{background:rgba(255,255,255,.96);border:1px solid #e9e6df;border-radius:16px;padding:24px 25px 28px;box-shadow:0 12px 34px rgba(7,26,56,.055);transition:transform .3s ease,box-shadow .3s ease}
.client-service-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(7,26,56,.09)}
.client-service-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#f5f0e7;margin-bottom:18px}
.client-service-icon svg{width:31px;height:31px;fill:none;stroke:#a87c2d;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.client-service-card h4{margin:0 0 12px;color:var(--navy);font-size:19px;line-height:1.25;letter-spacing:-.02em}
.client-service-card p{margin:0;color:#606b7a;font-size:14.5px;line-height:1.55}
@media(max-width:1000px){.client-services-grid{grid-template-columns:1fr 1fr}.client-hook{padding:72px 5vw 78px}}
@media(max-width:620px){.client-hook{padding:58px 20px 64px}.client-hook h2{font-size:52px}.client-hook>div>h3{font-size:30px}.client-hook>div>p br{display:none}.client-services-intro{margin-top:58px}.client-services-grid{grid-template-columns:1fr}.client-service-card{padding:22px}}


/* V24 — photo humaine Qui sommes-nous */
.about-team-photo{
  width:min(1480px,94vw);
  margin:34px auto 70px;
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 24px 70px rgba(6,21,47,.14);
  background:#f4f6f8;
}
.about-team-photo img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:2048/1365;
  object-fit:cover;
}
@media (max-width:760px){
  .about-team-photo{width:92vw;margin:22px auto 46px;border-radius:20px;}
  .about-team-photo img{aspect-ratio:4/3;object-position:center;}
}


/* Photo de transition — page Qui sommes-nous */
.about-photo-break{
  width:100%;
  margin:0;
  padding:0;
  overflow:hidden;
  background:#fff;
}
.about-photo-break img{
  display:block;
  width:100%;
  height:auto;
  max-height:680px;
  object-fit:cover;
  object-position:center;
}
@media (max-width:700px){
  .about-photo-break img{
    min-height:300px;
    object-fit:cover;
    object-position:center;
  }
}

/* V25 — afficher la photo Qui sommes-nous en entier, sans recadrage */
.about-photo-break{
  overflow:visible;
}
.about-photo-break img{
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  object-position:center;
}
@media (max-width:700px){
  .about-photo-break img{
    width:100%;
    height:auto;
    min-height:0;
    max-height:none;
    object-fit:contain;
    object-position:center;
  }
}

/* V26 — photo Qui sommes-nous : entière, plus petite, centrée */
.about-photo-break{
  width:min(980px,88vw);
  margin:42px auto 68px;
  padding:0;
  overflow:hidden;
  background:#fff;
  border-radius:14px;
  box-shadow:0 18px 48px rgba(6,21,47,.10);
}
.about-photo-break img{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  min-height:0;
  object-fit:contain;
  object-position:center;
}
@media (max-width:700px){
  .about-photo-break{width:92vw;margin:28px auto 46px;border-radius:10px;}
  .about-photo-break img{width:100%;height:auto;min-height:0;max-height:none;object-fit:contain;}
}

/* V27 — mouvement éditorial discret sur l'accueil */
.section-index{
  display:flex;align-items:center;gap:10px;margin:0 0 22px;
  font-size:11px;font-weight:850;letter-spacing:.14em;text-transform:uppercase;
  color:#7c8796;
}
.section-index-number{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:38px;height:26px;padding:0 10px;border-radius:999px;
  color:var(--navy);background:rgba(201,151,53,.13);border:1px solid rgba(201,151,53,.34);
  letter-spacing:.08em;
}
.section-index-label{position:relative;padding-left:26px}
.section-index-label:before{content:"";position:absolute;left:0;top:50%;width:17px;height:1px;background:var(--gold);transform:translateY(-50%)}
.portfolio-section .section-index{color:#aeb9c9}
.portfolio-section .section-index-number{color:#fff;background:rgba(239,195,106,.12);border-color:rgba(239,195,106,.36)}

/* arrivées plus lisibles, sans effet gadget */
.client-service-card.reveal:nth-child(1){transition-delay:.03s}
.client-service-card.reveal:nth-child(2){transition-delay:.12s}
.client-service-card.reveal:nth-child(3){transition-delay:.21s}
.client-service-card.reveal:nth-child(4){transition-delay:.30s}
.feature-card.reveal:nth-child(1){transition-delay:.02s}
.feature-card.reveal:nth-child(2){transition-delay:.12s}
.feature-card.reveal:nth-child(3){transition-delay:.22s}
.method-card.reveal:nth-child(1){transition-delay:.02s}
.method-card.reveal:nth-child(2){transition-delay:.13s}
.method-card.reveal:nth-child(3){transition-delay:.24s}
.quartz-benefit.reveal:nth-child(1){transition-delay:.02s}
.quartz-benefit.reveal:nth-child(2){transition-delay:.11s}
.quartz-benefit.reveal:nth-child(3){transition-delay:.20s}
.quartz-benefit.reveal:nth-child(4){transition-delay:.29s}

/* un peu de vie continue dans le hero */
@media (min-width:900px) and (prefers-reduced-motion:no-preference){
  .hero-v3-visual.is-visible{animation:heroBreath 7s ease-in-out 1s infinite alternate}
  .hero-v3-visual.is-visible .phone-left{animation:phoneFloatLeft 5.5s ease-in-out 1.2s infinite alternate}
  .hero-v3-visual.is-visible .phone-right{animation:phoneFloatRight 6.2s ease-in-out 1.4s infinite alternate}
  .hero-v3 .accent-one{animation:accentDriftOne 9s ease-in-out infinite alternate}
  .hero-v3 .accent-two{animation:accentDriftTwo 11s ease-in-out infinite alternate}
}
@keyframes heroBreath{from{translate:0 0}to{translate:0 -7px}}
@keyframes phoneFloatLeft{from{translate:0 0}to{translate:-4px -9px}}
@keyframes phoneFloatRight{from{translate:0 0}to{translate:5px 8px}}
@keyframes accentDriftOne{from{transform:translate3d(0,0,0)}to{transform:translate3d(14px,-10px,0)}}
@keyframes accentDriftTwo{from{transform:translate3d(0,0,0)}to{transform:translate3d(-12px,9px,0)}}

/* survol plus vivant sur les cartes de services */
.client-service-card,.method-card,.quartz-benefit{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.client-service-card:hover,.method-card:hover,.quartz-benefit:hover{transform:translateY(-6px);box-shadow:0 20px 42px rgba(6,21,47,.10)}

@media (max-width:720px){
  .section-index{margin-bottom:16px}
  .section-index-label{padding-left:22px}
}

@media (prefers-reduced-motion:reduce){
  .reveal,.reveal-left,.reveal-right,.reveal-scale{opacity:1!important;transform:none!important;transition:none!important}
  .hero-v3-visual,.phone-left,.phone-right,.hero-v3 .accent-one,.hero-v3 .accent-two{animation:none!important}
}

/* V63 — arrivée dynamique et coordonnée des deux appels à l'action */
.cta-arrival{
  filter:blur(7px);
  transition:opacity .8s ease,transform 1s cubic-bezier(.16,.84,.24,1),filter .8s ease!important;
}
.cta-arrival-dark{transform:translate3d(-72px,18px,0) scale(.975)}
.cta-arrival-light{transform:translate3d(72px,20px,0) scale(.975)}
.cta-arrival.is-visible{filter:blur(0);transform:translate3d(0,0,0) scale(1)}
.cta-arrival p,.cta-arrival h2,.cta-arrival .btn{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .62s ease,transform .72s cubic-bezier(.2,.75,.25,1);
}
.cta-arrival.is-visible p,.cta-arrival.is-visible h2,.cta-arrival.is-visible .btn{opacity:1;transform:none}
.cta-arrival.is-visible p:first-child{transition-delay:.16s}
.cta-arrival.is-visible h2{transition-delay:.27s}
.cta-arrival.is-visible p:not(:first-child){transition-delay:.38s}
.cta-arrival.is-visible .btn{transition-delay:.48s}
.cta-ring-arrival{
  opacity:0;
  filter:blur(9px);
  transform:translate3d(110px,-25px,0) rotate(-42deg) scale(.82)!important;
  transition:opacity .85s ease .18s,transform 1.15s cubic-bezier(.16,.84,.24,1) .18s,filter .85s ease .18s!important;
}
.cta-ring-arrival.is-visible{opacity:1;filter:blur(0);transform:translate3d(0,0,0) rotate(-25deg) scale(1)!important}
@media(max-width:720px){
  .cta-arrival-dark,.cta-arrival-light{transform:translate3d(0,38px,0) scale(.98)}
  .cta-arrival.is-visible{transform:none}
  .cta-ring-arrival{transform:translate3d(55px,0,0) rotate(-35deg) scale(.9)!important}
  .cta-ring-arrival.is-visible{transform:translate3d(0,0,0) rotate(-25deg) scale(1)!important}
}
@media(prefers-reduced-motion:reduce){
  .cta-arrival,.cta-arrival p,.cta-arrival h2,.cta-arrival .btn,.cta-ring-arrival{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}
}


/* V28 — ajustements éditoriaux et harmonisation des réalisations */
.client-hook-emphasis{
  display:inline-block;
  margin-top:8px;
  font-size:clamp(24px,2.2vw,38px);
  line-height:1.08;
  color:var(--navy);
  letter-spacing:-.025em;
}

/* Les trois exemples partagent désormais le même fond sombre */
.premium-project:nth-child(1) .premium-visual,
.premium-project:nth-child(2) .premium-visual,
.premium-project:nth-child(3) .premium-visual{
  background:linear-gradient(145deg,#141a22 0%,#26303c 52%,#10151c 100%)!important;
}

@media(max-width:620px){
  .client-hook-emphasis{font-size:28px;}
}

/* V29 — nouveau logo Quartz'eo sur la page d'accueil */
.home-page .site-header{
  background:rgba(5,20,42,.96);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 8px 30px rgba(4,17,39,.12);
}
.home-page .site-header .brand img{background:transparent;padding:0;object-fit:contain;}
.home-page .main-nav a{color:#fff;}
.home-page .main-nav a:after{
  background:linear-gradient(90deg,#12d9e9,#5b65ff,#d844e8,#ff8b45);
}
.home-page .header-cta{
  background:linear-gradient(90deg,#12d9e9,#5b65ff 38%,#d844e8 68%,#ff9a49);
  color:#fff;
  box-shadow:0 10px 28px rgba(93,93,255,.22);
}
.home-page .menu-toggle{color:#fff;}
@media(max-width:1100px){
  .home-page .site-header.menu-open .main-nav{
    background:#071a38;
    border:1px solid rgba(255,255,255,.10);
  }
}

/* V30 — corrections logo : header plus discret + image PNG nettoyée */
.home-page .site-header .brand img{
  width:auto !important;
  height:52px !important;
  max-width:245px !important;
  object-fit:contain !important;
  display:block;
}
.home-page footer img[src*="logo-quartzeo"],
.home-page .site-footer img[src*="logo-quartzeo"],
.home-page .footer-logo img{
  width:auto !important;
  height:48px !important;
  max-width:225px !important;
  object-fit:contain !important;
  background:transparent !important;
}
@media(max-width:700px){
  .home-page .site-header .brand img{
    height:42px !important;
    max-width:200px !important;
  }
  .home-page footer img[src*="logo-quartzeo"],
  .home-page .site-footer img[src*="logo-quartzeo"],
  .home-page .footer-logo img{
    height:42px !important;
    max-width:195px !important;
  }
}

/* V31 — logo du header réduit de moitié */
.home-page .site-header .brand img{
  height:26px !important;
  max-width:123px !important;
}
@media(max-width:700px){
  .home-page .site-header .brand img{
    height:21px !important;
    max-width:100px !important;
  }
}

/* V32 — logo header légèrement agrandi et sans soulignement */
.home-page .site-header .brand img{
  height:37px !important;
  max-width:175px !important;
}
@media(max-width:700px){
  .home-page .site-header .brand img{
    height:31px !important;
    max-width:148px !important;
  }
}

/* V33 — logo définitif dans le bloc "Un partenaire pour votre développement" */
.home-page .brand-signature-head img[src*="logo-quartzeo-partenaire"],
.home-page .brand-signature img[src*="logo-quartzeo-partenaire"]{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  object-fit:contain !important;
}

/* V33 correction ciblée — logo final dans le bloc partenaire */
.home-page .quartz-benefits-brand img{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  object-fit:contain !important;
}

/* V34 — bloc partenaire : écrin bleu nuit + logo légèrement réduit */
.home-page .quartz-benefits-brand{
  background:#05142a !important;
  border-radius:18px !important;
  padding:22px 30px !important;
  box-shadow:0 14px 34px rgba(5,20,42,.16) !important;
  width:fit-content;
  max-width:100%;
}
.home-page .quartz-benefits-brand img{
  width:auto !important;
  height:54px !important;
  max-width:245px !important;
  display:block !important;
  object-fit:contain !important;
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
}
@media(max-width:700px){
  .home-page .quartz-benefits-brand{
    padding:18px 24px !important;
    border-radius:15px !important;
  }
  .home-page .quartz-benefits-brand img{
    height:46px !important;
    max-width:210px !important;
  }
}

/* V35 — centrage du logo dans le bloc partenaire */
.home-page .quartz-benefits-brand{
  margin-left:auto !important;
  margin-right:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
.home-page .quartz-benefits-brand img{
  margin:0 auto !important;
}


/* V37 — Qui sommes-nous : photo d'équipe compacte + texte et logo couleur */
.about-page .site-header .brand img{
  object-fit:contain;
  object-position:left center;
}
.about-team-split{
  width:min(1180px,88vw);
  margin:56px auto 82px;
  display:grid;
  grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);
  gap:58px;
  align-items:center;
}
.about-team-split-image{
  overflow:hidden;
  border-radius:24px;
  box-shadow:0 24px 60px rgba(6,21,47,.13);
  background:#f4f6f8;
}
.about-team-split-image img{
  display:block;
  width:100%;
  aspect-ratio:3/2;
  object-fit:cover;
  object-position:center;
}
.about-team-split-copy{max-width:580px;}
.about-team-split-copy h2{
  margin:0 0 24px;
  font-size:clamp(38px,4vw,60px);
  line-height:1.02;
  letter-spacing:-.05em;
  color:#071a38;
}
.about-team-split-copy h2 span{color:#d99f24;}
.about-team-split-copy>p:not(.eyebrow){
  margin:0 0 16px;
  font-size:17px;
  line-height:1.78;
  color:#5c6879;
}
.about-team-note{
  margin-top:25px;
  padding:18px 20px;
  border-left:4px solid #d99f24;
  border-radius:0 14px 14px 0;
  background:#f7f8fb;
  color:#344156;
  font-size:15px;
  line-height:1.65;
}
.about-team-note strong{color:#071a38;}
@media(max-width:900px){
  .about-team-split{
    width:min(92vw,720px);
    grid-template-columns:1fr;
    gap:34px;
    margin:38px auto 60px;
  }
  .about-team-split-copy{max-width:none;}
}
@media(max-width:700px){
  .about-team-split{width:92vw;margin:28px auto 52px;}
  .about-team-split-image{border-radius:16px;}
  .about-team-split-copy h2{font-size:40px;}
  .about-team-split-copy>p:not(.eyebrow){font-size:16px;}
}


/* V38 — même barre de navigation sur toutes les pages */
.about-page .site-header,
.pricing-page .site-header,
.inner-page .site-header{
  background:rgba(5,20,42,.96) !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 8px 30px rgba(4,17,39,.12) !important;
}
.about-page .site-header .brand img,
.pricing-page .site-header .brand img,
.inner-page .site-header .brand img{
  width:auto !important;
  height:37px !important;
  max-width:175px !important;
  object-fit:contain !important;
  object-position:left center !important;
  display:block !important;
  background:transparent !important;
  padding:0 !important;
}
.about-page .main-nav a,
.pricing-page .main-nav a,
.inner-page .main-nav a{color:#fff !important;}
.about-page .main-nav a:after,
.pricing-page .main-nav a:after,
.inner-page .main-nav a:after{background:linear-gradient(90deg,#12d9e9,#5b65ff,#d844e8,#ff8b45) !important;}
.about-page .header-cta,
.pricing-page .header-cta,
.inner-page .header-cta{
  background:linear-gradient(90deg,#12d9e9,#5b65ff 38%,#d844e8 68%,#ff9a49) !important;
  color:#fff !important;
  box-shadow:0 10px 28px rgba(93,93,255,.22) !important;
}
.about-page .menu-toggle,
.pricing-page .menu-toggle,
.inner-page .menu-toggle{color:#fff !important;}
@media(max-width:1100px){
  .about-page .site-header.menu-open .main-nav,
  .pricing-page .site-header.menu-open .main-nav,
  .inner-page .site-header.menu-open .main-nav{
    background:#071a38 !important;
    border:1px solid rgba(255,255,255,.10) !important;
  }
}
@media(max-width:700px){
  .about-page .site-header .brand img,
  .pricing-page .site-header .brand img,
  .inner-page .site-header .brand img{
    height:31px !important;
    max-width:148px !important;
  }
}


/* V40 — pied de page unifié : nouveau logo coloré sur toutes les pages */
.entrepreneur-needs{position:relative;padding:110px 24px;background:#f4f7fb;overflow:hidden;}
.entrepreneur-needs:before{content:"";position:absolute;width:420px;height:420px;right:-190px;top:-170px;border-radius:50%;background:radial-gradient(circle,rgba(88,101,242,.13),transparent 68%);}
.entrepreneur-needs-inner{position:relative;max-width:1180px;margin:0 auto;}
.entrepreneur-needs-intro{max-width:830px;margin:0 auto 55px;text-align:center;}
.entrepreneur-needs-intro .section-index{justify-content:center;}
.entrepreneur-needs-intro h2{margin:12px 0 20px;font-size:clamp(36px,5vw,62px);line-height:1.06;color:#071a38;}
.entrepreneur-needs-intro h2 span{color:#7655d9;}
.entrepreneur-needs-intro>p:last-child{margin:0 auto;max-width:760px;font-size:18px;line-height:1.75;color:#526078;}
.entrepreneur-needs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.entrepreneur-need-card{position:relative;padding:42px 38px 38px;background:rgba(255,255,255,.92);border:1px solid rgba(86,100,140,.14);border-radius:22px;box-shadow:0 18px 50px rgba(9,29,67,.08);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;}
.entrepreneur-need-card:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(9,29,67,.13);border-color:rgba(118,85,217,.25);}
.entrepreneur-need-number{display:block;margin-bottom:22px;font-size:54px;font-weight:800;line-height:1;background:linear-gradient(90deg,#12cddd,#5968ef 45%,#d04adf);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.42;}
.entrepreneur-need-card h3{margin:0 0 16px;font-size:24px;line-height:1.25;color:#071a38;}
.entrepreneur-need-card p{margin:0 0 20px;font-size:16px;line-height:1.7;color:#526078;}
.entrepreneur-need-card strong{display:block;font-size:16px;line-height:1.6;color:#192b4b;}
@media(max-width:750px){.entrepreneur-needs{padding:75px 18px;}.entrepreneur-needs-intro{margin-bottom:38px;}.entrepreneur-needs-intro>p:last-child{font-size:16px;}.entrepreneur-needs-grid{grid-template-columns:1fr;}.entrepreneur-need-card{padding:34px 27px 30px;}.entrepreneur-need-number{font-size:46px;}.entrepreneur-need-card h3{font-size:22px;}}

.site-footer .footer-brand img{
  width:auto !important;
  height:42px !important;
  max-width:190px !important;
  object-fit:contain !important;
  object-position:left center !important;
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
}
@media(max-width:700px){
  .site-footer .footer-brand img{
    height:38px !important;
    max-width:175px !important;
  }
}


/* V44 — Carrousel 3 écrans : responsive fluide sur desktop, tablette et mobile */
.carousel3-section{
  padding:clamp(34px,6vw,82px) 0 clamp(32px,5vw,76px)!important;
  background:#121820!important;
  overflow:hidden;
}
.carousel3{
  width:100%;
  max-width:1440px;
  margin:0 auto;
  position:relative;
  padding:0 clamp(10px,5vw,72px) 30px;
}
.carousel3-viewport{
  width:100%;
  overflow:hidden;
  touch-action:pan-y;
}
.carousel3-track{
  display:flex;
  width:100%;
  transition:transform .62s cubic-bezier(.22,.61,.36,1);
  will-change:transform;
}
.carousel3-slide{
  flex:0 0 100%;
  min-width:0;
  padding:18px 0 24px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.carousel3-devices{
  position:relative;
  width:min(1120px,100%);
  aspect-ratio:1120 / 610;
  height:auto;
  margin:0 auto;
}
.carousel3-devices:before{
  content:"";
  position:absolute;
  left:9%;right:7%;bottom:8%;height:19%;
  background:radial-gradient(ellipse at center,rgba(0,0,0,.46),transparent 72%);
  filter:blur(18px);opacity:.75;
}
.device-laptop,.device-tablet,.device-phone{
  position:absolute;
  filter:drop-shadow(0 28px 34px rgba(0,0,0,.32));
}
.device-screen{overflow:hidden;background:#0a0c10;position:relative;}
.device-screen img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}
.device-laptop{width:72%;left:8%;top:7%;z-index:1;}
.device-laptop .device-screen{aspect-ratio:16/9;border:11px solid #1b1e22;border-bottom-width:17px;border-radius:15px 15px 6px 6px;}
.device-laptop .device-base{height:18px;width:112%;margin-left:-6%;background:linear-gradient(#b9bcc0,#70747a);clip-path:polygon(0 0,100% 0,94% 100%,6% 100%);border-radius:0 0 13px 13px;box-shadow:0 6px 12px rgba(0,0,0,.35);}
.device-tablet{width:31%;right:7%;top:18%;z-index:3;}
.device-tablet .device-screen{aspect-ratio:4/5;border:10px solid #22262b;border-radius:22px;}
.device-phone{width:14.5%;right:1.8%;bottom:7%;z-index:4;}
.device-phone .device-screen{aspect-ratio:9/19.5;border:7px solid #1b1f24;border-radius:25px;}
.device-phone .device-screen:before{content:"";position:absolute;z-index:2;left:50%;top:5px;transform:translateX(-50%);width:34%;height:6px;border-radius:99px;background:#0b0c0e;}
.carousel3-arrow{
  position:absolute;top:47%;transform:translateY(-50%);z-index:10;
  width:48px;height:48px;border-radius:50%;
  border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.07);color:#fff;
  font-size:34px;line-height:1;display:grid;place-items:center;cursor:pointer;
  backdrop-filter:blur(8px);transition:.2s;
}
.carousel3-arrow:hover{background:rgba(255,255,255,.16);transform:translateY(-50%) scale(1.05);}
.carousel3-prev{left:14px}.carousel3-next{right:14px}
.carousel3-dots{display:flex;justify-content:center;gap:10px;margin-top:6px;}
.carousel3-dots button{width:8px;height:8px;border:0;border-radius:50%;background:rgba(255,255,255,.28);padding:0;cursor:pointer;transition:.25s;}
.carousel3-dots button.is-active{width:26px;border-radius:99px;background:#fff;}

@media(max-width:900px){
  .carousel3{padding-left:46px;padding-right:46px;padding-bottom:24px}
  .carousel3-slide{padding:10px 0 18px}
  .device-laptop .device-screen{border-width:8px;border-bottom-width:13px;border-radius:12px 12px 5px 5px}
  .device-laptop .device-base{height:14px}
  .device-tablet .device-screen{border-width:8px;border-radius:18px}
  .device-phone .device-screen{border-width:5px;border-radius:20px}
  .device-phone .device-screen:before{top:4px;height:5px}
  .carousel3-arrow{width:40px;height:40px;font-size:29px}
  .carousel3-prev{left:3px}.carousel3-next{right:3px}
}

@media(max-width:600px){
  .carousel3-section{padding:30px 0 28px!important}
  .carousel3{padding:0 14px 18px}
  .carousel3-slide{padding:6px 0 14px}
  .carousel3-devices{width:100%;aspect-ratio:1120 / 650}
  .device-laptop{width:76%;left:2%;top:10%}
  .device-tablet{width:33%;right:2%;top:20%}
  .device-phone{width:15.5%;right:0;bottom:8%}
  .device-laptop .device-screen{border-width:5px;border-bottom-width:8px;border-radius:8px 8px 3px 3px}
  .device-laptop .device-base{height:8px}
  .device-tablet .device-screen{border-width:5px;border-radius:12px}
  .device-phone .device-screen{border-width:3px;border-radius:12px}
  .device-phone .device-screen:before{top:2px;height:3px}
  .carousel3-arrow{width:32px;height:32px;font-size:23px;background:rgba(18,24,32,.82);border-color:rgba(255,255,255,.28)}
  .carousel3-prev{left:4px}.carousel3-next{right:4px}
  .carousel3-dots{margin-top:2px}
}

@media(max-width:380px){
  .carousel3{padding-left:8px;padding-right:8px}
  .carousel3-arrow{width:29px;height:29px;font-size:21px}
  .carousel3-prev{left:2px}.carousel3-next{right:2px}
  .device-laptop{width:75%;left:1%;}
  .device-tablet{width:32%;right:3%;}
  .device-phone{width:15%;right:0;}
}

/* V47 — Carrousel allégé : ordinateur + téléphone, mockups validés */
.carousel2screens{
  max-width:1560px;
  padding:0 clamp(42px,5vw,82px) 24px;
}
.carousel2screens .carousel3-slide{
  padding:0;
}
.carousel2screens .carousel3-mockup{
  width:min(1380px,100%);
  margin:0 auto;
  position:relative;
  overflow:hidden;
  border-radius:18px;
}
.carousel2screens .carousel3-mockup img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.carousel2screens .carousel3-arrow{
  top:50%;
}
.carousel2screens .carousel3-dots{
  margin-top:18px;
}

@media(max-width:900px){
  .carousel2screens{
    padding-left:44px;
    padding-right:44px;
    padding-bottom:18px;
  }
  .carousel2screens .carousel3-mockup{
    border-radius:12px;
  }
  .carousel2screens .carousel3-dots{
    margin-top:12px;
  }
}

@media(max-width:600px){
  .carousel3-section{
    padding:24px 0 22px!important;
  }
  .carousel2screens{
    padding-left:32px;
    padding-right:32px;
    padding-bottom:14px;
  }
  .carousel2screens .carousel3-mockup{
    width:100%;
    border-radius:8px;
  }
  .carousel2screens .carousel3-arrow{
    width:30px;
    height:30px;
    font-size:22px;
  }
  .carousel2screens .carousel3-prev{left:1px}
  .carousel2screens .carousel3-next{right:1px}
  .carousel2screens .carousel3-dots{
    margin-top:9px;
  }
}

/* V50 — Portfolio premium : indication de clic visible + aperçu détaillé plus compact */
.carousel2screens .project-preview{cursor:zoom-in;}
.carousel2screens .project-preview::after{
  content:"Voir le projet complet  ↗";position:absolute;right:22px;bottom:20px;z-index:4;
  padding:11px 17px;border-radius:999px;background:rgba(6,12,21,.82);color:#fff;
  border:1px solid rgba(255,255,255,.30);font-size:13px;font-weight:800;letter-spacing:.01em;
  backdrop-filter:blur(10px);opacity:1;transform:none;transition:.2s ease;pointer-events:none;
  box-shadow:0 8px 24px rgba(0,0,0,.24);
}
.carousel2screens .project-preview:hover::after,.carousel2screens .project-preview:focus-visible::after{
  background:rgba(6,12,21,.94);transform:translateY(-2px);border-color:rgba(255,255,255,.5);
}
/* L'image BATI RENOV contient deux flèches décoratives sur ses bords. On recadre davantage
   pour ne garder à l'écran que les vraies commandes du carrousel. */
.carousel2screens .carousel3-mockup-bati img{width:122%;max-width:none;margin-left:-11%;}
.project-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(5,9,15,.92);display:none;overflow:hidden;padding:64px clamp(14px,4vw,60px) 38px;}
.project-lightbox.is-open{display:flex;align-items:flex-start;justify-content:center;}
.project-lightbox-stage{
  width:min(680px,78vw);max-height:82vh;margin:0 auto;background:#fff;border-radius:14px;
  overflow:auto;box-shadow:0 28px 90px rgba(0,0,0,.45);
}
.project-lightbox-stage img{display:block;width:100%;height:auto;}
.project-lightbox-close{position:fixed;right:clamp(16px,3vw,42px);top:18px;z-index:10001;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(20,27,36,.88);color:#fff;font-size:30px;line-height:1;cursor:pointer;}
body.project-lightbox-open{overflow:hidden;}
@media(max-width:700px){
 .carousel2screens .project-preview::after{right:9px;bottom:9px;padding:7px 10px;font-size:10px;}
 .project-lightbox{padding:58px 8px 20px;}
 .project-lightbox-stage{width:min(92vw,560px);max-height:84vh;border-radius:8px;}
}

/* V52 — Page Réalisations : 5 univers, desktop + vrai aperçu mobile recomposé */
.portfolio-v52{background:#071a38;}
.portfolio-hero{position:relative;overflow:hidden;padding:clamp(72px,8vw,120px) 24px 60px;background:linear-gradient(145deg,#06162f 0%,#091d3e 60%,#07162d 100%);color:#fff;}
.portfolio-hero-inner{position:relative;z-index:2;max-width:1060px;margin:0 auto;text-align:center;}
.portfolio-hero .eyebrow{margin:0 0 14px;color:#62e2ff;font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:13px;}
.portfolio-hero h1{margin:0 auto 22px;max-width:900px;font-size:clamp(42px,6vw,76px);line-height:1.02;letter-spacing:-.04em;color:#fff;}
.portfolio-hero h1 span{background:linear-gradient(90deg,#36d7ff,#8d70ff,#ff6bba,#ff9b5b);-webkit-background-clip:text;background-clip:text;color:transparent;}
.portfolio-lead{max-width:820px;margin:0 auto;color:#c9d6ea;font-size:clamp(17px,2vw,20px);line-height:1.75;}
.portfolio-hero-glow{position:absolute;border-radius:50%;filter:blur(4px);pointer-events:none}.portfolio-hero-glow.g1{width:420px;height:420px;left:-180px;top:-170px;background:radial-gradient(circle,rgba(66,211,255,.18),transparent 70%)}.portfolio-hero-glow.g2{width:460px;height:460px;right:-160px;bottom:-270px;background:radial-gradient(circle,rgba(255,94,187,.16),transparent 70%)}
.portfolio-carousel-section{padding:54px 18px 76px;background:linear-gradient(180deg,#071a38,#0b1420 72%,#0d1118);color:#fff;overflow:hidden;}
.portfolio-carousel{position:relative;max-width:1280px;margin:0 auto;padding:0 58px 34px;}
.portfolio-viewport{overflow:hidden;touch-action:pan-y;}
.portfolio-track{display:flex;transition:transform .62s cubic-bezier(.22,.61,.36,1);will-change:transform;}
.portfolio-slide{flex:0 0 100%;min-width:0;padding:4px 10px 14px;opacity:.45;transition:opacity .35s ease}.portfolio-slide.is-active{opacity:1}
.portfolio-label{display:flex;align-items:baseline;gap:11px;margin:0 0 18px;padding-left:8px}.portfolio-label span{font-size:11px;font-weight:900;color:#63dfff;letter-spacing:.12em}.portfolio-label strong{font-size:clamp(17px,1.8vw,24px);color:#fff}.portfolio-label em{font-size:13px;font-style:normal;color:#8ea2be}
.portfolio-showcase{position:relative;display:flex;align-items:flex-end;justify-content:center;max-width:1120px;margin:0 auto;min-height:510px;}
.browser-frame{position:relative;width:min(920px,82%);background:#121820;border:1px solid rgba(255,255,255,.16);border-radius:18px;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.38);}
.browser-bar{height:32px;display:flex;align-items:center;gap:7px;padding:0 13px;background:#171e28;border-bottom:1px solid rgba(255,255,255,.08);color:#7e8da2;font-size:10px}.browser-bar i{width:7px;height:7px;border-radius:50%;background:#526071}.browser-bar b{margin-left:8px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.desktop-crop{height:455px;overflow:hidden;background:#fff}.desktop-crop img{display:block;width:100%;height:auto;min-height:100%;object-fit:cover;object-position:top center}.auto-desktop .desktop-crop img{height:100%;object-fit:cover;}
.phone-frame{position:relative;width:205px;height:418px;margin-left:-58px;margin-bottom:-14px;z-index:4;background:#090c11;border:7px solid #1e242c;border-radius:34px;box-shadow:0 25px 52px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.16) inset;overflow:hidden;flex:0 0 auto;}
.phone-notch{position:absolute;z-index:10;top:8px;left:50%;transform:translateX(-50%);width:78px;height:20px;border-radius:20px;background:#07090c;}
.mobile-screen{position:absolute;inset:0;background-position:center;background-size:cover;color:#fff;display:flex;flex-direction:column;overflow:hidden;}
.mobile-screen:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,8,15,.10) 12%,rgba(3,8,15,.12) 38%,rgba(3,8,15,.92) 88%);z-index:0;pointer-events:none}.mobile-screen>*{position:relative;z-index:1}
.mobile-top{height:66px;padding:27px 13px 9px;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.95);color:#102037;font-size:11px;font-weight:900}.mobile-top span{display:flex;align-items:center;gap:4px;line-height:1.05}.mobile-top small{display:block;font-size:5px;letter-spacing:.02em}.mobile-top b{font-size:18px}.mobile-top em{font-style:normal;color:#ff641d}.mobile-copy{margin-top:auto;padding:18px 15px 18px;text-shadow:0 2px 12px rgba(0,0,0,.35)}.mobile-copy small{font-size:7px;letter-spacing:.13em;font-weight:800}.mobile-copy h3{margin:7px 0 8px;font-size:24px;line-height:.98;letter-spacing:-.035em;color:#fff}.mobile-copy h3 mark{background:none;color:#ff6b12}.mobile-copy p{margin:0 0 12px;font-size:10px;line-height:1.35;color:#f3f6fb}.mobile-copy button{border:0;border-radius:999px;padding:9px 12px;font-size:8px;font-weight:900;background:#fff;color:#102037}.mobile-bati{background-image:url('assets/mobile-bati.webp')}.mobile-bati .mobile-copy button{background:#ff5c0a;color:#fff}.mobile-auto{background-image:url('assets/mobile-auto.webp')}.mobile-auto .mobile-top{background:rgba(5,19,34,.92);color:#fff}.mobile-auto .mobile-copy button{background:#ff6900;color:#fff}.mobile-jardin{background-image:url('assets/mobile-jardin.webp')}.mobile-jardin .mobile-top{color:#174827}.mobile-jardin .mobile-copy h3 mark{color:#9be65b}.mobile-jardin .mobile-copy button{background:#86c94c;color:#fff}.mobile-clean{background-image:url('assets/mobile-clean.webp')}.mobile-clean:after{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(12,66,127,.20) 45%,rgba(0,59,129,.94) 90%)}.mobile-clean .mobile-top{color:#08539b}.mobile-clean .mobile-copy h3 mark{color:#56c2ff}.mobile-clean .mobile-copy button{background:#fff;color:#0861ab}.mobile-lenestour{background-image:url('assets/mobile-lenestour.webp')}.mobile-lenestour .mobile-copy button{background:#caa257;color:#fff}.mobile-lenestour .mobile-top{color:#19344f}
.portfolio-arrow{position:absolute;top:53%;transform:translateY(-50%);z-index:20;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(10,20,34,.78);color:#fff;font-size:33px;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(10px);transition:.2s}.portfolio-arrow:hover{background:rgba(255,255,255,.12);transform:translateY(-50%) scale(1.05)}.portfolio-prev{left:4px}.portfolio-next{right:4px}
.portfolio-dots{display:flex;justify-content:center;gap:9px;margin-top:24px}.portfolio-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.26);cursor:pointer;transition:.25s}.portfolio-dots button.is-active{width:28px;border-radius:99px;background:#fff}
.partnership-block{padding:92px 24px 105px;background:linear-gradient(145deg,#f6faff 0%,#fff 48%,#f8f3ff 100%);color:#071a38}.partnership-inner{max-width:1040px;margin:0 auto}.partnership-block .section-index{margin-bottom:15px}.partnership-block h2{margin:0 0 28px;font-size:clamp(38px,5vw,64px);line-height:1.05;letter-spacing:-.04em}.partnership-block h2 span{color:#7655d9}.partnership-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin-bottom:34px}.partnership-grid p{margin:0;color:#4f5f78;font-size:17px;line-height:1.78}.partnership-cta{display:inline-flex;position:static!important;text-decoration:none}
@media(max-width:900px){.portfolio-carousel{padding-left:42px;padding-right:42px}.portfolio-showcase{min-height:430px}.browser-frame{width:86%}.desktop-crop{height:380px}.phone-frame{width:170px;height:350px;margin-left:-44px}.portfolio-label em{display:none}}
@media(max-width:650px){.portfolio-hero{padding:66px 18px 42px}.portfolio-hero h1{font-size:42px}.portfolio-lead{font-size:16px;line-height:1.65}.portfolio-carousel-section{padding:38px 8px 52px}.portfolio-carousel{padding:0 30px 24px}.portfolio-slide{padding:0 2px 10px}.portfolio-label{margin-bottom:12px;padding-left:3px;gap:8px}.portfolio-label strong{font-size:20px}.portfolio-showcase{min-height:305px;align-items:flex-end}.browser-frame{width:92%;border-radius:11px}.browser-bar{height:22px;padding:0 8px}.browser-bar i{width:5px;height:5px}.browser-bar b{font-size:7px}.desktop-crop{height:270px}.phone-frame{width:105px;height:218px;border-width:4px;border-radius:21px;margin-left:-28px;margin-bottom:-8px}.phone-notch{top:5px;width:42px;height:11px}.mobile-top{height:38px;padding:16px 7px 4px;font-size:6px}.mobile-top b{font-size:10px}.mobile-top small{font-size:3px}.mobile-copy{padding:8px 7px 8px}.mobile-copy small{font-size:4px}.mobile-copy h3{font-size:12px;margin:3px 0 4px}.mobile-copy p{font-size:5px;margin-bottom:5px}.mobile-copy button{font-size:4px;padding:5px 6px}.portfolio-arrow{width:30px;height:30px;font-size:22px}.portfolio-prev{left:0}.portfolio-next{right:0}.portfolio-dots{margin-top:15px}.portfolio-dots button{width:7px;height:7px}.portfolio-dots button.is-active{width:20px}.partnership-block{padding:64px 20px 72px}.partnership-grid{grid-template-columns:1fr;gap:20px}.partnership-grid p{font-size:16px}.partnership-cta{font-size:13px;padding:13px 16px!important}}
@media(max-width:390px){.portfolio-carousel{padding-left:25px;padding-right:25px}.desktop-crop{height:245px}.phone-frame{width:96px;height:198px;margin-left:-25px}.portfolio-showcase{min-height:278px}}


/* V53 — Réalisations : 5 mockups ordinateur + iPhone validés */
.portfolio-v52 .portfolio-carousel-section{padding-top:26px;padding-bottom:58px;}
.portfolio-v52 .portfolio-carousel{max-width:1220px;padding-left:62px;padding-right:62px;}
.portfolio-v52 .portfolio-slide{padding:4px 8px 12px;}
.validated-mockup-wrap{width:min(80%,832px);margin:0 auto;border-radius:22px;overflow:hidden;background:#101722;box-shadow:0 28px 72px rgba(0,0,0,.34);border:1px solid rgba(255,255,255,.10);}
.validated-mockup{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;}
.portfolio-v52 .portfolio-arrow{top:55%;}
@media(max-width:900px){.portfolio-v52 .portfolio-carousel{padding-left:48px;padding-right:48px}.validated-mockup-wrap{border-radius:16px}}
@media(max-width:650px){.portfolio-v52 .portfolio-carousel{padding-left:34px;padding-right:34px}.portfolio-v52 .portfolio-label{padding-left:0}.portfolio-v52 .portfolio-label strong{font-size:18px}.validated-mockup-wrap{border-radius:12px}.portfolio-v52 .portfolio-arrow{top:57%}}
@media(max-width:390px){.portfolio-v52 .portfolio-carousel{padding-left:30px;padding-right:30px}.portfolio-v52 .portfolio-label strong{font-size:17px}}

/* V54 — visuels du carrousel réduits de 20 % sur écran large */
@media(max-width:900px){.validated-mockup-wrap{width:min(92%,832px)}}
@media(max-width:650px){.validated-mockup-wrap{width:100%}}

/* V55 — visuels du carrousel réduits encore de 10 % par rapport à la V54 */
@media(min-width:901px){
  .validated-mockup-wrap{width:min(72%,749px)}
}

/* V56 — visuels encore -10 % + entrée dynamique de l'introduction */
@media(min-width:901px){
  .validated-mockup-wrap{width:min(64.8%,674px)}
}

.portfolio-scroll-reveal .eyebrow,
.portfolio-scroll-reveal h1,
.portfolio-scroll-reveal .portfolio-lead{
  opacity:0;
  transform:translateY(26px);
  filter:blur(5px);
}
.portfolio-scroll-reveal.is-visible .eyebrow,
.portfolio-scroll-reveal.is-visible h1,
.portfolio-scroll-reveal.is-visible .portfolio-lead{
  animation:portfolioIntroReveal .8s cubic-bezier(.22,.75,.25,1) forwards;
}
.portfolio-scroll-reveal.is-visible .eyebrow{animation-delay:.08s}
.portfolio-scroll-reveal.is-visible h1{animation-delay:.24s}
.portfolio-scroll-reveal.is-visible .portfolio-lead{animation-delay:.44s}
.portfolio-scroll-reveal h1 span{background-size:200% 100%;}
.portfolio-scroll-reveal.is-visible h1 span{
  animation:portfolioGradientMove 3.2s ease .65s both;
}
@keyframes portfolioIntroReveal{
  to{opacity:1;transform:translateY(0);filter:blur(0)}
}
@keyframes portfolioGradientMove{
  from{background-position:0% 50%}
  to{background-position:100% 50%}
}
@media(prefers-reduced-motion:reduce){
  .portfolio-scroll-reveal .eyebrow,
  .portfolio-scroll-reveal h1,
  .portfolio-scroll-reveal .portfolio-lead{
    opacity:1;transform:none;filter:none;animation:none
  }
  .portfolio-scroll-reveal h1 span{animation:none}
}

/* v76 — Les trois nouveaux mockups sont natifs en 16:9 : affichage intégral sans recadrage */
.validated-mockup-wrap--wide .validated-mockup{aspect-ratio:16/9;object-fit:contain;}

/* V78 — accueil portfolio + tarifs 3 formules */
.quick-access{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px;font-size:12px;font-weight:800;color:#5f6a7b}.quick-access span{margin-right:2px}.quick-access a{padding:8px 14px;border:1px solid #d8dde5;border-radius:999px;background:#fff;color:var(--navy);transition:.2s}.quick-access a:hover{border-color:var(--gold);transform:translateY(-1px)}
.home-portfolio{padding-top:88px}.home-section-head{max-width:1180px;margin:0 auto 34px;padding:0 58px}.home-section-head .section-index{margin-bottom:18px}.home-section-head .eyebrow{color:#efc36a;margin-bottom:12px}.home-section-head h2{font-size:clamp(42px,5vw,72px);line-height:.98;letter-spacing:-.05em;margin:0;color:#fff}.home-section-head h2 span{color:#efc36a}.home-section-head>p:last-child{max-width:720px;color:#c7d2df;line-height:1.7;font-size:16px}
.home-pricing{padding:105px 5vw;background:linear-gradient(180deg,#f7f4ed,#fff)}.home-pricing-inner{max-width:1380px;margin:auto}.home-pricing .section-index{margin-bottom:28px}.zero-creation{display:grid;grid-template-columns:minmax(240px,.55fr) 1.45fr;gap:50px;align-items:center;padding:38px 0 54px;border-bottom:1px solid #dedbd3}.zero-number{font-size:clamp(85px,12.75vw,179px);font-weight:950;letter-spacing:-.09em;line-height:.72;color:var(--navy)}.zero-creation h2{font-size:clamp(38px,4.5vw,68px);line-height:1;letter-spacing:-.05em;margin:0 0 18px;color:var(--navy)}.zero-creation p:last-child{font-size:18px;line-height:1.6;color:#596579;max-width:700px}.home-price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px;align-items:stretch}.home-price-grid article{position:relative;border:1px solid #e0e2e5;border-radius:24px;padding:30px;background:#fff;box-shadow:0 16px 45px rgba(6,21,47,.07);display:flex;flex-direction:column}.home-price-grid article>span{font-size:11px;letter-spacing:.13em;font-weight:900;color:#7c8490}.home-price-grid article>strong{font-size:58px;letter-spacing:-.06em;color:var(--navy);margin-top:12px}.home-price-grid article>em{font-style:normal;font-size:12px;font-weight:800;color:#77808e}.home-price-grid h3{font-size:22px;line-height:1.15;color:var(--navy);margin:22px 0 12px}.home-price-grid p{color:#667184;line-height:1.6}.home-price-grid a{margin-top:auto;padding-top:18px;color:var(--navy);font-weight:900}.home-price-featured{border:2px solid var(--gold)!important;transform:translateY(-8px)}.home-price-featured>b{position:absolute;right:18px;top:18px;background:var(--gold);color:#07162f;border-radius:999px;padding:7px 10px;font-size:9px;letter-spacing:.09em}.home-pricing-more{text-align:center;margin-top:34px}.price-growth{border-color:#d9c48d!important}.price-growth .price-label{color:#8a6920}.btn-growth{background:#102b52;color:#fff}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:1500px!important}.price-card{min-width:0}
@media(max-width:1000px){.home-price-grid,.pricing-grid{grid-template-columns:1fr!important}.home-price-featured{transform:none}.zero-creation{grid-template-columns:1fr;gap:22px}.zero-number{font-size:102px}.home-section-head{padding:0 40px}}@media(max-width:650px){.home-section-head{padding:0 28px}.home-portfolio{padding-top:62px}.home-pricing{padding:75px 20px}.zero-number{font-size:89px}.quick-access{margin-top:14px}}

/* ===== V78 — 2 ajustements validés : bulle tarifs + fond bloc 05 accueil ===== */
/* 1. Page Tarifs : conserver exactement la photo actuelle, dégager le visage */
.pricing-person-bubble{
  left:18px;
  top:18px;
  width:min(210px,42%);
  padding:15px 16px;
}
.pricing-person-bubble b{font-size:15px;line-height:1.25}
.pricing-person-bubble span{font-size:11px;line-height:1.35}

/* 2. Accueil — bloc 05 Tarifs : gris très clair + trame légère */
.home-pricing{
  background-color:#f4f6f8;
  background-image:
    radial-gradient(circle at 1px 1px, rgba(30,61,98,.075) 1px, transparent 1.15px),
    linear-gradient(180deg,#f7f8fa 0%,#f1f4f7 100%);
  background-size:22px 22px,100% 100%;
}

@media(max-width:650px){
  .pricing-person-bubble{left:12px;top:12px;width:min(190px,48%);padding:12px 13px}
  .pricing-person-bubble b{font-size:14px}
  .pricing-person-bubble span{font-size:10px}
}

/* ===== V79 — Accueil / présentation des 3 tarifs ===== */
.home-price-grid{gap:28px;margin-top:38px}
.home-price-grid article{
  border:1px solid #e0e4ea;
  border-radius:30px;
  padding:38px 34px 32px;
  min-height:445px;
  box-shadow:0 18px 48px rgba(6,21,47,.07);
}
.home-price-grid article:first-child{border-top:4px solid transparent;border-image:linear-gradient(90deg,#1685f8,#7554ff,#d2a631) 1}
.home-price-grid article:first-child{border-image:none;border-top-color:#2584f5}
.home-price-grid article:first-child>span{color:#b57912}
.home-price-grid article:first-child>strong{
  background:linear-gradient(90deg,#1685f8 0%,#7455ff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.home-price-grid article>span{font-size:12px;letter-spacing:.15em;color:#a97516}
.home-price-grid article>strong{font-size:68px;line-height:1;letter-spacing:-.055em;margin-top:22px}
.home-price-grid article>em{font-size:13px;margin-top:3px}
.home-price-grid h3{font-size:28px;line-height:1.08;margin:26px 0 20px}
.home-price-grid p{font-size:16px;line-height:1.65}
.home-price-grid a{padding-top:28px;font-size:16px;text-decoration:none}

.home-price-grid .home-price-featured{
  background:linear-gradient(145deg,#0b2142 0%,#102f59 100%);
  border:0!important;
  transform:translateY(-10px);
  box-shadow:0 28px 65px rgba(7,27,60,.23);
}
.home-price-featured>b{
  right:28px;top:-17px;
  background:linear-gradient(90deg,#ffbe26,#ff8f2b,#ff3d98);
  padding:11px 18px;font-size:10px;letter-spacing:.12em;
  box-shadow:0 8px 22px rgba(255,137,53,.24);
}
.home-price-featured>span{color:#ffd05a!important}
.home-price-featured>strong,.home-price-featured h3,.home-price-featured a{color:#fff!important}
.home-price-featured>em{color:#c9d5e5!important}
.home-price-featured p{color:#cbd8e8!important}

.home-price-grid article:nth-child(3){border:1.5px solid #d7a42c}
.home-price-grid article:nth-child(3)>span{color:#a97516}

@media(max-width:1000px){
  .home-price-grid article{min-height:auto}
  .home-price-grid .home-price-featured{transform:none;margin:8px 0}
}
@media(max-width:650px){
  .home-price-grid article{padding:32px 25px 28px;border-radius:24px}
  .home-price-grid article>strong{font-size:58px}
  .home-price-grid h3{font-size:25px}
}

/* CTA appel direct sous les tarifs — v83 */
.btn-call-gradient{background:linear-gradient(100deg,#16bff3 0%,#5368ff 28%,#c43be8 58%,#ff3f9a 78%,#ff9a3d 100%);color:#fff;box-shadow:0 14px 32px rgba(108,74,230,.28);font-weight:800;border:0;padding:16px 28px}
.btn-call-gradient:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(108,74,230,.36);filter:saturate(1.05)}

/* V84 — CTA appel : icône téléphone moderne */
.btn-call-gradient{display:inline-flex;align-items:center;justify-content:center;gap:12px}
.btn-call-gradient .call-icon{width:24px;height:24px;flex:0 0 24px;color:#fff}


/* v88 — page Pourquoi nous choisir : mise en page éditoriale / interview */
.why-page{background:#fbfbfa}.why-main{max-width:1600px;margin:auto;background:#fff}.why-hero{display:grid;grid-template-columns:47% 53%;position:relative;min-height:560px;border-bottom:1px solid #eee}.why-hero-copy{padding:48px 4.7vw 42px;align-self:center;z-index:2}.why-kicker{color:#c99735;letter-spacing:.34em;font-weight:700;font-size:14px;margin:0 0 20px}.why-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(54px,5.7vw,88px);line-height:.91;letter-spacing:-.045em;color:#071a3b;margin:0}.why-hero h2{font-family:Georgia,"Times New Roman",serif;color:#c98f22;font-size:clamp(32px,3.1vw,50px);margin:10px 0 20px;line-height:1}.why-hero-copy>p:last-child{font-size:17px;line-height:1.55;color:#35445c;max-width:680px}.why-hero-photo{padding:0;display:flex;align-items:center;justify-content:center;background:#f5f3ee;overflow:hidden}.why-hero-photo img{width:100%;height:auto;object-fit:contain;display:block}.why-hero-quote{position:absolute;right:3.5%;top:60px;z-index:3;text-align:right;color:#071a3b;pointer-events:none}.why-hero-quote strong{font-family:"Segoe Print","Bradley Hand",cursive;font-size:27px;line-height:1.25;display:block;transform:rotate(-4deg);text-shadow:0 1px 0 #fff}.why-hero-quote span{display:block;margin-top:26px;font-family:"Segoe Print","Bradley Hand",cursive;font-size:17px}.why-hero-quote small{font-family:Inter,Arial,sans-serif;font-size:11px}.why-editorial{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;padding:30px 4.5vw 20px}.why-answer{display:grid;grid-template-columns:62px 1fr;gap:8px;padding:18px 22px 28px 0}.why-number{font:700 48px/1 Georgia,serif;color:#c98f22}.why-answer h3{font:700 23px/1.05 Georgia,serif;color:#071a3b;margin:3px 0 15px}.why-answer p{font-size:14px;line-height:1.48;color:#566277;margin:0 0 7px}.why-photo{margin:0 20px 20px;min-height:290px;border-radius:3px;overflow:hidden;background:linear-gradient(135deg,#f2eee5,#fff);position:relative}.why-notes-art{height:100%;min-height:290px;padding:40px;background:linear-gradient(145deg,#d6c7ad,#faf7f0);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:26px}.why-notes-art span{font-family:Georgia,serif;font-style:italic;text-align:center;line-height:1.5}.why-notes-art b{font-family:"Segoe Print",cursive;font-weight:400;line-height:1.65;transform:rotate(-4deg);color:#27344b}.why-big-quote{margin:0 20px 20px 0;padding:35px 28px;background:#fbf1df;font-family:"Segoe Print","Bradley Hand",cursive;color:#071a3b;font-size:25px;line-height:1.45;text-align:center;display:flex;align-items:center;border-radius:3px}.why-books{height:100%;min-height:290px;background:linear-gradient(135deg,#d8c8b0,#faf7ef);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.why-books span{display:block;background:#f7f3ec;border:1px solid #b8aa96;width:68%;padding:7px 16px;text-align:center;font-family:Georgia,serif;box-shadow:0 2px 3px #0001}.why-work-art{min-height:290px;height:100%;background:linear-gradient(135deg,#e5ded1,#faf8f4);display:flex;align-items:center;justify-content:center;padding:30px}.why-work-art span{font-family:Georgia,serif;font-size:25px;line-height:1.45;text-align:center;color:#071a3b}.why-a4{grid-column:1}.why-a5{grid-column:3}.why-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding:24px 4.5vw 30px;border-top:1px solid #eee}.why-benefits div{display:grid;grid-template-columns:48px 1fr;column-gap:12px;align-items:start}.why-benefits i{grid-row:1/3;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f5e8ee;color:#c75a83;font-style:normal}.why-benefits div:nth-child(2) i{background:#e4f2ff;color:#2687dd}.why-benefits div:nth-child(3) i{background:#fff0d4;color:#d69a21}.why-benefits div:nth-child(4) i{background:#f0e5ff;color:#8d54d9}.why-benefits strong{font-size:13px;line-height:1.25;color:#071a3b}.why-benefits p{grid-column:2;font-size:11px;line-height:1.4;color:#667286;margin:6px 0 0}.why-call{margin:0 3vw 38px;padding:28px 40px;border-radius:22px;background:linear-gradient(100deg,#dff5ff,#eee4ff 55%,#ffe2ef);display:flex;align-items:center;justify-content:space-between;gap:30px}.why-call span{font-weight:800;font-size:13px}.why-call h2{margin:3px 0;font:700 28px/1.1 Georgia,serif;color:#071a3b}.why-call p{margin:5px 0 0;color:#5d697c;font-size:13px}.why-call a{min-width:390px;display:flex;align-items:center;justify-content:center;gap:10px;padding:18px 26px;border-radius:999px;color:#fff;font-weight:800;background:linear-gradient(90deg,#13c8ed,#6b5cff,#f146bd,#ff8b52);box-shadow:0 12px 30px #9459cf2c}.why-call svg{width:21px;fill:#fff}.why-call b{font-size:23px}.why-page .main-nav{gap:18px;font-size:13px}.why-page .site-header{padding-left:4vw;padding-right:4vw}
@media(max-width:1250px){.why-hero{grid-template-columns:1fr}.why-hero-photo{padding:0 5vw 35px}.why-hero-photo img{width:100%;max-width:1000px}.why-hero-quote{display:none}.why-editorial{grid-template-columns:1fr 1fr}.why-a4,.why-a5{grid-column:auto}.why-benefits{grid-template-columns:1fr 1fr}.why-call{flex-direction:column;align-items:flex-start}.why-call a{min-width:0;width:100%}}
@media(max-width:760px){.why-hero-copy{padding:42px 22px 28px}.why-hero h1{font-size:50px}.why-hero h2{font-size:31px}.why-hero-photo{padding:0}.why-editorial{grid-template-columns:1fr;padding:20px}.why-answer,.why-a4,.why-a5{grid-column:1;padding-right:0}.why-photo,.why-big-quote{margin:0 0 24px}.why-benefits{grid-template-columns:1fr;padding:25px 22px}.why-call{margin:0 16px 30px;padding:25px 22px}.why-call h2{font-size:25px}}
/* v89 — corrections page Pourquoi nous choisir */
/* Le menu reprend strictement les dimensions et espacements communs aux autres pages. */
.why-page .site-header{padding-left:clamp(22px,4vw,70px);padding-right:clamp(22px,4vw,70px)}
.why-page .main-nav{gap:clamp(18px,2.1vw,34px);font-size:inherit}

/* Portrait : image complète, jamais rognée, mais visuellement plus petite. */
.why-hero{grid-template-columns:54% 46%;min-height:0;align-items:center}
.why-hero-photo{background:#fff;padding:34px 34px 34px 10px;overflow:visible}
.why-hero-photo img{width:100%;height:auto;max-width:650px;object-fit:contain;display:block;margin:auto}

/* La citation reste avec le texte de l'interview et ne recouvre plus la photo. */
.why-hero-quote{position:static;text-align:left;margin-top:24px;color:#071a3b;pointer-events:auto;max-width:470px}
.why-hero-quote strong{font-family:"Segoe Print","Bradley Hand",cursive;font-size:25px;line-height:1.22;display:block;transform:rotate(-2deg);text-shadow:none}
.why-hero-quote span{display:block;margin-top:12px;font-family:"Segoe Print","Bradley Hand",cursive;font-size:15px}
.why-hero-quote small{font-family:Inter,Arial,sans-serif;font-size:11px}

/* Les trois illustrations proposées sont maintenant de vraies images. */
.why-photo{background:#f6f3ed;display:flex;align-items:center;justify-content:center}
.why-photo img{width:100%;height:100%;min-height:290px;object-fit:cover;display:block}

@media(max-width:1250px){
  .why-hero{grid-template-columns:1fr}
  .why-hero-photo{padding:0 5vw 35px}
  .why-hero-photo img{max-width:850px}
  .why-hero-quote{display:block}
}
@media(max-width:760px){
  .why-hero-photo{padding:0 22px 28px}
  .why-photo img{min-height:230px}
}

/* V98 — finitions pré-mise en ligne */
.pricing-legal-note{max-width:980px;margin:20px auto 0;text-align:center;font-size:.88rem;line-height:1.5;opacity:.78}
.required-mark{color:currentColor;font-weight:800}
.required-note{display:block;margin:2px 0 10px;font-size:.78rem;opacity:.72}

/* V100 — Qui sommes-nous : cadrage compact du bloc équipe */
@media (min-width:901px){
  .about-page .about-team-split-image{
    height:380px !important;
    min-height:0 !important;
    align-self:center !important;
  }
  .about-page .about-team-split-image img{
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    object-position:center center !important;
  }
}

/* ===== V103 — Tarifs : 69 / Visibilité ++ 119 / Achat 1290 ===== */
.pricing-page .pricing-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  max-width:1500px!important;
  gap:28px!important;
  align-items:stretch!important;
}
.pricing-page .price-card{
  min-width:0;
  display:flex;
  flex-direction:column;
}
.pricing-page .price-card .price-features{flex:1}
.pricing-page .price-head h3{margin-bottom:18px}
.pricing-page .price-head>p{min-height:0!important}
.pricing-page .creation-offer{
  margin:-2px 0 18px;
  padding:11px 14px;
  border-radius:16px;
  background:linear-gradient(135deg,#f3f7ff,#fff8e9);
  border:1px solid #e3eaf4;
  text-align:center;
  color:#102749;
}
.pricing-page .creation-offer b,
.pricing-page .creation-offer span{display:block}
.pricing-page .creation-offer b{font-size:13px;font-weight:900;letter-spacing:.01em}
.pricing-page .creation-offer span{font-size:11px;color:#6d7889;margin-top:3px}
.pricing-page .creation-offer-dark{
  background:rgba(255,255,255,.09);
  border-color:rgba(255,255,255,.14);
  color:#fff;
}
.pricing-page .creation-offer-dark span{color:#c8d5e6}

.pricing-page .price-visibility{
  transform:translateY(-12px);
  border:2px solid transparent;
  background:
    linear-gradient(145deg,#0b2142,#102f59) padding-box,
    linear-gradient(90deg,#18bde9,#7458f3 48%,#ff3d98 78%,#f2a629) border-box;
}
.pricing-page .price-visibility .popular-badge{
  left:50%;right:auto;top:-18px;transform:translateX(-50%);
  white-space:nowrap;
  background:linear-gradient(90deg,#ffbe26,#ff8f2b,#ff3d98);
  color:#101d35;
  padding:10px 18px;
}
.pricing-page .price-visibility .price-label{font-size:13px;color:#ffd05a}
.pricing-page .visibility-powerline{
  margin:-6px 0 20px;
  display:flex;
  flex-direction:column;
  gap:4px;
  text-align:left;
  color:#fff;
  font-weight:900;
  letter-spacing:.07em;
  line-height:1.18;
}
.pricing-page .visibility-powerline b{color:#ffd05a;font-size:14px}
.pricing-page .visibility-powerline span{font-size:13px}
.pricing-page .price-visibility .price-features h4{color:#fff}
.pricing-page .price-visibility .price strong{color:#fff}
.pricing-page .price-visibility .btn-punch{
  background:linear-gradient(90deg,#18bde9,#7458f3 48%,#ff3d98 78%,#ff9e36);
  color:#fff!important;
  border:0;
  font-weight:900;
}

.pricing-page .price-purchase{
  border-top:5px solid #d6a02d;
  background:#fff;
}
.pricing-page .price-purchase .price-label{color:#9a6b11}
.pricing-page .price-purchase .price strong{
  color:#071b3c;
  font-size:clamp(54px,4.5vw,72px);
}
.pricing-page .price-purchase .purchase-once{
  margin-top:4px;
  color:#263a58;
  font-size:15px;
}
.pricing-page .maintenance-option{
  display:grid;
  grid-template-columns:46px 1fr;
  gap:14px;
  align-items:start;
  margin:0 0 24px;
  padding:18px;
  border-radius:20px;
  background:linear-gradient(135deg,#edf5ff,#f5f2ff);
  border:1px solid #dfe8f5;
  color:#102749;
}
.pricing-page .maintenance-icon{
  width:42px;height:42px;border-radius:12px;
  display:grid;place-items:center;
  background:#fff;border:1px solid #d6e1ef;
  font-size:24px;color:#0d3768;font-weight:900;
}
.pricing-page .maintenance-option b,
.pricing-page .maintenance-option span,
.pricing-page .maintenance-option strong{display:block}
.pricing-page .maintenance-option b{font-size:14px;margin-bottom:5px}
.pricing-page .maintenance-option span{font-size:12px;line-height:1.45;color:#5d6d83}
.pricing-page .maintenance-option strong{font-size:27px;color:#126ed0;margin-top:10px;letter-spacing:-.03em}
.pricing-page .maintenance-option small{font-size:12px;color:#314a69;letter-spacing:0}
.pricing-page .btn-purchase{
  width:100%;justify-content:center;text-align:center;
  color:#0a2346!important;background:#fff;
  border:2px solid #d6a02d!important;
  font-weight:900;
}
.pricing-page .btn-purchase:hover{background:#fff8e8;transform:translateY(-3px)}

@media(max-width:1100px){
  .pricing-page .pricing-grid{grid-template-columns:1fr!important;max-width:760px!important}
  .pricing-page .price-visibility{transform:none}
  .pricing-page .price-visibility .popular-badge{top:-16px}
}
@media(max-width:650px){
  .pricing-page .visibility-powerline{text-align:left}
  .pricing-page .price-visibility .popular-badge{font-size:9px;padding:9px 12px;max-width:90%;white-space:normal;text-align:center}
  .pricing-page .maintenance-option{grid-template-columns:38px 1fr;padding:15px}
  .pricing-page .maintenance-icon{width:36px;height:36px;font-size:20px}
}


/* ===== V105 — Tarifs : cartes plus compactes, sans grands espaces vides ===== */
.pricing-page .pricing-grid{
  align-items:start!important;
}
.pricing-page .price-card{
  height:auto!important;
  padding:38px 38px 34px;
}
.pricing-page .price-card .price-features{
  flex:none!important;
  margin:22px 0 20px;
}
.pricing-page .price-features h4{
  margin-bottom:10px;
}
.pricing-page .price-features li{
  padding-top:11px;
  padding-bottom:11px;
}
.pricing-page .price-features li:before{
  top:11px;
}
.pricing-page .price-head h3{
  margin-top:12px;
  margin-bottom:15px;
}
.pricing-page .price{
  margin-top:6px;
  margin-bottom:14px;
}
.pricing-page .creation-offer{
  margin-bottom:14px;
}
.pricing-page .price-card>.btn{
  margin-top:0;
}
.pricing-page .price-visibility .popular-badge{
  min-width:130px;
  text-align:center;
}
.pricing-page .maintenance-option{
  margin-top:2px;
  margin-bottom:18px;
}
@media(max-width:650px){
  .pricing-page .price-card{padding:34px 24px 30px}
}


/* V107 — Portfolio : le carrousel passe avant le texte, visible immédiatement sur mobile */
.realisations-page main > .portfolio-carousel-section:first-child{padding-top:26px;}
.realisations-page main > .portfolio-carousel-section:first-child + .portfolio-hero{padding-top:68px;}
@media(max-width:650px){
  .realisations-page main > .portfolio-carousel-section:first-child{padding-top:16px;padding-bottom:42px;}
  .realisations-page main > .portfolio-carousel-section:first-child + .portfolio-hero{padding-top:54px;}
}


/* V114 — accès visible aux 3 pages pédagogiques depuis l'accueil */
.home-guides{padding:110px 7vw;background:#f5f7fb;position:relative;overflow:hidden}.home-guides:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-190px;top:-180px;background:radial-gradient(circle,rgba(91,101,255,.12),transparent 68%)}.home-guides-inner{max-width:1320px;margin:0 auto;position:relative}.home-guides-heading{max-width:860px;margin:12px 0 46px}.home-guides-heading h2{font-size:clamp(40px,4.6vw,68px);line-height:1.02;letter-spacing:-.05em;margin:0 0 20px;color:var(--navy)}.home-guides-heading h2 span{color:var(--gold)}.home-guides-heading>p:not(.eyebrow){max-width:760px;color:#637084;line-height:1.75;font-size:17px}.home-guides-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home-guide-card{position:relative;background:#fff;border:1px solid #e1e6ed;border-radius:28px;padding:30px;min-height:335px;display:flex;flex-direction:column;transition:.28s;box-shadow:0 14px 36px rgba(6,21,47,.045)}.home-guide-card:hover{transform:translateY(-7px);box-shadow:0 28px 62px rgba(6,21,47,.12)}.home-guide-card.featured{background:linear-gradient(145deg,#071a38,#103864);border-color:#103864;color:#fff}.home-guide-no{position:absolute;right:25px;top:23px;font-size:12px;font-weight:950;color:#b17e1d;letter-spacing:.12em}.home-guide-card.featured .home-guide-no{color:#efc36a}.home-guide-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#f5efe3;color:#9f6e16;font-weight:950;font-size:18px;margin:30px 0 38px}.home-guide-card.featured .home-guide-icon{background:rgba(255,255,255,.10);color:#efc36a}.home-guide-card h3{font-size:28px;line-height:1.08;margin:0 0 14px;color:var(--navy)}.home-guide-card.featured h3{color:#fff}.home-guide-card p{color:#667286;line-height:1.7;margin:0 0 24px}.home-guide-card.featured p{color:#c4cfdd}.home-guide-card b{margin-top:auto;color:#0b2349;font-size:14px}.home-guide-card.featured b{color:#efc36a}@media(max-width:900px){.home-guides-grid{grid-template-columns:1fr}.home-guide-card{min-height:0}}@media(max-width:720px){.home-guides{padding:76px 20px}.home-guides-heading{margin-bottom:30px}.home-guide-card{padding:25px}.home-guide-icon{margin:25px 0 28px}}

/* ===== V121 — corrections mobiles avant mise en ligne ===== */

/* Qui sommes-nous : la photo d'équipe reste entière et plus discrète sur tablette/téléphone. */
@media (max-width:900px){
  .about-page .about-team-split-image{
    width:min(86vw,560px) !important;
    height:auto !important;
    min-height:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
    overflow:hidden !important;
  }
  .about-page .about-team-split-image img{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    object-position:center center !important;
  }
}
@media (max-width:700px){
  .about-page .about-team-split-image{
    width:min(84vw,440px) !important;
    border-radius:14px !important;
  }
}

/* Tarifs : on garde la bulle, mais on dégage nettement le visage. */
.pricing-page .pricing-person img{
  transform:translateX(72px);
}
.pricing-page .pricing-person-bubble{
  left:16px !important;
  top:18px !important;
  width:min(190px,36%) !important;
}
@media (max-width:650px){
  .pricing-page .pricing-person img{
    transform:translateX(55px) !important;
  }
  .pricing-page .pricing-person-bubble{
    left:10px !important;
    top:12px !important;
    width:42% !important;
    padding:11px 12px !important;
  }
  .pricing-page .pricing-person-bubble b{font-size:13px !important;}
  .pricing-page .pricing-person-bubble span{font-size:9px !important;}
}
