@font-face {font-family: 'Archivo';src: url('../fonts/archivo-var-latin.woff2') format('woff2-variations');font-weight: 100 900;font-stretch: 62% 125%;font-style: normal;font-display: swap;unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
U+2212, U+2215, U+FEFF, U+FFFD;}@font-face {font-family: 'Archivo';src: url('../fonts/archivo-var-latin-ext.woff2') format('woff2-variations');font-weight: 100 900;font-stretch: 62% 125%;font-style: normal;font-display: swap;unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}:root {--brand: #0b3780;--brand-700: #092c68;--brand-900: #06214f;--brand-050: #eef2fa;--brand-100: #dbe4f5;--signal: #1857d2;--signal-2: #1245ab;--ink: #131820;--ink-2: #39424f;--ink-3: #5b6675;--line: #dde3ea;--line-2: #c3ccd7;--surface: #ffffff;--surface-2: #f4f6f9;--surface-3: #e9edf3;--on-brand: #c6d3ea;--on-brand-2: #9fb6de;--on-brand-eyebrow: #9dbcf0;--ok: #157a4e;--warn: #8a5a00;--focus: #1857d2;--r-s: 4px;--r-m: 10px;--r-l: 12px;--r-pill: 999px;--sh-s: 0 1px 2px rgba(19, 24, 32, 0.06), 0 2px 8px rgba(19, 24, 32, 0.05);--sh-m: 0 2px 6px rgba(11, 55, 128, 0.07), 0 14px 40px rgba(11, 55, 128, 0.1);--sh-l: 0 8px 20px rgba(11, 55, 128, 0.1), 0 30px 80px rgba(11, 55, 128, 0.16);--wrap: 1280px;--wrap-narrow: 900px;--gutter: clamp(1.15rem, 4vw, 2.5rem);--sec: clamp(3.5rem, 7vw, 6.5rem);--sec-tight: clamp(2.5rem, 5vw, 4rem);--ease: cubic-bezier(0.16, 1, 0.3, 1);--dur: 0.34s;--dur-fast: 0.2s;--hdr: 74px;color-scheme: light;}*,
*::before,
*::after {box-sizing: border-box;}html {-webkit-text-size-adjust: 100%;scroll-behavior: smooth;scroll-padding-top: calc(var(--hdr) + 1.5rem);}body {margin: 0;background: var(--surface);color: var(--ink-2);font-family: 'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif;font-size: clamp(1rem, 0.96rem + 0.18vw, 1.0625rem);font-variation-settings: 'wdth' 100;line-height: 1.65;font-variant-numeric: lining-nums;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;touch-action: manipulation;-webkit-tap-highlight-color: rgba(11, 55, 128, 0.12);overflow-x: hidden;}body.is-locked {overflow: hidden;}img,
svg,
video,
picture {display: block;max-width: 100%;}img,
video {height: auto;}h1,
h2,
h3,
h4,
h5 {color: var(--ink);font-weight: 700;font-stretch: 112%;line-height: 1.1;letter-spacing: -0.018em;margin: 0 0 0.55em;text-wrap: balance;overflow-wrap: break-word;}h1 {font-size: clamp(2.1rem, 1.3rem + 3.1vw, 3.6rem);line-height: 1.06;letter-spacing: -0.022em;}h2 {font-size: clamp(1.65rem, 1.15rem + 1.9vw, 2.6rem);}h3 {font-size: clamp(1.15rem, 1.05rem + 0.5vw, 1.45rem);letter-spacing: -0.012em;}h4 {font-size: 1.05rem;font-stretch: 105%;letter-spacing: -0.006em;}@media (max-width: 899px) {h1,
h2,
h3,
h4 {hyphens: auto;}}.card h3,
.card h4,
.tile h3,
.spec__v {hyphens: auto;}p {margin: 0 0 1.1em;max-width: 68ch;}p:last-child {margin-bottom: 0;}.lead {font-size: clamp(1.06rem, 1rem + 0.35vw, 1.22rem);line-height: 1.55;color: var(--ink-2);max-width: 60ch;}a {color: var(--signal);text-decoration-thickness: 1px;text-underline-offset: 0.18em;transition: color var(--dur-fast) var(--ease);}a:hover {color: var(--signal-2);}strong,
b {color: var(--ink);font-weight: 620;}::selection {background: var(--brand);color: #fff;}:focus-visible {outline: 3px solid var(--focus);outline-offset: 2px;border-radius: 2px;}hr {border: 0;border-top: 1px solid var(--line);margin: 2.5rem 0;}.kicker,
.mark {display: block;font-size: 0.75rem;font-weight: 640;font-stretch: 105%;letter-spacing: 0.13em;text-transform: uppercase;color: var(--brand);margin: 0 0 0.9rem;line-height: 1.4;}.sec--brand .kicker,
.sec--brand .mark,
.hero .kicker,
.hero .mark,
.phead .kicker,
.phead .mark {color: var(--on-brand-eyebrow);}.wrap {width: 100%;max-width: var(--wrap);margin-inline: auto;padding-inline: var(--gutter);}.wrap--narrow {max-width: var(--wrap-narrow);}.sec {padding-block: var(--sec);position: relative;}.sec--tight {padding-block: var(--sec-tight);}.sec--paper {background: var(--surface);}.sec--paper-2 {background: var(--surface-2);}.sec--brand,
.sec--dark {background: var(--brand);color: var(--on-brand);}.sec--brand h1,
.sec--brand h2,
.sec--brand h3,
.sec--brand h4,
.sec--brand strong,
.sec--dark h1,
.sec--dark h2,
.sec--dark h3,
.sec--dark h4,
.sec--dark strong {color: #fff;}.sec--brand .lead,
.sec--dark .lead {color: var(--on-brand);}.sec__head {max-width: 62ch;margin-bottom: clamp(2rem, 4vw, 3.25rem);}.sec__head--wide {max-width: 78ch;}.sec__head p:last-child {margin-bottom: 0;}.sec__headrow {display: flex;align-items: flex-end;justify-content: space-between;gap: 2rem;flex-wrap: wrap;margin-bottom: clamp(2rem, 4vw, 3rem);padding-bottom: 1.25rem;border-bottom: 1px solid var(--line);}.sec--brand .sec__headrow,
.sec--dark .sec__headrow {border-bottom-color: rgba(255, 255, 255, 0.22);}.sec__headrow .sec__head {margin-bottom: 0;}.grid {display: grid;gap: clamp(1rem, 1.8vw, 1.5rem);}.g-2 {grid-template-columns: repeat(2, minmax(0, 1fr));}.g-3 {grid-template-columns: repeat(3, minmax(0, 1fr));}.g-4 {grid-template-columns: repeat(4, minmax(0, 1fr));}@media (max-width: 1099px) {.g-4 {grid-template-columns: repeat(2, minmax(0, 1fr));}}@media (max-width: 899px) {.g-3 {grid-template-columns: repeat(2, minmax(0, 1fr));}}@media (max-width: 719px) {.g-2,
.g-3,
.g-4 {grid-template-columns: minmax(0, 1fr);}}.split {display: grid;grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);gap: clamp(2rem, 5vw, 4rem);align-items: center;}.split--top {align-items: start;}.split--rev > :first-child {order: 2;}@media (max-width: 959px) {.split {grid-template-columns: minmax(0, 1fr);}.split--rev > :first-child {order: 0;}}.stack > * + * {margin-top: 1.1rem;}.center {text-align: center;}.mx-auto {margin-inline: auto;}.nowrap {white-space: nowrap;}.sr-only {position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);white-space: nowrap;border: 0;}.skip {position: absolute;left: 1rem;top: -100px;z-index: 200;background: var(--brand);color: #fff;padding: 0.75rem 1.25rem;border-radius: var(--r-s);font-weight: 600;text-decoration: none;transition: top var(--dur-fast) var(--ease);}.skip:focus {top: 1rem;color: #fff;}



.btn {
display: inline-flex;
align-items: center;
gap: 0.55rem;
min-height: 48px;
padding: 0.7rem 1.35rem;
border: 1px solid transparent;
border-radius: var(--r-s);
background: var(--brand);
color: #fff;
font: inherit;
font-size: 0.95rem;
font-weight: 620;
line-height: 1.2;
text-decoration: none;
cursor: pointer;
white-space: nowrap;
box-shadow: var(--sh-s);
transition: background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease),
border-color var(--dur-fast) var(--ease), box-shadow var(--dur) var(--ease),
transform 0.12s var(--ease);}
.btn:hover {
background: var(--brand-700);
color: #fff;
box-shadow: var(--sh-m);}
.btn:active {
transform: translateY(1px);}
.btn svg {
width: 0.85rem;
height: 0.85rem;
flex: none;
transition: transform var(--dur) var(--ease);}
.btn:hover svg {
transform: translateX(4px);}

.btn--ghost {
background: transparent;
color: var(--ink);
border-color: var(--line-2);
box-shadow: none;}
.btn--ghost:hover {
background: var(--brand-050);
border-color: var(--brand);
color: var(--brand);
box-shadow: none;}


.btn--on-dark,
.btn--onink {
background: transparent;
color: var(--ink);
border-color: var(--line-2);
box-shadow: none;}
.btn--on-dark:hover,
.btn--onink:hover {
background: var(--brand-050);
border-color: var(--brand);
color: var(--brand);
box-shadow: none;}
:is(.sec--brand, .sec--dark, .hero, .phead) :is(.btn--on-dark, .btn--onink) {
color: #fff;
border-color: rgba(255, 255, 255, 0.5);}
:is(.sec--brand, .sec--dark, .hero, .phead) :is(.btn--on-dark, .btn--onink):hover {
background: #fff;
color: var(--brand-900);
border-color: #fff;}

.btn--light {
background: #fff;
color: var(--brand-900);}
.btn--light:hover {
background: var(--brand-050);
color: var(--brand-900);}


.btn--ember,
.btn--primary {
background: var(--brand);
color: #fff;}
.btn--ember:hover,
.btn--primary:hover {
background: var(--brand-700);
color: #fff;}

:is(.sec--brand, .sec--dark) :is(.btn--ember, .btn--primary) {
background: #fff;
color: var(--brand-900);}
:is(.sec--brand, .sec--dark) :is(.btn--ember, .btn--primary):hover {
background: var(--brand-050);
color: var(--brand-900);}

.btn--sm {
min-height: 40px;
padding: 0.5rem 1rem;
font-size: 0.9rem;}
.btn--wide {
width: 100%;
justify-content: center;}

.btn-row {
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
align-items: center;}

.tel-link {
display: inline-flex;
align-items: center;
gap: 0.5rem;
min-height: 48px;
padding: 0.5rem 0.25rem;
font-weight: 620;
font-size: 0.95rem;
color: var(--ink);
text-decoration: none;
transition: color var(--dur-fast) var(--ease);}
.tel-link svg {
width: 1rem;
height: 1rem;
opacity: 0.6;}
.tel-link:hover {
color: var(--brand);}
.sec--brand .tel-link,
.sec--dark .tel-link,
.hero .tel-link,
.phead .tel-link {
color: #fff;}

.arrow-link {
display: inline-flex;
align-items: center;
gap: 0.45rem;
min-height: 24px;
padding-block: 0.15rem;
font-weight: 620;
font-size: 0.95rem;
text-decoration: none;
color: var(--signal);}
.arrow-link svg {
width: 0.8rem;
height: 0.8rem;
transition: transform var(--dur) var(--ease);}
.arrow-link:hover svg {
transform: translateX(4px);}



.tag {
display: inline-flex;
align-items: center;
gap: 0.4em;
padding: 0.3em 0.7em;
border-radius: var(--r-pill);
border: 1px solid var(--line);
background: var(--surface-2);
color: var(--ink-3);
font-size: 0.72rem;
font-weight: 620;
letter-spacing: 0.08em;
text-transform: uppercase;
line-height: 1.4;
white-space: nowrap;}
.tag--ember {
border-color: var(--brand-100);
background: var(--brand-050);
color: var(--brand);}
.tag--dark {
border-color: rgba(255, 255, 255, 0.32);
background: rgba(255, 255, 255, 0.1);
color: #fff;}
.tag-row {
display: flex;
flex-wrap: wrap;
gap: 0.4rem;}



.card {
position: relative;
display: flex;
flex-direction: column;
background: var(--surface);
border: 1px solid var(--line);
border-radius: var(--r-m);
overflow: hidden;
text-decoration: none;
color: inherit;
transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease),
transform var(--dur) var(--ease);}
a.card:hover,
.card--hover:hover {
border-color: var(--line-2);
box-shadow: var(--sh-m);
transform: translateY(-2px);}

.card__media {
position: relative;
overflow: hidden;
background: var(--surface-2);
aspect-ratio: 16 / 10;}
.card__media img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.9s var(--ease);}
a.card:hover .card__media img,
.card--hover:hover .card__media img {
transform: scale(1.03);}
.card__media--contain {
background: var(--surface-2);}
.card__media--contain img {
object-fit: contain;
padding: 6%;}

.card__badge {
position: absolute;
left: 0.8rem;
top: 0.8rem;
z-index: 2;
background: var(--brand);
color: #fff;
border-radius: var(--r-s);
padding: 0.3em 0.7em;
font-size: 0.72rem;
font-weight: 620;
letter-spacing: 0.04em;}

.card__body {
padding: clamp(1.1rem, 2vw, 1.5rem);
display: flex;
flex-direction: column;
gap: 0.5rem;
flex: 1;}
.card__body h3,
.card__body h4 {
margin: 0;}
.card__body p {
margin: 0;
font-size: 0.94rem;
color: var(--ink-3);
line-height: 1.55;}
.card__foot {
margin-top: auto;
padding-top: 0.85rem;
min-height: 24px;
display: flex;
align-items: center;
gap: 0.45rem;
font-size: 0.9rem;
font-weight: 620;
color: var(--signal);}
.card__foot svg {
width: 0.8rem;
height: 0.8rem;
transition: transform var(--dur) var(--ease);}
a.card:hover .card__foot svg {
transform: translateX(4px);}

.card--dark {
background: rgba(255, 255, 255, 0.06);
border-color: rgba(255, 255, 255, 0.2);}
.card--dark h3,
.card--dark h4 {
color: #fff;}
.card--dark .card__body p {
color: var(--on-brand);}



.tile {
position: relative;
padding: clamp(1.3rem, 2.2vw, 1.75rem);
background: var(--surface);
border: 1px solid var(--line);
border-radius: var(--r-m);
display: flex;
flex-direction: column;
gap: 0.5rem;
text-decoration: none;
color: inherit;
transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease),
transform var(--dur) var(--ease);}
a.tile:hover {
border-color: var(--line-2);
box-shadow: var(--sh-m);
transform: translateY(-2px);}
.tile__n {
display: block;
font-size: 0.75rem;
font-weight: 640;
font-stretch: 105%;
letter-spacing: 0.11em;
text-transform: uppercase;
color: var(--brand);
line-height: 1.3;}
.tile__n svg {
width: 1.35rem;
height: 1.35rem;
color: var(--brand);}
.tile h3,
.tile h4 {
margin: 0;}
.tile p {
margin: 0;
font-size: 0.94rem;
color: var(--ink-3);
line-height: 1.55;}
.tile__foot {
margin-top: auto;
padding-top: 0.85rem;
min-height: 24px;
font-size: 0.9rem;
font-weight: 620;
color: var(--signal);
display: inline-flex;
align-items: center;
gap: 0.45rem;}
.tile__foot svg {
width: 0.8rem;
height: 0.8rem;
transition: transform var(--dur) var(--ease);}
a.tile:hover .tile__foot svg {
transform: translateX(4px);}

.tile--dark {
background: rgba(255, 255, 255, 0.06);
border-color: rgba(255, 255, 255, 0.2);}
.tile--dark h3,
.tile--dark h4 {
color: #fff;}
.tile--dark p {
color: var(--on-brand);}
.tile--dark .tile__n {
color: var(--on-brand-eyebrow);}
a.tile--dark:hover {
background: rgba(255, 255, 255, 0.1);
border-color: rgba(255, 255, 255, 0.34);}


.tile--media {
--tile-pad: clamp(1.3rem, 2.2vw, 1.75rem);
padding-top: 0;
overflow: hidden;}
.tile__media {
display: block;
margin: 0 calc(-1 * var(--tile-pad)) 0.85rem;
aspect-ratio: 16 / 9;
overflow: hidden;
background: var(--surface-3);}
.tile__media img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: var(--pos, center);
transition: transform 700ms var(--ease);}
a.tile--media:hover .tile__media img {
transform: scale(1.045);}


.tile__big {
display: block;
font-size: clamp(2.75rem, 2rem + 2vw, 3.75rem);
font-weight: 700;
font-stretch: 112%;
line-height: 1;
letter-spacing: -0.02em;
color: transparent;
-webkit-text-stroke: 1.25px var(--brand);
margin-bottom: 0.6rem;
font-variant-numeric: tabular-nums;}



.fig {
margin: 0;
border-radius: var(--r-m);
overflow: hidden;
background: var(--surface-2);
border: 1px solid var(--line);
position: relative;}
.fig img {
width: 100%;
height: auto;}
.fig--dark {
border-color: rgba(255, 255, 255, 0.2);
background: rgba(255, 255, 255, 0.06);}
.fig figcaption {
padding: 0.7rem 1rem;
font-size: 0.85rem;
color: var(--ink-3);
border-top: 1px solid var(--line);
background: var(--surface);}

.gal {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: clamp(0.6rem, 1.2vw, 1rem);}
.gal > * {
margin: 0;
border-radius: var(--r-m);
overflow: hidden;
background: var(--surface-2);
border: 1px solid var(--line);
aspect-ratio: 4 / 3;}
.gal img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.8s var(--ease);}
.gal > *:hover img {
transform: scale(1.03);}
@media (max-width: 719px) {
.gal {
grid-template-columns: repeat(2, minmax(0, 1fr));}

.gal:not(.gal--rw) > :last-child:nth-child(odd) {
grid-column: 1 / -1;
aspect-ratio: 16 / 9;}}



.stats {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
gap: 1px;
background: var(--line);
border: 1px solid var(--line);
border-radius: var(--r-m);
overflow: hidden;}
.sec--brand .stats,
.sec--dark .stats {
background: rgba(255, 255, 255, 0.2);
border-color: rgba(255, 255, 255, 0.2);}

.stat {
background: var(--surface);
padding: clamp(1.1rem, 2.2vw, 1.6rem);
display: flex;
flex-direction: column;
gap: 0.25rem;}
.sec--brand .stat,
.sec--dark .stat {
background: var(--brand);}
.stat__k {
font-size: 0.72rem;
font-weight: 640;
letter-spacing: 0.1em;
text-transform: uppercase;
color: var(--ink-3);}
.sec--brand .stat__k,
.sec--dark .stat__k {
color: var(--on-brand-2);}
.stat__v {
font-size: clamp(1.9rem, 1.3rem + 1.7vw, 2.6rem);
font-weight: 700;
font-stretch: 112%;
letter-spacing: -0.022em;
line-height: 1.05;
color: var(--ink);
font-variant-numeric: tabular-nums lining-nums;}
.sec--brand .stat__v,
.sec--dark .stat__v {
color: #fff;}
.stat__u {
font-size: 0.48em;
font-weight: 620;
letter-spacing: 0;
color: var(--brand);
margin-left: 0.15em;}
.sec--brand .stat__u,
.sec--dark .stat__u {
color: var(--on-brand-eyebrow);}
.stat__d {
font-size: 0.86rem;
color: var(--ink-3);
line-height: 1.45;
margin-top: 0.1rem;}
.sec--brand .stat__d,
.sec--dark .stat__d {
color: var(--on-brand);}



.specs {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
gap: 1px;
background: var(--line);
border-block: 1px solid var(--line);}
.spec {
background: var(--surface);
padding: 1rem 1.1rem;}
.sec--paper-2 .spec {
background: var(--surface-2);}
.sec--brand .specs,
.sec--dark .specs {
background: rgba(255, 255, 255, 0.2);
border-color: rgba(255, 255, 255, 0.2);}
.sec--brand .spec,
.sec--dark .spec {
background: var(--brand);}
.spec__k {
display: block;
font-size: 0.72rem;
font-weight: 640;
letter-spacing: 0.1em;
text-transform: uppercase;
color: var(--ink-3);
margin-bottom: 0.3rem;}
.sec--brand .spec__k,
.sec--dark .spec__k {
color: var(--on-brand-2);}
.spec__v {
display: block;
font-weight: 660;
color: var(--ink);
font-size: 1.02rem;
line-height: 1.3;}
.sec--brand .spec__v,
.sec--dark .spec__v {
color: #fff;}
.spec__d {
display: block;
font-size: 0.85rem;
color: var(--ink-3);
margin-top: 0.2rem;
line-height: 1.45;}
.sec--brand .spec__d,
.sec--dark .spec__d {
color: var(--on-brand);}



.checks {
list-style: none;
margin: 0;
padding: 0;
display: grid;
gap: 0.65rem;}
.checks li {
position: relative;
padding-left: 1.75rem;
line-height: 1.55;}
.checks li::before {
content: '';
position: absolute;
left: 0;
top: 0.5em;
width: 0.85rem;
height: 0.5rem;
border-left: 2px solid var(--brand);
border-bottom: 2px solid var(--brand);
transform: rotate(-45deg);}
.sec--brand .checks li::before,
.sec--dark .checks li::before {
border-color: var(--on-brand-eyebrow);}
.checks--cols {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 0.65rem 2rem;}
@media (max-width: 719px) {
.checks--cols {
grid-template-columns: minmax(0, 1fr);}}



.table-wrap {
overflow-x: auto;
border: 1px solid var(--line);
border-radius: var(--r-m);
background: var(--surface);
-webkit-overflow-scrolling: touch;}
table.data {
width: 100%;
border-collapse: collapse;
font-variant-numeric: tabular-nums lining-nums;
min-width: 34rem;}
table.data caption {
text-align: left;
padding: 1rem 1.15rem 0.6rem;
font-weight: 660;
color: var(--ink);}
table.data th,
table.data td {
padding: 0.7rem 1.15rem;
text-align: left;
border-bottom: 1px solid var(--line);
font-size: 0.92rem;}
table.data thead th {
font-size: 0.72rem;
letter-spacing: 0.08em;
text-transform: uppercase;
font-weight: 640;
color: var(--ink-3);
background: var(--surface-2);
white-space: nowrap;}
table.data tbody th {
font-weight: 660;
color: var(--ink);
white-space: nowrap;}
table.data tbody tr:last-child th,
table.data tbody tr:last-child td {
border-bottom: 0;}
table.data tbody tr:hover {
background: var(--surface-2);}



.quote {
margin: 0;
padding: clamp(1.4rem, 3vw, 2.25rem);
border-left: 3px solid var(--brand);
background: var(--surface-2);
border-radius: 0 var(--r-m) var(--r-m) 0;}
.quote p {
font-size: clamp(1.08rem, 1rem + 0.5vw, 1.35rem);
line-height: 1.45;
color: var(--ink);}
.quote footer {
margin-top: 0.9rem;
font-size: 0.85rem;
color: var(--ink-3);}



.acc {
border-top: 1px solid var(--line);}
.acc__item {
border-bottom: 1px solid var(--line);}
.acc__btn {
width: 100%;
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 1.5rem;
padding: 1.35rem 0;
background: none;
border: 0;
font: inherit;
text-align: left;
cursor: pointer;
color: var(--ink);}
.acc__btn:hover .acc__t {
color: var(--brand);}
.acc__t {
font-size: clamp(1.02rem, 1rem + 0.3vw, 1.2rem);
font-weight: 660;
line-height: 1.35;
transition: color var(--dur-fast) var(--ease);}
.acc__sub {
display: block;
font-size: 0.9rem;
font-weight: 400;
color: var(--ink-3);
margin-top: 0.3rem;
letter-spacing: 0;
max-width: 62ch;}
.acc__sign {
flex: none;
width: 1.9rem;
height: 1.9rem;
border-radius: var(--r-s);
border: 1px solid var(--line-2);
display: grid;
place-items: center;
position: relative;
margin-top: 0.1rem;
transition: background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);}
.acc__sign::before,
.acc__sign::after {
content: '';
position: absolute;
background: var(--ink);
transition: transform var(--dur) var(--ease), opacity var(--dur-fast) var(--ease);}
.acc__sign::before {
width: 0.65rem;
height: 1.5px;}
.acc__sign::after {
width: 1.5px;
height: 0.65rem;}
.acc__btn[aria-expanded='true'] .acc__sign {
background: var(--brand);
border-color: var(--brand);}
.acc__btn[aria-expanded='true'] .acc__sign::before {
background: #fff;}
.acc__btn[aria-expanded='true'] .acc__sign::after {
opacity: 0;}
.acc__panel {
display: grid;
grid-template-rows: 0fr;
transition: grid-template-rows 0.4s var(--ease);}
.acc__panel > div {
overflow: hidden;
min-height: 0;}
.acc__item.is-open .acc__panel {
grid-template-rows: 1fr;}
.acc__inner {
padding-bottom: 1.75rem;}



.crumbs {
padding-block: 1rem;}
.crumbs ol {
list-style: none;
display: flex;
flex-wrap: wrap;
gap: 0.45rem;
margin: 0;
padding: 0;}
.crumb {
font-size: 0.82rem;
color: var(--on-brand-2);
display: flex;
align-items: center;
gap: 0.45rem;}
.crumb a {
color: var(--on-brand);
text-decoration: none;
display: inline-block;
min-height: 24px;
padding-block: 0.15rem;}
.crumb a:hover {
color: #fff;
text-decoration: underline;}
.crumb + .crumb::before {
content: '/';
opacity: 0.45;}
.crumb[aria-current] {
color: #fff;}



.note {
padding: 1.1rem 1.3rem;
border: 1px solid var(--line);
border-left: 3px solid var(--brand);
border-radius: 0 var(--r-m) var(--r-m) 0;
background: var(--surface-2);
font-size: 0.93rem;
color: var(--ink-2);}
.note strong {
display: block;
margin-bottom: 0.2rem;}



.legal {
max-width: 72ch;}
.legal h1 {
font-size: clamp(1.8rem, 1.2rem + 1.9vw, 2.5rem);
margin-top: 0;}
.legal h2 {
font-size: clamp(1.22rem, 1.1rem + 0.65vw, 1.55rem);
margin-top: 2.75rem;
padding-top: 1.5rem;
border-top: 1px solid var(--line);}
.legal h2:first-child {
margin-top: 0;
padding-top: 0;
border-top: 0;}
.legal h3 {
font-size: 1.05rem;
margin-top: 1.85rem;}
.legal h4 {
font-size: 0.95rem;
margin-top: 1.35rem;
color: var(--ink-2);}
.legal p,
.legal li {
font-size: 0.95rem;
line-height: 1.68;
max-width: none;}
.legal ul,
.legal ol {
padding-left: 1.2rem;
margin: 0 0 1.15em;}
.legal li {
margin-bottom: 0.4rem;}
.legal code {
font-family: ui-monospace, 'Cascadia Mono', Consolas, monospace;
font-size: 0.85em;
background: var(--surface-2);
padding: 0.1em 0.4em;
border-radius: var(--r-s);}
.legal strong {
color: var(--ink);}
.legal button[data-consent-reset] {
background: none;
border: 0;
padding: 0;
font: inherit;
color: var(--signal);
cursor: pointer;
text-decoration: underline;
text-underline-offset: 0.18em;}


.gal--rw {
grid-template-columns: repeat(4, minmax(0, 1fr));}
.gal--rw > * {
aspect-ratio: auto;
background: var(--surface-2);
border: 0;
display: flex;
flex-direction: column;
transition: background var(--dur) var(--ease);}
.gal--rw > *:hover {
background: var(--surface-3);}
.gal--rw img {
height: auto;
aspect-ratio: 4 / 3;
object-fit: contain;
padding: 1rem 1.25rem 0;
mix-blend-mode: multiply;
transition: transform 600ms var(--ease);}
.gal--rw > *:hover img {
transform: scale(1.04);}
.gal--rw figcaption {
padding: 0.25rem 1.25rem 1.1rem;
font-size: 0.95rem;
font-weight: 620;
color: var(--ink);}
@media (max-width: 719px) {
.gal--rw {
grid-template-columns: repeat(2, minmax(0, 1fr));}}


.plan-figs {
display: grid;
gap: 0.75rem;}
.fig--plan {
background: #fff;}
.fig--plan figcaption {
font-size: 0.8rem;
font-weight: 600;
letter-spacing: 0.06em;
text-transform: uppercase;}




.topbar {
background: var(--brand-900);
color: var(--on-brand);
font-size: 0.8rem;
border-bottom: 1px solid rgba(255, 255, 255, 0.12);}
.topbar__in {
display: flex;
align-items: center;
justify-content: space-between;
gap: 1.5rem;
min-height: 36px;}
.topbar__l {
display: flex;
align-items: center;
gap: 0.5rem;}
.topbar__dot {
display: none;}
.topbar__r {
display: flex;
align-items: center;
gap: 1.25rem;}
.topbar a {
color: #fff;
text-decoration: none;}
.topbar a:hover {
text-decoration: underline;}
.topbar__socials {
display: flex;
gap: 0.5rem;}
.topbar__socials a {
display: grid;
place-items: center;
width: 1.6rem;
height: 1.6rem;}
.topbar__socials svg {
width: 0.95rem;
height: 0.95rem;}


.langs {
display: flex;
align-items: center;
gap: 0.15rem;
font-weight: 600;
letter-spacing: 0.04em;}
.langs > a,
.langs > span {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.45rem;
min-width: 1.9rem;
min-height: 1.6rem;
padding: 0 0.3rem;
border-radius: var(--r-s);}
.flag {
display: block;
width: 1.3rem;
height: 0.875rem;
flex: none;
border-radius: 2px;
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.18);}

.topbar .langs__code {
display: none;}
.topbar .langs a .flag {
opacity: 0.6;
transition: opacity 0.15s;}
.topbar .langs a:hover .flag,
.topbar .langs a:focus-visible .flag {
opacity: 1;}
.topbar .langs [aria-current] {
background: rgba(255, 255, 255, 0.14);}
.langs--mnav {
margin-top: 1.75rem;
gap: 0.5rem;
font-size: 0.95rem;}
.langs--mnav > a,
.langs--mnav > span {
min-width: 3rem;
min-height: 2.75rem;
padding: 0 0.85rem;
border: 1px solid var(--line-2);}
.langs--mnav a {
color: var(--ink-2);
text-decoration: none;}
.langs--mnav [aria-current] {
color: var(--ink);
border-color: var(--brand);
box-shadow: inset 0 0 0 1px var(--brand);}
.topbar__r a[href^='tel:'] {
white-space: nowrap;}

@media (max-width: 559px) {
.topbar__l {
display: none;}
.topbar__in {
justify-content: flex-end;}}
@media (max-width: 767px) {
.topbar__l span:last-child,
.topbar__socials {
display: none;}}



.hdr {
position: sticky;
top: 0;
z-index: 60;
background: #fff;
border-bottom: 1px solid var(--line);
transition: box-shadow var(--dur) var(--ease);}
.hdr.is-stuck {
box-shadow: var(--sh-s);}
.hdr__in {
display: flex;
align-items: center;
gap: clamp(1rem, 2.5vw, 2rem);
height: var(--hdr);}

.brand {
display: flex;
align-items: center;
flex: none;
text-decoration: none;}
.brand img {
height: 40px;
width: auto;}

.nav {
display: flex;
align-items: center;
gap: 0.1rem;
margin-left: auto;}
.nav__item {
position: relative;}
.nav__link {
display: inline-flex;
align-items: center;
gap: 0.3rem;
padding: 0.55rem 0.7rem;
border-bottom: 2px solid transparent;
font-size: 0.95rem;
font-weight: 600;
color: var(--ink-2);
text-decoration: none;
white-space: nowrap;
background: none;
border-top: 0;
border-inline: 0;
font-family: inherit;
cursor: pointer;
transition: color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);}
.nav__link:hover {
color: var(--brand);}
.nav__link[aria-current='page'],
.nav__link.is-active {
color: var(--brand);
border-bottom-color: var(--brand);}
.nav__caret {
width: 0.55rem;
height: 0.55rem;
opacity: 0.6;
transition: transform var(--dur-fast) var(--ease);}
.nav__item:hover .nav__caret,
.nav__item.is-open .nav__caret {
transform: rotate(180deg);}


.nav__pop {
position: absolute;
top: calc(100% + 1px);
left: 50%;
transform: translate(-50%, 6px);
min-width: min(40rem, 88vw);
background: #fff;
border: 1px solid var(--line);
border-radius: 0 0 var(--r-m) var(--r-m);
box-shadow: var(--sh-m);
padding: 0.6rem;
opacity: 0;
visibility: hidden;
pointer-events: none;
transition: opacity var(--dur-fast) var(--ease), transform var(--dur) var(--ease),
visibility var(--dur-fast);
z-index: 70;}
.nav__item:hover .nav__pop,
.nav__item.is-open .nav__pop,
.nav__item:focus-within .nav__pop {
opacity: 1;
visibility: visible;
pointer-events: auto;
transform: translate(-50%, 0);}
.nav__pop--right {
left: auto;
right: 0;
transform: translate(0, 6px);
min-width: min(28rem, 88vw);}
.nav__item:hover .nav__pop--right,
.nav__item.is-open .nav__pop--right,
.nav__item:focus-within .nav__pop--right {
transform: translate(0, 0);}
.nav__grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 0.15rem;}
.nav__grid--2 {
grid-template-columns: repeat(2, minmax(0, 1fr));}
.nav__tile {
display: flex;
gap: 0.7rem;
align-items: center;
padding: 0.5rem;
border-radius: var(--r-s);
text-decoration: none;
color: inherit;
transition: background var(--dur-fast) var(--ease);}
.nav__tile:hover {
background: var(--brand-050);}
.nav__thumb {
width: 3rem;
height: 2.25rem;
flex: none;
border-radius: var(--r-s);
overflow: hidden;
background: var(--surface-2);
border: 1px solid var(--line);}
.nav__thumb img {
width: 100%;
height: 100%;
object-fit: cover;}
.nav__tt {
display: block;
font-size: 0.9rem;
font-weight: 620;
color: var(--ink);
line-height: 1.25;}
.nav__td {
display: block;
font-size: 0.78rem;
color: var(--ink-3);
line-height: 1.35;
margin-top: 0.1rem;}
.nav__foot {
margin-top: 0.4rem;
padding: 0.7rem 0.6rem 0.3rem;
border-top: 1px solid var(--line);
display: flex;
justify-content: space-between;
align-items: center;
gap: 1rem;
flex-wrap: wrap;}
.nav__hint {
font-size: 0.82rem;
color: var(--ink-3);}

.hdr__cta {
display: flex;
align-items: center;
gap: 0.5rem;
flex: none;}

@media (max-width: 1179px) {
.nav,
.hdr__cta .btn {
display: none;}}


.burger {
display: none;
width: 2.75rem;
height: 2.75rem;
border: 1px solid var(--line-2);
border-radius: var(--r-s);
background: none;
cursor: pointer;
position: relative;
flex: none;}
.burger span {
position: absolute;
left: 50%;
width: 1.1rem;
height: 2px;
background: var(--ink);
border-radius: 1px;
transform: translateX(-50%);
transition: transform var(--dur) var(--ease), opacity var(--dur-fast) var(--ease),
top var(--dur) var(--ease);}
.burger span:nth-child(1) {
top: calc(50% - 6px);}
.burger span:nth-child(2) {
top: 50%;}
.burger span:nth-child(3) {
top: calc(50% + 6px);}
.burger[aria-expanded='true'] span:nth-child(1) {
top: 50%;
transform: translateX(-50%) rotate(45deg);}
.burger[aria-expanded='true'] span:nth-child(2) {
opacity: 0;}
.burger[aria-expanded='true'] span:nth-child(3) {
top: 50%;
transform: translateX(-50%) rotate(-45deg);}
@media (max-width: 1179px) {
.burger {
display: block;
margin-left: auto;}}


.mnav {
position: fixed;
inset: 0;
z-index: 90;
background: #fff;
overflow-y: auto;
overscroll-behavior: contain;
opacity: 0;
visibility: hidden;
transition: opacity var(--dur) var(--ease), visibility var(--dur);
padding-bottom: max(3rem, env(safe-area-inset-bottom));}
.mnav.is-open {
opacity: 1;
visibility: visible;}
.mnav__top {
display: flex;
align-items: center;
justify-content: space-between;
height: var(--hdr);
border-bottom: 1px solid var(--line);}
.mnav__top img {
height: 36px;}
.mnav__close {
width: 2.75rem;
height: 2.75rem;
border: 1px solid var(--line-2);
border-radius: var(--r-s);
background: none;
color: var(--ink);
cursor: pointer;
display: grid;
place-items: center;}
.mnav__close svg {
width: 1rem;
height: 1rem;}
.mnav__list {
list-style: none;
margin: 0;
padding: 1rem 0 0;}
.mnav__list > li {
border-bottom: 1px solid var(--line);}
.mnav__a {
display: flex;
align-items: center;
justify-content: space-between;
gap: 1rem;
width: 100%;
min-height: 56px;
padding: 0.9rem 0;
font-size: 1.1rem;
font-weight: 660;
color: var(--ink);
text-decoration: none;
background: none;
border: 0;
font-family: inherit;
cursor: pointer;
text-align: left;}
.mnav__a svg {
width: 0.8rem;
height: 0.8rem;
opacity: 0.6;
transition: transform var(--dur) var(--ease);}
.mnav__a[aria-expanded='true'] svg {
transform: rotate(180deg);}
.mnav__sub {
display: grid;
grid-template-rows: 0fr;
transition: grid-template-rows var(--dur) var(--ease);}
.mnav__sub > div {
overflow: hidden;
min-height: 0;}
.mnav__a[aria-expanded='true'] + .mnav__sub {
grid-template-rows: 1fr;}
.mnav__sub ul {
list-style: none;
margin: 0;
padding: 0 0 1rem;}
.mnav__sub a {
display: block;
min-height: 44px;
padding: 0.6rem 0;
color: var(--ink-2);
text-decoration: none;
font-size: 0.98rem;}
.mnav__sub a:hover {
color: var(--brand);}
.mnav__cta {
margin-top: 1.75rem;
display: grid;
gap: 0.7rem;}



.hero {
position: relative;
background: var(--brand-900);
color: #fff;
overflow: hidden;
isolation: isolate;}
.hero__media {
position: absolute;
inset: 0;
z-index: 0;}
.hero__media video,
.hero__media img {
width: 100%;
height: 100%;
object-fit: cover;}

.hero__media::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(
100deg,
rgba(6, 33, 79, 0.94) 0%,
rgba(6, 33, 79, 0.88) 40%,
rgba(6, 33, 79, 0.7) 56%,
rgba(6, 33, 79, 0.22) 78%,
rgba(6, 33, 79, 0.08) 100%
),
linear-gradient(to top, rgba(6, 33, 79, 0.6), transparent 40%);}
@media (max-width: 979px) {
.hero__media::after {
background: linear-gradient(
to top,
rgba(6, 33, 79, 0.95) 30%,
rgba(6, 33, 79, 0.82) 70%,
rgba(6, 33, 79, 0.72) 100%
);}}

.hero__in {
position: relative;
z-index: 2;
padding-block: clamp(3.25rem, 7vw, 6rem);
min-height: min(70vh, 620px);
display: flex;
flex-direction: column;
justify-content: center;}
.hero__body {
max-width: 46rem;}

.hero__title {
font-size: clamp(2.1rem, 1.25rem + 3.4vw, 3.8rem);
font-weight: 700;
font-stretch: 112%;
line-height: 1.06;
letter-spacing: -0.022em;
color: #fff;
margin: 0 0 1.1rem;
text-wrap: balance;}
.hero__title em {
font-style: normal;}
.hero__lead {
font-size: clamp(1.04rem, 0.98rem + 0.4vw, 1.22rem);
line-height: 1.55;
color: var(--on-brand);
max-width: 52ch;
margin: 0 0 1.9rem;}
.hero__cta {
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
align-items: center;}


.hero__facts {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 1.1rem clamp(1.25rem, 2.5vw, 2.25rem);
margin-top: clamp(2rem, 4vw, 3rem);
padding-top: 1.5rem;
border-top: 1px solid rgba(255, 255, 255, 0.25);
max-width: 52rem;}

@media (min-width: 768px) {
.hero__facts {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
gap: 1.1rem 1rem;}
.hero__facts .hero__fact span {
letter-spacing: 0.06em;}}
.hero__fact {
display: flex;
flex-direction: column;
gap: 0.15rem;}
.hero__fact b {
font-size: clamp(1.3rem, 1.1rem + 0.6vw, 1.65rem);
font-weight: 700;
font-stretch: 112%;
letter-spacing: -0.02em;
color: #fff;
line-height: 1.1;
font-variant-numeric: tabular-nums;}
.hero__fact b i {
font-style: normal;
font-size: 0.55em;
font-weight: 620;
color: var(--on-brand-eyebrow);
margin-left: 0.15em;}
.hero__fact span {
font-size: 0.76rem;
font-weight: 600;
letter-spacing: 0.09em;
text-transform: uppercase;
color: var(--on-brand-2);}


.hero__pause {
position: absolute;
right: clamp(1rem, 3vw, 2rem);
bottom: clamp(1rem, 3vw, 2rem);
z-index: 3;
display: inline-flex;
align-items: center;
gap: 0.45rem;
min-height: 36px;
padding: 0.4rem 0.85rem;
border-radius: var(--r-pill);
border: 1px solid rgba(255, 255, 255, 0.45);
background: rgba(6, 33, 79, 0.78);
backdrop-filter: blur(6px);
color: #fff;
font: inherit;
font-size: 0.78rem;
font-weight: 600;
cursor: pointer;
transition: background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);}
.hero__pause:hover {
background: rgba(6, 33, 79, 0.8);
border-color: #fff;}
.hero__pause svg {
width: 0.7rem;
height: 0.7rem;}
@media (max-width: 719px) {
.hero__pause span {
display: none;}
.hero__pause {
padding: 0.4rem 0.55rem;}}


.phead {
position: relative;
background: var(--brand-900);
color: var(--on-brand);
overflow: hidden;
isolation: isolate;}
.phead__bg {
position: absolute;
inset: 0;
z-index: -1;}
.phead__bg img {
width: 100%;
height: 100%;
object-fit: cover;}
.phead__bg::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(
100deg,
rgba(6, 33, 79, 0.95) 10%,
rgba(6, 33, 79, 0.88) 45%,
rgba(6, 33, 79, 0.6) 100%
);}
.phead__in {
position: relative;
z-index: 2;
padding-block: clamp(1.75rem, 3.5vw, 2.75rem) clamp(2.75rem, 5.5vw, 4.5rem);
max-width: 58rem;}
.phead__title {
font-size: clamp(1.95rem, 1.3rem + 2.6vw, 3.1rem);
font-weight: 700;
font-stretch: 112%;
line-height: 1.08;
letter-spacing: -0.022em;
color: #fff;
margin: 0.4rem 0 1rem;}
.phead__lead {
font-size: clamp(1.02rem, 0.98rem + 0.35vw, 1.16rem);
line-height: 1.55;
color: var(--on-brand);
max-width: 56ch;
margin: 0;}
.phead__cta {
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
align-items: center;
margin-top: 1.9rem;}



.ftr {
background: var(--brand-900);
color: var(--on-brand);}
.ftr__main {
display: grid;
grid-template-columns: minmax(0, 1.25fr) repeat(3, minmax(0, 1fr));
gap: clamp(2rem, 4vw, 3.5rem);
padding-block: clamp(3rem, 5.5vw, 4.5rem) clamp(2.25rem, 4vw, 3rem);}
@media (max-width: 979px) {
.ftr__main {
grid-template-columns: repeat(2, minmax(0, 1fr));}
.ftr__brand {
grid-column: 1 / -1;}}
@media (max-width: 559px) {
.ftr__main {
grid-template-columns: minmax(0, 1fr);}}
.ftr__brand img {
height: 40px;
width: auto;
margin-bottom: 1.25rem;}
.ftr__brand p {
font-size: 0.92rem;
line-height: 1.6;
max-width: 34ch;
color: var(--on-brand);}
.ftr h4 {
font-size: 0.78rem;
font-weight: 640;
letter-spacing: 0.11em;
text-transform: uppercase;
color: #fff;
margin: 0 0 1rem;}
.ftr ul {
list-style: none;
margin: 0;
padding: 0;}
.ftr a {
color: var(--on-brand);
text-decoration: none;
font-size: 0.92rem;
display: inline-block;
min-height: 24px;
padding-block: 0.22rem;}
.ftr a:hover {
color: #fff;
text-decoration: underline;}
.ftr__contact {
display: grid;
gap: 0.35rem;
font-size: 0.92rem;
font-style: normal;}
.ftr__contact a {
display: inline-flex;
align-items: center;
gap: 0.5rem;}
.ftr__contact svg {
width: 0.9rem;
height: 0.9rem;
opacity: 0.7;
flex: none;}
.ftr__seal {
display: flex;
align-items: center;
gap: 0.9rem;
margin-top: 1.5rem;
padding-top: 1.35rem;
border-top: 1px solid rgba(255, 255, 255, 0.2);}
.ftr__seal img {
width: 3.4rem;
height: auto;
flex: none;}
.ftr__seal span {
font-size: 0.82rem;
line-height: 1.45;
color: var(--on-brand);}
.ftr__bottom {
border-top: 1px solid rgba(255, 255, 255, 0.2);
padding-block: 1.25rem;
display: flex;
flex-wrap: wrap;
gap: 0.5rem 1.5rem;
align-items: center;
justify-content: space-between;
font-size: 0.85rem;}
.ftr__legal {
display: flex;
flex-wrap: wrap;
gap: 0.25rem 1.25rem;}
.ftr__bottom button {
background: none;
border: 0;
color: var(--on-brand);
font: inherit;
font-size: 0.85rem;
cursor: pointer;
padding-block: 0.22rem;
min-height: 24px;
text-decoration: underline;
text-underline-offset: 0.18em;}
.ftr__bottom button:hover {
color: #fff;}



.dock {
position: fixed;
right: max(clamp(0.85rem, 2vw, 1.5rem), env(safe-area-inset-right));
bottom: max(clamp(0.85rem, 2vw, 1.5rem), env(safe-area-inset-bottom));
z-index: 55;
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 0.55rem;
pointer-events: none;}
.dock > * {
pointer-events: auto;}
.dock__card {
display: flex;
align-items: center;
gap: 0.75rem;
padding: 0.5rem 1.1rem 0.5rem 0.5rem;
background: #fff;
border: 1px solid var(--line);
border-radius: var(--r-pill);
box-shadow: var(--sh-m);
text-decoration: none;
color: inherit;
max-width: min(20rem, calc(100vw - 2rem));
transform: translateY(140%);
opacity: 0;
transition: transform var(--dur) var(--ease), opacity var(--dur-fast) var(--ease);}
.dock.is-on .dock__card {
transform: none;
opacity: 1;}
.dock__card:hover {
border-color: var(--brand);}
.dock__ava {
width: 2.5rem;
height: 2.5rem;
border-radius: 50%;
overflow: hidden;
flex: none;
background: var(--surface-2);}
.dock__ava img {
width: 100%;
height: 100%;
object-fit: cover;}
.dock__t {
display: block;
font-size: 0.75rem;
color: var(--ink-3);
line-height: 1.2;}
.dock__n {
display: block;
font-size: 0.92rem;
font-weight: 660;
color: var(--ink);
line-height: 1.25;}
@media (max-width: 719px) {
.dock__card {
padding-right: 0.5rem;}
.dock__txt {
display: none;}}

.totop {
width: 2.75rem;
height: 2.75rem;
border-radius: var(--r-s);
border: 1px solid var(--line);
background: #fff;
color: var(--ink);
display: grid;
place-items: center;
cursor: pointer;
box-shadow: var(--sh-s);
opacity: 0;
transform: translateY(140%);
transition: transform var(--dur) var(--ease), opacity var(--dur-fast) var(--ease),
background var(--dur-fast) var(--ease);}
.dock.is-on .totop {
opacity: 1;
transform: none;}
.totop:hover {
background: var(--surface-2);}
.totop svg {
width: 0.9rem;
height: 0.9rem;}

@media (max-width: 819px) {
.is-pinning .dock.is-on:not(.is-open) > .dock__card,
.is-pinning .dock.is-on:not(.is-open) > .totop {
opacity: 0;
transform: translateY(140%);
pointer-events: none;}}



.consent {
position: fixed;
left: 50%;
bottom: max(1rem, env(safe-area-inset-bottom));
transform: translate(-50%, 160%);
z-index: 95;
width: min(46rem, calc(100vw - 2rem));
background: #fff;
border: 1px solid var(--line);
border-radius: var(--r-m);
box-shadow: var(--sh-l);
padding: 1.25rem 1.4rem;
transition: transform var(--dur) var(--ease);}
.consent.is-on {
transform: translate(-50%, 0);}
.consent p {
font-size: 0.9rem;
margin-bottom: 1rem;
max-width: none;}
.consent__row {
display: flex;
flex-wrap: wrap;
gap: 0.6rem;
align-items: center;}



.rail {
display: none;}



.chain {
position: relative;}
.chain__scroll {
display: flex;
overflow-x: auto;
scroll-snap-type: x proximity;
padding-block: 2.75rem 1.25rem;
margin-inline: calc(var(--gutter) * -1);
padding-inline: var(--gutter);
scroll-padding-inline: var(--gutter);
scrollbar-width: none;
-webkit-overflow-scrolling: touch;}
.chain__scroll::-webkit-scrollbar {
display: none;}

.station {
position: relative;
flex: 0 0 clamp(13rem, 19vw, 15.5rem);
scroll-snap-align: start;
padding: 0 clamp(0.5rem, 1vw, 0.75rem);
text-decoration: none;
color: inherit;}

.station::before {
content: '';
position: absolute;
left: 0;
right: 0;
top: -1.4rem;
height: 2px;
background: var(--line);}
.station:first-child::before {
left: 50%;}
.station:last-child::before {
right: 50%;}

.station::after {
content: '';
position: absolute;
left: calc(50% - 0.35rem);
top: -1.75rem;
width: 0.7rem;
height: 0.7rem;
border-radius: 50%;
background: #fff;
border: 2px solid var(--line-2);
transition: border-color var(--dur-fast) var(--ease);}
.station:hover::after {
border-color: var(--brand);}
.station__n {
display: block;
font-size: 0.75rem;
font-weight: 640;
letter-spacing: 0.1em;
color: var(--ink-3);
margin-bottom: 0.5rem;}
.station:hover .station__n {
color: var(--brand);}
.station__img {
display: block;
border-radius: var(--r-m);
overflow: hidden;
background: var(--surface-2);
border: 1px solid var(--line);
aspect-ratio: 4 / 3;
margin-bottom: 0.7rem;
transition: border-color var(--dur-fast) var(--ease);}
.station__img img {
width: 100%;
height: 100%;
object-fit: contain;
padding: 7%;}
.station:hover .station__img {
border-color: var(--line-2);}
.station h3 {
font-size: 1.05rem;
margin: 0 0 0.25rem;}
.station:hover h3 {
color: var(--brand);}
.station p {
font-size: 0.86rem;
line-height: 1.5;
color: var(--ink-3);
margin: 0;}

.chain__hint {
display: flex;
align-items: center;
gap: 0.5rem;
font-size: 0.82rem;
color: var(--ink-3);
margin-top: 0.25rem;}
.chain__hint svg {
width: 1.1rem;
height: 0.7rem;}


.chain__foot {
display: flex;
align-items: center;
justify-content: space-between;
gap: 1rem;
margin-top: 0.25rem;}
.chain__foot .chain__hint {
margin-top: 0;}
.chain__hint-mouse {
display: none;}
@media (hover: hover) and (pointer: fine) {
.chain__hint-touch {
display: none;}
.chain__hint-mouse {
display: inline;}}
.chain__nav {
display: flex;
gap: 0.5rem;
flex-shrink: 0;}
.chain__btn {
width: 2.75rem;
height: 2.75rem;
border-radius: var(--r-s);
border: 1px solid var(--line-2);
background: #fff;
color: var(--ink);
display: grid;
place-items: center;
cursor: pointer;
transition: border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease),
opacity var(--dur-fast) var(--ease);}
.chain__btn:hover:not(:disabled) {
border-color: var(--brand);
color: var(--brand);}
.chain__btn:disabled {
opacity: 0.35;
cursor: default;}
.chain__btn svg {
width: 1rem;
height: 1rem;}
.chain__btn--prev svg {
transform: scaleX(-1);}
.chain__nav[hidden] {
display: none;}


.chainpin[data-pin^='all'] .chainpin__stage,
.chainpin[data-pin='row'] .chain {
position: sticky;
top: var(--pin-top, 0);}
.chainpin[data-pin='row'] .chainpin__stage {
height: 100%;}
.chainpin[data-pin] .chain__scroll {
scroll-snap-type: none;}

.chainpin[data-pin^='all'] .sec__headrow {
margin-bottom: 1.25rem;}
.chainpin[data-pin^='all'] .chain__scroll {
padding-bottom: 0.5rem;}
.chainpin[data-pin='all-tight'] .sec__head .lead {
display: none;}
.chainpin[data-pin] .chain__hint,
.chainpin[data-pin] .chain__nav {
display: none;}


.chainpin[data-pin] .station {
opacity: 0.42;
transition: opacity var(--dur) var(--ease);}
.chainpin[data-pin] .station__img {
transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease),
transform var(--dur) var(--ease);}
.chainpin[data-pin] .station.is-past::after {
border-color: var(--brand);
background: var(--brand);}
.chainpin[data-pin] .station.is-past::before {
background: var(--brand);}
.chainpin[data-pin] .station.is-focus {
opacity: 1;}
.chainpin[data-pin] .station.is-focus::after {
border-color: var(--brand);
background: #fff;
box-shadow: 0 0 0 4px rgba(11, 55, 128, 0.14);}
.chainpin[data-pin] .station.is-focus .station__img {
border-color: var(--brand);
box-shadow: 0 18px 40px -22px rgba(11, 55, 128, 0.45);
transform: translateY(-6px);}
.chainpin[data-pin] .station.is-focus .station__n,
.chainpin[data-pin] .station.is-focus h3 {
color: var(--brand);}




.translate {
--big: clamp(2.75rem, 1.9rem + 3.4vw, 4.5rem);
--num: calc(var(--big) * 4.3);
display: grid;
grid-template-columns: var(--num) minmax(0, 1fr) minmax(0, 0.85fr);
gap: clamp(1.5rem, 4vw, 3.5rem);
align-items: center;}

.translate__fig {
margin: 0;
border-radius: var(--r-m);
overflow: hidden;
aspect-ratio: 4 / 3;
box-shadow: 0 20px 50px rgba(3, 18, 45, 0.35);}
.translate__fig img {
width: 100%;
height: 100%;
object-fit: cover;}
@media (max-width: 1099px) {
.translate {
grid-template-columns: var(--num) minmax(0, 1fr);}
.translate__fig {
grid-column: 1 / -1;
aspect-ratio: 16 / 7;}}
@media (max-width: 819px) {
.translate {
grid-template-columns: minmax(0, 1fr);}}
.translate__big {
display: block;
font-size: var(--big);
font-weight: 700;
font-stretch: 112%;
line-height: 1;
letter-spacing: -0.028em;
color: #fff;
font-variant-numeric: tabular-nums;
white-space: nowrap;}
.translate__big i {
display: block;
font-style: normal;
font-size: 0.2em;
font-weight: 640;
color: var(--on-brand-eyebrow);
letter-spacing: 0.12em;
text-transform: uppercase;
margin-top: 0.7em;}
.translate__txt p {
font-size: clamp(1.1rem, 1rem + 0.55vw, 1.4rem);
line-height: 1.45;
color: #fff;
max-width: 40ch;}
.translate__txt p b {
color: #fff;}

.translate__txt .translate__foot {
margin-top: 1rem;
font-size: 0.86rem;
line-height: 1.55;
color: var(--on-brand-2);}

.trot__stage {
display: grid;}
.trot__pane {
grid-area: 1 / 1;
transition: opacity 0.7s var(--ease), visibility 0.7s;}
.trot__pane:not(.is-on) {
opacity: 0;
visibility: hidden;}
.trot__pane .translate__fig img,
.trot__pane .translate__big,
.trot__pane .translate__txt > p {
transition: transform 0.9s var(--ease);}
.trot__pane:not(.is-on) .translate__fig img {
transform: scale(1.06);}
.trot__pane:not(.is-on) .translate__big,
.trot__pane:not(.is-on) .translate__txt > p {
transform: translateY(14px);}

.trot[data-pin] {
position: sticky;
top: var(--pin-top, 0);}
.trot[data-pin] .trot__tab[aria-selected='true']::after {
transform: scaleX(var(--seg, 1));}
html.no-js .trot__stage {
gap: 2.5rem;}
html.no-js .trot__pane {
grid-area: auto;
opacity: 1;
visibility: visible;}
html.no-js .trot__tabs {
display: none;}
.trot__tabs {
display: flex;
gap: 1.75rem;
margin-top: clamp(1.5rem, 3vw, 2.25rem);
border-top: 1px solid rgba(255, 255, 255, 0.18);}
.trot__tab {
position: relative;
padding: 0.85rem 0 0;
background: none;
border: 0;
font: inherit;
font-size: 0.75rem;
font-weight: 640;
letter-spacing: 0.11em;
text-transform: uppercase;
color: var(--on-brand-2);
cursor: pointer;}
.trot__tab:hover,
.trot__tab[aria-selected='true'] {
color: #fff;}

.trot__tab::after {
content: '';
position: absolute;
left: 0;
right: 0;
top: -1px;
height: 2px;
background: #fff;
transform: scaleX(0);
transform-origin: left;}
.trot__tab[aria-selected='true']::after {
transform: scaleX(1);}
.trot.is-auto .trot__tab[aria-selected='true']::after {
animation: trot-run 8s linear both;}
.trot.is-paused .trot__tab[aria-selected='true']::after {
animation-play-state: paused;}
@keyframes trot-run {
from {
transform: scaleX(0);}
to {
transform: scaleX(1);}}



.finder {
background: #fff;
border: 1px solid var(--line);
border-radius: var(--r-m);
padding: clamp(1.25rem, 2.5vw, 1.85rem);}
.finder__row {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: clamp(1.25rem, 2.5vw, 2rem);
align-items: start;}
.finder__lbl {
display: block;
font-size: 0.75rem;
font-weight: 640;
letter-spacing: 0.1em;
text-transform: uppercase;
color: var(--ink-3);
margin-bottom: 0.7rem;}
.chips {
display: flex;
flex-wrap: wrap;
gap: 0.4rem;}
.chip {
min-height: 40px;
padding: 0.45rem 0.9rem;
border: 1px solid var(--line-2);
border-radius: var(--r-s);
background: #fff;
color: var(--ink-2);
font: inherit;
font-size: 0.9rem;
font-weight: 600;
cursor: pointer;
transition: background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease),
color var(--dur-fast) var(--ease);}
.chip:hover {
border-color: var(--brand);
color: var(--brand);}
.chip[aria-pressed='true'] {
background: var(--brand);
border-color: var(--brand);
color: #fff;}

.range {
width: 100%;
-webkit-appearance: none;
appearance: none;
height: 40px;
background: linear-gradient(var(--line-2), var(--line-2)) center / 100% 3px no-repeat;
outline: none;
margin: 0.5rem 0 0.2rem;
cursor: pointer;}
.range::-webkit-slider-runnable-track {
height: 40px;
background: transparent;}
.range::-moz-range-track {
height: 3px;
background: var(--line-2);}
.range::-webkit-slider-thumb {
-webkit-appearance: none;
width: 1.6rem;
height: 1.6rem;
border-radius: 50%;
background: var(--brand);
border: 3px solid #fff;
box-shadow: 0 1px 6px rgba(11, 55, 128, 0.4);
cursor: grab;}
.range::-moz-range-thumb {
width: 1.6rem;
height: 1.6rem;
border-radius: 50%;
background: var(--brand);
border: 3px solid #fff;
box-shadow: 0 1px 6px rgba(11, 55, 128, 0.4);
cursor: grab;}
.range:focus-visible {
outline: none;}
.range:focus-visible::-webkit-slider-thumb {
box-shadow: 0 0 0 3px #fff, 0 0 0 6px var(--focus);}
.range:focus-visible::-moz-range-thumb {
box-shadow: 0 0 0 3px #fff, 0 0 0 6px var(--focus);}
.range__out {
font-size: clamp(1.5rem, 1.25rem + 1vw, 2rem);
font-weight: 700;
font-stretch: 112%;
letter-spacing: -0.022em;
color: var(--ink);
line-height: 1.1;
font-variant-numeric: tabular-nums;}
.range__out i {
font-style: normal;
font-size: 0.5em;
font-weight: 620;
color: var(--brand);
margin-left: 0.2em;}
.range__scale {
display: flex;
justify-content: space-between;
font-size: 0.78rem;
color: var(--ink-3);
margin-top: 0.2rem;}

.finder__out {
margin-top: clamp(1.25rem, 2.5vw, 1.75rem);
padding-top: clamp(1.25rem, 2.5vw, 1.75rem);
border-top: 1px solid var(--line);}
.finder__none {
font-size: 0.92rem;
color: var(--ink-3);
margin-bottom: 0.75rem;}
.finder__list {
display: grid;
gap: 0.6rem;}
.rec {
display: flex;
align-items: center;
gap: clamp(1rem, 2vw, 1.5rem);
padding: clamp(0.8rem, 1.6vw, 1.1rem);
border: 1px solid var(--line);
border-radius: var(--r-m);
background: var(--surface-2);
text-decoration: none;
color: inherit;
transition: border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);}
.rec:hover {
border-color: var(--brand);
background: var(--brand-050);}
.rec__img {
width: clamp(7rem, 14vw, 10rem);
height: clamp(4.6rem, 9vw, 6.5rem);
flex: none;
border-radius: var(--r-s);
overflow: hidden;
background: #fff;
border: 1px solid var(--line);}
.rec__img img {
width: 100%;
height: 100%;
object-fit: contain;
padding: 5%;}
.rec__b {
flex: 1;
min-width: 0;}
.rec__t {
display: block;
font-size: clamp(1.05rem, 1.6vw, 1.25rem);
font-weight: 660;
color: var(--ink);
line-height: 1.3;}
.rec__c {
display: block;
font-size: 0.95rem;
color: var(--ink-3);
margin-top: 0.15rem;}
.rec__go {
flex: none;
min-height: 2.9rem;
padding: 0 1.15rem;
border-radius: var(--r-s);
background: var(--brand);
color: #fff;
display: inline-flex;
align-items: center;
gap: 0.6rem;
font-size: 0.95rem;
font-weight: 640;
white-space: nowrap;
transition: transform var(--dur) var(--ease);}
.rec__go svg {
width: 0.85rem;
height: 0.85rem;}
@media (max-width: 560px) {
.rec__go {
width: 2.6rem;
padding: 0;
justify-content: center;}
.rec__go-t {
display: none;}}


.finder__more {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
gap: 1rem 2rem;
margin-top: clamp(1.25rem, 2.5vw, 1.75rem);}
.finder__more p {
max-width: 46rem;
font-size: clamp(1.05rem, 1.6vw, 1.25rem);
line-height: 1.5;
color: var(--ink-2);}
.finder__more strong {
font-weight: 700;
color: var(--ink);}
.rec:hover .rec__go {
transform: translateX(3px);}



.filterbar {
display: flex;
flex-wrap: wrap;
gap: 0.4rem;
align-items: center;
padding-bottom: 1.25rem;
border-bottom: 1px solid var(--line);
margin-bottom: clamp(1.5rem, 3vw, 2.25rem);}
.filterbar__count {
margin-left: auto;
font-size: 0.82rem;
color: var(--ink-3);}
.is-hidden {
display: none !important;}



.videocard {
position: relative;
display: block;
border-radius: var(--r-m);
overflow: hidden;
background: var(--surface-2);
border: 1px solid var(--line);
text-decoration: none;}
.sec--brand .videocard,
.sec--dark .videocard {
border-color: rgba(255, 255, 255, 0.2);}
.videocard img {
width: 100%;
height: auto;
transition: transform 0.9s var(--ease);}
.videocard:hover img {
transform: scale(1.02);}
.videocard__play {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
width: clamp(3.4rem, 6vw, 4.5rem);
height: clamp(3.4rem, 6vw, 4.5rem);
border-radius: 50%;
background: rgba(255, 255, 255, 0.95);
display: grid;
place-items: center;
box-shadow: 0 6px 24px rgba(6, 33, 79, 0.35);
transition: transform var(--dur) var(--ease);}
.videocard:hover .videocard__play {
transform: translate(-50%, -50%) scale(1.06);}
.videocard__play svg {
width: 1.05rem;
height: 1.05rem;
margin-left: 3px;
color: var(--brand);}
.videocard__meta {
position: absolute;
left: 0;
right: 0;
bottom: 0;
padding: 2.5rem 1.2rem 1rem;
background: linear-gradient(to top, rgba(6, 33, 79, 0.92), transparent);
color: #fff;
display: flex;
justify-content: space-between;
align-items: flex-end;
gap: 1rem;}
.videocard__t {
font-weight: 660;
font-size: 1rem;}
.videocard__d {
font-size: 0.8rem;
color: rgba(255, 255, 255, 0.82);
white-space: nowrap;}



.lb {
position: fixed;
inset: 0;
z-index: 100;
background: rgba(6, 33, 79, 0.94);
display: grid;
place-items: center;
padding: clamp(1rem, 4vw, 3rem);
opacity: 0;
visibility: hidden;
transition: opacity var(--dur) var(--ease), visibility var(--dur);}
.lb.is-on {
opacity: 1;
visibility: visible;

transition: opacity var(--dur) var(--ease), visibility 0s;}
.lb img {
max-width: 100%;
max-height: 82vh;
width: auto;
border-radius: var(--r-m);}
.lb--film video {
display: block;
width: min(100%, 1600px, calc(86vh * 16 / 9));
aspect-ratio: 16 / 9;
border-radius: var(--r-m);
background: #000;}
.lb__cap {
margin-top: 1rem;
color: var(--on-brand);
font-size: 0.88rem;
text-align: center;
max-width: 60ch;}
.lb__x {
position: absolute;
top: clamp(0.85rem, 2vw, 1.5rem);
right: clamp(0.85rem, 2vw, 1.5rem);
width: 2.75rem;
height: 2.75rem;
border-radius: var(--r-s);
border: 1px solid rgba(255, 255, 255, 0.45);
background: rgba(255, 255, 255, 0.1);
color: #fff;
cursor: pointer;
display: grid;
place-items: center;}
.lb__x:hover {
background: rgba(255, 255, 255, 0.2);}
.lb__x svg {
width: 1rem;
height: 1rem;}
.zoomable {
cursor: zoom-in;}
.field {display: grid;gap: 0.35rem;}.field > label,
.fieldset__legend {font-size: 0.85rem;font-weight: 620;color: var(--ink-2);}.field__req {color: var(--brand);}.input,
.select,
.textarea {width: 100%;min-height: 48px;padding: 0.7rem 0.9rem;border: 1px solid var(--line-2);border-radius: var(--r-s);background: #fff;color: var(--ink);font: inherit;font-size: 0.98rem;line-height: 1.45;transition: border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);}.input:hover,
.select:hover,
.textarea:hover {border-color: var(--ink-3);}.input:focus,
.select:focus,
.textarea:focus {outline: 0;border-color: var(--brand);box-shadow: 0 0 0 3px var(--brand-100);}.textarea {min-height: 7.5rem;resize: vertical;}.select {appearance: none;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%235B6675' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat: no-repeat;background-position: right 0.9rem center;background-size: 0.7rem;padding-right: 2.3rem;}.input[aria-invalid='true'],
.textarea[aria-invalid='true'],
.select[aria-invalid='true'] {border-color: #c0392b;box-shadow: 0 0 0 3px rgba(192, 57, 43, 0.14);}.field__err {font-size: 0.82rem;color: #c0392b;}.form-grid {display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 1rem;}.form-grid > .field--full {grid-column: 1 / -1;}@media (max-width: 639px) {.form-grid {grid-template-columns: minmax(0, 1fr);}}.checkbox {display: flex;gap: 0.7rem;align-items: flex-start;font-size: 0.9rem;line-height: 1.5;cursor: pointer;}.checkbox input {width: 1.2rem;height: 1.2rem;margin: 0.15rem 0 0;accent-color: var(--brand);flex: none;cursor: pointer;}.hp {position: absolute;left: -9999px;width: 1px;height: 1px;overflow: hidden;}.optcards {display: grid;grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));gap: 0.6rem;}.optcard {position: relative;display: flex;flex-direction: column;gap: 0.2rem;min-height: 64px;padding: 0.9rem 1rem;border: 1px solid var(--line-2);border-radius: var(--r-s);background: #fff;cursor: pointer;transition: border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);}.optcard:hover {border-color: var(--brand);}.optcard input {position: absolute;opacity: 0;pointer-events: none;}.optcard__t {font-weight: 640;color: var(--ink);font-size: 0.95rem;line-height: 1.25;}.optcard__d {font-size: 0.82rem;color: var(--ink-3);line-height: 1.4;}.optcard:has(input:checked) {border-color: var(--brand);background: var(--brand-050);box-shadow: inset 0 0 0 1px var(--brand);}.optcard:has(input:focus-visible) {outline: 3px solid var(--focus);outline-offset: 2px;}.wiz {position: fixed;inset: 0;z-index: 110;display: grid;place-items: end center;opacity: 0;visibility: hidden;transition: opacity var(--dur) var(--ease), visibility var(--dur);}.wiz.is-on {opacity: 1;visibility: visible;}.wiz__scrim {position: absolute;inset: 0;background: rgba(6, 33, 79, 0.6);border: 0;padding: 0;cursor: pointer;}.wiz__panel {position: relative;width: min(43rem, 100%);max-height: min(92vh, 54rem);overflow-y: auto;overscroll-behavior: contain;background: #fff;border-radius: var(--r-m) var(--r-m) 0 0;box-shadow: var(--sh-l);transform: translateY(24px);transition: transform var(--dur) var(--ease);}.wiz.is-on .wiz__panel {transform: none;}@media (min-width: 720px) {.wiz {place-items: center;}.wiz__panel {border-radius: var(--r-m);}}.wiz__head {position: sticky;top: 0;z-index: 2;background: #fff;border-bottom: 1px solid var(--line);padding: 1.1rem clamp(1.1rem, 3vw, 1.75rem);display: flex;align-items: center;justify-content: space-between;gap: 1rem;}.wiz__head h2 {margin: 0;font-size: 1.15rem;}.wiz__x {width: 2.5rem;height: 2.5rem;flex: none;border-radius: var(--r-s);border: 1px solid var(--line-2);background: none;cursor: pointer;display: grid;place-items: center;color: var(--ink);}.wiz__x:hover {background: var(--surface-2);}.wiz__x svg {width: 0.9rem;height: 0.9rem;}.wiz__steps {display: flex;gap: 0.3rem;padding: 0 clamp(1.1rem, 3vw, 1.75rem);margin-top: 1.1rem;}.wiz__step {flex: 1;height: 3px;border-radius: 2px;background: var(--line);}.wiz__step.is-done {background: var(--brand);}.wiz__body {padding: 1.35rem clamp(1.1rem, 3vw, 1.75rem) 0;}.wiz__pane {display: none;}.wiz__pane.is-on {display: block;}.wiz__legend {font-size: 1.05rem;font-weight: 660;color: var(--ink);margin: 0 0 0.3rem;}.wiz__hint {font-size: 0.9rem;color: var(--ink-3);margin: 0 0 1.15rem;}.wiz__foot {position: sticky;bottom: 0;background: #fff;border-top: 1px solid var(--line);padding: 1rem clamp(1.1rem, 3vw, 1.75rem);padding-bottom: max(1rem, env(safe-area-inset-bottom));margin-top: 1.5rem;display: flex;align-items: center;justify-content: space-between;gap: 0.75rem;}.wiz__back {background: none;border: 0;font: inherit;font-size: 0.92rem;font-weight: 600;color: var(--ink-3);cursor: pointer;min-height: 44px;padding: 0.5rem 0.25rem;}.wiz__back:hover {color: var(--ink);}.wiz__back[hidden] {visibility: hidden;display: block;}.wiz__ok {text-align: center;padding: 2rem 0 1rem;}.wiz__ok svg {width: 3rem;height: 3rem;color: var(--ok);margin: 0 auto 1rem;}.dropzone {display: block;border: 1.5px dashed var(--line-2);border-radius: var(--r-s);padding: 1.5rem 1.1rem;text-align: center;background: var(--surface-2);cursor: pointer;transition: border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);}.dropzone:hover,
.dropzone.is-over {border-color: var(--brand);background: var(--brand-050);}.dropzone input {position: absolute;opacity: 0;width: 1px;height: 1px;}.dropzone__t {font-weight: 620;color: var(--ink);display: block;}.dropzone__d {font-size: 0.85rem;color: var(--ink-3);display: block;margin-top: 0.25rem;}.filelist {list-style: none;margin: 0.75rem 0 0;padding: 0;display: grid;gap: 0.35rem;}.filelist li {display: flex;align-items: center;gap: 0.6rem;font-size: 0.88rem;padding: 0.45rem 0.6rem;background: var(--surface-2);border-radius: var(--r-s);}.filelist button {margin-left: auto;background: none;border: 0;cursor: pointer;color: var(--ink-3);font-size: 1.2rem;line-height: 1;min-width: 24px;min-height: 24px;}.filelist button:hover {color: #c0392b;}.sec--brand :is(.card, .tile, .note, .quote, .finder, .table-wrap, .optcard):not(.card--dark):not(.tile--dark),
.sec--dark :is(.card, .tile, .note, .quote, .finder, .table-wrap, .optcard):not(.card--dark):not(.tile--dark) {color: var(--ink-2);}.sec--brand :is(.card, .tile, .note, .quote, .finder, .table-wrap, .optcard):not(.card--dark):not(.tile--dark) :is(h1, h2, h3, h4, h5, strong, b, .spec__v, .stat__v, .optcard__t),
.sec--dark :is(.card, .tile, .note, .quote, .finder, .table-wrap, .optcard):not(.card--dark):not(.tile--dark) :is(h1, h2, h3, h4, h5, strong, b, .spec__v, .stat__v, .optcard__t) {color: var(--ink);}.sec--brand :is(.card, .tile, .note, .finder, .table-wrap):not(.card--dark):not(.tile--dark) :is(p, .spec__d, .stat__d, .optcard__d),
.sec--dark :is(.card, .tile, .note, .finder, .table-wrap):not(.card--dark):not(.tile--dark) :is(p, .spec__d, .stat__d, .optcard__d) {color: var(--ink-3);}.sec--brand :is(.card, .tile, .note, .finder):not(.card--dark):not(.tile--dark) :is(.card__foot, .tile__foot, .arrow-link, a:not(.btn)),
.sec--dark :is(.card, .tile, .note, .finder):not(.card--dark):not(.tile--dark) :is(.card__foot, .tile__foot, .arrow-link, a:not(.btn)) {color: var(--signal);}.sec--brand :is(.card, .tile, .note, .finder):not(.card--dark):not(.tile--dark) :is(.tile__n, .kicker, .mark),
.sec--dark :is(.card, .tile, .note, .finder):not(.card--dark):not(.tile--dark) :is(.tile__n, .kicker, .mark) {color: var(--brand);}.sec--brand :is(.card, .tile, .note, .finder):not(.card--dark):not(.tile--dark) :is(.spec__k, .stat__k),
.sec--dark :is(.card, .tile, .note, .finder):not(.card--dark):not(.tile--dark) :is(.spec__k, .stat__k) {color: var(--ink-3);}.sec--brand :is(.card, .tile, .note, .finder):not(.card--dark):not(.tile--dark) .checks li::before,
.sec--dark :is(.card, .tile, .note, .finder):not(.card--dark):not(.tile--dark) .checks li::before {border-color: var(--brand);}:is(.sec--brand, .sec--dark) > .wrap a:not(.btn):not(.card):not(.tile):not(.station):not(.nav__tile),
:is(.sec--brand, .sec--dark) > .wrap .arrow-link,
:is(.sec--brand, .sec--dark) > .wrap .card--dark .card__foot,
.phead a:not(.btn),
.hero a:not(.btn) {color: #fff;}:is(.sec--brand, .sec--dark) > .wrap a:not(.btn):hover,
.phead a:not(.btn):hover,
.hero a:not(.btn):hover {color: var(--on-brand);}[data-rv] {opacity: 0;transform: translate3d(0, 14px, 0);transition: opacity 0.5s var(--ease), transform 0.55s var(--ease);}[data-rv='1'] {transition-delay: 60ms;}[data-rv='2'] {transition-delay: 120ms;}[data-rv='3'],
[data-rv='4'],
[data-rv='5'],
[data-rv='6'],
[data-rv='7'],
[data-rv='8'],
[data-rv='9'] {transition-delay: 180ms;}[data-rv].is-in {opacity: 1;transform: none;}html.no-js [data-rv] {opacity: 1;transform: none;}@media (prefers-reduced-motion: reduce) {html {scroll-behavior: auto;}*,
*::before,
*::after {animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important;scroll-behavior: auto !important;}[data-rv] {opacity: 1;transform: none;}}.ftr ul a,
.ftr__legal a,
.ftr__bottom button,
.ftr__contact a,
.topbar a,
.crumb a,
.sitemap-list a,
.checks li > a {display: inline-block;min-height: 24px;padding-block: 0.2rem;}.wrap {padding-left: max(var(--gutter), env(safe-area-inset-left));padding-right: max(var(--gutter), env(safe-area-inset-right));}@media print {.hdr,
.topbar,
.dock,
.consent,
.ftr__bottom,
.wiz,
.chain__hint,
.hero__pause,
.hero__media {display: none !important;}body {background: #fff;color: #000;}.sec--brand,
.sec--dark,
.hero,
.phead {background: #fff !important;color: #000 !important;}.sec--brand h2,
.sec--dark h2,
.hero__title,
.phead__title {color: #000 !important;}a[href^='http']::after {content: ' (' attr(href) ')';font-size: 0.8em;}}

:root {
--ink: #1d1d1f;
--ink-2: #424245;
--ink-3: #6e6e73;
--line: #e5e5ea;
--line-2: #d2d2d7;
--surface-2: #f5f5f7;
--surface-3: #ebebf0;

--r-m: 18px;
--r-l: 24px;

--sh-s: none;

--sec: clamp(4.5rem, 9vw, 8.5rem);
--sec-tight: clamp(3rem, 6vw, 5rem);}



h1,
h2,
h3,
h4 {
font-stretch: 100%;
letter-spacing: -0.026em;}
h2 {
font-size: clamp(2rem, 1.2rem + 2.9vw, 3.4rem);
line-height: 1.06;}
h3 {
letter-spacing: -0.016em;}

.lead {
color: var(--ink-3);
font-size: clamp(1.1rem, 1rem + 0.45vw, 1.3rem);
line-height: 1.5;}


.kicker,
.mark {
text-transform: none;
letter-spacing: -0.005em;
font-size: clamp(0.98rem, 0.94rem + 0.2vw, 1.1rem);
font-weight: 600;
font-stretch: 100%;
margin-bottom: 0.65rem;}


.tag,
.tile__n,
.spec__k,
.finder__lbl,
table.data thead th,
.ftr h4 {
text-transform: none;
letter-spacing: 0;}
.tile__n,
.spec__k,
.finder__lbl {
font-size: 0.9rem;
font-weight: 560;}

.sec__head {
margin-bottom: clamp(2.5rem, 5vw, 4.5rem);}
.sec__headrow {
border-bottom: 0;
padding-bottom: 0;
margin-bottom: clamp(2.5rem, 5vw, 4.5rem);}



.topbar {
background: var(--surface-2);
color: var(--ink-3);
border-bottom: 0;}
.topbar a {
color: var(--ink-2);}

.hdr {
background: rgba(255, 255, 255, 0.82);
-webkit-backdrop-filter: saturate(180%) blur(20px);
backdrop-filter: saturate(180%) blur(20px);
border-bottom-color: rgba(0, 0, 0, 0.08);}
.hdr.is-stuck {
box-shadow: none;}



.btn {
border-radius: 980px;
box-shadow: none;
font-weight: 560;
min-height: 46px;
padding: 0.7rem 1.45rem;}
.btn:hover {
box-shadow: none;}
.btn--sm {
min-height: 38px;
padding: 0.45rem 1.05rem;}
.chip {
border-radius: 980px;}



.card,
.tile {
border: 0;
border-radius: var(--r-l);
background: var(--surface-2);}
.sec--paper-2 :is(.card, .tile) {
background: var(--surface);}
.card:hover,
.card--hover:hover {
box-shadow: none;
transform: none;}
.card__media,
.card__media--contain {
background: transparent;}
.card__media img {
border-radius: 0;}
.card__body {
padding: clamp(1.4rem, 2.4vw, 2rem);
gap: 0.6rem;}
.card__body p {
color: var(--ink-3);}
.card__badge {
background: rgba(255, 255, 255, 0.9);
color: var(--brand);
border-radius: 980px;
letter-spacing: 0;
font-size: 0.75rem;}


.card__media--contain img,
.station__img img,
.nav__thumb img {
mix-blend-mode: multiply;}
.card__media--contain img {
padding: 9%;}

.card__media--contain img,
.card__media--line img,
.phead__product img {
-webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent),
linear-gradient(180deg, transparent, #000 12%, #000 88%, transparent);
-webkit-mask-composite: source-in;
mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent),
linear-gradient(180deg, transparent, #000 12%, #000 88%, transparent);
mask-composite: intersect;}
.card:hover .card__media--contain img {
transform: scale(1.03);}

.card__media--line img {
object-fit: contain;
padding: 5% 4% 3%;
mix-blend-mode: multiply;

filter: brightness(1.025);}



.gal > *,
.fig,
.table-wrap,
.videocard {
border: 0;
border-radius: var(--r-l);}



.stats {
gap: clamp(1.5rem, 3vw, 2.5rem);
background: none;
border: 0;
border-radius: 0;
overflow: visible;}
.stat {
background: none;
padding: 1.1rem 0 0;
border-top: 1px solid var(--line-2);}
:is(.sec--brand, .sec--dark) .stats {
background: none;
border: 0;}
:is(.sec--brand, .sec--dark) .stat {
background: none;
border-top-color: rgba(255, 255, 255, 0.25);}
.stat__k {
text-transform: none;
letter-spacing: 0;
font-size: 0.9rem;
font-weight: 560;}
.stat__v {
font-stretch: 100%;
letter-spacing: -0.03em;}



.phead--product {
background: var(--surface);
color: var(--ink-2);
text-align: center;}
.phead--product .crumbs ol {
justify-content: center;}
.phead--product .crumb {
color: var(--ink-3);}
.phead--product a:not(.btn),
.phead--product .crumb a {
color: var(--ink-2);}
.phead--product a:not(.btn):hover {
color: var(--brand);}
.phead--product .phead__in {
max-width: 54rem;
margin-inline: auto;
padding-block: clamp(1.75rem, 4.5vw, 3.5rem) 0;}
.phead--product .kicker {
color: var(--brand);}
.phead--product .phead__title {
color: var(--ink);
font-size: clamp(2.3rem, 1.2rem + 4.2vw, 4.4rem);
line-height: 1.03;
letter-spacing: -0.034em;
margin: 0.25rem 0 1.1rem;}
.phead--product .phead__lead {
color: var(--ink-3);
font-size: clamp(1.1rem, 1rem + 0.5vw, 1.35rem);
max-width: 50ch;
margin-inline: auto;}
.phead--product .phead__cta {
justify-content: center;}
.phead--product .tel-link {
color: var(--ink);}
.phead--product :is(.btn--on-dark, .btn--onink) {
color: var(--ink);
border-color: var(--line-2);}
.phead__product {
margin: clamp(2.5rem, 5vw, 4rem) auto 0;
padding-bottom: clamp(3rem, 7vw, 6rem);}
.phead__product img {
width: auto;
max-width: min(100%, 1040px);
max-height: min(58vh, 560px);
margin-inline: auto;
mix-blend-mode: multiply;}



.points {
list-style: none;
margin: 0;
padding: 0;
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: clamp(2rem, 4vw, 3.25rem);}
@media (max-width: 1099px) {
.points {
grid-template-columns: repeat(2, minmax(0, 1fr));}}
@media (max-width: 599px) {
.points {
grid-template-columns: minmax(0, 1fr);}}
.point {
border-top: 1px solid var(--line-2);
padding-top: 1.4rem;}
.point__n {
display: block;
margin-bottom: 1rem;
font-size: 0.85rem;
font-weight: 600;
color: var(--brand);
font-variant-numeric: tabular-nums;}
.point__t {
font-size: clamp(1.15rem, 1.05rem + 0.35vw, 1.35rem);
margin: 0 0 0.55rem;
hyphens: auto;}
.point p {
margin: 0;
font-size: 0.98rem;
line-height: 1.55;
color: var(--ink-3);}


.sfilm-row {
margin-top: clamp(2.5rem, 5vw, 4rem);
padding-top: clamp(1.75rem, 3vw, 2.5rem);
border-top: 1px solid var(--line);
align-items: center;}
.sfilm-row h3 { margin: 0 0 0.5rem; }
.sfilm-row .muted { margin: 0; color: var(--ink-3); }

.sfilm-solo {
margin-top: clamp(2.5rem, 5vw, 4rem);
padding-top: clamp(1.75rem, 3vw, 2.5rem);
border-top: 1px solid var(--line);}
.sfilm-solo .sfilm { max-width: 1040px; margin-inline: auto; }
.sfilm {
position: relative;
margin: 0;
max-width: 760px;
margin-left: auto;
border-radius: var(--r-m);
overflow: hidden;
border: 1px solid var(--line);
background: var(--surface);}
.sec--brand .sfilm { border-color: rgba(255, 255, 255, 0.18); }
.sfilm.has-full .sfilm__v { cursor: zoom-in; }
.sfilm__full {
position: absolute; right: 0.75rem; bottom: 0.75rem;
display: inline-flex; align-items: center; gap: 0.45rem;
padding: 0.5rem 0.8rem; border: 0; border-radius: 999px;
background: rgba(11, 27, 52, 0.72); color: #fff;
font: inherit; font-size: 0.8rem; font-weight: 560; cursor: pointer;
backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
transition: background var(--dur-fast) var(--ease);}
.sfilm__full:hover, .sfilm__full:focus-visible { background: var(--brand); }
.sfilm__full svg { width: 0.95rem; height: 0.95rem; }
@media (max-width: 767px) { .sfilm__full span { display: none; } .sfilm__full { padding: 0.6rem; } }
.sfilm__v { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; background: var(--surface); }
@media (max-width: 767px) {
.sfilm { max-width: none; }
.sfilm__v { aspect-ratio: 1 / 1; }}


.prow { display: grid; gap: clamp(0.75rem, 1.6vw, 1.25rem); }
.prow--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.prow--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.prow--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.prow__f { margin: 0; }
.prow__f img {
display: block;
width: 100%;
height: auto;
aspect-ratio: var(--prow-r, 3 / 2);
object-fit: cover;
border-radius: var(--r-m);
background: var(--surface-2);}
.prow__f figcaption { margin-top: 0.6rem; font-size: 0.86rem; color: var(--ink-3); }
.sec--brand .prow__f figcaption { color: var(--on-brand-2); }
@media (max-width: 899px) {
.prow--3, .prow--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }}
@media (max-width: 559px) {
.prow--2, .prow--3, .prow--4 { grid-template-columns: minmax(0, 1fr); }}


.dl-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.6rem; }
.dl-list a {
display: flex;
align-items: center;
gap: 0.85rem;
padding: 0.85rem 1rem;
border: 1px solid var(--line);
border-radius: var(--r-s);
background: var(--surface);
color: var(--ink);
text-decoration: none;
transition: border-color var(--dur-fast) var(--ease);}
.dl-list a:hover { border-color: var(--brand); }
.dl-list a > svg { width: 1.1rem; height: 1.1rem; color: var(--brand); flex: none; }
.dl-list a > svg:last-child { margin-left: auto; color: var(--ink-3); }
.dl-list span { display: grid; gap: 0.1rem; }
.dl-list b { font-weight: 600; font-size: 0.95rem; }
.dl-list small { font-size: 0.8rem; color: var(--ink-3); }


.tile__ico {
display: inline-grid;
place-items: center;
width: 52px;
height: 52px;
margin-bottom: 1.25rem;
border-radius: var(--r-s);
background: var(--brand-050);
color: var(--brand);}
.tile .tile__ico svg { width: 30px; height: 30px; stroke-width: 1.2; }
.tile--dark .tile__ico { background: rgba(255, 255, 255, 0.1); color: #fff; }


.lead-pop{width:min(23rem,calc(100vw - 1.7rem));max-height:calc(100vh - 10rem);max-height:calc(100dvh - 10rem);overflow:auto;overscroll-behavior:contain;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 60px -12px rgba(6,33,79,.28);padding:1.15rem 1.15rem 1.25rem;position:relative;color:var(--ink)}
.lead-pop[hidden]{display:none}
.lead-pop__x{position:absolute;top:.55rem;right:.55rem;width:2.25rem;height:2.25rem;border:0;border-radius:50%;background:transparent;color:var(--ink-3);display:grid;place-items:center;cursor:pointer}
.lead-pop__x:hover{background:rgba(6,33,79,.06);color:var(--ink)}
.lead-pop__x svg{width:.85rem;height:.85rem}
.lead-pop__t{margin:0 2.25rem .9rem 0;font-size:.9rem;line-height:1.45;color:var(--ink-3)}
.lead-pop__t b{display:block;font-size:1.05rem;color:var(--ink);margin-bottom:.2rem}
.dock.is-open .dock__card,.dock.is-open .totop{transform:none;opacity:1}
.lf{display:grid;gap:.7rem;position:relative}
.lf__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.7rem}
@media (max-width:399px){.lead-pop .lf__row{grid-template-columns:1fr}}
@media (max-width:639px){.lf--wide .lf__row{grid-template-columns:1fr}}
.lf__f{display:grid;gap:.25rem;font-size:.82rem;font-weight:600;color:var(--ink)}
.lf__f input,.lf__f textarea{width:100%;font:inherit;font-size:16px;font-weight:400;color:var(--ink);background:#fff;border:1.5px solid var(--line-2,#c3ccd7);border-radius:10px;padding:.6rem .75rem;min-height:44px;transition:border-color .2s}
.lf__f textarea{min-height:5.25rem;resize:vertical}
.lf__f input:focus,.lf__f textarea:focus{outline:none;border-color:var(--lf-c);box-shadow:0 0 0 3px rgba(24,87,210,.15)}
.lf__c{display:flex;gap:.6rem;align-items:flex-start;font-size:.8rem;line-height:1.45;color:var(--ink-3);font-weight:400}
.lf__c input{width:18px;height:18px;margin:.1rem 0 0;flex:none;accent-color:var(--lf-c)}
.lf__c a{color:var(--lf-c)}
.lf__hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.lf__btn{justify-self:start;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;padding:.7rem 1.4rem;border:0;border-radius:999px;background:var(--lf-c);color:#fff;font:inherit;font-weight:620;font-size:.95rem;cursor:pointer;transition:opacity .2s,transform .2s}
.lf__btn:hover{transform:translateY(-1px)}
.lf__btn:disabled{opacity:.6;cursor:progress;transform:none}
.lf__btn svg{width:15px;height:15px}
.lead-pop .lf__btn{justify-self:stretch}
.lf__msg{margin:0;padding:.75rem .9rem;border-radius:10px;font-size:.9rem;line-height:1.45}
.lf__msg[hidden]{display:none}
.lf__msg--ok{background:#eef7f0;color:#1d5c32;border:1px solid #bfe0c9}
.lf__msg--err{background:#fdf0f0;color:#8a1f1f;border:1px solid #e7b7b7}
.lf.is-sent > :not(.lf__msg){display:none}
.lf,.lead-pop{--lf-c:var(--brand)}
@media print{.lead-pop{display:none!important}}



.consent--ga {
max-height: calc(100dvh - 2rem);
overflow: auto;
overscroll-behavior: contain;
visibility: hidden;
transition: transform var(--dur) var(--ease), visibility 0s linear var(--dur);}
.consent--ga.is-on {
visibility: visible;
transition: transform var(--dur) var(--ease), visibility 0s;}
.consent__t {
margin: 0 0 0.55rem;
font-size: 1.05rem;
outline: none;}
.consent__text p { margin-bottom: 0.6rem; color: var(--ink-2); }
.consent__text p:last-child { margin-bottom: 1rem; }
.consent__cats { list-style: none; margin: 0 0 1rem; padding: 0; display: grid; gap: 0.5rem; }
.consent__cats[hidden] { display: none; }
.consent__cat { border: 1px solid var(--line); border-radius: var(--r-s); padding: 0.75rem 0.9rem; }
.consent__cat p { margin: 0.3rem 0 0; font-size: 0.82rem; color: var(--ink-3); }
.consent__head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; font-weight: 600; font-size: 0.9rem; }
.consent__always { font-size: 0.78rem; font-weight: 500; color: var(--ink-3); }
.consent__head input[role='switch'] {
appearance: none;
-webkit-appearance: none;
flex: none;
position: relative;
width: 2.5rem;
height: 1.4rem;
margin: 0;
border-radius: var(--r-pill);
background: var(--line-2);
cursor: pointer;
transition: background var(--dur-fast) var(--ease);}
.consent__head input[role='switch']::after {
content: '';
position: absolute;
top: 0.2rem;
left: 0.2rem;
width: 1rem;
height: 1rem;
border-radius: 50%;
background: #fff;
transition: transform var(--dur-fast) var(--ease);}
.consent__head input[role='switch']:checked { background: var(--brand); }
.consent__head input[role='switch']:checked::after { transform: translateX(1.1rem); }
.consent__head input[role='switch']:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.consent__row .btn { min-width: 11rem; justify-content: center; }
.consent__row .btn[hidden] { display: none; }
.consent__more {
border: 0;
background: none;
padding: 0.4rem 0.2rem;
font: inherit;
font-size: 0.86rem;
font-weight: 600;
color: var(--signal);
text-decoration: underline;
text-underline-offset: 3px;
cursor: pointer;}
.consent__more[hidden] { display: none; }
.consent__links { display: flex; gap: 1.1rem; margin: 0.9rem 0 0 !important; font-size: 0.8rem !important; }
.consent__links a { color: var(--ink-3); }
@media (max-width: 559px) {
.consent__row .btn { flex: 1 1 100%; min-width: 0; }}


.burger,
.acc__sign,
.wiz__x,
.totop {
border-color: transparent;}