:root {
  --bg:#0e0e0e;
  --surface:#1c1c1c;
  --surface-2:#252525;
  --text:#f0f0f0;
  --muted:#d2d2d2;
  --line:rgba(255,255,255,.28);
  --brand:#f0f0f0;
  --brand-2:#d2d2d2;
  --link:#c9f4ff;
  --link-hover:#ffffff;
  --link-decoration:rgba(201,244,255,.72);
  --accent:#252525;
  --btn-primary-fg:#0e0e0e;
  --radius:0;
  --page-gutter:clamp(12px,2.1vw,28px);
  --panel-inline:clamp(16px,2.2vw,28px);
  --panel-block:clamp(24px,5dvh,60px);
  --control-block-size:42px;
  --hero-min-height:clamp(420px,calc(100dvh - 118px),760px);
  --glass-bg-image:url("./assets/backgrounds/nerja-cave-bg.jpg");
  --glass-bg-saturation:1.34;
  --glass-bg-contrast:1.08;
  --glass-bg-brightness:.64;
  --glass-bg-overlay:
    radial-gradient(circle at 30% 18%,rgba(255,255,255,.12),transparent 28%),
    linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.4) 42%,rgba(0,0,0,.62));
  --glass-surface-rgb:18 18 18;
  --glass-control-rgb:24 24 24;
  --glass-topbar-alpha:.56;
  --glass-control-alpha:.62;
  --glass-panel-alpha:.5;
  --glass-card-alpha:.58;
  --glass-card-hover-alpha:.68;
  --glass-pill-alpha:.64;
  --glass-field-alpha:.76;
  --glass-heavy-blur:2.5px;
  --glass-light-blur:2px;
  --glass-panel-bg:rgb(var(--glass-surface-rgb) / var(--glass-panel-alpha));
  --glass-card-bg:rgb(var(--glass-surface-rgb) / var(--glass-card-alpha));
  --glass-card-hover-bg:rgb(var(--glass-surface-rgb) / var(--glass-card-hover-alpha));
  --glass-control-bg:rgb(var(--glass-control-rgb) / var(--glass-control-alpha));
  --glass-pill-bg:rgb(var(--glass-control-rgb) / var(--glass-pill-alpha));
  --glass-field-bg:rgb(var(--glass-control-rgb) / var(--glass-field-alpha));
  --glass-topbar-bg:rgb(var(--glass-surface-rgb) / var(--glass-topbar-alpha));
  --glass-border:rgba(255,255,255,.24);
  --glass-copy-shadow:0 1px 12px rgba(0,0,0,.42);
  --glass-panel-shadow:0 18px 44px rgba(0,0,0,.18);
}
html[data-theme="light"]{
  --bg:#fafafa;
  --surface:#ffffff;
  --surface-2:#f2f2f2;
  --text:#111111;
  --muted:#3f3f3f;
  --line:rgba(0,0,0,.2);
  --brand:#111111;
  --brand-2:#3f3f3f;
  --link:#075a75;
  --link-hover:#033949;
  --link-decoration:rgba(7,90,117,.58);
  --accent:#e0e0e0;
  --btn-primary-fg:#ffffff;
  --glass-bg-brightness:.96;
  --glass-bg-overlay:
    radial-gradient(circle at 22% 14%,rgba(255,255,255,.28),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.06) 44%,rgba(0,0,0,.16));
  --glass-surface-rgb:246 242 236;
  --glass-control-rgb:255 255 255;
  --glass-topbar-alpha:.26;
  --glass-control-alpha:.26;
  --glass-panel-alpha:.26;
  --glass-card-alpha:.26;
  --glass-card-hover-alpha:.32;
  --glass-pill-alpha:.272;
  --glass-field-alpha:.72;
  --glass-border:rgba(255,255,255,.25);
  --glass-copy-shadow:0 1px 12px rgba(255,255,255,.52);
  --glass-panel-shadow:0 18px 44px rgba(0,0,0,.12);
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{max-width:100%;overflow-x:clip}
body{
  margin:0;
  font-family:"Space Grotesk",Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;
  color:var(--text);
  background:#111;
  isolation:isolate;
  position:relative;
}
body::before,
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
}
body::before{
  z-index:-2;
  background-image:var(--glass-bg-image);
  background-position:center top;
  background-size:cover;
  filter:saturate(var(--glass-bg-saturation)) contrast(var(--glass-bg-contrast)) brightness(var(--glass-bg-brightness));
}
body::after{
  z-index:-1;
  background:var(--glass-bg-overlay);
}
a{
  color:var(--link);
  text-decoration-color:var(--link-decoration);
  text-decoration-thickness:1.5px;
  text-underline-offset:.16em;
}
a:visited{
  color:var(--link);
}
a:hover{
  color:var(--link-hover);
}
.panel{
  padding:var(--panel-block) var(--panel-inline);
  background:var(--glass-panel-bg);
  border:1px solid var(--glass-border);
  box-shadow:var(--glass-panel-shadow);
  backdrop-filter:blur(var(--glass-heavy-blur));
  -webkit-backdrop-filter:blur(var(--glass-heavy-blur));
  text-shadow:var(--glass-copy-shadow);
}
.panel > *{position:relative;z-index:1}
.skip-link{position:absolute;left:12px;top:-42px;z-index:99;background:var(--text);color:var(--bg);padding:8px 12px;border-radius:999px;text-decoration:none;font-weight:700}
.skip-link:focus{top:10px}
.shell{width:min(1480px,calc(100dvw - (var(--page-gutter) * 2)));margin:auto}
.topbar{
  position:sticky;top:0;z-index:80;
  display:flex;gap:10px;align-items:center;justify-content:flex-start;
  flex-wrap:wrap;
  padding:12px var(--panel-inline);
  backdrop-filter:blur(var(--glass-heavy-blur));
  -webkit-backdrop-filter:blur(var(--glass-heavy-blur));
  background:var(--glass-topbar-bg);
  border:1px solid var(--glass-border);
  box-shadow:var(--glass-panel-shadow);
  text-shadow:var(--glass-copy-shadow);
}
.brand{order:1;display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.02em;white-space:nowrap}
.site-logo{width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.22);object-fit:cover}
.version-switch{order:2;flex:1 1 calc(100% - 220px);min-width:0}
.site-version-badge{order:3}
.header-controls{order:4;display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:0;flex:1 1 auto;flex-wrap:wrap}
.site-version-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  letter-spacing:.02em;
  white-space:nowrap;
}
.header-action-links{display:inline-flex;align-items:center;gap:6px}
.header-action-link{
  display:inline-grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--glass-pill-bg);
  color:var(--text);
  text-decoration:none;
  backdrop-filter:blur(var(--glass-light-blur));
  -webkit-backdrop-filter:blur(var(--glass-light-blur));
}
.header-action-link:hover{
  background:var(--glass-card-hover-bg);
  color:var(--text);
}
.header-buy-link{
  font-size:1.2rem;
  font-weight:900;
  line-height:1;
}
.md-icon{
  width:21px;
  height:21px;
  display:block;
  fill:currentColor;
}
.version-switch,.theme-toggle,.language-toggle,.site-version-badge{
  min-height:38px;
  border:1px solid var(--glass-border);
  border-radius:999px;
  background:var(--glass-pill-bg);
  padding:8px 12px;
  font-size:.85rem;
  line-height:1.2;
  color:var(--text);
  backdrop-filter:blur(var(--glass-light-blur));
  -webkit-backdrop-filter:blur(var(--glass-light-blur));
}
.version-switch{display:inline-flex;gap:6px;align-items:center}
.version-switch a{text-decoration:none;color:var(--muted);font-weight:700}
.version-switch a.is-active{color:var(--brand)}
.version-switch span{color:var(--muted)}

html[data-theme="light"] .mode-dark { display: none; }
html[data-theme="dark"] .mode-light { display: none; }
.theme-toggle,.language-toggle { font-weight: 700; text-align: center; cursor:pointer; }
.theme-toggle { width: 68px; }
.language-toggle { min-width: 92px; }
html[data-theme="dark"] .version-switch,
html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .language-toggle,
html[data-theme="dark"] .site-version-badge{
  border-color:var(--glass-border);
  background:var(--glass-pill-bg);
}

main{padding:clamp(4px,1dvh,10px) 0 clamp(30px,5dvh,42px);display:grid;gap:clamp(8px,1.4dvh,14px)}
h1{margin:0;line-height:1.08;font-size:clamp(2rem,4vw,3.2rem);max-width:18ch}
h2{margin:0 0 8px;font-size:clamp(1.25rem,2vw,1.8rem)}
.lead{margin:12px 0 0;color:var(--muted);max-width:68ch;line-height:1.58}
.cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;padding:10px 14px;border-radius:999px;border:1px solid var(--line);font:inherit;font-weight:700;line-height:1.2;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease}
.btn.primary{
  background-color:var(--text);
  color:var(--bg);
  border-color:var(--text);
}
.btn.secondary{background:var(--glass-pill-bg);color:var(--text);backdrop-filter:blur(var(--glass-light-blur));-webkit-backdrop-filter:blur(var(--glass-light-blur))}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(0,0,0,.15)}
.grid{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}
.carousel-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;padding:0;
  border-radius:999px;
  border:1px solid var(--glass-border);
  background:var(--glass-pill-bg);
  color:var(--text);
  font-size:1.1rem;
  cursor:pointer;
  transition:transform .14s ease,background-color .14s ease,box-shadow .14s ease;
}
.carousel-btn:hover{background:var(--glass-card-hover-bg);transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.14)}
.carousel-wrap{
  position:relative;
  overflow-x:auto;
  overflow-y:hidden;
  touch-action:pan-y;
  -webkit-overflow-scrolling:touch;
  cursor:grab;
}
.carousel-wrap.is-dragging{cursor:grabbing;}
.carousel-track{
  display:flex;
  gap:12px;
  width:max-content;
  min-width:100%;
  padding:0 2px;
}
.carousel-item{
  position:relative;
  width:var(--carousel-card-width,min(440px,calc(100% - 20px)));
  max-width:var(--carousel-card-width,min(440px,calc(100% - 20px)));
  min-height:var(--carousel-card-height,220px);
  transition:transform .42s cubic-bezier(.22,.65,.2,1),opacity .24s ease,filter .24s ease;
  pointer-events:auto;
  flex:0 0 var(--carousel-card-width,min(440px,calc(100% - 20px)));
  transform-origin:50% 40%;
  text-decoration:none;
  color:inherit;
  cursor:pointer;
}
.carousel-wrap.is-enhanced{
  height:var(--carousel-height,clamp(240px,52vw,340px));
  perspective:var(--carousel-perspective,1700px);
  transform-style:preserve-3d;
  overflow:hidden;
  isolation:isolate;
}
.carousel-wrap.is-enhanced .carousel-track{
  position:relative;
  height:100%;
  width:100%;
  transform-style:preserve-3d;
  display:block;
  min-width:0;
  padding:0;
}
.carousel-wrap.is-enhanced .carousel-item{
  position:absolute;
  top:0;
  left:50%;
  height:100%;
  min-height:0;
  pointer-events:none;
  flex:none;
}
.carousel-wrap.is-enhanced .carousel-item.is-active{pointer-events:auto}
.carousel-wrap.is-enhanced .carousel-companion{
  position:absolute;
  left:var(--companion-left,14px);
  bottom:0;
  width:clamp(84px,calc(var(--carousel-card-height,220px) * .62),188px);
  height:clamp(68px,calc(var(--carousel-card-height,220px) * .5),150px);
  transform:translate3d(var(--companion-x,0px),0,0);
  transition:transform .42s cubic-bezier(.22,.65,.2,1),opacity .24s ease;
  transform-origin:18% 88%;
  z-index:55;
  pointer-events:none;
  overflow:visible;
}
.carousel-wrap.is-enhanced .carousel-companion[data-state="pulling"]{
  transition-duration:.63s,.24s;
}
.carousel-wrap.is-enhanced .carousel-companion[data-compact-cycle="true"][data-state="pulling"]{
  transition-duration:1.26s,.24s;
}
.carousel-wrap.is-enhanced .carousel-companion[data-state="dragging"]{
  transition-duration:.62s,.24s;
}
.carousel-wrap.is-enhanced .carousel-companion[data-compact-cycle="true"][data-state="dragging"]{
  transition-duration:1.24s,.24s;
}
.carousel-wrap.is-enhanced .carousel-companion[data-can-wake="true"]{
  pointer-events:auto;
  cursor:pointer;
}
.carousel-companion .spaniel-figure{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
  object-fit:contain;
  object-position:left bottom;
  filter:drop-shadow(0 16px 14px rgba(40,24,10,.12));
  transition:opacity 1.02s ease,transform 1.2s cubic-bezier(.22,.65,.2,1);
}
.carousel-companion .spaniel-figure *{
  vector-effect:non-scaling-stroke;
}
.carousel-companion .spaniel-figure.sleeping-pose{transform:translate(-8px,10px) scale(.86)}
.carousel-companion .spaniel-figure.awake-pose{transform:translate(0,0) scale(1)}
.carousel-companion[data-sleep-pose="true"] .spaniel-figure.awake-pose{transform:translate(14px,10px) scale(.9)}
.carousel-companion[data-sleep-pose="true"] .spaniel-figure.sleeping-pose{transform:translate(0,0) scale(1)}
.carousel-companion[data-sleep-pose="true"]{
  width:clamp(96px,calc(var(--carousel-card-height,220px) * .72),210px);
}
.carousel-companion .spaniel-part{
  opacity:1;
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
  transform-box:fill-box;
  transform-origin:center;
  transition:opacity .72s ease var(--part-delay,0s),transform 1.2s cubic-bezier(.22,.65,.2,1) var(--part-delay,0s);
}
.carousel-companion .part-tail{--part-delay:0s;transform-origin:20% 78%}
.carousel-companion .part-body{--part-delay:.08s;transform-origin:48% 62%}
.carousel-companion .part-head{--part-delay:.16s;transform-origin:52% 45%}
.carousel-companion .part-ears{--part-delay:.24s;transform-origin:48% 42%}
.carousel-companion .part-face{--part-delay:.32s;transform-origin:54% 42%}
.carousel-companion .part-front{--part-delay:.4s;transform-origin:52% 78%}
.carousel-companion .sleeping-pose .spaniel-part{
  opacity:0;
}
.carousel-companion .sleeping-pose .part-tail{transform:translate(-30px,24px) rotate(-24deg) scale(.82)}
.carousel-companion .sleeping-pose .part-body{transform:translate(-16px,18px) scale(.88)}
.carousel-companion .sleeping-pose .part-head{transform:translate(22px,20px) scale(.84)}
.carousel-companion .sleeping-pose .part-ears{transform:translate(18px,14px) rotate(8deg) scale(.88)}
.carousel-companion .sleeping-pose .part-face{transform:translate(24px,12px) scale(.78)}
.carousel-companion .sleeping-pose .part-front{transform:translate(-6px,26px) scale(.82)}
.carousel-companion[data-sleep-pose="true"] .sleeping-pose .spaniel-part{
  opacity:1;
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
}
.carousel-companion[data-sleep-pose="true"] .awake-pose .spaniel-part{
  opacity:0;
}
.carousel-companion[data-sleep-pose="true"] .awake-pose .part-tail{transform:translate(30px,24px) rotate(18deg) scale(.78)}
.carousel-companion[data-sleep-pose="true"] .awake-pose .part-body{transform:translate(-20px,18px) scale(.82)}
.carousel-companion[data-sleep-pose="true"] .awake-pose .part-head{transform:translate(18px,30px) scale(.82)}
.carousel-companion[data-sleep-pose="true"] .awake-pose .part-ears{transform:translate(24px,18px) rotate(12deg) scale(.84)}
.carousel-companion[data-sleep-pose="true"] .awake-pose .part-face{transform:translate(18px,20px) scale(.76)}
.carousel-companion[data-sleep-pose="true"] .awake-pose .part-front{transform:translate(-18px,34px) scale(.72)}
.carousel-companion .spaniel-ear{
  transform-box:fill-box;
  transform-origin:18% 10%;
}
.carousel-companion .spaniel-ear.ear-trailing{
  transform-origin:14% 10%;
}
.carousel-companion[data-state="dragging"] .spaniel-ear.ear-trailing{
  animation:spaniel-ear-flick .62s ease-in-out both;
}
.carousel-companion .spaniel-z{
  position:absolute;
  right:4%;
  top:2%;
  font-size:clamp(.86rem,1.8vw,1.12rem);
  font-weight:800;
  letter-spacing:.08em;
  color:color-mix(in srgb,var(--brand) 72%,white 28%);
  opacity:0;
  transition:opacity .24s ease,transform .24s ease;
}
.carousel-companion[data-state="sleeping"][data-show-sleep-text="true"] .spaniel-z{
  opacity:1;
  transform:translateY(0);
}
.carousel-companion[data-state="pulling"] .spaniel-z,
.carousel-companion[data-state="dragging"] .spaniel-z,
.carousel-companion[data-state="returning"] .spaniel-z{
  opacity:0;
  transform:translateY(4px);
}
@keyframes spaniel-ear-flick{
  0%{transform:rotate(0deg)}
  50%{transform:rotate(-78deg) translateY(-6px)}
  100%{transform:rotate(0deg)}
}
.carousel-item .btn{margin-top:12px}
.carousel-item.is-active{pointer-events:auto}
.carousel-item:not(.is-active){filter:saturate(.88) brightness(.96)}
.carousel-item:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 70%,white 30%);outline-offset:2px}
.card-link-label{
  margin:12px 0 0;
  font-weight:800;
  letter-spacing:.01em;
  color:color-mix(in srgb,var(--brand) 82%,var(--text) 18%);
}
.carousel-item,.carousel-item *{-webkit-user-select:none;user-select:none}
.no-select,.no-select *{-webkit-user-select:none!important;user-select:none!important}
.carousel-dots{display:flex;gap:8px;justify-content:center;margin-top:12px}
.carousel-dot{
  width:9px;
  height:9px;
  padding:0;
  border-radius:999px;
  border:0;
  background:color-mix(in srgb,var(--muted) 45%,transparent);
  opacity:.7;
  transition:transform .16s ease,opacity .16s ease,background-color .16s ease;
  cursor:pointer;
}
.carousel-dot.is-active{opacity:1;transform:scale(1.25);background:var(--brand)}
.card{
  padding:24px;
  background:var(--glass-card-bg);
  border:1px solid var(--glass-border);
  box-shadow:var(--glass-panel-shadow);
  backdrop-filter:blur(var(--glass-light-blur));
  -webkit-backdrop-filter:blur(var(--glass-light-blur));
  text-shadow:var(--glass-copy-shadow);
}
.card h3{margin:0 0 8px;font-size:1.06rem}
.card p{margin:0;color:var(--muted);line-height:1.5}
.card .btn{margin-top:10px}
.service-logo{
  width:44px;height:44px;border-radius:0;
  display:inline-flex;align-items:center;justify-content:center;
  margin-bottom:10px;font-size:1.2rem;font-weight:700;
  background:var(--surface-2);
  border:1px solid var(--line);
  color:var(--brand);
  letter-spacing:.04em;
}
.about-grid{display:grid;grid-template-columns:240px 1fr;gap:16px;align-items:start}
.about-photo{width:100%;border-radius:0;border:1px solid var(--line);display:block;background:var(--surface-2)}
.about-text p{margin:0 0 10px;color:var(--muted);line-height:1.55}
.hero{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start}
.hero:not(.hero-home){
  min-height:0;
  padding-top:clamp(10px,1.8dvh,18px);
  padding-bottom:clamp(14px,2.2dvh,24px);
}
.footer-note{font-size:.85rem;color:var(--text);margin:0;font-weight:700}
.site-footer{
  border-top:0;
  padding:clamp(12px,2dvh,22px) 0;
  position:relative;
  z-index:1;
  margin-top:4px;
  background:transparent;
}
.site-footer .shell{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  padding:22px var(--panel-inline);
  background:var(--glass-topbar-bg);
  border:1px solid var(--glass-border);
  box-shadow:var(--glass-panel-shadow);
  backdrop-filter:blur(var(--glass-heavy-blur));
  -webkit-backdrop-filter:blur(var(--glass-heavy-blur));
  text-shadow:var(--glass-copy-shadow);
}
.footer-nav{display:flex;gap:14px;flex-wrap:wrap}
.footer-nav a{text-decoration:none;color:var(--text);font-size:.85rem;font-weight:700;transition:color .14s ease}
.footer-nav a:hover{color:var(--text)}
.footer-owner-tools{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap}
.footer-owner-tools[hidden]{display:none}
.footer-owner-tools button{
  border:0;
  background:transparent;
  color:var(--muted);
  cursor:pointer;
  font:inherit;
  font-size:.85rem;
  font-weight:600;
  padding:0;
}
.footer-owner-tools button:hover{color:var(--text)}
a:focus-visible,button:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 75%,white 25%);outline-offset:2px}
@media (max-width:840px){
  html,body{overflow-x:hidden}
  .panel{padding:14px}
  .grid{grid-template-columns:1fr}
  .about-grid{grid-template-columns:1fr}
  .topbar{flex-wrap:wrap;gap:8px;padding:10px var(--panel-inline);align-items:flex-start}
  .brand{order:1;width:100%;max-width:100%;font-size:clamp(.82rem,4vw,.95rem);flex:1 1 100%;min-width:0;overflow:visible;text-overflow:clip;white-space:normal}
  .site-version-badge{order:2;align-self:center}
  .version-switch{order:3;flex:1 1 0;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}
  .commerce-page .brand{font-size:clamp(1.05rem,5.2vw,1.35rem)}
  .header-controls{order:4;width:100%;flex:1 1 100%;margin-left:0;justify-content:flex-end}
  .panel,.card,.carousel-wrap,.carousel-item{min-width:0}
  .lead,.card p,h1{overflow-wrap:anywhere}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}
.carousel{position:relative;overflow:hidden}

.hero h1{
  font-family:"Space Grotesk",sans-serif;
  font-size:clamp(2.4rem,6.5vw,5.4rem);
  letter-spacing:.01em;
}
.hero-home{
  min-height:0;
  padding-top:clamp(6px,1.2dvh,12px);
  padding-bottom:clamp(8px,1.6dvh,18px);
  justify-content:flex-start;
}
.hero .lead{max-width:62ch}
.hero-home + .carousel{
  padding-top:0;
}

.metrics-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.metric{
  background:transparent;
  padding:24px 0;
  border-top:1px solid var(--line);
}
.metric-value{
  display:block;
  font-family:"Space Grotesk",sans-serif;
  font-size:clamp(2.2rem,5vw,4rem);
  line-height:.9;
  color:color-mix(in srgb,var(--text) 88%,var(--accent) 12%);
}
.metric-label{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.35;
}

@media (max-width:840px){
  .metrics-grid{grid-template-columns:1fr}
  .site-footer .shell{flex-direction:column;align-items:flex-start}
}
