:root{--bg: #141210;--bg2: #1c1916;--surface: #252119;--surface2: #332d24;--line: #4d4437;--ink: #f8f2e6;--ink2: #ddd2be;--ink3: #b6a992;--accent: #eb5a46;--accent-lt: #ff9081;--accent-dk: #9d2515;--sky: #3cb0ab;--sky-dk: #1d6f6c;--grass: #6cc06a;--dirt: #c08a45;--dirt-dk: #7d5926;--stone: #a99b86;--diamond: #7fd6d2;--emerald: #6cc06a;--tnt: #f0a33a;--tnt-ink: #ffbe6b;--on-accent: #141210;--bw: 3px;--r: 6px;--r-lg: 14px;--sh-block: 5px 6px 0 rgba(0,0,0,.55);--h1-max: 56px;--h2-max: 36px;--h1-measure: none;--font-display: "Bangers","Trebuchet MS",Impact,sans-serif;--font-ui: "Archivo",ui-monospace,"SFMono-Regular",Menlo,monospace;--font-body: "Cabin",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}

html{color-scheme: dark}

*,*::before,*::after{box-sizing: border-box}

html{-webkit-text-size-adjust: 100%;scroll-behavior: smooth;scroll-padding-top: 84px}

body,h1,h2,h3,h4,p,ul,ol,figure,dl,dd{margin: 0}

ul,ol{padding: 0;list-style: none}

img,svg,video{display: block;max-width: 100%}

img{height: auto}

button,input,select,textarea{font: inherit;color: inherit}

a{color: inherit}

table{border-collapse: collapse}

body{margin: 0;background: var(--bg);color: var(--ink);font-family: var(--font-body);font-size: 16px;line-height: 1.68;font-weight: 400;overflow-x: hidden;-webkit-font-smoothing: antialiased;background-image:  radial-gradient(900px 420px at 88% -8%, color-mix(in srgb, var(--sky) 15%, transparent), transparent 70%), radial-gradient(760px 380px at 4% 2%, color-mix(in srgb, var(--accent) 8%, transparent), transparent 72%);background-repeat: no-repeat}

::selection{background: var(--accent);color: var(--on-accent)}

.ac-skipahead{position: absolute;left: -9999px;top: 0;z-index: 200;background: var(--accent);color: var(--on-accent);padding: 12px 20px;font-family: var(--font-ui);font-size: 13px;letter-spacing: .05em}

.ac-skipahead:focus{left: 12px;top: 12px}

:where(a,button,summary,[tabindex]):focus-visible{outline: 3px solid var(--diamond);outline-offset: 3px;border-radius: 2px}

/* ---------- layout ---------- */ .ac-column{width: min(100% - 32px, 1240px);margin-inline: auto}

.ac-column-slim{width: min(100% - 32px, 980px);margin-inline: auto}

main{display: block}

/* ---------- pixel primitives ---------- */ .ac-rule{height: 26px;width: 100%;position: relative;background:  linear-gradient(var(--grass) 0 9px, transparent 9px), repeating-linear-gradient(90deg,var(--dirt) 0 12px,var(--dirt-dk) 12px 24px);border-top: 3px solid color-mix(in srgb, var(--grass) 70%, #000);image-rendering: pixelated}

.ac-rule::after{content: "";position: absolute;left: 0;right: 0;top: 9px;height: 4px;background: repeating-linear-gradient(90deg,color-mix(in srgb,var(--grass) 65%,#000) 0 6px,transparent 6px 12px)}

.ac-rule--line{height: 34px;background: none;border-top: 0;position: relative;display: grid;place-items: center}

.ac-rule--line::before{content: "";position: absolute;left: 0;right: 0;top: 50%;height: 2px;background: repeating-linear-gradient(90deg,var(--line) 0 14px,transparent 14px 22px)}

.ac-loxo{position: relative;width: 16px;height: 16px;border: 3px solid var(--accent);border-radius: 50%;background: var(--bg)}

.ac-rule--wave{height: auto;background: none;border-top: 0;line-height: 0}

.ac-rule--wave::after{content: none}

.ac-rule--wave svg{width: 100%;height: 52px;display: block}

.ac-zupe{fill: var(--surface)}

.ac-tari{fill: none;stroke: var(--sky);stroke-width: 3;vector-effect: non-scaling-stroke;opacity: .85}

/* ---------- buttons ---------- */ .ac-punch{border-radius: var(--r);--btn-bg: var(--accent);--btn-ink: var(--on-accent);--btn-edge: var(--accent-dk);display: inline-flex;align-items: center;justify-content: center;gap: 9px;font-family: var(--font-ui);font-weight: 400;font-size: 13.5px;letter-spacing: .045em;line-height: 1.15;padding: 16px 26px 17px;text-decoration: none;cursor: pointer;background: var(--btn-bg);color: var(--btn-ink);border: 0;border-bottom: 5px solid var(--btn-edge);box-shadow: inset 0 3px 0 rgba(255,255,255,.32), inset 0 -3px 0 rgba(0,0,0,.12);transition: transform .12s ease, filter .12s ease;text-align: center}

.ac-punch:hover{filter: brightness(1.08)}

.ac-punch:active{transform: translateY(3px);border-bottom-width: 2px}

.ac-punch svg{width: 19px;height: 19px;flex: none}

.ac-punch--ghost{--btn-bg: transparent;--btn-ink: var(--ink);--btn-edge: transparent;border: var(--bw) solid var(--line);box-shadow: none;padding: 13px 22px}

.ac-punch--ghost:hover{border-color: var(--accent);color: var(--accent);filter: none}

.ac-punch--ghost:active{transform: translateY(2px)}

.ac-punch--sm{font-size: 11.5px;padding: 12px 16px 13px;border-bottom-width: 4px}

.ac-punch--wide{width: 100%}

/* ---------- header ---------- */ .ac-masthead{position: sticky;top: 0;z-index: 90;background: color-mix(in srgb, var(--bg2) 92%, transparent);backdrop-filter: blur(10px);border-bottom: var(--bw) solid var(--line)}

.ac-masthead-row{display: flex;align-items: center;gap: 18px;min-height: 70px}

.ac-logo{display: flex;align-items: center;gap: 11px;text-decoration: none;flex: 0 1 auto;min-width: 0}

.ac-logo-icon{width: 38px;height: 38px;flex: none;image-rendering: pixelated}

.ac-logo-name{font-family: var(--font-display);font-size: clamp(17px,4.8vw,26px);color: var(--accent);letter-spacing: .005em;line-height: 1;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}

.ac-index{margin-left: auto;display: none}

.ac-index ul{display: flex;align-items: center;gap: 2px}

.ac-index a{display: block;padding: 9px 11px;text-decoration: none;font-size: 14px;font-weight: 500;color: var(--ink2);border-bottom: 3px solid transparent;transition: color .15s,border-color .15s;white-space: nowrap}

.ac-index a:hover{color: var(--ink)}

.ac-index a[aria-current="page"]{color: var(--accent);border-bottom-color: var(--accent)}

.ac-masthead-cta{display: none;flex: none}

.ac-flap{border-radius: var(--r);margin-left: auto;width: 46px;height: 42px;background: var(--surface);border: var(--bw) solid var(--line);display: grid;place-items: center;cursor: pointer;padding: 0}

.ac-flap span{display: block;width: 20px;height: 3px;background: var(--ink);box-shadow: 0 -7px 0 var(--ink),0 7px 0 var(--ink);transition: .2s}

.ac-flap[aria-expanded="true"] span{background: transparent;box-shadow: 0 0 0 transparent}

.ac-flap[aria-expanded="true"]::before,.ac-flap[aria-expanded="true"]::after{content: "";position: absolute;width: 22px;height: 3px;background: var(--accent)}

.ac-flap[aria-expanded="true"]::before{transform: rotate(45deg)}

.ac-flap[aria-expanded="true"]::after{transform: rotate(-45deg)}

.ac-flap{position: relative}

.ac-foldout{border-top: var(--bw) solid var(--line);background: var(--bg2)}

.ac-foldout[hidden]{display: none}

.ac-foldout ul{display: grid;grid-template-columns: 1fr 1fr;gap: 0}

.ac-foldout li:last-child:nth-child(odd){grid-column: 1 / -1}

.ac-foldout nav a{display: block;padding: 14px 12px;text-decoration: none;font-size: 14.5px;font-weight: 500;color: var(--ink2);border-bottom: 1px solid var(--line);border-right: 1px solid var(--line)}

.ac-foldout li:last-child:nth-child(odd) a{border-right: 0}

.ac-foldout nav a[aria-current="page"]{color: var(--accent)}

.ac-foldout-cta{padding: 16px}

/* ---------- hero ---------- */ .ac-splashpage{position: relative;overflow: hidden;border-bottom: var(--bw) solid var(--line)}

.ac-splashpage::before{content: "";position: absolute;inset: 0;background:  linear-gradient(180deg, color-mix(in srgb,var(--sky) 22%,transparent) 0%, transparent 45%), repeating-linear-gradient(90deg, color-mix(in srgb,var(--line) 45%,transparent) 0 1px, transparent 1px 44px), repeating-linear-gradient(0deg, color-mix(in srgb,var(--line) 45%,transparent) 0 1px, transparent 1px 44px);opacity: .5;pointer-events: none}

.ac-splashpage-row{position: relative;display: grid;gap: 30px;padding: 38px 0 44px}

.ac-splashpage-copy{min-width: 0}

.ac-vami{min-width: 0}

.ac-vami .ac-splashpage-cta{margin-top: 0}

.ac-splashpage-row--art-wide .ac-splashpage-art img{width: 100%}

.ac-splashpage-row--art-wide .ac-splashpage-offer{right: auto;left: 0}

/* The wide band centres its copy; the art is capped near its intrinsic width so a small source asset is never upscaled into mush. */ .ac-splashpage-row--art-wide .ac-splashpage-art{max-width: var(--hero-art-max,820px);margin-inline: auto;width: 100%}

.ac-splashpage h1{font-family: var(--font-display);font-weight: 400;font-size: clamp(32px,6.4vw,var(--h1-max));line-height: 1.04;letter-spacing: .002em;margin: 16px 0 0;text-wrap: balance}

.ac-splashpage h1{max-width: var(--h1-measure,none)}

.ac-splashpage h1 .ac-pop{color: var(--accent)}

.ac-splashpage-lede{margin-top: 16px;font-size: clamp(16px,2.3vw,18.5px);color: var(--ink2);max-width: 56ch}

.ac-splashpage-cta{display: flex;flex-wrap: wrap;gap: 12px;margin-top: 26px}

.ac-splashpage-note{margin-top: 14px;font-size: 12.5px;color: var(--ink3);display: flex;align-items: flex-start;gap: 7px}

.ac-splashpage-note svg{width: 14px;height: 14px;flex: none;margin-top: 3px}

.ac-splashpage-art{position: relative}

.ac-splashpage-art .ac-panelbox{border-radius: var(--r-lg);overflow: hidden;border: var(--bw) solid var(--line);background: var(--bg2);box-shadow: var(--sh-block);position: relative;overflow: hidden}

.ac-splashpage-art img{width: 100%;image-rendering: pixelated}

.ac-splashpage-art--portrait .ac-panelbox{display: grid;place-items: center;padding: 20px;background: var(--bg2)}

.ac-splashpage-art--portrait img{width: auto;max-width: 100%;max-height: min(58vh,430px)}

.ac-splashpage-art .ac-panelbox::after{content: "";position: absolute;inset: 0;pointer-events: none;background: linear-gradient(180deg,transparent 62%, color-mix(in srgb,var(--bg) 78%,transparent))}

.ac-splashpage-offer{border-radius: var(--r);position: absolute;right: -6px;bottom: -14px;z-index: 2;background: var(--accent);color: var(--on-accent);border-bottom: 5px solid var(--accent-dk);padding: 11px 15px 12px;font-family: var(--font-display);line-height: 1.05;box-shadow: var(--sh-block)}

.ac-splashpage-offer b{display: block;font-size: 27px;font-weight: 400;line-height: 1}

.ac-splashpage-offer span{display: block;font-family: var(--font-ui);font-size: 9px;letter-spacing: .1em;text-transform: uppercase;opacity: .85;margin-top: 6px}

.ac-splashpage-offer.ac-splashpage-offer--bottom-left{right: auto;left: -6px}

.ac-splashpage-offer.ac-splashpage-offer--top-left{right: auto;bottom: auto;left: -6px;top: -14px}

.ac-splashpage-offer.ac-splashpage-offer--top-right{bottom: auto;top: -14px}

/* ---------- fact strip ---------- */ .ac-stats{background: var(--bg2);border-bottom: var(--bw) solid var(--line)}

.ac-stats--strip .ac-stats-grid{display: grid;grid-template-columns: repeat(2,1fr);gap: 0;border-left: 1px solid var(--line);border-right: 1px solid var(--line)}

.ac-stats-item{padding: 20px 16px;border-bottom: 1px solid var(--line);border-right: 1px solid var(--line);display: flex;align-items: center;gap: 13px;min-width: 0}

.ac-stats--strip .ac-stats-item:nth-child(2n){border-right: 0}

.ac-stats-icon{border-radius: var(--r);width: 42px;height: 42px;flex: none;display: grid;place-items: center;border: max(2px, calc(var(--bw) - 1px)) solid var(--line);background: var(--surface)}

.ac-stats-icon svg{width: 22px;height: 22px}

.ac-stats-body{min-width: 0}

.ac-stats-label{display: block;font-family: var(--font-ui);font-size: 9.5px;letter-spacing: .13em;text-transform: uppercase;color: var(--ink3)}

.ac-stats-value{display: block;font-family: var(--font-display);font-size: 24px;color: var(--ink);line-height: 1.15;margin-top: 6px;overflow-wrap: break-word;hyphens: auto}

.ac-stats-value.ac-ink-amber{color: var(--accent)}

.ac-stats-value.ac-ink-teal{color: var(--diamond)}

.ac-stats-value.ac-ink-leaf{color: var(--emerald)}

.ac-stats--cards{background: transparent;border-bottom: 0;padding: 26px 0 4px}

.ac-stats--cards .ac-stats-grid{display: grid;grid-template-columns: repeat(2,1fr);gap: 12px;border: 0}

.ac-stats--cards .ac-stats-item{flex-direction: column;align-items: flex-start;gap: 10px;padding: 16px 15px;border: var(--bw) solid var(--line);border-radius: var(--r-lg);background: var(--surface);box-shadow: var(--sh-block)}

.ac-stats--cards .ac-stats-item .ac-stats-label,.ac-stats--cards .ac-stats-item .ac-stats-value{display: block}

.ac-stats--cards .ac-stats-value{margin-top: 2px}

.ac-stats--list{background: var(--bg2);border-bottom: var(--bw) solid var(--line);padding: 6px 0}

.ac-stats--list .ac-stats-grid{display: grid;grid-template-columns: 1fr;gap: 0 34px;border: 0}

.ac-stats--list .ac-stats-item{display: grid;grid-template-columns: 34px 1fr auto;align-items: center;gap: 12px;padding: 13px 2px;border: 0;border-bottom: 1px dashed var(--line)}

.ac-stats--list .ac-stats-item:last-child{border-bottom: 0}

@media (min-width:760px) {
  .ac-stats--list .ac-stats-grid{grid-template-columns: 1fr 1fr}
  }
@media (min-width:760px) {
  .ac-stats--list .ac-stats-item:nth-last-child(2){border-bottom: 0}
  }
@media (min-width:760px) {}

.ac-stats--list .ac-stats-icon{width: 34px;height: 34px;border: 0;background: transparent;color: var(--accent)}

.ac-stats--list .ac-stats-icon svg{width: 20px;height: 20px}

.ac-stats--list .ac-stats-label{font-family: var(--font-ui);font-size: 11px;letter-spacing: .12em;text-transform: uppercase;color: var(--ink3)}

.ac-stats--list .ac-stats-value{margin: 0;font-family: var(--font-display);font-size: 19px;color: var(--ink);text-align: right;line-height: 1.2}

/* ---------- page shell ---------- */ .ac-spread{display: grid;gap: 34px;padding: 38px 0 56px;align-items: start}

/* Long compounds (Finnish, German, Dutch) blow past a 320px column otherwise. `hyphens` needs the document language, which the head already declares. */ .ac-splashpage h1,.ac-story h2,.ac-story h3,.ac-query-q,.ac-contents-list a,.ac-wene{overflow-wrap: break-word;hyphens: auto}

/* ---------- prose ---------- */ .ac-story{min-width: 0;font-size: 16.5px}

.ac-story > * + *{margin-top: 19px}

.ac-story h2{font-family: var(--font-display);font-weight: 400;font-size: clamp(25px,3.7vw,var(--h2-max));line-height: 1.16;letter-spacing: .004em;margin-top: 52px;padding-top: 4px;position: relative;padding-left: 26px;text-wrap: balance;scroll-margin-top: 90px}

.ac-story h2::before{content: "";position: absolute;left: 0;top: .42em;width: 14px;height: 14px;background: var(--accent);box-shadow: 0 -8px 0 -3px var(--sky), 0 8px 0 -3px var(--emerald)}

.ac-story h3{font-family: var(--font-body);font-weight: 700;font-size: clamp(18px,2.6vw,21px);line-height: 1.32;margin-top: 34px;color: var(--ink);text-wrap: balance;scroll-margin-top: 90px}

.ac-story h2 + h3, .ac-story h2 + p, .ac-story h2 + ul, .ac-story h2 + ol, .ac-story h2 + .ac-grid{border-radius: var(--r-lg);margin-top: 17px}

.ac-story p{color: var(--ink2)}

.ac-story strong{color: var(--ink);font-weight: 600}

.ac-story .ac-standfirst{font-size: 17px;color: var(--ink);font-weight: 600;border-left: 4px solid var(--accent);padding-left: 14px}

.ac-story ul{display: grid;gap: 11px}

.ac-story ul > li{position: relative;padding-left: 29px;color: var(--ink2)}

.ac-story ul > li::before{content: "";position: absolute;left: 2px;top: .56em;width: 11px;height: 11px;background: var(--sky);box-shadow: inset 0 2px 0 rgba(255,255,255,.35)}

.ac-story ul > li > ul{margin-top: 10px}

.ac-story ul > li > ul > li::before{background: var(--stone)}

.ac-story li p{margin-top: 8px}

.ac-story ol{counter-reset: step;display: grid;gap: 15px}

.ac-story ol > li{position: relative;padding-left: 48px;counter-increment: step;color: var(--ink2)}

.ac-story ol > li::before{content: counter(step);position: absolute;left: 0;top: 0;width: 33px;height: 33px;display: grid;place-items: center;font-family: var(--font-ui);font-size: 13px;background: var(--surface2);color: var(--accent);border: max(2px, calc(var(--bw) - 1px)) solid var(--line)}

.ac-story ol > li > ul{margin-top: 11px}

.ac-grid{overflow-x: auto;border: var(--bw) solid var(--line);background: var(--surface);box-shadow: var(--sh-block);-webkit-overflow-scrolling: touch;background-image:  linear-gradient(to right, var(--surface), color-mix(in srgb, var(--surface) 0%, transparent)), linear-gradient(to left, var(--surface), color-mix(in srgb, var(--surface) 0%, transparent)), linear-gradient(to right, rgba(0,0,0,.42), rgba(0,0,0,0)), linear-gradient(to left, rgba(0,0,0,.42), rgba(0,0,0,0));background-position: 0 0, 100% 0, 0 0, 100% 0;background-repeat: no-repeat;background-size: 26px 100%, 26px 100%, 14px 100%, 14px 100%;background-attachment: local, local, scroll, scroll}

.ac-grid table{width: 100%;min-width: 520px;font-size: 15px}

.ac-grid th,.ac-grid td{padding: 12px 15px;text-align: left;border-bottom: 1px solid var(--line);vertical-align: top}

.ac-grid thead th{background: var(--surface2);color: var(--ink);font-family: var(--font-ui);font-size: 10.5px;letter-spacing: .09em;text-transform: uppercase;border-bottom: var(--bw) solid var(--line);position: sticky;top: 0;white-space: nowrap}

.ac-grid tbody tr:last-child td{border-bottom: 0}

.ac-grid tbody tr:nth-child(even){background: color-mix(in srgb,var(--surface2) 45%,transparent)}

.ac-grid td{color: var(--ink2)}

.ac-grid td:first-child{color: var(--ink);font-weight: 500}

.ac-grid td strong{color: var(--accent);font-weight: 600}

.ac-grid-hint{display: none;align-items: center;gap: 6px;margin-top: 8px;font-size: 12px;color: var(--ink3)}

html:not(.ac-js) .ac-grid-hint{display: flex}

.ac-grid.ac-pans + .ac-grid-hint{display: flex}

.ac-grid-hint svg{width: 13px;height: 13px}

/* ---------- faq ---------- */ .ac-queries{display: grid;gap: 10px;margin-top: 20px}

.ac-query{border-radius: var(--r);border: var(--bw) solid var(--line);background: var(--surface)}

.ac-query-q{margin: 0;font-family: var(--font-body);font-size: 16.5px;font-weight: 600;line-height: 1.45}

.ac-query-toggle{width: 100%;display: flex;align-items: center;justify-content: space-between;gap: 16px;background: none;border: 0;padding: 16px 17px;text-align: left;cursor: pointer;color: var(--ink);font: inherit}

.ac-query-toggle:hover{color: var(--accent)}

.ac-query-icon{width: 26px;height: 26px;flex: none;position: relative;border: max(2px, calc(var(--bw) - 1px)) solid var(--line);background: var(--surface2);transition: .18s}

.ac-query-icon::before,.ac-query-icon::after{content: "";position: absolute;background: var(--accent);left: 50%;top: 50%;transform: translate(-50%,-50%)}

.ac-query-icon::before{width: 11px;height: 3px}

.ac-query-icon::after{width: 3px;height: 11px;transition: opacity .18s}

.ac-query-toggle[aria-expanded="true"] .ac-query-icon{background: var(--accent);border-color: var(--accent)}

.ac-query-toggle[aria-expanded="true"] .ac-query-icon::before{background: var(--on-accent)}

.ac-query-toggle[aria-expanded="true"] .ac-query-icon::after{opacity: 0}

.ac-query-a{padding: 0 17px 17px;border-top: 1px solid var(--line);padding-top: 15px}

.ac-query-a > * + *{margin-top: 14px}

.ac-query-a p{color: var(--ink2);font-size: 15.5px}

.ac-query-a[hidden]{display: none}

details.ac-query summary{list-style: none;cursor: pointer}

details.ac-query summary::-webkit-details-marker{display: none}

details.ac-query .ac-query-toggle{display: flex;align-items: center;justify-content: space-between;gap: 16px;padding: 16px 17px;color: var(--ink)}

details.ac-query .ac-query-q{margin: 0;font-family: var(--font-body);font-size: 16.5px;font-weight: 600;line-height: 1.45}

details.ac-query summary:hover .ac-query-q{color: var(--accent)}

details.ac-query[open] .ac-query-icon{background: var(--accent);border-color: var(--accent)}

details.ac-query[open] .ac-query-icon::before{background: var(--on-accent)}

details.ac-query[open] .ac-query-icon::after{opacity: 0}

details.ac-query .ac-query-a{padding: 0 17px 17px;border-top: 1px solid var(--line);padding-top: 15px}

/* ---------- sidebar ---------- */ .ac-margin{display: grid;gap: 20px;min-width: 0}

.ac-boxout{border-radius: var(--r-lg);border: var(--bw) solid var(--line);background: var(--surface);box-shadow: var(--sh-block)}

.ac-boxout-head{padding: 13px 16px;border-bottom: var(--bw) solid var(--line);background: var(--surface2);font-family: var(--font-ui);font-size: 10.5px;letter-spacing: .11em;text-transform: uppercase;color: var(--ink);display: flex;align-items: center;gap: 9px}

.ac-boxout-head svg{width: 17px;height: 17px;color: var(--accent)}

.ac-boxout-body{padding: 16px}

.ac-coupon{border-color: var(--accent);box-shadow: 0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent), var(--sh-block)}

.ac-coupon .ac-boxout-head{background: var(--accent);color: var(--on-accent);border-bottom-color: var(--accent-dk)}

.ac-coupon .ac-boxout-head svg{color: var(--on-accent)}

.ac-coupon-value{font-family: var(--font-display);font-size: clamp(30px,4.6vw,38px);color: var(--accent);line-height: 1.06}

.ac-coupon-extra{font-family: var(--font-display);font-size: 21px;color: var(--ink);margin-top: 6px;line-height: 1.1}

.ac-coupon-terms{font-size: 12px;color: var(--ink3);margin-top: 12px;line-height: 1.5}

.ac-coupon .ac-punch{margin-top: 15px}

.ac-datasheet dl{display: grid;gap: 0}

.ac-datasheet .ac-entry{display: flex;justify-content: space-between;gap: 14px;padding: 10px 0;border-bottom: 1px dashed var(--line)}

.ac-datasheet .ac-entry:last-child{border-bottom: 0}

.ac-datasheet dt{font-size: 13px;color: var(--ink3);letter-spacing: .03em}

.ac-datasheet dd{margin: 0;font-family: var(--font-display);font-size: 18px;color: var(--ink);text-align: right;line-height: 1.25}

/* ---------- page contents ---------- */ .ac-contents{background: var(--bg2);border-bottom: var(--bw) solid var(--line);padding: 18px 0 20px}

.ac-contents-head{display: flex;align-items: center;justify-content: space-between;gap: 16px;min-height: 34px}

.ac-contents-title{display: flex;align-items: center;gap: 9px;font-family: var(--font-ui);font-size: 10.5px;letter-spacing: .13em;text-transform: uppercase;color: var(--ink2)}

.ac-contents-title svg{width: 16px;height: 16px;color: var(--accent);flex: none}

.ac-contents-toggle{border-radius: var(--r);display: none;align-items: center;gap: 10px;cursor: pointer;background: var(--surface);border: max(2px, calc(var(--bw) - 1px)) solid var(--line);padding: 8px 12px;font-family: var(--font-ui);font-size: 10px;letter-spacing: .09em;text-transform: uppercase;color: var(--ink2)}

.ac-contents-toggle:hover{border-color: var(--accent);color: var(--accent)}

.ac-contents-icon{width: 16px;height: 16px;flex: none;position: relative}

.ac-contents-icon::before,.ac-contents-icon::after{content: "";position: absolute;left: 50%;top: 50%;transform: translate(-50%,-50%);background: var(--accent)}

.ac-contents-icon::before{width: 11px;height: 3px}

.ac-contents-icon::after{width: 3px;height: 11px;transition: opacity .18s}

.ac-contents-toggle[aria-expanded="true"] .ac-contents-icon::after{opacity: 0}

.ac-contents-list{counter-reset: pn;display: grid;grid-template-columns: 1fr;gap: 2px;margin-top: 14px}

.ac-contents-list li{counter-increment: pn;min-width: 0}

.ac-contents-list a{display: flex;gap: 11px;padding: 9px 11px;text-decoration: none;font-size: 14px;line-height: 1.4;color: var(--ink2);border-left: 3px solid transparent;transition: color .15s,background .15s,border-color .15s}

.ac-contents-list a::before{content: counter(pn,decimal-leading-zero);font-family: var(--font-ui);font-size: 10px;color: var(--ink3);flex: none;padding-top: 3px}

.ac-contents-list a:hover{color: var(--accent);background: var(--surface);border-left-color: var(--accent)}

.ac-contents-list a.ac-reading{color: var(--accent);background: var(--surface);border-left-color: var(--accent)}

/* ---------- in-content promo band ---------- */ .ac-shout{border-radius: var(--r-lg);position: relative;overflow: hidden;border: 3px solid var(--accent);background: linear-gradient(135deg,var(--surface2),var(--surface));padding: 24px 22px;display: grid;gap: 18px;box-shadow: var(--sh-block)}

.ac-shout::before{content: "";position: absolute;inset: 0;opacity: .16;pointer-events: none;background: repeating-linear-gradient(45deg,var(--accent) 0 8px,transparent 8px 24px)}

.ac-shout > *{position: relative}

.ac-shout-title{font-family: var(--font-display);font-size: clamp(24px,3.6vw,30px);line-height: 1.14;color: var(--ink)}

.ac-shout-title em{font-style: normal;color: var(--accent)}

.ac-shout-text{font-size: 15px;color: var(--ink2);margin-top: 8px}

.ac-shout-terms{font-size: 11.5px;color: var(--ink3);margin-top: 11px}

/* ---------- pickaxe tier strip ---------- */ .ac-yacu{display: grid;grid-template-columns: 1fr;gap: 12px}

@media (min-width:400px) {
  .ac-yacu{grid-template-columns: repeat(2,1fr)}
  }
@media (min-width:400px) {}

.ac-strip{min-width: 0;border-radius: var(--r);border: var(--bw) solid var(--line);background: var(--surface);padding: 15px 14px;text-align: center}

.ac-strip-icon{border-radius: var(--r);display: grid;place-items: center;width: 52px;height: 52px;margin: 0 auto 12px;border: max(2px, calc(var(--bw) - 1px)) solid var(--line);background: var(--surface2)}

.ac-strip-icon svg{width: 30px;height: 30px}

.ac-strip-name{font-family: var(--font-display);font-size: 20px;line-height: 1.1}

.ac-strip-meter{display: flex;gap: 3px;margin-top: 11px;justify-content: center}

.ac-strip-meter i{display: block;width: 11px;height: 11px;background: var(--line)}

.ac-strip-meter i.ac-inked{background: var(--tnt)}

.ac-strip-note{font-size: 12px;color: var(--ink3);margin-top: 9px;line-height: 1.45;display: block}

.ac-strip--wood{color: #c08c53}

.ac-strip--stone{color: var(--stone)}

.ac-strip--iron{color: #dfe6ee}

.ac-strip--diamond{color: var(--diamond)}

.ac-strip-name{color: currentColor}

.ac-strip-icon{color: currentColor}

/* ---------- gallery ---------- */ .ac-frames{display: grid;gap: 14px;grid-template-columns: 1fr;align-items: start}

.ac-frame{border-radius: var(--r-lg);border: var(--bw) solid var(--line);background: var(--bg2);box-shadow: var(--sh-block);overflow: hidden}

.ac-frame img{width: 100%;image-rendering: pixelated}

.ac-frame figcaption{padding: 11px 14px;font-size: 12.5px;color: var(--ink3);border-top: 1px solid var(--line)}

/* ---------- footer ---------- */ .ac-colophon{background: var(--bg2);border-top: var(--bw) solid var(--line);padding: 42px 0 0;font-size: 14.5px}

.ac-colophon-grid{display: grid;gap: 30px;grid-template-columns: 1fr}

.ac-colophon-col h2{font-family: var(--font-ui);font-size: 10px;letter-spacing: .13em;text-transform: uppercase;color: var(--ink);margin-bottom: 14px}

.ac-colophon-col ul{display: grid;gap: 9px}

.ac-colophon-col a{color: var(--ink3);text-decoration: none;transition: color .15s}

.ac-colophon-col a:hover{color: var(--accent)}

.ac-till{display: flex;flex-wrap: wrap;gap: 8px}

.ac-till span{border-radius: var(--r);border: max(2px, calc(var(--bw) - 1px)) solid var(--line);background: var(--surface);padding: 7px 11px;font-family: var(--font-ui);font-size: 9.5px;letter-spacing: .05em;color: var(--ink3)}

.ac-mindit{margin-top: 34px;border-top: 1px solid var(--line);padding: 24px 0;display: grid;gap: 16px;align-items: center}

.ac-mindit-chips{display: flex;flex-wrap: wrap;gap: 9px;align-items: center}

.ac-mindit-chip{border-radius: var(--r);display: inline-flex;align-items: center;gap: 7px;border: max(2px, calc(var(--bw) - 1px)) solid var(--line);padding: 7px 12px;font-size: 12px;color: var(--ink2);background: var(--surface)}

.ac-mindit-chip b{font-family: var(--font-ui);color: var(--tnt-ink);font-size: 12px;letter-spacing: .04em}

.ac-mindit-chip svg{width: 15px;height: 15px;color: var(--ink3)}

.ac-mindit p{color: var(--ink3);font-size: 13px;line-height: 1.6}

.ac-mindit a{color: var(--ink2)}

.ac-colophon-bottom{border-top: 1px solid var(--line);padding: 18px 0 30px;color: var(--ink3);font-size: 12.5px;display: grid;gap: 8px}

/* ---------- sticky mobile CTA ---------- */ .ac-footerbar{position: fixed;left: 0;right: 0;bottom: 0;z-index: 80;background: color-mix(in srgb, var(--bg2) 96%, transparent);backdrop-filter: blur(10px);border-top: var(--bw) solid var(--line);padding: 10px 0 calc(10px + env(safe-area-inset-bottom));box-shadow: 0 -10px 24px -14px rgba(0,0,0,.7)}

.ac-footerbar-row{display: flex;align-items: center;justify-content: space-between;gap: 14px}

.ac-footerbar-text{flex: 1 1 auto;min-width: 0;line-height: 1.15}

.ac-footerbar-text b{display: block;font-family: var(--font-display);font-size: 18px;color: var(--accent);overflow: hidden;text-overflow: ellipsis;white-space: nowrap}

.ac-footerbar-text span{display: block;font-family: var(--font-ui);font-size: 9.5px;letter-spacing: .1em;text-transform: uppercase;color: var(--ink3);margin-top: 4px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}

@media (max-width:359px) {
  .ac-footerbar-row{gap: 10px}
  }
@media (max-width:359px) {
  .ac-footerbar .ac-punch{padding-left: 14px;padding-right: 14px}
  }
@media (max-width:359px) {
  .ac-footerbar-text span{display: none}
  }
@media (max-width:359px) {}

.ac-footerbar .ac-punch{flex: none;white-space: nowrap}

.ac-js .ac-footerbar{transform: translateY(110%);transition: transform .28s ease;will-change: transform}

.ac-js .ac-footerbar.ac-pulled{transform: none}

.ac-jave .ac-footerbar{display: none}

/* ---------- 404 ---------- */ .ac-blank{min-height: 62vh;display: grid;place-items: center;text-align: center;padding: 60px 0}

.ac-blank-code{font-family: var(--font-display);font-size: clamp(84px,22vw,170px);line-height: .86;color: var(--accent);text-shadow: 7px 7px 0 var(--surface2)}

.ac-blank h1{font-family: var(--font-display);font-size: clamp(28px,5.2vw,40px);margin-top: 20px;font-weight: 400}

.ac-blank p{color: var(--ink2);margin-top: 14px;max-width: 52ch;margin-inline: auto}

.ac-blank .ac-blank-code{color: var(--accent);max-width: none;margin-top: 0}

.ac-blank .ac-splashpage-cta{justify-content: center}

.ac-blank-links{margin-top: 30px;display: flex;flex-wrap: wrap;gap: 9px;justify-content: center}

.ac-blank-links a{border-radius: var(--r);border: max(2px, calc(var(--bw) - 1px)) solid var(--line);background: var(--surface);padding: 9px 14px;text-decoration: none;font-size: 13.5px;color: var(--ink2);transition: .15s}

.ac-blank-links a:hover{border-color: var(--accent);color: var(--accent)}

/* ---------- reveal ---------- */ .ac-js .ac-develop{opacity: 0;transform: translateY(16px)}

.ac-js .ac-develop.ac-printed{opacity: 1;transform: none;transition: opacity .5s ease,transform .5s ease}

/* ---------- breadcrumb ---------- */ .ac-tracker{padding: 14px 0;font-size: 13px;color: var(--ink3);border-bottom: 1px solid var(--line);background: var(--bg2)}

.ac-tracker ol{display: flex;flex-wrap: wrap;gap: 7px;align-items: center}

.ac-tracker a{color: var(--ink2);text-decoration: none}

.ac-tracker a:hover{color: var(--accent)}

.ac-tracker li + li::before{content: "›";margin-right: 7px;color: var(--ink3)}

.ac-tracker li{display: flex;align-items: center}

.ac-tracker [aria-current]{color: var(--ink3)}

/* ---------- responsive ---------- */ @media (max-width:719px) {
  .ac-contents-toggle{display: inline-flex}
  }
/* ---------- responsive ---------- */ @media (max-width:719px) {
  .ac-js .ac-contents-list{display: none}
  }
/* ---------- responsive ---------- */ @media (max-width:719px) {
  .ac-js .ac-contents.ac-unfolded .ac-contents-list{display: grid}
  }
/* ---------- responsive ---------- */ @media (max-width:719px) {}

@media (max-width:599px) {
  .ac-splashpage-offer{position: static;margin-top: -2px;padding: 13px 16px;text-align: center;border-radius: 0 0 var(--r-lg) var(--r-lg);box-shadow: none}
  }
@media (max-width:599px) {
  .ac-splashpage-offer b{font-size: 23px}
  }
@media (max-width:599px) {}

@media (min-width:600px) {
  .ac-contents-list{grid-template-columns: 1fr 1fr}
  }
@media (min-width:600px) {
  .ac-stats--cards .ac-stats-grid{grid-template-columns: repeat(3,1fr)}
  }
@media (min-width:600px) {
  .ac-stats--strip .ac-stats-grid{grid-template-columns: repeat(3,1fr)}
  }
@media (min-width:600px) {
  .ac-stats--strip .ac-stats-item:nth-child(2n){border-right: 1px solid var(--line)}
  }
@media (min-width:600px) {
  .ac-stats--strip .ac-stats-item:nth-child(3n){border-right: 0}
  }
@media (min-width:600px) {
  .ac-yacu{grid-template-columns: repeat(4,1fr)}
  }
@media (min-width:600px) {
  .ac-shout{grid-template-columns: 1fr auto;align-items: center;gap: 26px;padding: 28px 26px}
  }
@media (min-width:600px) {
  .ac-mindit{grid-template-columns: auto 1fr;gap: 24px}
  }
@media (min-width:600px) {
  .ac-colophon-bottom{grid-template-columns: 1fr auto;align-items: center}
  }
@media (min-width:600px) {
  .ac-frames{grid-template-columns: 2fr 1fr}
  }
@media (min-width:600px) {}

@media (max-width:899px) {
  .ac-splashpage-row--art-left .ac-splashpage-copy{order: -1}
  }
@media (max-width:899px) {}

@media (min-width:900px) {
  .ac-splashpage-row.ac-splashpage-row--art-left{grid-template-columns: .94fr 1.06fr}
  }
@media (min-width:900px) {
  .ac-splashpage-row.ac-splashpage-row--art-wide{grid-template-columns: 1fr;gap: 26px;align-items: start;text-align: center;padding: 34px 0 40px}
  }
@media (min-width:900px) {
  .ac-splashpage-row--art-wide h1{font-size: clamp(32px,5vw,50px)}
  }
@media (min-width:900px) {
  .ac-splashpage-row--art-wide .ac-splashpage-copy{max-width: none}
  }
@media (min-width:900px) {
  .ac-splashpage-row--art-wide h1{margin-inline: auto}
  }
@media (min-width:900px) {
  .ac-splashpage-row--art-wide .ac-splashpage-lede{max-width: 56ch;margin-inline: auto}
  }
@media (min-width:900px) {
  .ac-splashpage-row--art-wide .ac-splashpage-cta, .ac-splashpage-row--art-wide .ac-splashpage-note{justify-content: center}
  }
@media (min-width:900px) {
  .ac-splashpage-row--art-wide .ac-splashpage-note{align-items: center}
  }
@media (min-width:900px) {
  .ac-contents{padding: 22px 0 26px}
  }
@media (min-width:900px) {
  .ac-contents-list{grid-template-columns: repeat(3,1fr);gap: 2px 18px;margin-top: 16px}
  }
@media (min-width:900px) {
  .ac-splashpage-row{grid-template-columns: 1.06fr .94fr;align-items: center;gap: 44px;padding: 52px 0 60px}
  }
@media (min-width:900px) {
  .ac-stats--cards .ac-stats-grid{grid-template-columns: repeat(6,1fr)}
  }
@media (min-width:900px) {
  .ac-stats--strip .ac-stats-grid{grid-template-columns: repeat(6,1fr)}
  }
@media (min-width:900px) {
  .ac-stats--strip .ac-stats-item:nth-child(3n){border-right: 1px solid var(--line)}
  }
@media (min-width:900px) {
  .ac-stats--strip .ac-stats-item:nth-child(6n){border-right: 0}
  }
@media (min-width:900px) {
  .ac-stats-item{flex-direction: column;align-items: flex-start;gap: 11px;padding: 20px 15px}
  }
@media (min-width:900px) {
  .ac-foldout{display: none}
  }
@media (min-width:900px) {}

@media (max-width:1079px) {
  body{padding-bottom: 78px}
  }
@media (max-width:1079px) {}

@media (min-width:1080px) {
  .ac-footerbar{display: none}
  }
@media (min-width:1080px) {
  .ac-index{display: block}
  }
@media (min-width:1080px) {
  .ac-flap{display: none}
  }
@media (min-width:1080px) {
  .ac-masthead-cta{display: inline-flex}
  }
@media (min-width:1080px) {
  .ac-spread{grid-template-columns: minmax(0,1fr) 316px;gap: 42px;padding: 44px 0 72px}
  }
@media (min-width:1080px) {
  .ac-spread--side-left{grid-template-columns: 316px minmax(0,1fr)}
  }
@media (min-width:1080px) {
  .ac-margin{position: sticky;top: 88px;max-height: calc(100vh - 104px);overflow-y: auto;overflow-x: hidden;padding: 0 10px 10px 0;margin-right: -10px;scrollbar-width: thin;scrollbar-color: var(--line) transparent}
  }
@media (min-width:1080px) {
  .ac-margin::-webkit-scrollbar{width: 8px}
  }
@media (min-width:1080px) {
  .ac-margin::-webkit-scrollbar-thumb{background: var(--line)}
  }
@media (min-width:1080px) {
  .ac-margin::-webkit-scrollbar-track{background: transparent}
  }
@media (min-width:1080px) {
  .ac-colophon-grid{grid-template-columns: 1.5fr 1fr 1fr 1fr}
  }
@media (min-width:1080px) {}

@media (prefers-reduced-motion:reduce) {
  html{scroll-behavior: auto}
  }
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after{animation-duration: .001ms !important;transition-duration: .001ms !important}
  }
@media (prefers-reduced-motion:reduce) {
  .ac-js .ac-develop{opacity: 1;transform: none}
  }
@media (prefers-reduced-motion:reduce) {}

@media print {
  .ac-masthead,.ac-margin,.ac-shout,.ac-splashpage-cta,.ac-flap,.ac-foldout,.ac-contents,.ac-footerbar{display: none !important}
  }
@media print {
  body{background: #fff;color: #000}
  }
@media print {
  .ac-story p,.ac-story li{color: #222}
  }
@media print {}

