/* Conversion moments. The content is visible by default; JS only animates it
   after it enters the viewport, so an interrupted enhancement never hides it. */
.sf-inline-cta { display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:38px;padding-top:28px;border-top:1px solid var(--line); }
.sf-cta-micro { font:11px/1.6 var(--font);letter-spacing:0;color:var(--muted);margin:0; }
html body .sf-cta.sf-cta .sf-cta-label { display:inline;background:none;color:inherit;width:auto;height:auto;padding:0;margin:0;border:0;border-radius:0;font:inherit;line-height:inherit;flex:0 1 auto; }
html body .sf-cta.sf-cta { min-height:50px; }
.sf-mid-cta { position:relative;background:var(--lime);color:#1b2413;border-block:1px solid #bad231;isolation:isolate; }
.sf-mid-cta-inner { display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:22px; }
.sf-mid-message { display:flex;align-items:center;gap:22px; }
.sf-mid-message p { font-size:21px;line-height:1.3;letter-spacing:-.035em;color:#1b2413; }
.sf-mid-message strong { font-weight:550; }
.sf-conversion-mark { display:grid;place-items:center;width:43px;height:43px;border:1px solid #29341a55;flex:none;font:34px/1 var(--mono); }
.sf-mid-action { display:flex;align-items:center;gap:25px; }
.sf-mid-action .sf-cta-micro { max-width:180px;color:#364221;font-size:11px; }
html[data-theme] body .sf-mid-cta .sf-cta.sf-cta { background:#11150f;color:#fff; }
html[data-theme] body .sf-mid-cta .sf-cta.sf-cta:hover { background:#2a3521;color:#fff; }
.sf-sticky-cta { position:fixed;z-index:60;inset:auto 0 0;border-top:1px solid var(--line);background:color-mix(in srgb,var(--paper) 96%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 -8px 32px #0000000b;padding-bottom:env(safe-area-inset-bottom,0px); }
.sf-sticky-cta[hidden] { display:none!important; }
.sf-sticky-inner { display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:13px; }
.sf-sticky-copy { display:flex;align-items:center;gap:17px; }
.sf-sticky-copy > p { color:var(--ink);font-size:14px;line-height:1.45;font-weight:500; }
.sf-sticky-copy .sf-cta-micro { display:block;color:var(--muted);font-size:10px;font-weight:400;margin-top:3px; }
.sf-sticky-pixel { display:block;flex:none;width:8px;height:8px;background:var(--accent);box-shadow:8px 0 0 var(--accent),8px 8px 0 var(--accent),16px 8px 0 var(--accent);margin-right:8px;transform:translateY(-4px); }
.sf-sticky-mobile-micro { display:none; }
html body .sf-sticky-cta .sf-cta.sf-cta { white-space:nowrap; }
.sf-mid-cta .sf-cta:focus-visible { outline-color:#11150f; }
.sf-sticky-cta .sf-cta:focus-visible { outline-offset:3px; }
.sf-conversion-ready { scroll-padding-bottom:100px; }
.sf-conversion-ready #contact:focus { outline:none; }
.work-preview { transition:border-color .25s ease,box-shadow .25s ease; }
.work-grid article:hover .work-preview { border-color:var(--accent);box-shadow:0 10px 28px #0000000b; }
.decision-note { position:relative; }
.decision-note::after { content:'';position:absolute;left:-3px;top:0;width:6px;height:6px;background:var(--accent); }
.process > li > span { transition:color .2s ease; }
.process > li:hover > span { color:var(--accent); }
.sf-mid-cta .sf-conversion-mark { transition:background .25s ease,transform .25s ease; }
.sf-mid-cta:hover .sf-conversion-mark { background:#11150f;color:var(--lime);transform:translate(2px,-2px); }
@media(max-width:1100px) {
 .sf-mid-message p { font-size:19px; }
 .sf-mid-action { gap:16px; }
 .sf-mid-action .sf-cta-micro { max-width:150px;font-size:10px; }
}
@media(max-width:800px) {
 .sf-mid-cta-inner { gap:20px;padding-block:23px; }
 .sf-mid-message { gap:15px; }
 .sf-mid-message p { font-size:18px; }
 .sf-mid-action { flex-direction:column;align-items:flex-start;gap:9px; }
 .sf-mid-action .sf-cta-micro { max-width:none;font-size:9px; }
 .sf-inline-cta { gap:15px 22px; }
}
@media(max-width:600px) {
 .sf-mid-cta-inner { flex-direction:column;align-items:flex-start;gap:20px;padding-block:24px; }
 .sf-mid-message p { font-size:23px; }
 .sf-mid-message p br { display:none; }
 .sf-mid-message p strong::before { content:' '; }
 .sf-conversion-mark { width:34px;height:34px;font-size:27px; }
 .sf-mid-action { width:100%; }
 html body .sf-mid-action .sf-cta.sf-cta { width:100%; }
 .sf-mid-action .sf-cta-micro { font-size:10px; }
 .sf-sticky-inner { flex-wrap:wrap;gap:5px;padding-block:10px 8px; }
 .sf-sticky-copy { display:none; }
 html body .sf-sticky-cta .sf-cta.sf-cta { width:100%;min-height:48px;padding-block:6px; }
 .sf-sticky-mobile-micro { display:block;width:100%;font-size:9px;text-align:center; }
 .sf-inline-cta { display:block;margin-top:28px;padding-top:24px; }
 .sf-inline-cta .sf-cta-micro { margin-top:12px;font-size:10px; }
 .sf-conversion-ready { scroll-padding-bottom:115px; }
}
@media(max-width:480px) {
 html body:is(.direction,.pilotage) .header { gap:8px; }
 html body:is(.direction,.pilotage) .header .brand img { width:88px; }
 html body:is(.direction,.pilotage) .header .theme-toggle { min-width:44px;width:44px;min-height:44px;padding:10px; }
 html body:is(.direction,.pilotage) .header .nav-cta.sf-cta.sf-cta { font-size:10px;gap:8px;padding:4px 4px 4px 8px;min-height:44px;margin-left:0; }
 html body:is(.direction,.pilotage) .header .nav-cta.sf-cta .sf-cta-arrow { width:30px;height:30px;flex-basis:30px; }
}
@media(max-width:360px) {
 html body:is(.direction,.pilotage) .header { gap:6px; }
 html body:is(.direction,.pilotage) .header .brand img { width:72px; }
}
@media(prefers-reduced-motion:reduce) {
 .sf-mid-cta .sf-conversion-mark,.work-preview,.process > li > span { transition:none; }
 .sf-mid-cta:hover .sf-conversion-mark { transform:none; }
}
