
:root{
  --paper:#FFFFFF;          
  --surface:#FFFFFF;        
  --ink:#0E1417;            
  --graphite:#5B5650;       
  --rule:#DDD5C8;           
  --field-border:#8B847A;   
  --kitchen:#0E1417;        
  --kitchen-text:#E8E8E3;   
  --kitchen-muted:#9AA1A6;  
  --signal:#00AFCF;         
  --signal-text:#006A7E;    
  --attention:#C9730A;      
  --radius-s:8px;           
  --radius-m:12px;          
  --radius-l:28px;          
  --radius-xl:40px;         
  --wash:rgba(14,20,23,.04);  
  --band:#202526;           
  --band-card:#292E2F;      
  --band-line:rgba(255,255,255,.145); 
  --band-muted:rgba(255,255,255,.65); 
  --band-label:rgba(255,255,255,.72); 
  --on-dark:#FFFFFF;        
  --ink-raised:#232A2E;     
  --shadow-media:0 1px 2px rgba(14,20,23,.08); 
  --shadow-panel:0 1px 2px rgba(14,20,23,.06), 0 24px 48px -24px rgba(14,20,23,.35); 
  --shadow-control:inset 0 1px 0 rgba(255,255,255,.14), 0 1px 2px rgba(14,20,23,.22);            
  --shadow-control-hover:inset 0 1px 0 rgba(255,255,255,.16), 0 4px 10px -4px rgba(14,20,23,.38); 
  --shadow-control-pressed:inset 0 2px 4px rgba(0,0,0,.38);                                       
  --ease-out:cubic-bezier(.2,0,0,1);        
  --ease-in:cubic-bezier(.4,0,1,1);         
  --ease-enter:cubic-bezier(.16,1,.3,1);    
  --ease-drawer:cubic-bezier(.32,.72,0,1);  
  --ease-spring:linear(0, .061, .202, .373, .541, .689, .81, .9, .963, 1.004, 1.026, 1.037, 1.038, 1.035, 1.029, 1.022, 1.016, 1.011, 1.006, 1.003, 1.001, 1); 
  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:24px;
  --s-6:32px; --s-7:48px; --s-8:64px; --s-9:96px; --s-10:128px;
  --section-s:clamp(48px, 42px + 1.5vw, 64px);
  --section-m:clamp(64px, 52px + 3vw, 96px);
  --section-l:clamp(96px, 84px + 3vw, 128px);
  --fs-1:clamp(2.5rem, 1.943rem + 2.286vw, 4rem);
  --fs-2:clamp(2rem, 1.721rem + 1.143vw, 2.75rem);
  --fs-3:clamp(1.625rem, 1.486rem + .5714vw, 2rem);
  --fs-4:clamp(1.3125rem, 1.243rem + .2857vw, 1.5rem);
  --fs-5:clamp(1.125rem, 1.079rem + .1905vw, 1.25rem);
  --fs-body:clamp(1rem, .9768rem + .09524vw, 1.0625rem);
  --fs-small:clamp(.8125rem, .7893rem + .09524vw, .875rem);
  --font:"Schibsted Grotesk","Schibsted Fallback",system-ui,sans-serif;
  --font-mono:ui-monospace,"SF Mono",Consolas,"Liberation Mono",monospace; 
  --dur-press:120ms;        
  --dur-hover:200ms;        
  --dur-panel:320ms;        
  --dur-panel-exit:220ms;   
  --dur-enter:560ms;        
  --dur-signature:900ms;    
  --stagger:55ms;           
  --rise:12px;              
  --container:1200px;
  --gutter:16px;
  --measure:64ch;
  --header-h:64px;
}
@media (min-width:768px){ :root{ --gutter:32px; --header-h:72px; } }
@media (max-width:767px){ :root{ --dur-enter:480ms; --dur-signature:720ms; --stagger:45ms; --rise:8px; } }
@font-face{
  font-family:"Schibsted Grotesk";
  src:url("/assets/fonts/schibsted-grotesk-var-latin.woff2") format("woff2");
  font-weight:400 900;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"Schibsted Fallback";
  src:local("Arial"),local("Helvetica Neue"),local("Helvetica");
  size-adjust:104.9%;
  ascent-override:93.09%;
  descent-override:24.58%;
  line-gap-override:0%;
}
*,*::before,*::after{ box-sizing:border-box; }
html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  scroll-padding-top:var(--s-5);
}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--font);
  font-size:var(--fs-body);
  font-weight:400;
  line-height:1.55;
  font-kerning:normal;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
img,svg,video,picture{ display:block; max-width:100%; }
img{ height:auto; }
h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ul,ol{ margin:0; }
ul[role="list"],ol[role="list"]{ list-style:none; padding:0; }
button,input,select,textarea{ font:inherit; color:inherit; }
button{ cursor:pointer; }
[hidden]{ display:none !important; }
h1,h2,h3,h4,.h1,.h2,.h3,.h4,.h5{
  font-weight:600;
  text-wrap:balance;
  font-variant-numeric:lining-nums;
}
h1,.h1{ font-size:var(--fs-1); line-height:1.04; letter-spacing:-.03em; font-weight:650; }
h2,.h2{ font-size:var(--fs-2); line-height:1.08; letter-spacing:-.02em; }
h3,.h3{ font-size:var(--fs-3); line-height:1.15; letter-spacing:-.015em; }
h4,.h4{ font-size:var(--fs-4); line-height:1.25; letter-spacing:-.01em; }
.h5{ font-size:var(--fs-5); line-height:1.35; letter-spacing:-.005em; }
p,li,dd{ text-wrap:pretty; }
small,.small{ font-size:var(--fs-small); line-height:1.5; }
.lead{ font-size:var(--fs-5); line-height:1.5; color:var(--ink); }
.muted{ color:var(--graphite); }
.num{ font-variant-numeric:tabular-nums lining-nums; }
strong,b{ font-weight:600; }
.measure{ max-width:var(--measure); }
.prose > * + *{ margin-top:1em; }
.prose > :is(h2,h3,h4) + *{ margin-top:.6em; }
.prose > * + :is(h2,h3,h4){ margin-top:1.8em; }
.prose :is(p,li){ max-width:var(--measure); }
.prose :is(ul,ol){ padding-left:1.2em; }
.prose li + li{ margin-top:.4em; }
.container{
  width:100%;
  max-width:calc(var(--container) + 2 * var(--gutter));
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  column-gap:var(--s-4);
  row-gap:var(--s-6);
}
@media (min-width:768px){ .grid{ column-gap:var(--s-5); } }
.grid > *{ grid-column:1 / -1; }
@media (min-width:768px){
  .md\:span-4{ grid-column:auto / span 4; } .md\:span-5{ grid-column:auto / span 5; }
  .md\:span-6{ grid-column:auto / span 6; } .md\:span-7{ grid-column:auto / span 7; }
  .md\:span-8{ grid-column:auto / span 8; } .md\:span-12{ grid-column:1 / -1; }
  .md\:start-6{ grid-column-start:6; } .md\:start-7{ grid-column-start:7; }
  .md\:start-8{ grid-column-start:8; } .md\:start-9{ grid-column-start:9; }
}
@media (min-width:1024px){
  .lg\:span-2{ grid-column:auto / span 2; } .lg\:span-3{ grid-column:auto / span 3; }
  .lg\:span-4{ grid-column:auto / span 4; } .lg\:span-5{ grid-column:auto / span 5; }
  .lg\:span-6{ grid-column:auto / span 6; } .lg\:span-7{ grid-column:auto / span 7; }
  .lg\:span-8{ grid-column:auto / span 8; }
  .lg\:start-7{ grid-column-start:7; } .lg\:start-8{ grid-column-start:8; }
  .lg\:start-9{ grid-column-start:9; }
}
.align-end{ align-self:end; }
.align-center{ align-self:center; }
.section{ padding-block:var(--section-m); }
.section--s{ padding-block:var(--section-s); }
.section--l{ padding-block:var(--section-l); }
.section--flush-top{ padding-top:0; }
.section--rule{ border-top:1px solid var(--rule); }
.stack > * + *{ margin-top:var(--stack, var(--s-4)); }
.stack--s{ --stack:var(--s-2); }
.stack--l{ --stack:var(--s-6); }
.cluster{ display:flex; flex-wrap:wrap; gap:var(--s-3); align-items:center; }
.centered{ text-align:center; margin-inline:auto; }
.centered .cluster{ justify-content:center; }
a{ color:var(--signal-text); }
.prose a,.link{
  color:var(--signal-text);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.2em;
  transition:color var(--dur-hover) var(--ease-out), text-decoration-color var(--dur-hover) var(--ease-out);
}
.prose a:hover,.link:hover{ color:var(--ink); }
.kitchen .prose a,.kitchen .link{ color:var(--kitchen-text); }
:focus-visible{ outline:2px solid var(--signal-text); outline-offset:2px; }
.kitchen :focus-visible{ outline-color:var(--signal); }
:focus:not(:focus-visible){ outline:none; }
hr,.rule{ border:0; border-top:1px solid var(--rule); margin:0; }
.kitchen hr,.kitchen .rule{ border-top-color:var(--kitchen-muted); opacity:.4; }
.visually-hidden{
  position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; border:0;
}
.skip-link{
  position:absolute; left:var(--s-4); top:var(--s-3); z-index:100;
  padding:var(--s-3) var(--s-4);
  background:var(--ink); color:var(--paper);
  border-radius:var(--radius-s);
  transform:translateY(-200%);
}
.skip-link:focus{ transform:none; }
.owner{
  color:var(--ink);
  background:var(--surface);
  border-bottom:2px dashed var(--attention);
  font-family:var(--font-mono);
  font-size:.85em;
  padding:0 .2em;
  overflow-wrap:anywhere;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--s-2);
  min-height:48px;
  padding:0 var(--s-5);
  border:1px solid var(--ink);
  border-radius:var(--radius-s);
  font-size:1rem;
  font-weight:500;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  text-decoration-thickness:1px;
  text-underline-offset:.22em;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  transition:
    background-color var(--dur-hover) var(--ease-out),
    color var(--dur-hover) var(--ease-out),
    border-color var(--dur-hover) var(--ease-out),
    box-shadow var(--dur-hover) var(--ease-out),
    transform 420ms var(--ease-spring);   
}
.btn:active{ transform:scale(.98); transition-duration:var(--dur-press); transition-timing-function:var(--ease-out); }
.btn svg{ flex:none; width:20px; height:20px; }
.btn--primary{ background:var(--ink); color:var(--paper); box-shadow:var(--shadow-control); }
@media (hover:hover){
  .btn--primary:hover{ background:var(--ink-raised); box-shadow:var(--shadow-control-hover); transform:translateY(-1px); }
}
.btn--primary:active{ box-shadow:var(--shadow-control-pressed); transform:translateY(0) scale(.98); }
.btn--secondary{ background:transparent; color:var(--ink); }
.btn--secondary:hover{ background:var(--surface); text-decoration-line:underline; }
.btn--block{ display:flex; width:100%; }
.kitchen .btn--primary{ background:var(--signal); border-color:var(--signal); color:var(--ink); }
@media (hover:hover){ .kitchen .btn--primary:hover{ background:color-mix(in oklab, var(--signal) 86%, var(--surface)); } }
.kitchen .btn--secondary{ border-color:var(--kitchen-text); color:var(--kitchen-text); }
.kitchen .btn--secondary:hover{ background:var(--ink); text-decoration-line:underline; }
.btn[disabled],.btn[aria-disabled="true"]{ cursor:not-allowed; opacity:.6; transform:none; box-shadow:none; }
.text-action{
  position:relative;
  display:inline-flex; align-items:center; min-height:44px;
  color:var(--ink); font-weight:500; text-decoration:none;
}
.text-action::before,.text-action::after{
  content:""; position:absolute; left:0; right:0; bottom:10px; height:1px;
}
.text-action::before{ background:var(--rule); }
.text-action::after{
  background:var(--ink);
  transform:scaleX(0); transform-origin:left;
  transition:transform var(--dur-panel) var(--ease-out);
}
@media (hover:hover){ .text-action:hover::after{ transform:none; } }
.text-action:focus-visible::after{ transform:none; }
.frame{ margin:0; }
.frame__media{
  background:var(--surface);
  border:1px solid var(--rule);
  border-radius:var(--radius-m);
  overflow:hidden;
}
.frame__media img{ width:100%; }
.frame--photo .frame__media{ border:0; box-shadow:var(--shadow-media); }
.frame figcaption{
  margin-top:var(--s-3);
  max-width:var(--measure);
  font-size:var(--fs-small);
  color:var(--graphite);
}
.facts{
  background:var(--surface);
  border:1px solid var(--rule);
  border-radius:var(--radius-m);
  padding:var(--s-2) var(--s-5);
}
.facts > div{
  display:grid;
  grid-template-columns:minmax(0,9rem) minmax(0,1fr);
  gap:var(--s-4);
  padding:var(--s-3) 0;
}
.facts > div + div{ border-top:1px solid var(--rule); }
.facts dt{ color:var(--graphite); font-size:var(--fs-small); padding-top:.15em; }
.facts dd{ font-weight:500; }
@media (max-width:429px){
  .facts > div{ grid-template-columns:1fr; gap:var(--s-1); }
}
.kitchen{
  background:var(--kitchen);
  color:var(--kitchen-text);
}
.kitchen .muted{ color:var(--kitchen-muted); }
.kitchen--inset{ border-radius:var(--radius-l); padding:var(--s-6); } 
@media (min-width:768px){ .kitchen--inset{ padding:var(--s-7); } }
.artefact{
  background:var(--surface);
  border:1px solid var(--rule);
  border-radius:var(--radius-m);
  padding:var(--s-4);
  font-size:.9375rem;
}
.kitchen .artefact{ background:var(--ink); border-color:var(--graphite); color:var(--kitchen-text); }
.artefact__head{
  display:flex; justify-content:space-between; align-items:baseline; gap:var(--s-3);
  padding-bottom:var(--s-3); margin-bottom:var(--s-3);
  border-bottom:1px solid var(--rule);
}
.kitchen .artefact__head{ border-bottom-color:var(--graphite); }
.artefact__title{ font-weight:600; }
.artefact__label{ font-size:.8125rem; color:var(--graphite); }
.kitchen .artefact__label{ color:var(--kitchen-muted); }
.artefact__rows{ display:grid; gap:var(--s-2); }
.artefact__rows > div{ display:grid; grid-template-columns:7.5rem minmax(0,1fr); gap:var(--s-3); }
.artefact__rows dt{ color:var(--graphite); }
.kitchen .artefact__rows dt{ color:var(--kitchen-muted); }
.artefact .mono{ font-family:var(--font-mono); font-size:.875rem; }
.chip{
  display:inline-flex; align-items:center; gap:.45em;
  padding:.2em .7em;
  border:1px solid var(--rule);
  border-radius:999px;
  font-size:.8125rem; font-weight:500; line-height:1.4;
  color:var(--ink);
  background:var(--paper);
  white-space:nowrap;
}
.chip::before{
  content:""; width:.5em; height:.5em; border-radius:50%;
  background:var(--field-border);
}
.chip--registered::before{ background:var(--signal); }
.chip--attention::before{ background:var(--attention); }
.kitchen .chip{ background:var(--kitchen); border-color:var(--graphite); color:var(--kitchen-text); }
.signal-dot{ display:inline-block; width:10px; height:10px; border-radius:50%; background:var(--signal); }
.portrait img{ border-radius:50%; }
.seq{ counter-reset:seq; list-style:none; padding:0; }
.seq > li{ counter-increment:seq; display:grid; grid-template-columns:2.5rem minmax(0,1fr); gap:var(--s-3); }
.seq > li::before{
  content:counter(seq);
  font-variant-numeric:tabular-nums lining-nums;
  font-weight:600;
  color:var(--graphite);
  border-top:1px solid var(--ink);
  padding-top:var(--s-2);
}
.seq > li > *{ border-top:1px solid var(--rule); padding-top:var(--s-2); }
.faq{ border-top:1px solid var(--rule); }
.faq:last-child{ border-bottom:1px solid var(--rule); }
.faq summary{
  display:flex; justify-content:space-between; align-items:center; gap:var(--s-4);
  min-height:56px;
  padding:var(--s-4) 0;
  font-size:var(--fs-5);
  font-weight:500;
  line-height:1.35;
  list-style:none;
  cursor:pointer;
}
.faq summary::-webkit-details-marker{ display:none; }
.faq__icon{
  position:relative; flex:none; width:14px; height:14px;
  transition:transform var(--dur-panel) var(--ease-spring);
}
.faq__icon::before,.faq__icon::after{
  content:""; position:absolute; left:0; top:calc(50% - .75px);
  width:14px; height:1.5px; background:var(--ink);
}
.faq__icon::after{ transform:rotate(90deg); }
.faq[open]:not(.is-closing) .faq__icon{ transform:rotate(45deg); }
.faq summary:hover{ text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.2em; }
.faq__a{ max-width:var(--measure); color:var(--ink); }
.faq__a > :last-child{ padding-bottom:var(--s-5); }
.faq[open] .faq__a > *{ animation:faq-in var(--dur-panel) var(--ease-out); }
@keyframes faq-in{ from{ opacity:0; transform:translateY(-4px); } to{ opacity:1; transform:none; } }
.site-header{
  position:relative;
  z-index:30;
  background:var(--paper);
  border-bottom:1px solid var(--rule);
}
.site-header__bar{
  display:flex; align-items:center; gap:var(--s-4);
  min-height:var(--header-h);
}
.brand{ display:inline-flex; align-items:center; min-height:44px; min-width:44px; margin-right:auto; }
.brand img{ height:26px; width:auto; }
.brand__mark{ display:block; }
.brand__lockup{ display:none; }
@media (min-width:768px){
  .brand__mark{ display:none; }
  .brand__lockup{ display:block; }
  .brand img.brand__lockup{ height:28px; }
}
.brand img.brand__mark{ height:32px; }
.nav{ display:none; }
.nav ul{ display:flex; gap:var(--s-1); list-style:none; margin:0; padding:0; }
.nav a,.header-wa,.lang a{
  display:inline-flex; align-items:center; min-height:44px;
  padding:0 var(--s-3);
  color:var(--ink);
  text-decoration:none;
  text-decoration-thickness:1px;
  text-underline-offset:.35em;
  font-weight:500;
  font-size:.9375rem;
  border-radius:var(--radius-s);
  transition:background-color var(--dur-hover) var(--ease-out), color var(--dur-hover) var(--ease-out);
}
@media (hover:hover){ .nav a:hover,.header-wa:hover,.lang a:hover{ background:var(--wash); } }
.nav a[aria-current="page"]{ text-decoration-line:underline; text-decoration-color:var(--ink); }
.header-wa{ gap:var(--s-2); display:none; }
.header-wa svg{ width:20px; height:20px; }
.lang{ display:none; align-items:center; font-size:.9375rem; }
.lang a{ padding:0 var(--s-2); color:var(--graphite); min-width:44px; justify-content:center; }
.lang a[aria-current="true"]{ color:var(--ink); text-decoration-line:underline; text-decoration-color:var(--ink); }
.lang__sep{ color:var(--rule); }
.header-cta{ flex:none; }
.header-cta .btn{ white-space:nowrap; }
.menu-toggle{
  display:inline-flex; align-items:center; justify-content:center; gap:var(--s-2);
  min-width:44px; min-height:44px;
  margin-right:calc(-1 * var(--s-2));
  padding:0 var(--s-2);
  background:transparent; border:0; border-radius:var(--radius-s);
  color:var(--ink);
  font-weight:500; font-size:.9375rem;
  -webkit-tap-highlight-color:transparent;
}
.menu-toggle__icon{ width:22px; height:22px; }
.menu-toggle__icon line{ transition:transform var(--dur-panel) var(--ease-drawer), opacity var(--dur-hover) var(--ease-out); transform-origin:center; transform-box:fill-box; }
.menu-toggle[aria-expanded="true"] .l1{ transform:translateY(4px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] .l2{ transform:translateY(-4px) rotate(-45deg); }
@media (min-width:768px){
  .header-wa{ display:inline-flex; }
}
@media (min-width:1180px){
  .nav,.lang{ display:flex; }
  .menu-toggle{ display:none; }
}
.menu{
  position:fixed;
  inset:var(--header-h) 0 0 0;
  z-index:25;
  overflow-y:auto;
  overscroll-behavior:contain;
  background:var(--paper);
  border-top:1px solid var(--rule);
  opacity:0;
  transform:translateY(-12px);
  visibility:hidden;
  transition:
    opacity var(--dur-panel-exit) var(--ease-in),
    transform var(--dur-panel-exit) var(--ease-in),
    visibility 0s linear var(--dur-panel-exit);
}
.menu[data-open]{
  opacity:1;
  transform:none;
  visibility:visible;
  transition:
    opacity var(--dur-press) var(--ease-out),   
    transform var(--dur-panel) var(--ease-drawer),
    visibility 0s linear 0s;
}
.menu :is(.menu__links li, .menu__actions, .menu__lang, .menu__legal){
  opacity:0; transform:translateY(8px);
  transition:opacity var(--dur-panel-exit) var(--ease-in), transform var(--dur-panel-exit) var(--ease-in);
}
.menu[data-open] :is(.menu__links li, .menu__actions, .menu__lang, .menu__legal){
  opacity:1; transform:none;
  transition:opacity var(--dur-panel) var(--ease-out), transform var(--dur-panel) var(--ease-drawer);
  transition-delay:calc(40ms + var(--i, 0) * 30ms);
}
.menu__inner{ display:flex; flex-direction:column; gap:var(--s-6); padding-block:var(--s-5) var(--s-7); min-height:100%; }
.menu__links{ list-style:none; margin:0; padding:0; }
.menu__links li{ border-bottom:1px solid var(--rule); }
.menu__links a{
  -webkit-tap-highlight-color:transparent;
  display:flex; align-items:center; min-height:56px;
  color:var(--ink); text-decoration:none;
  font-size:var(--fs-4); font-weight:600; letter-spacing:-.01em;
}
.menu__links a[aria-current="page"]{ text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.25em; }
.menu__actions{ display:grid; gap:var(--s-3); }
.menu__lang{ display:flex; gap:var(--s-2); align-items:center; }
.menu__lang a{
  display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px;
  color:var(--graphite); text-decoration:none; font-weight:500;
}
.menu__lang a[aria-current="true"]{ color:var(--ink); text-decoration:underline; text-underline-offset:.3em; }
.menu__legal{ margin-top:auto; font-size:var(--fs-small); color:var(--graphite); }
body.menu-open{ overflow:hidden; }
.site-footer{
  border-top:1px solid var(--rule);
  padding-block:var(--s-8) var(--s-6);
  font-size:.9375rem;
}
.site-footer__top{ row-gap:var(--s-6); }
.site-footer h2{ font-size:1rem; font-weight:600; letter-spacing:0; margin-bottom:var(--s-3); }
.site-footer ul{ list-style:none; margin:0; padding:0; }
.site-footer li a,.site-footer address a{
  display:inline-flex; align-items:center; min-height:44px;
  color:var(--ink);
  text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.25em;
  text-decoration-color:var(--rule);
  transition:text-decoration-color var(--dur-hover) var(--ease-out);
}
.site-footer li a:hover,.site-footer address a:hover{ text-decoration-color:var(--ink); }
.site-footer address{ font-style:normal; }
.site-footer__line{ color:var(--graphite); max-width:32ch; margin-top:var(--s-3); }
.site-footer__bottom{
  display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:var(--s-3) var(--s-5);
  margin-top:var(--s-7); padding-top:var(--s-4);
  border-top:1px solid var(--rule);
  color:var(--graphite); font-size:var(--fs-small);
}
.site-footer__bottom .lang{ display:flex; }
@media (max-width:767px){
  .site-footer{ padding-bottom:calc(var(--s-6) + 72px + env(safe-area-inset-bottom)); }
}
.sticky-cta{ display:none; }
@media (max-width:767px){
  .sticky-cta{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:var(--s-2);
    position:fixed; left:0; right:0; bottom:0; z-index:20;
    padding:var(--s-2) var(--gutter) calc(var(--s-2) + env(safe-area-inset-bottom));
    background:var(--paper);
    border-top:1px solid var(--rule);
    transform:translateY(100%);
    visibility:hidden;
    transition:
      transform var(--dur-panel-exit) var(--ease-in),
      visibility 0s linear var(--dur-panel-exit);
  }
  .sticky-cta[data-visible]{
    transform:none;
    visibility:visible;
    transition:
      transform var(--dur-panel) var(--ease-out),
      visibility 0s linear 0s;
  }
  .sticky-cta .btn{ min-height:48px; padding:0 var(--s-3); }
}
.icon-wa{ fill:none; stroke:currentColor; stroke-width:1.6; stroke-linejoin:round; }
.icon-wa .handset{ fill:currentColor; stroke:none; }
.mono{ font-family:var(--font-mono); } 
section.hero{ padding-block:var(--s-7) var(--section-m); } 
@media (min-width:1024px){ section.hero{ padding-top:var(--s-9); } }
.hero__grid{ align-items:center; row-gap:var(--s-7); }
.hero__sub{ margin-top:var(--s-5); max-width:52ch; }
.hero__ctas{ margin-top:var(--s-6); }
.hero__promise{ display:flex; align-items:center; gap:var(--s-2); margin-top:var(--s-6); font-weight:500; }
.hero__proof{ margin-top:var(--s-3); max-width:56ch; color:var(--graphite); }
.hero__artefact figcaption{ margin-top:var(--s-3); max-width:48ch; }
.inbox{ border-radius:var(--radius-l); padding:var(--s-5); box-shadow:var(--shadow-panel); }
@media (min-width:768px){ .inbox{ padding:var(--s-6); } }
.inbox__head{
  display:flex; justify-content:space-between; align-items:baseline; gap:var(--s-3);
  padding-bottom:var(--s-3); border-bottom:1px solid var(--graphite);
}
.inbox__title{ font-weight:600; }
.inbox__list{ margin:0; }
.inbox__row{
  display:grid; grid-template-columns:auto 1fr auto; align-items:center;
  column-gap:var(--s-3); row-gap:var(--s-1);
  padding:var(--s-4) 0 var(--s-4) var(--s-4);
  border-bottom:1px solid var(--graphite);
  border-left:2px solid transparent;
}
.inbox__row:last-child{ border-bottom:0; padding-bottom:0; }
.inbox__row.is-open{ border-left-color:var(--signal); }
.inbox__channel{ font-weight:600; }
.inbox__time{ color:var(--kitchen-muted); font-size:.875rem; }
.inbox__row .chip{ grid-column:3; grid-row:1; }
.inbox__text{ grid-column:1 / -1; color:var(--kitchen-text); }
.inbox__record{
  grid-column:1 / -1; margin-top:var(--s-3);
  border:1px solid var(--graphite); border-radius:var(--radius-s);
  padding:var(--s-2) var(--s-3); font-size:.875rem;
}
.inbox__record > div{ display:grid; grid-template-columns:5.5rem minmax(0,1fr); gap:var(--s-3); padding:var(--s-1) 0; }
.inbox__record dt{ color:var(--kitchen-muted); }
.proof__intro{ align-items:end; margin-bottom:var(--s-7); }
.proof__lede{ color:var(--graphite); }
.proof__items{ row-gap:var(--s-8); }
.proof__item > * + *{ margin-top:var(--s-3); }
.proof__item h3{ margin-top:var(--s-5); }
.proof__item > p{ max-width:48ch; }
.proof__rel{ color:var(--graphite); }
.proof__media{
  display:block; overflow:hidden;
  aspect-ratio:2 / 1;
  background:var(--surface);
  border:1px solid var(--rule);
  border-radius:var(--radius-m);
}
.proof__media picture{ display:block; height:100%; }
.proof__media img{ width:100%; height:100%; object-fit:cover; object-position:center top; }
@media (min-width:768px){ .proof__item--offset{ margin-top:var(--s-9); } }
.day__intro{ margin-top:var(--s-4); font-size:var(--fs-5); color:var(--graphite); }
.day__axis{
  position:relative; height:84px;
  margin:var(--s-2) 0 var(--s-8);
  border-bottom:1px solid var(--ink);
}
.day__always{
  position:absolute; left:0; right:0; bottom:10px;
  border-top:2px dashed var(--attention);
  opacity:.55;
}
.day__mark{
  position:absolute; left:var(--at); bottom:0;
  width:2px; height:44px; margin-left:-1px;
  background:var(--attention);
}
.day__mark span{
  position:absolute; bottom:100%; left:50%;
  transform:translateX(-50%);
  padding-bottom:var(--s-1);
  font-size:.8125rem; font-weight:600; color:var(--ink);
}
.day__tick{
  position:absolute; left:var(--at); top:100%;
  transform:translateX(-50%);
  padding-top:var(--s-2);
  font-size:.75rem; color:var(--graphite);
  font-variant-numeric:tabular-nums;
}
.day__list{ margin:0; }
.day__list li{
  display:grid; grid-template-columns:5.5rem minmax(0,1fr); gap:var(--s-4);
  align-items:baseline;
  padding:var(--s-4) 0 var(--s-4) var(--s-4);
  border-top:1px solid var(--rule);
  border-left:2px solid var(--attention);
}
.day__list li.day__always-row{ border-left-style:dashed; }
.day__time{ font-weight:600; font-size:var(--fs-5); }
.day__list p{ font-size:var(--fs-5); line-height:1.4; }
@media (min-width:768px){ .day__list li{ grid-template-columns:7rem minmax(0,1fr); } }
.journey{ padding-block:var(--section-l); }
@media (min-width:1024px){
  .journey{
    width:calc(100% - 2 * var(--gutter));
    max-width:calc(var(--container) + 2 * var(--s-9));
    margin-inline:auto;
    border-radius:var(--radius-xl);
    padding-inline:var(--s-7);
  }
}
.journey__head{ align-items:end; }
.journey__label{
  display:flex; align-items:center; gap:var(--s-2);
  margin:var(--s-6) 0 var(--s-8);
  font-size:var(--fs-small); color:var(--kitchen-muted);
}
.journey__steps{ position:relative; margin:0; display:grid; gap:var(--s-8); }
.journey__steps::before{
  content:""; position:absolute; left:5px; top:10px; bottom:10px;
  width:2px; background:var(--signal); opacity:.45;
}
.step{
  position:relative;
  display:grid; gap:var(--s-3);
  grid-template-areas:"n" "art" "cap";
  padding-left:var(--s-7);
}
.step::before{
  content:""; position:absolute; left:0; top:6px;
  width:12px; height:12px; border-radius:50%;
  background:var(--signal);
}
.step__n{ grid-area:n; font-size:var(--fs-small); color:var(--kitchen-muted); font-variant-numeric:tabular-nums; }
.step__caption{ grid-area:cap; font-size:var(--fs-4); font-weight:500; line-height:1.3; max-width:30ch; }
.step__artefact{ grid-area:art; max-width:440px; }
@media (min-width:1024px){
  .step{
    grid-template-columns:minmax(0,5fr) minmax(0,6fr);
    grid-template-areas:"n art" "cap art";
    grid-template-rows:auto 1fr;
    column-gap:var(--s-8);
  }
  .step__artefact{ justify-self:start; width:100%; }
}
.bubble{ padding:var(--s-3) var(--s-4); border-radius:var(--radius-m); max-width:34ch; line-height:1.4; }
.bubble--in{ background:var(--graphite); color:var(--kitchen-text); }
.bubble--out{ background:var(--signal); color:var(--ink); margin-left:auto; }
.route{ margin:0; }
.route li{ display:flex; gap:var(--s-3); padding:var(--s-2) 0; border-top:1px solid var(--graphite); }
.route li:first-child{ border-top:0; padding-top:0; }
.route .mono{ color:var(--kitchen-muted); }
.route li.is-current{ color:var(--signal); font-weight:600; }
.journey__cta{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--s-4) var(--s-6);
  margin-top:var(--s-9); padding-top:var(--s-6);
  border-top:1px solid var(--graphite);
}
.offer__title{ margin-bottom:var(--s-7); }
.offer__row{ align-items:center; }
.offer__row + .offer__row{ margin-top:var(--s-9); }
.offer__text > * + *{ margin-top:var(--s-4); }
.offer__text h3{ margin-bottom:var(--s-2); }
@media (max-width:1023px){ .offer__row--flip .offer__text{ order:2; } }
.frame__media.flow{ border-radius:var(--radius-l); } 
.flow{
  display:grid; align-items:center; justify-items:center;
  grid-template-columns:1fr;
  gap:0; padding:var(--s-5);
}
.flow__col{ list-style:none; margin:0; padding:0; width:100%; display:grid; grid-template-columns:repeat(3,1fr); gap:var(--s-2); }
.flow__col li{
  display:grid; place-items:center; text-align:center;
  min-height:48px; padding:var(--s-2);
  border:1px solid var(--ink); border-radius:var(--radius-s);
  background:var(--surface);
  font-size:.875rem; font-weight:500; line-height:1.25;
}
.flow__col--out li{ border-color:var(--signal-text); }
.flow__hub{
  padding:var(--s-4) var(--s-6);
  background:var(--ink); color:var(--paper);
  border-radius:var(--radius-m);
  font-weight:600;
}
.flow__conn{ fill:none; stroke:var(--ink); stroke-width:1.5; }
.flow__conn path{ vector-effect:non-scaling-stroke; }
.flow__conn--out{ stroke:var(--signal); stroke-width:2; }
.flow__conn--h{ display:none; }
.flow__conn--v{ display:block; width:66%; height:40px; }
@media (min-width:768px){
  .flow{ grid-template-columns:minmax(0,1fr) 56px auto 56px minmax(0,1fr); padding:var(--s-7) var(--s-6); }
  .flow__col{ grid-template-columns:1fr; gap:var(--s-4); }
  .flow__col li{ font-size:.9375rem; }
  .flow__conn--v{ display:none; }
  .flow__conn--h{ display:block; width:56px; height:176px; } 
}
.case__rel{ margin-top:var(--s-3); color:var(--graphite); }
.case__steps{ margin:var(--s-6) 0; }
.case__steps > div{ padding:var(--s-4) 0; border-top:1px solid var(--rule); }
.case__steps dt{ font-weight:600; }
.case__steps dd{ margin-top:var(--s-1); max-width:var(--measure); }
.case__media{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:var(--s-4); align-items:start; }
@media (min-width:768px){ .case__media{ gap:var(--s-5); } }
.owner-slot{
  aspect-ratio:4 / 5; display:grid; place-items:center; text-align:center;
  padding:var(--s-4);
  background:var(--paper);
  border:1.5px dashed var(--attention);
}
.phases__head{ align-items:end; margin-bottom:var(--s-7); }
.phases__list{ margin:0; display:grid; grid-template-columns:1fr; }
.phases__list li{
  display:grid; grid-template-columns:2.5rem minmax(0,1fr); column-gap:var(--s-3);
  padding:var(--s-4) 0; border-top:1px solid var(--rule);
}
.phases__list li > :not(.phases__n){ grid-column:2; }
.phases__n{ grid-row:1 / span 2; font-size:var(--fs-4); font-weight:600; color:var(--graphite); line-height:1.25; }
.phases__list p{ margin-top:var(--s-1); color:var(--graphite); font-size:.9375rem; }
@media (min-width:768px){
  .phases__list{ grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:var(--s-5); }
}
@media (min-width:1024px){
  .phases__list{ grid-template-columns:repeat(6,minmax(0,1fr)); }
  .phases__list li{ display:block; border-top:2px solid var(--ink); padding-top:var(--s-4); }
  .phases__n{ display:block; font-size:var(--fs-3); margin-bottom:var(--s-4); }
}
.commitments{ margin-top:var(--s-8); align-items:end; }
.commitments__list{ margin:0; display:grid; grid-template-columns:1fr; column-gap:var(--s-5); }
.commitments__list li{ padding:var(--s-3) 0; border-top:1px solid var(--rule); font-size:var(--fs-5); font-weight:500; }
@media (min-width:768px){ .commitments__list{ grid-template-columns:1fr 1fr; } }
.proof__visual{
  display:grid; place-items:center;
  aspect-ratio:2 / 1;
  padding:var(--s-5);
  border-radius:var(--radius-m);
}
.proof__visual .artefact{ display:block; width:min(100%, 380px); text-align:left; }
.proof__visual .artefact__head{ display:flex; }
.proof__visual .artefact__rows{ display:grid; gap:var(--s-2); }
.proof__visual .artefact > .artefact__label{ display:block; margin-top:var(--s-3); padding-top:var(--s-3); border-top:1px solid var(--graphite); }
.proof__media.proof__visual{ background:var(--kitchen); border:0; color:var(--kitchen-text); text-decoration:none; }
@media (max-width:479px){ .proof__visual{ aspect-ratio:auto; padding:var(--s-4); } }
.proof-row{ display:grid; grid-template-columns:6.5rem minmax(0,1fr); gap:var(--s-3); }
.proof-k{ color:var(--kitchen-muted); }
.offer__visual{ display:grid; place-items:center; padding:var(--s-7) var(--s-5); border-radius:var(--radius-l); }
.offer__visual .artefact{ width:min(100%, 420px); }
.case__system .artefact__rows > div{ grid-template-columns:minmax(0,1fr) auto; align-items:center; }
.bl-home-trust{ overflow:hidden; padding:80px 0; background:var(--band); color:var(--on-dark); }
.bl-home-trust__grid{
  display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  align-items:end; gap:clamp(3rem,10vw,9rem);
}
.bl-section-label{
  display:inline-flex; align-items:center; gap:.65rem;
  font-size:12px; font-weight:600; line-height:18px; letter-spacing:.1em;
  text-transform:uppercase; 
}
.bl-section-label::before{
  content:""; width:2.5rem; height:1px; opacity:.45;
  background:linear-gradient(90deg, transparent, currentColor); 
}
.bl-section-label::after{ content:""; width:.45rem; height:.45rem; border-radius:50%; background:var(--signal); }
.bl-section-label--light{ color:var(--band-label); }
.bl-home-trust h2{
  max-width:48rem; margin:.9rem 0 1rem; color:var(--on-dark);
  font-size:clamp(2rem,3.5vw,3.25rem); font-weight:400; line-height:1.09; letter-spacing:-.045em;
}
.bl-home-trust p{ max-width:43rem; color:var(--band-muted); font-size:16px; line-height:1.6; }
.bl-home-trust__aside{
  padding:32px; background:var(--band-card); border:1px solid var(--band-line);
  border-radius:22px; 
}
.bl-trust-logo{ display:block; width:200px; height:auto; margin-bottom:48px; }
.bl-home-trust__aside strong{
  display:block; margin-bottom:1rem; color:var(--on-dark);
  font-size:clamp(2rem,3vw,3rem); font-weight:500; line-height:1; letter-spacing:-.04em;
}
.bl-text-link{
  display:inline-flex; align-items:center; gap:.75rem; width:fit-content;
  margin-top:1.8rem; min-height:44px; color:var(--on-dark); font-weight:600; text-decoration:none;
}
.bl-text-link::after{
  content:"↗"; display:grid; place-items:center; width:2.5rem; height:2.5rem;
  border:1px solid currentColor; border-radius:999px;
  transition:transform var(--dur-hover) var(--ease-out), background-color var(--dur-hover) var(--ease-out);
}
@media (hover:hover){ .bl-text-link:hover::after{ transform:translate(2px,-2px); background:color-mix(in oklab, var(--signal) 12%, transparent); } }
@media (max-width:1023px){
  .bl-home-trust{ padding:56px 0; }
  .bl-home-trust__grid{ grid-template-columns:1fr; gap:48px; }
  .bl-home-trust p{ font-size:14px; }
}
.faq-sec h2{ margin-bottom:var(--s-4); }
.close__inner{ max-width:780px; }
.close h2{ font-size:var(--fs-1); line-height:1.04; letter-spacing:-.03em; font-weight:650; }
.close__steps{
  margin:var(--s-7) auto var(--s-4); max-width:520px;
  display:grid; gap:0; text-align:left;
}
.close__steps li{
  display:grid; grid-template-columns:2rem minmax(0,1fr); gap:var(--s-3);
  padding:var(--s-3) 0; border-top:1px solid var(--rule);
  font-size:var(--fs-5);
}
.close__steps .num{ font-weight:600; color:var(--graphite); }
.close .cluster{ margin-top:var(--s-6); }
.contact{ padding-top:var(--s-7); }
@media (min-width:1024px){
  .contact{ padding-top:var(--s-9); }
  .contact__grid{ grid-template-rows:auto 1fr; }
  .contact__intro{ grid-row:1; }
  .contact__form{ grid-row:1 / span 2; }
  .contact__alt{ grid-row:2; align-self:start; }
}
.contact__lead{ margin-top:var(--s-5); max-width:46ch; }
.contact__h{ margin-top:var(--s-7); margin-bottom:var(--s-3); }
.contact__steps{ margin:0; }
.contact__steps li{
  display:grid; grid-template-columns:2rem minmax(0,1fr); gap:var(--s-3);
  padding:var(--s-3) 0; border-top:1px solid var(--rule);
}
.contact__steps .num{ font-weight:600; color:var(--graphite); }
.contact__promise{ display:flex; align-items:center; gap:var(--s-2); margin-top:var(--s-5); font-weight:500; }
.contact__privacy{ margin-top:var(--s-4); color:var(--graphite); max-width:60ch; }
.contact__alt .cluster{ gap:var(--s-5); }
.form-panel{
  background:var(--surface);
  border:1px solid var(--rule);
  border-radius:var(--radius-l);
  box-shadow:var(--shadow-panel);
  padding:var(--s-5);
}
@media (min-width:768px){ .form-panel{ padding:var(--s-7); } }
.hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.lead-form fieldset{ border:0; margin:0; padding:0; min-width:0; }
.lead-form legend{ padding:0; margin-bottom:var(--s-4); }
.lead-form__step + .lead-form__step{ margin-top:var(--s-7); }   
.js-steps .lead-form__step + .lead-form__step{ margin-top:0; }
.lead-form__progress{ margin-bottom:var(--s-5); }
.lead-form__progress p{ color:var(--graphite); margin-bottom:var(--s-2); }
.lead-form__bar{ display:grid; grid-template-columns:1fr 1fr; gap:var(--s-1); }
.lead-form__bar span{ height:3px; background:var(--rule); transition:background-color var(--dur-panel) var(--ease-out); }
.lead-form__bar span.is-current{ background:var(--ink); }
.lead-form__bar span.is-done{ background:var(--signal); }   
.choices{ display:grid; gap:var(--s-2); margin-bottom:var(--s-5); }
.choice{
  display:flex; align-items:center; gap:var(--s-3);
  min-height:56px; padding:var(--s-3) var(--s-4);
  border:1px solid var(--field-border); border-radius:var(--radius-s);
  background:var(--surface);
  cursor:pointer; line-height:1.3; font-weight:500;
  -webkit-tap-highlight-color:transparent;
  transition:border-color var(--dur-hover) var(--ease-out), background-color var(--dur-hover) var(--ease-out), transform var(--dur-press) var(--ease-out);
}
.choice input{ flex:none; width:20px; height:20px; margin:0; accent-color:var(--ink); }
@media (hover:hover){ .choice:hover{ border-color:var(--ink); background:var(--wash); } }
.choice:active{ transform:scale(.99); }
.choice:has(input:checked){ border-color:var(--ink); background:var(--wash); }
.choice:has(input:focus-visible){ outline:2px solid var(--signal-text); outline-offset:2px; }
.choice input:focus-visible{ outline:none; }
.field{ display:grid; gap:var(--s-2); margin-bottom:var(--s-5); }
.field label{ font-weight:500; }
.field input[type="text"],.field input[type="email"],.field input[type="tel"],.field textarea{
  width:100%; min-height:48px;
  padding:var(--s-3) var(--s-4);
  border:1px solid var(--field-border); border-radius:var(--radius-s);
  background:var(--surface); color:var(--ink);
  font-size:1rem; line-height:1.4;
  transition:border-color var(--dur-hover) var(--ease-out);
}
.field textarea{ min-height:96px; resize:vertical; }
.field input::placeholder,.field textarea::placeholder{ color:var(--graphite); opacity:1; }
@media (hover:hover){ .field input:hover,.field textarea:hover{ border-color:var(--ink); } }
.field input:focus,.field textarea:focus{ border-color:var(--ink); outline:2px solid var(--signal-text); outline-offset:2px; }
.field [aria-invalid="true"]{ border-color:var(--attention); border-width:2px; }
.field-hint{ font-size:var(--fs-small); color:var(--graphite); }
.field--check{ grid-template-columns:20px minmax(0,1fr); align-items:start; column-gap:var(--s-3); }
.field--check input{ width:20px; height:20px; margin:.15em 0 0; accent-color:var(--ink); }
.field--check label{ font-weight:400; font-size:.9375rem; }
.field--check .field-error{ grid-column:2; }
.field-error,.form-alert{
  display:flex; gap:var(--s-2); align-items:flex-start;
  font-size:var(--fs-small); font-weight:500; color:var(--ink);
}
.field-error::before,.form-alert::before{
  content:""; flex:none; width:3px; align-self:stretch; min-height:1.2em;
  background:var(--attention);
}
.form-alert{ margin-bottom:var(--s-4); font-size:.9375rem; }
.choices + .field-error,.lead-form legend + .field-error{ margin-bottom:var(--s-3); }
.lead-form__actions{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:var(--s-3); margin-top:var(--s-2); }
.lead-form__actions [data-submit],.lead-form__actions [data-next]{ margin-left:auto; }
@media (max-width:479px){
  .lead-form__actions .btn{ flex:1 1 100%; }
  .lead-form__actions [data-back]{ order:2; }
}
.motion-ok .lead-form__step.is-entering{ animation:step-in var(--dur-panel) var(--ease-drawer); }
.motion-ok .lead-form__step.is-entering.is-back{ animation-name:step-in-back; }
@keyframes step-in{ from{ opacity:0; transform:translateX(16px); } to{ opacity:1; transform:none; } }
@keyframes step-in-back{ from{ opacity:0; transform:translateX(-16px); } to{ opacity:1; transform:none; } }
.lead-done > * + *{ margin-top:var(--s-4); }
.lead-done:focus{ outline:none; }
.lead-done__card{ margin-block:var(--s-5); }
.motion-ok .lead-done.is-entering{ animation:step-in var(--dur-panel) var(--ease-drawer); }
.lead-done .chip{ transition:opacity var(--dur-hover) var(--ease-out); }
.lead-done .chip.is-swapping{ opacity:0; }
.motion-ok [data-motion~="group"] > *{
  opacity:0; transform:translateY(var(--rise));
  transition:opacity var(--dur-enter) var(--ease-enter), transform var(--dur-enter) var(--ease-enter);
  transition-delay:calc(var(--i, 0) * var(--stagger));
}
.motion-ok [data-motion~="group"].is-in > *{ opacity:1; transform:none; }
.motion-ok [data-motion~="rules"] > *{ position:relative; border-top-color:transparent; }
.motion-ok [data-motion~="rules"] > *::after{
  content:""; position:absolute; left:0; right:0; top:-1px; height:1px;
  background:var(--rule);
  transform:scaleX(0); transform-origin:left;
  transition:transform var(--dur-enter) var(--ease-enter);
  transition-delay:calc(var(--i, 0) * var(--stagger) + 80ms);
}
@media (min-width:1024px){
  .motion-ok .phases__list[data-motion~="rules"] > *::after{ top:-2px; height:2px; background:var(--ink); }
}
.motion-ok [data-motion~="rules"].is-in > *::after{ transform:none; }
.motion-ok [data-motion~="media"]{
  clip-path:inset(14% 0 0 0 round var(--radius-m));
  transition:clip-path var(--dur-enter) var(--ease-enter);
}
.motion-ok [data-motion~="media"] img{
  transform:scale(1.06);
  transition:transform calc(var(--dur-enter) + 140ms) var(--ease-enter);
}
.motion-ok [data-motion~="media"].is-in{ clip-path:inset(0 0 0 0 round var(--radius-m)); }
.motion-ok [data-motion~="media"].is-in img{ transform:none; }
@media (max-width:767px){ .motion-ok [data-motion~="media"]{ clip-path:inset(8% 0 0 0 round var(--radius-m)); } }
.proof__media img,.frame[data-hover-zoom] img{ transition:transform 700ms var(--ease-out); }
@media (hover:hover) and (pointer:fine){
  .proof__item:hover .proof__media img,
  .frame[data-hover-zoom]:hover img{ transform:scale(1.025); }
}
.motion-ok [data-motion~="inbox"]{
  opacity:0; transform:translateY(20px) scale(.985);
  transition:opacity var(--dur-enter) var(--ease-enter), transform calc(var(--dur-enter) + 140ms) var(--ease-enter);
}
.motion-ok [data-motion~="inbox"].is-in{ opacity:1; transform:none; }
.motion-ok [data-motion~="inbox"] .inbox__row{
  opacity:0; transform:translateY(8px);
  transition:opacity var(--dur-enter) var(--ease-enter), transform var(--dur-enter) var(--ease-enter), border-left-color var(--dur-panel) var(--ease-out);
  transition-delay:calc(220ms + var(--i, 0) * 90ms);
}
.motion-ok [data-motion~="inbox"].is-in .inbox__row{ opacity:1; transform:none; }
.inbox__row .chip{ transition:opacity var(--dur-hover) var(--ease-out); }
.inbox__row .chip.is-swapping{ opacity:0; }
.inbox__row.is-captured{ border-left-color:var(--signal); transition-delay:0s; }
.motion-ok [data-motion~="marks"] .day__mark{
  transform:scaleY(0); transform-origin:bottom;
  transition:transform var(--dur-enter) var(--ease-enter);
  transition-delay:calc(var(--i, 0) * 120ms);
}
.motion-ok [data-motion~="marks"] .day__mark span{ opacity:0; transition:opacity var(--dur-panel) var(--ease-out); transition-delay:calc(var(--i, 0) * 120ms + 200ms); }
.motion-ok [data-motion~="marks"].is-in .day__mark{ transform:none; }
.motion-ok [data-motion~="marks"].is-in .day__mark span{ opacity:1; }
@media (min-width:768px){
  .motion-ok [data-motion~="draw"] .flow__conn--h{
    clip-path:inset(0 100% 0 0);
    transition:clip-path var(--dur-signature) var(--ease-enter);
  }
  .motion-ok [data-motion~="draw"] .flow__conn--out{ transition-delay:320ms; }
  .motion-ok [data-motion~="draw"] .flow__col--out li{ opacity:.35; transition:opacity var(--dur-enter) var(--ease-out) 640ms; }
  .motion-ok [data-motion~="draw"].is-in .flow__conn--h{ clip-path:inset(0 0 0 0); }
  .motion-ok [data-motion~="draw"].is-in .flow__col--out li{ opacity:1; }
}
@supports (animation-timeline: view()){
  @media (min-width:1024px) and (prefers-reduced-motion:no-preference){
    [data-motion~="window"]{
      transform-origin:50% 0;
      animation:window-open linear both;
      animation-timeline:view();
      animation-range:entry 0% cover 32%;
    }
    [data-motion~="drift"]{
      animation:drift linear both;
      animation-timeline:view();
      animation-range:cover 0% cover 100%;
    }
  }
}
@keyframes window-open{ from{ transform:scale(.94) translateY(24px); } to{ transform:none; } } 
@keyframes drift{ from{ transform:translateY(14px); } to{ transform:translateY(-14px); } }
.motion-ok:not(.motion-live) :is([data-motion~="group"] > *, [data-motion~="media"], [data-motion~="media"] img, [data-motion~="inbox"], [data-motion~="inbox"] .inbox__row, [data-motion~="marks"] .day__mark, [data-motion~="marks"] .day__mark span, [data-motion~="draw"] .flow__conn--h, [data-motion~="draw"] .flow__col--out li){
  animation:motion-failsafe 0s 2.5s forwards;
}
.motion-ok:not(.motion-live) [data-motion~="rules"] > *::after{ animation:motion-failsafe 0s 2.5s forwards; }
@keyframes motion-failsafe{ to{ opacity:1; transform:none; clip-path:none; } }
.media-ph{
  display:grid; place-items:center; align-content:center; gap:var(--s-2); text-align:center;
  aspect-ratio:16 / 9;
  padding:var(--s-5);
  background:var(--surface);
  border:1.5px dashed var(--attention);
  border-radius:var(--radius-m);
  color:var(--graphite); font-size:var(--fs-small);
}
.crumbs ol{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:var(--s-2); font-size:var(--fs-small); color:var(--graphite); }
.crumbs li + li::before{ content:"/"; margin-right:var(--s-2); color:var(--field-border); }
.crumbs a{ color:var(--graphite); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.2em; }
@media (hover:hover){ .crumbs a:hover{ color:var(--ink); } }
.page-head{ padding-block:var(--s-7) var(--section-s); }
@media (min-width:1024px){ .page-head{ padding-top:var(--s-9); } }
.page-head h1{ max-width:22ch; }
.page-head .crumbs + h1{ margin-top:var(--s-5); }
.page-head__lede{ margin-top:var(--s-5); max-width:54ch; }
.page-head__meta{ margin-top:var(--s-7); align-items:start; }
.page-head__meta > div > * + *{ margin-top:var(--s-4); }
.page-head__rel{ color:var(--graphite); }
.cs-shot .frame__media picture, .work__media .frame__media picture, .cs-next .frame__media picture{ display:block; height:100%; }
.cs-shot, .page-head__visual{ margin-top:var(--s-8); }
.cs-shot .frame__media{ aspect-ratio:2 / 1; }
.cs-shot .frame__media img{ height:100%; object-fit:cover; object-position:center top; }
@media (max-width:767px){ .cs-shot .frame__media{ aspect-ratio:auto; } .cs-shot .frame__media img{ height:auto; } }
.work__row{ align-items:center; }
.work__row + .work__row{ margin-top:var(--s-9); }
.work__media .frame__media{ aspect-ratio:2 / 1; display:block; }
.work__media .frame__media img{ height:100%; object-fit:cover; object-position:center top; }
.work__text > * + *{ margin-top:var(--s-4); }
.work__kicker{ font-size:var(--fs-small); color:var(--graphite); }
.work__text h2{ margin-top:var(--s-2); }
.work__rel{ color:var(--graphite); font-size:var(--fs-small); }
.rule-list{ margin:0; }
.rule-list li{ padding:var(--s-3) 0; border-top:1px solid var(--rule); }
.rule-list--large li{ font-size:var(--fs-5); font-weight:500; }
@media (min-width:768px){ .rule-list--cols{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:var(--s-5); } }
@media (min-width:1024px){
  .work__row .work__media{ grid-column:1 / span 7; }
  .work__row .work__text{ grid-column:9 / -1; }
  .work__row--flip .work__media{ grid-column:6 / -1; grid-row:1; }
  .work__row--flip .work__text{ grid-column:1 / span 4; grid-row:1; }
}
.how__list{ margin-top:var(--s-7); }
.how__note{ margin-top:var(--s-5); }
.close__lede{ margin:var(--s-5) auto 0; max-width:56ch; color:var(--graphite); }
.cs-sec{ align-items:start; }
@media (min-width:1024px){
  .cs-sec__head{ grid-column:1 / span 4; position:sticky; top:var(--s-7); }
  .cs-sec__body{ grid-column:6 / -1; }
}
.cs-sec__head p{ margin-top:var(--s-3); color:var(--graphite); }
.cs-sec__body > * + *{ margin-top:var(--s-5); }
.cs-sec__body > p{ max-width:var(--measure); }
.cs-sec + .cs-sec{ margin-top:var(--section-m); }
.cs-built{ display:grid; gap:var(--s-9); }
.cs-part > * + *{ margin-top:var(--s-3); }
.cs-part > p{ max-width:var(--measure); }
.cs-part .frame{ margin-top:var(--s-5); }
.cs-art{ display:grid; place-items:center; padding:var(--s-7) var(--s-5); background:var(--wash); border:0; }
.cs-art .artefact{ width:min(100%, 420px); }
.cs-art--phone .artefact{ width:min(100%, 300px); border-radius:var(--radius-l); padding:var(--s-5); }
.cs-art .flow{ width:100%; }
.cs-note{ padding:var(--s-4) var(--s-5); border-left:2px solid var(--rule); color:var(--graphite); max-width:var(--measure); }
.cs-next{ align-items:center; }
.cs-next__text > * + *{ margin-top:var(--s-3); }
.cs-next .frame__media{ display:block; aspect-ratio:2 / 1; }
.cs-next .frame__media img{ height:100%; object-fit:cover; object-position:center top; }
.sv-panel{ display:grid; place-items:center; padding:var(--s-7) var(--s-5); border-radius:var(--radius-l); overflow:hidden; }
.sv-slot{ width:100%; max-width:583.2px; min-width:0; } 
@font-face{
  font-family:"Inter Tight"; font-style:normal; font-weight:100 900; font-display:swap;
  src:url("/assets/fonts/inter-tight-latin.woff2") format("woff2");
}
.sv-slot{ font-family:"Inter Tight", sans-serif; font-size:16px; line-height:1.5; letter-spacing:normal; }
.sv-slot :is(h1,h2,h3,h4){ font-family:"Inter Tight", sans-serif; letter-spacing:normal; }
.sv-slot svg{ vertical-align:middle; }
@media (max-width:767px){ .sv-panel{ padding:var(--s-5) var(--s-3); border-radius:var(--radius-m); } }
.situations{ margin:0; border-bottom:1px solid var(--rule); }
.situation{
  display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:var(--s-2) var(--s-5);
  padding:var(--s-5) 0; border-top:1px solid var(--rule);
  color:var(--ink); text-decoration:none;
}
.situation__q{ font-size:var(--fs-4); font-weight:500; line-height:1.3; }
.situation__to{ color:var(--signal-text); font-weight:600; white-space:nowrap; }
.situation__to::after{ content:" →"; }
@media (hover:hover){
  .situation__q{ transition:color var(--dur-hover) var(--ease-out); }
  .situation:hover .situation__q{ color:var(--signal-text); }
  .situation:hover .situation__to{ text-decoration:underline; text-underline-offset:.2em; }
}
@media (max-width:599px){ .situation{ grid-template-columns:1fr; } }
.svc-pair{ row-gap:var(--s-8); }
.svc-pair__item > * + *{ margin-top:var(--s-4); }
.svc-pair__item h2{ margin-bottom:var(--s-2); }
.split-list{ row-gap:var(--s-7); }
.split-list h3{ margin-bottom:var(--s-3); }
.rule-list--no li::before{ content:"No: "; font-weight:600; color:var(--graphite); }
@media (min-width:768px){ .rule-list--2{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:var(--s-5); } }
.phase-rows{ margin:0; }
.phase-row{ padding:var(--s-6) 0; border-top:1px solid var(--rule); }
.phase-row:last-child{ border-bottom:1px solid var(--rule); }
.phase-row__head{ display:flex; align-items:baseline; gap:var(--s-3); }
.phase-row__n{ font-size:var(--fs-4); font-weight:600; color:var(--graphite); font-variant-numeric:tabular-nums; }
.phase-row__cols{ margin:var(--s-4) 0 0; display:grid; gap:var(--s-4); }
.phase-row__cols dt{ font-size:var(--fs-small); color:var(--graphite); }
.phase-row__cols dd{ margin-top:var(--s-1); max-width:40ch; }
@media (min-width:1024px){
  .phase-row{ display:grid; grid-template-columns:minmax(0,3fr) minmax(0,9fr); column-gap:var(--s-5); }
  .phase-row__cols{ margin-top:0; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:var(--s-5); }
}
.defs > div{ padding:var(--s-4) 0; border-top:1px solid var(--rule); }
.defs dt{ font-weight:600; }
.defs dd{ margin-top:var(--s-1); max-width:var(--measure); }
.hola{ padding-block:var(--s-6) var(--s-8); }
@media (min-width:768px){ .hola{ padding-block:var(--s-9); } }
.hola__inner{ max-width:640px; }
.hola__card{ color:var(--on-dark); }
.hola__logo{ width:180px; margin-bottom:var(--s-6); }
.hola__title{ font-size:var(--fs-3); line-height:1.15; letter-spacing:-.02em; font-weight:600; color:var(--on-dark); }
.hola__where{ display:flex; align-items:center; gap:var(--s-2); margin-top:var(--s-4); color:var(--band-muted); }
.hola__what{ margin-top:var(--s-6); }
.hola__cta{ margin-top:var(--s-5); }
.hola__promise{ margin-top:var(--s-3); }
.hola__block{ margin-top:var(--s-7); }
.hola__block h2{ margin-bottom:var(--s-3); }
.hola__block .situation{ padding:var(--s-4) 0; }
.hola__block .situation__q{ font-size:var(--fs-5); }
.hola__sub{ display:block; margin-top:var(--s-1); font-size:var(--fs-small); font-weight:400; color:var(--graphite); }
.hola__rel{ margin-top:var(--s-3); }
.hola__foot{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:var(--s-3); margin-top:var(--s-8); padding-top:var(--s-4); border-top:1px solid var(--rule); color:var(--graphite); }
@media (max-width:599px){ .hola .situation{ grid-template-columns:minmax(0,1fr) auto; } }
.notfound__inner{ max-width:720px; }
.notfound h1{ margin-top:var(--s-3); }
.notfound__cta{ margin-top:var(--s-6); }
.legacy-roll{ position:relative; display:inline-block; overflow:hidden; line-height:1.2; vertical-align:middle; }
.legacy-roll [data-button-upper-text]{ display:block; white-space:nowrap; }
.legacy-roll [data-button-lower-text]{ position:absolute; left:0; top:100%; display:block; white-space:nowrap; }
html.lenis, html.lenis body{ height:auto; }
.lenis.lenis-smooth{ scroll-behavior:auto !important; }
@media (prefers-reduced-motion:reduce){
  .btn,.btn:active,.btn--primary:hover,.btn--primary:active{ transform:none; transition-property:background-color,color,border-color,box-shadow; }
  .menu,.menu[data-open]{ transform:none; }
  .menu :is(.menu__links li, .menu__actions, .menu__lang, .menu__legal),
  .menu[data-open] :is(.menu__links li, .menu__actions, .menu__lang, .menu__legal){ transform:none; transition-delay:0s; }
  .text-action::after{ transition:none; }
  .choice,.choice:active{ transform:none; }
  .proof__media img,.frame[data-hover-zoom] img{ transition:none; }
  .proof__item:hover .proof__media img,.frame[data-hover-zoom]:hover img{ transform:none; }
  .menu-toggle__icon line{ transition:none; }
  .faq__icon{ transition:none; }
  .bl-text-link::after{ transition:none; }
  .situation__q{ transition:none; }
  .bl-text-link:hover::after{ transform:none; }
  .faq[open] .faq__a > *{ animation:faq-fade var(--dur-panel) var(--ease-out); }
  .sticky-cta,.sticky-cta[data-visible]{
    transform:none;
    opacity:0;
    transition:opacity var(--dur-panel-exit) var(--ease-in), visibility 0s linear var(--dur-panel-exit);
  }
  .sticky-cta[data-visible]{ opacity:1; transition:opacity var(--dur-panel) var(--ease-out), visibility 0s linear 0s; }
}
@keyframes faq-fade{ from{ opacity:0; } to{ opacity:1; } }
