/* vupibet.cc — "Vão livre" (MASP elevation): red beam, suspended glass box, crystal easels on board-formed concrete. */
:root{
  --red:#C3201C;--red-d:#98150F;--red-t:#A91B17;
  --ink:#18191B;--ink-2:#232528;--ink-3:#34373B;
  --concrete:#DCD9D2;--concrete-2:#CDC9C0;--plaza:#E8E6E0;--paper:#F6F5F1;
  --glass:#FBFBF8;--glass-e:#BCD2CA;--glass-t:#DDEAE5;--glass-g:#8FB7AA;
  --wood:#C29556;--wood-d:#9C733C;--leaf:#1E6A45;
  --text:#1E2022;--muted:#53575B;--line:rgba(24,25,27,.16);
  --on-dark:#EEF0EC;--on-dark-2:#B9C2BE;
  --fd:"Darker Grotesque","Libre Franklin",system-ui,sans-serif;
  --fb:"Libre Franklin",system-ui,-apple-system,"Segoe UI",sans-serif;
  --fm:"Sometype Mono",ui-monospace,Menlo,Consolas,monospace;
  --pill:clamp(10px,1.6vw,22px);--gut:clamp(16px,3.2vw,44px);
  --hh:64px;
  /* tokens read by the game runtime */
  --primary:var(--ink);--primary-contrast:#fff;--accent:var(--wood);--surface:var(--paper);--surface-2:#ECEBE6;--border:var(--line);--heading:var(--ink);--font-head:var(--fd);--font-body:var(--fb)
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--hh) + 16px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--plaza);color:var(--text);font:400 17px/1.65 var(--fb);overflow-x:clip;
  background-image:repeating-linear-gradient(180deg,transparent 0 31px,rgba(24,25,27,.028) 31px 32px)}
img,svg{max-width:100%}
a{color:var(--red-t);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--ink);outline-offset:2px;box-shadow:0 0 0 6px #fff}
.skip{position:absolute;left:12px;top:-80px;z-index:100;background:var(--ink);color:#fff;padding:12px 16px;font-weight:700;text-decoration:none}
.skip:focus{top:10px}
h1,h2,h3{font-family:var(--fd);color:var(--ink);margin:0;text-wrap:balance}
p{margin:0 0 1em}
.mk{--mk-box:var(--ink);--mk-line:rgba(255,255,255,.28);width:44px;height:30px;flex:none;display:block}

/* ---------- header: the red beam ---------- */
.beam{position:sticky;top:0;z-index:40;background:var(--red);color:#fff;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.12),inset 0 -5px 0 var(--red-d),0 10px 22px -18px rgba(24,25,27,.8)}
.beam-in{max-width:1440px;margin:0 auto;min-height:var(--hh);padding:0 var(--gut);display:flex;align-items:center;gap:14px}
.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;min-height:44px;margin-right:auto;min-width:0}
.brand-t{display:flex;flex-direction:column;line-height:1;min-width:0}
.brand-n{font:900 30px/.85 var(--fd);letter-spacing:.005em}
.brand-s{font:500 11px/1.2 var(--fm);letter-spacing:.08em;text-transform:uppercase;opacity:.86;margin-top:4px;white-space:nowrap}
.beam .brand:hover .brand-n{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:4px}
.beam :focus-visible{outline-color:#fff;box-shadow:0 0 0 6px var(--ink)}
.menu-btn{display:inline-flex;align-items:center;gap:10px;min-height:44px;min-width:44px;padding:0 14px;border:2px solid rgba(255,255,255,.75);background:transparent;color:#fff;font:700 15px/1 var(--fb);cursor:pointer}
.menu-btn:hover{background:rgba(255,255,255,.1)}
.mb-i{display:grid;gap:6px;width:20px}.mb-i i{display:block;height:3px;background:currentColor;transition:transform .2s}
.beam.is-open .mb-i i:first-child{transform:translateY(4.5px) rotate(45deg)}.beam.is-open .mb-i i:last-child{transform:translateY(-4.5px) rotate(-45deg)}
.lsw{display:flex;gap:4px}
.lsw a{display:grid;place-items:center;min-width:44px;min-height:44px;padding:0 8px;color:#fff;text-decoration:none;font:500 13px/1 var(--fm);letter-spacing:.06em;border:1px solid rgba(255,255,255,.4)}
.lsw a[aria-current]{background:#fff;color:var(--red-t);border-color:#fff}
.lsw a:hover:not([aria-current]){background:rgba(255,255,255,.12)}
.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--ink);color:#fff;padding:10px var(--gut) 22px;
  background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.045) 0 1px,transparent 1px 64px);box-shadow:0 22px 40px -20px rgba(0,0,0,.6);max-height:calc(100vh - var(--hh));overflow:auto}
.beam.is-open .nav{display:block}
.nav ul{list-style:none;margin:0;padding:0}
.nav li{border-bottom:1px solid rgba(255,255,255,.12)}
.nav a{display:flex;align-items:baseline;gap:14px;min-height:56px;padding:12px 0;color:#fff;text-decoration:none;font:800 28px/1.05 var(--fd)}
.nav .nx{font:500 12px/1 var(--fm);color:var(--glass-g);letter-spacing:.06em;flex:none;width:22px}
.nav a[aria-current]{color:#FFB3A8}
.nav a[aria-current] .nx{color:#FFB3A8}
.nav a:hover{color:var(--glass-t)}
.nav .nav-demo{margin-top:16px;justify-content:center;align-items:center;background:var(--red);font:700 17px/1 var(--fb);min-height:52px}
.nav .nav-demo:hover{background:var(--red-d);color:#fff}
@media (prefers-reduced-motion:no-preference){.beam.is-open .nav{animation:drop .22s ease-out}@keyframes drop{from{transform:translateY(-8px)}to{transform:none}}}
@media (max-width:420px){.brand-s{display:none}.lsw a{min-width:44px;padding:0 4px}.beam-in{gap:8px}.mb-t{display:none}.mk{width:38px;height:26px}.brand-n{font-size:27px}}
@media (min-width:1200px){
  .menu-btn{display:none}
  .nav{display:flex!important;position:static;background:none;padding:0;box-shadow:none;align-items:center;gap:6px;max-height:none;overflow:visible;order:2}
  .brand{margin-right:18px}
  .nav ul{display:flex;align-items:center;gap:2px}
  .nav li{border:0}
  .nav a{min-height:44px;padding:0 10px;align-items:center;font:600 15px/1 var(--fb);color:#fff;position:relative}
  .nav .nx{display:none}
  .nav a::after{content:"";position:absolute;left:10px;right:10px;bottom:6px;height:2px;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform .2s}
  .nav a:hover::after,.nav a[aria-current]::after{transform:none}
  .nav a[aria-current]{color:#fff}
  .nav a:hover{color:#fff}
  .nav .nav-demo{margin:0 0 0 8px;background:#fff;color:var(--red-t);padding:0 16px;font-size:15px;min-height:44px}
  .nav .nav-demo::after{display:none}
  .nav .nav-demo:hover{background:var(--paper);color:var(--red-d)}
  .beam-in{justify-content:space-between}
  .nav{margin-left:auto}.lsw{order:3}
}

/* ---------- elevation: pillars, the suspended glass box, the free span ---------- */
.elev{--ep:calc(var(--pill) + var(--gut)*.7);position:relative;overflow-x:clip;padding:0 var(--ep);background:var(--concrete);
  background-image:repeating-linear-gradient(180deg,transparent 0 23px,rgba(24,25,27,.045) 23px 24px),linear-gradient(90deg,rgba(255,255,255,.18),transparent 30%,rgba(0,0,0,.03) 70%,rgba(255,255,255,.12))}
.elev::before,.elev::after{content:"";position:absolute;top:0;bottom:0;width:var(--pill);background:linear-gradient(90deg,var(--red) 70%,var(--red-d));z-index:1}
.elev::before{left:0}.elev::after{right:0}
.box{position:relative;container-type:inline-size;max-width:1360px;margin:0 auto;background:var(--ink);color:var(--on-dark);
  border-top:10px solid #8E8A82;border-bottom:10px solid #8E8A82;
  background-image:linear-gradient(112deg,rgba(143,183,170,.13),transparent 32%,transparent 58%,rgba(255,255,255,.05) 63%,transparent 70%),repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 1px,transparent 1px calc(100%/12))}
.box::before{content:"";position:absolute;left:12%;right:12%;top:-10px;height:10px;background:repeating-linear-gradient(90deg,transparent 0 56px,rgba(24,25,27,.35) 56px 60px)}
.box-in{position:relative;display:grid;gap:clamp(28px,4vw,56px);padding:clamp(28px,5vw,72px) clamp(18px,4vw,64px) clamp(34px,5vw,72px)}
.box h1{color:#fff;font-weight:900;font-size:clamp(2.7rem,1.6rem + 5.2vw,6rem);line-height:.9;letter-spacing:-.005em;padding-top:.06em}
.elev-inner .box h1{font-size:clamp(2.4rem,1.5rem + 3.6vw,4.6rem)}
.eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 22px;font:500 13px/1.3 var(--fm);letter-spacing:.06em;text-transform:uppercase;color:var(--on-dark-2)}
.eb-no{display:inline-grid;place-items:center;min-height:30px;padding:0 10px;background:var(--red);color:#fff}
.box .lead{margin-top:24px;max-width:62ch;color:var(--on-dark-2);font-size:clamp(17px,1rem + .25vw,19px)}
.box .lead p:last-child{margin:0}
.box a:not(.btn){color:#fff}
.box :focus-visible{outline-color:#F2D08A;box-shadow:none}
.acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 22px;font:700 16px/1.15 var(--fb);text-decoration:none;text-align:center;border:2px solid transparent;cursor:pointer;transition:background .15s,color .15s,transform .15s}
.btn:active{transform:translateY(1px)}
.btn-red{background:var(--red);color:#fff;box-shadow:inset 0 -4px 0 var(--red-d)}
.btn-red:hover{background:var(--red-d);color:#fff}
.btn-red::after{content:"";width:9px;height:9px;border-top:2.5px solid;border-right:2.5px solid;transform:rotate(45deg);margin-left:2px}
.btn-ghost{color:#fff;border-color:rgba(238,240,236,.55)}
.btn-ghost:hover{background:rgba(255,255,255,.08);border-color:#fff}
.btn-ink{background:var(--ink);color:#fff}
.btn-ink:hover{background:#000;color:#fff}

/* object label (ficha técnica) */
.plate{margin-top:34px;max-width:420px;background:var(--paper);color:var(--ink);padding:16px 18px 14px;border-left:6px solid var(--red);box-shadow:0 14px 26px -18px rgba(0,0,0,.8)}
.plate-t{font:500 12px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--red-t);margin:0 0 10px}
.plate dl{margin:0;display:grid;gap:6px}
.plate dl div{display:grid;grid-template-columns:88px 1fr;gap:10px;padding-top:6px;border-top:1px solid var(--line)}
.plate dt{font:500 12px/1.5 var(--fm);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.plate dd{margin:0;font-size:15px;line-height:1.45}

/* crystal easel: glass sheet set into a concrete cube with a wooden wedge */
.easel{position:relative;min-width:0}
.easel-cap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;margin:0 0 12px;font:500 12px/1.4 var(--fm);letter-spacing:.06em;text-transform:uppercase;color:var(--on-dark-2)}
.easel-cap span:first-child{color:#fff}
.easel-cap span:first-child::before{content:"";display:inline-block;width:8px;height:8px;background:var(--red);margin-right:8px;vertical-align:1px}
.glass{position:relative;z-index:1;padding:clamp(6px,1.4cqi,12px);background:linear-gradient(135deg,rgba(221,234,229,.55),rgba(188,210,202,.28) 45%,rgba(221,234,229,.45));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.55),0 0 0 1px rgba(143,183,170,.55),0 30px 50px -30px rgba(0,0,0,.9)}
.glass::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 58%,rgba(255,255,255,.16) 61%,transparent 66%)}
.cube{position:relative;z-index:0;width:clamp(120px,24%,190px);height:clamp(58px,8cqi,82px);margin:-8px auto 0;
  background:linear-gradient(to top right,transparent 49%,var(--wood) 50%) 64% 0/18px 26px no-repeat,
  linear-gradient(to top left,transparent 49%,var(--wood-d) 50%) calc(64% + 18px) 0/10px 26px no-repeat,
  repeating-linear-gradient(180deg,transparent 0 11px,rgba(24,25,27,.07) 11px 12px),linear-gradient(90deg,#CFCAC0,#B9B4A9 55%,#A7A296);
  box-shadow:0 14px 16px -12px rgba(0,0,0,.55)}
.cube::before{content:"";position:absolute;left:50%;top:0;width:clamp(6px,1.2cqi,10px);height:10px;transform:translateX(-50%);background:#7F7A70}
.span{position:relative;max-width:1360px;margin:0 auto;padding:22px 0 26px}
.span::after{content:"";position:absolute;left:calc(-1*var(--ep));right:calc(-1*var(--ep));bottom:0;height:6px;background:var(--ink);z-index:2}
.span-thin{padding:0;height:clamp(38px,5vw,64px)}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 10px}
.chips li{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:6px 12px;background:var(--paper);border:1px solid var(--line);font:500 13px/1.3 var(--fm);letter-spacing:.02em;color:var(--ink)}
.chips li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--leaf);flex:none}
.chips li:first-child::before{background:var(--red);border-radius:0}

@container (min-width:900px){
  .elev-home .box-in{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}
  .elev-home .box-copy{position:sticky;top:calc(var(--hh) + 24px)}
  .elev-inner .box-in{grid-template-columns:minmax(0,7fr) minmax(280px,4fr);align-items:end}
  .elev-inner .box-solo{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .elev{--ep:calc(var(--pill) + 4px)}
  :root{--pill:6px}
  .box-in{padding:26px 14px 30px}
  .elev-home .box-in{padding:26px 10px 30px}
  .elev-home .box-copy{padding:0 4px}
  .glass{padding:4px}
}
@media (max-width:360px){.elev-home .box-in{padding-left:4px;padding-right:4px}.elev{--ep:calc(var(--pill) + 2px)}:root{--pill:5px}}

/* page plan on an easel (inner head) */
.easel-plan .planta{position:relative;z-index:1;background:linear-gradient(160deg,rgba(221,234,229,.16),rgba(188,210,202,.08));box-shadow:inset 0 0 0 1px rgba(188,210,202,.5),inset 0 0 0 6px rgba(221,234,229,.05);padding:6px 16px 12px}
.planta summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;cursor:pointer;list-style:none;font:500 12px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:#fff}
.planta summary::-webkit-details-marker{display:none}
.pl-i{width:12px;height:12px;border-right:2px solid;border-bottom:2px solid;transform:rotate(45deg) translate(-3px,-3px);transition:transform .2s}
.planta[open] .pl-i{transform:rotate(-135deg)}
.planta ol{list-style:none;margin:0;padding:0}
.planta li{border-top:1px solid rgba(238,240,236,.14)}
.planta a{display:flex;gap:12px;align-items:baseline;min-height:44px;padding:11px 0;color:var(--on-dark);text-decoration:none;font-size:15px;line-height:1.35}
.planta a:hover{color:#fff;text-decoration:underline}
.planta .tn{font:500 12px/1 var(--fm);color:var(--glass-g);flex:none}
.easel-plan .cube{width:120px;height:44px;margin-top:0}
.planta a[aria-current]{color:#FFB3A8}

/* breadcrumbs */
.crumbs ol{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0 4px;font:500 13px/1.3 var(--fm);letter-spacing:.03em}
.crumbs li{display:flex;align-items:center}
.crumbs li+li::before{content:"/";margin:0 8px 0 4px;color:var(--glass-g)}
.crumbs a{display:inline-flex;align-items:center;min-height:44px;color:#fff!important}
.crumbs span{color:var(--on-dark-2)}

/* ---------- plaza: numbered easels ---------- */
.plaza{container-type:inline-size;padding:clamp(40px,6vw,88px) var(--gut) clamp(40px,6vw,80px)}
.plaza-in{max-width:1240px;margin:0 auto;display:grid;gap:40px}
.doc{min-width:0;container-type:inline-size;display:grid;gap:clamp(64px,8vw,96px)}
.ex{position:relative;display:grid;gap:10px;min-width:0}
.ex-no{margin:0;font:800 clamp(44px,5vw,64px)/.8 var(--fd);color:var(--red);display:flex;align-items:flex-start;gap:6px}
.ex-no span{font:500 13px/1 var(--fm);letter-spacing:.06em;color:var(--muted);padding-top:4px}
.pane{position:relative;min-width:0;background:var(--glass);padding:clamp(22px,4cqi,44px) clamp(18px,4cqi,48px) clamp(24px,4cqi,40px);
  box-shadow:inset 0 0 0 1px var(--glass-e),inset 0 0 0 6px rgba(221,234,229,.55),0 1px 0 #fff,0 24px 36px -30px rgba(24,25,27,.5)}
.pane::after{content:"";position:absolute;left:clamp(18px,6%,56px);bottom:-46px;width:118px;height:46px;pointer-events:none;
  background:linear-gradient(to top right,transparent 49%,var(--wood) 50%) 66% 0/14px 20px no-repeat,linear-gradient(to top left,transparent 49%,var(--wood-d) 50%) calc(66% + 14px) 0/8px 20px no-repeat,
  repeating-linear-gradient(180deg,transparent 0 9px,rgba(24,25,27,.07) 9px 10px),linear-gradient(90deg,#D3CEC4,#BCB7AC 55%,#AAA599);box-shadow:0 12px 14px -12px rgba(0,0,0,.45)}
.ex-plain .pane::after{display:none}
.pane>*:last-child{margin-bottom:0}
.pane h2{font-weight:800;font-size:clamp(2rem,1.4rem + 2vw,2.9rem);line-height:.98;margin:0 0 20px;max-width:24ch;padding-top:.04em}
.pane h3{font-weight:800;font-size:1.6rem;line-height:1.05;margin:1.6em 0 .5em}
.pane p,.pane li{max-width:70ch}
.pane ul,.pane ol{margin:0 0 1.2em;padding:0;list-style:none;display:grid;gap:10px}
.pane ul>li{position:relative;padding-left:24px}
.pane ul>li::before{content:"";position:absolute;left:2px;top:.62em;width:9px;height:9px;background:var(--red)}
.pane ol{counter-reset:o}
.pane ol>li{position:relative;padding-left:44px;counter-increment:o}
.pane ol>li::before{content:counter(o,decimal-leading-zero);position:absolute;left:0;top:.18em;font:500 13px/1.6 var(--fm);color:#fff;background:var(--ink);padding:0 6px}
.pane strong{font-weight:700;color:var(--ink)}
.table-wrap{overflow-x:auto;margin:0 0 1.4em;border-top:4px solid var(--ink)}
.table-wrap:focus-visible{outline-offset:4px}
table{border-collapse:collapse;width:100%;min-width:440px;font-size:15.5px}
th{font:500 12px/1.3 var(--fm);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;padding:12px 12px 10px;border-bottom:1px solid var(--ink)}
td{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}
tbody tr:nth-child(odd) td{background:rgba(221,234,229,.35)}
td:first-child{font-weight:600;color:var(--ink)}

/* FAQ as a catalogue of wall labels */
.cat{border-top:2px solid var(--ink)}
.cat details{border-bottom:1px solid var(--line)}
.cat summary{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;min-height:56px;padding:14px 2px;cursor:pointer;list-style:none}
.cat summary::-webkit-details-marker{display:none}
.qn{font:500 13px/1 var(--fm);color:var(--red-t);align-self:start;padding-top:.35em}
.q{font:700 17.5px/1.35 var(--fb);color:var(--ink)}
.qi{position:relative;width:22px;height:22px;flex:none}
.qi::before,.qi::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:3px;background:var(--red);transform:translate(-50%,-50%);transition:transform .2s}
.qi::after{transform:translate(-50%,-50%) rotate(90deg)}
details[open]>summary .qi::after{transform:translate(-50%,-50%) rotate(0)}
.cat summary:hover .q{color:var(--red-t)}
.cat .a{padding:0 36px 18px 32px;color:var(--text)}
.cat .a p:last-child{margin:0}

/* aside demo card (inner) */
.side{min-width:0}
.demo-card{position:relative;z-index:1;background:var(--ink);color:var(--on-dark-2);padding:24px 22px;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 1px,transparent 1px 40px);font-size:16px}
.dc-t{font:800 30px/1 var(--fd);color:#fff;margin-bottom:12px}
.demo-card .btn{width:100%;margin-top:6px}
.cube-s{display:block;width:110px;height:42px;margin:-4px 0 0 28px}
@container (min-width:1000px){
  .plaza-in{grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:start}
  .plaza-home .plaza-in,.plaza-legal .plaza-in{grid-template-columns:minmax(0,1fr)}
  .side{position:sticky;top:calc(var(--hh) + 28px)}
}
@container (min-width:760px){
  .ex{grid-template-columns:120px minmax(0,1fr);gap:0 28px}
  .ex-plain{grid-template-columns:minmax(0,1fr)}
  .ex-plain .pane{margin-left:148px}
  .ex-no{flex-direction:column;gap:8px;position:sticky;top:calc(var(--hh) + 26px);align-self:start;text-align:right;align-items:flex-end;padding-top:6px}
  .plaza-home .ex:nth-child(even) .pane{margin-left:clamp(0px,6cqi,80px)}
}

/* ---------- CTA: a second beam ---------- */
.cta{background:var(--red);color:#fff;box-shadow:inset 0 -8px 0 var(--red-d);padding:clamp(34px,5vw,60px) var(--gut)}
.cta-in{max-width:1240px;margin:0 auto;display:grid;gap:22px;align-items:center}
.cta p{margin:0;font:800 clamp(1.8rem,1.2rem + 2vw,2.8rem)/1 var(--fd);max-width:30ch;text-wrap:balance}
.cta .btn{justify-self:start}
.cta :focus-visible{outline-color:#fff;box-shadow:0 0 0 6px var(--ink)}
@media (min-width:900px){.cta-in{grid-template-columns:1fr auto;gap:40px}}

/* ---------- related: small easels ---------- */
.rel{padding:clamp(48px,6vw,84px) var(--gut) clamp(40px,5vw,72px)}
.rel-in{max-width:1240px;margin:0 auto}
.rel h2{font-weight:900;font-size:clamp(2.2rem,1.5rem + 2.4vw,3.4rem);line-height:.95;margin-bottom:30px}
.rel-g{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:30px 22px}
.rel-g li{display:flex;flex-direction:column;min-width:0}
.rc{position:relative;z-index:1;flex:1;display:grid;grid-template-rows:auto 1fr auto;gap:10px;padding:22px 20px 18px;background:var(--glass);color:var(--text);text-decoration:none;
  box-shadow:inset 0 0 0 1px var(--glass-e),inset 0 0 0 5px rgba(221,234,229,.55),0 18px 28px -24px rgba(24,25,27,.6);transition:transform .2s,box-shadow .2s}
.rc-t{font:800 25px/1 var(--fd);color:var(--ink)}
.rc-d{font-size:15px;line-height:1.5;color:var(--muted)}
.rc-a{width:40px;height:40px;justify-self:end;background:var(--red);position:relative}
.rc-a::after{content:"";position:absolute;left:12px;top:14px;width:10px;height:10px;border-top:3px solid #fff;border-right:3px solid #fff;transform:rotate(45deg)}
.rc:hover{box-shadow:inset 0 0 0 2px var(--red),inset 0 0 0 5px rgba(221,234,229,.55),0 22px 30px -22px rgba(24,25,27,.6)}
.rc:hover .rc-t{color:var(--red-t)}
.rel-g .cube-s{margin:-2px 0 0 22px;width:92px;height:36px}
@media (prefers-reduced-motion:no-preference){.rc:hover{transform:translateY(-3px)}}

/* ---------- footer ---------- */
.ft{background:var(--ink);color:var(--on-dark-2);border-top:12px solid var(--red);
  background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px calc(100%/12));font-size:15px}
.ft-in{max-width:1360px;margin:0 auto;padding:48px var(--gut) 28px;display:grid;gap:34px}
.ft .brand{color:#fff;margin:0 0 16px}
.ft .mk{--mk-box:#4A4E53;color:var(--red)}
.ft-disc{max-width:52ch;margin:0}
.ft h2{font:500 12px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--glass-g);margin:0 0 10px}
.ft ul{list-style:none;margin:0;padding:0}
.ft li a{display:flex;align-items:center;min-height:44px;color:var(--on-dark);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.08)}
.ft li a:hover{color:#fff;text-decoration:underline}
.ft :focus-visible{outline-color:#F2D08A;box-shadow:none}
.ft-b{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);font:500 13px/1.3 var(--fm)}
.age{display:inline-grid;place-items:center;min-width:48px;height:36px;padding:0 8px;background:var(--red);color:#fff;font:800 20px/1 var(--fd)}
@media (min-width:860px){.ft-in{grid-template-columns:minmax(0,1.5fr) 1fr 1fr}.ft-b{grid-column:1/-1}}

/* 404 */
.nf{padding-bottom:10px}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
@container (max-width:899px){.elev-home .box-in{gap:0}.elev-home .box-copy{display:contents}.elev-home .easel{order:2;margin-top:36px}.elev-home .plate{order:3;margin-top:28px}}
