/* Proposition 02 — motifs géométriques, portraits expressifs et édition directe. */
html{scroll-padding-top:110px}
.top{position:sticky;top:0;z-index:30;max-width:none;padding-inline:max(40px,calc((100vw - 1140px)/2));height:98px;background:rgba(250,247,243,.97);border-bottom:1px solid #25242015;backdrop-filter:blur(12px)}
.logo{display:block;line-height:0;flex-shrink:0}.logo img{display:block;width:180px;height:auto;max-height:67px;object-fit:contain}.footer .logo img{width:150px}
.hero{padding-top:62px;padding-bottom:85px;gap:42px;grid-template-columns:1.13fr 1fr;min-height:615px}
.hero h1 .accent,.gradient-title,.closing .accent{background:linear-gradient(105deg,var(--coral) 4%,#d94d92 49%,#c18808 97%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero h1 .line{white-space:normal}.hero h1{font-size:clamp(46px,4.55vw,62px)}
.portrait-composition{height:440px;margin:0;padding:0;position:relative;isolation:isolate;width:100%}
.heroart:before{display:none}.portrait-back{position:absolute;left:21%;top:12%;width:68%;height:73%;border:1.5px solid var(--ink);background:var(--yellow);border-radius:45% 45% 18px 18px;transform:rotate(7deg)}
.portrait{margin:0;overflow:hidden;position:absolute;border:5px solid white;outline:1.5px solid var(--ink);box-shadow:6px 7px 0 var(--ink)}
.portrait-main{left:12%;top:5%;width:70%;height:77%;border-radius:160px 160px 23px 23px;transform:rotate(-4deg);background:var(--blue)}
.heroart .portrait-main img{display:block;width:100%;height:100%;border:0;outline:0;box-shadow:none;border-radius:0;object-fit:cover;object-position:50% 50%}
.portrait-secondary{right:0;bottom:2%;width:43%;height:47%;border-radius:50%;background:var(--yellow);box-shadow:5px 5px 0 var(--pink)}
.heroart .portrait-secondary img{position:absolute;max-width:none;width:147%;height:220%;left:-23%;top:-87%;object-fit:cover;object-position:50% 50%;border:0;box-shadow:none;border-radius:0}
.heroart .badge{z-index:3;right:1%;top:9%;font-size:12px;padding:9px 15px;transform:rotate(7deg);background:var(--pink);border-width:1.5px}
.deco{position:absolute;pointer-events:none;overflow:visible}.bolt{fill:var(--blue);stroke:var(--ink);stroke-width:1.5;stroke-linejoin:round;width:40px;height:58px}.hero-bolt{left:0;top:3%;rotate:-12deg}.arcs{width:77px;height:60px;fill:none;stroke:var(--coral);stroke-width:9;stroke-linecap:round}.hero-arcs{right:0;top:41%;rotate:80deg}.composition-label{position:absolute;bottom:9%;left:5%;max-width:155px;font-size:12px;font-weight:800;letter-spacing:.2px;rotate:-5deg;line-height:1.5}
.section-tint{width:100%}.solutions-tint{background:#eee8fc;border-block:1px solid #25242018}.services{padding-top:66px;padding-bottom:75px}.sectionhead{gap:35px}.sectionhead h2{font-size:45px}.sectionhead p{max-width:315px}.cards{gap:23px}.card{min-height:280px}.card:nth-child(2){background:var(--yellow)}.card:nth-child(5){background:var(--mint)}.card:nth-child(2) .icon,.card:nth-child(5) .icon{background:#fff}.card:nth-child(6){background:#faf7f3}.card p{color:#45413e}.card h3{font-size:22px}.card-link:after{z-index:0}.card-link>span{position:relative;z-index:1}
.approach-tint{background:#e4f4ec}.story{padding-top:85px;padding-bottom:85px;grid-template-columns:1fr 1.1fr;gap:85px}.story h2{font-size:47px}.approach-graphic{position:relative;min-height:390px;padding:24px 12px 10px 8px}.alignment-card{border:1.5px solid var(--ink);border-radius:15px;box-shadow:4px 5px 0 var(--ink);padding:20px 24px 18px;max-width:345px;position:relative;line-height:1.25}.alignment-card>span:not(.card-index){font-size:23px;font-weight:850;letter-spacing:-.5px;display:block;padding-right:10px}.alignment-card small{font-size:12px;display:block;margin-top:8px}.card-index{position:absolute;right:13px;top:10px;font-size:10px;font-weight:700}.wishes{background:var(--pink);transform:rotate(-5deg);z-index:1}.skills{background:var(--yellow);margin:-2px 0 0 40px;transform:rotate(3deg);z-index:2}.needs{background:white;margin:3px 0 0 9px;transform:rotate(-2deg);z-index:3}.alignment-result{display:flex;gap:10px;align-items:center;font-size:15px;font-weight:800;margin:27px 0 0 45px;rotate:-2deg}.alignment-result svg{width:25px;height:25px;fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.approach-bolt{right:0;top:-15px;rotate:15deg;fill:var(--purple)}
.band{padding-top:0;padding-bottom:0}.bandin{padding:26px 0}.point .icon{background:transparent}.audiences{padding-top:75px;padding-bottom:75px}.audience{background:#fff5ce;box-shadow:4px 5px 0 var(--ink);overflow:hidden}.audience:nth-child(2){background:#ffdef2}.audience h3{font-size:30px}.audience .eyebrow:before{background:var(--blue)}.audience:nth-child(2) .eyebrow:before{background:var(--coral)}.audience:after{content:'';position:absolute;right:-17px;top:-17px;width:48px;height:48px;border-radius:50%;border:8px solid var(--yellow);pointer-events:none}.audience:nth-child(2):after{border-color:var(--pink)}
.contact-tint{background:#f5edf5;border-top:1px solid #25242015}.closing{padding-top:75px;padding-bottom:78px;gap:70px;grid-template-columns:1.15fr 1fr}.closing h2{font-size:45px}.closing .btn{background:var(--yellow)}.thought-composition{position:relative;isolation:isolate;height:420px;margin:0 auto;max-width:410px;width:100%}.closingpic:before{display:none}.thought-photo{position:absolute;right:6%;bottom:0;width:80%;height:74%;border-radius:130px 130px 25px 25px;rotate:4deg;background:var(--pink);border:5px solid white;outline:1.4px solid var(--ink);box-shadow:9px 9px 0 var(--purple);overflow:hidden}.closingpic .thought-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 38%;border:0;box-shadow:none;border-radius:0}.thought-bubble{position:absolute;z-index:2;top:0;left:0;border:1.5px solid var(--ink);border-radius:55% 45% 48% 52% / 48% 48% 52% 52%;padding:22px 28px;background:white;box-shadow:3px 4px 0 var(--ink);font-size:21px;font-weight:800;line-height:1.2;text-align:center;rotate:-6deg}.thought-dot{position:absolute;border-radius:50%;border:1.5px solid var(--ink);background:white;z-index:2}.dot-one{width:21px;height:21px;left:24%;top:26%}.dot-two{width:11px;height:11px;left:32%;top:33%}.contact-arcs{bottom:8%;left:0;stroke:var(--blue);rotate:-60deg;width:64px}
.footer{display:grid;grid-template-columns:1fr auto;padding-top:32px;padding-bottom:29px;row-gap:28px}.footer-links{justify-content:flex-end;align-items:center;flex-wrap:wrap}.footer-bottom{grid-column:1/-1;border-top:1px solid #ded9d4;padding-top:19px;display:flex;justify-content:space-between;gap:15px;font-size:11px;color:var(--ink)}.footer small{margin-top:13px}.footer button{font-size:12px;text-underline-offset:3px}
.reveal.enter{animation:none}.reveal{opacity:1;transform:none}
.card-link>[data-edit]{font-size:12px}.composition-label{bottom:0;left:9%;max-width:180px}.portrait-back{left:19%;top:8%;width:75%;height:81%}
body.editmode [data-edit]{outline:1px dashed #3678f680;outline-offset:3px;cursor:text;position:relative;z-index:2;min-width:.4em}body.editmode [data-edit]:hover{background:#ffcf4830}body.editmode [data-edit]:focus{outline:2px solid var(--blue);background:#fff7d4;color:var(--ink);-webkit-text-fill-color:var(--ink)}body.editmode .card-link:after{display:none}body.editmode .gradient-title [data-edit],body.editmode .accent [data-edit]{color:#b75176}body.editmode .deco{transform:none!important}
.standalone-editor{position:fixed;right:16px;bottom:16px;z-index:40;display:flex;gap:10px;align-items:center;background:white;border:1px solid var(--ink);border-radius:12px;padding:10px;box-shadow:3px 4px 0 var(--ink);max-width:calc(100% - 32px)}.standalone-editor button{border:0;background:var(--ink);color:white;padding:10px 14px;border-radius:7px;cursor:pointer;font-size:12px}.standalone-editor small{max-width:180px;font-size:10px;line-height:1.5}.editing-help{font-size:12px!important;color:#625f5c}
@media(min-width:801px) and (max-width:1100px){.top{padding-inline:30px}.hero{grid-template-columns:1.1fr 1fr;gap:25px;min-height:550px}.hero h1{font-size:48px}.heroart{width:100%;max-width:100%;height:390px}.composition-label{font-size:11px;max-width:125px;left:0}.story{gap:45px}.story h2{font-size:40px}.alignment-card{padding:19px}.alignment-card>span:not(.card-index){font-size:21px}.sectionhead h2{font-size:40px}.closing h2{font-size:39px}.closing{gap:35px}.thought-composition{height:390px}}
@media(max-width:800px){html{scroll-padding-top:88px}.top{height:82px;position:sticky;padding-inline:25px}.logo img{width:151px}.top nav{top:74px}.hero{grid-template-columns:1fr;gap:30px;padding-top:38px;padding-bottom:60px;min-height:0}.hero h1{font-size:57px}.heroart{height:440px;max-width:460px;margin:8px auto 0}.hero .intro{max-width:550px}.sectionhead h2{font-size:38px}.services{padding-top:48px;padding-bottom:55px}.card{min-height:280px}.story{grid-template-columns:1fr 1fr;gap:35px;padding-block:60px}.approach-graphic{min-height:340px;padding:20px 0 0}.alignment-card{padding:17px 16px}.alignment-card>span:not(.card-index){font-size:19px}.alignment-card small{font-size:11px;max-width:180px}.skills{margin-left:16px}.needs{margin-left:0}.alignment-result{font-size:13px;margin-left:15px}.story h2{font-size:36px}.approach-bolt{right:-5px;top:-25px;width:30px}.audiences{padding-block:55px}.audience{padding:28px}.audience h3{font-size:27px}.closing{grid-template-columns:1fr 1fr;gap:35px;padding-block:60px}.closing h2{font-size:36px}.thought-composition{height:350px}.thought-bubble{font-size:18px;padding:18px 21px}.thought-photo{right:0;width:87%;height:73%}.dot-one{top:25%}.dot-two{top:32%}.contact-arcs{width:49px;left:-10px}.footer{padding-inline:25px}.footer-links{max-width:275px;gap:13px}}
@media(max-width:600px){.hero h1{font-size:clamp(36px,8.7vw,51px)}.heroart{height:365px;width:100%;max-width:390px}.heroart .badge{font-size:10px;right:0}.composition-label{font-size:11px;left:0;max-width:130px}.hero-bolt{width:30px;left:-2px}.hero-arcs{width:57px;right:-2px}.portrait-main{left:9%;width:74%}.sectionhead h2{font-size:35px}.story{grid-template-columns:1fr;gap:35px;padding-block:55px}.approach-graphic{width:100%;max-width:350px;min-height:360px;margin:auto;padding-top:25px}.alignment-card{padding:20px 22px}.alignment-card>span:not(.card-index){font-size:23px}.alignment-card small{font-size:12px;max-width:none}.skills{margin-left:30px}.needs{margin-left:7px}.alignment-result{margin-left:30px;font-size:14px}.story h2{font-size:39px}.bandin{padding-block:12px}.audience-grid{grid-template-columns:1fr}.closing{grid-template-columns:1fr;gap:30px}.thought-composition{height:370px;max-width:330px;margin:0 auto 0}.thought-bubble{font-size:20px}.thought-photo{width:80%;right:3%;height:72%}.dot-one{top:26%}.dot-two{top:33%}.contact-arcs{left:2%}.footer{display:grid;grid-template-columns:1fr;gap:23px}.footer-links{max-width:none;justify-content:flex-start}.footer-bottom{display:flex;flex-direction:column;gap:9px;font-size:10px}.closing h2{font-size:36px}.hero h1 .line{white-space:normal}}
@media(max-width:380px){.heroart{height:315px}.composition-label{font-size:10px;max-width:110px}.heroart .badge{font-size:9px;padding:7px 10px}.hero-arcs{width:43px}.sectionhead h2,.closing h2{font-size:31px}.story h2{font-size:35px}.audience{padding:25px}.audience h3{font-size:26px}.thought-composition{height:345px}.thought-bubble{font-size:19px}.hero h1{font-size:clamp(29px,8.6vw,35px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.deco{transform:none!important}.reveal{opacity:1!important;transform:none!important}}
