h2{font-size:2.4rem;line-height:1.2}section{padding:5.5rem 0}.ink{display:block;width:48px;height:3px;background:var(--dark);margin-bottom:1rem}.ink-c{display:block;width:48px;height:3px;background:var(--dark);margin:0 auto 1rem}.head-left{max-width:640px;margin-bottom:1rem}.head-left h2{font-size:clamp(1.9rem,1.4rem+1.7vw,2.6rem)}.overline{font-family:"Source Sans 3",Calibri,sans-serif;font-size:.7rem;color:var(--bleu-f);text-transform:uppercase;letter-spacing:3.5px;font-weight:700;margin-bottom:.4rem}.accent{color:var(--bleu)}.handwritten{font-family:Caveat,cursive;font-size:1.8rem;color:var(--bleu-f);margin:-.3rem 0 1rem;line-height:1.3;position:relative;display:inline-block;transform:rotate(-1deg)}.handwritten:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:var(--bleu-f);opacity:.35}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1.6rem;border-radius:4px;font-family:"Source Sans 3",Calibri,sans-serif;font-size:.95rem;font-weight:700;text-decoration:none;border:3px solid var(--dark);cursor:pointer;transition:all .2s}.btn-primary{background:var(--dark);color:var(--creme);box-shadow:var(--shadow-bleu)}.btn-primary:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 0 var(--bleu-f)}.btn-outline{background:var(--creme);color:var(--dark)}.btn-outline:hover{background:var(--bleu-p)}.btn-light{background:var(--bleu);color:#fff;border-color:var(--bleu);box-shadow:6px 6px 0 0 var(--creme)}.btn-light:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 0 var(--creme)}.hero{min-height:80vh;display:flex;align-items:center;padding-top:2rem;position:relative;overflow:hidden;background:var(--creme)}.hero-dots{position:absolute;inset:0;background-image:radial-gradient(circle,var(--gris-c) 1px,transparent 1px);background-size:28px 28px;opacity:.5;z-index:0;pointer-events:none}.hero .container{position:relative;z-index:1}.hero-row{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center}.hero-content{max-width:600px}h1{font-size:clamp(2.4rem,1.5rem+3.4vw,3.6rem);line-height:1.08;letter-spacing:-.015em;margin-bottom:1.2rem}@media(prefers-reduced-motion:no-preference){.hero-content>*,.conviction-block{opacity:0}.hero-content .overline{animation:stUp .8s var(--ease-out) .05s both}.hero-content .ink{animation:stInk .7s var(--ease-out) .16s both;transform-origin:left}.hero-content h1{animation:stClip 1s var(--ease-emph) .22s both}.hero-content .handwritten{animation:stUp .8s var(--ease-out) .52s both}.hero-content .hero-sub{animation:stUp .8s var(--ease-out) .62s both}.hero-content>div:not(.hero-stats){animation:stUp .8s var(--ease-out) .74s both}.hero-content .hero-stats{animation:stUp .8s var(--ease-out) .86s both}.conviction-block{animation:stPortrait 1.1s var(--ease-emph) .34s both}}@keyframes stUp{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes stInk{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes stClip{0%{opacity:0;transform:translateY(26px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(0 0 -12% 0)}}@keyframes stPortrait{0%{opacity:0;transform:translateY(28px) rotate(-1.2deg)}to{opacity:1;transform:none}}.hero-sub{font-size:1.05rem;color:var(--gris);margin-bottom:2rem;max-width:500px}.hero-stats{display:flex;gap:2.5rem;margin-top:3rem;padding-top:2rem;border-top:3px solid var(--dark)}.stat-num{font-family:Georgia,serif;font-size:2rem;font-weight:700;color:var(--dark);line-height:1}.stat-lbl{font-size:.78rem;color:var(--gris);margin-top:.2rem;text-transform:uppercase;letter-spacing:1px}.conviction-block{background:var(--dark);border:3px solid var(--dark);border-radius:var(--r);padding:2rem;position:relative;overflow:hidden;width:380px;flex-shrink:0}.conviction-block:before{content:"";position:absolute;top:-60px;right:-60px;width:200px;height:200px;border-radius:50%;border:1px solid rgba(106,155,204,.15);pointer-events:none}.conviction-label{font-size:.68rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--bleu-c);margin-bottom:.8rem}.conviction-block blockquote{font-family:Georgia,serif;font-style:italic;font-size:.95rem;color:#faf9f5cc;line-height:1.75;margin-bottom:1.2rem}.conviction-items{display:flex;flex-direction:column;gap:.6rem}.conviction-item{display:flex;align-items:flex-start;gap:.6rem}.c-dot{width:6px;height:6px;border-radius:50%;background:var(--bleu);margin-top:.4rem;flex-shrink:0}.conviction-item span{font-size:.82rem;color:#faf9f58c;line-height:1.6}.conviction-item strong{color:#faf9f5d9}.pour-qui{background:var(--bleu-p)}.pour-qui .overline{color:var(--bleu-f)}.pour-qui .ink-c{background:var(--dark)}.pq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}.pq-card{background:#fff;border:3px solid var(--dark);border-radius:var(--r);padding:1.8rem;box-shadow:var(--shadow);transition:all .3s}.pq-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 0 var(--bleu-f)}.pq-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;background:var(--bleu-p);border:1px solid var(--bleu-c)}.pq-card h3{font-size:1.05rem;color:var(--dark);margin-bottom:.5rem}.pq-card p{font-size:.88rem;color:var(--gris)}.services{background:#fff}.service-item{display:grid;grid-template-columns:auto 1fr;gap:2rem;padding:2.5rem 0;border-bottom:2px solid var(--gris-c);align-items:start}.service-item:last-child{border-bottom:none}.service-num{font-family:Georgia,serif;font-size:4rem;font-weight:700;color:var(--bleu-p);line-height:1;user-select:none}.service-item h3{font-size:1.3rem;color:var(--dark);margin-bottom:.3rem}.service-tagline{font-size:.92rem;font-style:italic;font-family:Georgia,serif;color:var(--bleu-f);margin-bottom:.8rem}.service-item>div>p{font-size:.92rem;color:var(--gris);line-height:1.85;margin-bottom:1rem}.service-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.meta-pill{font-size:.75rem;color:var(--dark);background:var(--bleu-p);border:1px solid var(--bleu-c);border-radius:4px;padding:.25rem .6rem}.deliverable-title{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);margin-bottom:.5rem}.deliverable-list{list-style:none;margin-bottom:1.2rem}.deliverable-list li{font-size:.85rem;color:var(--dark);padding:.3rem 0;display:flex;align-items:flex-start;gap:.5rem;line-height:1.55}.deliverable-list li:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--bleu);margin-top:.5rem;flex-shrink:0}.service-cta{display:inline-flex;align-items:center;gap:.4rem;background:var(--dark);color:var(--creme);border:none;border-radius:4px;padding:.6rem 1.2rem;font-family:"Source Sans 3",Calibri,sans-serif;font-size:.85rem;font-weight:700;cursor:pointer;text-decoration:none;transition:background .2s}.service-cta:hover{background:var(--bleu-f)}.process{background:var(--dark);color:var(--creme)}.process .overline{color:var(--bleu-c)}.process .ink-c{background:var(--creme)}.process h2{color:var(--creme)}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ffffff0f;border:1px solid rgba(255,255,255,.06);border-radius:var(--r);overflow:hidden;margin-top:2.5rem}.step-card{background:#ffffff08;padding:1.8rem;position:relative;transition:background .2s}.step-card:hover{background:#6a9bcc12}.step-num{font-family:Georgia,serif;font-weight:700;font-size:2.5rem;color:#6a9bcc33;line-height:1;margin-bottom:.8rem;user-select:none}.step-card h3{font-size:.95rem;color:var(--creme);margin-bottom:.4rem}.step-card p{font-size:.82rem;color:#faf9f573;line-height:1.7}.step-card:after{content:"→";position:absolute;top:1.8rem;right:-8px;font-size:.85rem;color:#6a9bcc59;z-index:2}.step-card:last-child:after{display:none}.cases{background:var(--creme)}.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}.case-card{background:#fff;border:3px solid var(--dark);border-radius:var(--r);overflow:hidden;transition:all .3s;display:flex;flex-direction:column}.case-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 0 var(--bleu-f)}.case-tag{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--bleu-f);padding:1rem 1.2rem .4rem}.case-title{font-size:.95rem;color:var(--dark);padding:0 1.2rem .6rem;line-height:1.4}.case-desc{font-size:.82rem;color:var(--gris);line-height:1.7;padding:0 1.2rem 1.2rem;flex:1}.case-result{border-top:2px solid var(--gris-c);padding:.8rem 1.2rem;display:flex;align-items:baseline;gap:.5rem;background:var(--creme)}.case-result-num{font-family:Georgia,serif;font-weight:700;font-size:1.3rem;color:var(--bleu-f)}.case-result-label{font-size:.75rem;color:var(--gris);line-height:1.4}.faq-section{background:#fff}.faq-grid{display:grid;grid-template-columns:340px 1fr;gap:4rem;margin-top:2rem}.faq-list{display:flex;flex-direction:column}details{border:3px solid var(--dark);border-radius:var(--r);margin-bottom:.8rem;background:#fff;overflow:hidden}summary{padding:1rem 1.2rem;font-family:Georgia,serif;font-size:.95rem;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}summary:after{content:"+";font-family:Consolas,monospace;font-size:1.2rem;color:var(--bleu);transition:transform .3s}details[open] summary:after{content:"−"}details[open] summary{border-bottom:1px solid var(--gris-c)}details p{padding:.8rem 1.2rem;font-size:.88rem;color:var(--gris)}.cta-final{background:var(--dark);text-align:center;color:var(--creme);position:relative;overflow:hidden}.cta-final h2{color:var(--creme);font-size:2rem;margin-bottom:.6rem}.cta-final>div>p{color:var(--gris);margin-bottom:1.5rem;max-width:520px;margin-left:auto;margin-right:auto}.cta-final>div>p strong{color:var(--creme)}@media(max-width:900px){.hero-row{grid-template-columns:1fr}.conviction-block{display:none}.pq-grid,.cases-grid{grid-template-columns:1fr}.steps-grid{grid-template-columns:1fr 1fr}.faq-grid,.service-item{grid-template-columns:1fr}.responsive-grid{grid-template-columns:1fr!important}}@media(max-width:600px){h1{font-size:1.8rem}.steps-grid{grid-template-columns:1fr}.hero-stats{flex-direction:column;gap:1rem}}
