@font-face{font-family:"Source Serif 4";src:url("assets/fonts/source-serif-4-italic.ttf") format("truetype");font-style:italic;font-weight:200 900;font-display:swap}
/* Aquicod — une maquette sans dépendance ni compilation. */
@font-face{font-family:AquicodFallback;src:local('Arial');font-display:swap}
:root{--ink:#182b36;--paper:#f8e4d8;--yellow:#edec73;--blue:#c1d9e7;--pink:#ead3d8;--line:#c9cdd0;--muted:#58646c;--gutter:clamp(24px,5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}body.menu-open{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{touch-action:manipulation}button{border:0}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #ad571e;outline-offset:6px}button:disabled{cursor:wait}::selection{background:var(--yellow);color:var(--ink)}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;line-height:1.05;letter-spacing:-.055em}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}h2{font-size:clamp(36px,4.4vw,66px)}p{line-height:1.65}button svg{pointer-events:none}[hidden]{display:none!important}.section-pad{padding:100px var(--gutter)}.eyebrow{font-size:12px;letter-spacing:.13em;font-weight:600}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;z-index:100;top:10px;left:10px;background:var(--yellow);padding:12px}.header{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:20px var(--gutter);height:96px;background:var(--paper);border-bottom:1px solid var(--line)}.logo{font-size:36px;line-height:1;font-weight:700;letter-spacing:-2.5px;white-space:nowrap;display:inline-flex;align-items:center}.logo>span:first-child{font-weight:400}.logo-star{display:inline-block;font-weight:400;font-size:40px;margin-left:7px;line-height:1}.desktop-nav{display:flex;gap:30px;font-size:14px}.desktop-nav a{position:relative}.desktop-nav a:after{content:'';height:1px;width:0;position:absolute;left:0;bottom:-5px;background:var(--ink);transition:width .25s}.desktop-nav a:hover:after{width:100%}.header-actions{display:flex;gap:28px;align-items:center}.contact-link{font-size:14px;background:var(--yellow);border:1px solid var(--ink);border-radius:50%;padding:12px 21px;transform:rotate(-6deg);transition:transform .25s}.contact-link:hover{transform:rotate(0)}.menu-toggle{display:flex;gap:13px;align-items:center;background:transparent;font-size:14px;padding:10px 0}.menu-icon{width:23px;display:grid;gap:6px}.menu-icon i{height:1px;background:var(--ink);transition:transform .25s}.menu-toggle[aria-expanded=true] i:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] i:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mega-menu{position:fixed;inset:96px 0 0;z-index:35;background:var(--yellow);padding:60px var(--gutter);display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;overflow:auto;animation:menu-in .3s ease}.menu-intro{display:flex;align-items:flex-start;flex-direction:column;gap:20px}.menu-intro p{font-size:clamp(30px,4vw,64px);line-height:1.1;letter-spacing:-.05em;margin:20px 0}.menu-intro>span:last-child{font-size:14px}.mega-menu nav a{display:flex;align-items:center;gap:24px;padding:24px 0;border-bottom:1px solid #182b3650;font-size:clamp(22px,3vw,43px);line-height:1.25;letter-spacing:-.045em}.mega-menu nav small{font-size:12px;letter-spacing:0}.mega-menu nav a>span{margin-left:auto;transition:transform .3s}.mega-menu nav a:hover>span{transform:rotate(90deg)}
.hero{padding-top:29px;padding-bottom:25px;overflow:hidden}.hero-top{display:flex;justify-content:space-between;align-items:center}.hero-note{font-family:Georgia,serif;font-size:14px;font-style:italic}.hero-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:28px;min-height:570px;align-items:center}.hero-copy{padding:35px 0 40px}.hero h1{font-size:clamp(65px,7.5vw,114px);line-height:.98;letter-spacing:-.065em}.hero h1 em{position:relative;z-index:0}.hero h1 em:after{content:'';position:absolute;z-index:-1;left:-7px;right:-8px;bottom:3px;height:25%;background:var(--yellow);transform:rotate(-3deg)}.period{color:var(--ink)}.hero-copy>p{margin:29px 0 27px;font-size:17px;color:#485660}.button{display:inline-flex;align-items:center;gap:32px;padding:16px 24px;border-radius:3px;font-size:14px;transition:background .2s,transform .2s}.button-dark{background:var(--ink);color:var(--paper)}.button:hover{background:#304b59;transform:translateY(-3px)}.button>span{font-size:24px;line-height:1}.playground{height:500px;position:relative;isolation:isolate}.orbit{position:absolute;border:1px solid #182b3625;border-radius:50%;width:90%;height:65%;left:4%;top:15%;transform:rotate(-30deg)}.orbit-two{width:72%;height:91%;left:15%;top:0;transform:rotate(-32deg)}.hero-star{position:absolute;left:10%;top:9%;width:80%;aspect-ratio:1;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.hero-star svg{width:100%;height:100%;fill:var(--yellow);stroke:var(--ink);stroke-width:1.1}.star-face{position:absolute;inset:29% 20%;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.2;font-size:clamp(16px,1.65vw,25px);letter-spacing:-.03em;transform:rotate(-9deg)}.star-face .plus{font-family:Georgia,serif;font-size:30px;line-height:1.4}.smile{font:70px/35px Georgia,serif;transform:rotate(-4deg);margin-top:8px}.word-tag{position:absolute;border:1px solid var(--ink);padding:10px 20px;font-size:14px;border-radius:3px;z-index:2;box-shadow:3px 3px 0 #182b3613;white-space:nowrap;transition:transform .65s cubic-bezier(.2,.8,.2,1),background .3s}.tag-top{background:var(--blue);top:8%;left:28%;transform:rotate(-8deg)}.tag-left{background:var(--paper);left:0;top:58%;transform:rotate(-12deg)}.tag-right{background:var(--pink);right:-1%;top:48%;transform:rotate(11deg)}.hand-note{font:italic 20px/1.3 Georgia,serif;display:block;transform:rotate(-7deg)}.playground>.hand-note{position:absolute;right:3%;bottom:16%;font-size:18px}.mix-control{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;flex-direction:column;gap:4px}.mix-button{border:1px solid var(--ink);background:transparent;border-radius:30px;padding:9px 19px;font-size:14px}.mix-button:hover{background:var(--yellow)}.mix-button>span{display:inline-block;font-size:23px;line-height:1;vertical-align:middle;margin-right:7px}.mix-control>span{font-size:12px;color:var(--muted)}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);padding-top:20px;font-size:10px;letter-spacing:.08em}.hero-bottom>a{font-size:12px;letter-spacing:0}.hero-bottom>a span{font-size:20px;margin-left:15px}.ribbon{padding:20px 0;background:var(--yellow);display:flex;justify-content:space-around;gap:30px;white-space:nowrap;overflow:hidden;font-size:26px;line-height:1}.ribbon>span{font-size:15px;font-weight:500;line-height:26px}
.section-heading{text-align:center}.section-heading h2{margin:24px 0 20px}.section-heading p{color:var(--muted)}.service-layout{display:grid;grid-template-columns:1.16fr 1fr;gap:6vw;align-items:center;margin-top:50px}.constellation{position:relative;aspect-ratio:1.1}.constellation-note{display:block;text-align:center;font:italic 16px Georgia,serif;transform:rotate(-5deg);margin-top:0}.service-star{width:100%;height:100%;position:absolute;inset:0;fill:var(--yellow);stroke:var(--ink);stroke-width:1;transition:transform .65s ease}.star-lines{fill:none;opacity:.22;stroke-dasharray:3 5}.star-center{position:absolute;top:38%;left:38%;width:25%;font-size:26px;line-height:1.1;text-align:center;letter-spacing:-.04em}.star-center>span{display:block;font-size:36px;margin-top:12px}.service-tab{position:absolute;min-height:47px;border:1px solid var(--ink);border-radius:30px;background:var(--paper);padding:9px 15px;font-size:13px;white-space:nowrap;transition:color .2s,background .2s,box-shadow .2s}.service-tab span{font-size:10px;margin-right:8px}.service-tab:hover,.service-tab.active{background:var(--ink);color:var(--paper);box-shadow:0 5px 15px #182b3617}.service-tab:nth-child(1){top:11%;left:50%;transform:translateX(-50%)}.service-tab:nth-child(2){top:33%;right:-3%}.service-tab:nth-child(3){bottom:9%;right:5%}.service-tab:nth-child(4){bottom:9%;left:0}.service-tab:nth-child(5){top:33%;left:-4%}.service-panel{position:relative;padding:35px 35px 24px;border:1px solid var(--line);border-radius:5px;background:#fffef8;min-height:470px;animation:panel-in .4s ease}.panel-number{font-size:12px;letter-spacing:.12em}.panel-symbol{position:absolute;right:30px;top:23px;font-size:36px;line-height:1.5}.service-panel h3{font-size:clamp(30px,3vw,44px);margin:48px 0 20px}.service-panel>p:not(.panel-foot){color:var(--muted);font-size:15px;line-height:1.7}.pills{display:flex;flex-wrap:wrap;gap:6px;margin:22px 0 25px;padding:0;list-style:none}.pills li{font-size:11px;padding:4px 10px;border:1px solid var(--line);border-radius:20px}.text-link{display:inline-block;border-bottom:1px solid var(--ink);padding-bottom:4px;font-size:14px}.text-link:hover{background:var(--yellow)}.panel-foot{font-size:12px;margin-top:25px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px}.service-controls{display:flex;align-items:center;justify-content:space-between;padding:18px 0 0;font-size:12px}.service-controls button{background:transparent;border-bottom:1px solid var(--line);padding:4px 0;font-size:12px}.service-controls button:hover{border-color:var(--ink)}
.approach{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1.03fr;gap:8vw;align-items:start;padding-top:110px;padding-bottom:120px}.approach-intro{position:sticky;top:150px}.approach-intro h2{margin:25px 0 28px;font-size:clamp(38px,4.2vw,63px)}.approach-intro h2 em{color:var(--yellow)}.approach-intro p{color:#c2cbd0;font-size:18px}.approach-intro .hand-note{margin-top:35px;color:var(--yellow)}.approach-asterisk{display:block;font-size:120px;line-height:1;margin-top:45px;color:var(--yellow)}.card-stack{padding-bottom:15px}.process-card{position:sticky;top:132px;min-height:440px;border-radius:6px;padding:30px 34px;color:var(--ink);border:1px solid #182b3650;margin-bottom:35px;box-shadow:0 12px 30px #0002;transform-origin:center top;will-change:transform}.process-card:nth-child(2){top:151px}.process-card:nth-child(3){top:170px}.process-card:nth-child(4){top:189px}.card-yellow{background:var(--yellow)}.card-blue{background:var(--blue)}.card-pink{background:var(--pink)}.card-white{background:var(--paper);margin-bottom:0}.card-top{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.06em;gap:15px}.process-glyph{display:block;font:90px/1 Georgia,serif;height:111px;margin-top:25px}.code-glyph{font-size:64px}.process-card h3{font-size:36px;margin-bottom:20px}.process-card p{font-size:16px;max-width:430px;line-height:1.65}.card-bottom{margin-top:30px;padding-top:15px;border-top:1px solid #182b3640;font-size:11px;letter-spacing:.03em}.about{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center}.signature-card{position:relative;border:1px solid var(--ink);padding:48px 30px 25px;min-height:345px;margin-top:45px;transform:rotate(-4deg);background:var(--blue);box-shadow:12px 12px 0 var(--yellow)}.signature-card p{font-size:clamp(45px,5vw,76px);line-height:1.1;letter-spacing:-.065em;margin-bottom:50px}.signature-card>span:last-child{font-size:10px;letter-spacing:.09em}.small-star{position:absolute;right:22px;top:5px;font-size:55px}.about-copy h2{margin-bottom:28px}.about-copy p{margin-bottom:17px;color:var(--muted);font-size:16px}.about-copy .text-link{margin-top:10px}.faq{border-top:1px solid var(--line);display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw}.faq h2{margin:25px 0 22px}.faq>div>p{color:var(--muted)}.accordions details{border-bottom:1px solid var(--line)}.accordions details:first-child{border-top:1px solid var(--line)}summary{display:flex;align-items:center;gap:20px;list-style:none;padding:25px 0;cursor:pointer;font-size:17px;line-height:1.5}summary::-webkit-details-marker{display:none}.question-number{font-size:11px}.details-icon{margin-left:auto;flex-shrink:0;width:32px;height:32px;border:1px solid var(--ink);border-radius:50%;font-size:22px;display:grid;place-items:center;transition:transform .3s,background .3s}details[open] .details-icon{transform:rotate(45deg);background:var(--yellow)}details[open] summary{color:var(--ink)}.answer{padding:0 40px 26px 36px;line-height:1.8;font-size:15px;color:var(--muted);animation:panel-in .25s ease}.contact{background:var(--yellow);padding-top:65px;padding-bottom:55px}.contact-main{display:flex;justify-content:space-between;align-items:center;gap:35px;margin:32px 0 40px}.contact h2{font-size:clamp(55px,7vw,105px)}.contact-round{width:180px;height:180px;flex-shrink:0;background:var(--ink);color:var(--paper);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;transform:rotate(10deg);transition:transform .3s}.contact-round:hover{transform:rotate(-8deg)}.contact-round>span:last-child{font-size:58px;line-height:1}.contact-bottom{display:flex;justify-content:space-between;gap:35px;border-top:1px solid #182b3640;padding-top:25px;font-size:15px}.contact-bottom>div{display:flex;flex-direction:column;text-align:right;gap:3px}.contact-bottom>div>a:first-child{font-size:25px;letter-spacing:-.04em}.contact-bottom a:hover{text-decoration:underline}.footer{padding:33px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}.footer .logo{font-size:29px}.footer .logo-star{font-size:31px}.footer>a:not(.logo){text-decoration:underline}.noscript{padding:20px;background:var(--yellow)}
@keyframes panel-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes menu-in{from{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.hero-grid{min-height:670px}.playground{height:570px}.service-layout{max-width:1250px;margin-left:auto;margin-right:auto}.service-panel{min-height:480px}}
@media(max-width:1100px){.desktop-nav{gap:17px;font-size:12px}.header{gap:20px}.header-actions{gap:18px}.hero-grid{min-height:535px}.playground{height:440px}.word-tag{font-size:12px;padding:9px 12px}.hero-bottom .edition{display:none}.service-layout{gap:40px}.service-tab{font-size:11px;padding:8px 11px}.service-tab span{margin-right:5px}.star-center{font-size:22px}.service-panel{padding:27px;min-height:500px}.service-panel h3{font-size:33px}.approach{gap:50px}.process-card{padding:27px;min-height:450px}.process-card h3{font-size:31px}.signature-card{padding-left:25px}.about{gap:65px}.footer{flex-wrap:wrap}}
@media(max-width:800px){html{scroll-padding-top:90px}.header{height:80px;padding:16px 24px}.logo{font-size:31px}.logo-star{font-size:35px}.desktop-nav{display:none}.header-actions{gap:22px}.contact-link{font-size:12px;padding:10px 15px}.hero{padding-top:25px}.hero-top .hero-note{display:none}.hero-grid{grid-template-columns:1fr 1fr;gap:15px;min-height:450px}.hero h1{font-size:clamp(58px,8.5vw,76px)}.hero-copy>p{font-size:15px}.desktop-only{display:none}.button{padding:14px 16px;gap:20px;font-size:12px}.playground{height:365px}.star-face{font-size:16px}.star-face .plus{font-size:22px}.smile{font-size:50px}.word-tag{font-size:10px;padding:8px 9px}.tag-top{left:25%;top:12%}.tag-right{right:0}.tag-left{top:55%}.playground>.hand-note{font-size:14px;bottom:22%}.mix-button{font-size:12px}.mix-control>span{font-size:10px}.hero-bottom>span{font-size:9px;max-width:200px}.hero-bottom>a{font-size:10px}.section-pad:not(.hero){padding:75px 30px}.service-layout{grid-template-columns:1fr;gap:25px;max-width:540px;margin:35px auto 0}.constellation{max-width:500px;width:100%;margin:auto}.service-tab{font-size:13px;padding:10px 15px}.star-center{font-size:25px}.service-panel{min-height:420px;padding:30px}.service-panel h3{margin-top:30px}.service-panel>p:not(.panel-foot){font-size:16px}.pills li{font-size:12px}.approach{grid-template-columns:1fr 1.1fr;gap:25px}.approach-intro{top:120px}.approach-intro h2{font-size:36px}.approach-intro p{font-size:16px}.approach-intro .hand-note{font-size:16px}.process-card{min-height:450px;padding:22px;top:110px}.process-card:nth-child(2){top:122px}.process-card:nth-child(3){top:134px}.process-card:nth-child(4){top:146px}.process-card h3{font-size:27px}.process-card p{font-size:15px}.card-top{font-size:9px}.card-bottom{font-size:10px}.process-glyph{height:95px;font-size:75px}.code-glyph{font-size:50px}.about{gap:45px}.signature-card{min-height:295px;padding:50px 20px 22px}.signature-card p{font-size:47px}.signature-card>span:last-child{font-size:8px}.about-copy h2{font-size:39px}.about-copy p{font-size:15px}.faq{grid-template-columns:1fr;gap:35px}.faq h2 br{display:none}.contact-round{width:140px;height:140px;font-size:14px}.contact-round>span:last-child{font-size:42px}.contact-bottom>div>a:first-child{font-size:21px}.mega-menu{inset:80px 0 0;padding:40px 30px;gap:30px}.mega-menu nav a{font-size:26px;gap:15px}.menu-intro p{font-size:34px}.menu-intro a{font-size:14px}}
@media(max-width:560px){.header{padding-left:20px;padding-right:20px;gap:10px}.header-actions{gap:14px}.menu-toggle{font-size:12px;gap:8px}.logo{font-size:28px}.logo-star{font-size:32px}.contact-link{padding:9px 12px;font-size:11px}.section-pad:not(.hero){padding:65px 22px}.hero{padding:22px 22px 20px}.eyebrow{font-size:10px;letter-spacing:.1em}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:29px 0 10px}.hero h1{font-size:clamp(64px,16.5vw,92px);line-height:.98}.hero-copy>p{font-size:16px;margin:24px 0}.button{font-size:14px;padding:15px 20px;gap:25px}.playground{height:395px;width:100%;max-width:370px;margin:10px auto 25px}.hero-star{width:77%;left:12%;top:9%}.star-face{font-size:18px}.word-tag{font-size:12px;padding:8px 12px}.tag-top{top:9%;left:29%}.tag-left{left:0;top:53%}.tag-right{top:41%;right:-5px}.orbit-one{height:62%;top:10%}.orbit-two{height:78%;top:0}.playground>.hand-note{font-size:16px;bottom:23%;right:0}.mix-button{font-size:13px}.mix-control>span{font-size:11px}.hero-bottom{padding-top:15px}.hero-bottom>span{font-size:8px;max-width:140px}.hero-bottom>a{font-size:10px;max-width:165px;text-align:right}.hero-bottom>a span{margin-left:5px}.ribbon{justify-content:flex-start;gap:22px;padding:15px 20px}.ribbon>span{font-size:13px}.section-heading h2{font-size:37px;margin-top:20px}.section-heading p{font-size:15px}.section-heading p br{display:none}.constellation{aspect-ratio:1;margin:0 0 8px}.service-star{top:10px}.constellation-note{font-size:14px}.star-center{font-size:22px;top:42%}.star-center>span{font-size:26px;margin-top:8px}.service-tab{font-size:11px;min-height:43px;padding:9px 10px}.service-tab span{font-size:9px;margin-right:4px}.service-tab:nth-child(1){top:14%}.service-tab:nth-child(2){right:0;top:35%}.service-tab:nth-child(5){left:0;top:35%}.service-tab:nth-child(3){right:0;bottom:4%}.service-tab:nth-child(4){left:0;bottom:4%}.service-panel{padding:25px;min-height:470px}.service-panel h3{font-size:34px}.panel-symbol{right:24px;top:16px}.pills{gap:5px}.pills li{font-size:11px}.approach{grid-template-columns:1fr;gap:35px}.approach-intro{position:static}.approach-intro h2{font-size:40px}.approach-intro p br{display:none}.approach-intro p{max-width:310px}.approach-intro .hand-note{margin-top:20px}.approach-asterisk{display:none}.process-card{min-height:400px;padding:26px;top:105px;margin-bottom:25px}.process-card:nth-child(2){top:117px}.process-card:nth-child(3){top:129px}.process-card:nth-child(4){top:141px}.process-card h3{font-size:32px}.process-card p{font-size:16px}.card-top{font-size:10px}.card-bottom{font-size:10px}.process-glyph{height:85px;font-size:70px}.code-glyph{font-size:50px}.about{grid-template-columns:1fr;gap:55px}.signature-card{max-width:360px;min-height:290px;margin:30px 8px 0;padding:45px 28px 22px}.signature-card p{font-size:63px;margin-bottom:35px}.signature-card>span:last-child{font-size:9px}.about-copy h2{font-size:46px}.about-copy p{font-size:16px}.faq h2{font-size:39px}.faq h2 br{display:block}summary{font-size:16px;gap:12px;padding:22px 0}.details-icon{width:29px;height:29px}.answer{padding-left:25px;padding-right:10px}.contact-main{gap:18px;align-items:flex-start;margin:26px 0 30px}.contact h2{font-size:clamp(43px,11vw,61px)}.contact-round{width:80px;height:80px;gap:4px;font-size:10px;margin-top:15px}.contact-round>span:last-child{font-size:28px}.contact-bottom{flex-direction:column;gap:20px;font-size:15px}.contact-bottom>div{text-align:left;align-items:flex-start}.contact-bottom>div>a:first-child{font-size:25px}.footer{padding:28px 22px;display:grid;grid-template-columns:1fr 1fr;gap:25px;font-size:10px}.footer>span:nth-child(2){text-align:right}.footer>span:last-child{text-align:right}.mega-menu{grid-template-columns:1fr;padding:22px;gap:20px}.menu-intro{display:none}.mega-menu nav a{font-size:29px;padding:25px 0}.mega-menu nav small{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.process-card{transform:none!important;will-change:auto}}
.about>div{min-width:0}
@media(max-width:380px){.signature-card{padding-left:18px;padding-right:18px}.signature-card p{font-size:48px}.signature-card>span:last-child{font-size:8px}.contact-main{flex-wrap:wrap}.contact-round{margin-top:0}.hero h1{font-size:60px}.service-tab{font-size:10px;padding-left:8px;padding-right:8px}.service-tab span{margin-right:2px}.header-actions{gap:10px}.header .logo{font-size:25px}.header .logo-star{font-size:27px}.contact-link{font-size:10px;padding:8px 9px}}
@media print{.header,.hero-bottom,.ribbon,.mix-control,.mega-menu,.service-tabs,.service-controls{display:none!important}.hero-grid,.service-layout,.approach,.about,.faq{display:block}.section-pad{padding:25px}.approach{color:var(--ink);background:white}.approach-intro,.process-card{position:static}.service-panel[hidden]{display:block!important}.playground,.constellation{display:none}.process-card{break-inside:avoid;transform:none!important;box-shadow:none;margin-top:20px}.contact-round{display:none}}

/* Services — scène panoramique animée par le défilement. */
.services.section-pad{padding:90px 0 0}.services>.section-heading{padding:0 var(--gutter) 45px}.service-scroll{position:relative}.service-stage{position:relative;overflow:hidden;background:var(--paper);min-height:660px}.service-layout{position:relative;display:block;max-width:none;margin:0;min-height:660px;height:100%;width:100%}.service-scroll.scroll-driven{height:420vh}.scroll-driven .service-stage{position:sticky;top:96px;height:calc(100svh - 96px);min-height:620px}.services .constellation{position:absolute;inset:0;max-width:none;width:100%;height:100%;margin:0;aspect-ratio:auto;pointer-events:none}.services .service-star{position:absolute;width:150vw;height:150vw;max-width:none;left:-70vw;top:calc(52% - 75vw);fill:none;stroke:#7a878b;stroke-width:1.1;transform-origin:center;transition:none;opacity:.55}.service-star polygon{fill:none;stroke-width:1.8}.service-star circle{fill:var(--ink);stroke:none}.services .star-lines{opacity:.5;stroke-dasharray:none}.star-orbit{position:absolute;width:66vw;height:66vw;border:1px dashed #182b3624;border-radius:50%;left:-28vw;top:calc(52% - 33vw)}.services .star-center{left:5%;top:52%;width:auto;display:flex;gap:25px;align-items:center;font:10px/1.8 Arial,sans-serif;letter-spacing:.18em;text-align:left;transform:translateY(-50%)}.services .star-center>span{margin:0;font-size:10px}.pivot-dot{width:9px;height:9px;background:var(--ink);border-radius:50%;box-shadow:0 0 0 8px #edec7360;flex-shrink:0}.services .service-panels{position:relative;margin-left:35%;width:36%;padding-top:55px;padding-bottom:110px;z-index:2}.services .service-panel{border:0;min-height:425px;background:transparent;padding:25px 24px;animation:panel-in .45s ease}.services .service-panel h3{margin-top:25px;font-size:clamp(32px,3.2vw,50px)}.services .service-panel>p:not(.panel-foot){font-size:16px}.services .panel-symbol{display:none}.services .panel-number{display:inline-flex;align-items:center;gap:14px}.services .panel-number:before{content:'';width:9px;height:9px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 8px #edec7380}.services .service-controls{margin:0 24px;padding:6px 0}.service-art{position:absolute;right:4%;top:23%;width:20%;height:300px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:25px 15px;background:var(--yellow);border:1px solid #182b3670;border-radius:3px;transform:rotate(7deg);box-shadow:12px 14px 0 #182b360c;transition:background .4s,transform .5s}.art-index{align-self:flex-start;font-size:12px;letter-spacing:.1em}.art-symbol{font:clamp(55px,7vw,100px)/1 Georgia,serif}.art-name{font-size:14px}.service-wayfinding{position:absolute;left:var(--gutter);right:var(--gutter);bottom:25px;z-index:3}.services .constellation-note{text-align:left;transform:none;font-size:15px;margin-bottom:20px}.services .service-tabs{display:flex;gap:24px;border-top:1px solid var(--line);padding-top:15px;flex-wrap:wrap}.services .service-tab,.services .service-tab:nth-child(n){position:static;transform:none;background:none;border:0;border-radius:0;min-height:36px;padding:4px 0;color:var(--muted);box-shadow:none;font-size:12px}.services .service-tab span{margin-right:7px}.services .service-tab.active{color:var(--ink);border-bottom:2px solid var(--ink)}.services .service-tab:hover{color:var(--ink)}
@media(max-width:1000px){.services .service-panels{margin-left:29%;width:46%}.service-art{right:3%;width:19%;height:240px;top:29%}.services .star-center{left:3%;gap:12px}.services .service-tabs{gap:18px}.services .service-panel{padding:22px 15px}.services .service-controls{margin:0 15px}}
@media(max-width:800px){.scroll-driven .service-stage{top:80px;height:calc(100svh - 80px)}.services .service-panels{margin-left:23%;width:54%}.services .star-center{display:none}.services .service-panel h3{font-size:34px}.services .service-tab,.services .service-tab:nth-child(n){font-size:11px}.service-art{height:200px;top:30%}.art-name{font-size:11px}.services.section-pad{padding:65px 0 0}}
@media(max-width:560px){.service-scroll.scroll-driven{height:450vh}.scroll-driven .service-stage{min-height:640px}.services .service-layout{min-height:640px}.services .service-panels{margin-left:13%;width:83%;padding:35px 0 145px}.services .service-panel{padding:20px 10px;min-height:400px}.services .service-panel h3{font-size:33px;margin:20px 0}.services .service-panel>p:not(.panel-foot){font-size:15px}.services .service-star{width:270vw;height:270vw;left:-225vw;top:calc(49% - 135vw);opacity:.38}.star-orbit{width:150vw;height:150vw;left:-130vw;top:calc(49% - 75vw)}.service-art{display:none}.service-wayfinding{left:24px;right:24px;bottom:20px}.services .service-tabs{gap:5px 17px;padding-top:9px}.services .constellation-note{font-size:14px;margin-bottom:12px}.services .service-controls{margin:0 10px}.services .panel-foot{font-size:11px}.services .pills{margin:17px 0}.services .section-heading h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.service-scroll.scroll-driven{height:auto}.scroll-driven .service-stage{position:relative;top:auto;height:auto}.services .service-star{transform:rotate(0deg)!important}}
@media print{.service-scroll.scroll-driven{height:auto}.scroll-driven .service-stage{position:static;height:auto;overflow:visible}.services .service-panels{width:auto;margin:0;padding:0}.services .service-panel[hidden]{display:block!important}.service-wayfinding,.service-art,.constellation{display:none}}

/* Le bloc et son point d'attache suivent le rayon actif de l'étoile. */
.services .service-panels{transform:translate(var(--attachment-x,0px),var(--attachment-travel,0px));will-change:transform}
.services .service-panel{animation:none}
.services .panel-number:before{display:none}
.service-attachment{position:absolute;width:10px;height:10px;border:1px solid var(--paper);border-radius:50%;background:var(--ink);box-shadow:0 0 0 8px #edec7380;transform:translate(-50%,-50%);pointer-events:none}
@media(prefers-reduced-motion:reduce){.services .service-panels{transform:none;will-change:auto}}
@media print{.services .service-panels{transform:none}.service-attachment{display:none}}

/* Les commandes restent immobiles, indépendantes du texte accroché. */
.services .service-controls{position:absolute;left:0;right:0;top:0;transform:translate(calc(-1 * var(--attachment-x,0px)),calc(-1 * var(--attachment-travel,0px)));margin:0 24px;padding-top:12px}
.services .service-panel{pointer-events:auto}
@media(max-width:560px){.services .service-controls{margin:0 10px}}
@media(prefers-reduced-motion:reduce){.services .service-controls{transform:none;position:static}.service-attachment{display:none}}

.services .service-star{top:calc(44% - 75vw)}
.services .star-orbit{top:calc(44% - 33vw)}
.services .star-center{top:44%}
.services .service-wayfinding{background:linear-gradient(transparent,var(--paper) 22px);padding-top:18px}
@media(max-width:560px){.services .service-star{top:calc(49% - 135vw)}.services .star-orbit{top:calc(49% - 75vw)}}
/* Direction visuelle retenue : violet, lavande, menthe et bleu nuit. */
:root{--ink:#0d0e3c;--paper:#faf8fc;--yellow:#c4e8d8;--blue:#e2daee;--pink:#eadff1;--line:#d3cada;--muted:#55516b;--purple:#493184;--coral:#f24c3d;--gold:#c0a167}
.logo>span:first-child{color:var(--purple)}.logo-star{color:var(--coral)}.header{background:#faf8fcf5}.button-dark{background:var(--purple);color:white}.hero.section-pad{padding-top:55px;padding-bottom:20px;background:#fff}.new-hero-copy{max-width:1000px;margin:48px auto 0;text-align:center}.new-hero-copy h1{font-size:15px;line-height:1.5;letter-spacing:.04em;text-transform:uppercase;max-width:none}.hero-promise{font-size:clamp(42px,5.5vw,80px);line-height:1.06;letter-spacing:-.055em;margin:24px 0 18px}.hero-promise em{color:#77603d}.hero-support{font-size:22px}.hero-description{max-width:760px;margin:20px auto;color:var(--muted);font-size:17px}.hero-links{display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap;margin:28px 0}.pau-skyline{position:relative;max-width:1200px;margin:30px auto 0;isolation:isolate}.pau-skyline img{display:block;width:100%;height:auto}.pau-skyline .skyline-light{position:absolute;top:0;left:0;opacity:0;animation:illuminate 4s .6s ease-in-out forwards}.pau-skyline figcaption{text-align:center;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:-25px;position:relative}.ribbon{background:var(--purple);color:#fff}.project{background:var(--blue)}.project-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center;margin-top:45px}.project-visual{padding:40px;min-height:370px;background:var(--ink);color:var(--paper);border-radius:8px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.project-visual:after{content:'✳';position:absolute;right:-45px;top:40px;font-size:280px;line-height:1;color:var(--gold);opacity:.4}.project-visual p{font-size:72px;line-height:1.1;letter-spacing:-.05em;position:relative;z-index:1}.project-visual>span,.project-visual a{font-size:12px;letter-spacing:.1em;position:relative;z-index:1}.project-copy h3{font-size:36px;margin:20px 0}.project-copy dl{margin:25px 0}.project-copy dt{font-weight:bold;margin-top:18px}.project-copy dd{margin:6px 0}.content-note{font-size:13px;color:var(--muted)}.audiences h2{margin:25px 0 45px}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.audience-grid article{padding:32px;background:var(--yellow);border-radius:6px;display:flex;flex-direction:column;align-items:flex-start}.audience-grid article:nth-child(2){background:var(--blue)}.audience-grid article:nth-child(3){background:#ede3d0}.audience-icon{font-size:50px;color:var(--purple)}.audience-grid h3{font-size:32px;margin:25px 0}.audience-grid p{margin-bottom:25px}.audience-grid a{margin-top:auto;font-size:13px}.about{background:#f3eef8;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.about-heading h2{margin:25px 0 38px}.about-copy{border-top:2px solid var(--purple);padding-top:25px}.about-signature{font-size:17px;display:flex;align-items:center;gap:20px}.about-signature>span{font-size:50px;color:var(--purple)}.testimonials{background:var(--yellow)}.testimonials h2{margin:25px 0}.testimonials p{max-width:650px}.contact{background:var(--blue)}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:7vw;margin-top:40px}.contact-layout h2{font-size:clamp(42px,4.5vw,64px);margin-bottom:30px}.contact-layout p{margin:18px 0}.contact-details{display:flex;flex-direction:column;gap:8px;margin-top:18px}.contact-details a:first-child{font-size:18px}.contact form{background:#fff;padding:32px;border-radius:8px}.contact label{display:block;font-size:14px;margin-bottom:20px}.contact label>span{font-size:11px;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact input:not([type=checkbox]),.contact textarea{display:block;width:100%;padding:12px;border:1px solid #aaa0b8;border-radius:3px;background:#faf8fc;font:inherit;color:var(--ink);margin-top:8px}.contact textarea{resize:vertical}.contact input:focus,.contact textarea:focus{outline:2px solid var(--purple);outline-offset:2px}.contact .consent{display:flex;gap:10px;align-items:flex-start}.contact .consent>span{font-size:13px}.consent input{width:18px;height:18px;flex-shrink:0;accent-color:var(--purple)}.inline-link{background:none;padding:0;text-decoration:underline}.form-info,#form-status{font-size:12px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact button:disabled{opacity:.5}.footer-links{display:flex;flex-wrap:wrap;gap:14px}.footer-links button{background:none;padding:0;font-size:12px;display:flex;gap:6px;align-items:center;text-decoration:underline}.footer{gap:30px}.menu-icon{border:1px solid currentColor;width:38px;height:38px;border-radius:50%;transition:transform .5s,background .5s;display:flex;align-items:center;justify-content:center;position:relative}.menu-icon i{width:17px!important;position:absolute;transition:transform .5s}.menu-icon i:first-child{transform:rotate(45deg)}.menu-icon i:last-child{transform:rotate(-45deg)}.menu-open .menu-icon{transform:rotate(180deg);background:var(--yellow)}.menu-open .menu-icon i:first-child{transform:rotate(0)}.menu-open .menu-icon i:last-child{transform:rotate(90deg)}.mega-menu nav a{font-size:clamp(22px,3vw,40px);padding:14px 0}dialog{border:1px solid var(--line);border-radius:12px;padding:32px;max-width:650px;width:calc(100% - 32px);color:var(--ink);max-height:85vh}dialog::backdrop{background:#0d0e3c99}dialog h2{font-size:32px;margin:30px 0 20px}dialog p{margin:15px 0}#close-dialog{float:right;background:var(--blue);padding:8px 16px;border-radius:30px}
@keyframes illuminate{from{opacity:0}to{opacity:1}}
@media(max-width:1000px){.desktop-nav{gap:18px;font-size:12px}.project-grid{gap:35px}.audience-grid article{padding:22px}.contact-layout{gap:30px}.form-row{grid-template-columns:1fr;gap:0}}
@media(max-width:800px){.new-hero-copy{margin-top:32px}.hero-promise{font-size:52px}.project-grid,.contact-layout,.about{grid-template-columns:1fr}.audience-grid{grid-template-columns:1fr}.audience-grid article{padding:30px}.audience-grid h3 br{display:none}.audience-grid h3{margin-top:12px}.project-visual{min-height:330px}.contact form{padding:24px}.footer{grid-template-columns:1fr 1fr}.footer-links{grid-column:1/-1}.pau-skyline figcaption{margin-top:5px}.hero-description{font-size:16px}.hero-support{font-size:18px}}
@media(max-width:560px){.hero.section-pad{padding-top:28px}.hero-promise{font-size:42px}.new-hero-copy h1{font-size:11px}.hero-links{gap:22px}.hero-top{display:block}.hero-note{display:none}.project-copy h3{font-size:32px}.project-visual p{font-size:60px}.pau-skyline{margin-left:-18px;margin-right:-18px}.contact-layout{margin-top:25px}.contact form{padding:22px 18px}.hero .button{font-size:13px}.testimonials h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){.pau-skyline .skyline-light{opacity:1}.menu-icon{transform:none!important}}
.mega-menu{overflow-y:auto}.menu-open .mega-menu nav a{min-height:52px}.menu-icon i:first-child{transform:translateY(-4px) rotate(-12deg)}.menu-icon i:last-child{transform:translateY(4px) rotate(12deg)}

.about-copy h3{font-size:clamp(24px,2.3vw,34px);line-height:1.2;margin:30px 0 20px}

/* Logo : doré repris du visuel exemple-hero.png. */
.header .logo>span:first-child{color:#77603d}

/* Contact d’en-tête : mots surlignés, sans ellipse. */
.header .contact-link{border:0;border-radius:0;transform:none;padding:2px 4px;background:linear-gradient(transparent 12%,#c4e8d8 12%,#c4e8d8 90%,transparent 90%)}
.header .contact-link:hover{transform:none;background:linear-gradient(transparent 8%,#c4e8d8 8%,#c4e8d8 95%,transparent 95%)}

/* Étoile des services : contours et rayons dorés. */
.services .service-star,.services .service-star polygon,.services .service-star .star-lines{stroke:#77603d}

/* Bandeau en boucle : deux groupes de largeur identique. */
.ribbon{position:relative;display:block;padding:20px 0;overflow:hidden}
.ribbon-track{display:flex;width:max-content;animation:ribbon-scroll 30s linear infinite}
.ribbon-group{display:flex;align-items:center;justify-content:space-around;gap:48px;min-width:100vw;flex-shrink:0;padding:0 24px}
.ribbon-group>span{font-size:15px;line-height:26px;white-space:nowrap}
.ribbon-group .ribbon-star{font-size:26px}
.ribbon:hover .ribbon-track,.ribbon:focus-within .ribbon-track,.ribbon.is-paused .ribbon-track{animation-play-state:paused}
.ribbon-pause{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:var(--purple);color:white;border:1px solid #ffffff80;border-radius:4px;width:32px;height:32px;font-size:16px;line-height:1}
@keyframes ribbon-scroll{to{transform:translateX(-50%)}}
@media(max-width:560px){.ribbon{padding:15px 0}.ribbon-group{gap:28px}.ribbon-group>span{font-size:13px}}
@media(prefers-reduced-motion:reduce){.ribbon-track{animation:none;width:100%}.ribbon-group{min-width:0;width:100%;flex-wrap:wrap;gap:14px 24px;justify-content:center}.ribbon-group:nth-child(2),.ribbon-pause{display:none}}

/* Étoile : rayons pointillés et contour affiné. */
.services .service-star .star-lines{stroke-dasharray:3 5}
.services .service-star polygon{stroke-width:.5}
/* Conformité des références : exemple-hero, services-2 et preuve. */
.new-hero-copy{max-width:1060px;margin:10px auto 0}
.new-hero-copy h1{font-size:clamp(32px,3.8vw,54px);font-weight:700;line-height:1.12;letter-spacing:-.04em;text-transform:none}
.hero-promise{font-size:clamp(19px,1.8vw,25px);line-height:1.5;letter-spacing:0;margin:24px 0 0}
.hero-promise em{font-family:inherit;font-style:normal}
.hero-support{font-size:clamp(19px,1.8vw,25px);line-height:1.5}
.hero-description{margin:20px auto;max-width:820px}
.pau-skyline{max-width:1000px;margin-top:30px}
.solutions-intro{max-width:1100px;margin:0 auto;padding:0 48px 85px}
.solutions-intro>.eyebrow{color:var(--purple)}
.solutions-intro h2{font-size:clamp(32px,3.2vw,44px);font-weight:700;line-height:1.12;letter-spacing:-.04em;margin:22px 0}
.solutions-intro>p{max-width:620px;color:var(--muted);margin-bottom:32px}
.solutions-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.solution-card{padding:28px;background:white;border:1px solid var(--blue);border-radius:22px}
.solution-top{display:flex;justify-content:space-between;align-items:center;gap:15px;font:10px/1.5 monospace;color:var(--purple)}
.solution-icon{width:48px;height:48px;border-radius:14px;background:var(--purple);color:white;display:grid;place-items:center;font:23px/1 Arial,sans-serif}
.solution-2 .solution-icon{background:#c4e8d8;color:var(--ink)}
.solution-3 .solution-icon{background:var(--gold);color:var(--ink)}
.solution-4 .solution-icon{background:var(--blue);color:var(--purple)}
.solution-card h3{font-size:23px;letter-spacing:-.025em;font-weight:700;line-height:1.2;margin:26px 0 22px}
.solution-card p{font-size:14px;line-height:1.75;color:var(--muted)}
.project{background:var(--paper)}
.project-shell{max-width:1080px;margin:auto;background:var(--blue);padding:34px;border-radius:24px}
.project-heading h2{font-size:clamp(28px,3vw,40px);font-weight:700;line-height:1.15;margin:20px 0 16px;letter-spacing:-.04em}
.project-heading>p{max-width:650px;font-size:14px;color:var(--muted)}
.project-grid{grid-template-columns:40% 60%;gap:0;align-items:stretch;margin-top:30px;border:1px solid #c0a16780;border-radius:15px;overflow:hidden;background:white}
.project-visual{background:var(--purple);border-radius:0;padding:12px;min-height:0}
.project-visual:after{display:none}
.villa-cover{border:1px solid #c0a16799;border-radius:9px;padding:36px 20px;min-height:410px;display:flex;flex-direction:column;justify-content:center}
.villa-cover>.eyebrow{font-size:9px;margin-bottom:28px;font-weight:400}
.project-visual .villa-cover>p{font-size:52px;line-height:1.05;letter-spacing:-.035em}
.villa-cover em{color:#e2c183}
.villa-rule{width:40px;height:1px;background:#e2c183;margin:22px 0}
.project-visual .villa-cover>.villa-caption{font-size:13px;line-height:1.7;letter-spacing:0}
.project-copy{padding:26px}
.project-tag{display:inline-block;font-size:9px;color:var(--purple);padding:4px 8px;border:1px solid var(--purple);border-radius:3px}
.project-copy h3{font:28px/1.2 Georgia,serif;letter-spacing:-.02em;margin:18px 0}
.project-copy dt{font-size:13px;margin-top:20px}
.project-copy dd{font-size:13px;line-height:1.75;color:var(--muted);margin:8px 0 0}
.project-copy dl{margin:18px 0}
.project-result{background:#f5eddf;border-left:2px solid var(--gold);padding:16px;margin:20px 0}
.project-result strong{font-size:12px;color:#705325}
.project-result p{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.75}
.project-copy .text-link{font-size:13px}
.project-copy .content-note{font-size:11px;margin-top:16px}
@media(max-width:800px){.solutions-intro{padding:0 30px 60px}.project-shell{padding:25px}.project-grid{grid-template-columns:1fr}.villa-cover{min-height:280px}.project-heading h2 br{display:none}}
@media(max-width:560px){.new-hero-copy{margin-top:16px}.new-hero-copy h1{font-size:32px;line-height:1.15}.new-hero-copy h1 br{display:none}.hero-promise,.hero-support{font-size:18px}.solutions-intro{padding:0 22px 50px}.solutions-grid{grid-template-columns:1fr}.solution-card{padding:24px}.project-shell{padding:22px 16px;border-radius:18px}.project-copy{padding:24px 18px}.project-heading h2{font-size:29px}}

/* Méthode : troisième carte, teinte demandée. */
#approche .process-card.card-pink{background:#ede3d0}

/* Point du logo accolé et doré comme la référence. */
.header .logo .logo-star{margin-left:0;color:#77603d;font-size:inherit;letter-spacing:0;transform:none}

/* Hero : introduction remontée, frise immédiatement sous la promesse. */
.hero.section-pad{padding-top:22px}
.new-hero-copy .pau-skyline{margin:0 auto 4px}
@media(max-width:560px){.hero.section-pad{padding-top:16px}.new-hero-copy .pau-skyline{margin:0 -18px 4px}}

.google-summary{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:30px 0}
.google-summary strong{font-size:26px}.review-stars{color:#77603d;letter-spacing:.15em}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}
.review-card{background:white;border:1px solid #0d0e3c20;border-radius:16px;padding:28px;display:flex;flex-direction:column}
.review-card blockquote{margin:22px 0;font:22px/1.5 Georgia,serif;letter-spacing:-.02em}
.review-card footer{margin-top:auto;font-size:14px}.review-card footer span{display:block;font-size:12px;color:var(--muted);margin-top:5px}
.reviews-date{font-size:12px;color:var(--muted)}
@media(max-width:800px){.reviews-grid{grid-template-columns:1fr}.review-card blockquote{font-size:21px}}


/* Hero : conteneur plus large sur ordinateur. */
@media(min-width:801px){.hero.section-pad{padding-left:24px;padding-right:24px}.new-hero-copy{max-width:1240px}.new-hero-copy .pau-skyline{max-width:1200px}}
/* En-tête compact ; décalages synchronisés. */
:root{--header-height:72px}
.header{height:var(--header-height);padding-top:8px;padding-bottom:8px}
html{scroll-padding-top:calc(var(--header-height) + 9px)}
.mega-menu{inset:var(--header-height) 0 0}
.scroll-driven .service-stage{top:var(--header-height);height:calc(100svh - var(--header-height))}
@media(max-width:800px){:root{--header-height:64px}}

/* Bandeau défilant : fond doré assorti au logo. */
.ribbon,.ribbon-pause{background:#77603d;color:#fff}

/* Avis : citation sur toute la largeur disponible, auteurs en majuscules. */
.review-card blockquote{width:100%;max-width:none;align-self:stretch;font-size:18px;line-height:1.65}
.review-card footer{text-transform:uppercase}
.review-card footer span{text-transform:none}

/* Description du hero plus large sur ordinateur. */
@media(min-width:801px){.new-hero-copy .hero-description{max-width:1100px;width:100%}}

/* Hero : titre plus discret. */
.new-hero-copy h1{font-size:clamp(28px,3.2vw,44px)}
@media(max-width:560px){.new-hero-copy h1{font-size:28px}}

/* Liens du hero rapprochés de la frise. */
.new-hero-copy .hero-links{margin-top:8px;padding-top:0}

.hero-top .hero-note{text-align:right;line-height:1.5}

/* Emphase du hero et note de présentation. */
.hero-promise em{font-style:italic;font-weight:700}
.hero-note .hero-note-description{font-style:normal}

/* Bloc 02 : titre des savoir-faire en bleu marine et mauve clair. */
.services>.constellation-heading{background:#0d0e3c;color:#e2daee;padding:50px var(--gutter)}
.services>.constellation-heading p{color:#e2daee}

/* Texte des services légèrement élargi, avec espace pour le visuel. */
@media(min-width:1001px){.services .service-panels{width:40%}.services .service-panel{padding-left:20px;padding-right:20px}}

/* Repères de l’étoile : halos dorés. */
.services .pivot-dot,.services .service-attachment{box-shadow:0 0 0 8px #c0a16780}

/* Villa Sabaou : angles discrets et cadre sur toute la hauteur. */
#realisations .project-shell{border-radius:6px}
#realisations .project-grid{border-radius:4px}
#realisations .villa-cover{border-radius:3px;flex:1}

/* Accueil : lumière et élan au survol comme au focus clavier. */
:is(.hero-links,.portfolio-outro-pau) .button-dark{position:relative;isolation:isolate;overflow:hidden;transition:transform .3s,box-shadow .3s}
:is(.hero-links,.portfolio-outro-pau) .button-dark:before{content:"";position:absolute;inset:-100% -30%;z-index:-1;background:linear-gradient(115deg,transparent 40%,#c0a16766 50%,transparent 60%);transform:translateX(-100%);transition:transform .7s cubic-bezier(.2,.7,.2,1)}
:is(.hero-links,.portfolio-outro-pau) .button-dark:is(:hover,:focus-visible){transform:translateY(-3px);box-shadow:0 8px 0 -4px #c0a167}
:is(.hero-links,.portfolio-outro-pau) .button-dark:is(:hover,:focus-visible):before{transform:translateX(100%)}
:is(.hero-links,.portfolio-outro-pau) .button-dark:is(:hover,:focus-visible) span{animation:hero-arrow .55s ease both}
@keyframes hero-arrow{45%{transform:translate(12px,-12px);opacity:0}46%{transform:translate(-12px,12px);opacity:0}100%{transform:translate(0,0);opacity:1}}
.hero-links .text-link{position:relative;border-bottom:0;background:linear-gradient(var(--ink),var(--ink)) left bottom/100% 1px no-repeat;transition:color .3s}
.hero-links .text-link:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:#c0a167;transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.hero-links .text-link:is(:hover,:focus-visible){color:#77603d}
.hero-links .text-link:is(:hover,:focus-visible):after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){:is(.hero-links,.portfolio-outro-pau) .button-dark,:is(.hero-links,.portfolio-outro-pau) .button-dark:before,.hero-links .text-link,.hero-links .text-link:after{transition:none}:is(.hero-links,.portfolio-outro-pau) .button-dark:is(:hover,:focus-visible){transform:none}:is(.hero-links,.portfolio-outro-pau) .button-dark:is(:hover,:focus-visible) span{animation:none}}

/* Accroche de Caroline, au-dessus du trait. */
.about-copy{border-top:0;padding-top:0}
.about-copy .about-hook{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;font-size:clamp(28px,3vw,42px);line-height:1.2;letter-spacing:-.035em;color:var(--purple);margin:0 0 25px;padding-bottom:22px;border-bottom:2px solid var(--purple)}
.about-hook.is-revealed{animation:about-hook-reveal 3s cubic-bezier(.25,.1,.25,1) both}
@keyframes about-hook-reveal{from{opacity:0;transform:translateY(5px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.about-hook.is-revealed{animation:none}}

/* Faisons connaissance : étoile et trait doré. */
.about-copy .text-link{position:relative;padding-right:29px;border-bottom:0;background:linear-gradient(var(--ink),var(--ink)) left bottom/calc(100% - 29px) 1px no-repeat;transition:color .3s}
.about-copy .text-link:before{content:"✳";position:absolute;right:0;top:0;color:#77603d;opacity:0;transform:rotate(-90deg) scale(.5);transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .3s}
.about-copy .text-link:after{content:"";position:absolute;left:0;bottom:0;width:calc(100% - 29px);height:2px;background:#c0a167;transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.about-copy .text-link:is(:hover,:focus-visible){color:#77603d}
.about-copy .text-link:is(:hover,:focus-visible):before{opacity:1;transform:rotate(90deg) scale(1)}
.about-copy .text-link:is(:hover,:focus-visible):after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.about-copy .text-link,.about-copy .text-link:before,.about-copy .text-link:after{transition:none}.about-copy .text-link:before,.about-copy .text-link:is(:hover,:focus-visible):before{transform:none}}

/* Même identité de logo dans le header et le footer. */
.footer .logo{font-size:36px;color:var(--ink)}
.footer .logo>span:first-child{color:#77603d}
.footer .logo .logo-star{margin-left:0;color:#77603d;font-size:inherit;letter-spacing:0;transform:none}

@media(min-width:801px){.project-heading>p{max-width:none;width:100%}}

/* Portrait de Caroline et aplat doré asymétrique. */
.about-portrait{position:relative;isolation:isolate;width:min(78%,350px);margin:0 0 30px 12px}
.about-portrait:before{content:"";position:absolute;z-index:-1;inset:-12px -24px -16px -12px;background:#c0a167;clip-path:polygon(0 8%,88% 0,100% 94%,7% 100%)}
.about-portrait img{display:block;width:100%;height:auto}
@media(max-width:560px){.about-portrait{width:min(82%,320px);margin-top:30px}}

/* Réalisations dans la scène de l’étoile. */
.services .service-art{isolation:isolate;width:24%;right:1.5%;height:auto;padding:0;top:28%;background:transparent!important;border:0;box-shadow:none;gap:14px;color:var(--ink);transform:rotate(3deg)}
.service-art:before{content:"";position:absolute;z-index:-1;inset:-16px -12px 15px -14px;background:#c0a167;clip-path:polygon(3% 0,96% 6%,100% 89%,0 100%)}
.service-art[data-tone="lavender"]:before{background:#e2daee;clip-path:polygon(0 7%,100% 0,93% 100%,5% 94%)}
.service-project-image{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:contain;background:white;box-shadow:0 5px 18px #0d0e3c12}
.art-caption{display:flex;gap:12px;align-items:center;align-self:flex-start;font-size:13px;background:var(--paper);padding:4px 8px}
@media(max-width:1000px){.services .service-art{width:25%;right:2%}}
@media(max-width:560px){.services .service-art{width:38%;right:5%;top:8%}.art-caption{font-size:10px;gap:6px}.service-art:before{inset:-8px -8px 12px -8px}}

/* Deux aplats superposés derrière chaque réalisation. */
.services .service-art:before,.services .service-art[data-tone="lavender"]:before{inset:-20px -18px -18px -20px;z-index:-2;background:#c0a167;clip-path:polygon(0 8%,91% 0,100% 93%,6% 100%)}
.services .service-art:after{content:"";position:absolute;z-index:-1;inset:-10px -9px -9px -10px;background:#e2daee;clip-path:polygon(5% 0,100% 7%,94% 100%,0 91%)}
@media(max-width:560px){.services .service-art:before,.services .service-art[data-tone="lavender"]:before{inset:-12px -12px -12px -12px}.services .service-art:after{inset:-6px -6px -6px -6px}}

/* Un seul aplat par étape, doré puis violet clair. */
.services .service-art:after{content:none}
.services .service-art:before{background:#c0a167}
.services .service-art[data-tone="lavender"]:before{background:#e2daee}

/* Aplats des réalisations : même découpe que le portrait de Caroline. */
.services .service-art:before,.services .service-art[data-tone="lavender"]:before{inset:-12px -24px -16px -12px;background:#c0a167;clip-path:polygon(0 8%,88% 0,100% 94%,7% 100%)}
.services .service-art[data-tone="lavender"]:before{background:#493184}
@media(max-width:560px){.services .service-art:before,.services .service-art[data-tone="lavender"]:before{inset:-8px -14px -10px -8px}}

/* Espace de lecture entre les paragraphes et les réalisations. */
@media(min-width:561px){.services .service-panel>p:not(.panel-foot){max-width:calc(100% - 32px)}}

.contact-details .contact-email{align-self:flex-start;max-width:100%;background:#c2e6d8;padding:0 .25em;overflow-wrap:anywhere}

.project-portfolio-link{display:flex;justify-content:center;margin-top:40px}

.logo svg.logo-star{width:11px;height:11px;flex:none;margin-left:10px;align-self:flex-end;margin-bottom:0;color:#c0a167;padding-left:2px;box-sizing:content-box}

/* Cartes des publics : espacement vertical plus compact. */
.audience-grid article{padding-top:22px;padding-bottom:22px}
.audience-grid .audience-icon{font-size:40px;line-height:1}
.audience-grid h3{margin:18px 0}
.audience-grid p{margin-bottom:18px}

#audiences-title{text-align:center;font-size:clamp(32px,3.8vw,56px)}

#audiences-title em{font-family:"Source Serif 4",Georgia,serif;font-style:italic;font-weight:300;font-optical-sizing:auto}

#audiences-title{position:relative;top:-20px}

#publics{padding-top:50px;padding-bottom:50px}
@media(max-width:600px){#publics{padding-top:35px;padding-bottom:35px}}

#audiences-title{font-family:Arial,Helvetica,sans-serif;font-size:clamp(32px,3.2vw,44px);font-weight:700;line-height:1.12;letter-spacing:-.04em}
#audiences-title em{font-family:"Source Serif 4",Georgia,serif;font-style:italic;font-weight:300;font-size:.85em;font-optical-sizing:auto}

@font-face{font-family:"Source Serif 4";src:url("assets/fonts/source-serif-4.ttf") format("truetype");font-style:normal;font-weight:200 900;font-display:swap}
.hero-note .hero-note-description{font-family:"Source Serif 4",Georgia,serif;font-weight:300;font-style:normal;font-optical-sizing:auto}

@media(max-width:600px){.contact-details .contact-email{font-size:16px}}

#contact-title .contact-title-serif{font-family:"Source Serif 4",Georgia,serif;font-weight:300;font-optical-sizing:auto}
#contact-title .contact-title-serif em{font-family:inherit;font-weight:300}
#faq-title em{font-family:Arial,Helvetica,sans-serif;font-style:normal;font-weight:inherit}

#approach-title em{font-family:"Source Serif 4",Georgia,serif;font-style:italic;font-weight:300;font-optical-sizing:auto;font-size:.85em}

.process-glyph svg{display:block;width:.8em;height:.8em;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.process-glyph.quote-glyph{font-family:"Source Serif 4",Georgia,serif;font-weight:400}

#about-title em{font-family:"Source Serif 4",Georgia,serif;font-style:italic;font-weight:300;font-optical-sizing:auto;font-size:.85em}

#contact-title{margin-bottom:12px}
#contact-title + p{margin-top:12px}

.process-glyph.code-glyph svg{width:1.125em;height:1.125em}
