/*
 * Arcadium V20 — Unified stylesheet
 * Exactly ONE CSS file for every Arcadium page.
 * Direct Figma Design Context audit; page rules are namespaced where needed.
 */


/* =========================================================
   V20 MERGED SOURCE: Bootstrap 5
   ORIGINAL: assets/vendor/bootstrap.min.css
========================================================= */

/*!
 * Bootstrap v4.6.2 (https://getbootstrap.com/)
 * Copyright 2011-2022 The Bootstrap Authors
 * Copyright 2011-2022 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 
 
 
 
 */
 
 
 header{
     z-index: 9 !important;
 }
 
 
 
 :root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([class]){color:inherit;text-decoration:none}a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit;text-align:-webkit-match-parent}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:.875em;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:.875em;color:#6c757d}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-sm-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-md-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-md-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-md-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-md-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-md-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-lg-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-xl-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered{border:1px solid #dee2e6}.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover{background-color:#9fcdff}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover{background-color:#c8cbcf}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover{background-color:#b1dfbb}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover{background-color:#abdde5}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover{background-color:#ffe8a1}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover{background-color:#f1b0b7}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover{background-color:#ececf6}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover{background-color:#b9bbbe}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none}select.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#28a745}.valid-tooltip{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.form-row>.col>.valid-tooltip,.form-row>[class*=col-]>.valid-tooltip{left:5px}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem)!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated select.form-control:valid,select.form-control.is-valid{padding-right:3rem!important;background-position:right 1.5rem center}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem)!important;background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right .75rem center/8px 10px no-repeat,#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem) no-repeat}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label::before{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.form-row>.col>.invalid-tooltip,.form-row>[class*=col-]>.invalid-tooltip{left:5px}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem)!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated select.form-control:invalid,select.form-control.is-invalid{padding-right:3rem!important;background-position:right 1.5rem center}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem)!important;background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right .75rem center/8px 10px no-repeat,#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem) no-repeat}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label::before{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;-ms-flex-negative:0;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#0069d9;border-color:#0062cc;box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{color:#fff;background-color:#5a6268;border-color:#545b62;box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#218838;border-color:#1e7e34;box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#138496;border-color:#117a8b;box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{color:#212529;background-color:#e0a800;border-color:#d39e00;box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c82333;border-color:#bd2130;box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{color:#212529;background-color:#e2e6ea;border-color:#dae0e5;box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{color:#fff;background-color:#23272b;border-color:#1d2124;box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.width{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.width{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#e9ecef}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#adb5bd;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-toolbar{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label,.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label::after,.input-group:not(.has-validation)>.custom-select:not(:last-child),.input-group:not(.has-validation)>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>.custom-file:nth-last-child(n+3) .custom-file-label,.input-group.has-validation>.custom-file:nth-last-child(n+3) .custom-file-label::after,.input-group.has-validation>.custom-select:nth-last-child(n+3),.input-group.has-validation>.form-control:nth-last-child(n+3){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-append,.input-group-prepend{display:-ms-flexbox;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group.has-validation>.input-group-append:nth-last-child(n+3)>.btn,.input-group.has-validation>.input-group-append:nth-last-child(n+3)>.input-group-text,.input-group:not(.has-validation)>.input-group-append:not(:last-child)>.btn,.input-group:not(.has-validation)>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;z-index:1;display:block;min-height:1.5rem;padding-left:1.5rem;-webkit-print-color-adjust:exact;color-adjust:exact;print-color-adjust:exact}.custom-control-inline{display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label::before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label::before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before,.custom-control-input[disabled]~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label::before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fff;border:1px solid #adb5bd}.custom-control-label::after{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:50%/50% 50% no-repeat}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label::before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label::after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label::after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label::after{background-color:#fff;-webkit-transform:translateX(.75rem);transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right .75rem center/8px 10px no-repeat;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{position:relative;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(1.5em + .75rem + 2px);margin:0;overflow:hidden;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]::after{content:attr(data-browse)}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;overflow:hidden;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);padding:.375rem .75rem;line-height:1.5;color:#495057;content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label::before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label::before,.custom-file-label,.custom-select{transition:none}}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{margin-bottom:-1px;background-color:transparent;border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{isolation:isolate;border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{background:0 0;border:0;border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item,.nav-fill>.nav-link{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:.5rem 1rem}.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:50%/100% 100% no-repeat}.navbar-nav-scroll{max-height:75vh;overflow-y:auto}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.625rem;margin-bottom:-.75rem;margin-left:-.625rem;border-bottom:0}.card-header-pills{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem;border-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom,.card-img-top{-ms-flex-negative:0;flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{-ms-flex:1 0 0%;flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion{overflow-anchor:none}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:-ms-flexbox;display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;z-index:2;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;line-height:0;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:1s linear infinite progress-bar-stripes;animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.media{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.media-body{-ms-flex:1;flex:1}.list-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:transparent;border:0}a.close.disabled{pointer-events:none}.toast{-ms-flex-preferred-size:350px;flex-basis:350px;max-width:350px;font-size:.875rem;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-50px);transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal.modal-static .modal-dialog{-webkit-transform:scale(1.02);transform:scale(1.02)}.modal-dialog-scrollable{display:-ms-flexbox;display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{-ms-flex-negative:0;flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);height:-webkit-min-content;height:-moz-min-content;height:min-content;content:""}.modal-dialog-centered.modal-dialog-scrollable{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem 1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem);height:-webkit-min-content;height:-moz-min-content;height:min-content}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow::before,.bs-popover-top>.arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow::after,.bs-popover-top>.arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow::before,.bs-popover-right>.arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow::after,.bs-popover-right>.arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow::before,.bs-popover-bottom>.arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow::after,.bs-popover-bottom>.arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow::before,.bs-popover-left>.arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow::after,.bs-popover-left>.arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){-webkit-transform:translateX(100%);transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:50%/100% 100% no-repeat}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:content-box;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:-.125em;border:.25em solid currentcolor;border-right-color:transparent;border-radius:50%;-webkit-animation:.75s linear infinite spinner-border;animation:.75s linear infinite spinner-border}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:-.125em;background-color:currentcolor;border-radius:50%;opacity:0;-webkit-animation:.75s linear infinite spinner-grow;animation:.75s linear infinite spinner-grow}.spinner-grow-sm{width:1rem;height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{-webkit-animation-duration:1.5s;animation-duration:1.5s}}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;-ms-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports ((position:-webkit-sticky) or (position:sticky)){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.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}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:rgba(0,0,0,0)}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;word-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,::after,::before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px!important}.container{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}}
/*# sourceMappingURL=bootstrap.min.css.map */


/* =========================================================
   V20 MERGED SOURCE: Swiper
   ORIGINAL: assets/vendor/swiper-bundle.min.css
========================================================= */

/**
 * Swiper 11.2.10
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 28, 2025
 */

@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset,50%);width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next svg,.swiper-button-prev svg{width:100%;height:100%;object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset,10px);right:auto}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-lock{display:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,rgba(0,0,0,.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size,4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;touch-action:none;background:var(--swiper-scrollbar-bg-color,rgba(0,0,0,.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset,1%);bottom:var(--swiper-scrollbar-bottom,4px);top:var(--swiper-scrollbar-top,auto);z-index:50;height:var(--swiper-scrollbar-size,4px);width:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left,auto);right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);z-index:50;width:var(--swiper-scrollbar-size,4px);height:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color,rgba(0,0,0,.5));border-radius:var(--swiper-scrollbar-border-radius,10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active{pointer-events:auto}.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-cube .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}


/* =========================================================
   V20 MERGED SOURCE: Fancybox
   ORIGINAL: assets/vendor/fancybox.css
========================================================= */

:root{--f-spinner-width: 36px;--f-spinner-height: 36px;--f-spinner-color-1: rgba(0, 0, 0, 0.1);--f-spinner-color-2: rgba(17, 24, 28, 0.8);--f-spinner-stroke: 2.75}.f-spinner{margin:auto;padding:0;width:var(--f-spinner-width);height:var(--f-spinner-height)}.f-spinner svg{width:100%;height:100%;vertical-align:top;animation:f-spinner-rotate 2s linear infinite}.f-spinner svg *{stroke-width:var(--f-spinner-stroke);fill:none}.f-spinner svg *:first-child{stroke:var(--f-spinner-color-1)}.f-spinner svg *:last-child{stroke:var(--f-spinner-color-2);animation:f-spinner-dash 2s ease-in-out infinite}@keyframes f-spinner-rotate{100%{transform:rotate(360deg)}}@keyframes f-spinner-dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}}.f-throwOutUp{animation:var(--f-throw-out-duration, 0.175s) ease-out both f-throwOutUp}.f-throwOutDown{animation:var(--f-throw-out-duration, 0.175s) ease-out both f-throwOutDown}@keyframes f-throwOutUp{to{transform:translate3d(0, calc(var(--f-throw-out-distance, 150px) * -1), 0);opacity:0}}@keyframes f-throwOutDown{to{transform:translate3d(0, var(--f-throw-out-distance, 150px), 0);opacity:0}}.f-zoomInUp{animation:var(--f-transition-duration, 0.2s) ease .1s both f-zoomInUp}.f-zoomOutDown{animation:var(--f-transition-duration, 0.2s) ease both f-zoomOutDown}@keyframes f-zoomInUp{from{transform:scale(0.975) translate3d(0, 16px, 0);opacity:0}to{transform:scale(1) translate3d(0, 0, 0);opacity:1}}@keyframes f-zoomOutDown{to{transform:scale(0.975) translate3d(0, 16px, 0);opacity:0}}.f-fadeIn{animation:var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;z-index:2}.f-fadeOut{animation:var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;z-index:1}@keyframes f-fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes f-fadeOut{100%{opacity:0}}.f-fadeFastIn{animation:var(--f-transition-duration, 0.2s) ease-out both f-fadeFastIn;z-index:2}.f-fadeFastOut{animation:var(--f-transition-duration, 0.1s) ease-out both f-fadeFastOut;z-index:2}@keyframes f-fadeFastIn{0%{opacity:.75}100%{opacity:1}}@keyframes f-fadeFastOut{100%{opacity:0}}.f-fadeSlowIn{animation:var(--f-transition-duration, 0.5s) ease both f-fadeSlowIn;z-index:2}.f-fadeSlowOut{animation:var(--f-transition-duration, 0.5s) ease both f-fadeSlowOut;z-index:1}@keyframes f-fadeSlowIn{0%{opacity:0}100%{opacity:1}}@keyframes f-fadeSlowOut{100%{opacity:0}}.f-crossfadeIn{animation:var(--f-transition-duration, 0.2s) ease-out both f-crossfadeIn;z-index:2}.f-crossfadeOut{animation:calc(var(--f-transition-duration, 0.2s)*.5) linear .1s both f-crossfadeOut;z-index:1}@keyframes f-crossfadeIn{0%{opacity:0}100%{opacity:1}}@keyframes f-crossfadeOut{100%{opacity:0}}.f-slideIn.from-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInNext}.f-slideIn.from-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInPrev}.f-slideOut.to-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutNext}.f-slideOut.to-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutPrev}@keyframes f-slideInPrev{0%{transform:translateX(100%)}100%{transform:translate3d(0, 0, 0)}}@keyframes f-slideInNext{0%{transform:translateX(-100%)}100%{transform:translate3d(0, 0, 0)}}@keyframes f-slideOutNext{100%{transform:translateX(-100%)}}@keyframes f-slideOutPrev{100%{transform:translateX(100%)}}.f-classicIn.from-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInNext;z-index:2}.f-classicIn.from-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInPrev;z-index:2}.f-classicOut.to-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutNext;z-index:1}.f-classicOut.to-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutPrev;z-index:1}@keyframes f-classicInNext{0%{transform:translateX(-75px);opacity:0}100%{transform:translate3d(0, 0, 0);opacity:1}}@keyframes f-classicInPrev{0%{transform:translateX(75px);opacity:0}100%{transform:translate3d(0, 0, 0);opacity:1}}@keyframes f-classicOutNext{100%{transform:translateX(-75px);opacity:0}}@keyframes f-classicOutPrev{100%{transform:translateX(75px);opacity:0}}:root{--f-button-width: 40px;--f-button-height: 40px;--f-button-border: 0;--f-button-border-radius: 0;--f-button-color: #374151;--f-button-bg: #f8f8f8;--f-button-hover-bg: #e0e0e0;--f-button-active-bg: #d0d0d0;--f-button-shadow: none;--f-button-transition: all 0.15s ease;--f-button-transform: none;--f-button-svg-width: 20px;--f-button-svg-height: 20px;--f-button-svg-stroke-width: 1.5;--f-button-svg-fill: none;--f-button-svg-filter: none;--f-button-svg-disabled-opacity: 0.65}.f-button{display:flex;justify-content:center;align-items:center;box-sizing:content-box;position:relative;margin:0;padding:0;width:var(--f-button-width);height:var(--f-button-height);border:var(--f-button-border);border-radius:var(--f-button-border-radius);color:var(--f-button-color);background:var(--f-button-bg);box-shadow:var(--f-button-shadow);pointer-events:all;cursor:pointer;transition:var(--f-button-transition)}@media(hover: hover){.f-button:hover:not([disabled]){color:var(--f-button-hover-color);background-color:var(--f-button-hover-bg)}}.f-button:active:not([disabled]){background-color:var(--f-button-active-bg)}.f-button:focus:not(:focus-visible){outline:none}.f-button:focus-visible{outline:none;box-shadow:inset 0 0 0 var(--f-button-outline, 2px) var(--f-button-outline-color, var(--f-button-color))}.f-button svg{width:var(--f-button-svg-width);height:var(--f-button-svg-height);fill:var(--f-button-svg-fill);stroke:currentColor;stroke-width:var(--f-button-svg-stroke-width);stroke-linecap:round;stroke-linejoin:round;transition:opacity .15s ease;transform:var(--f-button-transform);filter:var(--f-button-svg-filter);pointer-events:none}.f-button[disabled]{cursor:default}.f-button[disabled] svg{opacity:var(--f-button-svg-disabled-opacity)}.f-carousel__nav .f-button.is-prev,.f-carousel__nav .f-button.is-next,.fancybox__nav .f-button.is-prev,.fancybox__nav .f-button.is-next{position:absolute;z-index:1}.is-horizontal .f-carousel__nav .f-button.is-prev,.is-horizontal .f-carousel__nav .f-button.is-next,.is-horizontal .fancybox__nav .f-button.is-prev,.is-horizontal .fancybox__nav .f-button.is-next{top:50%;transform:translateY(-50%)}.is-horizontal .f-carousel__nav .f-button.is-prev,.is-horizontal .fancybox__nav .f-button.is-prev{left:var(--f-button-prev-pos)}.is-horizontal .f-carousel__nav .f-button.is-next,.is-horizontal .fancybox__nav .f-button.is-next{right:var(--f-button-next-pos)}.is-horizontal.is-rtl .f-carousel__nav .f-button.is-prev,.is-horizontal.is-rtl .fancybox__nav .f-button.is-prev{left:auto;right:var(--f-button-next-pos)}.is-horizontal.is-rtl .f-carousel__nav .f-button.is-next,.is-horizontal.is-rtl .fancybox__nav .f-button.is-next{right:auto;left:var(--f-button-prev-pos)}.is-vertical .f-carousel__nav .f-button.is-prev,.is-vertical .f-carousel__nav .f-button.is-next,.is-vertical .fancybox__nav .f-button.is-prev,.is-vertical .fancybox__nav .f-button.is-next{top:auto;left:50%;transform:translateX(-50%)}.is-vertical .f-carousel__nav .f-button.is-prev,.is-vertical .fancybox__nav .f-button.is-prev{top:var(--f-button-next-pos)}.is-vertical .f-carousel__nav .f-button.is-next,.is-vertical .fancybox__nav .f-button.is-next{bottom:var(--f-button-next-pos)}.is-vertical .f-carousel__nav .f-button.is-prev svg,.is-vertical .f-carousel__nav .f-button.is-next svg,.is-vertical .fancybox__nav .f-button.is-prev svg,.is-vertical .fancybox__nav .f-button.is-next svg{transform:rotate(90deg)}.f-carousel__nav .f-button:disabled,.fancybox__nav .f-button:disabled{pointer-events:none}html.with-fancybox{width:auto;overflow:visible;scroll-behavior:auto}html.with-fancybox body{touch-action:none}html.with-fancybox body.hide-scrollbar{width:auto;margin-right:calc(var(--fancybox-body-margin, 0px) + var(--fancybox-scrollbar-compensate, 0px));overflow:hidden !important;overscroll-behavior-y:none}.fancybox__container{--fancybox-color: #dbdbdb;--fancybox-hover-color: #fff;--fancybox-bg: rgba(24, 24, 27, 0.98);--fancybox-slide-gap: 10px;--f-spinner-width: 50px;--f-spinner-height: 50px;--f-spinner-color-1: rgba(255, 255, 255, 0.1);--f-spinner-color-2: #bbb;--f-spinner-stroke: 3.65;position:fixed;top:0;left:0;bottom:0;right:0;direction:ltr;display:flex;flex-direction:column;box-sizing:border-box;margin:0;padding:0;color:#f8f8f8;-webkit-tap-highlight-color:rgba(0,0,0,0);overflow:visible;z-index:var(--fancybox-zIndex, 1050);outline:none;transform-origin:top left;-webkit-text-size-adjust:100%;-moz-text-size-adjust:none;-ms-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:contain}.fancybox__container *,.fancybox__container *::before,.fancybox__container *::after{box-sizing:inherit}.fancybox__container::backdrop{background-color:rgba(0,0,0,0)}.fancybox__backdrop{position:fixed;top:0;left:0;bottom:0;right:0;z-index:-1;background:var(--fancybox-bg);opacity:var(--fancybox-opacity, 1);will-change:opacity}.fancybox__carousel{position:relative;box-sizing:border-box;flex:1;min-height:0;z-index:10;overflow-y:visible;overflow-x:clip}.fancybox__viewport{width:100%;height:100%}.fancybox__viewport.is-draggable{cursor:move;cursor:grab}.fancybox__viewport.is-dragging{cursor:move;cursor:grabbing}.fancybox__track{display:flex;margin:0 auto;height:100%}.fancybox__slide{flex:0 0 auto;position:relative;display:flex;flex-direction:column;align-items:center;width:100%;height:100%;margin:0 var(--fancybox-slide-gap) 0 0;padding:4px;overflow:auto;overscroll-behavior:contain;transform:translate3d(0, 0, 0);backface-visibility:hidden}.fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn{padding-top:40px}.fancybox__slide.has-iframe,.fancybox__slide.has-video,.fancybox__slide.has-html5video{overflow:hidden}.fancybox__slide.has-image{overflow:hidden}.fancybox__slide.has-image.is-animating,.fancybox__slide.has-image.is-selected{overflow:visible}.fancybox__slide::before,.fancybox__slide::after{content:"";flex:0 0 0;margin:auto}.fancybox__backdrop:empty,.fancybox__viewport:empty,.fancybox__track:empty,.fancybox__slide:empty{display:block}.fancybox__content{align-self:center;display:flex;flex-direction:column;position:relative;margin:0;padding:2rem;max-width:100%;color:var(--fancybox-content-color, #374151);background:var(--fancybox-content-bg, #fff);cursor:default;border-radius:0;z-index:20}.is-loading .fancybox__content{opacity:0}.is-draggable .fancybox__content{cursor:move;cursor:grab}.can-zoom_in .fancybox__content{cursor:zoom-in}.can-zoom_out .fancybox__content{cursor:zoom-out}.is-dragging .fancybox__content{cursor:move;cursor:grabbing}.fancybox__content [data-selectable],.fancybox__content [contenteditable]{cursor:auto}.fancybox__slide.has-image>.fancybox__content{padding:0;background:rgba(0,0,0,0);min-height:1px;background-repeat:no-repeat;background-size:contain;background-position:center center;transition:none;transform:translate3d(0, 0, 0);backface-visibility:hidden}.fancybox__slide.has-image>.fancybox__content>picture>img{width:100%;height:auto;max-height:100%}.is-animating .fancybox__content,.is-dragging .fancybox__content{will-change:transform,width,height}.fancybox-image{margin:auto;display:block;width:100%;height:100%;min-height:0;object-fit:contain;user-select:none;filter:blur(0px)}.fancybox__caption{align-self:center;max-width:100%;flex-shrink:0;margin:0;padding:14px 0 4px 0;overflow-wrap:anywhere;line-height:1.375;color:var(--fancybox-color, currentColor);opacity:var(--fancybox-opacity, 1);cursor:auto;visibility:visible}.is-loading .fancybox__caption,.is-closing .fancybox__caption{opacity:0;visibility:hidden}.is-compact .fancybox__caption{padding-bottom:0}.f-button.is-close-btn{--f-button-svg-stroke-width: 2;position:absolute;top:0;right:8px;z-index:40}.fancybox__content>.f-button.is-close-btn{--f-button-width: 34px;--f-button-height: 34px;--f-button-border-radius: 4px;--f-button-color: var(--fancybox-color, #fff);--f-button-hover-color: var(--fancybox-color, #fff);--f-button-bg: transparent;--f-button-hover-bg: transparent;--f-button-active-bg: transparent;--f-button-svg-width: 22px;--f-button-svg-height: 22px;position:absolute;top:-38px;right:0;opacity:.75}.is-loading .fancybox__content>.f-button.is-close-btn{visibility:hidden}.is-zooming-out .fancybox__content>.f-button.is-close-btn{visibility:hidden}.fancybox__content>.f-button.is-close-btn:hover{opacity:1}.fancybox__footer{padding:0;margin:0;position:relative}.fancybox__footer .fancybox__caption{width:100%;padding:24px;opacity:var(--fancybox-opacity, 1);transition:all .25s ease}.is-compact .fancybox__footer{position:absolute;bottom:0;left:0;right:0;z-index:20;background:rgba(24,24,27,.5)}.is-compact .fancybox__footer .fancybox__caption{padding:12px}.is-compact .fancybox__content>.f-button.is-close-btn{--f-button-border-radius: 50%;--f-button-color: #fff;--f-button-hover-color: #fff;--f-button-outline-color: #000;--f-button-bg: rgba(0, 0, 0, 0.6);--f-button-active-bg: rgba(0, 0, 0, 0.6);--f-button-hover-bg: rgba(0, 0, 0, 0.6);--f-button-svg-width: 18px;--f-button-svg-height: 18px;--f-button-svg-filter: none;top:5px;right:5px}.fancybox__nav{--f-button-width: 50px;--f-button-height: 50px;--f-button-border: 0;--f-button-border-radius: 50%;--f-button-color: var(--fancybox-color);--f-button-hover-color: var(--fancybox-hover-color);--f-button-bg: transparent;--f-button-hover-bg: rgba(24, 24, 27, 0.3);--f-button-active-bg: rgba(24, 24, 27, 0.5);--f-button-shadow: none;--f-button-transition: all 0.15s ease;--f-button-transform: none;--f-button-svg-width: 26px;--f-button-svg-height: 26px;--f-button-svg-stroke-width: 2.5;--f-button-svg-fill: none;--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.5));--f-button-svg-disabled-opacity: 0.65;--f-button-next-pos: 1rem;--f-button-prev-pos: 1rem;opacity:var(--fancybox-opacity, 1)}.fancybox__nav .f-button:before{position:absolute;content:"";top:-30px;right:-20px;left:-20px;bottom:-30px;z-index:1}.is-idle .fancybox__nav{animation:.15s ease-out both f-fadeOut}.is-idle.is-compact .fancybox__footer{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__slide>.f-spinner{position:absolute;top:50%;left:50%;margin:var(--f-spinner-top, calc(var(--f-spinner-width) * -0.5)) 0 0 var(--f-spinner-left, calc(var(--f-spinner-height) * -0.5));z-index:30;cursor:pointer}.fancybox-protected{position:absolute;top:0;left:0;right:0;bottom:0;z-index:40;user-select:none}.fancybox-ghost{position:absolute;top:0;left:0;width:100%;height:100%;min-height:0;object-fit:contain;z-index:40;user-select:none;pointer-events:none}.fancybox-focus-guard{outline:none;opacity:0;position:fixed;pointer-events:none}.fancybox__container:not([aria-hidden]){opacity:0}.fancybox__container.is-animated[aria-hidden=false]>*:not(.fancybox__backdrop,.fancybox__carousel),.fancybox__container.is-animated[aria-hidden=false] .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-animated[aria-hidden=false] .fancybox__slide>*:not(.fancybox__content){animation:var(--f-interface-enter-duration, 0.25s) ease .1s backwards f-fadeIn}.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop{animation:var(--f-backdrop-enter-duration, 0.35s) ease backwards f-fadeIn}.fancybox__container.is-animated[aria-hidden=true]>*:not(.fancybox__backdrop,.fancybox__carousel),.fancybox__container.is-animated[aria-hidden=true] .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-animated[aria-hidden=true] .fancybox__slide>*:not(.fancybox__content){animation:var(--f-interface-exit-duration, 0.15s) ease forwards f-fadeOut}.fancybox__container.is-animated[aria-hidden=true] .fancybox__backdrop{animation:var(--f-backdrop-exit-duration, 0.35s) ease forwards f-fadeOut}.has-iframe .fancybox__content,.has-map .fancybox__content,.has-pdf .fancybox__content,.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{max-width:100%;flex-shrink:1;min-height:1px;overflow:visible}.has-iframe .fancybox__content,.has-map .fancybox__content,.has-pdf .fancybox__content{width:calc(100% - 120px);height:90%}.fancybox__container.is-compact .has-iframe .fancybox__content,.fancybox__container.is-compact .has-map .fancybox__content,.fancybox__container.is-compact .has-pdf .fancybox__content{width:100%;height:100%}.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{width:960px;height:540px;max-width:100%;max-height:100%}.has-map .fancybox__content,.has-pdf .fancybox__content,.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{padding:0;background:rgba(24,24,27,.9);color:#fff}.has-map .fancybox__content{background:#e5e3df}.fancybox__html5video,.fancybox__iframe{border:0;display:block;height:100%;width:100%;background:rgba(0,0,0,0)}.fancybox-placeholder{border:0 !important;clip:rect(1px, 1px, 1px, 1px) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;height:1px !important;margin:-1px !important;overflow:hidden !important;padding:0 !important;position:absolute !important;width:1px !important;white-space:nowrap !important}.f-carousel__thumbs{--f-thumb-width: 96px;--f-thumb-height: 72px;--f-thumb-outline: 0;--f-thumb-outline-color: #5eb0ef;--f-thumb-opacity: 1;--f-thumb-hover-opacity: 1;--f-thumb-selected-opacity: 1;--f-thumb-border-radius: 2px;--f-thumb-offset: 0px;--f-button-next-pos: 0;--f-button-prev-pos: 0}.f-carousel__thumbs.is-classic{--f-thumb-gap: 8px;--f-thumb-opacity: 0.5;--f-thumb-hover-opacity: 1;--f-thumb-selected-opacity: 1}.f-carousel__thumbs.is-modern{--f-thumb-gap: 4px;--f-thumb-extra-gap: 16px;--f-thumb-clip-width: 46px}.f-thumbs{position:relative;flex:0 0 auto;margin:0;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);user-select:none;perspective:1000px;transform:translateZ(0)}.f-thumbs .f-spinner{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:2px;background-image:linear-gradient(#ebeff2, #e2e8f0);z-index:-1}.f-thumbs .f-spinner svg{display:none}.f-thumbs.is-vertical{height:100%}.f-thumbs__viewport{width:100%;height:auto;overflow:hidden;transform:translate3d(0, 0, 0)}.f-thumbs__track{display:flex}.f-thumbs__slide{position:relative;flex:0 0 auto;box-sizing:content-box;display:flex;align-items:center;justify-content:center;padding:0;margin:0;width:var(--f-thumb-width);height:var(--f-thumb-height);overflow:visible;cursor:pointer}.f-thumbs__slide.is-loading img{opacity:0}.is-classic .f-thumbs__viewport{height:100%}.is-modern .f-thumbs__track{width:max-content}.is-modern .f-thumbs__track::before{content:"";position:absolute;top:0;bottom:0;left:calc((var(--f-thumb-clip-width, 0))*-0.5);width:calc(var(--width, 0)*1px + var(--f-thumb-clip-width, 0));cursor:pointer}.is-modern .f-thumbs__slide{width:var(--f-thumb-clip-width);transform:translate3d(calc(var(--shift, 0) * -1px), 0, 0);transition:none;pointer-events:none}.is-modern.is-resting .f-thumbs__slide{transition:transform .33s ease}.is-modern.is-resting .f-thumbs__slide__button{transition:clip-path .33s ease}.is-using-tab .is-modern .f-thumbs__slide:focus-within{filter:drop-shadow(-1px 0px 0px var(--f-thumb-outline-color)) drop-shadow(2px 0px 0px var(--f-thumb-outline-color)) drop-shadow(0px -1px 0px var(--f-thumb-outline-color)) drop-shadow(0px 2px 0px var(--f-thumb-outline-color))}.f-thumbs__slide__button{appearance:none;width:var(--f-thumb-width);height:100%;margin:0 -100% 0 -100%;padding:0;border:0;position:relative;border-radius:var(--f-thumb-border-radius);overflow:hidden;background:rgba(0,0,0,0);outline:none;cursor:pointer;pointer-events:auto;touch-action:manipulation;opacity:var(--f-thumb-opacity);transition:opacity .2s ease}.f-thumbs__slide__button:hover{opacity:var(--f-thumb-hover-opacity)}.f-thumbs__slide__button:focus:not(:focus-visible){outline:none}.f-thumbs__slide__button:focus-visible{outline:none;opacity:var(--f-thumb-selected-opacity)}.is-modern .f-thumbs__slide__button{--clip-path: inset( 0 calc( ((var(--f-thumb-width, 0) - var(--f-thumb-clip-width, 0))) * (1 - var(--progress, 0)) * 0.5 ) round var(--f-thumb-border-radius, 0) );clip-path:var(--clip-path)}.is-classic .is-nav-selected .f-thumbs__slide__button{opacity:var(--f-thumb-selected-opacity)}.is-classic .is-nav-selected .f-thumbs__slide__button::after{content:"";position:absolute;top:0;left:0;right:0;height:auto;bottom:0;border:var(--f-thumb-outline, 0) solid var(--f-thumb-outline-color, transparent);border-radius:var(--f-thumb-border-radius);animation:f-fadeIn .2s ease-out;z-index:10}.f-thumbs__slide__img{overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:var(--f-thumb-offset);box-sizing:border-box;pointer-events:none;object-fit:cover;border-radius:var(--f-thumb-border-radius)}.f-thumbs.is-horizontal .f-thumbs__track{padding:8px 0 12px 0}.f-thumbs.is-horizontal .f-thumbs__slide{margin:0 var(--f-thumb-gap) 0 0}.f-thumbs.is-vertical .f-thumbs__track{flex-wrap:wrap;padding:0 8px}.f-thumbs.is-vertical .f-thumbs__slide{margin:0 0 var(--f-thumb-gap) 0}.fancybox__thumbs{--f-thumb-width: 96px;--f-thumb-height: 72px;--f-thumb-border-radius: 2px;--f-thumb-outline: 2px;--f-thumb-outline-color: #ededed;position:relative;opacity:var(--fancybox-opacity, 1);transition:max-height .35s cubic-bezier(0.23, 1, 0.32, 1)}.fancybox__thumbs.is-classic{--f-thumb-gap: 8px;--f-thumb-opacity: 0.5;--f-thumb-hover-opacity: 1}.fancybox__thumbs.is-classic .f-spinner{background-image:linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05))}.fancybox__thumbs.is-modern{--f-thumb-gap: 4px;--f-thumb-extra-gap: 16px;--f-thumb-clip-width: 46px;--f-thumb-opacity: 1;--f-thumb-hover-opacity: 1}.fancybox__thumbs.is-modern .f-spinner{background-image:linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05))}.fancybox__thumbs.is-horizontal{padding:0 var(--f-thumb-gap)}.fancybox__thumbs.is-vertical{padding:var(--f-thumb-gap) 0}.is-compact .fancybox__thumbs{--f-thumb-width: 64px;--f-thumb-clip-width: 32px;--f-thumb-height: 48px;--f-thumb-extra-gap: 10px}.fancybox__thumbs.is-masked{max-height:0px !important}.is-closing .fancybox__thumbs{transition:none !important}.fancybox__toolbar{--f-progress-color: var(--fancybox-color, rgba(255, 255, 255, 0.94));--f-button-width: 46px;--f-button-height: 46px;--f-button-color: var(--fancybox-color);--f-button-hover-color: var(--fancybox-hover-color);--f-button-bg: rgba(24, 24, 27, 0.65);--f-button-hover-bg: rgba(70, 70, 73, 0.65);--f-button-active-bg: rgba(90, 90, 93, 0.65);--f-button-border-radius: 0;--f-button-svg-width: 24px;--f-button-svg-height: 24px;--f-button-svg-stroke-width: 1.5;--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.15));--f-button-svg-fill: none;--f-button-svg-disabled-opacity: 0.65;display:flex;flex-direction:row;justify-content:space-between;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;color:var(--fancybox-color, currentColor);opacity:var(--fancybox-opacity, 1);text-shadow:var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, 0.5));pointer-events:none;z-index:20}.fancybox__toolbar :focus-visible{z-index:1}.fancybox__toolbar.is-absolute,.is-compact .fancybox__toolbar{position:absolute;top:0;left:0;right:0}.is-idle .fancybox__toolbar{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__toolbar__column{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start}.fancybox__toolbar__column.is-left,.fancybox__toolbar__column.is-right{flex-grow:1;flex-basis:0}.fancybox__toolbar__column.is-right{display:flex;justify-content:flex-end;flex-wrap:nowrap}.fancybox__infobar{padding:0 5px;line-height:var(--f-button-height);text-align:center;font-size:17px;font-variant-numeric:tabular-nums;-webkit-font-smoothing:subpixel-antialiased;cursor:default;user-select:none}.fancybox__infobar span{padding:0 5px}.fancybox__infobar:not(:first-child):not(:last-child){background:var(--f-button-bg)}[data-fancybox-toggle-slideshow]{position:relative}[data-fancybox-toggle-slideshow] .f-progress{height:100%;opacity:.3}[data-fancybox-toggle-slideshow] svg g:first-child{display:flex}[data-fancybox-toggle-slideshow] svg g:last-child{display:none}.has-slideshow [data-fancybox-toggle-slideshow] svg g:first-child{display:none}.has-slideshow [data-fancybox-toggle-slideshow] svg g:last-child{display:flex}[data-fancybox-toggle-fullscreen] svg g:first-child{display:flex}[data-fancybox-toggle-fullscreen] svg g:last-child{display:none}:fullscreen [data-fancybox-toggle-fullscreen] svg g:first-child{display:none}:fullscreen [data-fancybox-toggle-fullscreen] svg g:last-child{display:flex}.f-progress{position:absolute;top:0;left:0;right:0;height:3px;transform:scaleX(0);transform-origin:0;transition-property:transform;transition-timing-function:linear;background:var(--f-progress-color, var(--f-carousel-theme-color, #0091ff));z-index:30;user-select:none;pointer-events:none}


/* =========================================================
   V20 MERGED SOURCE: Montserrat Arabic font declarations
   ORIGINAL: assets/fonts/fonts.css
========================================================= */

@font-face {
  font-family: 'Alexandria';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/font-01.woff2") format('woff2');
}
@font-face {
  font-family: 'Alexandria';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/font-02.woff2") format('woff2');
}
@font-face {
  font-family: 'Alexandria';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/font-03.woff2") format('woff2');
}
@font-face {
  font-family: 'Alexandria';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/font-04.woff2") format('woff2');
}
@font-face {
  font-family: 'Alexandria';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/font-05.woff2") format('woff2');
}
@font-face {
  font-family: 'Lalezar';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/font-06.woff2") format('woff2');
}

/* Montserrat Arabic was renamed to Alexandria by its author. These local files
   are the exact Arabic family used by the design, exposed under Figma's name. */
@font-face {
  font-family: 'Montserrat-Arabic';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/font-01.woff2") format('woff2');
}
@font-face {
  font-family: 'Montserrat-Arabic';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/font-02.woff2") format('woff2');
}
@font-face {
  font-family: 'Montserrat-Arabic';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/font-03.woff2") format('woff2');
}
@font-face {
  font-family: 'Montserrat-Arabic';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/font-04.woff2") format('woff2');
}
@font-face {
  font-family: 'Montserrat-Arabic';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/font-05.woff2") format('woff2');
}


/* =========================================================
   V20 MERGED SOURCE: Cairo font declarations
   ORIGINAL: assets/fonts/cairo.css
========================================================= */

@font-face {
  font-family: 'Cairo';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/cairo/cairo-1.woff2") format('woff2');
}
@font-face {
  font-family: 'Cairo';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/cairo/cairo-2.woff2") format('woff2');
}


/* =========================================================
   V20 MERGED SOURCE: Shared shell + Home
   ORIGINAL: assets/css/style.css
========================================================= */

:root {
  --page-bg: #130f28;
  --purple: #9209f2;
  --purple-dark: #470c85;
  --pink: #dd37ff;
  --cyan: #22dff3;
  --orange: #fa6c15;
  --ink: #2a154f;
  --white: #fdfdfc;
  --soft-white: #efe6ee;
  --body-font: 'Montserrat-Arabic', 'Alexandria', sans-serif;
  --display-font: 'Lalezar', sans-serif;
}

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

html { overflow-x: hidden; scroll-behavior: smooth; }

body {
  margin: 0;
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  background: var(--page-bg);
  color: var(--white);
  font-family: var(--body-font);
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

body.drawer-open { overflow: hidden; }

[dir="rtl"] { text-align: right; }
[dir="ltr"], :lang(en) { direction: ltr; text-align: left; }
main :is(h1, h2, h3, p, li),
.drawer-nav,
.dropdown-panel { direction: rtl; }

#main-content {
  position: relative;
  display: flow-root;
  overflow: visible;
  isolation: isolate;
  background: #130f28;
}

#main-content > section { position: relative; z-index: 1; }
.swiper { min-width: 0; max-width: 100%; touch-action: pan-y; }
.swiper-wrapper { min-width: 0; will-change: transform; }

img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
a:hover { color: inherit; text-decoration: none; }
button { font: inherit; }

.skip-link {
  position: fixed;
  z-index: 9999;
  top: 12px;
  right: 12px;
  padding: 10px 16px;
  background: #fff;
  color: #190e2c;
  transform: translateY(-160%);
}
.skip-link:focus { transform: translateY(0); }

.section-title {
  margin: 0;
  font-family: var(--display-font);
  font-size: 64px;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -.96px;
  text-align: center;
}

.section-shell { width: min(100% - 48px, 1248px); margin-inline: auto; }

/* Canonical content frame for standard WordPress pages.
   Kept independent from .section-shell because Home intentionally overrides
   .section-shell at tablet/mobile breakpoints. */
.arc-page-container {
  width: min(calc(100% - 48px), 1248px);
  margin-inline: auto;
  min-width: 0;
}

.standard-page-main {
  min-height: 60vh;
  padding-top: 160px;
  padding-bottom: 100px;
  background: #130f28;
}
.standard-page-content {
  min-width: 0;
  color: #fff;
}
@media (max-width: 991.98px) {
  .arc-page-container { width: calc(100% - 36px); }
  .standard-page-main { padding-top: 120px; padding-bottom: 80px; }
}
@media (max-width: 575.98px) {
  .arc-page-container { width: calc(100% - 28px); }
  .standard-page-main { padding-top: 96px; padding-bottom: 64px; }
}

/* Header and hero — Figma node 1:114 */
.hero {
  position: relative;
  width: 100%;
  max-width: 100%;
  height: 950px;
  overflow: hidden;
}

.hero-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center top;
}

.hero-artwork { position: absolute; inset: 0; display: block; width: 100%; height: 100%; }
.hero-artwork .hero-bg { display: block; }

/* The Figma hero copy is baked into the artwork; navigation and CTAs stay live. */
.hero--composite .site-header { z-index: 20; }
.hero--composite .hero-actions { z-index: 20; }

.site-header {
  position: absolute;
  z-index: 20;
  top: 24px;
  left: calc(50% + 10.5px);
  display: grid;
  grid-template-columns: 115px minmax(0, 1fr) 115px;
  align-items: center;
  direction: ltr;
  width: min(calc(100% - 48px), 1223px);
  height: 115px;
  transform: translateX(-50%);
}

.site-logo {
  grid-column: 3;
  grid-row: 1;
  justify-self: end;
  width: 115px;
  height: 115px;
  transition: transform .35s ease;
}
.site-logo:hover { transform: rotate(-3deg) scale(1.04); }
.site-logo img { width: 100%; height: 100%; object-fit: contain; }

.language-control {
  grid-column: 1;
  grid-row: 1;
  justify-self: start;
  display: flex;
  direction: ltr;
  align-items: center;
  gap: 4px;
  height: 42px;
  transition: all linear .4s;
}
.site-header.is-scrolled .language-control{
    transform: scale(.9);
}
.language-switch,
.language-current {
  display: grid;
  place-items: center;
  height: 42px;
  padding: 8px;
  font-family: 'Cairo', sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
}
.language-switch {
  width: 41px;
  color: #420c6f;
  transition: color .25s ease, transform .25s ease;
}
.language-switch:hover { color: var(--pink); transform: translateY(-2px); }
.language-current {
  border-radius: 0 16px 16px 0;
  background: #420c6f;
  color: #fff;
  white-space: nowrap;
}

.desktop-nav {
  grid-column: 2;
  grid-row: 1;
  justify-self: center;
  display: flex;
  direction: ltr;
  align-items: center;
  justify-content: center;
  gap: 20px;
  width: 100%;
  white-space: nowrap;
  transition: all linear .4s;
}
.site-header.is-scrolled .desktop-nav{
    transform: scale(.9);
}
.desktop-nav > a,
.nav-dropdown > button {
  position: relative;
  display: block;
  border: 0;
  padding: 0;
  background: transparent;
  color: #420c6f;
  font-family: var(--body-font);
  font-size: 18px;
  font-weight: 300;
  line-height: 34px;
  cursor: pointer;
  transition: color .25s ease, transform .25s ease;
}
.desktop-nav > a,
.nav-dropdown > button,
.button { direction: rtl; text-align: center; }
.desktop-nav > a::after,
.nav-dropdown > button::after {
  content: '';
  position: absolute;
  right: 0;
  bottom: -5px;
  width: 100%;
  height: 2px;
  background: var(--pink);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .25s ease;
}
.desktop-nav > a:hover,
.nav-dropdown > button:hover,
.desktop-nav > a.is-active { color: #420c6f; transform: translateY(-2px); }
.desktop-nav > a:hover::after,
.nav-dropdown > button:hover::after { transform: scaleX(1); }
.desktop-nav > a.is-active { font-size: 24px; font-weight: 400; }

.nav-dropdown { position: relative; direction: rtl; }
.dropdown-panel {
  position: absolute;
  z-index: 30;
  top: 42px;
  right: 50%;
  width: 270px;
  padding: 14px;
  border: 1px solid rgba(221, 55, 255, .55);
  border-radius: 14px;
  background: rgba(25, 14, 44, .96);
  box-shadow: 0 20px 45px rgba(0, 0, 0, .32);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(50%, 12px);
  transition: opacity .25s ease, transform .25s ease, visibility 0s linear .25s;
}
.dropdown-panel a {
  display: block;
  padding: 10px 12px;
  border-radius: 9px;
  color: #fff;
  font-size: 14px;
  transition: background .2s ease, padding .2s ease;
}
.dropdown-panel a:hover { padding-right: 18px; background: rgba(146, 9, 242, .35); }
.nav-dropdown:hover:not(.is-escape-closed) .dropdown-panel,
.nav-dropdown.is-open:not(.is-escape-closed) .dropdown-panel {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(50%, 0);
  transition-delay: 0s;
}

.menu-toggle { display: none; }

.hero-copy { position: absolute; z-index: 4; }
.hero-copy h1 { margin: 0; font-family: var(--display-font); font-size: 64px; font-weight: 400; line-height: 66px; }
.hero-copy p { margin: 0; font-size: 16px; font-weight: 400; line-height: 28px; color: rgba(253, 253, 252, .75); }
.hero-copy--right { top: 265px; left: calc(50% + 191px); width: 422px; text-align: right; }
.hero-copy--left { top: 280px; left: calc(50% - 644px); width: 342px; text-align: right; }

.hero-tag {
  position: absolute;
  z-index: -1;
  display: grid;
  place-items: center;
  width: 112px;
  height: 32px;
  font-family: var(--display-font);
  font-weight: 400;
  line-height: 1;
  transform: rotate(-3.43deg);
}
.hero-tag--orange { top: 27px; right: 174px; background: var(--orange); font-size: 24px; }
.hero-tag--cyan { top: -19px; left: 17px; background: var(--cyan); color: #190e2c; font-size: 20px; }

.hero-actions {
  position: absolute;
  z-index: 5;
  top: 682px;
  left: 50%;
  display: flex;
  direction: ltr;
  gap: 16px;
  width: 485px;
  height: 105px;
  padding: 28px 52px 29px;
  border: 0;
  border-radius: 17.901px;
  background: linear-gradient(.503661deg, rgba(34, 12, 50, .2) 2.0219%, rgba(166, 117, 254, .2) 98.136%);
  box-shadow: none;
  transform: translateX(-50%);
  backdrop-filter: none;
}
.hero-actions__divider { position: absolute; z-index: 2; top: 51.5px; left: 235px; width: 17px; height: 1px; border-radius: 1px; background: #9209f2; pointer-events: none; }
.button {
  display: grid;
  place-items: center;
  width: 183px;
  height: 48px;
  border: 1px solid var(--purple);
  border-radius: 38px;
  font-size: 20px;
  font-weight: 700;
  transition: background .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.button--solid { background: var(--purple); color: #fff; }
.button--outline { background: transparent; color: #fff; }
.button:hover { transform: translateY(-3px); border-color: var(--pink); box-shadow: 0 10px 28px rgba(146, 9, 242, .35); }
.button--outline:hover { background: var(--purple); }

/* Intro — Figma node 1:71 */
.intro-section {
  width: min(100% - 48px, 1248px);
  margin: -39px auto 0;
  padding: 134px 0 74px;
  overflow: hidden;
}

.feature-ribbons { display: flex; flex-direction: column; gap: 20px; width: 100%; overflow: hidden; }
.ribbon-marquee { position: relative; width: 100%; height: 44px; overflow: hidden; }
.ribbon-marquee--one { --ribbon-gap: 32px; }
.ribbon-marquee--two { width: min(100%, 800px); margin-inline: auto; --ribbon-gap: 26px; }
.ribbon-track,
.ribbon-group { display: flex; direction: ltr; align-items: center; gap: var(--ribbon-gap); width: max-content; }
.ribbon-track {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate3d(0, 0, 0);
  will-change: transform;
}
.ribbon-group { flex: 0 0 auto; }
.ribbon {
  display: grid;
  place-items: center;
  flex: 0 0 202.8px;
  height: 43.5px;
  border: 1.5px solid currentColor;
  border-radius: 23px;
  font-family: var(--display-font);
  font-size: 20px;
  line-height: 1;
  direction: rtl;
  transform: none;
}
.ribbon-marquee--two .ribbon { flex-basis: 172px; }
.ribbon-marquee--two .ribbon:nth-child(-n+2) { flex-basis: 173px; }
.ribbon-marquee--two .ribbon:first-child { margin-right: 6px; }
.ribbon:nth-child(even) { transform: none; }
.ribbon--outline-pink { color: var(--pink); }
.ribbon--deep { border-color: #5d0153; background: #5d0153; color: var(--pink); }
.ribbon--outline-cyan { color: var(--cyan); }
.ribbon--pink { border-color: var(--pink); background: var(--pink); color: #5e0154; }
.ribbon--outline-orange { color: var(--orange); }
.ribbon--violet { border-color: #852199; background: #852199; color: #f5e7f4; }

.intro-visual {
  width: min(100%, 760px);
  margin: 62px auto 0;
}
.intro-composite { width: 100%; height: auto; object-fit: contain; }
.intro-text {
  width: min(100%, 812px);
  margin: 28px auto 0;
  font-size: 24px;
  font-weight: 300;
  line-height: 1.6;
  text-align: center;
}

/* Games — Figma node 1:27 */
.games-section { padding: 40px 0 120px; }
.games-grid { margin-top: 42px; }
.games-grid > .cards-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px;   }
.game-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto minmax(78px, 1fr) 151px;
  min-width: 0;
  min-height: 326px;
  padding: 12px 8px 8px;
  border-radius: 12px;
  background: #fff;
  color: #190e2c;
  direction: rtl;
  transition: transform .3s ease, box-shadow .3s ease;
}
.game-card:hover, .game-card:focus-within, .game-card.is-hovered { transform: translateY(-8px); box-shadow: 0 18px 45px rgba(146, 9, 242, .28); }
.game-card:focus-visible { outline: 2px solid var(--cyan); outline-offset: 4px; }
.game-card__head { z-index: 3; display: flex; align-items: center; justify-content: space-between; min-height: 38px; padding-inline: 4px; }
.game-card__head h3 { margin: 0; color: #a302fa; font-family: var(--display-font); font-size: 32px; font-weight: 400; line-height: 1.2; transform-origin: right center; transition: opacity .25s ease, transform .35s cubic-bezier(.2,.75,.2,1); }
.game-card__head > .game-card__single-link { display: grid; place-items: center; flex: 0 0 20px; width: 20px; height: 20px; }
.game-card__head > .game-card__single-link .card-link-arrow { display: block; width: 20px; height: 20px; transition: transform .3s ease; }
.game-card > p {
  z-index: 3;
  grid-row: 2;
  grid-column: 1;
  align-self: end;
  width: min(100%, 190px);
  margin: 0 4px 12px 0;
  direction: rtl;
  font-size: 8px;
  line-height: 12px;
  text-align: right;
  transition: opacity .28s ease, transform .28s ease;
}
.game-card__media { z-index: 1; grid-row: 3; grid-column: 1; min-width: 0; overflow: hidden; border-radius: 13.461px; }
.game-card__photo { width: 100%; height: 100%; max-width: none; object-fit: cover; transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .35s ease; }
.game-card:hover .game-card__photo, .game-card:focus-within .game-card__photo, .game-card.is-hovered .game-card__photo { transform: scale(1.045); filter: saturate(1.08); }
.game-card:first-child .game-card__photo { object-position: center 43%; }
.game-card:last-child .game-card__photo { object-position: center 44%; }
.game-card__sticker {
  z-index: 2;
  grid-row: 3;
  grid-column: 1;
  align-self: start;
  justify-self: end;
  margin-left: 10px;
  object-fit: contain;
  transition: transform .38s cubic-bezier(.2,.8,.2,1), filter .3s ease;
}
.game-card__sticker--darts { width: 70px; height: 70px; transform: translateY(-43%) rotate(-12deg) scaleX(-1); }
.game-card__sticker--hockey { width: 82px; height: 82px; transform: translateY(-39%) rotate(-29.5deg); }
.game-card__sticker--boxing { width: 62px; height: 62px; margin-left: 23px; transform: translateY(-38%) rotate(-21.97deg); }
.game-hover-copy,
.basketball-copy {
  z-index: 3;
  grid-row: 2;
  grid-column: 1;
  align-self: center;
  padding-inline: 8px;
  color: #190e2c;
  font-family: var(--display-font);
  line-height: 1;
  direction: rtl;
  text-align: right;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .3s ease, transform .35s cubic-bezier(.2,.75,.2,1);
}
.game-hover-copy span { display: block; width: 100%; font-size: 48px; line-height: 1; text-align: right; white-space: nowrap; }
.basketball-copy span { display: block; width: 100%; font-size: 48px; line-height: 31.854px; text-align: right; white-space: nowrap; }
.basketball-copy strong { display: none; }
.game-card--basketball .game-card__sticker--ball { width: 64px; height: 64px; margin-left: 16px; opacity: 1; transform: translateY(-42%) rotate(-10deg); }
.game-card:hover > p, .game-card:focus-within > p, .game-card.is-hovered > p { opacity: 0; transform: translateY(-6px); }
.game-card:hover .game-hover-copy, .game-card:focus-within .game-hover-copy, .game-card.is-hovered .game-hover-copy { opacity: 1; transform: translateY(0); }
.game-card:hover .game-card__head h3, .game-card:focus-within .game-card__head h3, .game-card.is-hovered .game-card__head h3 { opacity: .18; transform: translateY(-4px) scale(.92); }
.game-card:hover .game-card__head > .game-card__single-link .card-link-arrow, .game-card:focus-within .game-card__head > .game-card__single-link .card-link-arrow, .game-card.is-hovered .game-card__head > .game-card__single-link .card-link-arrow { transform: translateX(-4px) rotate(-8deg); }
.game-card:hover .game-card__sticker--darts, .game-card:focus-within .game-card__sticker--darts, .game-card.is-hovered .game-card__sticker--darts { transform: translate(-8px, -145%) rotate(-12deg) scaleX(-1) scale(.76); filter: drop-shadow(0 9px 10px rgba(146,9,242,.25)); }
.game-card:hover .game-card__sticker--hockey, .game-card:focus-within .game-card__sticker--hockey, .game-card.is-hovered .game-card__sticker--hockey { transform: translate(-7px, -126%) rotate(-29.5deg) scale(.72); filter: drop-shadow(0 9px 10px rgba(146,9,242,.25)); }
.game-card:hover .game-card__sticker--boxing, .game-card:focus-within .game-card__sticker--boxing, .game-card.is-hovered .game-card__sticker--boxing { transform: translate(-8px, -157%) rotate(-21.97deg) scale(.82); filter: drop-shadow(0 9px 10px rgba(146,9,242,.25)); }
.game-card--basketball:hover .basketball-copy, .game-card--basketball:focus-within .basketball-copy, .game-card--basketball.is-hovered .basketball-copy { opacity: 1; transform: translateY(0); }
.game-card--basketball:hover .game-card__sticker--ball, .game-card--basketball:focus-within .game-card__sticker--ball, .game-card--basketball.is-hovered .game-card__sticker--ball { transform: translate(-8px, -145%) rotate(0) scale(.76); filter: drop-shadow(0 9px 10px rgba(146,9,242,.25)); }
.section-button {
  display: grid;
  place-items: center;
  width: 214px;
  height: 48px;
  margin: 70px auto 0;
  border: 1px solid #fff;
  border-radius: 38px;
  font-size: 20px;
  transition: color .25s ease, background .25s ease, transform .25s ease;
}
.section-button:hover { background: #fff; color: #190e2c; transform: translateY(-3px); }

/* Events — Figma node 1:267 */
.section-edge-glow { position: absolute; z-index: 0; display: block; max-width: none; pointer-events: none; user-select: none; }
.section-edge-glow::before { content: ''; position: absolute; top: 42.6px; left: 42.6px; width: 90px; height: 308px; border-radius: 50%; background: #190e2c; box-shadow: 0 0 42.6px #190e2c; }
.section-edge-glow--clients-left { top: 49px; left: 19px; width: 175.2px; height: 393.2px; }
.section-edge-glow--clients-right { top: 74px; right: 17px; width: 175.2px; height: 393.2px; }
.events-section > .section-shell,
.packages-section > :not(.section-edge-glow),
.clients-section > :not(.section-edge-glow) { position: relative; z-index: 1; }
.events-section { padding: 0 0 120px; background: transparent; }
.events-grid { margin-top: 42px; }
.events-grid > .cards-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; direction: ltr; }
.event-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto 198px;
  gap: 18px;
  min-width: 0;
  min-height: 387px;
  padding: 26px 10px 12px;
  border-radius: 13.55px;
  background: #fdfdfc;
  color: #190e2c;
  direction: rtl;
  transition: transform .3s ease, box-shadow .3s ease;
}
.event-card:hover, .event-card:focus-within, .event-card.is-hovered { transform: translateY(-8px); box-shadow: 0 18px 42px rgba(221, 55, 255, .24); }
.event-card:focus-visible { outline: 2px solid var(--cyan); outline-offset: 4px; }
.event-card__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding-inline: 16px 11px; }
.event-card__head h3 { flex: 1 1 auto; margin: 0; color: #121028; font-family: var(--display-font); font-size: 30px; font-weight: 400; line-height: 1.1; letter-spacing: -.45px; text-align: right; }
.event-card__head .event-card__single-link { display: grid; place-items: center; flex: 0 0 21px; width: 21px; height: 21px; margin-top: 1px; }
.event-card__head .event-card__single-link .card-link-arrow { display: block; width: 21px; height: 21px; }
.event-card > p { width: min(100%, 168px); margin: 0 16px 0 0; font-size: 10px; font-weight: 300; line-height: 1.55; letter-spacing: -.15px; }
.event-card > p,
.review-card__content > p,
.footer-brand p,
.faq-answer p { direction: rtl; text-align: right; }
.event-card__sticker { z-index: 2; grid-row: 3; grid-column: 1; align-self: start; justify-self: end; width: 63px; height: 63px; margin: -38px 17px 0 0; object-fit: contain; }
.event-card__media { z-index: 1; grid-row: 3; grid-column: 1; min-width: 0; overflow: hidden; border-radius: 9px; }
.event-card__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .5s ease; }
.event-card:hover .event-card__media img, .event-card:focus-within .event-card__media img, .event-card.is-hovered .event-card__media img { transform: scale(1.035); }

/* Packages — shared clean component (V36)
   Content uses normal document flow. No top/left positioning is used
   for titles, price, features, or CTA. Absolute positioning is reserved
   only for decorative spotlight/shine layers. */
.packages-section {
  width: min(100% - 48px, 1248px);
  margin-inline: auto;
  padding: 0 0 120px;
  background: transparent;
}
.packages-grid { width: min(100%, 1180px); margin: 42px auto 0; }
.packages-grid > .cards-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px; 
}

.package-card {
  --spot-x: 50%;
  --spot-y: 18%;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 585px;
  padding: 20px 20px 56px;
  overflow: visible;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 37.358px;
  background: rgba(49,27,87,.22);
  box-shadow: inset 0 4px 4px rgba(239,230,238,.35);
  color: #fff;
  direction: rtl;
  text-align: right;
  isolation: isolate;
  transition: transform .34s cubic-bezier(.2,.75,.2,1), border-color .3s ease, box-shadow .34s ease;
}
.package-card--featured {
  border-color: rgba(146,9,242,.32);
  background: rgba(34,19,60,.22);
  box-shadow: inset 0 3.558px 3.558px #470c85;
}

/* Decorative pointer light only. */
.package-card::before {
  content: '';
  position: absolute;
  z-index: 0;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle 190px at var(--spot-x) var(--spot-y), rgba(221,55,255,.18), rgba(146,9,242,.07) 42%, transparent 73%);
  opacity: 0;
  pointer-events: none;
  transition: opacity .28s ease;
}
.package-card::after {
  content: '';
  position: absolute;
  z-index: 0;
  top: 0;
  right: 44px;
  left: 44px;
  height: 1px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.68), transparent);
  opacity: .52;
  pointer-events: none;
}
.package-card > * { position: relative; z-index: 1; }

.package-card__intro {
  flex: 0 0 auto;
  min-height: 161px;
  padding: 24px;
  border-radius: 34.393px;
  color: #fff;
  text-align: right;
}
.package-card:not(.package-card--featured) .package-card__intro { padding-top: 36px; }
.package-card--featured .package-card__intro {
  overflow: hidden;
  background: linear-gradient(172.7016deg, #470c85 10.595%, #9209f2 99.189%);
}
.package-card__intro h3 {
  margin: 0 0 8px;
  font-family: var(--display-font);
  font-size: 35.579px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -.42px;
  text-align: right;
}
.package-card__intro p { margin: 0; font-size: 13.102px; text-align: right; }
.package-card__intro p:first-of-type { font-weight: 400; line-height: 1.609; }
.package-card__intro p:last-of-type { font-weight: 300; line-height: 1.32; }

/* The 34px gap is a real flow gap, not an absolute y coordinate. */
.package-card__from {
  display: block;
  margin: 34px 12px 0;
  font-size: 24.757px;
  font-weight: 300;
  line-height: 1.32;
  white-space: nowrap;
}
.package-card__price {
  display: block;
  margin: 0 12px;
  font-family: var(--display-font);
  font-size: 44.563px;
  font-weight: 400;
  line-height: 1.609;
  text-align: right;
  white-space: nowrap;
}
.package-card ul {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10.674px;
  margin: 8px 11px 0;
  padding: 0;
  list-style: none;
}
.package-card li {
  position: relative;
  min-height: 17.79px;
  padding-right: 24.906px;
  font-size: 14.232px;
  font-weight: 300;
  line-height: 17.79px;
  text-align: right;
  white-space: nowrap;
}
.package-card li::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 17.79px;
  height: 17.79px;
  background: url('../../../../uploads/2026/08/arcadium/figma/1-146/imgVuesaxLinearTickCircle.svg') center/contain no-repeat;
  transform-origin: center;
  transition: transform .28s ease, filter .28s ease;
}
.package-card__button {
  display: grid;
  place-items: center;
  width: calc(100% - 22px);
  min-height: 52.802px;
  margin: auto 11px 0;
  padding: 10px 18px;
  border: 1px solid #fff;
  border-radius: 37.686px;
  background: transparent;
  color: #fff;
  font-size: 23.802px;
  line-height: 1.2;
  text-align: center;
  transition: color .25s ease, background-color .25s ease, border-color .25s ease, transform .25s ease, box-shadow .3s ease;
}
.package-card--featured .package-card__button { border-color: var(--purple); background: var(--purple); }

/* Featured-panel shine stays decorative and never participates in layout. */
.package-card--featured .package-card__intro::after {
  content: '';
  position: absolute;
  z-index: 0;
  top: -75%;
  left: -45%;
  width: 90%;
  height: 220%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.13), transparent);
  transform: rotate(18deg) translateX(-120%);
  pointer-events: none;
  transition: transform .75s cubic-bezier(.2,.75,.2,1);
}
.package-card--featured .package-card__intro > * { position: relative; z-index: 1; }

@media (hover:hover) and (pointer:fine) {
  .package-card:hover {
    transform: translateY(-8px);
    border-color: rgba(221,55,255,.68);
    box-shadow: inset 0 4px 4px rgba(239,230,238,.35), 0 22px 52px rgba(0,0,0,.23), 0 0 38px rgba(146,9,242,.16);
  }
  .package-card--featured:hover {
    border-color: rgba(177,44,204,.82);
    box-shadow: inset 0 3.558px 3.558px #470c85, 0 24px 56px rgba(0,0,0,.25), 0 0 46px rgba(146,9,242,.22);
  }
  .package-card:hover::before { opacity: 1; }
  .package-card:hover li::before { transform: translateX(-2px) scale(1.08); filter: drop-shadow(0 0 6px rgba(221,55,255,.52)); }
  .package-card--featured:hover .package-card__intro::after { transform: rotate(18deg) translateX(235%); }
}
.package-card:focus-within, .package-card.is-active {
  border-color: rgba(221,55,255,.68);
  box-shadow: inset 0 4px 4px rgba(239,230,238,.35), 0 18px 44px rgba(0,0,0,.22), 0 0 34px rgba(146,9,242,.14);
}
.package-card:focus-within::before, .package-card.is-active::before { opacity: 1; }
.package-card:focus-within li::before, .package-card.is-active li::before { transform: translateX(-2px) scale(1.08); filter: drop-shadow(0 0 6px rgba(221,55,255,.52)); }
.package-card--featured:focus-within .package-card__intro::after, .package-card--featured.is-active .package-card__intro::after { transform: rotate(18deg) translateX(235%); }
.package-card:focus-visible { outline: 2px solid #dd37ff; outline-offset: 5px; }
.package-card__button:focus-visible { outline: 2px solid var(--cyan); outline-offset: 4px; }
.package-card__button:hover, .package-card__button:focus-visible {
  transform: translateY(-3px);
  border-color: var(--pink);
  background: var(--pink);
  color: #2a154f;
}

/* Home and Packages intentionally share the same card geometry. */
@media (min-width: 1200px) {
  .package-card { min-height: 585px; }
}

@media (max-width: 991.98px) {
  .package-card { min-height: 560px; padding: 18px 18px 22px; }
  .package-card__intro { min-height: 154px; padding: 22px; }
  .package-card:not(.package-card--featured) .package-card__intro { padding-top: 31px; }
  .package-card__intro h3 { font-size: 32px; }
  .package-card__from { margin-top: 30px; font-size: 22px; }
  .package-card__price { font-size: 40px; line-height: 1.25; }
  .package-card li { font-size: 13px; line-height: 1.45; white-space: normal; }
  .package-card__button { min-height: 48px; font-size: 20px; }
  .packages-grid > .cards-grid .package-card:last-child { grid-column: 1 / -1; width: min(100%,350px); justify-self: center; }
}

@media (max-width: 575.98px) {
  .package-card { min-height: 540px; padding: 14px 14px 18px; border-radius: 30px; }
  .package-card__intro { min-height: 154px; padding: 22px 18px; border-radius: 26px; }
  .package-card:not(.package-card--featured) .package-card__intro { padding-top: 29px; }
  .package-card__intro h3 { margin-bottom: 7px; font-size: 31px; letter-spacing: 0; }
  .package-card__intro p { font-size: 13px; }
  .package-card__from { margin: 30px 10px 0; font-size: 22px; }
  .package-card__price { margin-inline: 10px; font-size: 40px; line-height: 1.18; }
  .package-card ul { gap: 8px; margin: 14px 9px 0; }
  .package-card li { min-height: 20px; padding-right: 23px; font-size: 13px; line-height: 20px; }
  .package-card__button { width: calc(100% - 18px); min-height: 48px; margin-inline: 9px; font-size: 20px; }
  .packages-grid > .cards-grid .package-card:last-child { grid-column: auto; width: 100%; }
}

@media (max-width: 359.98px) {
  .package-card { min-height: 525px; padding-inline: 12px; }
  .package-card__intro { min-height: 148px; padding: 20px 16px; }
  .package-card:not(.package-card--featured) .package-card__intro { padding-top: 27px; }
  .package-card__intro h3 { font-size: 29px; }
  .package-card__from { margin-top: 26px; font-size: 21px; }
  .package-card__price { font-size: 38px; }
  .package-card li { padding-right: 21px; font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .package-card, .package-card::before, .package-card__intro::after, .package-card li::before, .package-card__button { transition: none !important; }
  .package-card::before, .package-card__intro::after { display: none !important; }
}

/* Pages that need a physical right-side browser scrollbar while Arabic content stays RTL. */
html.packages-scroll-right,
html.articles-scroll-right,
html.privacy-scroll-right {
  direction: ltr !important;
  overflow-x: clip !important;
  overflow-y: auto;
  scrollbar-gutter: stable;
}
html.packages-scroll-right > body.packages-page,
html.articles-scroll-right > body.articles-page,
html.privacy-scroll-right > body.privacy-page {
  direction: rtl !important;
  text-align: right;
  overflow-x: clip !important;
}

/* Trusted clients — Figma node 1:412 */
.clients-section { padding: 0 0 54px; }
.clients-row { position: relative; width: min(100% - 48px, 1176px); margin: 34px auto 0; }
.clients-slider { position: relative; z-index: 1; width: 100%; overflow: hidden; direction: ltr; padding-top: 32px; padding-bottom: 48px; margin-top: -32px; margin-bottom: -48px; }
.clients-slider .swiper-wrapper { direction: ltr; }
.client-slide { position: relative; width: 281.267px; }
.client-card { position: relative; width: 100%; aspect-ratio: 281.267 / 101.867; padding: 0; overflow: hidden; border-radius: 23.769px; background: #fff; transition: transform .35s cubic-bezier(.2,.75,.2,1), box-shadow .3s ease; }
.client-card:hover, .client-card:focus-within { transform: translateY(-6px); box-shadow: 0 18px 42px rgba(146, 9, 242, .26); }
.client-card img { position: absolute; max-width: none; object-fit: fill; }
.client-card--event img { top: -33.89%; left: 15.09%; width: 70.44%; height: 194.44%; }
.client-card--jeddah img { top: -64.11%; left: 5.84%; width: 91.94%; height: 254%; }
.client-card--rally img { top: -10.67%; left: 24.42%; width: 51.31%; height: 141.89%; }
.client-card--arabic img { top: -57.37%; left: 12.51%; width: 75.25%; height: 207.58%; }
.client-separators { position: absolute; z-index: 4; inset: 0; pointer-events: none; }
.client-separator { position: absolute; top: 50%; display: block; width: 53.656px; height: 53.656px; overflow: hidden; border-radius: 50%; background: #121028; box-shadow: 0 0 0 5px #121028; transform: translate(-50%, -50%); }
.client-separator img { width: 100%; height: 100%; max-width: none; object-fit: cover; }
.client-separator--one { left: 24.645%; transform: translate(-50%, -50%) rotate(-22.77deg); }
.client-separator--two { left: 50.071%; transform: translate(-50%, -50%) rotate(-12.08deg); }
.client-separator--three { left: 75.411%; transform: translate(-50%, -50%) rotate(10.21deg) scaleY(-1); }

/* Works — Figma node 1:438 */
.works-section { display: grid; grid-template-columns: 292fr 297fr 294fr 297fr;   gap: 20px; width: min(100% - 48px, 1248px); margin: 120px auto 0; }
.works-column { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.work-tile, .work-photo { flex: 0 0 auto; overflow: hidden; border-radius: 16px; }
.work-tile { display: flex; flex-direction: column; direction: rtl; padding: 26px 14px 16px; background: var(--ink); color: var(--pink); text-align: center; transition: background .35s ease, color .35s ease, transform .35s ease, box-shadow .35s ease; }
.work-tile:hover, .work-tile:focus-visible { background: var(--purple); color: #fff; transform: none; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08); outline: 0; }
.work-tile p { margin: 0; font-family: var(--display-font); font-size: 46px; font-weight: 400; line-height: 1.05; }
.work-tile--dark { padding-top: 19px; }
.work-tile__link { display: grid; place-items: center; align-self: flex-end; width: 36px; height: 36px; margin-top: auto; border-radius: 50%; background: #fff; opacity: 0; transform: translateY(12px) scale(.72); transition: opacity .25s ease, transform .3s cubic-bezier(.2,.8,.2,1); }
.work-tile__arrow { display: block; width: 20px; height: 20px; object-fit: contain; }
.work-tile:hover .work-tile__link, .work-tile:focus-within .work-tile__link, .work-tile:focus-visible .work-tile__link { opacity: 1; transform: translateY(-2px) rotate(-8deg) scale(1); }
.work-tile__link:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.work-tile--purple { background: var(--purple); color: #fff; }
.work-tile--dark { background: var(--ink); color: var(--pink); }
.works-column--one .work-tile { height: 402px; }
.works-column--one .work-photo { height: 268px; }
.works-column--two .work-photo { height: 440px; }
.works-column--two .work-tile { height: 228px; }
.works-column--three .work-tile { height: 254px; }
.works-column--three .work-photo { height: 413px; }
.works-column--four .work-photo { height: 382px; }
.works-column--four .work-tile { height: 422px; }
.work-photo img { width: 100%; height: 100%; max-width: none; object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.work-photo:hover img { transform: scale(1.055); }
.work-photo--wide-crop img { object-position: 78% center; }
.works-column--four .work-photo img { object-position: center; }

/* Reviews — Figma node 1:216 */
.reviews-section { width: min(100% - 48px, 1248px); margin: 120px auto 0; padding: 0 0 48px; background: transparent; }
.reviews-slider { width: min(100%, 938px); margin: 58px auto 0; overflow: hidden; direction: ltr; }
.review-slide { display: flex; align-items: flex-start; justify-content: center; width: 306px; min-height: 402px; }
.review-card {
  display: flex;
  flex-direction: column;
  width: calc(100% - 19px);
  min-height: 356px;
  margin-top: 23px;
  padding-top: 20px;
  overflow: hidden;
  border-radius: 24px;
  background: #f9f9f9;
  color: #190e2c;
  direction: rtl;
  opacity: .6;
  transition: margin .45s ease, min-height .45s ease, padding .45s ease, opacity .35s ease, box-shadow .35s ease;
}
.review-slide.swiper-slide-active .review-card {
  width: 100%;
  min-height: 402px;
  margin-top: 0;
  padding-top: 32px;
  opacity: 1;
  box-shadow: 0 18px 55px rgba(7, 2, 20, .22);
}
.review-card:hover { opacity: 1; }
.review-card__content { box-sizing: border-box; width: 100%; padding: 0 20px; }
.review-card__person { display: flex; direction: ltr; justify-content: space-between; align-items: center; width: 100%; min-height: 33px; }
.review-card__person strong { display: block; width: 74px; font-size: 12px; font-weight: 300; line-height: 1.6; text-align: center; direction: rtl; }
.avatar { width: 33px; height: 33px; border-radius: 29.267px; background: #121028; object-fit: cover; }
.review-card__content > p { width: 100%; min-height: 103px; margin: 12px 0 0; font-size: 16px; font-weight: 300; line-height: 1.6; }
.review-card__meta { display: flex; direction: ltr; align-items: center; justify-content: space-between; width: 100%; min-height: 62px; }
.review-slide.swiper-slide-active .review-card__meta { margin-top: -17px; }
.review-art { width: 77px; height: 62px; padding: 0 7.5px; object-fit: contain; transform: scaleX(-1); }
.stars { display: flex; direction: ltr; gap: 2px; margin-top: 3px; }
.rating-star { display: block; width: 12px; height: 12px; object-fit: contain; }
.rating-star.is-empty { opacity: .2; }
.review-card__photo { width: 100%; height: 122px; margin-top: auto; overflow: hidden; transition: height .45s ease; }
.review-slide.swiper-slide-active .review-card__photo { height: 165px; }
.review-card__photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.review-card:hover .review-card__photo img { transform: scale(1.04); }

/* FAQ — Figma node 1:392 */
.faq-section { width: min(100% - 48px, 1248px); margin: 120px auto 0; padding-bottom: 120px; }
.faq-list { display: flex; flex-direction: column; gap: 40px; margin-top: 40px; }
.faq-item { width: 100%; }
.faq-item > button { display: flex; direction: rtl; align-items: center; justify-content: space-between; width: 100%; min-height: 88px; padding: 24px 24px 24px 48px; border: 1px solid transparent; border-radius: 12px; background: rgba(255, 255, 255, .1); color: #fff; font-size: 28px; line-height: 1.2; text-align: right; cursor: pointer; transition: background .3s ease, border-color .3s ease, transform .25s ease; }
.faq-item > button > span:first-child { direction: rtl; text-align: right; }
.faq-item > button:hover { border-color: rgba(221, 55, 255, .6); transform: translateY(-2px); }
.faq-item.is-open > button { min-height: 104px; padding: 32px 24px 32px 48px; border-color: #efe6ee; background: linear-gradient(178.7144deg, #470c85 10.595%, #9209f2 99.189%); }
.faq-icon { position: relative; display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border: 1px solid #fff; border-radius: 50%; background: transparent; }
.faq-icon::before, .faq-icon::after { content: ''; position: absolute; border-radius: 2px; background: #fff; }
.faq-icon::before { width: 16.5px; height: 1.5px; }
.faq-icon::after { width: 1.5px; height: 16.5px; }
.faq-item.is-open .faq-icon { background: #fff; }
.faq-item.is-open .faq-icon::before { background: #6f0bbf; }
.faq-item.is-open .faq-icon::after { display: none; }
.faq-answer { width: min(100%, 865px); max-height: 0; margin-right: 0; margin-left: auto; overflow: hidden; opacity: 0; text-align: right; transition: max-height .35s ease, opacity .3s ease, margin .35s ease; }
.faq-item.is-open .faq-answer { max-height: 82px; margin-top: 20px; opacity: 1; }
.faq-answer p { margin: 0; color: #e7d9e5; font-size: 20px; line-height: 1.45; }

/* CTA — exact screenshot export of Figma node 1:307 */
.cta-section { width: min(100% - 48px, 1221px); aspect-ratio: 1221 / 350; margin: 0 auto; overflow: hidden; border-radius: 42px; background: #fff; }
.cta-full-link { display: block; width: 100%; height: 100%; }
.cta-composite { width: 100%; height: 100%; max-width: none; object-fit: contain; }

/* Footer — Figma node 1:319 */
.site-footer { margin-top: 120px; border-top: 1px solid #b12ccc; background: linear-gradient(180deg, #130f28 0%, rgba(75,24,96,.43) 55%, rgba(133,33,153,.37) 100%); }
.footer-inner { display: grid; grid-template-columns: minmax(280px, 342px) minmax(120px, 145px) minmax(180px, 232px) minmax(190px, 1fr); direction: rtl; gap: 54px clamp(36px, 7.6vw, 110px); width: min(100% - 48px, 1248px); margin: 0 auto; padding: 52px 0 36px; border-bottom: 1px solid rgba(239,230,238,.68); }
.footer-logo { display: block; width: 153px; height: 128px; }
.footer-logo img { width: 100%; height: 100%; object-fit: contain; }
.footer-brand p { width: 100%; margin: 24px 0 0; font-size: 16px; line-height: 1.55; letter-spacing: .16px; }
.footer-links h2, .footer-policies h2, .footer-contact h2 { margin: 0 0 16px; font-size: 24px; font-weight: 400; line-height: 1.25; }
.footer-links a { display: block; font-size: 20px; font-weight: 300; line-height: 1.9; transition: color .2s ease, transform .2s ease; }
.footer-links a:hover, .footer-policies a:hover { color: var(--pink); transform: translateX(-4px); }
.footer-policies, .footer-contact { font-family: 'Cairo', sans-serif; }
.footer-policies h2, .footer-contact h2 { font-weight: 700; }
.footer-policies a { display: block; font-size: 20px; font-weight: 400; line-height: 1.9; transition: color .2s ease, transform .2s ease; }
.footer-contact .contact-row { display: flex; direction: ltr; align-items: center; justify-content: flex-start; gap: 8px; width: max-content; min-height: 32px; margin: 0 0 16px auto; font-size: 15px; line-height: 15px; text-align: right; }
.footer-contact .contact-row:first-of-type { width: 159px; }
.footer-contact .contact-row:nth-of-type(2) { width: 198px; }
.contact-row span { flex: 0 0 auto; text-align: center; white-space: nowrap; }
.footer-contact .contact-row:first-of-type span { width: 119px; }
.footer-contact .contact-row:nth-of-type(2) span { width: 158px; }
.contact-row i { display: grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; border: 1px solid #fff; border-radius: 50%; font-style: normal; }
.contact-row:first-of-type i { border-color: #b2b2b2; }
.contact-row:first-of-type i img { width: 14px; height: 14px; }
.contact-row:nth-of-type(2) i img { width: 18px; height: 18px; }
.socials { display: flex; direction: ltr; flex-wrap: wrap; gap: 8px; margin: 20px 0 0; }
.socials a { display: grid; place-items: center; width: 40px; height: 40px; transition: transform .25s ease, filter .25s ease; }
.socials a:hover { transform: translateY(-5px) rotate(-4deg); filter: drop-shadow(0 6px 10px rgba(221,55,255,.4)); }
.socials img { width: 40px; height: 40px; object-fit: contain; }
.socials .social-layer { position: relative; display: block; }
.social-layer img { position: absolute; inset: 0; }
.social-layer img + img { top: 10px; left: 10px; width: 20px; height: 20px; filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7427%) hue-rotate(21deg) brightness(118%) contrast(119%); }
.social-layer--x img + img { top: 13px; left: 13px; width: 14px; height: 14px; }
.copyright { margin: 0; padding: 18px 24px 22px; font-size: 16px; line-height: 1.6; text-align: center; }
.copyright a { color: #fff; transition: color .2s ease; }
.copyright a:hover { color: var(--pink); }

/* Mobile drawer */
.mobile-drawer { position: fixed; z-index: 1002; top: 0; right: 0; width: min(86vw, 360px); height: 100dvh; padding: 38px 28px; overflow-y: auto; border-left: 1px solid rgba(221,55,255,.5); background: #190e2c; box-shadow: -20px 0 60px rgba(0,0,0,.4); visibility: hidden; pointer-events: none; transform: translateX(105%); transition: transform .4s cubic-bezier(.2,.75,.2,1), visibility 0s linear .4s; }
.mobile-drawer.is-open { visibility: visible; pointer-events: auto; transform: translateX(0); transition-delay: 0s; }
.drawer-logo { display: block; width: 118px; height: 118px; margin: 20px auto 30px; }
.drawer-logo img { width: 100%; height: 100%; object-fit: contain; }
.drawer-close { position: absolute; top: 22px; left: 22px; width: 42px; height: 42px; border: 0; border-radius: 50%; background: rgba(255,255,255,.09); }
.drawer-close span { position: absolute; top: 20px; left: 11px; width: 20px; height: 2px; background: #fff; transform: rotate(45deg); }
.drawer-close span + span { transform: rotate(-45deg); }
.drawer-nav > a, .drawer-submenu-toggle { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 15px 4px; border: 0; border-bottom: 1px solid rgba(255,255,255,.1); background: transparent; color: #fff; font-size: 18px; text-align: right; transition: color .25s ease, padding .3s ease, background .25s ease; }
.drawer-nav > a:hover, .drawer-nav > a:focus-visible, .drawer-submenu-toggle:hover, .drawer-submenu-toggle:focus-visible { padding-right: 12px; background: linear-gradient(90deg, transparent, rgba(146,9,242,.2)); color: var(--cyan); outline: 0; }
.drawer-submenu-toggle span { transition: transform .3s ease, color .3s ease; }
.drawer-submenu-toggle[aria-expanded="true"] span { color: var(--pink); transform: rotate(180deg); }
.drawer-submenu { max-height: 0; padding: 0 16px; overflow: hidden; background: rgba(146,9,242,.12); opacity: 0; transform: translateY(-8px); transition: max-height .4s ease, opacity .3s ease, transform .35s ease, padding .35s ease; }
.drawer-submenu.is-open { max-height: 260px; padding-top: 8px; padding-bottom: 8px; opacity: 1; transform: translateY(0); }
.drawer-submenu a { display: block; padding: 10px 0; color: #e7d9e5; font-size: 14px; transition: color .2s ease, transform .25s ease; }
.drawer-submenu a:hover, .drawer-submenu a:focus-visible { color: var(--pink); transform: translateX(-6px); outline: 0; }
.drawer-backdrop { position: fixed; z-index: 1001; inset: 0; display: block; width: 100%; height: 100%; border: 0; background: rgba(5,2,12,.72); opacity: 0; visibility: hidden; transition: opacity .3s ease, visibility .3s; }
.drawer-backdrop.is-open { opacity: 1; visibility: visible; }

.reveal-surface { opacity: 0; filter: blur(5px); transform: translateY(18px) scale(.997); transition: opacity .75s ease, filter .75s ease, transform .8s cubic-bezier(.2,.75,.2,1); }
.reveal-surface.is-visible { opacity: 1; filter: blur(0); transform: none; }

@media (max-width: 1439.98px) and (min-width: 992px) {
  .hero--composite { height: calc(100vw * 950 / 1440); }
  .hero--composite .hero-bg { left: 0; width: 100%; height: 100%; object-fit: fill; transform: none; }
  .hero--composite .hero-actions { top: 71.789%; width: 33.6806vw; height: 7.2917vw; padding: 1.9444vw 3.6111vw 2.0139vw; gap: 1.1111vw; }
  .hero--composite .hero-actions .button { width: 12.7083vw; height: 3.3333vw; }
  .hero-copy--left { top: 19.4444vw; left: clamp(56px, calc((100vw - 1152px) / 2), 76px); }
  .hero-copy--right { top: 18.4028vw; right: clamp(86px, calc(6.875vw + 8px), 107px); left: auto; }
  .hero-tag--orange { right: 11.9vw; }
  .section-title { font-size: 58px; }
  .desktop-nav > a, .nav-dropdown > button ,.nav-dropdown__parent { font-size: 16px !important; }
  .desktop-nav > a.is-active { font-size: 22px; }
  .hero-copy h1 { font-size: 58px; line-height: 60px; }
  .hero-copy p { font-size: 15px; line-height: 26px; }
  .button, .section-button { font-size: 18px; }
  .intro-text { font-size: 21px; }
  .faq-item > button { font-size: 25px; }
  .faq-answer p { font-size: 18px; }
  .footer-links a, .footer-policies a { font-size: 18px; }
  .work-tile p { font-size: 42px; }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  .site-header { width: calc(100% - 80px); }
  .desktop-nav { gap: 22px; }
  .desktop-nav > a, .nav-dropdown > button { font-size: 16px; }
  .desktop-nav > a.is-active { font-size: 19px; }
  .hero-copy--right { right: 55px; left: auto; width: 360px; }
  .hero-copy--left { left: 55px; width: 300px; }
  .hero-copy h1 { font-size: 52px; line-height: 54px; }
  .hero-copy p { font-size: 14px; line-height: 24px; }
  .hero-tag--orange { right: 145px; }
  .hero--composite .hero-actions { top: 71.789%; transform: translateX(-50%); }
  .section-title { font-size: 50px; }
  .intro-text { width: min(90%, 760px); font-size: 19px; }
  .game-card__head h3 { font-size: 27px; }
  .game-hover-copy span, .basketball-copy span { font-size: 40px; }
  .event-card { padding-inline: 8px; }
  .event-card__head { padding-inline: 12px 8px; }
  .event-card__head h3 { font-size: 26px; }
  .event-card > p { margin-right: 12px; }
  .work-tile p { font-size: 34px; }
  .footer-inner { grid-template-columns: 1.6fr .8fr 1fr 1.2fr; column-gap: 36px; }
}

@media (max-width: 991.98px) {
  body { width: 100%; }
  .reveal-surface { opacity: 1; filter: none; }
  .section-title { font-size: clamp(34px, 6vw, 46px); }
  .hero--composite { display: flex; flex-direction: column; width: 100%; height: auto; background: #110e27; overflow: hidden; }
  .hero--composite::before { display: none; }
  .hero--composite .hero-artwork { position: relative; inset: auto; order: 2; display: block; width: 100%; height: auto; aspect-ratio: 1440 / 950; background: #110e27; }
  .hero--composite .hero-bg { position: static; display: block; width: 100%; height: auto; aspect-ratio: 1440 / 950; object-fit: contain; object-position: center; }
  .site-header { position: relative; top: auto; left: auto; order: 1; grid-template-columns: 42px minmax(0, 1fr) 76px; width: 100%; height: 96px; padding: 10px 18px; background: #fff; box-shadow: 0 1px 0 rgba(66, 12, 111, .08); transform: none; }
  .site-logo { grid-column: 3; width: 76px; height: 76px; }
  .language-control { grid-column: 2; justify-self: start; height: 42px; }
  .language-switch, .language-current { font-size: 17px; }
  .desktop-nav { display: none; }
  .menu-toggle { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; justify-content: center; gap: 5px; width: 42px; height: 42px; padding: 9px; border: 1px solid rgba(66,12,111,.3); border-radius: 50%; background: #f7f2fb; }
  .menu-toggle span { display: block; width: 100%; height: 2px; border-radius: 2px; background: #420c6f; }
  .hero-copy--right { top: 190px; left: 50%; width: calc(100% - 42px); height: auto; text-align: center; transform: translateX(-50%); }
  .hero-copy h1 { font-size: clamp(42px, 8vw, 54px); line-height: 1.04; }
  .hero-tag--orange { top: 24px; right: calc(50% - 44px); width: 100px; font-size: 21px; }
  .hero-copy--left { top: 370px; left: 50%; width: calc(100% - 54px); height: auto; text-align: right; transform: translateX(-50%); }
  .hero-copy p { font-size: 13px; line-height: 22px; text-align: right; }
  .hero-tag--cyan { top: -34px; right: 0; left: auto; width: 100px; font-size: 18px; }
  .hero--composite .hero-actions { display: flex; }
  .hero-actions { position: relative; top: auto; left: auto; order: 3; width: calc(100% - 42px); max-width: 390px; height: 84px; margin: 18px auto 24px; padding: 18px 22px; gap: 12px; transform: none; }
  .hero-actions__divider { top: 41.5px; left: 50%; width: 12px; transform: translateX(-50%); }
  .button { flex: 1 1 0; width: auto; height: 46px; font-size: 15px; }

  .intro-section { width: 100%; margin: 0; padding: 32px 18px 60px; }
  .feature-ribbons { width: calc(100% + 36px); margin-inline: -18px; gap: 15px; }
  .ribbon-marquee--one { --ribbon-gap: 18px; }
  .ribbon-marquee--two { width: 100%; --ribbon-gap: 16px; }
  .ribbon { flex-basis: 160px; height: 36px; font-size: 17px; }
  .ribbon-marquee--two .ribbon, .ribbon-marquee--two .ribbon:nth-child(-n+2) { flex-basis: 145px; }
  .ribbon-marquee--two .ribbon:first-child { margin-right: 0; }
  .intro-visual { width: min(680px, 100%); margin-top: 38px; }
  .intro-text { width: min(100%, 600px); margin-top: 30px; font-size: 15px; line-height: 1.75; }

  .games-section, .events-section, .packages-section, .clients-section, .reviews-section, .faq-section { width: 100%; margin-left: 0; margin-right: 0; }
  .games-section { padding: 42px 18px 68px; }
  .section-shell { width: 100%; margin: 0; }
  .games-section .section-title, .events-section .section-title, .packages-section .section-title, .clients-section .section-title, .reviews-section .section-title, .faq-section .section-title { line-height: 1.15; }
  .games-grid, .events-grid, .packages-grid { width: 100%; margin-top: 28px; }
  .games-grid > .cards-grid, .events-grid > .cards-grid, .packages-grid > .cards-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; direction: rtl; }
  .game-card { grid-template-rows: auto minmax(90px, 1fr) 165px; min-height: 350px; }
  .game-card__head h3 { font-size: 28px; }
  .game-card > p { font-size: 7.5px; line-height: 11px; }
  .game-hover-copy span { font-size: 43px; }
  .basketball-copy span { font-size: 43px; }
  .game-card--basketball .game-card__sticker--ball { width: 56px; height: 56px; }
  .section-button { width: 194px; height: 44px; margin-top: 30px; font-size: 17px; }
  .section-button:hover { transform: translateY(-3px); }

  .events-section { padding: 42px 18px 68px; }
  .event-card { grid-template-rows: auto auto 188px; min-height: 400px; }
  .event-card__head h3 { font-size: 27px; }

  .packages-section { padding: 42px 18px 76px; }

  .clients-section { padding: 36px 18px 24px; }
  .clients-row { width: 100%; margin-top: 26px; }
  .client-slide { width: calc((100% - 24px) / 3); }
  .client-card { border-radius: 20px; }
  .client-separator { width: 46px; height: 46px; box-shadow: 0 0 0 4px #121028; }
  .client-separator--one { left: 33.333%; }
  .client-separator--two { left: 66.666%; }
  .client-separator--three { display: none; }

  .works-section { grid-template-columns: 1fr 1fr; gap: 12px; width: 100%; margin: 32px 0 0; padding: 0 18px; }
  .works-column { gap: 12px; }
  .works-column--one .work-tile, .works-column--four .work-tile { height: 270px; }
  .works-column--one .work-photo, .works-column--four .work-photo { height: 190px; }
  .works-column--two .work-photo, .works-column--three .work-photo { height: 260px; }
  .works-column--two .work-tile, .works-column--three .work-tile { height: 200px; }
  .work-tile p { font-size: clamp(23px, 5.5vw, 32px); }

  .reviews-section { margin-top: 58px; padding: 65px 18px 72px; overflow: hidden; }
  .reviews-slider { width: calc(100% + 36px); margin: 28px -18px 0; }
  .review-slide { width: 286px; min-height: 380px; }
  .review-card { min-height: 340px; padding-top: 18px; }
  .review-slide.swiper-slide-active .review-card { min-height: 380px; padding-top: 28px; }
  .review-card__content > p { font-size: 14.5px; }
  .review-card__photo { height: 116px; }
  .review-slide.swiper-slide-active .review-card__photo { height: 152px; }

  .faq-section { margin-top: 58px; padding: 50px 18px 68px; }
  .faq-list { gap: 16px; margin-top: 26px; }
  .faq-item > button { min-height: 70px; padding: 17px 15px; font-size: 16px; }
  .faq-item.is-open > button { min-height: 80px; padding: 19px 15px; }
  .faq-item > button { gap: 14px; }
  .faq-item > button > span:first-child { flex: 1 1 auto; min-width: 0; }
  .faq-icon { flex-basis: 34px; width: 34px; height: 34px; transform: scale(.6);}
  .faq-answer { width: calc(100% - 12px); }
  .faq-item.is-open .faq-answer { max-height: 160px; }
  .faq-answer p { font-size: 14px; line-height: 1.7; }

  .cta-section { width: calc(100% - 36px); border-radius: clamp(18px, 3vw, 28px); }

  .site-footer { margin-top: 68px; }
  .footer-inner { grid-template-columns: 1fr 1fr; gap: 32px 24px; width: calc(100% - 36px); padding: 32px 0 36px; }
  .footer-brand { grid-column: 1 / -1; text-align: center; }
  .footer-logo { margin: 0 auto; }
  .footer-brand p { width: min(100%, 500px); margin: 10px auto 0; font-size: 14px; }
  .footer-links h2, .footer-policies h2, .footer-contact h2 { font-size: 18px; }
  .footer-links a, .footer-policies a { font-size: 14px; }
  .footer-contact { grid-column: 1 / -1; }
  .copyright { font-size: 13px; line-height: 1.7; }
}

@media (min-width: 576px) and (max-width: 991.98px) {
  .hero-copy--right { top: 205px; right: 30px; left: auto; width: 310px; text-align: right; transform: none; }
  .hero-copy--right h1 { font-size: 48px; text-align: right; }
  .hero-tag--orange { top: 22px; right: 128px; width: 94px; height: 29px; font-size: 19px; }
  .hero-copy--left { top: 315px; left: 30px; width: 295px; text-align: right; transform: none; }
  .hero-copy--left p { font-size: 13px; line-height: 22px; }
  .hero-tag--cyan { top: -33px; right: auto; left: 0; }
}

@media (max-width: 575.98px) {
  .hero--composite { height: auto; }
  .site-header { top: auto; grid-template-columns: 38px minmax(0, 1fr) 64px; height: 82px; padding: 9px 14px; }
  .site-logo { width: 64px; height: 64px; }
  .language-control { height: 38px; }
  .language-switch, .language-current { height: 38px; padding: 6px; font-size: 15px; }
  .menu-toggle { width: 38px; height: 38px; }
  .hero-copy--right { top: 165px; }
  .hero-copy h1 { font-size: clamp(36px, 10.5vw, 42px); }
  .hero-tag--orange { top: 18px; right: calc(50% + 30px); width: 82px; height: 26px; font-size: 16px; }
  .hero-copy--left { top: 318px; width: calc(100% - 44px); }
  .hero-copy p { font-size: 12px; line-height: 20px; }
  .hero-tag--cyan { top: -31px; right: auto; left: 0; width: 90px; height: 29px; font-size: 16px; }
  .hero-actions { top: auto; width: calc(100% - 28px); height: 76px; margin: 16px auto 22px; padding: 15px 16px; gap: 10px; }
  .hero-actions__divider { top: 38.5px; width: 10px; }
  .button { height: 44px; font-size: 13.5px; }
  .intro-section { padding-right: 14px; padding-left: 14px; }
  .feature-ribbons { width: calc(100% + 28px); margin-right: -14px; margin-left: -14px; }
  .intro-visual { margin-top: 34px; }
  .intro-text { margin-top: 28px; font-size: 14px; }
  .games-grid > .cards-grid, .events-grid > .cards-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: none; margin: 0; gap: 10px; }
  .packages-grid > .cards-grid { grid-template-columns: minmax(0, 1fr); max-width: 350px; margin-right: auto; margin-left: auto; gap: 20px; }
  .game-card { grid-template-rows: auto minmax(44px, 1fr) 96px; min-height: 210px; padding: 8px 6px 6px; }
  .game-card__head { min-height: 28px; padding-inline: 3px; }
  .game-card__head h3 { font-size: 21px; }
  .game-card__head > .game-card__single-link { flex-basis: 16px; width: 16px; height: 16px; }
  .game-card__head > .game-card__single-link .card-link-arrow { width: 16px; height: 16px; }
  .game-card > p { width: 100%; margin: 0 3px 6px 0; padding-left: 42px; font-size: 6px; line-height: 9px; }
  .game-card__media { border-radius: 9px; }
  .game-card__sticker--darts { width: 43px; height: 43px; }
  .game-card__sticker--hockey { width: 48px; height: 48px; }
  .game-card__sticker--boxing { width: 40px; height: 40px; margin-left: 6px; }
  .game-hover-copy, .basketball-copy { padding-inline: 3px; }
  .game-hover-copy span { font-size: 30px; line-height: 1; }
  .basketball-copy span { font-size: 27px; line-height: 28px; }
  .basketball-copy strong { width: 44px; margin: 2px 6px 0 0; font-size: 6px; line-height: 10px; }
  .game-card--basketball .game-card__sticker--ball { width: 43px; height: 43px; margin-left: 3px; }
  .game-card:hover .game-card__sticker--darts, .game-card:focus-within .game-card__sticker--darts, .game-card.is-hovered .game-card__sticker--darts { transform: translate(-3px, -92%) rotate(-12deg) scaleX(-1) scale(.82); }
  .game-card:hover .game-card__sticker--hockey, .game-card:focus-within .game-card__sticker--hockey, .game-card.is-hovered .game-card__sticker--hockey { transform: translate(-2px, -84%) rotate(-29.5deg) scale(.78); }
  .game-card:hover .game-card__sticker--boxing, .game-card:focus-within .game-card__sticker--boxing, .game-card.is-hovered .game-card__sticker--boxing { transform: translate(-3px, -100%) rotate(-21.97deg) scale(.86); }
  .game-card--basketball:hover .game-card__sticker--ball, .game-card--basketball:focus-within .game-card__sticker--ball, .game-card--basketball.is-hovered .game-card__sticker--ball { transform: translate(-3px, -96%) rotate(0) scale(.8); }
  .event-card { grid-template-rows: auto auto 132px; gap: 8px; min-height: 250px; padding: 15px 6px 6px; }
  .event-card__head { gap: 6px; padding-inline: 6px; }
  .event-card__head h3 { font-size: 20px; }
  .event-card__head .event-card__single-link { flex-basis: 16px; width: 16px; height: 16px; }
  .event-card__head .event-card__single-link .card-link-arrow { width: 16px; height: 16px; }
  .event-card > p { width: 120px; margin-right: 6px; font-size: 7px; line-height: 10px; }
  .event-card__sticker { width: 42px; height: 42px; margin: -26px 7px 0 0; }
  .event-card__media { border-radius: 8px; }
  .clients-section { padding-right: 14px; padding-bottom: 18px; padding-left: 14px; }
  .client-slide { width: calc((100% - 12px) / 2); }
  .client-card { border-radius: 18px; }
  .client-separator { width: 42px; height: 42px; box-shadow: 0 0 0 4px #121028; }
  .client-separator--one { display: none; }
  .client-separator--two { display: block; left: 50%; }
  .works-section { gap: 8px; margin-top: 26px; padding: 0 10px; }
  .works-column { gap: 8px; }
  .works-column--one .work-tile, .works-column--four .work-tile { height: 230px; }
  .works-column--one .work-photo, .works-column--four .work-photo { height: 165px; }
  .works-column--two .work-photo, .works-column--three .work-photo { height: 225px; }
  .works-column--two .work-tile, .works-column--three .work-tile { height: 170px; }
  .work-tile p { font-size: clamp(20px, 6vw, 26px); }
  .work-tile__link { width: 38px; height: 38px; margin-top: 15px; }
  .reviews-section { padding-right: 14px; padding-left: 14px; }
  .review-slide.swiper-slide-active .review-card { width: min(calc(100vw - 42px), 290px); }
  .faq-section { padding-right: 14px; padding-left: 14px; }
  .faq-item > button { font-size: 14px;
        padding: 0 10px;
        min-height: 80px; }
        .work-photo , .work-tile{
            height: 165px !important;
        }
  .faq-answer p { font-size: 13px; }
  .mobile-drawer { width: min(90vw, 340px); padding: 34px 22px; }
  .drawer-logo { width: 100px; height: 100px; margin-bottom: 24px; }
  .drawer-nav > a, .drawer-submenu-toggle { padding-top: 13px; padding-bottom: 13px; font-size: 16px; }
  .footer-inner { gap: 34px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .reveal-surface { opacity: 1 !important; filter: none !important; }
}


/* =========================================================
   ARCADIUM V19 — FIGMA AUDIT / SHARED INNER-PAGE SYSTEM
   Home 672:1076 · Contact 852:232 · Gallery 867:602
   ========================================================= */

.page-edge-glows {
  position: relative;
  display: flow-root;
  overflow: visible;
  isolation: isolate;
}
.page-edge-glows::before,
.page-edge-glows::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: 153px;
  height: 662px;
  border-radius: 50%;
  background: rgba(177, 44, 204, .58);
  filter: blur(100px);
  pointer-events: none;
  user-select: none;
}

/* Shared inner hero/header/breadcrumb. */
.contact-hero {
  position: relative;
  min-height: 595px;
  overflow: hidden;
  background: #130f28;
}
.contact-hero__media { position: absolute; z-index: 0; inset: 0; }
.contact-hero__media img { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center 46%; }
.contact-hero__media span { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(66, 12, 111, .29) 0%, #130f28 89.328%); }
.site-header.contact-header { top: 2px; width: min(calc(100% - 48px), 1223px); height: 131px; padding-block: 8px; }
.contact-header .desktop-nav > a,
.contact-header .nav-dropdown > button,
.contact-header .language-switch { color: #fff; }
.contact-header .desktop-nav > a:hover,
.contact-header .nav-dropdown > button:hover,
.contact-header .desktop-nav > a.is-active { color: #fff; }
.contact-header .language-current { background: #fff; color: #470c85; }
.contact-hero__content {
  position: relative;
  z-index: 2;
  width: min(calc(100% - 48px), 1246px);
  margin-inline: auto;
  padding-top: 193px;
  color: #fff;
  text-align: right;
}
.breadcrumb-nav {
  display: flex;
  direction: rtl;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  min-height: 24px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.2;
}
.breadcrumb-nav > span[aria-hidden="true"] { font-size: 20px; font-weight: 300; line-height: 1.2; }
.breadcrumb-nav a { transition: color .25s ease, transform .25s ease; }
.breadcrumb-nav a:hover { color: #dd37ff; transform: translateX(-3px); }
.breadcrumb-nav span[aria-current="page"] { color: rgba(255,255,255,.76); }
.contact-hero__content h1 { margin: 32px 0 0; font-family: var(--display-font); font-size: 64px; font-weight: 400; line-height: 1.2; letter-spacing: -.96px; }
.contact-hero__content p { width: min(100%,815px); margin: 16px 0 0 auto; font-size: 20px; font-weight: 300; line-height: 1.5; }

.intro-section { position: relative; }
.intro-side-shadow { position: absolute; z-index: 0; display: block; max-width: none; pointer-events: none; user-select: none; }
.intro-side-shadow::before { content: ''; position: absolute; top: 42.6px; left: 42.6px; width: 90px; height: 308px; border-radius: 50%; background: #190e2c; box-shadow: 0 0 42.6px #190e2c; }
.intro-side-shadow--left { top: -62.6px; left: -25.6px; width: 175.2px; height: 393.2px; }
.intro-side-shadow--right-inner { top: -58.6px; left: 1031.4px; width: 168.2px; height: 393.2px; }
.intro-side-shadow--right-inner::before { width: 83px; }
.intro-side-shadow--right { top: -37.6px; left: 1106.4px; width: 175.2px; height: 393.2px; }
.intro-section > :not(.intro-side-shadow) { position: relative; z-index: 1; }

.cta-full-link { overflow: hidden; border-radius: inherit; }
.cta-composite { transition: transform .65s cubic-bezier(.2,.75,.2,1), filter .4s ease; }
.cta-full-link:hover .cta-composite,
.cta-full-link:focus-visible .cta-composite { transform: scale(1.012); filter: brightness(1.04) saturate(1.05); }
.cta-full-link:focus-visible { outline: 2px solid var(--cyan); outline-offset: 5px; }

.reviews-section { position: relative; }
.reviews-glow {
  position: absolute;
  z-index: 0;
  top: 15px;
  left: 50%;
  width: 649px;
  height: 641px;
  max-width: none;
  pointer-events: none;
  user-select: none;
  transform: translateX(-50%);
}
.reviews-section > :not(.reviews-glow) { position: relative; z-index: 1; }

@media (min-width: 1360px) {
  .contact-hero__content { left: -1px; }

  .home-page #main-content.page-edge-glows::before { top: 989px; left: -142px; }
  .home-page #main-content.page-edge-glows::after { top: 1772px; right: -145px; }

  .home-page .intro-section { height: 695px; margin-top: -39px; padding: 95px 0 60px; overflow: visible; }
  .home-page .feature-ribbons { overflow: visible; }
  .home-page .ribbon-marquee { height: 43.5px; }
  .home-page .ribbon-marquee--two { height: 43.5px; margin-bottom: -2.5px; }
  .home-page .intro-visual { margin-top: 64px; }
  .home-page .intro-text { margin-top: 8.5px; line-height: 1.583333; }

  .home-page .games-section { height: 696px; padding: 40px 0 120px; }
  .home-page .games-section .section-title { height: 70px; line-height: 70px; }
  .home-page .games-grid { margin-top: 56px; }
  .home-page .games-grid > .cards-grid { grid-template-columns: 301px 301px 291px 301px; }
  .home-page .game-card { min-height: 325.55px; height: 325.55px; }
  .home-page .game-card--basketball { min-height: 326px; height: 326px; }
  .home-page .section-button { margin-top: 36px; }

  .home-page .events-section { height: 627.4695px; padding: 0 0 120px; }
  .home-page .events-section .section-title { height: 70px; line-height: 70px; }
  .home-page .events-grid { margin-top: 50px; }
  .home-page .events-grid > .cards-grid { grid-template-columns: repeat(4, 298.42575px); }
  .home-page .event-card { min-height: 387.4695px; height: 387.4695px; }

  .home-page .packages-section { min-height: 771px; padding: 0; }
  .home-page .packages-section > .section-title { height: 99px; line-height: 99px; }
  .home-page .packages-grid { width: 1179.421px; margin-top: 40px; }
  .home-page .packages-grid > .cards-grid { grid-template-columns: repeat(3, 379.807px); }

  .home-page .clients-section { height: 212.8672px; padding: 0; }
  .home-page .clients-section .section-title { height: 86px; line-height: 86px; }
  .home-page .clients-row { height: 101.8672px; margin-top: 25px; }
  .home-page .client-card { height: 101.8672px; aspect-ratio: auto; }

  .home-page .works-section { grid-template-columns: 292px 297px 296px 297px; gap: 21.6667px; width: 1247px; height: 686px; margin-top: 120px; overflow: hidden; }
  .home-page .works-column--four .work-tile { height: 422px; }
  .home-page .works-column--one .work-tile .work-tile__link { margin-top: auto; transform: translateY(0) scale(1); }
  .home-page .works-column--four .work-tile .work-tile__link { margin-top: 121px; transform: translateY(0) scale(1); }

  .home-page .reviews-section { width: 1247px; height: 586px; margin-top: 120px; padding-bottom: 49px; }
  .home-page .reviews-section .section-title { height: 77px; line-height: 77px; }
  .home-page .reviews-slider { margin-top: 58px; }
  .home-page .review-slide { width: 305.5px; }
  .home-page .review-card { width: 287px; }
  .home-page .review-slide.swiper-slide-active .review-card { width: 324px; }

  .home-page .faq-section { width: 1246px; height: 655px; margin-top: 120px; padding-bottom: 120px; }
  .home-page .faq-section .section-title { height: 86px; line-height: 86px; }

  .site-footer { position: relative; height: 462px; margin-top: 120px; overflow: hidden; border-top: 1px solid #b12ccc; background: linear-gradient(180deg, #110e27 .102%, rgba(75,24,96,.43) 49.949%, rgba(133,33,153,.37) 100%); }
  .footer-inner { position: absolute; top: -1px; left: 50%; width: 1248px; height: 378px; margin: 0; padding: 52px 0 0; transform: translateX(-50%); }
  .footer-contact { position: static; }
  .footer-contact .socials { position: absolute; top: 285.5303px; left: 0; margin: 0; }
  .copyright { position: absolute; top: 384.5303px; left: 50%; width: 1248px; height: 52px; margin: 0; padding: 0; font-family: var(--body-font); font-size: 16px; line-height: 52px; transform: translateX(-50%); }
}

.work-tile--purple { background: #9209f2; color: #fff; }
.work-tile--dark { background: #2a154f; color: #dd37ff; }
.work-tile--purple .work-tile__link { opacity: 1; transform: none; }
.work-tile--purple:hover,
.work-tile--purple:focus-visible { background: #a414ff; color: #fff; }
.work-tile--dark:hover,
.work-tile--dark:focus-visible { background: #3a1b69; color: #f05dff; }

@media (max-width: 991.98px) {
  .contact-hero { display: flex; flex-direction: column; min-height: 0; }
  .site-header.contact-header { position: relative; top: auto; left: auto; order: 1; width: 100%; height: 96px; padding: 10px 18px; transform: none; }
  .contact-header .language-switch { color: #420c6f; }
  .contact-header .language-current { background: #420c6f; color: #fff; }
  .contact-hero__media { top: 96px; height: 430px; }
  .contact-hero__content { order: 2; width: calc(100% - 36px); min-height: 430px; padding-top: 90px; padding-bottom: 64px; }
  .breadcrumb-nav { min-height: 24px; font-size: 16px; }
  .contact-hero__content h1 { margin-top: 24px; font-size: 48px; }
  .contact-hero__content p { width: min(100%,650px); font-size: 16px; line-height: 1.75; }
  .page-edge-glows::before, .page-edge-glows::after { width: 122px; height: 528px; filter: blur(80px); }
  .intro-side-shadow, .reviews-glow { display: none; }
}

@media (max-width: 575.98px) {
  .site-header.contact-header { height: 82px; padding: 9px 14px; }
  .contact-hero__media { top: 82px; height: 382px; }
  .contact-hero__content { width: calc(100% - 28px); min-height: 382px; padding-top: 62px; padding-bottom: 48px; }
  .breadcrumb-nav { gap: 8px; font-size: 14px; }
  .breadcrumb-nav > span[aria-hidden="true"] { font-size: 17px; }
  .contact-hero__content h1 { margin-top: 18px; font-size: 42px; letter-spacing: 0; }
  .contact-hero__content p { margin-top: 10px; font-size: 14px; line-height: 1.75; }
}

@media (prefers-reduced-motion: reduce) {
  .reveal-surface,
  .reveal-surface.is-visible { opacity: 1 !important; filter: none !important; transform: none !important; }
  .cta-composite,
  .work-tile,
  .work-photo img,
  .client-card,
  .review-card { transition: none !important; }
}

/* V19 micro-geometry corrections from the final node audit. */
.work-tile { position: relative; }
@media (min-width: 1360px) {
  .home-page .works-column--one .work-tile .work-tile__link {
    position: absolute;
    top: 349px;
    right: 22px;
    margin: 0;
  }
  .home-page .works-column--four .work-tile .work-tile__link {
    position: absolute;
    top: 233px;
    right: 25px;
    margin: 0;
  }
  .home-page .review-card { flex: 0 0 287px; }
  .home-page .review-slide.swiper-slide-active .review-card { flex-basis: 324px; }
}

@media (min-width: 1360px) {
  .home-page .works-column--one,
  .home-page .works-column--two,
  .home-page .works-column--four { position: relative; top: -1px; }
}


/* =========================================================
   V20 MERGED SOURCE: Booking popup
   ORIGINAL: assets/css/booking-popup.css
========================================================= */

/*
 * Arcadium booking popup component
 * Figma file: 1YGihSlWskF6b9gauANgOP
 * Booking frame: 1:7 — 720 × 1416
 *
 * WordPress later:
 * 1) Load this file + booking-popup.js.
 * 2) Place #bookingPopup markup once near the footer.
 * 3) Add data-arc-booking-open to any button/link that should open it.
 */
 
  
body.arc-booking-popup-open {
  overflow: hidden;
}

.arc-booking-popup {
  position: fixed;
  z-index: 5000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 20px;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity .24s ease, visibility .24s ease;
}

.arc-booking-popup.is-open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.arc-booking-popup__backdrop {
  position: absolute;
  inset: 0;
  margin: 0;
  border: 0;
  padding: 0;
  background: rgba(6, 3, 15, .78);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  cursor: default;
}

.arc-booking-popup__viewport {
  position: relative;
  z-index: 1;
  width: min(720px, calc(100vw - 40px));
  max-height: calc(100dvh - 40px);
  overflow-x: hidden;
  overflow-y: auto;
  border-radius: 23px;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(146, 9, 242, .72) transparent;
}

.arc-booking-popup__viewport::-webkit-scrollbar {
  width: 7px;
}

.arc-booking-popup__viewport::-webkit-scrollbar-track {
  background: transparent;
}

.arc-booking-popup__viewport::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(146, 9, 242, .72);
}

.arc-booking-popup__dialog {
  position: relative;
  width: 100%;
  height: 1416px;
  overflow: hidden;
  border-radius: 23px;
  background: #1a1232;
  box-shadow: inset 4px 4px 4px rgba(255, 255, 255, .3);
  color: #fff;
  font-family: var(--body-font);
  text-align: right;
  transform: translateY(18px) scale(.985);
  transition: transform .28s cubic-bezier(.2, .75, .25, 1);
}

.arc-booking-popup.is-open .arc-booking-popup__dialog {
  transform: translateY(0) scale(1);
}

.arc-booking-popup__title {
  position: absolute;
  top: 35px;
  left: 50%;
  width: 262px;
  height: 35px;
  margin: 0;
  padding: 0;
  transform: translateX(-50%);
  color: #fff;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -.48px;
  text-align: center;
}

.arc-booking-popup__close {
  position: absolute;
  z-index: 3;
  top: 38px;
  left: 24px;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  margin: 0;
  border: 0;
  padding: 0;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
  transition: transform .22s ease, background .22s ease;
}

.arc-booking-popup__close img {
  display: block;
  width: 32px;
  height: 32px;
}

.arc-booking-popup__close:hover,
.arc-booking-popup__close:focus-visible {
  background: rgba(255, 255, 255, .08);
  outline: 0;
  transform: rotate(5deg) scale(1.06);
}

.arc-booking-popup__content {
  position: absolute;
  top: 108px;
  right: 24px;
  left: 24px;
}

.arc-booking-form {
  display: flex;
  width: 100%;
  margin: 0;
  padding: 0;
  direction: rtl;
  flex-direction: column;
  gap: 24px;
}

.arc-booking-field {
  display: flex;
  width: 100%;
  min-width: 0;
  margin: 0;
  flex-direction: column;
  gap: 21px;
}

.arc-booking-field label {
  width: 100%;
  height: 36px;
  margin: 0;
  color: #fff;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.5;
  text-align: right;
}

.arc-booking-control {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
}

.arc-booking-form input,
.arc-booking-form select,
.arc-booking-form textarea {
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0;
  border: 1px solid transparent;
  border-radius: 16px;
  outline: 0;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  font-family: var(--body-font);
  font-size: 20px;
  font-weight: 300;
  line-height: 1.5;
  text-align: right;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.arc-booking-form input,
.arc-booking-form select {
  height: 54px;
  padding: 11px 12px;
}

.arc-booking-form textarea {
  height: 172px;
  padding: 11px 12px;
  resize: none;
}

.arc-booking-form input::placeholder,
.arc-booking-form textarea::placeholder {
  color: rgba(255, 255, 255, .9);
  opacity: 1;
}

.arc-booking-form select {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}

.arc-booking-form select option {
  background: #211638;
  color: #fff;
}

.arc-booking-form input:hover,
.arc-booking-form select:hover,
.arc-booking-form textarea:hover {
  background: rgba(255, 255, 255, .105);
}

.arc-booking-form input:focus,
.arc-booking-form select:focus,
.arc-booking-form textarea:focus {
  border-color: #a302fa;
  background: rgba(255, 255, 255, .105);
  box-shadow: 0 0 0 4px rgba(146, 9, 242, .13);
}

.arc-booking-control--accent input {
  height: 56px;
  border-color: #9209f2;
}

.arc-booking-pair {
  display: grid;
  width: 100%;
  min-width: 0;
  direction: ltr;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.arc-booking-pair .arc-booking-field {
  direction: rtl;
}

.arc-booking-control--icon select,
.arc-booking-control--icon input {
  padding-left: 48px;
}

.arc-booking-icon {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 12px;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  transform: translateY(-50%);
  pointer-events: none;
}

.arc-booking-icon--chevron img {
  display: block;
  width: 16.5px;
  height: 9px;
  transform: rotate(180deg);
}

.arc-booking-icon--calendar img {
  display: block;
  width: 19.5px;
  height: 19.5px;
}

.arc-booking-ending {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: 44px;
}

.arc-booking-submit {
  display: grid;
  place-items: center;
  width: 100%;
  height: 52.802px;
  margin: 0;
  border: 0;
  border-radius: 37.686px;
  background: #9209f2;
  color: #fff;
  font-family: var(--body-font);
  font-size: 23.802px;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
  transition: transform .22s ease, background .22s ease, box-shadow .22s ease;
}

.arc-booking-submit:hover,
.arc-booking-submit:focus-visible {
  background: #a61aff;
  box-shadow: 0 12px 28px rgba(146, 9, 242, .3);
  outline: 0;
  transform: translateY(-2px);
}

.arc-booking-submit:active {
  transform: translateY(0);
}

.arc-booking-submit.is-demo-success {
  background: #7323cc;
}

@media (max-width: 767.98px) {
  .arc-booking-popup {
    align-items: start;
    padding: 12px;
  }

  .arc-booking-popup__viewport {
    width: min(100%, 720px);
    max-height: calc(100dvh - 24px);
    border-radius: 20px;
  }

  .arc-booking-popup__dialog {
    height: auto;
    min-height: 0;
    border-radius: 20px;
    padding: 28px 18px 22px;
  }

  .arc-booking-popup__title {
    position: static;
    width: calc(100% - 88px);
    height: auto;
    min-height: 35px;
    margin: 0 auto;
    transform: none;
    font-size: clamp(26px, 7vw, 32px);
  }

  .arc-booking-popup__close {
    top: 27px;
    left: 18px;
  }

  .arc-booking-popup__content {
    position: static;
    width: 100%;
    margin-top: 28px;
  }

  .arc-booking-form {
    gap: 20px;
  }

  .arc-booking-field {
    gap: 12px;
  }

  .arc-booking-field label {
    height: auto;
    min-height: 30px;
    font-size: 20px;
    line-height: 1.5;
  }

  .arc-booking-form input,
  .arc-booking-form select,
  .arc-booking-control--accent input {
    height: 52px;
    font-size: 17px;
  }

  .arc-booking-form textarea {
    height: 142px;
    font-size: 17px;
  }

  .arc-booking-pair {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .arc-booking-ending {
    gap: 28px;
  }

  .arc-booking-submit {
    height: 52px;
    font-size: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .arc-booking-popup,
  .arc-booking-popup__dialog,
  .arc-booking-popup__close,
  .arc-booking-submit,
  .arc-booking-form input,
  .arc-booking-form select,
  .arc-booking-form textarea {
    transition: none !important;
  }
}


/* =========================================================
   V20 MERGED SOURCE: Contact
   ORIGINAL: assets/css/contact.css
========================================================= */

.contact-form-page .contact-page { background: #130f28; }

.contact-form-page .contact-main { position: relative; overflow: visible; background: #130f28; }
.contact-form-page .contact-main::before { top: 132px; left: -57px; }
.contact-form-page .contact-main::after { top: 544px; right: -128px; }

.contact-form-page .contact-layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 720px) minmax(0, 506px);
  direction: ltr;
  gap: 20px;
  width: min(calc(100% - 48px), 1246px);
  margin: 28px auto 0;
}

.contact-form-page .booking-form {
  display: flex;
  direction: rtl;
  flex-direction: column;
  gap: 24px;
  min-height: 925.802px;
  padding: 20px 24px 40px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 23px;
  background: rgba(26, 18, 50, .1);
  box-shadow:
    inset 3px 3px 5px rgba(255, 255, 255, .28),
    inset -1px -1px 2px rgba(255, 255, 255, .08);
}

.contact-form-page .form-group {
  display: flex;
  flex-direction: column;
  gap: 21px;
  margin: 0;
}

.contact-form-page .form-group label {
  margin: 0;
  color: #fff;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.5;
}

.contact-form-page .booking-form input,
.contact-form-page .booking-form select,
.contact-form-page .booking-form textarea {
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: 16px;
  outline: 1px solid transparent;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  font-family: var(--body-font);
  font-size: 20px;
  font-weight: 300;
  line-height: 1.5;
  text-align: right;
  transition: outline-color .25s ease, background .25s ease, box-shadow .25s ease;
}

.contact-form-page .booking-form input,
.contact-form-page .booking-form select {
  height: 54px;
  padding: 12px;
}

.contact-form-page .booking-form textarea {
  height: 172px;
  padding: 12px;
  resize: vertical;
}

.contact-form-page .booking-form input::placeholder,
.contact-form-page .booking-form textarea::placeholder {
  color: rgba(255, 255, 255, .72);
  opacity: 1;
}

.contact-form-page .booking-form input:hover,
.contact-form-page .booking-form select:hover,
.contact-form-page .booking-form textarea:hover {
  background: rgba(255, 255, 255, .11);
}

.contact-form-page .booking-form input:focus,
.contact-form-page .booking-form select:focus,
.contact-form-page .booking-form textarea:focus {
  outline-color: rgba(221, 55, 255, .9);
  background: rgba(255, 255, 255, .12);
  box-shadow: 0 0 0 4px rgba(146, 9, 242, .15);
}

.contact-form-page .form-row-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  direction: ltr;
  gap: 12px;
}

.contact-form-page .form-row-pair .form-group {
  direction: rtl;
}

.contact-form-page .field-with-icon {
  position: relative;
  display: block;
}

.contact-form-page .field-with-icon input,
.contact-form-page .field-with-icon select {
  padding-left: 48px;
}

.contact-form-page .field-with-icon > img {
  position: absolute;
  top: 50%;
  left: 16px;
  width: 24px;
  height: 24px;
  transform: translateY(-50%);
  pointer-events: none;
}

/* Figma node 865:245: the chevron vector is rotated 180deg inside the instance. */
.contact-form-page .field-with-icon--select > img {
  transform: translateY(-50%) rotate(180deg);
}

.contact-form-page .field-with-icon--select select {
  appearance: none;
  cursor: pointer;
}

.contact-form-page .field-with-icon--select option {
  background: #211638;
  color: #fff;
}

.contact-form-page .form-group--notes {
  gap: 20px;
}

.contact-form-page .booking-submit {
  display: grid;
  place-items: center;
  width: 100%;
  min-height: 52.802px;
  margin-top: 20px;
  border: 0;
  border-radius: 16px;
  background: #9209f2;
  color: #fff;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.5;
  cursor: pointer;
  transition: transform .25s ease, background .25s ease, box-shadow .25s ease;
}

.contact-form-page .booking-submit:hover,
.contact-form-page .booking-submit:focus-visible {
  background: #a61aff;
  box-shadow: 0 12px 32px rgba(146, 9, 242, .35);
  transform: translateY(-3px);
  outline: 0;
}

.contact-form-page .booking-submit:active {
  transform: translateY(-1px);
}

.contact-form-page .form-status {
  min-height: 0;
  margin: -12px 0 -16px;
  color: #22dff3;
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
}

.contact-form-page .form-status:empty {
  display: none;
}

.contact-form-page .direct-contact {
  display: flex;
  direction: rtl;
  flex-direction: column;
  align-self: start;
  justify-content: space-between;
  height: 673px;
  min-height: 673px;
  color: #fff;
  text-align: right;
}

.contact-form-page .direct-contact__intro h1 {
  margin: 0;
  font-family: var(--display-font);
  font-size: 64px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -.96px;
}

.contact-form-page .direct-contact__intro p {
  width: min(100%, 494px);
  margin: 12px 0 0;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.5;
}

.contact-form-page .direct-contact__details {
  width: min(100%, 404px);
  height: 368px;
  margin-top: 0;
  margin-right: 0;
  margin-left: auto;
}

.contact-form-page .direct-contact__row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  min-height: 42px;
  margin-bottom: 32px;
  color: #fff;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
  transition: color .25s ease, transform .25s ease;
}

.contact-form-page a.direct-contact__row:hover {
  color: #dd37ff;
  transform: translateX(-4px);
}

.contact-form-page .direct-contact__row i {
  display: grid;
  place-items: center;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border: 1px solid #fff;
  border-radius: 50%;
  background: transparent;
  font-style: normal;
}

.contact-form-page .direct-contact__row i img {
  width: 24px;
  height: 24px;
}

.contact-form-page .direct-contact__row--address {
  justify-content: flex-start;
  margin-bottom: 0;
}

.contact-form-page .contact-socials {
  display: flex;
  direction: ltr;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 48px;
}

.contact-form-page .contact-socials a {
  position: relative;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  transition: transform .25s ease, filter .25s ease;
}

.contact-form-page .contact-socials a:hover {
  filter: drop-shadow(0 6px 10px rgba(221, 55, 255, .4));
  transform: translateY(-5px) rotate(-4deg);
}

.contact-form-page .contact-socials img {
  width: 40px;
  height: 40px;
  object-fit: contain;
}

.contact-form-page .contact-socials .social-layer {
  display: block;
}

.contact-form-page .contact-socials .social-layer img {
  position: absolute;
  inset: 0;
}

.contact-form-page .contact-socials .social-layer img + img {
  top: 10px;
  left: 10px;
  width: 20px;
  height: 20px;
}

.contact-form-page .contact-socials .social-layer--x img + img {
  top: 13px;
  left: 13px;
  width: 14px;
  height: 14px;
}

.contact-form-page .contact-cta {
  position: relative;
  z-index: 1;
  margin-top: 120px;
}



.contact-form-page .booking-form { transition: border-color .3s ease, box-shadow .35s ease, transform .35s cubic-bezier(.2,.75,.2,1); }
.contact-form-page .booking-form:hover { border-color: rgba(221,55,255,.32); box-shadow: inset 3px 3px 5px rgba(255,255,255,.28), inset -1px -1px 2px rgba(255,255,255,.08), 0 24px 60px rgba(0,0,0,.12); }
.contact-form-page .booking-form input,
.contact-form-page .booking-form select,
.contact-form-page .booking-form textarea { transition: outline-color .25s ease, background .25s ease, box-shadow .25s ease, transform .25s ease; }
.contact-form-page .booking-form input:hover,
.contact-form-page .booking-form select:hover,
.contact-form-page .booking-form textarea:hover { transform: translateY(-1px); }
.contact-form-page .direct-contact__row i { transition: transform .3s cubic-bezier(.2,.75,.2,1), border-color .25s ease, box-shadow .25s ease; }
.contact-form-page a.direct-contact__row:hover i { transform: rotate(-7deg) scale(1.07); border-color: #dd37ff; box-shadow: 0 0 0 4px rgba(221,55,255,.08); }

@media (min-width: 1200px) {
  .contact-form-page .contact-layout { left: -1px; }
  .contact-form-page .contact-cta { left: -9.5px; }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  .contact-form-page .direct-contact__intro h1 { font-size: 54px; }
  .contact-form-page .direct-contact__row { font-size: 20px; }
}

@media (max-width: 991.98px) {
  .contact-form-page .contact-main::before { top: 150px; left: -70px; }
  .contact-form-page .contact-main::after { top: 760px; right: -78px; }
  .contact-form-page .contact-layout { grid-template-columns: minmax(0,1fr); width: calc(100% - 36px); margin-top: 40px; }
  .contact-form-page .booking-form { grid-row: 2; min-height: 0; }
  .contact-form-page .direct-contact { grid-row: 1; height: auto; min-height: 0; }
  .contact-form-page .direct-contact__intro h1 { font-size: 48px; line-height: 1.25; }
  .contact-form-page .direct-contact__intro p { width: min(100%,650px); font-size: 16px; line-height: 1.75; }
  .contact-form-page .direct-contact__details { width: 100%; height: auto; margin-top: 36px; }
  .contact-form-page .direct-contact__row { justify-content: flex-start; width: fit-content; max-width: 100%; margin-bottom: 22px; font-size: 19px; }
  .contact-form-page .contact-socials { margin-top: 30px; }
  .contact-form-page .contact-cta { margin-top: 72px; }
  .contact-form-page .contact-footer { margin-top: 68px; }
}

@media (max-width: 575.98px) {
  .contact-form-page .contact-layout { gap: 34px; width: calc(100% - 28px); margin-top: 34px; }
  .contact-form-page .direct-contact__intro h1 { font-size: 40px; }
  .contact-form-page .direct-contact__intro p { margin-top: 8px; font-size: 14px; }
  .contact-form-page .direct-contact__details { margin-top: 28px; }
  .contact-form-page .direct-contact__row { gap: 8px; margin-bottom: 18px; font-size: 16px; }
  .contact-form-page .direct-contact__row i { flex-basis: 38px; width: 38px; height: 38px; }
  .contact-form-page .direct-contact__row i img { width: 21px; height: 21px; }
  .contact-form-page .contact-socials { margin-top: 24px; }
  .contact-form-page .booking-form { gap: 20px; padding: 20px 14px 24px; border-radius: 20px; }
  .contact-form-page .form-group { gap: 12px; }
  .contact-form-page .form-group label { font-size: 18px; }
  .contact-form-page .form-row-pair { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .contact-form-page .booking-form input,
.contact-form-page .booking-form select,
.contact-form-page .booking-form textarea { border-radius: 13px; font-size: 15px; }
  .contact-form-page .booking-form input,
.contact-form-page .booking-form select { height: 50px; padding: 10px 12px; }
  .contact-form-page .booking-form textarea { height: 140px; }
  .contact-form-page .field-with-icon > img { left: 14px; width: 22px; height: 22px; }
  .contact-form-page .booking-submit { min-height: 50px; margin-top: 6px; border-radius: 13px; font-size: 17px; }
  .contact-form-page .contact-cta { margin-top: 56px; }
}

@media (prefers-reduced-motion: reduce) {
  .contact-form-page .contact-page *,
.contact-form-page .contact-page *::before,
.contact-form-page .contact-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Final Figma micro-geometry — contact node 865:258. */
.contact-form-page .booking-form {
  box-shadow: inset 4px 4px 4px rgba(255, 255, 255, .3);
}
.contact-form-page .booking-form input::placeholder,
.contact-form-page .booking-form textarea::placeholder { color: rgba(255, 255, 255, .9); }
.contact-form-page .booking-submit {
  min-height: 52.80185px;
  border-radius: 37.686px;
  font-size: 23.802px;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .contact-form-page .direct-contact__row--address {
    width: 396px;
    margin-right: 0;
    margin-left: auto;
  }
  .contact-form-page .contact-socials {
    width: 232px;
    margin-left: auto;
  }
}


/* =========================================================
   V20 MERGED SOURCE: FAQ shared system
   ORIGINAL: assets/css/faq.css
========================================================= */

/* =========================================================
   Arcadium — FAQ page
   Figma: FAQ frame 1:11 (1440 x 2601)

   Shared:
   Header / Hero / Drawer = contact.css + style.css
   FAQ Accordion = style.css
   CTA / Footer = style.css

   Figma tabs:
   Node 1:151
========================================================= */

.faq-page {
  background: #130f28;
}

.faq-hero__content p {
  max-width: 815px;
}


/* =========================================================
   Main
========================================================= */

.faq-main {
  position: relative;
  display: flow-root;

  /*
   * IMPORTANT:
   * Tabs overlap the Hero by 16px in Figma.
   *
   * overflow:hidden here was clipping the upper
   * part of the tab container.
   */
  overflow: visible;

  isolation: isolate;

  background: #130f28;
}


/* =========================================================
   Background Glows
========================================================= */

.faq-main::before,
.faq-main::after {
  content: "";

  position: absolute;
  z-index: 0;

  width: 553px;
  height: 1062px;

  background: radial-gradient(ellipse 76.5px 331px at center, #B12CCC 99%, transparent 100%);
  filter: blur(100px);

  pointer-events: none;
}

.faq-main::before {
  top: -68px;
  left: -257px;
}

.faq-main::after {
  top: 344px;
  right: -328px;
}

.faq-main > * {
  position: relative;
  z-index: 1;
}


/* =========================================================
   Category Tabs
   Figma node: 1:151

   Reference:
   Wrapper 1:151 = 805 x 82
   Border  1:152 = 815 x 82
   Inner   1:153 = 751 x 58

   Packages = 221 x 50
   Policies = 145 x 50
   Games    = 212 x 58 ACTIVE
   Events   = 139 x 50
========================================================= */

.faq-tabs-shell {
  position: relative;
  z-index: 5;

  width: min(calc(100% - 48px), 805px);
  height: 82px;

  /*
   * Hero ends at Y = 595
   * Tabs start at Y = 579
   *
   * 595 - 579 = 16px overlap.
   */
  margin: -16px auto 0;

  overflow: visible;
}


/* =========================================================
   Tabs Outer Pill
========================================================= */

.faq-tabs {
  display: flex;

  direction: rtl;

  align-items: center;
  justify-content: space-between;

  /*
   * Figma outer node is 10px wider
   * than its 805px wrapper.
   */
  width: 815px;
  height: 82px;

  padding: 12px 32px;

  border: 0;
  border-radius: 140px;

  background: transparent;

  /*
   * Figma uses a 1px stroke.
   * Inset shadow avoids changing dimensions.
   */
  box-shadow:
          inset 0 0 0 1px #470c85;
}


/* =========================================================
   Individual Tab
========================================================= */

.faq-tab {
  --faq-tab-width: auto;

  position: relative;

  display: inline-flex;

  align-items: center;
  justify-content: center;

  flex:
          0
          0
          var(--faq-tab-width);

  width: var(--faq-tab-width);

  height: 50px;
  min-height: 0;

  padding: 8px 12px;

  border: 0;
  border-radius: 34px;

  outline: 0;

  background: transparent;

  color: #fff;

  font-family: var(--body-font);

  font-size: 28px;
  font-weight: 400;

  line-height: 1.2;

  letter-spacing: -0.14px;

  white-space: nowrap;

  cursor: pointer;

  isolation: isolate;

  -webkit-tap-highlight-color: transparent;

  transition:
          color 0.24s ease,
          background-color 0.24s ease,
          transform 0.3s cubic-bezier(0.2, 0.75, 0.2, 1),
          box-shadow 0.3s ease;
}


/* =========================================================
   Inactive Hover Layer
========================================================= */

.faq-tab::before {
  content: "";

  position: absolute;
  z-index: -1;

  inset: 0;

  border-radius: inherit;

  background:
          rgba(255, 255, 255, 0.065);

  opacity: 0;

  transform: scale(0.92);

  transition:
          opacity 0.24s ease,
          transform 0.3s cubic-bezier(0.2, 0.75, 0.2, 1);
}

.faq-tab:hover:not(.is-active)::before,
.faq-tab:focus-visible:not(.is-active)::before {
  opacity: 1;

  transform: scale(1);
}

.faq-tab:hover:not(.is-active) {
  transform: translateY(-2px);
}


/* =========================================================
   Keyboard Focus
========================================================= */

.faq-tab:focus-visible {
  outline: 2px solid #dd37ff;

  outline-offset: 3px;
}


/* =========================================================
   Active Tab
========================================================= */

.faq-tab.is-active {
  height: 58px;
  min-height: 0;

  padding: 12px;

  background: #fff;

  color: #130f28;

  box-shadow: none;
}

.faq-tab.is-active::before {
  display: none;
}

.faq-tab.is-active:hover {
  transform: translateY(-1px);

  box-shadow:
          0 8px 22px rgba(146, 9, 242, 0.12);
}


/* =========================================================
   Exact Desktop Tab Widths
========================================================= */

.faq-tab--events {
  --faq-tab-width: 139px;
}

.faq-tab--games {
  --faq-tab-width: 212px;
}

.faq-tab--policies {
  --faq-tab-width: 145px;
}

.faq-tab--packages {
  --faq-tab-width: 221px;
}


/* =========================================================
   FAQ Content

   Reuses the same FAQ component from Home.
========================================================= */

.faq-page__questions {
  margin-top: 94px;
}

.faq-page__questions .section-title {
  line-height: 1.35;
}


/* =========================================================
   Hidden Tab Panel
========================================================= */

.faq-panel[hidden] {
  display: none;
}


/* =========================================================
   Tab Panel Change Animation
========================================================= */

.faq-panel.is-entering .faq-list {
  animation:
          faq-panel-in
          0.42s
          cubic-bezier(0.2, 0.75, 0.2, 1)
          both;
}

@keyframes faq-panel-in {

  from {
    opacity: 0;

    transform:
            translateY(12px);
  }

  to {
    opacity: 1;

    transform:
            translateY(0);
  }
}


/* =========================================================
   FAQ Interaction
========================================================= */

.faq-page .faq-item > button:focus-visible {
  outline:
          2px solid
          #dd37ff;

  outline-offset: 4px;
}

.faq-page .faq-icon {
  transition:
          transform
          0.28s
          cubic-bezier(0.2, 0.75, 0.2, 1),

          background
          0.28s
          ease;
}

.faq-page .faq-item > button:hover .faq-icon {
  transform:
          rotate(6deg)
          scale(1.05);
}

.faq-page .faq-item.is-open .faq-icon {
  transform:
          rotate(180deg);
}

.faq-page .faq-answer {
  max-width: 865px;
}

.faq-page .faq-item.is-open .faq-answer {
  max-height: 180px;
}


/* =========================================================
   Shared CTA / Footer
========================================================= */

.faq-cta,
.faq-footer {
  position: relative;

  z-index: 1;
}


/* =========================================================
   Reveal Animation
========================================================= */

.faq-reveal {
  opacity: 1;

  transform: none;
}

.faq-reveal-ready
.faq-reveal {
  opacity: 0;

  transform:
          translateY(24px);

  transition:
          opacity
          0.65s
          ease,

          transform
          0.7s
          cubic-bezier(0.2, 0.75, 0.2, 1);
}

.faq-reveal-ready
.faq-reveal.is-visible {
  opacity: 1;

  transform:
          translateY(0);
}


/* =========================================================
   Desktop
   Figma Reference = 1440px
========================================================= */

@media (min-width: 1281px) {

  .faq-page__questions {
    left: 3px;

    width:
            min(
                    calc(100% - 48px),
                    1246px
            );
  }

}


/* =========================================================
   Laptop / Tablet
========================================================= */

@media (max-width: 991.98px) {

  /* =======================================================
     Background Glows
  ======================================================= */

  .faq-main::before {
    top: 40px;

    left: -340px;

    opacity: 0.7;
  }

  .faq-main::after {
    top: 520px;

    right: -370px;

    opacity: 0.65;
  }


  /* =======================================================
     Tabs Shell
  ======================================================= */

  .faq-tabs-shell {
    width:
            calc(100% - 36px);

    height: auto;

    margin-top: -24px;
  }


  /* =======================================================
     Tabs
  ======================================================= */

  .faq-tabs {
    width: 100%;

    height: auto;

    min-height: 72px;

    padding:
            10px
            14px;

    gap: 8px;

    overflow-x: auto;
    overflow-y: hidden;

    overscroll-behavior-inline:
            contain;

    scrollbar-width: none;

    -webkit-overflow-scrolling:
            touch;
  }

  .faq-tabs::-webkit-scrollbar {
    display: none;
  }


  /* =======================================================
     Tab
  ======================================================= */

  .faq-tab {
    --faq-tab-width: auto;

    flex:
            0
            0
            auto;

    width: auto;

    min-width: 132px;

    height: 48px;
    min-height: 0;

    padding:
            8px
            14px;

    font-size: 20px;
  }

  .faq-tab--packages {
    min-width: 178px;
  }

  .faq-tab.is-active {
    height: 52px;

    min-height: 0;

    padding-block: 10px;
  }


  /* =======================================================
     FAQ
  ======================================================= */

  .faq-page__questions {
    margin-top: 72px;

    padding-top: 0;

    padding-bottom: 72px;
  }

  .faq-page__questions
  .section-title {
    line-height: 1.15;
  }

}


/* =========================================================
   Mobile
========================================================= */

@media (max-width: 575.98px) {

  /* =======================================================
     Tabs Shell
  ======================================================= */

  .faq-tabs-shell {
    width:
            calc(100% - 28px);

    margin-top: -20px;
  }


  /* =======================================================
     Tabs
  ======================================================= */

  .faq-tabs {
    min-height: 64px;

    padding:
            8px
            10px;

    gap: 6px;

    border-radius: 40px;
  }


  /* =======================================================
     Individual Tabs
  ======================================================= */

  .faq-tab {
    min-width: 112px;

    height: 44px;
    min-height: 0;

    padding:
            7px
            12px;

    font-size: 16px;
  }

  .faq-tab--packages {
    min-width: 148px;
  }

  .faq-tab.is-active {
    height: 46px;

    min-height: 0;

    padding-block: 8px;
  }


  /* =======================================================
     FAQ
  ======================================================= */

  .faq-page__questions {
    margin-top: 58px;

    padding-right: 14px;
    padding-bottom: 62px;
    padding-left: 14px;
  }

  .faq-page
  .faq-item.is-open
  .faq-answer {
    max-height: 240px;
  }

}


/* =========================================================
   Reduced Motion
========================================================= */

@media (prefers-reduced-motion: reduce) {

  .faq-tab,
  .faq-tab::before,
  .faq-icon,
  .faq-reveal,
  .faq-panel.is-entering
  .faq-list {
    transition: none !important;

    animation: none !important;
  }

  .faq-reveal-ready
  .faq-reveal {
    opacity: 1;

    transform: none;
  }

}


/* =========================================================
   V20 MERGED SOURCE: Works + reusable gallery primitives
   ORIGINAL: assets/css/works.css
========================================================= */

.gallery-page {
  background: #130f28;
}

.gallery-page .desktop-nav > a.is-active {
  color: #fff;
  font-size: 20px;
  font-weight: 300;
}

.gallery-page .breadcrumb-nav {
  font-size: 16px;
  line-height: 1.2;
}

.gallery-page .breadcrumb-nav > span[aria-hidden="true"] {
  font-size: 20px;
  font-weight: 300;
}

.gallery-hero__content {
  width: min(calc(100% - 48px), 1246px);
}

.gallery-main {
  position: relative;
  overflow: visible;
  background: #130f28;
}

.gallery-main::before { top: 118px; right: -134px; }
.gallery-main::after { display: none; }

.gallery-section {
  position: relative;
  z-index: 1;
}

.photo-gallery-section {
  width: 100%;
  height: 350px;
  overflow: hidden;
}

.gallery-section__heading {
  position: absolute;
  z-index: 5;
  top: -12px;
  left: 50%;
  width: min(calc(100% - 48px), 1248px);
  height: 96px;
  transform: translateX(-50%);
}

.gallery-section__heading h2 {
  margin: 0;
  color: #fff;
  font-family: var(--display-font);
  font-size: 64px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -.96px;
  text-align: center;
}

.gallery-controls {
  position: absolute;
  top: 28px;
  left: 0;
  display: flex;
  direction: ltr;
  align-items: center;
  gap: 12px;
}

.gallery-arrow {
  display: grid;
  place-items: center;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
  transition: filter .25s ease, transform .25s ease;
}

.gallery-arrow:hover,
.gallery-arrow:focus-visible {
  filter: drop-shadow(0 0 10px rgba(221, 55, 255, .7));
  transform: translateY(-3px) scale(1.08);
  outline: 0;
}

.gallery-arrow img {
  width: 40px;
  height: 40px;
}

.photo-gallery-slider {
  --arc-photo-motion-duration: 820ms;
  --arc-photo-motion-ease: cubic-bezier(.18, .72, .22, 1);
  --swiper-wrapper-transition-timing-function: var(--arc-photo-motion-ease);
  position: absolute;
  top: 103px;
  left: 50%;
  width: 1784.026px;
  height: 247px;
  overflow: visible;
  transform: translateX(-50%);
}

.photo-gallery-slider .swiper-wrapper {
  align-items: center;
  height: 247px;
}

.photo-gallery-slide {
  display: grid;
  place-items: center;
  width: auto;
  height: 247px;
}

.photo-gallery-slide a {
  --photo-lift: 0px;
  --photo-scale: 1;
  position: relative;
  display: block;
  height: var(--photo-height);
  width: var(--photo-width);
  border-radius: 8px;
  transform: translateY(var(--photo-lift)) scale(var(--photo-scale));
  transform-origin: center center;
  transition:
    width var(--arc-photo-motion-duration) var(--arc-photo-motion-ease),
    height var(--arc-photo-motion-duration) var(--arc-photo-motion-ease),
    filter .35s ease,
    transform var(--arc-photo-motion-duration) var(--arc-photo-motion-ease);
  will-change: transform;
}

.photo-gallery-slide a::after {
  content: '';
  position: absolute;
  inset: 8%;
  border-radius: 16px;
  background: rgba(146, 9, 242, .18);
  opacity: 0;
  filter: blur(18px);
  transition: opacity .3s ease;
}

.photo-gallery-slide a:hover,
.photo-gallery-slide a:focus-visible {
  --photo-lift: -7px;
  --photo-scale: 1.025;
  filter: brightness(1.08) saturate(1.08);
  outline: 0;
}

.photo-gallery-slide a:hover::after,
.photo-gallery-slide a:focus-visible::after {
  opacity: 1;
}

.photo-gallery-slide img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  border-radius: 8px;
  object-fit: cover;
  transform-origin: 0 0;
  backface-visibility: hidden;
  box-shadow: 0 14px 30px rgba(0, 0, 0, .18);
  transition: transform var(--arc-photo-motion-duration) var(--arc-photo-motion-ease);
  will-change: transform;
}

.photo-gallery-slide--tall {
  --photo-width: 209.312px;
  --photo-height: 247px;
}

.photo-gallery-slide--medium {
  --photo-width: 238.544px;
  --photo-height: 218px;
}

.photo-gallery-slide--wide {
  --photo-width: 307px;
  --photo-height: 192px;
}

.photo-gallery-slide--medium-wide {
  --photo-width: 247.613px;
  --photo-height: 218px;
}

.photo-gallery-slide--tall-wide {
  --photo-width: 217.123px;
  --photo-height: 247px;
}

.video-gallery-section {
  width: min(calc(100% - 48px), 1256px);
  height: 475px;
  margin: 120px auto 0;
}

.video-gallery-section .gallery-section__heading {
  width: 100%;
}

.video-gallery-slider {
  position: absolute;
  top: 116px;
  left: 50%;
  width: calc(100% - 5px);
  height: 359px;
  overflow: hidden;
  transform: translateX(-50%);
}

.video-gallery-slider .swiper-wrapper {
  align-items: center;
  height: 309px;
}

.video-gallery-slide {
  display: grid;
  place-items: center;
  width: 516px;
  height: 309px;
}

.video-card {
  position: relative;
  display: block;
  width: 347px;
  height: 217px;
  overflow: hidden;
  border-radius: 21px;
  opacity: .68;
  box-shadow: 0 18px 35px rgba(0, 0, 0, .18);
  transition: width .5s cubic-bezier(.2, .75, .2, 1), height .5s cubic-bezier(.2, .75, .2, 1), opacity .4s ease, box-shadow .4s ease, transform .35s ease;
}

.video-gallery-slide.swiper-slide-active .video-card {
  width: 516px;
  height: 309px;
  opacity: 1;
  box-shadow: 0 25px 55px rgba(0, 0, 0, .3), 0 0 0 1px rgba(255, 255, 255, .06);
}

.video-card:hover,
.video-card:focus-visible {
  box-shadow: 0 24px 60px rgba(146, 9, 242, .26);
  transform: translateY(-4px);
  outline: 0;
}

.video-card__media {
  position: absolute;
  inset: 0;
  display: block;
  overflow: hidden;
  border-radius: inherit;
}

.video-card__media > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  transition: transform .7s ease;
}

.video-card--center .video-card__media > img {
  top: 0;
  height: 250%;
}

.video-card--right .video-card__media > img {
  top: -75%;
  height: 250%;
}

.video-card:hover .video-card__media > img,
.video-card:focus-visible .video-card__media > img {
  transform: scale(1.035);
}

.video-card__play {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  width: 78px;
  height: 78px;
  opacity: 0;
  transform: translate(-50%, -50%) scale(.75);
  transition: opacity .35s ease, transform .45s cubic-bezier(.2, .75, .2, 1), filter .3s ease;
}

.video-gallery-slide.swiper-slide-active .video-card__play {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

.video-gallery-slide.swiper-slide-active .video-card:hover .video-card__play,
.video-gallery-slide.swiper-slide-active .video-card:focus-visible .video-card__play {
  filter: drop-shadow(0 8px 18px rgba(146, 9, 242, .4));
  transform: translate(-50%, -50%) scale(1.08);
}

.video-gallery-pagination {
  bottom: 0 !important;
  left: 50% !important;
  display: flex;
  direction: ltr;
  justify-content: center;
  gap: 3px;
  width: auto !important;
  transform: translateX(-50%);
}

.video-gallery-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  margin: 0 !important;
  background: rgba(255, 255, 255, .3);
  opacity: 1;
  transition: background .25s ease, transform .25s ease;
}

.video-gallery-pagination .swiper-pagination-bullet-active {
  background: #fff;
  transform: scale(1.02);
}

.gallery-cta {
  position: relative;
  z-index: 1;
  margin-top: 120px;
}

.gallery-footer {
  margin-top: 120px;
}

.fancybox__container {
  --fancybox-bg: rgba(12, 8, 30, .96);
  /* Fancybox controls/navigation keep the library's physical LTR geometry. */
  direction: ltr;
  font-family: var(--body-font);
}

.fancybox__caption {
  color: #fff;
  direction: rtl;
  font-size: 16px;
  text-align: center;
}

.arcadium-lang-en .fancybox__caption {
  direction: ltr;
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  .photo-gallery-slider {
    width: 1600px;
  }

  .video-gallery-slide {
    width: 40vw;
  }

  .video-card {
    width: 28vw;
  }

  .video-gallery-slide.swiper-slide-active .video-card {
    width: 40vw;
  }
}

@media (max-width: 991.98px) {
  .gallery-page .desktop-nav > a.is-active {
    color: #420c6f;
  }

  .gallery-page .breadcrumb-nav {
    font-size: 16px;
  }

  .photo-gallery-section {
    height: 320px;
  }

  .gallery-section__heading {
    top: 0;
    width: calc(100% - 36px);
    height: 72px;
  }

  .gallery-section__heading h2 {
    font-size: 48px;
    line-height: 1.35;
    letter-spacing: 0;
  }

  .gallery-controls {
    top: 13px;
  }

  .photo-gallery-slider {
    top: 82px;
    width: 1300px;
    height: 220px;
  }

  .photo-gallery-slider .swiper-wrapper,
  .photo-gallery-slide {
    height: 220px;
  }

  .photo-gallery-slide a {
    width: calc(var(--photo-width) * .82);
    height: calc(var(--photo-height) * .82);
  }

  .video-gallery-section {
    width: calc(100% - 36px);
    height: 430px;
    margin-top: 76px;
  }

  .video-gallery-slider {
    top: 92px;
    width: calc(100% + 36px);
    height: 338px;
  }

  .video-gallery-slider .swiper-wrapper,
  .video-gallery-slide {
    height: 276px;
  }

  .video-gallery-slide {
    width: 440px;
  }

  .video-card {
    width: 280px;
    height: 175px;
  }

  .video-gallery-slide.swiper-slide-active .video-card {
    width: 440px;
    height: 264px;
  }

  .video-card__play {
    width: 68px;
    height: 68px;
  }

  .gallery-cta {
    margin-top: 76px;
  }

  .gallery-footer {
    margin-top: 68px;
  }
}

@media (max-width: 575.98px) {
  .gallery-page .breadcrumb-nav {
    font-size: 14px;
  }

  .gallery-page .breadcrumb-nav > span[aria-hidden="true"] {
    font-size: 17px;
  }

  .gallery-hero__content h1 {
    font-size: 42px;
  }

  .photo-gallery-section {
    height: 286px;
  }

  .gallery-section__heading {
    width: calc(100% - 28px);
    height: 62px;
  }

  .gallery-section__heading h2 {
    padding-top: 3px;
    font-size: 38px;
    line-height: 1.35;
  }

  .gallery-controls {
    top: 8px;
    gap: 8px;
  }

  .gallery-arrow,
  .gallery-arrow img {
    width: 36px;
    height: 36px;
  }

  .gallery-arrow {
    flex-basis: 36px;
  }

  .photo-gallery-slider {
    top: 70px;
    width: 950px;
    height: 198px;
  }

  .photo-gallery-slider .swiper-wrapper,
  .photo-gallery-slide {
    height: 198px;
  }

  .photo-gallery-slide a {
    width: calc(var(--photo-width) * .68);
    height: calc(var(--photo-height) * .68);
  }

  .photo-gallery-slide a:hover,
  .photo-gallery-slide a:focus-visible {
    --photo-lift: -4px;
    --photo-scale: 1.015;
  }

  .video-gallery-section {
    width: calc(100% - 28px);
    height: 365px;
    margin-top: 58px;
  }

  .video-gallery-slider {
    top: 76px;
    width: calc(100% + 28px);
    height: 289px;
  }

  .video-gallery-slider .swiper-wrapper,
  .video-gallery-slide {
    height: 230px;
  }

  .video-gallery-slide {
    width: min(330px, calc(100vw - 40px));
  }

  .video-card {
    width: 210px;
    height: 132px;
    border-radius: 15px;
  }

  .video-gallery-slide.swiper-slide-active .video-card {
    width: min(330px, calc(100vw - 40px));
    height: 210px;
  }

  .video-card__play {
    width: 58px;
    height: 58px;
  }

  .video-gallery-pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
  }

  .video-gallery-pagination {
    gap: 2px;
  }

  .gallery-cta {
    margin-top: 58px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gallery-page *,
  .gallery-page *::before,
  .gallery-page *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}


/* Figma 867:602 exact desktop anchors + premium interaction polish. */
@media (min-width: 1200px) {
  .photo-gallery-section .gallery-controls { left: -2px; }
  .video-gallery-section { left: 4px; }
  .gallery-cta { left: -9.5px; }
  .gallery-footer { margin-bottom: 9px; }
}
@media (max-width: 991.98px) {
  .gallery-main::before { top: 180px; right: -90px; }
}

@media (min-width: 1200px) {
  body.gallery-page { padding-bottom: 9px; }
  .gallery-footer { margin-bottom: 0; }
}


/* =========================================================
   V20 MERGED SOURCE: Games
   ORIGINAL: assets/css/games.css
========================================================= */

/* =========================================================
   Arcadium — Games page
   Figma frame: 1:10
   Reference: 1440 x 2507

   Shared components:
   - Header / Hero / Drawer = contact.css
   - Game cards = style.css
   - CTA / Footer = style.css
========================================================= */


.games-page {
    background: #130f28;
}


.games-page .games-hero__content p {
    max-width: 815px;
}


/* =========================================================
   MAIN
========================================================= */

.games-page .games-main {
    position: relative;

    display: flow-root;

    overflow: hidden;

    isolation: isolate;

    background: #130f28;
}


.games-page .games-main::after {
    content: "";

    position: absolute;
    z-index: 0;

    top: -64px;
    right: -341px;

    width: 553px;
    height: 1062px;

    background: radial-gradient(ellipse 76.5px 331px at center, #B12CCC 99%, transparent 100%);
  filter: blur(100px);

    pointer-events: none;
}


.games-page .games-main > section {
    position: relative;

    z-index: 1;
}


/* =========================================================
   GAMES CATALOGUE

   Figma desktop:
   Hero end = 595
   Title     = 629
   Row 1     = 755
   Row 2     = 1129
   CTA       = 1575
========================================================= */

.games-page .games-page__catalog {
    padding:
            34px
            0
            0;
}


.games-page .games-page__catalog .games-grid {
    margin-top: 56px;
}


/* =========================================================
   FIRST ROW
========================================================= */

.games-page .games-page__catalog
.games-primary-grid {
    gap: 24px;
}


/* =========================================================
   EXTRA ROW
   3 cards × 400px + 2 × 24px gap
========================================================= */

.games-page .games-extra-grid {
    display: grid;

    grid-template-columns:
    repeat(
      4,
      minmax(0, 1fr)
    );

    gap: 24px;

    margin-top: 48px;
 
}


.games-page .games-extra-grid
.game-card {
    direction: rtl;
}


/* =========================================================
   EXTRA ROW CARD MEDIA
========================================================= */

.games-page
.game-card__media {
    position: relative;
}


/* =========================================================
   SHUFFLEBOARD IMAGE

   Original image is vertical.
   Crop it into the exact 151px media area.
========================================================= */

.games-page
.game-card--shuffleboard
.game-card__photo {
    position: absolute;

    top: -37.35%;
    left: 0;

    width: 100%;
    height: auto;

    max-width: none;

    object-fit: initial;
}


/* =========================================================
   CATCH STICK IMAGE

   Archive crop rules. The rejected faded legacy asset is no
   longer referenced by runtime code as of V1.0.25.
========================================================= */

.games-page
.game-card--catch-stick
.game-card__photo {
    width: 100%;
    height: 100%;

    object-fit: cover;

    object-position:
            center
            center;
}


/* =========================================================
   BALL THROWER IMAGE
========================================================= */

.games-page
.game-card--ball-thrower
.game-card__photo {
    position: absolute;

    top: -57.05%;
    left: 0;

    width: 100%;
    height: stretch;

    max-width: none;

    object-fit: initial;
}


/* =========================================================
   NEW STICKERS

   Reuses existing .game-card__sticker from style.css.
========================================================= */


/* Shuffleboard / puck */

.games-page
.game-card__sticker--shuffleboard {
    width: 72px;
    height: 72px;

    margin-left: 18px;

    transform:
            translateY(-40%)
            rotate(-18deg);
}


/* Catch Stick / reflex */

.games-page
.game-card__sticker--catch {
    width: 61px;
    height: 61px;

    margin-left: 24px;

    transform:
            translateY(-39%)
            rotate(-17deg);
}


/* Ball Thrower */

.games-page
.game-card__sticker--thrower {
    width: 66px;
    height: 66px;

    margin-left: 18px;

    transform:
            translateY(-42%)
            rotate(-8deg);
}


/* =========================================================
   STICKER HOVER

   Same visual behavior as Home stickers.
========================================================= */

.games-page
.game-card--shuffleboard:hover
.game-card__sticker--shuffleboard,
.games-page
.game-card--shuffleboard:focus-within
.game-card__sticker--shuffleboard,
.games-page
.game-card--shuffleboard.is-hovered
.game-card__sticker--shuffleboard {
    transform:
            translate(-8px, -142%)
            rotate(-10deg)
            scale(.76);

    filter:
            drop-shadow(
                    0
                    9px
                    10px
                    rgba(146, 9, 242, .25)
            );
}


.games-page
.game-card--catch-stick:hover
.game-card__sticker--catch,
.games-page
.game-card--catch-stick:focus-within
.game-card__sticker--catch,
.games-page
.game-card--catch-stick.is-hovered
.game-card__sticker--catch {
    transform:
            translate(-8px, -153%)
            rotate(-10deg)
            scale(.82);

    filter:
            drop-shadow(
                    0
                    9px
                    10px
                    rgba(146, 9, 242, .25)
            );
}


.games-page
.game-card--ball-thrower:hover
.game-card__sticker--thrower,
.games-page
.game-card--ball-thrower:focus-within
.game-card__sticker--thrower,
.games-page
.game-card--ball-thrower.is-hovered
.game-card__sticker--thrower {
    transform:
            translate(-8px, -145%)
            rotate(0deg)
            scale(.76);

    filter:
            drop-shadow(
                    0
                    9px
                    10px
                    rgba(146, 9, 242, .25)
            );
}


/* =========================================================
   IMAGE HOVER

   Because two images use custom absolute crops,
   their hover transform must retain positioning.
========================================================= */

.games-page
.game-card--shuffleboard:hover
.game-card__photo,
.games-page
.game-card--shuffleboard:focus-within
.game-card__photo,
.games-page
.game-card--shuffleboard.is-hovered
.game-card__photo,
.games-page
.game-card--ball-thrower:hover
.game-card__photo,
.games-page
.game-card--ball-thrower:focus-within
.game-card__photo,
.games-page
.game-card--ball-thrower.is-hovered
.game-card__photo {
    transform:
            scale(1.045);

    filter:
            saturate(1.08);
}


/* =========================================================
   CTA
========================================================= */

.games-page .games-cta {
    margin-top: 120px;
}


/* =========================================================
   FOOTER
========================================================= */


/* =========================================================
   REVEAL
========================================================= */

.games-page-reveal {
    opacity: 1;

    transform: none;
}


.games-page .games-reveal-ready
.games-page-reveal {
    opacity: 0;

    transform:
            translateY(24px);

    transition:
            opacity .65s ease,
            transform .7s cubic-bezier(.2, .75, .2, 1);
}


.games-page .games-reveal-ready
.games-page-reveal.is-visible {
    opacity: 1;

    transform: translateY(0);
}


/* =========================================================
   DESKTOP
========================================================= */

@media (min-width: 1281px) {

    .games-page .games-page__catalog
    .games-primary-grid {
        transform:
                translateX(-10px);
    }


    .games-page .games-page__catalog
    .section-title {
        transform:
                translateX(-8px);
    }

}


/* =========================================================
   LAPTOP
========================================================= */

@media
(max-width: 1280px)
and
(min-width: 992px) {

    .games-page .games-page__catalog {
        padding-top: 42px;
    }


    .games-page .games-page__catalog
    .games-grid {
        margin-top: 42px;
    }


    .games-page .games-extra-grid {
        margin-top: 32px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

    .games-page .games-main::after {
        top: 160px;
        right: -410px;

        opacity: .7;
    }


    .games-page .games-page__catalog {
        padding:
                52px
                18px
                0;
    }


    .games-page .games-page__catalog
    .section-shell {
        width: 100%;
    }


    .games-page .games-page__catalog
    .games-grid {
        margin-top: 32px;
    }


    .games-page .games-page__catalog
    .games-primary-grid,
.games-page .games-extra-grid {
        grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      );

        gap: 18px;
    }


    .games-page .games-extra-grid {
        margin-top: 18px;

        direction: rtl;
    }


    .games-page .games-cta {
        margin-top: 80px;
    }


    .games-page .games-footer {
        margin-top: 68px;
    }


    /* Stickers */

    .games-page
    .game-card__sticker--shuffleboard {
        width: 60px;
        height: 60px;
    }


    .games-page
    .game-card__sticker--catch {
        width: 52px;
        height: 52px;
    }


    .games-page
    .game-card__sticker--thrower {
        width: 56px;
        height: 56px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575.98px) {

    .games-page .games-page__catalog {
        padding:
                42px
                14px
                0;
    }


    .games-page .games-page__catalog
    .games-grid {
        margin-top: 28px;
    }


    .games-page .games-page__catalog
    .games-primary-grid,
.games-page .games-extra-grid {
        gap: 10px;
    }


    /* =======================================================
       New Stickers — Mobile
    ======================================================= */

    .games-page
    .game-card__sticker--shuffleboard {
        width: 43px;
        height: 43px;

        margin-left: 6px;

        transform:
                translateY(-40%)
                rotate(-18deg);
    }


    .games-page
    .game-card__sticker--catch {
        width: 40px;
        height: 40px;

        margin-left: 7px;

        transform:
                translateY(-39%)
                rotate(-17deg);
    }


    .games-page
    .game-card__sticker--thrower {
        width: 43px;
        height: 43px;

        margin-left: 5px;

        transform:
                translateY(-42%)
                rotate(-8deg);
    }


    /* =======================================================
       Mobile Sticker Hover
    ======================================================= */

    .games-page
    .game-card--shuffleboard:hover
    .game-card__sticker--shuffleboard,
.games-page
    .game-card--shuffleboard:focus-within
    .game-card__sticker--shuffleboard,
.games-page
    .game-card--shuffleboard.is-hovered
    .game-card__sticker--shuffleboard {
        transform:
                translate(-3px, -92%)
                rotate(-10deg)
                scale(.82);
    }


    .games-page
    .game-card--catch-stick:hover
    .game-card__sticker--catch,
.games-page
    .game-card--catch-stick:focus-within
    .game-card__sticker--catch,
.games-page
    .game-card--catch-stick.is-hovered
    .game-card__sticker--catch {
        transform:
                translate(-3px, -100%)
                rotate(-10deg)
                scale(.86);
    }


    .games-page
    .game-card--ball-thrower:hover
    .game-card__sticker--thrower,
.games-page
    .game-card--ball-thrower:focus-within
    .game-card__sticker--thrower,
.games-page
    .game-card--ball-thrower.is-hovered
    .game-card__sticker--thrower {
        transform:
                translate(-3px, -96%)
                rotate(0)
                scale(.8);
    }


    .games-page
    .game-hover-copy
    span {
        white-space: normal;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .games-page-reveal,
.games-page
    .game-card,
.games-page
    .game-card__photo,
.games-page
    .game-card__head
    h3,
.games-page
    .game-card__head
    > img,
.games-page
    .game-card__sticker,
.games-page
    .game-hover-copy,
.games-page
    .basketball-copy {
        transition: none !important;
    }


    .games-page .games-reveal-ready
    .games-page-reveal {
        opacity: 1;

        transform: none;
    }

}


/* =========================================================
   V20 MERGED SOURCE: Single game / Basketball
   ORIGINAL: assets/css/basketball.css
========================================================= */

/* =========================================================
   Arcadium — Single Game / Basketball
   Figma frame: 2:31 — 1440 x 5229

   Reused:
   Header / Hero / Breadcrumb = contact.css
   Event cards               = style.css
   Game cards                = style.css
   FAQ                       = style.css
   CTA / Footer              = style.css
   Gallery geometry          = works.css
========================================================= */


.single-game-page {
    background: #130f28;
}


/* Active Games navigation */

.single-game-page
.desktop-nav > a.is-active {
    color: #fff;

    font-size: 24px;
    font-weight: 400;
}


/* Hero text */

.single-game-page .single-game-hero__content p {
    max-width: 815px;
}


/* =========================================================
   MAIN
========================================================= */

.single-game-page .single-game-main {
    position: relative;

    display: flow-root;

    overflow: hidden;

    isolation: isolate;

    background: #130f28;
}


/* =========================================================
   BACKGROUND GLOWS
========================================================= */

.single-game-page .single-game-main::before,
.single-game-page .single-game-main::after {
    content: "";

    position: absolute;
    z-index: 0;

    width: 553px;
    height: 1062px;

    background: radial-gradient(ellipse 76.5px 331px at center, #B12CCC 99%, transparent 100%);
  filter: blur(100px);

    pointer-events: none;
}


/* Right glow */

.single-game-page .single-game-main::before {
    top: -64px;
    right: -341px;
}


/* Left glow */

.single-game-page .single-game-main::after {
    top: 606px;
    left: -331px;
}


.single-game-page .single-game-main > section {
    position: relative;

    z-index: 1;
}


/* =========================================================
   INTRO
   Figma node: 2:270

   Page Y = 657
   Width  = 1220
   Height = 345

   Image  = 664
   Gap    = 52
   Copy   = 504 / text 404
========================================================= */

.single-game-page .game-intro {
    display: grid;

    grid-template-columns:
    664px
    504px;

    direction: ltr;

    align-items: center;

    gap: 52px;

    width:
            min(
                    calc(100% - 48px),
                    1220px
            );

    height: 345px;

    margin:
            62px
            auto
            0;
}


/* Image */

.single-game-page .game-intro__media {
    width: 100%;
    height: 345px;

    overflow: hidden;

    border-radius: 34px;
}


.single-game-page .game-intro__media img {
    width: 100%;
    height: 100%;

    max-width: none;

    object-fit: cover;

    /*
     * Matches the Figma crop:
     * scoreboard + hand + hoop.
     */
    object-position:
            center
            32%;

    transition:
            transform
            .8s
            cubic-bezier(.2, .75, .2, 1),

            filter
            .45s
            ease;
}


.single-game-page .game-intro:hover
.game-intro__media img {
    transform:
            scale(1.025);

    filter:
            saturate(1.05);
}


/* Copy */

.single-game-page .game-intro__copy {
    direction: rtl;

    width: 404px;

    margin-left: auto;

    color: #fff;

    text-align: right;
}


.single-game-page .game-intro__copy p {
    margin: 0;

    font-size: 20px;
    font-weight: 300;

    line-height: 1.8;
}


/* =========================================================
   WHY BASKETBALL
   Figma node: 2:143

   Page Y = 1122
   Width  = 1241
   Height = 436
========================================================= */

.single-game-page .why-game {
    width:
            min(
                    calc(100% - 48px),
                    1241px
            );

    height: 436px;

    margin:
            120px
            auto
            0;

    text-align: center;
}


/* =========================================================
   WHY TITLE
========================================================= */

.single-game-page .why-game__title {
    display: flex;

    direction: rtl;

    align-items: center;
    justify-content: center;

    gap: 10px;

    width: 100%;
    height: 93px;

    margin: 0;

    color: #fff;

    font-family:
            var(--display-font);

    font-size: 64px;
    font-weight: 400;

    line-height: 1.2;

    letter-spacing:
            -.96px;

    white-space: nowrap;
}


/* Figma title illustration */

.single-game-page .why-game__title img {
    flex:
            0
            0
            116px;

    width: 116px;
    height: 93px;

    object-fit: contain;

    /*
     * Same horizontal mirror found
     * in the Figma node.
     */
    transform:
            scaleX(-1);

    transition:
            transform
            .45s
            cubic-bezier(.2, .75, .2, 1);
}


.single-game-page .why-game:hover
.why-game__title img {
    transform:
            scaleX(-1)
            rotate(-4deg)
            translateY(-3px);
}


/* =========================================================
   WHY CARDS
========================================================= */

.single-game-page .why-game__cards {
    position: relative;

    display: grid;

    grid-template-columns:
    repeat(
      3,
      minmax(0, 399px)
    );

    direction: rtl;

    gap: 20px;

    width: 1237px;
    max-width: 100%;

    height: 195px;

    margin:
            52px
            auto
            0;
}


.single-game-page .why-card {
    position: relative;

    height: 195px;

    padding:
            24px
            20px
            20px;

    overflow: hidden;

    border-radius: 16px;

    background: #fff;

    color: #130f28;

    text-align: right;

    transition:
            transform .3s ease,
            box-shadow .3s ease;
}


.single-game-page .why-card::before {
    content: "";

    position: absolute;

    inset: 0;

    background:
            linear-gradient(
                    145deg,
                    rgba(146, 9, 242, .08),
                    transparent 42%
            );

    opacity: 0;

    pointer-events: none;

    transition:
            opacity .3s ease;
}


.single-game-page .why-card:hover {
    transform:
            translateY(-6px);

    box-shadow:
            0
            18px
            42px
            rgba(146, 9, 242, .2);
}


.single-game-page .why-card:hover::before {
    opacity: 1;
}


.single-game-page .why-card h3 {
    position: relative;
    z-index: 1;

    margin: 0;

    font-family:
            var(--display-font);

    font-size: 36px;
    font-weight: 400;

    line-height: 1.2;
}


.single-game-page .why-card p {
    position: relative;
    z-index: 1;

    margin:
            29px
            0
            0;

    font-size: 20px;
    font-weight: 300;

    line-height: 1.2;
}


/* =========================================================
   WHY CARD BALL SEPARATORS
========================================================= */

.single-game-page .why-game__divider {
    position: absolute;
    z-index: 4;

    top: 61px;

    display: grid;

    place-items: center;

    width: 70.24px;
    height: 70.24px;

    border-radius: 50%;

    background: #121028;

    transform:
            translateX(-50%)
            rotate(-22.77deg);

    pointer-events: none;
}


/*
 * Exact card-divider centers from Figma.
 */

.single-game-page .why-game__divider--one {
    left: 33.39%;
}


.single-game-page .why-game__divider--two {
    left: 67.26%;
}


.single-game-page .why-game__divider img {
    width: 53.66px;
    height: 53.66px;

    object-fit: contain;
}


/* =========================================================
   WHY CTA
========================================================= */

.single-game-page .why-game__button {
    display: grid;

    place-items: center;

    width: 283px;
    height: 48px;

    margin:
            48px
            auto
            0;

    border:
            1px
            solid
            #9209f2;

    border-radius: 38px;

    background: #9209f2;

    color: #f9f9f9;

    font-size: 20px;
    font-weight: 700;

    line-height: 1.2;

    transition:
            transform .25s ease,
            background .25s ease,
            box-shadow .3s ease;
}


.single-game-page .why-game__button:hover,
.single-game-page .why-game__button:focus-visible {
    background: #a91bff;

    color: #fff;

    transform:
            translateY(-3px);

    box-shadow:
            0
            12px
            28px
            rgba(146, 9, 242, .32);

    outline: 0;
}


/* =========================================================
   SUITABLE FOR
   Figma node: 2:161

   Reuses .event-card from Home.

   Page Y = 1678
   Width  = 959.277
   Height = 532.47
========================================================= */

.single-game-page .single-game-events {
    width:
            min(
                    calc(100% - 48px),
                    959.277px
            );

    height: 532.47px;

    margin:
            120px
            auto
            0;
}


/* Shared section heading */

.single-game-page .single-game-section-title {
    margin: 0;

    color: #fff;

    font-family:
            var(--display-font);

    font-size: 64px;
    font-weight: 400;

    line-height: 1.2;

    letter-spacing:
            -.96px;

    text-align: center;
}


/*
 * Figma title wrapper = 93px
 */

.single-game-page .single-game-events >
.single-game-section-title {
    height: 93px;

    padding-top: 16px;
}


/* Cards begin 52px below title */

.single-game-page .single-game-events
.events-grid {
    margin-top: 52px;
}


/*
 * 959.277 total
 * minus 64 gaps
 * = 895.277
 * / 3
 * = 298.425px each.
 */

.single-game-page .single-game-events
.events-grid >
.cards-grid {
    grid-template-columns:
    repeat(
      3,
      minmax(0, 1fr)
    );

    gap: 32px;

    direction: ltr;
}


.single-game-page .single-game-events
.event-card {
    min-height:
            387.47px;
}


/* =========================================================
   PHOTO GALLERY
   Figma node: 2:192

   Uses the same layout system as
   Works video-gallery.

   Page Y = 2330.47
   Width  = 1251
   Height = 488
========================================================= */

.single-game-page .single-game-gallery.video-gallery-section {
    width:
            min(
                    calc(100% - 48px),
                    1251px
            );

    height: 488px;

    margin:
            120px
            auto
            0;
}


/* =========================================================
   GALLERY HEADING
========================================================= */

.single-game-page .single-game-gallery
.gallery-section__heading {
    top: 0;

    width: 100%;
    height: 77px;
}


.single-game-page .single-game-gallery
.gallery-section__heading h2 {
    font-size: 64px;

    line-height: 1.2;
}


/* Figma controls sit at Y 0 */

.single-game-page .single-game-gallery
.gallery-controls {
    top: 0;
}


/* =========================================================
   GALLERY SLIDER
========================================================= */

.single-game-page .single-game-gallery
.video-gallery-slider {
    top: 129px;

    width: 100%;
    height: 359px;
}


/*
 * Works video gallery has special
 * vertical crops for its video thumbnails.
 *
 * This is a PHOTO gallery, so all slides use
 * normal cover positioning.
 */

.single-game-page .single-game-gallery
.video-card__media > img,
.single-game-page .single-game-gallery
.video-card--center
.video-card__media > img,
.single-game-page .single-game-gallery
.video-card--left
.video-card__media > img,
.single-game-page .single-game-gallery
.video-card--right
.video-card__media > img {
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    object-position: center;
}


/*
 * The portrait basketball asset needs
 * its own crop.
 */

.single-game-page .single-game-gallery
.video-gallery-slide:first-child
.video-card__media > img {
    object-position:
            center
            32%;
}


/* Small polished hover overlay */

.single-game-page .single-game-gallery
.video-card::after {
    content: "";

    position: absolute;
    z-index: 2;

    inset: 0;

    border-radius: inherit;

    background:
            linear-gradient(
                    180deg,
                    transparent 55%,
                    rgba(19, 15, 40, .12)
            );

    opacity: 0;

    pointer-events: none;

    transition:
            opacity .3s ease;
}


.single-game-page .single-game-gallery
.video-card:hover::after,
.single-game-page .single-game-gallery
.video-card:focus-visible::after {
    opacity: 1;
}


/* =========================================================
   RELATED GAMES
   Figma node: 2:212

   Reuses the same .game-card component
   used on Home and Games.

   Page Y = 2938.47
   Height = 554.55
========================================================= */

.single-game-page .related-games {
    display: flex;

    flex-direction: column;

    align-items: center;

    width:
            min(
                    calc(100% - 48px),
                    1248px
            );

    height: 554.55px;

    margin:
            120px
            auto
            0;
}


.single-game-page .related-games >
.single-game-section-title {
    width: 100%;
    height: 77px;
}


.single-game-page .related-games
.games-grid {
    width: 100%;

    margin-top: 52px;
}


/*
 * Exact Figma gap for this row.
 */

.single-game-page .related-games
.games-grid >
.cards-grid {
    gap: 18px;
}


/* =========================================================
   BALL THROWER
   Same card naming used on Games page.
========================================================= */

.single-game-page .related-games
.game-card--ball-thrower
.game-card__photo {
    object-position:
            center
            22%;
}


.single-game-page .related-games
.game-card__sticker--thrower {
    width: 64px;
    height: 64px;

    margin-left: 16px;

    transform:
            translateY(-42%)
            rotate(-10deg);
}


.single-game-page .related-games
.game-card--ball-thrower:hover
.game-card__sticker--thrower,
.single-game-page .related-games
.game-card--ball-thrower:focus-within
.game-card__sticker--thrower,
.single-game-page .related-games
.game-card--ball-thrower.is-hovered
.game-card__sticker--thrower {
    transform:
            translate(-8px, -145%)
            rotate(0)
            scale(.76);

    filter:
            drop-shadow(
                    0
                    9px
                    10px
                    rgba(146, 9, 242, .25)
            );
}


/* =========================================================
   V1.0.25 — RELATED GAME STICKERS

   Shuffleboard / Catch Stick / Ball Thrower were originally
   sized only under .games-page. Related Games reuses the same
   card renderer, so it must reuse the same sticker geometry too.
========================================================= */

.single-game-page .related-games
.game-card__sticker--shuffleboard {
    width: 72px;
    height: 72px;
    margin-left: 18px;
    transform: translateY(-40%) rotate(-18deg);
}

.single-game-page .related-games
.game-card__sticker--catch {
    width: 61px;
    height: 61px;
    margin-left: 24px;
    transform: translateY(-39%) rotate(-17deg);
}

.single-game-page .related-games
.game-card--shuffleboard:hover .game-card__sticker--shuffleboard,
.single-game-page .related-games
.game-card--shuffleboard:focus-within .game-card__sticker--shuffleboard,
.single-game-page .related-games
.game-card--shuffleboard.is-hovered .game-card__sticker--shuffleboard {
    transform: translate(-8px, -142%) rotate(-10deg) scale(.76);
    filter: drop-shadow(0 9px 10px rgba(146, 9, 242, .25));
}

.single-game-page .related-games
.game-card--catch-stick:hover .game-card__sticker--catch,
.single-game-page .related-games
.game-card--catch-stick:focus-within .game-card__sticker--catch,
.single-game-page .related-games
.game-card--catch-stick.is-hovered .game-card__sticker--catch {
    transform: translate(-8px, -153%) rotate(-10deg) scale(.82);
    filter: drop-shadow(0 9px 10px rgba(146, 9, 242, .25));
}

/* =========================================================
   RELATED GAMES BUTTON
========================================================= */

.single-game-page .related-games
.section-button {
    flex:
            0
            0
            48px;

    margin-top: 52px;
}


/* =========================================================
   FAQ
   Figma node: 2:250

   Uses shared FAQ styles + faq.js.
========================================================= */

.single-game-page .single-game-faq {
    margin-top: 120px;
}


/*
 * Figma title = 64px / 1.35
 * ≈ 86px visual height.
 */

.single-game-page .single-game-faq
.section-title {
    line-height: 1.35;
}


/*
 * Figma open answer width = 1056px.
 */

.single-game-page .single-game-faq
.faq-answer {
    width:
            min(
                    100%,
                    1056px
            );
}


.single-game-page .single-game-faq
.faq-item.is-open
.faq-answer {
    max-height: 120px;
}


/* =========================================================
   CTA / FOOTER
========================================================= */

.single-game-page .single-game-cta,
.single-game-page .single-game-footer {
    position: relative;

    z-index: 1;
}


/* =========================================================
   PAGE REVEAL MOTION
========================================================= */

.single-game-page .single-game-reveal {
    opacity: 1;

    transform: none;
}


.single-game-page .single-game-reveal-ready
.single-game-reveal {
    opacity: 0;

    transform:
            translateY(24px);

    transition:
            opacity
            .65s
            ease,

            transform
            .72s
            cubic-bezier(.2, .75, .2, 1);
}


.single-game-page .single-game-reveal-ready
.single-game-reveal.is-visible {
    opacity: 1;

    transform: none;
}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199.98px) {

    .single-game-page .game-intro,
.single-game-page .why-game,
.single-game-page .single-game-events,
.single-game-page .single-game-gallery.video-gallery-section,
.single-game-page .related-games {
        height: auto;
    }


    /* Intro */

    .single-game-page .game-intro {
        grid-template-columns:
      minmax(0, 1.25fr)
      minmax(0, .95fr);

        gap: 36px;

        margin-top: 54px;
    }


    .single-game-page .game-intro__media {
        height:
                clamp(
                        280px,
                        30vw,
                        345px
                );
    }


    .single-game-page .game-intro__copy {
        width: 100%;
    }


    /* Why */

    .single-game-page .why-game__cards {
        width: 100%;
        height: auto;
    }


    .single-game-page .why-card {
        height: auto;

        min-height: 195px;
    }


    /* Events */

    .single-game-page .single-game-events
    .event-card {
        min-height: 387px;
    }


    /* Gallery */

    .single-game-page .single-game-gallery.video-gallery-section {
        height: 455px;
    }


    .single-game-page .single-game-gallery
    .video-gallery-slider {
        height: 326px;
    }


    /* Related */

    .single-game-page .related-games
    .section-button {
        margin-bottom: 0;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

    /* Background */

    .single-game-page .single-game-main::before {
        right: -410px;

        opacity: .72;
    }


    .single-game-page .single-game-main::after {
        top: 840px;
        left: -410px;

        opacity: .64;
    }


    /* =======================================================
       INTRO
    ======================================================= */

    .single-game-page .game-intro {
        grid-template-columns:
      1fr;

        gap: 28px;

        height: auto;

        margin-top: 48px;
    }


    .single-game-page .game-intro__media {
        height:
                min(
                        52vw,
                        390px
                );
    }


    .single-game-page .game-intro__copy {
        width:
                min(
                        100%,
                        680px
                );

        margin-inline:
                auto;
    }


    .single-game-page .game-intro__copy p {
        font-size: 18px;

        line-height: 1.75;
    }


    /* =======================================================
       WHY
    ======================================================= */

    .single-game-page .why-game {
        margin-top: 84px;
    }


    .single-game-page .why-game__title {
        height: auto;

        font-size: 52px;

        white-space: normal;
    }


    .single-game-page .why-game__title img {
        flex-basis: 92px;

        width: 92px;
        height: 76px;
    }


    .single-game-page .why-game__cards {
        grid-template-columns:
      1fr;

        gap: 18px;

        margin-top: 38px;
    }


    .single-game-page .why-card {
        min-height: 170px;
    }


    .single-game-page .why-game__divider {
        display: none;
    }


    .single-game-page .why-game__button {
        margin-top: 30px;
    }


    /* =======================================================
       EVENTS
    ======================================================= */

    .single-game-page .single-game-events {
        width:
                min(
                        calc(100% - 36px),
                        760px
                );

        margin-top: 84px;
    }


    .single-game-page .single-game-events >
    .single-game-section-title {
        height: auto;

        padding-top: 0;
    }


    .single-game-page .single-game-events
    .events-grid {
        margin-top: 38px;
    }


    .single-game-page .single-game-events
    .events-grid >
    .cards-grid {
        grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      );

        gap: 18px;

        direction: rtl;
    }


    .single-game-page .single-game-events
    .event-card:last-child {
        grid-column:
                1 / -1;

        width:
                calc(50% - 9px);

        justify-self:
                center;
    }


    /* =======================================================
       GALLERY
    ======================================================= */

    .single-game-page .single-game-gallery.video-gallery-section {
        width:
                calc(100% - 36px);

        height: 430px;

        margin-top: 84px;
    }


    .single-game-page .single-game-gallery
    .gallery-section__heading {
        height: 70px;
    }


    .single-game-page .single-game-gallery
    .gallery-section__heading h2 {
        font-size: 52px;
    }


    .single-game-page .single-game-gallery
    .video-gallery-slider {
        top: 92px;

        width:
                calc(100% + 36px);

        height: 338px;
    }


    /* =======================================================
       RELATED GAMES
    ======================================================= */

    .single-game-page .related-games {
        width:
                calc(100% - 36px);

        margin-top: 84px;
    }


    .single-game-page .related-games >
    .single-game-section-title {
        height: auto;

        font-size: 52px;
    }


    .single-game-page .related-games
    .games-grid {
        margin-top: 38px;
    }


    .single-game-page .related-games
    .games-grid >
    .cards-grid {
        grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      );
    }


    .single-game-page .related-games
    .section-button {
        margin-top: 38px;
    }


    /* =======================================================
       FAQ
    ======================================================= */

    .single-game-page .single-game-faq {
        margin-top: 84px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575.98px) {

    /* =======================================================
       HERO
    ======================================================= */

    .single-game-page
    .breadcrumb-nav {
        flex-wrap: wrap;

        row-gap: 5px;

        font-size: 13px;
    }


    .single-game-page
    .breadcrumb-nav >
    span[aria-hidden="true"] {
        font-size: 16px;
    }


    .single-game-page .single-game-hero__content h1 {
        font-size: 44px;
    }


    .single-game-page .single-game-hero__content p {
        font-size: 16px;

        line-height: 1.7;
    }


    /* =======================================================
       INTRO
    ======================================================= */

    .single-game-page .game-intro {
        width:
                calc(100% - 28px);

        margin-top: 38px;
    }


    .single-game-page .game-intro__media {
        height: 230px;

        border-radius: 22px;
    }


    .single-game-page .game-intro__copy p {
        font-size: 16px;

        line-height: 1.75;
    }


    /* =======================================================
       WHY
    ======================================================= */

    .single-game-page .why-game {
        width:
                calc(100% - 28px);

        margin-top: 68px;
    }


    .single-game-page .why-game__title {
        gap: 5px;

        font-size: 38px;
    }


    .single-game-page .why-game__title img {
        flex-basis: 64px;

        width: 64px;
        height: 56px;
    }


    .single-game-page .why-game__cards {
        margin-top: 28px;
    }


    .single-game-page .why-card {
        min-height: 154px;

        padding:
                20px
                16px;

        border-radius: 14px;
    }


    .single-game-page .why-card h3 {
        font-size: 29px;
    }


    .single-game-page .why-card p {
        margin-top: 20px;

        font-size: 15px;

        line-height: 1.45;
    }


    .single-game-page .why-game__button {
        width:
                min(
                        100%,
                        260px
                );
    }


    /* =======================================================
       EVENTS
    ======================================================= */

    .single-game-page .single-game-events {
        width:
                calc(100% - 28px);

        margin-top: 68px;
    }


    .single-game-page .single-game-section-title,
.single-game-page .related-games >
    .single-game-section-title {
        font-size: 40px;
    }


    .single-game-page .single-game-events
    .events-grid {
        margin-top: 28px;
    }


    .single-game-page .single-game-events
    .events-grid >
    .cards-grid {
        grid-template-columns:
      1fr;

        gap: 14px;
    }


    .single-game-page .single-game-events
    .event-card:last-child {
        grid-column: auto;

        width: 100%;
    }


    .single-game-page .single-game-events
    .event-card {
        grid-template-rows:
      auto
      auto
      178px;

        min-height: 370px;
    }


    /* =======================================================
       GALLERY
    ======================================================= */

    .single-game-page .single-game-gallery.video-gallery-section {
        width:
                calc(100% - 28px);

        height: 365px;

        margin-top: 68px;
    }


    .single-game-page .single-game-gallery
    .gallery-section__heading {
        height: 62px;
    }


    .single-game-page .single-game-gallery
    .gallery-section__heading h2 {
        padding-top: 3px;

        font-size: 40px;

        line-height: 1.35;
    }


    .single-game-page .single-game-gallery
    .gallery-controls {
        top: 8px;
    }


    .single-game-page .single-game-gallery
    .video-gallery-slider {
        top: 76px;

        width:
                calc(100% + 28px);

        height: 289px;
    }


    /* =======================================================
       RELATED GAMES
    ======================================================= */

    .single-game-page .related-games {
        width:
                calc(100% - 28px);

        margin-top: 68px;
    }


    .single-game-page .related-games
    .games-grid {
        margin-top: 28px;
    }


    .single-game-page .related-games
    .games-grid >
    .cards-grid {
        gap: 10px;
    }


    .single-game-page .related-games
    .game-card__sticker--thrower {
        width: 43px;
        height: 43px;

        margin-left: 3px;
    }


    .single-game-page .related-games
    .game-card--ball-thrower:hover
    .game-card__sticker--thrower,
.single-game-page .related-games
    .game-card--ball-thrower:focus-within
    .game-card__sticker--thrower,
.single-game-page .related-games
    .game-card--ball-thrower.is-hovered
    .game-card__sticker--thrower {
        transform:
                translate(-3px, -96%)
                rotate(0)
                scale(.8);
    }


    .single-game-page .related-games
    .game-card__sticker--shuffleboard {
        width: 43px;
        height: 43px;
        margin-left: 6px;
        transform: translateY(-40%) rotate(-18deg);
    }

    .single-game-page .related-games
    .game-card__sticker--catch {
        width: 40px;
        height: 40px;
        margin-left: 7px;
        transform: translateY(-39%) rotate(-17deg);
    }

    .single-game-page .related-games
    .game-card--shuffleboard:hover .game-card__sticker--shuffleboard,
    .single-game-page .related-games
    .game-card--shuffleboard:focus-within .game-card__sticker--shuffleboard,
    .single-game-page .related-games
    .game-card--shuffleboard.is-hovered .game-card__sticker--shuffleboard {
        transform: translate(-3px, -92%) rotate(-10deg) scale(.82);
    }

    .single-game-page .related-games
    .game-card--catch-stick:hover .game-card__sticker--catch,
    .single-game-page .related-games
    .game-card--catch-stick:focus-within .game-card__sticker--catch,
    .single-game-page .related-games
    .game-card--catch-stick.is-hovered .game-card__sticker--catch {
        transform: translate(-3px, -100%) rotate(-10deg) scale(.86);
    }

    .single-game-page .related-games
    .section-button {
        margin-top: 30px;
    }


    /* =======================================================
       FAQ
    ======================================================= */

    .single-game-page .single-game-faq {
        width:
                calc(100% - 28px);

        margin-top: 68px;
    }


    .single-game-page .single-game-faq
    .section-title {
        font-size: 40px;
    }


    .single-game-page .single-game-faq
    .faq-item.is-open
    .faq-answer {
        max-height: 180px;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .single-game-page .single-game-reveal,
.single-game-page .game-intro__media img,
.single-game-page .why-game__title img,
.single-game-page .why-card,
.single-game-page .why-card::before,
.single-game-page .why-game__button,
.single-game-page .single-game-gallery
    .video-card,
.single-game-page .single-game-gallery
    .video-card__media > img,
.single-game-page
    .game-card,
.single-game-page
    .event-card {
        transition: none !important;

        animation: none !important;
    }


    .single-game-page .single-game-reveal-ready
    .single-game-reveal {
        opacity: 1;

        transform: none;
    }

}


/* =========================================================
   V20 MERGED SOURCE: Solutions
   ORIGINAL: assets/css/solutions.css
========================================================= */

/* =========================================================
   Arcadium — Event Solutions page
   Figma frame: 1:9 — Solutions
   Reference desktop: 1440 x 2729

   Reused from the project:
   - Header / Hero / Breadcrumb = contact.css
   - Event cards                = style.css
   - CTA / Footer               = style.css

   This file owns only:
   - Page layout
   - Active navigation
   - "What we provide" cards
   - Responsive placement
   - Lightweight page motion
========================================================= */


.solutions-page {
    background: #130f28;
}


/* =========================================================
   ACTIVE NAVIGATION
========================================================= */

.solutions-page
.contact-header
.nav-dropdown.is-current > button {
    color: #fff;

    font-size: 24px;
    font-weight: 400;

    transform:
            translateY(-2px);
}


.solutions-page
.contact-header
.nav-dropdown.is-current > button::after {
    transform:
            scaleX(1);
}


.solutions-page
.drawer-submenu-toggle.is-current {
    color: var(--pink);
}


/* =========================================================
   HERO
   Figma node 1:11
========================================================= */

.solutions-page .solutions-hero__content p {
    max-width: 815px;
}


/* =========================================================
   MAIN
========================================================= */

.solutions-page .solutions-main {
    position: relative;

    display: flow-root;

    overflow: hidden;

    isolation: isolate;

    background: #130f28;
}


/*
 * Right-side Figma glow.
 *
 * Visible Figma wrapper:
 * x = 1428
 * y = 731
 * 153 × 662
 *
 * Real blurred SVG bounds:
 * 553 × 1062
 */

.solutions-page .solutions-main::before {
    content: "";

    position: absolute;
    z-index: 0;

    top: -64px;
    right: -341px;

    width: 553px;
    height: 1062px;

    background: radial-gradient(ellipse 76.5px 331px at center, #B12CCC 99%, transparent 100%);
  filter: blur(100px);

    pointer-events: none;
}


.solutions-page .solutions-main > section {
    position: relative;

    z-index: 1;
}


/* =========================================================
   EVENT TYPES
   Figma node 1:118

   Hero end     = 595
   Section top  = 629
   Title        = 70px
   Cards top    = 749
   Cards height = 387.47px
   Next section = 1256

   IMPORTANT:
   .event-card itself is NOT redefined here.
   It remains the exact shared Home component.
========================================================= */

.solutions-page .solutions-events {
    margin-top: 34px;
}


/*
 * Figma:
 *
 * title height = 70px
 * card Y       = 120px
 *
 * 120 - 70 = 50px
 */

.solutions-page .solutions-events
.events-grid {
    margin-top: 50px;
}


/* =========================================================
   WHAT WE PROVIDE
   Figma node 1:154

   Top        = 1256
   Width      = 1248
   Title wrap = 77
   Gap        = 52
   Cards      = 4 × 297
   Gap        = 20
   Height     = 292
========================================================= */

.solutions-page .solutions-offer {
    width:
            min(
                    calc(100% - 48px),
                    1248px
            );

    margin:
            0
            auto
            120px;
}


.solutions-page .solutions-offer__heading {
    display: flex;

    align-items: flex-start;
    justify-content: center;

    width: 100%;

    min-height: 77px;
}


.solutions-page .solutions-offer__grid {
    display: grid;

    grid-template-columns:
    repeat(
      4,
      minmax(0, 1fr)
    );

    direction: ltr;

    gap: 20px;

    width: 100%;

    margin-top: 52px;
}


/* =========================================================
   SERVICE CARD
========================================================= */

.solutions-page .solution-feature-card {
    position: relative;

    min-width: 0;

    height: 292px;

    padding:
            20px
            19px;

    overflow: visible;

    border:
            1px
            solid
            #470c85;

    border-radius: 16px;

    background: #121028;

    box-shadow:
            inset
            4px
            4px
            4px
            rgba(255, 255, 255, .3);

    color: #fff;

    direction: rtl;

    text-align: right;

    cursor: default;

    transition:
            transform
            .32s
            cubic-bezier(.2, .75, .2, 1),

            border-color
            .28s
            ease,

            box-shadow
            .32s
            ease,

            background-color
            .28s
            ease;
}


.solutions-page .solution-feature-card--games {
    background:
            rgba(
                    18,
                    16,
                    40,
                    .82
            );
}


/* Subtle interactive purple glow */

.solutions-page .solution-feature-card::before {
    content: "";

    position: absolute;
    z-index: 0;

    inset: 0;

    border-radius: inherit;

    background:
            radial-gradient(
                    circle at 18% 92%,
                    rgba(163, 2, 250, .18),
                    transparent 34%
            );

    opacity: 0;

    pointer-events: none;

    transition:
            opacity
            .3s
            ease;
}


.solutions-page .solution-feature-card h3,
.solutions-page .solution-feature-card p {
    position: relative;

    z-index: 2;
}


/* =========================================================
   CARD TITLE
========================================================= */

.solutions-page .solution-feature-card h3 {
    min-height: 86px;

    margin: 0;

    font-family:
            var(--display-font);

    font-size: 36px;
    font-weight: 400;

    line-height: 1.2;

    letter-spacing:
            -.54px;
}


/* =========================================================
   CARD TEXT
========================================================= */

.solutions-page .solution-feature-card p {
    min-height: 48px;

    margin:
            12px
            0
            0;

    font-size: 20px;
    font-weight: 300;

    line-height: 1.2;
}


/* =========================================================
   CARD HOVER / FOCUS
========================================================= */

.solutions-page .solution-feature-card:hover,
.solutions-page .solution-feature-card:focus-visible,
.solutions-page .solution-feature-card.is-hovered {
    border-color:
            #9209f2;

    background-color:
            #17102f;

    transform:
            translateY(-7px);

    box-shadow:
            inset
            4px
            4px
            4px
            rgba(255, 255, 255, .3),

            0
            18px
            42px
            rgba(146, 9, 242, .22);

    outline: 0;
}


.solutions-page .solution-feature-card:hover::before,
.solutions-page .solution-feature-card:focus-visible::before,
.solutions-page .solution-feature-card.is-hovered::before {
    opacity: 1;
}


/* =========================================================
   SERVICE CARD ART

   Exact Figma sizes / bottom-left positioning.
========================================================= */

.solutions-page .solution-feature-card__art {
    position: absolute;
    z-index: 3;

    display: block;

    max-width: none;

    object-fit: contain;

    pointer-events: none;

    user-select: none;

    transform-origin:
            center;

    transition:
            transform
            .42s
            cubic-bezier(.2, .75, .2, 1),

            filter
            .32s
            ease;
}


/* =========================================================
   Supervising the event — Dart

   Figma:
   left = 13.5
   top  = 198
   size = 134
========================================================= */

.solutions-page .solution-feature-card__art--dart {
    left: 13.5px;
    top: 198px;

    width: 134px;
    height: 134px;

    transform:
            rotate(180deg)
            scaleY(-1);
}


/* =========================================================
   Custom experience — Bowling pin

   Figma:
   left = 12.5
   top  = 185
   95 × 142
========================================================= */

.solutions-page .solution-feature-card__art--pin {
    left: 12.5px;
    top: 185px;

    width: 95px;
    height: 142px;
}


/* =========================================================
   Transport / setup — Basketball

   Figma:
   left = 19.5
   top  = 207
   size = 111
========================================================= */

.solutions-page .solution-feature-card__art--ball {
    left: 19.5px;
    top: 207px;

    width: 111px;
    height: 111px;
}


/* =========================================================
   Suitable games — Target

   Figma:
   left = 19.5
   top  = 204
   size = 116
========================================================= */

.solutions-page .solution-feature-card__art--target {
    left: 19.5px;
    top: 204px;

    width: 116px;
    height: 116px;
}


/* =========================================================
   ART HOVER
========================================================= */

.solutions-page .solution-feature-card:hover
.solution-feature-card__art,
.solutions-page .solution-feature-card:focus-visible
.solution-feature-card__art,
.solutions-page .solution-feature-card.is-hovered
.solution-feature-card__art {
    filter:
            drop-shadow(
                    0
                    10px
                    13px
                    rgba(221, 55, 255, .28)
            );
}


/* Dart */

.solutions-page .solution-feature-card:hover
.solution-feature-card__art--dart,
.solutions-page .solution-feature-card:focus-visible
.solution-feature-card__art--dart,
.solutions-page .solution-feature-card.is-hovered
.solution-feature-card__art--dart {
    transform:
            translate(-5px, -6px)
            rotate(174deg)
            scaleY(-1)
            scale(1.03);
}


/* Bowling */

.solutions-page .solution-feature-card:hover
.solution-feature-card__art--pin,
.solutions-page .solution-feature-card:focus-visible
.solution-feature-card__art--pin,
.solutions-page .solution-feature-card.is-hovered
.solution-feature-card__art--pin {
    transform:
            translate(-4px, -8px)
            rotate(-5deg)
            scale(1.035);
}


/* Ball */

.solutions-page .solution-feature-card:hover
.solution-feature-card__art--ball,
.solutions-page .solution-feature-card:focus-visible
.solution-feature-card__art--ball,
.solutions-page .solution-feature-card.is-hovered
.solution-feature-card__art--ball {
    transform:
            translate(-4px, -7px)
            rotate(-8deg)
            scale(1.04);
}


/* Target */

.solutions-page .solution-feature-card:hover
.solution-feature-card__art--target,
.solutions-page .solution-feature-card:focus-visible
.solution-feature-card__art--target,
.solutions-page .solution-feature-card.is-hovered
.solution-feature-card__art--target {
    transform:
            translate(-4px, -7px)
            rotate(7deg)
            scale(1.035);
}


/* =========================================================
   CTA / FOOTER

   Figma:
   CTA    y = 1797
   CTA    = 1221 × 350
   Footer y = 2267
========================================================= */

.solutions-page .solutions-cta {
    margin-bottom: 0;
}


.solutions-page .solutions-footer {
    position: relative;

    z-index: 1;
}



/* =========================================================
   REVEAL ANIMATION
========================================================= */

.solutions-page .solutions-reveal {
    opacity: 1;

    transform: none;
}


.solutions-page .solutions-reveal-ready
.solutions-reveal {
    opacity: 0;

    transform:
            translateY(24px);

    transition:
            opacity
            .65s
            ease,

            transform
            .72s
            cubic-bezier(.2, .75, .2, 1);
}


.solutions-page .solutions-reveal-ready
.solutions-reveal.is-visible {
    opacity: 1;

    transform: none;
}


/* =========================================================
   EXACT DESKTOP REFERENCE
   1440px FIGMA
========================================================= */

@media (min-width: 1281px) {

    /*
     * Figma CTA:
     *
     * x = 100
     * width = 1221
     *
     * Mathematical center would be x = 109.5,
     * therefore the node is 9.5px to the left.
     */

    .solutions-page .solutions-cta {
        transform:
                translateX(-9.5px);
    }

}


/* =========================================================
   LAPTOP
========================================================= */

@media
(max-width: 1280px)
and
(min-width: 992px) {

    .solutions-page
    .contact-header
    .nav-dropdown.is-current > button {
        font-size: 22px;
    }


    .solutions-page .solutions-offer__grid {
        gap: 16px;
    }


    .solutions-page .solution-feature-card {
        height: 280px;

        padding-inline:
                16px;
    }


    .solutions-page .solution-feature-card h3 {
        font-size: 31px;
    }


    .solutions-page .solution-feature-card p {
        font-size: 17px;
    }


    .solutions-page .solution-feature-card__art--dart {
        width: 122px;
        height: 122px;
    }


    .solutions-page .solution-feature-card__art--pin {
        width: 84px;
        height: 126px;
    }


    .solutions-page .solution-feature-card__art--ball {
        width: 98px;
        height: 98px;
    }


    .solutions-page .solution-feature-card__art--target {
        width: 102px;
        height: 102px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

    /* Background glow */

    .solutions-page .solutions-main::before {
        top: 40px;

        right: -410px;

        opacity: .72;
    }


    /* =======================================================
       EVENTS

       Keep the same shared Home responsive card system.
    ======================================================= */

    .solutions-page .solutions-events {
        margin-top: 0;

        padding-top: 52px;
    }


    .solutions-page .solutions-events
    .events-grid {
        margin-top: 28px;
    }


    /* =======================================================
       OFFER
    ======================================================= */

    .solutions-page .solutions-offer {
        width:
                calc(100% - 36px);

        margin-bottom: 80px;
    }


    .solutions-page .solutions-offer__heading {
        min-height: auto;
    }


    .solutions-page .solutions-offer__grid {
        grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      );

        direction: rtl;

        gap:
                28px
                18px;

        margin-top: 38px;

        /*
         * Artwork deliberately exits
         * the cards at the bottom.
         */
        padding-bottom: 34px;
    }


    .solutions-page .solution-feature-card {
        height: 292px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575.98px) {

    /* =======================================================
       HERO
    ======================================================= */

    .solutions-page .solutions-hero__content h1 {
        font-size: 42px;
    }


    .solutions-page .solutions-hero__content p {
        font-size: 16px;

        line-height: 1.7;
    }


    /* =======================================================
       EVENTS
    ======================================================= */

    .solutions-page .solutions-events {
        padding-top: 42px;
    }


    /* =======================================================
       OFFER
    ======================================================= */

    .solutions-page .solutions-offer {
        width:
                calc(100% - 28px);

        margin-bottom: 64px;
    }


    .solutions-page .solutions-offer__heading
    .section-title {
        font-size: 40px;

        line-height: 1.15;
    }


    .solutions-page .solutions-offer__grid {
        grid-template-columns:
      1fr;

        gap: 44px;

        margin-top: 30px;

        padding-bottom: 20px;
    }


    .solutions-page .solution-feature-card {
        width: 100%;

        max-width: 360px;

        height: 270px;

        margin-inline:
                auto;

        padding:
                19px
                18px;
    }


    .solutions-page .solution-feature-card h3 {
        min-height: 72px;

        font-size: 31px;
    }


    .solutions-page .solution-feature-card p {
        min-height: 44px;

        margin-top: 10px;

        font-size: 16px;

        line-height: 1.35;
    }


    /* =======================================================
       MOBILE ART
    ======================================================= */

    .solutions-page .solution-feature-card__art--dart {
        top: 182px;

        width: 118px;
        height: 118px;
    }


    .solutions-page .solution-feature-card__art--pin {
        top: 173px;

        width: 78px;
        height: 116px;
    }


    .solutions-page .solution-feature-card__art--ball {
        top: 190px;

        width: 94px;
        height: 94px;
    }


    .solutions-page .solution-feature-card__art--target {
        top: 187px;

        width: 98px;
        height: 98px;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .solutions-page .solutions-reveal,
.solutions-page .solution-feature-card,
.solutions-page .solution-feature-card::before,
.solutions-page .solution-feature-card__art,
.solutions-page
    .event-card,
.solutions-page
    .event-card__media
    img {
        transition: none !important;

        animation: none !important;
    }


    .solutions-page .solutions-reveal-ready
    .solutions-reveal {
        opacity: 1;

        transform: none;
    }

}


/* =========================================================
   V20 MERGED SOURCE: Corporate events
   ORIGINAL: assets/css/corporate-events.css
========================================================= */

/* =========================================================
   Arcadium — Corporate Events / Single Solution
   Figma frame: 1:10
   Desktop reference: 1440 x 3701

   Shared:
   Header / Hero / Breadcrumb = contact.css
   Game Cards                 = style.css
   CTA / Footer               = style.css
========================================================= */

.corporate-events-page {
    background: #130f28;
}


/* =========================================================
   ACTIVE NAV
========================================================= */

.corporate-events-page
.contact-header
.nav-dropdown.is-current > button {
    color: #fff;

    font-size: 24px;
    font-weight: 400;

    transform:
            translateY(-2px);
}


.corporate-events-page
.drawer-submenu-toggle.is-current {
    color: var(--pink);
}


.corporate-events-page
.drawer-submenu a.is-active,
.corporate-events-page
.dropdown-panel a.is-active {
    color: var(--pink);
}


/* =========================================================
   HERO
========================================================= */

.corporate-events-page .corporate-hero__content p {
    max-width: 815px;
}


/* =========================================================
   MAIN

   Figma desktop rhythm:

   Hero end   = 595
   Intro      = 595
   Experience = 974
   Games      = 1531.343
   Steps      = 2206.343
   CTA        = 2756.343
   Footer     = 3226.343
========================================================= */

.corporate-events-page .corporate-main {
    position: relative;

    display: flow-root;

    overflow: hidden;

    isolation: isolate;

    background: #130f28;
}


/* =========================================================
   BACKGROUND GLOW
========================================================= */

.corporate-events-page .corporate-main::before {
    content: "";

    position: absolute;
    z-index: 0;

    top: -64px;
    right: -341px;

    width: 553px;
    height: 1062px;

    background: radial-gradient(ellipse 76.5px 331px at center, #B12CCC 99%, transparent 100%);
  filter: blur(100px);

    pointer-events: none;
}


.corporate-events-page .corporate-main > section {
    position: relative;

    z-index: 1;
}


/* =========================================================
   INTRO
   Figma node 1:195

   976 × 259
========================================================= */

.corporate-events-page .corporate-intro {
    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: 32px;

    width:
            min(
                    calc(100% - 48px),
                    976px
            );

    min-height: 259px;

    margin:
            0
            auto;

    color: #fff;

    text-align: center;
}


.corporate-events-page .corporate-intro h2 {
    width: 100%;

    margin: 0;

    font-family:
            var(--display-font);

    font-size: 64px;
    font-weight: 400;

    line-height: 1.2;

    letter-spacing:
            -0.96px;
}


.corporate-events-page .corporate-intro__cyan {
    color: #7feefa;
}


.corporate-events-page .corporate-intro__orange {
    color: #ff762f;
}


.corporate-events-page .corporate-intro__body {
    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 44px;

    width: 100%;
}


.corporate-events-page .corporate-intro__body p {
    width: 100%;

    margin: 0;

    font-size: 24px;
    font-weight: 400;

    line-height: 1.2;

    text-align: center;
}


/* =========================================================
   PRIMARY BUTTON
========================================================= */

.corporate-events-page .corporate-primary-button {
    display: grid;

    place-items: center;

    width: 283px;
    height: 48px;

    border:
            1px
            solid
            #9209f2;

    border-radius: 38px;

    background: #9209f2;

    color: #f9f9f9;

    font-size: 20px;
    font-weight: 700;

    line-height: 1.2;

    transition:
            transform 0.25s ease,
            background-color 0.25s ease,
            box-shadow 0.3s ease;
}


.corporate-events-page .corporate-primary-button:hover,
.corporate-events-page .corporate-primary-button:focus-visible {
    background: #a91bff;

    color: #fff;

    transform:
            translateY(-3px);

    box-shadow:
            0
            12px
            30px
            rgba(146, 9, 242, 0.32);

    outline: 0;
}


/* =========================================================
   SHARED PAGE TITLE
========================================================= */

.corporate-events-page .corporate-section-title {
    margin: 0;

    color: #fff;

    font-family:
            var(--display-font);

    font-size: 64px;
    font-weight: 400;

    line-height: 1.2;

    letter-spacing:
            -0.96px;

    text-align: center;
}


/* =========================================================
   EXPERIENCE
   Figma node: 1:119

   Section:
   width  = 970.617px
   height = 437.343px

   Cards frame:
   y      = 129px
   height = 308.343px
========================================================= */

.corporate-events-page .corporate-experience {
    width:
            min(
                    calc(100% - 48px),
                    970.617px
            );

    min-height: 437.343px;

    margin:
            120px
            auto
            0;
}


/* Figma title width = 511px */

.corporate-events-page .corporate-experience
.corporate-section-title {
  

    max-width: 100%;

    margin-inline:
            auto;

    white-space: nowrap;
}


/* =========================================================
   EXPERIENCE CARDS AREA
========================================================= */

.corporate-events-page .corporate-experience__cards {
    position: relative;

    width: 100%;
    height: 308.343px;

    margin-top: 52px;

    direction: ltr;
}


/* =========================================================
   BASE EXPERIENCE CARD
========================================================= */

.corporate-events-page .experience-card {
    position: absolute;

    width: 297px;
    height: 278px;

    overflow: visible;

    border-radius: 16px;

    background: #fff;

    color: #130f28;

    direction: rtl;

    text-align: right;

    transform-origin:
            center center;

    transition:
            transform
            0.34s
            cubic-bezier(0.2, 0.75, 0.2, 1),

            box-shadow
            0.34s
            ease;
}


/* =========================================================
   EXACT CARD POSITIONS
========================================================= */


/*
 * LEFT CARD
 *
 * Figma:
 * x = 0
 * y = 16
 */

.corporate-events-page .experience-card--interaction {
    top: 16px;
    left: 0;
}


/*
 * MIDDLE CARD
 *
 * Figma rotated visual wrapper:
 * x = 329
 * y = 0
 * w = 311.847
 * h = 293.922
 *
 * Base card = 297 × 278
 * rotation  = -3.15deg
 */

.corporate-events-page .experience-card--space {
    top: 7.96px;
    left: 336.42px;

    transform:
            rotate(-3.15deg);
}


/*
 * RIGHT CARD
 *
 * Figma:
 * x = 674
 * y = 14
 */

.corporate-events-page .experience-card--games {
    top: 14px;
    left: 674px;
}


/* =========================================================
   EXPERIENCE CARD TITLES
========================================================= */

.corporate-events-page .experience-card h3 {
    position: absolute;

    margin: 0;

    font-family:
            var(--display-font);

    font-size: 36px;
    font-weight: 400;

    line-height: 1.2;

    letter-spacing:
            -0.54px;
}


/* ---------------------------------------------------------
   Left title
   Figma node 1:123
   x = 20
   y = 21
   w = 257
--------------------------------------------------------- */

.corporate-events-page .experience-card--interaction h3 {
    top: 21px;

    right: 20px;
    left: 20px;
}


/* ---------------------------------------------------------
   Middle title
   Figma node 1:127

   IMPORTANT:
   This narrow width is intentional.

   x = 112.193
   right = 20
   y = 24

   This forces:
   جهّز مساحة
   الفعالية
--------------------------------------------------------- */

.corporate-events-page .experience-card--space h3 {
    top: 24px;

    right: 20px;
    left: 112.193px;
}


/* ---------------------------------------------------------
   Right title
   Figma node 1:131
   x = 20
   y = 24
   w = 257
--------------------------------------------------------- */

.corporate-events-page .experience-card--games h3 {
    top: 24px;

    right: 20px;
    left: 20px;
}


/* =========================================================
   EXPERIENCE CARD BODY
========================================================= */

.corporate-events-page .experience-card p {
    position: absolute;

    margin: 0;

    font-size: 20px;
    font-weight: 300;

    line-height: 1.2;
}


/* Left body
   Figma y = 177
   w = 257
*/

.corporate-events-page .experience-card--interaction p {
    top: 177px;

    right: 20px;
    left: 20px;
}


/* Middle body
   Figma y = 189.206
*/

.corporate-events-page .experience-card--space p {
    top: 189.206px;

    right: 19.68px;
    left: 20.32px;
}


/* Right body
   Figma y = 180
*/

.corporate-events-page .experience-card--games p {
    top: 180px;

    right: 20px;
    left: 20px;
}


/* =========================================================
   EXPERIENCE BADGES

   IMPORTANT:
   Each badge has its own Figma geometry.
   They are intentionally NOT equal sizes.
========================================================= */

.corporate-events-page .experience-card__badge {
    position: absolute;
    z-index: 5;

    display: block;

    padding: 0;

    overflow: hidden;

    border-radius: 50%;

    background: #121028;

    pointer-events: none;

    transform-origin:
            center center;

    transition:
            transform
            0.4s
            cubic-bezier(0.2, 0.8, 0.2, 1),

            filter
            0.3s
            ease;
}


.corporate-events-page .experience-card__badge img {
    display: block;

    width: 100%;
    height: 100%;

    max-width: none;

    border-radius: inherit;

    object-fit: cover;
}


/* =========================================================
   BALL BADGE
   Left card

   Actual Figma circle:
   ≈ 59.135 × 59.135
========================================================= */

.corporate-events-page .experience-card--interaction
.experience-card__badge {
    top: -17px;
    left: 16px;

    width: 59.135px;
    height: 59.135px;

    transform:
            rotate(-22.77deg);
}


.corporate-events-page .experience-card--interaction
.experience-card__badge img {
    transform:
            scale(1.03);
}


/* =========================================================
   BLUE BADGE
   Middle card

   Actual Figma:
   ≈ 59.843 × 58.075
========================================================= */

.corporate-events-page .experience-card--space
.experience-card__badge {
    top: -15px;
    left: 15px;

    width: 59.843px;
    height: 58.075px;

    transform:
            rotate(7.06deg);
}


/* =========================================================
   FACE BADGE
   Right card

   Actual Figma circle:
   ≈ 68.494 × 68.494
========================================================= */

.corporate-events-page .experience-card--games
.experience-card__badge {
    top: -29px;
    left: 18px;

    width: 68.494px;
    height: 68.494px;

    transform:
            rotate(-12.08deg);
}


/* =========================================================
   EXPERIENCE HOVER
========================================================= */

.corporate-events-page .experience-card:hover,
.corporate-events-page .experience-card:focus-visible,
.corporate-events-page .experience-card.is-hovered {
    transform:
            translateY(-6px);

    box-shadow:
            0
            18px
            42px
            rgba(146, 9, 242, 0.19);

    outline: 0;
}


/* Keep middle card rotation */

.corporate-events-page .experience-card--space:hover,
.corporate-events-page .experience-card--space:focus-visible,
.corporate-events-page .experience-card--space.is-hovered {
    transform:
            translateY(-6px)
            rotate(-3.15deg);
}


/* Badge shadow */

.corporate-events-page .experience-card:hover
.experience-card__badge,
.corporate-events-page .experience-card:focus-visible
.experience-card__badge,
.corporate-events-page .experience-card.is-hovered
.experience-card__badge {
    filter:
            drop-shadow(
                    0
                    8px
                    11px
                    rgba(146, 9, 242, 0.26)
            );
}


/* Ball motion */

.corporate-events-page .experience-card--interaction:hover
.experience-card__badge,
.corporate-events-page .experience-card--interaction:focus-visible
.experience-card__badge,
.corporate-events-page .experience-card--interaction.is-hovered
.experience-card__badge {
    transform:
            translateY(-3px)
            rotate(-15deg)
            scale(1.035);
}


/* Blue badge motion */

.corporate-events-page .experience-card--space:hover
.experience-card__badge,
.corporate-events-page .experience-card--space:focus-visible
.experience-card__badge,
.corporate-events-page .experience-card--space.is-hovered
.experience-card__badge {
    transform:
            translateY(-3px)
            rotate(12deg)
            scale(1.035);
}


/* Face motion */

.corporate-events-page .experience-card--games:hover
.experience-card__badge,
.corporate-events-page .experience-card--games:focus-visible
.experience-card__badge,
.corporate-events-page .experience-card--games.is-hovered
.experience-card__badge {
    transform:
            translateY(-3px)
            rotate(-6deg)
            scale(1.035);
}


/* =========================================================
   GAMES

   Uses the SAME .game-card component
   from style.css / Home.

   No duplicate card styling here.
========================================================= */

.corporate-events-page .corporate-games {
    margin-top: 120px;

    padding: 0;
}


.corporate-events-page .corporate-games
.games-grid {
    margin-top: 52px;
}


.corporate-events-page .corporate-games
.section-button {
    margin-top: 52px;
}


/* =========================================================
   STEPS
   Figma node 1:174

   Width = 1225
   Title = 77
   Gap   = 52
   Card  = 395 × 301
========================================================= */

.corporate-events-page .corporate-steps {
    width:
            min(
                    calc(100% - 48px),
                    1225px
            );

    min-height: 430px;

    margin:
            120px
            auto
            120px;
}


.corporate-events-page .corporate-steps__grid {
    display: grid;

    grid-template-columns:
    repeat(
      3,
      minmax(0, 395px)
    );

    direction: rtl;

    gap: 20px;

    width: 100%;

    margin-top: 52px;
}


/* =========================================================
   STEP CARD
========================================================= */

.corporate-events-page .setup-step {
    position: relative;

    height: 301px;

    overflow: hidden;

    border:
            1px
            solid
            rgba(255, 255, 255, 0.28);

    border-radius: 24px;

    background:
            radial-gradient(
                    circle at 73% 27%,
                    rgba(148, 3, 242, 0.24) 0%,
                    rgba(71, 12, 133, 0.12) 34%,
                    rgba(19, 15, 40, 0) 61%
            ),
            rgba(19, 15, 40, 0.1);

    box-shadow:
            inset
            4px
            4px
            4px
            rgba(255, 255, 255, 0.3),

            0
            16px
            38px
            rgba(0, 0, 0, 0.08);

    color: #fff;

    direction: rtl;

    text-align: right;

    transition:
            transform
            0.32s
            cubic-bezier(0.2, 0.75, 0.2, 1),

            border-color
            0.3s
            ease,

            box-shadow
            0.35s
            ease;
}


.corporate-events-page .setup-step::before {
    content: "";

    position: absolute;

    inset: 0;

    background:
            radial-gradient(
                    circle at 74% 30%,
                    rgba(163, 2, 250, 0.18),
                    transparent 45%
            );

    opacity: 0;

    pointer-events: none;

    transition:
            opacity
            0.3s
            ease;
}


/* =========================================================
   STEP NUMBER
========================================================= */

.corporate-events-page .setup-step__number {
    position: absolute;
    z-index: 1;

    top: 18px;
    right: 30px;

    margin: 0;

    background:
            linear-gradient(
                    180deg,
                    #9403f2 0%,
                    #470c85 100%
            );

    -webkit-background-clip:
            text;

    background-clip:
            text;

    color: transparent;

    font-family:
            var(--display-font);

    font-size: 132px;
    font-weight: 400;

    line-height: 1.2;

    transition:
            transform
            0.38s
            cubic-bezier(0.2, 0.75, 0.2, 1),

            filter
            0.3s
            ease;
}


/* =========================================================
   STEP COPY
========================================================= */

.corporate-events-page .setup-step__copy {
    position: absolute;
    z-index: 2;

    right: 0;
    bottom: 15px;

    display: flex;

    flex-direction: column;

    align-items: flex-end;

    gap: 12px;

    width: 334px;

    padding: 20px;
}


.corporate-events-page .setup-step__copy h3 {
    width: 100%;

    margin: 0;

    font-family:
            var(--display-font);

    font-size: 36px;
    font-weight: 400;

    line-height: 1.2;
}


.corporate-events-page .setup-step__copy p {
    width: 100%;

    margin: 0;

    font-size: 20px;
    font-weight: 300;

    line-height: 1.2;
}


/* =========================================================
   STEP HOVER
========================================================= */

.corporate-events-page .setup-step:hover,
.corporate-events-page .setup-step:focus-visible,
.corporate-events-page .setup-step.is-hovered {
    border-color:
            rgba(163, 2, 250, 0.72);

    transform:
            translateY(-7px);

    box-shadow:
            inset
            4px
            4px
            4px
            rgba(255, 255, 255, 0.3),

            0
            22px
            48px
            rgba(71, 12, 133, 0.24);

    outline: 0;
}


.corporate-events-page .setup-step:hover::before,
.corporate-events-page .setup-step:focus-visible::before,
.corporate-events-page .setup-step.is-hovered::before {
    opacity: 1;
}


.corporate-events-page .setup-step:hover
.setup-step__number,
.corporate-events-page .setup-step:focus-visible
.setup-step__number,
.corporate-events-page .setup-step.is-hovered
.setup-step__number {
    transform:
            translateY(-5px)
            scale(1.03);

    filter:
            drop-shadow(
                    0
                    10px
                    18px
                    rgba(148, 3, 242, 0.24)
            );
}


/* =========================================================
   CTA / FOOTER
========================================================= */

.corporate-events-page .corporate-cta,
.corporate-events-page .corporate-footer {
    position: relative;

    z-index: 1;
}



/* =========================================================
   PAGE REVEAL
========================================================= */

.corporate-events-page .corporate-reveal {
    opacity: 1;

    transform: none;
}


.corporate-events-page .corporate-reveal-ready
.corporate-reveal {
    opacity: 0;

    transform:
            translateY(24px);

    transition:
            opacity
            0.65s
            ease,

            transform
            0.72s
            cubic-bezier(0.2, 0.75, 0.2, 1);
}


.corporate-events-page .corporate-reveal-ready
.corporate-reveal.is-visible {
    opacity: 1;

    transform: none;
}


/* =========================================================
   DESKTOP
   Exact Figma CTA alignment
========================================================= */

@media (min-width: 1281px) {

    .corporate-events-page .corporate-cta {
        transform:
                translateX(-9.5px);
    }

}


/* =========================================================
   LAPTOP
========================================================= */

@media
(max-width: 1280px)
and
(min-width: 992px) {

    .corporate-events-page
    .contact-header
    .nav-dropdown.is-current > button {
        font-size: 22px;
    }


    .corporate-events-page .corporate-intro,
.corporate-events-page .corporate-experience,
.corporate-events-page .corporate-steps {
        width:
                calc(100% - 48px);
    }


    /* =======================================================
       EXPERIENCE
    ======================================================= */

    .corporate-events-page .corporate-experience {
        min-height: 420px;
    }


    .corporate-events-page .corporate-experience__cards {
        display: grid;

        grid-template-columns:
      repeat(
        3,
        minmax(0, 1fr)
      );

        gap: 24px;

        height: 290px;
    }


    .corporate-events-page .experience-card {
        position: relative;

        top: auto;
        left: auto;

        width: 100%;
        height: 278px;
    }


    .corporate-events-page .experience-card--space {
        top: -5px;

        transform:
                rotate(-2deg);
    }


    .corporate-events-page .experience-card h3,
.corporate-events-page .experience-card--interaction h3,
.corporate-events-page .experience-card--space h3,
.corporate-events-page .experience-card--games h3 {
        top: 22px;

        right: 18px;
        left: 18px;

        font-size: 32px;
    }


    .corporate-events-page .experience-card p,
.corporate-events-page .experience-card--interaction p,
.corporate-events-page .experience-card--space p,
.corporate-events-page .experience-card--games p {
        top: auto;

        right: 18px;
        bottom: 40px;
        left: 18px;

        font-size: 18px;
    }


    /* Badge scaling */

    .corporate-events-page .experience-card--interaction
    .experience-card__badge {
        top: -17px;
        left: 14px;

        width: 56px;
        height: 56px;
    }


    .corporate-events-page .experience-card--space
    .experience-card__badge {
        top: -16px;
        left: 14px;

        width: 56px;
        height: 55px;
    }


    .corporate-events-page .experience-card--games
    .experience-card__badge {
        top: -27px;
        left: 16px;

        width: 64px;
        height: 64px;
    }


    /* =======================================================
       STEPS
    ======================================================= */

    .corporate-events-page .corporate-steps__grid {
        grid-template-columns:
      repeat(
        3,
        minmax(0, 1fr)
      );
    }


    .corporate-events-page .setup-step__copy {
        width:
                min(
                        100%,
                        334px
                );
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

    /* =======================================================
       BACKGROUND
    ======================================================= */

    .corporate-events-page .corporate-main::before {
        top: 60px;

        right: -410px;

        opacity: 0.7;
    }


    /* =======================================================
       INTRO
    ======================================================= */

    .corporate-events-page .corporate-intro {
        width:
                calc(100% - 36px);

        min-height: 0;

        padding:
                56px
                0
                0;
    }


    .corporate-events-page .corporate-intro h2 {
        font-size: 52px;
    }


    .corporate-events-page .corporate-intro__body {
        gap: 32px;
    }


    .corporate-events-page .corporate-intro__body p {
        max-width: 760px;

        font-size: 20px;

        line-height: 1.5;
    }


    /* =======================================================
       EXPERIENCE
    ======================================================= */

    .corporate-events-page .corporate-experience {
        width:
                calc(100% - 36px);

        min-height: 0;

        margin-top: 84px;
    }


    .corporate-events-page .corporate-experience
    .corporate-section-title {
        width: auto;

        white-space: normal;
    }


    .corporate-events-page .corporate-section-title {
        font-size: 52px;
    }


    .corporate-events-page .corporate-experience__cards {
        display: grid;

        grid-template-columns:
      1fr;

        gap: 38px;

        width:
                min(
                        100%,
                        520px
                );

        height: auto;

        margin:
                38px
                auto
                0;

        direction: rtl;
    }


    .corporate-events-page .experience-card {
        position: relative;

        top: auto;
        left: auto;

        width: 100%;
        height: 250px;
    }


    .corporate-events-page .experience-card--games {
        order: 1;
    }


    .corporate-events-page .experience-card--space {
        order: 2;

        top: auto;

        transform: none;
    }


    .corporate-events-page .experience-card--interaction {
        order: 3;
    }


    .corporate-events-page .experience-card--space:hover,
.corporate-events-page .experience-card--space:focus-visible,
.corporate-events-page .experience-card--space.is-hovered {
        transform:
                translateY(-7px);
    }


    .corporate-events-page .experience-card h3,
.corporate-events-page .experience-card--interaction h3,
.corporate-events-page .experience-card--space h3,
.corporate-events-page .experience-card--games h3 {
        top: 22px;

        right: 20px;
        left: 20px;

        font-size: 34px;
    }


    .corporate-events-page .experience-card p,
.corporate-events-page .experience-card--interaction p,
.corporate-events-page .experience-card--space p,
.corporate-events-page .experience-card--games p {
        top: auto;

        right: 20px;
        bottom: 38px;
        left: 20px;

        font-size: 18px;

        line-height: 1.35;
    }


    .corporate-events-page .experience-card--interaction
    .experience-card__badge {
        top: -18px;
        left: 16px;

        width: 58px;
        height: 58px;
    }


    .corporate-events-page .experience-card--space
    .experience-card__badge {
        top: -18px;
        left: 16px;

        width: 58px;
        height: 57px;
    }


    .corporate-events-page .experience-card--games
    .experience-card__badge {
        top: -27px;
        left: 18px;

        width: 65px;
        height: 65px;
    }


    /* =======================================================
       GAMES
    ======================================================= */

    .corporate-events-page .corporate-games {
        margin-top: 84px;
    }


    .corporate-events-page .corporate-games
    .games-grid {
        margin-top: 38px;
    }


    .corporate-events-page .corporate-games
    .section-button {
        margin-top: 38px;
    }


    /* =======================================================
       STEPS
    ======================================================= */

    .corporate-events-page .corporate-steps {
        width:
                calc(100% - 36px);

        min-height: 0;

        margin:
                84px
                auto
                84px;
    }


    .corporate-events-page .corporate-steps__grid {
        grid-template-columns:
      1fr;

        gap: 18px;

        width:
                min(
                        100%,
                        620px
                );

        margin:
                38px
                auto
                0;
    }


    .corporate-events-page .setup-step {
        height: 260px;
    }


    .corporate-events-page .setup-step__number {
        top: 8px;

        right: 26px;

        font-size: 112px;
    }


    .corporate-events-page .setup-step__copy {
        right: 0;

        bottom: 10px;

        width:
                min(
                        100%,
                        430px
                );
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575.98px) {

    /* =======================================================
       HERO
    ======================================================= */

    .corporate-events-page .corporate-hero__content h1 {
        font-size: 42px;
    }


    .corporate-events-page .corporate-hero__content p {
        font-size: 16px;

        line-height: 1.7;
    }


    /* =======================================================
       INTRO
    ======================================================= */

    .corporate-events-page .corporate-intro {
        width:
                calc(100% - 28px);

        gap: 24px;

        padding-top: 42px;
    }


    .corporate-events-page .corporate-intro h2 {
        font-size: 24px;

        line-height: 1.15;
    }


    .corporate-events-page .corporate-intro__body {
        gap: 26px;
    }


    .corporate-events-page .corporate-intro__body p {
        font-size: 16px;

        line-height: 1.65;
    }


    .corporate-events-page .corporate-primary-button {
        width:
                min(
                        100%,
                        260px
                );
    }


    /* =======================================================
       EXPERIENCE
    ======================================================= */

    .corporate-events-page .corporate-experience {
        width:
                calc(100% - 28px);

        margin-top: 68px;
    }


    .corporate-events-page .corporate-section-title {
        font-size: 40px;

        line-height: 1.15;
    }


    .corporate-events-page .corporate-experience__cards {
        gap: 34px;

        margin-top: 30px;
    }


    .corporate-events-page .experience-card {
        height: 230px;
    }


    .corporate-events-page .experience-card h3,
.corporate-events-page .experience-card--interaction h3,
.corporate-events-page .experience-card--space h3,
.corporate-events-page .experience-card--games h3 {
        top: 20px;

        right: 18px;
        left: 18px;

        font-size: 31px;
    }


    .corporate-events-page .experience-card p,
.corporate-events-page .experience-card--interaction p,
.corporate-events-page .experience-card--space p,
.corporate-events-page .experience-card--games p {
        top: auto;

        right: 18px;
        bottom: 30px;
        left: 18px;

        font-size: 16px;

        line-height: 1.45;
    }


    /* Mobile badges */

    .corporate-events-page .experience-card--interaction
    .experience-card__badge {
        top: -16px;
        left: 14px;

        width: 52px;
        height: 52px;
    }


    .corporate-events-page .experience-card--space
    .experience-card__badge {
        top: -16px;
        left: 14px;

        width: 52px;
        height: 51px;
    }


    .corporate-events-page .experience-card--games
    .experience-card__badge {
        top: -23px;
        left: 15px;

        width: 58px;
        height: 58px;
    }


    /* =======================================================
       GAMES
    ======================================================= */

    .corporate-events-page .corporate-games {
        margin-top: 68px;
    }


    .corporate-events-page .corporate-games
    .games-grid {
        margin-top: 28px;
    }


    .corporate-events-page .corporate-games
    .section-button {
        margin-top: 30px;
    }


    /* =======================================================
       STEPS
    ======================================================= */

    .corporate-events-page .corporate-steps {
        width:
                calc(100% - 28px);

        margin:
                68px
                auto
                68px;
    }


    .corporate-events-page .corporate-steps__grid {
        gap: 14px;

        margin-top: 30px;
    }


    .corporate-events-page .setup-step {
        height: 240px;

        border-radius: 20px;
    }


    .corporate-events-page .setup-step__number {
        top: 2px;

        right: 22px;

        font-size: 100px;
    }


    .corporate-events-page .setup-step__copy {
        bottom: 6px;

        width: 100%;

        padding: 18px;
    }


    .corporate-events-page .setup-step__copy h3 {
        font-size: 31px;
    }


    .corporate-events-page .setup-step__copy p {
        font-size: 16px;

        line-height: 1.4;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .corporate-events-page .corporate-reveal,
.corporate-events-page .corporate-primary-button,
.corporate-events-page .experience-card,
.corporate-events-page .experience-card__badge,
.corporate-events-page .setup-step,
.corporate-events-page .setup-step::before,
.corporate-events-page .setup-step__number,
.corporate-events-page
    .game-card,
.corporate-events-page
    .game-card__photo,
.corporate-events-page
    .game-card__sticker {
        transition: none !important;

        animation: none !important;
    }


    .corporate-events-page .corporate-reveal-ready
    .corporate-reveal {
        opacity: 1;

        transform: none;
    }

}


/* =========================================================
   V20 MERGED SOURCE: Packages
   ORIGINAL: assets/css/packages.css
========================================================= */

/* =========================================================
   Arcadium — Packages page
   Figma frame: 1:17 — packages
   Desktop reference: 1440 × 2431

   Shared:
   Header / Hero / Breadcrumb = contact.css
   Package component base     = style.css
   CTA / Footer               = style.css

   Decorative glows:
   Exact recreation of Figma nodes 1:18 / 1:19.
========================================================= */


.packages-page {
    background: #130f28;

    /*
     * Figma frame clips anything outside the 1440px canvas.
     * The glow itself is allowed to blur inward.
     */
    overflow-x: hidden;
}


.packages-page .packages-hero__content p {
    max-width: 815px;
}


/* =========================================================
   MAIN
========================================================= */

.packages-page .packages-main {
    position: relative;

    display: flow-root;

    /*
     * IMPORTANT:
     * The left glow continues behind the CTA and into
     * the area above / behind the Footer.
     *
     * Do not clip it vertically.
     */
    overflow: visible;

    isolation: isolate;

    background: #130f28;
}


/* =========================================================
   FIGMA EDGE GLOWS

   NODE 1:18 — RIGHT
   NODE 1:19 — LEFT

   Exact node properties:
   width      = 153px
   height     = 662px
   fill       = #B12CCC
   opacity    = 58%
   layer blur = 200

   IMPORTANT:
   Figma SVG export translates Layer Blur 200 into:

   feGaussianBlur stdDeviation="100"

   Therefore CSS blur must be 100px, NOT 200px.
========================================================= */

.packages-page .packages-main::before,
.packages-page .packages-main::after {
    content: "";

    position: absolute;
    z-index: 0;

    width: 153px;
    height: 662px;

    border-radius: 50%;

    background:
            rgba(
                    177,
                    44,
                    204,
                    0.58
            );

    /*
     * Exact browser equivalent of
     * Figma's exported SVG blur.
     */
    filter:
            blur(100px);

    pointer-events: none;

    user-select: none;
}


/* =========================================================
   RIGHT GLOW
   Figma node 1:18

   Page:
   x = 1428
   y = 731

   Main begins at page Y = 595

   731 - 595 = 136

   Right:
   1440 - (1428 + 153)
   = -141px
========================================================= */

.packages-page .packages-main::before {
    top: 136px;

    right: -141px;
}


/* =========================================================
   LEFT GLOW
   Figma node 1:19

   Page:
   x = -153
   y = 1487

   Main begins at page Y = 595

   1487 - 595 = 892
========================================================= */

.packages-page .packages-main::after {
    top: 892px;

    left: -153px;
}


/* =========================================================
   MAIN CONTENT

   Keep content over decorative glows.
========================================================= */

.packages-page .packages-main > section {
    position: relative;

    z-index: 1;
}


/* =========================================================
   PACKAGES SECTION
   Figma node 1:127

   x = 96
   y = 595

   width  = 1248
   height = 771

   Title = 99px
   Gap   = 40px
   Cards = 585px
========================================================= */

.packages-page .packages-page__plans {
    width:
            min(
                    calc(100% - 48px),
                    1248px
            );

    height: 771px;

    margin-inline: auto;

    padding: 0;

    background: transparent;
}


.packages-page .packages-page__plans
.section-title {
    height: 99px;

    margin: 0;

    font-size: 64px;

    line-height: 1.55;
}


.packages-page .packages-page__plans
.packages-grid {
    width:
            min(
                    100%,
                    1180px
            );

    margin:
            40px
            auto
            0;
}


.packages-page .packages-page__plans
.packages-grid >
.cards-grid {
    display: grid;

    grid-template-columns:
    repeat(
      3,
      minmax(0, 380px)
    );

    justify-content: center;

    gap: 20px;

    direction: ltr;
}


/* =========================================================
   CTA

   Figma:
   x      = 110
   y      = 1486
   width  = 1221
   height = 350

   Left Ellipse starts at y = 1487,
   almost exactly beside the top of the CTA.

   The visible purple glow is intentionally narrow.
========================================================= */

.packages-page .packages-cta {
    margin-top: 120px;
}


/* =========================================================
   FOOTER

   Figma Footer:
   y      = 1956
   height = 462

   IMPORTANT:
   Footer already owns its purple vertical gradient.
   Don't recreate that gradient in packages-main.
========================================================= */

.packages-page .packages-footer {
    position: relative;

    z-index: 1;
}


/* =========================================================
   PAGE REVEAL
========================================================= */

.packages-page .packages-reveal {
    opacity: 1;

    transform: none;
}


.packages-page .packages-reveal-ready
.packages-reveal {
    opacity: 0;

    transform:
            translateY(24px);

    transition:
            opacity
            0.65s
            ease,

            transform
            0.72s
            cubic-bezier(
                    0.2,
                    0.75,
                    0.2,
                    1
            );
}


.packages-page .packages-reveal-ready
.packages-reveal.is-visible {
    opacity: 1;

    transform: none;
}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199.98px) {

    .packages-page .packages-page__plans {
        height: auto;

        padding-bottom: 48px;
    }


    .packages-page .packages-page__plans
    .packages-grid {
        width: 100%;
    }


    .packages-page .packages-page__plans
    .packages-grid >
    .cards-grid {
        grid-template-columns:
      repeat(
        3,
        minmax(0, 1fr)
      );

        width: 100%;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

    /* =======================================================
       DECORATIVE GLOWS

       Same ellipse principle.
       Only positions change for stacked content.
    ======================================================= */

    .packages-page .packages-main::before,
.packages-page .packages-main::after {
        width: 140px;
        height: 610px;

        filter:
                blur(90px);
    }


    .packages-page .packages-main::before {
        top: 150px;

        right: -140px;
    }


    .packages-page .packages-main::after {
        top: 1190px;

        left: -140px;
    }


    /* =======================================================
       SECTION
    ======================================================= */

    .packages-page .packages-page__plans {
        width:
                calc(100% - 36px);

        padding:
                52px
                0
                32px;
    }


    .packages-page .packages-page__plans
    .section-title {
        height: auto;

        font-size: 52px;

        line-height: 1.15;
    }


    .packages-page .packages-page__plans
    .packages-grid {
        margin-top: 38px;
    }


    .packages-page .packages-page__plans
    .packages-grid >
    .cards-grid {
        grid-template-columns:
      repeat(
        2,
        minmax(0, 380px)
      );

        direction: rtl;

        gap: 20px;
    }


    .packages-page .packages-cta {
        margin-top: 72px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767.98px) {

    /* =======================================================
       HERO
    ======================================================= */

    .packages-page .packages-hero__content h1 {
        font-size: 44px;
    }


    .packages-page .packages-hero__content p {
        font-size: 16px;

        line-height: 1.7;
    }


    /* =======================================================
       GLOWS

       Keep them narrow.
       Don't turn them into full-page gradients.
    ======================================================= */

    .packages-page .packages-main::before,
.packages-page .packages-main::after {
        width: 110px;
        height: 500px;

        filter:
                blur(72px);
    }


    .packages-page .packages-main::before {
        top: 170px;

        right: -110px;
    }


    .packages-page .packages-main::after {
        top: 1510px;

        left: -110px;
    }


    /* =======================================================
       PACKAGES
    ======================================================= */

    .packages-page .packages-page__plans {
        width:
                calc(100% - 28px);

        padding-top: 42px;
    }


    .packages-page .packages-page__plans
    .section-title {
        font-size: 42px;
    }


    .packages-page .packages-page__plans
    .packages-grid {
        margin-top: 30px;
    }


    .packages-page .packages-page__plans
    .packages-grid >
    .cards-grid {
        grid-template-columns:
      minmax(
        0,
        380px
      );

        gap: 20px;
    }


    /* =======================================================
       CARD
    ======================================================= */


    /* =======================================================
       INTRO
    ======================================================= */


    /* =======================================================
       PRICE
    ======================================================= */


    /* =======================================================
       FEATURES
    ======================================================= */


    /* =======================================================
       BUTTON
    ======================================================= */


    .packages-page .packages-cta {
        margin-top: 60px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 389.98px) {

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .packages-page .packages-reveal {
        transition: none !important;

        animation: none !important;
    }


    .packages-page .packages-reveal-ready
    .packages-reveal {
        opacity: 1;

        transform: none;
    }

}


/* =========================================================
   V20 MERGED SOURCE: About
   ORIGINAL: assets/css/about.css
========================================================= */

/* =========================================================
   Arcadium — About page
   Static first / WordPress ready

   WordPress later:
   - enqueue only on About.
   - shared header/footer/games/CTA stay in shared CSS.
   - body keeps `about-page`.
========================================================= */

.about-page {
    --about-bg: #130f28;
    --about-surface: #121028;
    --about-purple: #9403f2;
    --about-lilac: #c5baff;
    --about-orange: #ff762f;
    --about-cyan: #7feefa;

    background: var(--about-bg);
}


.about-page .about-hero__content p {
    max-width: 815px;
}


.about-page .about-main {
    position: relative;

    overflow: hidden;

    background:
            radial-gradient(
                    ellipse 260px 610px at -85px 1030px,
                    rgba(177, 44, 204, .33) 0%,
                    rgba(177, 44, 204, .14) 42%,
                    rgba(177, 44, 204, 0) 74%
            ),
            radial-gradient(
                    ellipse 260px 610px at calc(100% + 85px) 1320px,
                    rgba(177, 44, 204, .33) 0%,
                    rgba(177, 44, 204, .14) 42%,
                    rgba(177, 44, 204, 0) 74%
            ),
            var(--about-bg);
}


.about-page .about-shell {
    width: min(
            calc(100% - 48px),
            1248px
    );

    margin-inline: auto;
}


.about-page .story-desktop-break {
    display: none;
}


.about-page .moment-tag-slot {
    display: contents;
}



/* =========================================================
   Story
   Figma 1:120
========================================================= */

.about-page .about-story {
    margin-top: 41px;
}


.about-page .story-grid {
    display: grid;

    grid-template-columns:
    279px
    278px
    minmax(0, 1fr);

    gap: 17px;

    min-height: 433px;

    direction: ltr;
}


.about-page .story-card {
    position: relative;

    min-width: 0;
    min-height: 433px;

    overflow: hidden;

    border-radius: 24px;

    direction: rtl;
    text-align: right;

    transition:
            transform .35s cubic-bezier(.2, .75, .2, 1),
            box-shadow .35s ease,
            border-color .35s ease;
}


.about-page .story-card:hover {
    transform: translateY(-7px);

    box-shadow:
            0 22px 55px
            rgba(0, 0, 0, .22);
}


.about-page .story-card h2 {
    margin: 0;

    font-family:
            var(--display-font);

    font-size: 64px;
    font-weight: 400;

    line-height: 1.2;
}


.about-page .story-card p {
    margin: 0;

    font-size: 20px;
    font-weight: 300;

    line-height: 1.6;
}



/* Mission */

.about-page .story-card--mission {
    display: flex;

    flex-direction: column;

    padding:
            40px
            20px
            38px;

    background:
            var(--about-purple);

    color:
            #fff;
}


.about-page .story-card--mission p {
    margin-top: auto;
}



/* Vision */

.about-page .story-card--vision {
    display: flex;

    flex-direction: column;

    padding:
            46px
            17px
            45px;

    background:
            var(--about-lilac);

    color:
            #000;
}


.about-page .story-card--vision p {
    margin-top: auto;
}



/* Main About Card */

.about-page .story-card--about {
    grid-column: 3;

    padding:
            35px
            47px
            42px;

    border:
            1px solid
            rgba(255, 255, 255, .47);

    background:
            rgba(19, 15, 40, .1);

    box-shadow:
            inset
            4px
            8px
            4px
            rgba(255, 255, 255, .2);

    color:
            #fff;
}


.about-page .story-card--about h2 {
    position: relative;

    z-index: 2;

    width:
            min(
                    100%,
                    430px
            );

    margin-left:
            auto;
}


.about-page .story-card--about p {
    position: absolute;

    z-index: 2;

    right: 47px;
    bottom: 47px;

    width:
            min(
                    52%,
                    339px
            );
}


.about-page .story-card__coin {
    position: absolute;

    z-index: 2;

    left: 33px;
    bottom: 15px;

    width: 185px;
    height: 185px;

    object-fit:
            contain;

    filter:
            drop-shadow(
                    0
                    12px
                    22px
                    rgba(0, 0, 0, .22)
            );

    transition:
            transform
            .45s
            cubic-bezier(.2, .75, .2, 1);
}


.about-page .story-card--about:hover
.story-card__coin {
    transform:
            rotate(9deg)
            scale(1.04);
}


.about-page .story-card__glow {
    position: absolute;

    top: -150px;
    left: -105px;

    width: 380px;
    height: 280px;

    border-radius: 50%;

    background:
            radial-gradient(
                    circle at 65% 75%,
                    rgba(148, 3, 242, .75),
                    rgba(148, 3, 242, .16) 42%,
                    rgba(148, 3, 242, 0) 70%
            );

    filter:
            blur(2px);

    pointer-events:
            none;
}



/* =========================================================
   Moments
   Figma 1:135
========================================================= */

.about-page .about-moments {
    margin-top: 120px;
}


.about-page .moments-panel {
    min-height: 504px;

    padding:
            77px
            clamp(24px, 7vw, 167px)
            70px;

    border:
            1px solid
            rgba(255, 255, 255, .32);

    border-radius:
            32px;

    background:
            radial-gradient(
                    circle at 91% 18%,
                    rgba(133, 33, 153, .4),
                    rgba(93, 1, 83, .12) 28%,
                    rgba(18, 16, 40, 0) 50%
            ),
            var(--about-surface);

    box-shadow:
            inset
            4px
            4px
            4px
            rgba(255, 255, 255, .3);
}


.about-page .moments-copy {
    width:
            min(
                    100%,
                    912px
            );

    margin-inline:
            auto;

    text-align:
            center;
}


.about-page .moments-copy h2 {
    margin:
            0;

    font-family:
            var(--display-font);

    font-size:
            64px;

    font-weight:
            400;

    line-height:
            1.2;
}


.about-page .moments-copy p {
    margin:
            20px
            0
            0;

    font-size:
            20px;

    font-weight:
            300;

    line-height:
            1.6;
}


.about-page .moments-copy__line {
    display:
            block;
}



/* Tags */

.about-page .moment-tags {
    display:
            flex;

    flex-wrap:
            wrap;

    align-items:
            center;

    justify-content:
            center;

    gap:
            13px
            14px;

    width:
            min(
                    100%,
                    820px
            );

    margin:
            78px
            auto
            0;

    direction:
            ltr;
}


.about-page .moment-tag {
    display:
            inline-flex;

    align-items:
            center;

    justify-content:
            center;

    min-height:
            41px;

    padding:
            8px
            18px;

    border:
            1px solid
            currentColor;

    border-radius:
            40px;

    font-family:
            var(--display-font);

    font-size:
            20px;

    line-height:
            1.2;

    letter-spacing:
            .2px;

    direction:
            rtl;

    white-space:
            nowrap;

    transform-origin:
            center;

    transition:
            transform .28s ease,
            filter .28s ease,
            background .28s ease;
}


.about-page .moment-tag:hover {
    transform:
            translateY(-5px)
            rotate(0deg) !important;

    filter:
            drop-shadow(
                    0
                    10px
                    12px
                    rgba(0, 0, 0, .2)
            );
}



.about-page .moment-tag--cyan {
    color:
            #22dff3;
}


.about-page .moment-tag--pink-outline {
    color:
            #dd37ff;
}


.about-page .moment-tag--orange {
    color:
            #fa6c15;
}


.about-page .moment-tag--deep {
    border-color:
            #5d0153;

    background:
            #5d0153;

    color:
            #dd37ff;
}


.about-page .moment-tag--violet {
    border-color:
            #852199;

    background:
            #852199;

    color:
            #efe6ee;
}


.about-page .moment-tag--pink {
    border-color:
            #dd37ff;

    background:
            #dd37ff;

    color:
            #5e0154;
}


.about-page .moment-tag--tilt-right {
    transform:
            rotate(7.5deg);
}


.about-page .moment-tag--tilt-left {
    transform:
            rotate(-10.5deg);
}


.about-page .moment-tag--soft-tilt {
    transform:
            rotate(1.5deg);
}



/* =========================================================
   Why Arcadium
   Figma 1:158
========================================================= */

.about-page .about-why {
    margin-top:
            120px;
}


.about-page .about-why__inner {
    max-width:
            1248px;
}


.about-page .why-grid {
    display:
            grid;

    grid-template-columns:
    repeat(
      4,
      minmax(0, 1fr)
    );

    gap:
            10px;

    width:
            min(
                    100%,
                    1215px
            );

    margin:
            80px
            auto
            0;

    direction:
            ltr;
}


.about-page .why-card {
    --card-rotate:
            0deg;

    position:
            relative;

    min-width:
            0;

    min-height:
            292px;

    padding:
            40px
            20px
            30px;

    border-radius:
            16px;

    color:
            #130f28;

    direction:
            rtl;

    text-align:
            right;

    transform:
            rotate(
                    var(--card-rotate)
            );

    transform-origin:
            center;

    box-shadow:
            0
            18px
            42px
            rgba(0, 0, 0, .12);

    transition:
            transform
            .35s
            cubic-bezier(.2, .75, .2, 1),
            box-shadow
            .35s
            ease;
}


.about-page .why-card:hover,
.about-page .why-card:focus-within {
    z-index:
            3;

    transform:
            rotate(0deg)
            translateY(-10px)
            scale(1.025);

    box-shadow:
            0
            26px
            56px
            rgba(0, 0, 0, .25);
}


.about-page .why-card h3 {
    margin:
            0;

    font-family:
            var(--display-font);

    font-size:
            36px;

    font-weight:
            400;

    line-height:
            1.2;
}


.about-page .why-card p {
    margin:
            78px
            0
            0;

    font-size:
            20px;

    font-weight:
            300;

    line-height:
            1.2;
}


.about-page .why-card__icon {
    position:
            absolute;

    top:
            -30px;

    left:
            20px;

    display:
            grid;

    place-items:
            center;

    width:
            66px;

    height:
            66px;

    overflow:
            hidden;

    border-radius:
            50%;

    background:
            var(--about-surface);

    box-shadow:
            0
            8px
            18px
            rgba(0, 0, 0, .22);
}


.about-page .why-card__icon img {
    width:
            100%;

    height:
            100%;

    max-width:
            none;

    object-fit:
            cover;
}


.about-page .why-card--transport {
    --card-rotate:
            -13.52deg;

    /* Keep the orange card above the adjacent delivery card at their overlap. */
    z-index:
            2;

    background:
            var(--about-orange);
}


.about-page .why-card--delivery {
    --card-rotate:
            6.43deg;

    background:
            var(--about-cyan);
}


.about-page .why-card--variety {
    --card-rotate:
            -6.48deg;

    background:
            var(--about-lilac);
}


.about-page .why-card--quality {
    --card-rotate:
            2.49deg;

    background:
            #fff;
}



/* =========================================================
   Shared Components

   الألعاب / CTA / Footer مش معمول لهم نسخة جديدة هنا.
   ده مهم للـWordPress بعدين.
========================================================= */

.about-page .about-games {
    margin-top:
            120px;

    padding-top:
            0;
}


.about-page .about-cta,
.about-page .about-footer {
    position:
            relative;

    z-index:
            1;
}



/* =========================================================
   Scroll Reveal
========================================================= */

.about-page .about-section-reveal {
    opacity:
            1;

    transform:
            none;
}


.about-page .about-reveal-ready
.about-section-reveal {
    opacity:
            0;

    transform:
            translateY(28px);

    transition:
            opacity
            .7s
            ease,
            transform
            .7s
            cubic-bezier(.2, .75, .2, 1);
}


.about-page .about-reveal-ready
.about-section-reveal.is-visible {
    opacity:
            1;

    transform:
            translateY(0);
}



/* =========================================================
   Desktop Pixel Perfect
   Reference: 1440px Figma

   بنفعله من 1280px عشان 1200px تفضل Responsive
   ومايحصلش Horizontal Overflow.
========================================================= */

@media (min-width: 1281px) {

    /* -----------------------------------------------------
       Real Figma edge glows
    ------------------------------------------------------ */

    .about-page .about-main {
        background:
                var(--about-bg);
    }


    .about-page .about-main::before,
.about-page .about-main::after {
        content:
                "";

        position:
                absolute;

        z-index:
                0;

        width:
                553px;

        height:
                1062px;

        background: radial-gradient(ellipse 76.5px 331px at center, #B12CCC 99%, transparent 100%);
  filter: blur(100px);

        pointer-events:
                none;
    }


    .about-page .about-main::before {
        top:
                692px;

        left:
                -353px;
    }


    .about-page .about-main::after {
        top:
                979px;

        right:
                -353px;
    }


    .about-page .about-main > section {
        position:
                relative;

        z-index:
                1;
    }



    /* -----------------------------------------------------
       Story — Figma 1:120
    ------------------------------------------------------ */

    .about-page .about-story {
        height:
                433px;

        margin-top:
                41px;
    }


    .about-page .story-grid {
        width:
                1248px;

        height:
                433px;

        min-height:
                0;

        grid-template-columns:
      279px
      278px
      652px;

        gap:
                17px;

        justify-content:
                start;
    }


    .about-page .story-card {
        height:
                433px;

        min-height:
                0;
    }


    .about-page .story-card--mission,
.about-page .story-card--vision,
.about-page .story-card--about {
        padding:
                0;
    }


    .about-page .story-card--mission,
.about-page .story-card--vision {
        display:
                block;
    }



    /* Mission */

    .about-page .story-card--mission h2 {
        position:
                absolute;

        top:
                40px;

        right:
                20px;
    }


    .about-page .story-card--mission p {
        position:
                absolute;

        top:
                196px;

        right:
                18px;

        width:
                241px;

        margin:
                0;
    }



    /* Vision */

    .about-page .story-card--vision h2 {
        position:
                absolute;

        top:
                46px;

        right:
                17px;

        width:
                244px;
    }


    .about-page .story-card--vision p {
        position:
                absolute;

        top:
                196px;

        right:
                17px;

        width:
                244px;

        margin:
                0;
    }


    .about-page .story-desktop-break {
        display:
                inline;
    }



    /* Main about card */

    .about-page .story-card--about {
        grid-column:
                3;

        width:
                652px;
    }


    .about-page .story-card--about h2 {
        position:
                absolute;

        z-index:
                2;

        top:
                35px;

        right:
                43px;

        width:
                403px;

        margin:
                0;
    }


    .about-page .story-card--about p {
        position:
                absolute;

        z-index:
                2;

        top:
                206px;

        right:
                47px;

        bottom:
                auto;

        display:
                flex;

        align-items:
                center;

        width:
                339px;

        min-height:
                173px;

        margin:
                0;
    }


    .about-page .story-card__coin {
        top:
                233px;

        bottom:
                auto;

        left:
                33px;

        width:
                185px;

        height:
                185px;
    }


    .about-page .story-card__glow {
        top:
                -189px;

        left:
                -114px;

        width:
                421px;

        height:
                293px;

        border-radius:
                50%;

        background:
                #9403f2;

        filter:
                blur(100px);

        opacity:
                1;
    }



    /* -----------------------------------------------------
       Moments — Figma 1:135
    ------------------------------------------------------ */

    .about-page .about-moments {
        height:
                504px;

        margin-top:
                120px;
    }


    .about-page .moments-panel {
        position:
                relative;

        width:
                1246px;

        height:
                504px;

        min-height:
                0;

        padding:
                0;

        overflow:
                hidden;

        background:
                var(--about-surface);
    }


    .about-page .moments-panel::after {
        content:
                "";

        position:
                absolute;

        z-index:
                0;

        top:
                -340px;

        right:
                -276px;

        width:
                553px;

        height:
                1062px;

        background: radial-gradient(ellipse 76.5px 331px at center, #B12CCC 99%, transparent 100%);
  filter: blur(100px);

        pointer-events:
                none;
    }


    .about-page .moments-copy {
        position:
                absolute;

        z-index:
                2;

        top:
                77px;

        left:
                50%;

        width:
                912px;

        margin:
                0;

        transform:
                translateX(-50%);
    }


    .about-page .moment-tags {
        position:
                absolute;

        z-index:
                2;

        inset:
                0;

        display:
                block;

        width:
                100%;

        height:
                100%;

        margin:
                0;
    }


    .about-page .moment-tag-slot {
        position:
                absolute;

        display:
                flex;

        align-items:
                center;

        justify-content:
                center;
    }


    .about-page .moment-tag {
        box-sizing:
                border-box;

        flex:
                0 0 auto;

        min-height:
                41px;

        padding:
                8px
                12px;

        font-size:
                20px;

        line-height:
                1.2;
    }


    .about-page .moment-tag--deep,
.about-page .moment-tag--violet,
.about-page .moment-tag--pink {
        border-color:
                transparent;
    }



    /* تجربة تفاعلية */

    .about-page .moment-tag-slot--interactive {
        top:
                351px;

        left:
                218px;

        width:
                172px;

        height:
                41px;
    }


    .about-page .moment-tag-slot--interactive
    .moment-tag {
        width:
                172px;
    }



    /* تجربة مخصصة */

    .about-page .moment-tag-slot--custom {
        top:
                308px;

        left:
                321px;

        width:
                183.936px;

        height:
                65.219px;
    }


    .about-page .moment-tag-slot--custom
    .moment-tag {
        width:
                180px;

        transform:
                rotate(7.68deg);
    }



    /* ترفيه متنقل */

    .about-page .moment-tag-slot--mobile {
        top:
                372px;

        left:
                419px;

        width:
                172px;

        height:
                41px;
    }


    .about-page .moment-tag-slot--mobile
    .moment-tag {
        width:
                172px;
    }



    /* نقل آمن */

    .about-page .moment-tag-slot--safe {
        top:
                308px;

        left:
                527px;

        width:
                142.273px;

        height:
                65.386px;
    }


    .about-page .moment-tag-slot--safe
    .moment-tag {
        width:
                137.096px;

        transform:
                rotate(-10.6deg);
    }



    /* فعاليات ممتعة */

    .about-page .moment-tag-slot--fun {
        top:
                363px;

        left:
                604px;

        width:
                181.991px;

        height:
                45.875px;
    }


    .about-page .moment-tag-slot--fun
    .moment-tag {
        width:
                181.042px;

        transform:
                rotate(1.38deg);
    }



    /* حجز سهل */

    .about-page .moment-tag-slot--easy {
        top:
                288px;

        left:
                681px;

        width:
                178.987px;

        height:
                75.019px;
    }


    .about-page .moment-tag-slot--easy
    .moment-tag {
        width:
                174px;

        transform:
                rotate(-10.86deg);
    }



    /* أسعار تنافسية */

    .about-page .moment-tag-slot--competitive {
        top:
                380px;

        left:
                785px;

        width:
                140px;

        height:
                43.5px;
    }


    .about-page .moment-tag-slot--competitive
    .moment-tag {
        width:
                140px;
    }



    /* اشراف كامل */

    .about-page .moment-tag-slot--supervision {
        top:
                326px;

        left:
                821px;

        width:
                205.647px;

        height:
                67.124px;
    }


    .about-page .moment-tag-slot--supervision
    .moment-tag {
        width:
                202px;

        transform:
                rotate(7.45deg);
    }



    /* -----------------------------------------------------
       Why Arcadium — Figma 1:158
    ------------------------------------------------------ */

    .about-page .about-why {
        height:
                437.343px;

        margin-top:
                120px;
    }


    .about-page .about-why__inner {
        position:
                relative;

        width:
                970.617px;

        max-width:
                none;

        height:
                437.343px;

        margin-inline:
                auto;

        transform:
                translateX(-12.692px);
    }


    .about-page .about-why
    .section-title {
        position:
                absolute;

        top:
                0;

        left:
                284px;

        width:
                403px;

        line-height:
                1.2;
    }


    .about-page .why-grid {
        position:
                absolute;

        top:
                129px;

        left:
                0;

        display:
                block;

        width:
                970.617px;

        height:
                308.343px;

        margin:
                0;
    }


    .about-page .why-card {
        position:
                absolute;

        width:
                297px;

        height:
                292px;

        min-height:
                0;

        padding:
                0;
    }



    /* Transport */

    .about-page .why-card--transport {
        top:
                11.107px;

        left:
                -85.978px;
    }



    /* Delivery */

    .about-page .why-card--delivery {
        top:
                -9.295px;

        left:
                188.2px;
    }



    /* Variety */

    .about-page .why-card--variety {
        top:
                -6.184px;

        left:
                496.308px;
    }



    /* Quality */

    .about-page .why-card--quality {
        top:
                -4.696px;

        left:
                791.194px;
    }



    .about-page .why-card h3,
.about-page .why-card p {
        position:
                absolute;

        margin:
                0;
    }


    .about-page .why-card h3 {
        font-size:
                36px;

        line-height:
                1.2;
    }


    .about-page .why-card p {
        font-size:
                20px;

        line-height:
                1.2;
    }



    .about-page .why-card--transport h3 {
        top:
                35px;

        right:
                20px;

        left:
                20px;
    }


    .about-page .why-card--transport p {
        top:
                219px;

        right:
                20px;

        left:
                20px;
    }



    .about-page .why-card--delivery h3 {
        top:
                35px;

        right:
                20px;

        left:
                64.87px;
    }


    .about-page .why-card--delivery p {
        top:
                187px;

        right:
                28.84px;

        left:
                63.92px;
    }



    .about-page .why-card--variety h3 {
        top:
                24px;

        right:
                20px;

        left:
                112.19px;
    }


    .about-page .why-card--variety p {
        top:
                183px;

        right:
                20px;

        left:
                20px;
    }



    .about-page .why-card--quality h3 {
        top:
                46px;

        right:
                20px;

        left:
                20px;
    }


    .about-page .why-card--quality p {
        top:
                195px;

        right:
                20px;

        left:
                20px;
    }



    /* Why Icons */

    .about-page .why-card__icon {
        box-shadow:
                none;
    }


    .about-page .why-card--transport
    .why-card__icon {
        top:
                -28.54px;

        left:
                9.91px;

        width:
                59.843px;

        height:
                58.075px;

        transform:
                rotate(180deg)
                scaleY(-1);
    }



    .about-page .why-card--delivery
    .why-card__icon {
        top:
                -31px;

        left:
                5px;

        width:
                77.41px;

        height:
                77.41px;

        overflow:
                visible;

        background:
                transparent;
    }


    .about-page .why-card--delivery
    .why-card__icon img {
        width:
                59.135px;

        height:
                59.135px;

        border-radius:
                50%;

        transform:
                rotate(-22.77deg);
    }



    .about-page .why-card--variety
    .why-card__icon {
        top:
                -23.48px;

        left:
                14.91px;

        width:
                66.526px;

        height:
                64.989px;

        overflow:
                visible;

        background:
                transparent;
    }


    .about-page .why-card--variety
    .why-card__icon img {
        width:
                59.843px;

        height:
                58.075px;

        border-radius:
                50%;

        transform:
                rotate(172.94deg)
                scaleY(-1);
    }



    .about-page .why-card--quality
    .why-card__icon {
        top:
                -35.34px;

        left:
                20.38px;

        width:
                81.312px;

        height:
                81.312px;

        overflow:
                visible;

        background:
                transparent;
    }


    .about-page .why-card--quality
    .why-card__icon img {
        width:
                68.494px;

        height:
                68.494px;

        border-radius:
                50%;

        transform:
                rotate(-12.08deg);
    }



    /* -----------------------------------------------------
       Exact vertical rhythm
       636 → 1189 → 1813 → 2370.343 → 3026.343
    ------------------------------------------------------ */

    .about-page .about-games {
        height:
                536px;

        margin-top:
                120px;

        padding:
                0;
    }


    .about-page .about-games
    .section-shell {
        height:
                536px;
    }


    .about-page .about-cta {
        margin-top:
                120px;
    }

}



/* =========================================================
   Laptop
========================================================= */

@media
(max-width: 1280px)
and
(min-width: 992px) {

    .about-page .story-grid {
        grid-template-columns:
      minmax(0, .95fr)
      minmax(0, .95fr)
      minmax(0, 2fr);
    }


    .about-page .story-card h2,
.about-page .moments-copy h2 {
        font-size:
                54px;
    }


    .about-page .story-card p,
.about-page .moments-copy p,
.about-page .why-card p {
        font-size:
                18px;
    }


    .about-page .story-card__coin {
        width:
                160px;

        height:
                160px;
    }


    .about-page .why-card h3 {
        font-size:
                31px;
    }


    .about-page .why-card p {
        margin-top:
                64px;
    }

}



/* =========================================================
   Tablet
========================================================= */

@media
(max-width: 991.98px) {

    .about-page .about-main {
        background:
                radial-gradient(
                        ellipse 180px 430px at -80px 1200px,
                        rgba(177, 44, 204, .24),
                        rgba(177, 44, 204, 0) 75%
                ),
                radial-gradient(
                        ellipse 180px 430px at calc(100% + 80px) 1750px,
                        rgba(177, 44, 204, .24),
                        rgba(177, 44, 204, 0) 75%
                ),
                var(--about-bg);
    }


    .about-page .about-shell {
        width:
                calc(100% - 36px);
    }


    .about-page .about-story {
        margin-top:
                52px;
    }



    /* Story */

    .about-page .story-grid {
        grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      );

        gap:
                18px;

        min-height:
                0;
    }


    .about-page .story-card {
        min-height:
                340px;
    }


    .about-page .story-card--about {
        grid-column:
                1 / -1;

        grid-row:
                1;

        min-height:
                380px;

        padding:
                36px
                32px;
    }


    .about-page .story-card--mission,
.about-page .story-card--vision {
        padding:
                34px
                24px;
    }


    .about-page .story-card h2 {
        font-size:
                clamp(
                        42px,
                        7vw,
                        54px
                );
    }


    .about-page .story-card p {
        font-size:
                17px;

        line-height:
                1.7;
    }


    .about-page .story-card--about p {
        right:
                32px;

        bottom:
                40px;

        width:
                min(
                        55%,
                        370px
                );
    }


    .about-page .story-card__coin {
        left:
                24px;

        bottom:
                18px;

        width:
                150px;

        height:
                150px;
    }



    /* Section spacing */

    .about-page .about-moments,
.about-page .about-why,
.about-page .about-games {
        margin-top:
                80px;
    }



    /* Moments */

    .about-page .moments-panel {
        min-height:
                0;

        padding:
                58px
                28px
                52px;
    }


    .about-page .moments-copy h2 {
        font-size:
                clamp(
                        42px,
                        7vw,
                        54px
                );
    }


    .about-page .moments-copy p {
        font-size:
                16px;

        line-height:
                1.8;
    }


    .about-page .moment-tags {
        margin-top:
                52px;
    }



    /* Why */

    .about-page .why-grid {
        grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      );

        gap:
                44px
                28px;

        width:
                min(
                        100%,
                        760px
                );

        margin-top:
                68px;
    }


    .about-page .why-card {
        --card-rotate:
                0deg;

        min-height:
                270px;
    }


    .about-page .why-card:nth-child(odd) {
        --card-rotate:
                -3deg;
    }


    .about-page .why-card:nth-child(even) {
        --card-rotate:
                3deg;
    }


    .about-page .why-card h3 {
        font-size:
                32px;
    }


    .about-page .why-card p {
        margin-top:
                64px;

        font-size:
                17px;

        line-height:
                1.5;
    }



    /* Games */

    .about-page .about-games {
        padding-right:
                18px;

        padding-left:
                18px;
    }


    .about-page .about-games
    .section-shell {
        width:
                100%;
    }

}



/* =========================================================
   Mobile
========================================================= */

@media
(max-width: 575.98px) {

    .about-page .about-shell {
        width:
                calc(100% - 28px);
    }


    .about-page .about-story {
        margin-top:
                38px;
    }



    /* Story */

    .about-page .story-grid {
        grid-template-columns:
      minmax(0, 1fr);

        gap:
                14px;
    }


    .about-page .story-card,
.about-page .story-card--about {
        grid-column:
                auto;

        grid-row:
                auto;

        min-height:
                310px;

        padding:
                30px
                22px;
    }


    .about-page .story-card--about {
        order:
                -1;

        min-height:
                220px;
    }


    .about-page .story-card h2 {
        font-size:
                32px;
    }


    .about-page .story-card p {
        font-size:
                14px;
    }


    .about-page .story-card--about p {
        position:
                relative;

        right:
                auto;

        bottom:
                auto;

        width:
                100%;

        margin-top:
                28px;

        padding-left:
                88px;
    }


    .about-page .story-card__coin {
        left:
                12px;

        bottom:
                8px;

        width:
                105px;

        height:
                105px;
    }



    /* Section spacing */

    .about-page .about-moments,
.about-page .about-why,
.about-page .about-games {
        margin-top:
                64px;
    }



    /* Moments */

    .about-page .moments-panel {
        padding:
                44px
                18px
                38px;

        border-radius:
                24px;
    }


    .about-page .moments-copy h2 {
        font-size:
                40px;
    }


    .about-page .moments-copy p {
        font-size:
                14px;
    }


    .about-page .moments-copy__line {
        display:
                inline;
    }


    .about-page .moments-copy__line
    +
    .moments-copy__line::before {
        content:
                " ";
    }


    .about-page .moment-tags {
        gap:
                10px
                8px;

        margin-top:
                38px;
    }


    .about-page .moment-tag {
        min-height:
                36px;

        padding:
                7px
                12px;

        font-size:
                16px;
    }



    /* Why */

    .about-page .why-grid {
        grid-template-columns:
      minmax(0, 1fr);

        gap:
                48px;

        width:
                min(
                        100%,
                        340px
                );

        margin-top:
                62px;
    }


    .about-page .why-card,
.about-page .why-card:nth-child(odd),
.about-page .why-card:nth-child(even) {
        --card-rotate:
                0deg;

        min-height:
                250px;

        padding:
                40px
                18px
                24px;
    }


    .about-page .why-card h3 {
        font-size:
                31px;
    }


    .about-page .why-card p {
        margin-top:
                54px;

        font-size:
                16px;
    }


    .about-page .why-card__icon {
        top:
                -27px;

        left:
                18px;

        width:
                58px;

        height:
                58px;
    }



    /* Games */

    .about-page .about-games {
        padding-right:
                14px;

        padding-left:
                14px;
    }

}



/* =========================================================
   Reduced Motion
========================================================= */

@media
(prefers-reduced-motion: reduce) {

    .about-page .about-section-reveal,
.about-page .story-card,
.about-page .story-card__coin,
.about-page .moment-tag,
.about-page .why-card {
        transition:
                none !important;
    }


    .about-page .about-reveal-ready
    .about-section-reveal {
        opacity:
                1;

        transform:
                none;
    }

}


/* =========================================================
   V20 MERGED SOURCE: Articles listing + shared article cards
   ORIGINAL: assets/css/articles.css
========================================================= */

/* =========================================================
   Arcadium — Articles / Blog page
   Figma frame: 1:6 — Articles
   Desktop reference: 1440 × 3117

   Shared:
   - Header / Hero / Breadcrumb = contact.css
   - Topic tabs                  = faq.css (.faq-tabs / .faq-tab)
   - CTA / Footer                = style.css
   - Tab behavior                = faq.js

   Page-only:
   - Blog layout
   - Article card component
   - Topic-specific tab widths
   - Responsive layout
   - Section reveal polish
========================================================= */

.articles-page {
    background: #130f28;
    overflow-x: hidden;
}


.articles-page .articles-hero__content p {
    max-width: 815px;
}


/* =========================================================
   MAIN
========================================================= */

.articles-page .articles-main {
    position: relative;

    display: flow-root;

    overflow: visible;

    isolation: isolate;

    background: #130f28;
}


/* =========================================================
   SHARED FIGMA EDGE GLOWS

   Same render logic locked for Packages:
   153 × 662 / #B12CCC @ 58% / browser blur 100px.

   Only page positions change.
========================================================= */

.articles-page .articles-main::before,
.articles-page .articles-main::after {
    content: "";

    position: absolute;
    z-index: 0;

    width: 153px;
    height: 662px;

    border-radius: 50%;

    background:
            rgba(
                    177,
                    44,
                    204,
                    .58
            );

    filter:
            blur(100px);

    pointer-events: none;

    user-select: none;
}


.articles-page .articles-main::before {
    top: 1179px;

    right: -153px;
}


.articles-page .articles-main::after {
    top: 892px;

    left: -153px;
}


.articles-page .articles-main > section {
    position: relative;

    z-index: 1;
}


/* =========================================================
   BROWSER / TOPICS
========================================================= */

.articles-page .articles-browser {
    display: flex;

    flex-direction: column;

    align-items: center;

    width:
            min(
                    calc(100% - 48px),
                    1205px
            );

    margin:
            -42px
            auto
            0;
}


.articles-page .articles-topics {
    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 44px;

    width: 100%;
}


.articles-page .articles-topics > h2 {
    min-height: 77px;

    margin: 0;

    color: #fff;

    font-family:
            var(--display-font);

    font-size: 64px;
    font-weight: 400;

    line-height: 1.2;

    letter-spacing:
            -.96px;

    text-align: center;
}


/* =========================================================
   SHARED TAB COMPONENT
   PAGE PLACEMENT ONLY

   Base tab styling stays in faq.css.
========================================================= */

.articles-page .articles-tabs-shell {
    display: flex;

    direction: ltr;

    justify-content: flex-end;

    width:
            min(
                    calc(100% - 48px),
                    805px
            );

    height: 82px;

    margin:
            0
            auto;

    overflow: visible;
}


.articles-page .articles-tabs-shell
.faq-tabs {
    flex:
            0
            0
            815px;
}


/* Exact Articles tab widths */

.articles-page
.faq-tab--events {
    --faq-tab-width: 139px;
}


.articles-page
.faq-tab--games {
    --faq-tab-width: 212px;
}


.articles-page
.faq-tab--ideas {
    --faq-tab-width: 167px;
}


.articles-page
.faq-tab--corporate {
    --faq-tab-width: 226px;
}


/* =========================================================
   ARTICLE PANEL / GRID
========================================================= */

.articles-page .articles-panel {
    width: 100%;

    margin-top: 72px;
}


.articles-page .articles-grid {
    display: flex;

    direction: ltr;

    flex-wrap: wrap;

    align-items: stretch;
    justify-content: center;

    gap:
            40px
            20px;

    width: 100%;
}


.articles-page .articles-grid > [hidden],
.articles-page .articles-grid > .is-tab-hidden {
    display: none !important;
}


/* =========================================================
   FILTER ENTRANCE

   faq.js updates visibility FIRST.

   Then only visible cards receive the animation.

   This makes every tab click immediate and reliable.
========================================================= */

.articles-page .article-card.is-tab-entering {
    animation:
            article-card-filter-in
            .48s
            cubic-bezier(
                    .2,
                    .78,
                    .2,
                    1
            )
            both;

    animation-delay:
            calc(
                    var(--tab-order, 0)
                    * 42ms
            );
}


@keyframes article-card-filter-in {

    from {
        opacity: 0;

        transform:
                translateY(18px)
                scale(.982);
    }


    to {
        opacity: 1;

        transform:
                translateY(0)
                scale(1);
    }

}


/* =========================================================
   ARTICLE CARD

   Width  = 387
   Height = 555
   Image  = 387 × 313

   IMPORTANT:
   There is NO permanently active card anymore.
========================================================= */

.articles-page .article-card {
    --pointer-x: 50%;
    --pointer-y: 42%;

    --tilt-x: 0deg;
    --tilt-y: 0deg;

    position: relative;

    flex:
            0
            0
            387px;

    width: 387px;
    height: 555px;

    overflow: hidden;

    border:
            0;

    border-radius: 24px;

    background:
            transparent;

    color: #fff;

    direction: rtl;

    text-align: right;

    isolation: isolate;

    transform:
            translateY(0)
            perspective(900px)
            rotateX(0deg)
            rotateY(0deg);

    transform-origin:
            center;

    will-change:
            transform;

    transition:
            background-color
            .3s
            ease,

            color
            .28s
            ease,

            transform
            .34s
            cubic-bezier(
                    .2,
                    .78,
                    .2,
                    1
            ),

            box-shadow
            .36s
            ease;
}


/* =========================================================
   POINTER GLOW
========================================================= */

.articles-page .article-card::before {
    content: "";

    position: absolute;
    z-index: 4;

    inset: 0;

    border-radius:
            inherit;

    background:
            radial-gradient(
                    circle
                    190px
                    at
                    var(--pointer-x)
                    var(--pointer-y),

                    rgba(
                            146,
                            9,
                            242,
                            .11
                    ),

                    rgba(
                            146,
                            9,
                            242,
                            .035
                    )
                    45%,

                    transparent
                    74%
            );

    opacity: 0;

    pointer-events: none;

    transition:
            opacity
            .28s
            ease;
}


/* =========================================================
   LINK
========================================================= */

.articles-page .article-card__link {
    position: relative;

    z-index: 1;

    display: flex;

    flex-direction: column;

    gap: 0;

    width: 100%;
    height: 100%;

    color: inherit;

    text-decoration: none;
}


.articles-page .article-card__link:hover,
.articles-page .article-card__link:focus,
.articles-page .article-card__link:active {
    color: inherit;

    text-decoration: none;
}


.articles-page .article-card__link:focus-visible {
    outline:
            2px
            solid
            #dd37ff;

    outline-offset:
            -4px;

    border-radius:
            inherit;
}


/* =========================================================
   CARD MEDIA
========================================================= */

.articles-page .article-card__media {
    position: relative;

    display: block;

    flex:
            0
            0
            313px;

    width: 100%;
    height: 313px;

    overflow: hidden;

    background:
            #21183c;
}


.articles-page .article-card__media::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
            linear-gradient(
                    180deg,

                    rgba(
                            19,
                            15,
                            40,
                            0
                    )
                    52%,

                    rgba(
                            71,
                            12,
                            133,
                            .08
                    )
                    100%
            );

    opacity: 0;

    pointer-events: none;

    transition:
            opacity
            .34s
            ease;
}


.articles-page .article-card__media img {
    display: block;

    width: 100%;
    height: 100%;

    max-width: none;

    object-fit: cover;

    object-position:
            center;

    transform:
            scale(1.002);

    transform-origin:
            center;

    transition:
            transform
            .68s
            cubic-bezier(
                    .2,
                    .78,
                    .2,
                    1
            ),

            filter
            .38s
            ease;
}


/* =========================================================
   CARD BODY
========================================================= */

.articles-page .article-card__body {
    display: flex;

    flex:
            1
            1
            auto;

    flex-direction:
            column;

    align-items:
            flex-end;

    min-height:
            230px;

    padding:
            20px
            16px
            24px
            20px;

    background:
            transparent;

    border-radius:
            0
            0
            24px
            24px;

    transition:
            background-color
            .28s
            ease,

            transform
            .34s
            cubic-bezier(
                    .2,
                    .78,
                    .2,
                    1
            );
                border: 1px solid #ffffff57;
    border-top: 0;
        backdrop-filter: blur(18px) saturate(145%);
}


.articles-page .article-card__copy {
    display: flex;

    flex-direction:
            column;

    align-items:
            flex-end;

    gap: 16px;

    width: 100%;
}


/* =========================================================
   TITLE
========================================================= */

.articles-page .article-card__title {
    display: block;

    width:
            calc(
                    100% + 17px
            );

    margin:
            0
            0
            0
            -17px;

    color:
            inherit;

    font-family:
            var(--body-font);

    font-size: 20px;
    font-weight: 400;

    line-height: 1.3;

    transition:
            color
            .28s
            ease,

            transform
            .32s
            cubic-bezier(
                    .2,
                    .78,
                    .2,
                    1
            );
}


/* =========================================================
   EXCERPT
========================================================= */

.articles-page .article-card__excerpt {
    display: block;

    width: 100%;

    color:
            inherit;

    font-family:
            var(--body-font);

    font-size: 16px;
    font-weight: 300;

    line-height: 1.3;

    transition:
            color
            .28s
            ease,

            opacity
            .28s
            ease,

            transform
            .34s
            cubic-bezier(
                    .2,
                    .78,
                    .2,
                    1
            );
}


/* =========================================================
   READ MORE

   ONE underline only.

   No ::after fake line.
========================================================= */

.articles-page .article-card__more {
    display:
            block;

    width:
            100%;

    margin-top:
            auto;

    text-align:
            right;

    color:
            inherit;

    font-family:
            "Cairo",
            var(--body-font),
            sans-serif;

    font-size: 16px;
    font-weight: 700;

    line-height: 1.45;

    letter-spacing:
            .16px;

    text-decoration-line:
            underline;

    text-decoration-thickness:
            1px;

    text-decoration-color:
            currentColor;

    text-underline-offset:
            3px;

    transition:
            color
            .25s
            ease,

            transform
            .32s
            cubic-bezier(
                    .2,
                    .78,
                    .2,
                    1
            ),

            text-underline-offset
            .25s
            ease;
}


/* =========================================================
   PREMIUM HOVER / FOCUS
========================================================= */

.articles-page .article-card:hover,
.articles-page .article-card:focus-within {
    background:
            transparent;

    color:
            #121028;

    transform:
            translateY(-10px)
            perspective(900px)
            rotateX(
                    var(--tilt-x)
            )
            rotateY(
                    var(--tilt-y)
            );

    box-shadow:
            0
            26px
            54px
            rgba(
                    0,
                    0,
                    0,
                    .22
            ),

            0
            10px
            32px
            rgba(
                    146,
                    9,
                    242,
                    .10
            );
}


.articles-page .article-card:hover::before,
.articles-page .article-card:focus-within::before {
    opacity: 0;
}


.articles-page .article-card:hover
.article-card__media
img,
.articles-page .article-card:focus-within
.article-card__media
img {
    transform:
            scale(1.065);

    filter:
            saturate(1.08)
            contrast(1.025);
}


.articles-page .article-card:hover
.article-card__media::after,
.articles-page .article-card:focus-within
.article-card__media::after {
    opacity: 1;
}


.articles-page .article-card:hover
.article-card__body,
.articles-page .article-card:focus-within
.article-card__body {
    background:
            #fff;

    transform:
            translateY(-2px);
}


.articles-page .article-card:hover
.article-card__title,
.articles-page .article-card:focus-within
.article-card__title {
    transform:
            translateY(-2px);
}


.articles-page .article-card:hover
.article-card__excerpt,
.articles-page .article-card:focus-within
.article-card__excerpt {
    opacity: .88;

    transform:
            translateY(-1px);
}


.articles-page .article-card:hover
.article-card__more,
.articles-page .article-card:focus-within
.article-card__more {
    color:
            #470c85;

    transform:
            none;

    text-underline-offset:
            5px;
}


/* =========================================================
   CTA / FOOTER
========================================================= */

.articles-page .articles-cta {
    margin-top:
            166px;
}


.articles-page .articles-footer {
    margin-top:
            161px;
}


/* =========================================================
   REVEAL
========================================================= */

.articles-page .articles-reveal {
    opacity: 1;

    transform:
            none;
}


.articles-page .articles-reveal-ready
.articles-reveal {
    opacity: 0;

    transform:
            translateY(24px);

    transition:
            opacity
            .65s
            ease,

            transform
            .72s
            cubic-bezier(
                    .2,
                    .75,
                    .2,
                    1
            );
}


.articles-page .articles-reveal-ready
.articles-reveal.is-visible {
    opacity: 1;

    transform:
            none;
}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1280px) {

    .articles-page .articles-browser {
        width:
                min(
                        calc(100% - 48px),
                        1000px
                );
    }


    .articles-page .articles-grid {
        gap:
                28px
                20px;
    }


    .articles-page .article-card {
        flex-basis:
                calc(
                        50% - 10px
                );

        width:
                calc(
                        50% - 10px
                );

        max-width:
                387px;
    }


    .articles-page .articles-cta {
        margin-top:
                110px;
    }


    .articles-page .articles-footer {
        margin-top:
                120px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

    .articles-page .articles-main::before,
.articles-page .articles-main::after {
        width: 140px;
        height: 610px;

        filter:
                blur(90px);
    }


    .articles-page .articles-main::before {
        top: 1250px;

        right: -140px;
    }


    .articles-page .articles-main::after {
        top: 720px;

        left: -140px;
    }


    .articles-page .articles-browser {
        width:
                calc(
                        100% - 36px
                );

        margin-top:
                -24px;
    }


    .articles-page .articles-topics {
        gap:
                34px;
    }


    .articles-page .articles-topics > h2 {
        min-height: 0;

        font-size: 52px;

        line-height: 1.15;
    }


    .articles-page .articles-tabs-shell {
        width: 100%;

        height: auto;

        justify-content:
                flex-start;
    }


    .articles-page .articles-tabs-shell
    .faq-tabs {
        flex:
                1
                1
                auto;

        width: 100%;
    }


    .articles-page
    .faq-tab--events,
.articles-page
    .faq-tab--games,
.articles-page
    .faq-tab--ideas,
.articles-page
    .faq-tab--corporate {
        --faq-tab-width: auto;

        width: auto;

        min-width: 132px;
    }


    .articles-page
    .faq-tab--corporate {
        min-width:
                190px;
    }


    .articles-page
    .faq-tab--ideas {
        min-width:
                156px;
    }


    .articles-page .articles-panel {
        margin-top:
                48px;
    }


    .articles-page .articles-grid {
        gap:
                20px
                18px;
    }


    .articles-page .article-card {
        flex-basis:
                calc(
                        50% - 9px
                );

        width:
                calc(
                        50% - 9px
                );

        max-width:
                none;

        height: auto;

        min-height:
                520px;
    }


    .articles-page .article-card__media {
        flex-basis:
                clamp(
                        230px,
                        35vw,
                        313px
                );

        height:
                clamp(
                        230px,
                        35vw,
                        313px
                );
    }


    .articles-page .article-card__body {
        min-height:
                220px;
    }


    .articles-page .articles-cta {
        margin-top:
                84px;
    }


    .articles-page .articles-footer {
        margin-top:
                68px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575.98px) {

    .articles-page .articles-hero__content h1 {
        font-size:
                44px;
    }


    .articles-page .articles-hero__content p {
        font-size:
                16px;

        line-height:
                1.7;
    }


    .articles-page .articles-main::before,
.articles-page .articles-main::after {
        width: 110px;
        height: 500px;

        filter:
                blur(72px);
    }


    .articles-page .articles-main::before {
        top: 1680px;

        right: -110px;
    }


    .articles-page .articles-main::after {
        top: 920px;

        left: -110px;
    }


    .articles-page .articles-browser {
        width:
                calc(
                        100% - 28px
                );

        margin-top:
                -16px;
    }


    .articles-page .articles-topics {
        gap:
                26px;
    }


    .articles-page .articles-topics > h2 {
        font-size:
                40px;
    }


    .articles-page
    .faq-tab--events,
.articles-page
    .faq-tab--games,
.articles-page
    .faq-tab--ideas,
.articles-page
    .faq-tab--corporate {
        min-width:
                112px;
    }


    .articles-page
    .faq-tab--corporate {
        min-width:
                164px;
    }


    .articles-page
    .faq-tab--ideas {
        min-width:
                134px;
    }


    .articles-page .articles-panel {
        margin-top:
                34px;
    }


    .articles-page .articles-grid {
        gap:
                16px;
    }


    .articles-page .article-card {
        flex-basis:
                100%;

        width: 100%;

        max-width:
                387px;

        min-height:
                0;
    }


    .articles-page .article-card__media {
        flex-basis:
                clamp(
                        240px,
                        78vw,
                        313px
                );

        height:
                clamp(
                        240px,
                        78vw,
                        313px
                );
    }


    .articles-page .article-card__body {
        min-height:
                220px;

        padding:
                18px
                16px
                22px;
    }


    .articles-page .article-card__title {
        width: 100%;

        margin-left: 0;

        font-size:
                19px;
    }


    .articles-page .article-card__excerpt {
        font-size:
                15px;

        line-height:
                1.45;
    }


    .articles-page .articles-cta {
        margin-top:
                68px;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .articles-page .articles-reveal,
.articles-page .articles-grid,
.articles-page .article-card,
.articles-page .article-card.is-tab-entering,
.articles-page .article-card::before,
.articles-page .article-card__media img,
.articles-page .article-card__media::after,
.articles-page .article-card__body,
.articles-page .article-card__title,
.articles-page .article-card__excerpt,
.articles-page .article-card__more {
        transition:
                none !important;

        animation:
                none !important;
    }


    .articles-page .articles-reveal-ready
    .articles-reveal {
        opacity: 1;

        transform: none;
    }

}


/* =========================================================
   V20 MERGED SOURCE: Article single
   ORIGINAL: assets/css/article.css
========================================================= */

/* =========================================================
   Arcadium — Single Article page
   Figma frame: 1:7 — Articles single
   Desktop reference: 1440 × 2888

   Reused from the project:
   - Header / Inner Hero / Breadcrumb = contact.css
   - Purple edge glows              = articles.css (.articles-main)
   - Related article card           = articles.css (.article-card)
   - CTA / Footer                   = style.css
   - Header / drawer behavior       = contact.js
   - Card hover / reveal polish     = articles.js

   Page-only:
   - Single article layout
   - Article typography
   - Share rail placement
   - Video preview placement
   - Responsive flow
========================================================= */

.article-single-page {
    background: #130f28;
    overflow-x: hidden;
}


/* =========================================================
   HERO
========================================================= */

.article-single-page .article-single-hero__content {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.article-single-page .article-single-hero__content .breadcrumb-nav {
    width: auto;
    max-width: 100%;
    align-self: flex-end;
    margin-left: auto;
    margin-right: 0;
    direction: rtl;
    justify-content: flex-start;
    text-align: right;
    font-size: 16px;
    line-height: 1.2;
}

.article-single-page .article-single-hero__content h1 {
    width: min(100%, 815px);
    margin-left: auto;
}

.article-single-page .article-single-hero__content p {
    width: min(100%, 815px);
    margin-left: auto;
}


/* =========================================================
   MAIN LAYOUT

   Figma desktop geometry:
   x = 141
   y = 574
   width = 1201
   sidebar = 391
   gap = 53
   article = 757
========================================================= */

.article-single-page .article-single-layout {
    display: grid;
    grid-template-columns: 391px 757px;
    direction: ltr;
    gap: 53px;
    align-items: start;

    width: min(calc(100% - 48px), 1201px);
    margin: -21px auto 0;
}

.article-single-page .article-single-sidebar,
.article-single-page .article-single-content {
    min-width: 0;
    direction: rtl;
    text-align: right;
}


/* =========================================================
   SIDEBAR / SHARE
========================================================= */

.article-single-page .article-single-sidebar {
    display: flex;
    flex-direction: column;
    gap: 44px;
    width: 391px;
}

.article-single-page .article-share {
    display: flex;
    flex-direction: column;
    gap: 40px;
    width: 100%;
}

.article-single-page .article-share h2,
.article-single-page .article-related > h2 {
    margin: 0;
    color: #fff;
    font-family: "Cairo", var(--body-font), sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.25;
}

.article-single-page .article-share__socials {
    display: flex;
    direction: ltr;
    align-items: center;
    justify-content: space-between;
    width: 391px;
}

.article-single-page .article-share__socials > a {
    position: relative;
    display: grid;
    place-items: center;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    transition:
            transform .28s cubic-bezier(.2, .75, .2, 1),
            filter .28s ease;
}

.article-single-page .article-share__socials > a:hover,
.article-single-page .article-share__socials > a:focus-visible {
    transform: translateY(-5px);
    filter: drop-shadow(0 7px 12px rgba(221, 55, 255, .34));
}

.article-single-page .article-share__socials > a:focus-visible {
    outline: 2px solid #dd37ff;
    outline-offset: 4px;
}

.article-single-page .article-share__socials img {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.article-single-page .article-share__social-layer {
    display: block !important;
}

.article-single-page .article-share__social-layer img {
    position: absolute;
    inset: 0;
        filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7427%) hue-rotate(21deg) brightness(118%) contrast(119%);
}

.article-single-page .article-share__social-layer img + img {
    top: 10px;
    left: 10px;
    width: 20px;
    height: 20px;
}

.article-single-page .article-share__social-layer--x img + img {
    top: 13px;
    left: 13px;
    width: 14px;
    height: 14px;
}


/* =========================================================
   RELATED ARTICLE
========================================================= */

.article-single-page .article-related {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 391px;
}

.article-single-page .article-related > h2 {
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.12px;
}

.article-single-page .article-related .article-card {
    flex: 0 0 auto;
    width: 387px;
    height: 555px;
    max-width: 387px;
}

.article-single-page .article-related .article-card__media {
    background-color: #21183c;
    background-image: none;
}


/* =========================================================
   ARTICLE CONTENT
========================================================= */

.article-single-page .article-single-content {
    display: flex;
    flex-direction: column;
    gap: 44px;
    width: 757px;
    color: #fff;
}

.article-single-page .article-single-text-stack {
    display: flex;
    flex-direction: column;
    gap: 44px;
    width: 100%;
}

.article-single-page .article-copy-block {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
}

.article-single-page .article-copy-block h2 {
    margin: 0;
    color: #fff;
    font-family: var(--body-font);
    font-size: 40px;
    font-weight: 400;
    line-height: 1.15;
    letter-spacing: -.4px;
}

.article-single-page .article-copy-block p {
    margin: 0;
    color: #fff;
    font-family: var(--body-font);
    font-size: 20px;
    font-weight: 300;
    line-height: 1.4;
}

.article-single-page .article-copy-block p > span {
    display: block;
}

.article-single-page .article-copy-block--intro {
    min-height: 274px;
}

.article-single-page .article-single-text-stack > .article-copy-block:not(.article-copy-block--intro),
.article-single-page .article-single-content > .article-copy-block {
    min-height: 210px;
}

.article-single-page .article-copy-block--intro p {
    font-size: 24px;
}


/* =========================================================
   VIDEO PREVIEW

   The current Figma frame is delivered as the exact visual
   preview so the YouTube-style controls stay pixel-faithful.
========================================================= */

.article-single-page .article-video-preview {
    width: 757px;
    height: 437px;
    margin: 0;
    overflow: hidden;
    border-radius: 14px;
    background: #0a0814;
}

.article-single-page .article-video-preview__iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}


/* =========================================================
   CTA / FOOTER PLACEMENT
========================================================= */

.article-single-page .article-single-cta {
    margin-top: 119px;
}


/* =========================================================
   EXACT DESKTOP OFFSETS FROM FIGMA
   The source frame is 1440px wide, so the asymmetric offsets
   start at that width; narrower laptops stay centered.
========================================================= */

@media (min-width: 1440px) {

    .article-single-page .article-single-layout {
        transform: translateX(21.5px);
    }

    .article-single-page .article-single-cta {
        transform: translateX(38.5px);
    }

}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1280px) {

    .article-single-page .article-single-layout {
        grid-template-columns: minmax(300px, 34%) minmax(0, 1fr);
        gap: 36px;
        width: min(calc(100% - 48px), 1120px);
        transform: none;
    }

    .article-single-page .article-single-sidebar,
.article-single-page .article-single-content,
.article-single-page .article-video-preview {
        width: 100%;
    }

    .article-single-page .article-share__socials,
.article-single-page .article-related {
        width: 100%;
    }

    .article-single-page .article-related .article-card {
        width: 100%;
        max-width: 387px;
    }

    .article-single-page .article-copy-block h2 {
        font-size: 36px;
    }

    .article-single-page .article-copy-block--intro p {
        font-size: 21px;
    }

    .article-single-page .article-video-preview {
        height: auto;
        aspect-ratio: 757 / 437;
    }

    .article-single-page .article-single-cta {
        transform: none;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

    .article-single-page .article-single-hero__content .breadcrumb-nav {
        font-size: 16px;
    }

    .article-single-page .article-single-hero__content h1 {
        width: min(100%, 720px);
        font-size: 48px;
    }

    .article-single-page .article-single-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 64px;
        width: calc(100% - 36px);
        margin-top: 40px;
    }

    .article-single-page .article-single-content {
        grid-row: 1;
        gap: 40px;
    }

    .article-single-page .article-single-sidebar {
        grid-row: 2;
        gap: 42px;
        width: min(100%, 620px);
        margin-inline: auto;
    }

    .article-single-page .article-single-text-stack {
        gap: 40px;
    }

    .article-single-page .article-copy-block {
        gap: 18px;
        min-height: 0 !important;
    }

    .article-single-page .article-copy-block h2 {
        font-size: 32px;
        line-height: 1.25;
    }

    .article-single-page .article-copy-block p,
.article-single-page .article-copy-block--intro p {
        font-size: 18px;
        line-height: 1.65;
    }

    .article-single-page .article-share {
        gap: 24px;
    }

    .article-single-page .article-share__socials {
        width: min(100%, 391px);
    }

    .article-single-page .article-related {
        width: min(100%, 387px);
    }

    .article-single-page .article-single-cta {
        margin-top: 84px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575.98px) {

    .article-single-page .article-single-hero__content .breadcrumb-nav {
        width: 100%;
        gap: 7px;
        font-size: 12px;
        line-height: 1.5;
    }

    .article-single-page .article-single-hero__content h1 {
        width: 100%;
        margin-top: 18px;
        font-size: clamp(36px, 10.8vw, 44px);
        line-height: 1.15;
    }

    .article-single-page .article-single-hero__content p {
        width: 100%;
        font-size: 14px;
        line-height: 1.75;
    }

    .article-single-page .article-single-layout {
        gap: 54px;
        width: calc(100% - 28px);
        margin-top: 28px;
    }

    .article-single-page .article-single-content {
        gap: 32px;
    }

    .article-single-page .article-single-text-stack {
        gap: 32px;
    }

    .article-single-page .article-copy-block {
        gap: 14px;
    }

    .article-single-page .article-copy-block h2 {
        font-size: 27px;
        line-height: 1.3;
        letter-spacing: 0;
    }

    .article-single-page .article-copy-block p,
.article-single-page .article-copy-block--intro p {
        font-size: 16px;
        line-height: 1.75;
    }

    .article-single-page .article-video-preview {
        border-radius: 12px;
    }

    .article-single-page .article-single-sidebar {
        gap: 38px;
    }

    .article-single-page .article-share h2,
.article-single-page .article-related > h2 {
        font-size: 21px;
    }

    .article-single-page .article-share__socials {
        gap: 10px;
        justify-content: space-between;
    }

    .article-single-page .article-share__socials > a {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
    }

    .article-single-page .article-share__socials img {
        width: 38px;
        height: 38px;
    }

    .article-single-page .article-related,
.article-single-page .article-related .article-card {
        width: 100%;
        max-width: 387px;
    }

    .article-single-page .article-single-cta {
        margin-top: 68px;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .article-single-page .article-share__socials > a {
        transition: none !important;
    }

    .article-single-page .article-share__socials > a:hover,
.article-single-page .article-share__socials > a:focus-visible {
        transform: none;
    }

}


/* =========================================================
   V20 MERGED SOURCE: Privacy policy
   ORIGINAL: assets/css/privacy-policy.css
========================================================= */

.privacy-page {
  position: relative;
  min-width: 0;
  overflow-x: hidden;
  background: #130f28;
}

.privacy-page .privacy-edge-glows {
  position: absolute;
  z-index: 0;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.privacy-page .privacy-edge-glows::before,
.privacy-page .privacy-edge-glows::after {
  content: "";
  position: absolute;
  width: 153px;
  height: 662px;
  border-radius: 50%;
  background: rgba(177, 44, 204, .58);
  filter: blur(100px);
  pointer-events: none;
  user-select: none;
}

.privacy-page .privacy-edge-glows::before {
  top: 1774px;
  right: -153px;
}

.privacy-page .privacy-edge-glows::after {
  top: 1487px;
  left: -153px;
}

.privacy-page .privacy-hero,
.privacy-page .privacy-main,
.privacy-page .privacy-footer {
  position: relative;
  z-index: 1;
}

.privacy-page .privacy-hero__content .breadcrumb-nav {
  min-height: 24px;
  font-size: 16px;
  line-height: 1.2;
}

.privacy-page .privacy-hero__content .breadcrumb-separator {
  font-size: 20px;
  line-height: 1.2;
}

.privacy-page .privacy-main {
  display: flow-root;
  overflow: visible;
  background: transparent;
}

.privacy-page .privacy-content {
  display: flex;
  flex-direction: column;
  gap: 44px;
  width: min(calc(100% - 48px), 1248px);
  margin: -34px auto 0;
  color: #fff;
  text-align: right;
}

.privacy-page .privacy-primary-sections {
  display: flex;
  flex-direction: column;
  gap: 44px;
  width: 757px;
  max-width: 100%;
  margin-right: 0;
  margin-left: auto;
}

.privacy-page .privacy-section {
  width: 100%;
}

.privacy-page .privacy-section--collection {
  min-height: 444px;
}

.privacy-page .privacy-section--usage {
  min-height: 238px;
}

.privacy-page .privacy-section--sharing {
  width: 862px;
  max-width: 100%;
  min-height: 126px;
  margin-right: 0;
  margin-left: auto;
}

.privacy-page .privacy-section h2 {
  margin: 0;
  color: #fff;
  font-family: var(--body-font);
  font-size: 40px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -.4px;
}

.privacy-page .privacy-copy {
  margin-top: 24px;
  color: #fff;
  font-family: var(--body-font);
  font-weight: 300;
}

.privacy-page .privacy-copy p,
.privacy-page .privacy-copy ul {
  margin: 0;
}

.privacy-page .privacy-copy ul {
  padding: 0;
  list-style: disc outside;
}

.privacy-page .privacy-copy li {
  padding: 0;
}

.privacy-page .privacy-copy--collection {
  font-size: 24px;
  line-height: 1.4;
}

.privacy-page .privacy-copy--collection li {
  margin-right: 36px;
}

.privacy-page .privacy-copy--usage,
.privacy-page .privacy-copy--sharing {
  font-size: 20px;
  line-height: 1.4;
}

.privacy-page .privacy-copy--usage li {
  margin-right: 30px;
}

.privacy-page .privacy-footer {
  min-height: 462px;
  margin-top: 122px;
}

.privacy-page .privacy-footer .footer-inner {
  min-height: 378px;
  padding-bottom: 52px;
}

.privacy-page .privacy-footer .copyright {
  display: grid;
  place-items: center;
  min-height: 84px;
  padding: 0 24px;
}

@media (min-width: 992px) {
  .privacy-page .privacy-hero .contact-header {
    left: calc(50% + 10.5px);
    width: min(calc(100% - 48px), 1223px);
  }

  .privacy-page .privacy-hero .contact-hero__media img {
    object-position: center center;
  }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  .privacy-page .privacy-primary-sections {
    width: min(61%, 757px);
  }

  .privacy-page .privacy-section--sharing {
    width: min(70%, 862px);
  }

  .privacy-page .privacy-section h2 {
    font-size: 36px;
  }

  .privacy-page .privacy-copy--collection {
    font-size: 21px;
  }

  .privacy-page .privacy-copy--usage,
.privacy-page .privacy-copy--sharing {
    font-size: 18px;
  }
}

@media (max-width: 991.98px) {
  .privacy-page .privacy-edge-glows::before {
    top: auto;
    right: -145px;
    bottom: 10px;
  }

  .privacy-page .privacy-edge-glows::after {
    top: auto;
    bottom: 360px;
    left: -145px;
  }

  .privacy-page .privacy-hero__content .breadcrumb-nav {
    min-height: 0;
    font-size: 16px;
  }

  .privacy-page .privacy-content {
    gap: 40px;
    width: calc(100% - 36px);
    margin-top: 48px;
  }

  .privacy-page .privacy-primary-sections {
    gap: 40px;
    width: 100%;
    margin: 0;
  }

  .privacy-page .privacy-section--collection,
.privacy-page .privacy-section--usage,
.privacy-page .privacy-section--sharing {
    width: 100%;
    min-height: 0;
    margin: 0;
  }

  .privacy-page .privacy-section h2 {
    font-size: clamp(30px, 4.8vw, 36px);
    line-height: 1.25;
  }

  .privacy-page .privacy-copy {
    margin-top: 18px;
  }

  .privacy-page .privacy-copy--collection {
    font-size: 18px;
    line-height: 1.75;
  }

  .privacy-page .privacy-copy--usage,
.privacy-page .privacy-copy--sharing {
    font-size: 17px;
    line-height: 1.75;
  }

  .privacy-page .privacy-copy--collection li,
.privacy-page .privacy-copy--usage li {
    margin-right: 28px;
  }

  .privacy-page .privacy-footer {
    min-height: 0;
    margin-top: 72px;
  }

  .privacy-page .privacy-footer .footer-inner {
    min-height: 0;
    padding-bottom: 36px;
  }

  .privacy-page .privacy-footer .copyright {
    display: block;
    min-height: 0;
    padding: 18px 24px 22px;
  }
}

@media (max-width: 575.98px) {
  .privacy-page .privacy-edge-glows::before,
.privacy-page .privacy-edge-glows::after {
    width: 118px;
    height: 510px;
    filter: blur(90px);
  }

  .privacy-page .privacy-edge-glows::before {
    right: -112px;
  }

  .privacy-page .privacy-edge-glows::after {
    bottom: 410px;
    left: -112px;
  }

  .privacy-page .privacy-hero__content .breadcrumb-nav {
    font-size: 14px;
  }

  .privacy-page .privacy-hero__content .breadcrumb-separator {
    font-size: 17px;
  }

  .privacy-page .privacy-content {
    gap: 34px;
    width: calc(100% - 28px);
    margin-top: 38px;
  }

  .privacy-page .privacy-primary-sections {
    gap: 34px;
  }

  .privacy-page .privacy-section h2 {
    font-size: 27px;
    line-height: 1.3;
    letter-spacing: 0;
  }

  .privacy-page .privacy-copy {
    margin-top: 14px;
  }

  .privacy-page .privacy-copy--collection,
.privacy-page .privacy-copy--usage,
.privacy-page .privacy-copy--sharing {
    font-size: 15px;
    line-height: 1.8;
  }

  .privacy-page .privacy-copy--collection li,
.privacy-page .privacy-copy--usage li {
    margin-right: 24px;
  }

  .privacy-page .privacy-footer {
    margin-top: 58px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .privacy-page *,
.privacy-page *::before,
.privacy-page *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}


/* =========================================================
   ARCADIUM V20 FINAL — DIRECT FIGMA CONTEXT AUDIT
   File key: D056rkXT5ocMxD4cUqwdIt

   Audited directly from Figma node geometry/style context:
   672:1076 Home          852:232 Contact
   865:364 FAQ            867:602 Works
   883:974 Games          908:314 Basketball
   908:689 Solutions      909:1087 Corporate events
   910:1362 Packages      910:1690 About
   928:639 Articles       928:1026 Article
   952:636 Privacy        938:480 Booking popup
========================================================= */

:root {
  --arc-motion-fast: 180ms;
  --arc-motion-base: 300ms;
  --arc-motion-slow: 520ms;
  --arc-ease-premium: cubic-bezier(.2,.72,.25,1);
  --arc-focus: 0 0 0 3px rgba(146,9,242,.24);
}

html[dir="rtl"], html[dir="rtl"] body { direction: rtl; }
html[dir="rtl"] body { text-align: right; }
html[dir="rtl"] input,
html[dir="rtl"] select,
html[dir="rtl"] textarea,
html[dir="rtl"] button {
  direction: rtl;
  text-align: right;
}
html[dir="rtl"] input,
html[dir="rtl"] textarea { unicode-bidi: plaintext; }
.language-switch[lang="en"] { direction: ltr; text-align: center; }
body { overflow-x: clip; }

/* One premium hover language, using translate longhand so no existing
   Figma transform / perspective / rotation is overwritten. */
.ui-polish-card {
  will-change: translate, filter;
  transition:
    translate var(--arc-motion-base) var(--arc-ease-premium),
    filter var(--arc-motion-base) ease,
    box-shadow var(--arc-motion-base) ease;
}
@media (hover:hover) and (pointer:fine) {
  .ui-polish-card:hover { translate: 0 -3px; filter: brightness(1.025) saturate(1.035); }
  .button:hover,
  .section-button:hover,
  .booking-submit:hover,
  .arc-booking-submit:hover,
  .cta-button:hover,
  .booking-demo__button:hover { translate:0 -2px; filter:brightness(1.07); }
}
:where(a,button,input,select,textarea,[tabindex]):focus-visible {
  outline:2px solid rgba(221,55,255,.92);
  outline-offset:3px;
  box-shadow:var(--arc-focus);
}

/* Unified reveal for page sections that do not already own a custom reveal. */
body.arc-motion-ready .arc-ui-reveal {
  opacity:0;
  translate:0 18px;
  filter:blur(4px);
  transition:
    opacity var(--arc-motion-slow) var(--arc-ease-premium),
    translate var(--arc-motion-slow) var(--arc-ease-premium),
    filter var(--arc-motion-slow) var(--arc-ease-premium);
}
body.arc-motion-ready .arc-ui-reveal.is-arc-ui-visible {
  opacity:1;
  translate:0 0;
  filter:none;
}

/* ---------------------------------------------------------
   Exact Figma edge glow primitive.
   Layer = 153×662 / #B12CCC at 58%; Figma SVG export blur = 100px.
--------------------------------------------------------- */
@media (min-width: 1281px) {
  .faq-page .faq-main::before,
  .faq-page .faq-main::after,
  .games-page .games-main::after,
  .single-game-page .single-game-main::before,
  .single-game-page .single-game-main::after,
  .solutions-page .solutions-main::before,
  .corporate-events-page .corporate-main::before,
  .about-page .about-main::before,
  .about-page .about-main::after {
    width:153px;
    height:662px;
    border-radius:50%;
    background:rgba(177,44,204,.58);
    filter:blur(100px);
    pointer-events:none;
    user-select:none;
  }

  /* Contact 852:232: page x=-57/y=727 and x=1415/y=1139. */
  .contact-form-page .contact-main::before { top:132px; left:-57px; }
  .contact-form-page .contact-main::after { top:544px; right:-128px; }

  /* FAQ 865:364. */
  .faq-page .faq-main::before { top:132px; left:-57px; }
  .faq-page .faq-main::after { top:544px; right:-128px; }

  /* Works 867:602: page x=1421/y=713. */
  .gallery-page .gallery-main::before { top:118px; right:-134px; }
  .gallery-page .gallery-main::after { display:none; }

  /* Games / Basketball / Solutions / Corporate / Packages right glow. */
  .games-page .games-main::after,
  .single-game-page .single-game-main::before,
  .solutions-page .solutions-main::before,
  .corporate-events-page .corporate-main::before,
  .packages-page .packages-main::before { top:136px; right:-141px; }

  /* Basketball second glow: page x=-131/y=1401. */
  .single-game-page .single-game-main::after { top:806px; left:-131px; }

  /* Packages second glow: page x=-153/y=1487. */
  .packages-page .packages-main::after { top:892px; left:-153px; }

  /* About 910:1690: left y=1487, right y=1774. */
  .about-page .about-main::before { top:892px; left:-153px; }
  .about-page .about-main::after { top:1179px; right:-153px; }

  /* Articles 928:639 + Article 928:1026. */
  .articles-page .articles-main::before { top:1179px; right:-153px; }
  .articles-page .articles-main::after { top:892px; left:-153px; }
}

/* Contact Figma node 865:240 / 865:254. */
.contact-form-page .booking-form {
  box-shadow:inset 4px 4px 4px rgba(255,255,255,.3);
}
.contact-form-page .booking-submit {
  min-height:52.802px;
  border-radius:37.686px;
  padding:11.901px;
  font-size:23.802px;
  line-height:1.2;
}

/* Booking popup frame 938:480 stays reusable on every route. */
.arc-booking-popup__dialog,
.arc-booking-form,
.arc-booking-form input,
.arc-booking-form select,
.arc-booking-form textarea { direction:rtl; text-align:right; }

/* Exact Figma export — node 944:523. */
.arc-booking-popup__close-icon {
  display: block;
  width: 32px;
  height: 32px;
  pointer-events: none;
}

/* Standalone popup demo wrapper (the dialog itself is Figma-locked above). */
.booking-demo-page {
  min-height:100vh;
  margin:0;
  background:radial-gradient(circle at 78% 18%,rgba(146,9,242,.18),transparent 32%),#130f28;
  color:#fff;
}
.booking-demo { min-height:100vh; display:grid; place-items:center; padding:48px 24px; }
.booking-demo__panel {
  width:min(100%,680px);
  padding:48px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:28px;
  background:rgba(26,18,50,.72);
  box-shadow:inset 4px 4px 4px rgba(255,255,255,.08),0 28px 80px rgba(0,0,0,.28);
  text-align:right;
}
.booking-demo__panel h1 {
  margin:0 0 16px;
  font-family:var(--display-font);
  font-size:clamp(42px,8vw,64px);
  font-weight:400;
}
.booking-demo__panel p { margin:0 0 30px; color:rgba(255,255,255,.76); font-size:18px; line-height:1.8; }
.booking-demo__button {
  min-width:210px; min-height:52px;
  border:0; border-radius:38px; padding:12px 24px;
  background:#9209f2; color:#fff;
  font-family:var(--body-font); font-size:20px; cursor:pointer;
  transition:translate .25s var(--arc-ease-premium),filter .25s ease,box-shadow .25s ease;
}

@media (max-width:767.98px) {
  .booking-demo__panel { padding:30px 22px; border-radius:22px; }
}
@media (prefers-reduced-motion:reduce) {
  .ui-polish-card,
  .ui-polish-card:hover,
  body.arc-motion-ready .arc-ui-reveal,
  body.arc-motion-ready .arc-ui-reveal.is-arc-ui-visible,
  .button,
  .section-button,
  .booking-submit,
  .arc-booking-submit,
  .booking-demo__button {
    transition:none !important;
    translate:none !important;
    filter:none !important;
  }
}


/* =========================================================
   ARCADIUM V21 — PIXEL-PRECISION GEOMETRY CORRECTIONS
   Verified against Figma file D056rkXT5ocMxD4cUqwdIt.
   These desktop-only corrections preserve the fluid tablet/mobile flows.
========================================================= */
@media (min-width: 1281px) {
  /* Contact: Figma node 865:240 uses 24px inner offsets with no layout border. */
  .contact-form-page .booking-form {
    min-height: 925.802px;
    border: 0;
    box-shadow: inset 4px 4px 4px rgba(255,255,255,.3);
  }
  .contact-form-page .booking-form:hover {
    border-color: transparent;
    box-shadow:
      inset 0 0 0 1px rgba(221,55,255,.32),
      inset 4px 4px 4px rgba(255,255,255,.3),
      0 24px 60px rgba(0,0,0,.12);
  }

  /* FAQ strokes are visual overlays in Figma, not dimensions in Auto Layout. */
  .faq-page .faq-item > button,
  .single-game-page .faq-item > button {
    border: 0;
    box-shadow: inset 0 0 0 1px transparent;
  }
  .faq-page .faq-item > button:hover,
  .single-game-page .faq-item > button:hover {
    border-color: transparent;
    box-shadow: inset 0 0 0 1px rgba(221,55,255,.6);
  }
  .faq-page .faq-item.is-open > button,
  .single-game-page .faq-item.is-open > button {
    border-color: transparent;
    box-shadow: inset 0 0 0 1px #efe6ee;
  }

  /* Figma title boxes are exactly 86px high at desktop. */
  .faq-page .faq-page__questions .section-title,
  .single-game-page .single-game-faq .section-title {
    height: 86px;
    line-height: 86px;
  }

  /* FAQ page node 867:560 = 1246 × 794, then 119.802px to the CTA. */
  .faq-page .faq-page__questions {
    min-height: 794px;
    padding-bottom: 0;
    margin-bottom: 119.802px;
  }

  /* Basketball FAQ node 908:648 = 1246 × 564, then a 120px CTA gap. */
  .single-game-page .single-game-faq {
    min-height: 564px;
    padding-bottom: 0;
    margin-bottom: 120px;
  }

  /* Corporate experience is intentionally offset in the Figma frame. */
  .corporate-events-page .corporate-experience {
    left: -10.703px;
  }

  /* Figma node 910:1337 uses a 64/1.2 title and a 555px section box. */
  .corporate-events-page .corporate-games {
    min-height: 555px;
  }
  .corporate-events-page .corporate-games .section-title {
    line-height: 1.2;
  }

  /* Preserve the intentional blank canvas tails present in the Figma frames. */
  body.corporate-events-page { min-height: 3701px; }
  body.packages-page { min-height: 2431px; }
  body.about-page { min-height: 4046px; }
}


/* =========================================================
   ARCADIUM V21 — CONTACT POPUP (FIGMA NODE 944:532)
   Reuses the booking popup shell/controller while keeping the
   exact 720 × 860 contact-dialog geometry from the source frame.
========================================================= */
body.arc-popup-open {
  overflow: hidden;
}

.arc-contact-popup .arc-contact-popup__dialog {
  height: 860px;
}

.arc-contact-popup .arc-contact-popup__content {
  top: 96px;
}

.arc-contact-popup .arc-contact-form {
  gap: 22px;
}

/* Contact Figma node 944:537 / 952:608 uses #A302FA, not the booking accent. */
.arc-contact-popup .arc-booking-control--accent input {
  border-color: #a302fa;
}

.booking-demo__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.booking-demo__button--ghost {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.42);
  background: rgba(255,255,255,.08);
}

@media (hover: hover) and (pointer: fine) {
  .booking-demo__button--ghost:hover {
    background: rgba(146,9,242,.24);
  }
}

@media (max-width: 767.98px) {
  .arc-contact-popup .arc-contact-popup__dialog {
    height: auto;
  }

  .arc-contact-popup .arc-contact-popup__content {
    top: auto;
  }

  .booking-demo__actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .booking-demo__button {
    width: 100%;
  }
}

/* Article node 929:1626 sits one pixel above the normal 44px flex cadence in Figma. */
@media (min-width: 1281px) {
  .article-single-page .article-single-content > .article-copy-block:last-child {
    position: relative;
    top: -1px;
  }
}

/* =========================================================
   ARCADIUM V21 — SHARED GAME-CARD FRAME GEOMETRY
   Exact desktop columns/offsets from the Arcadium Figma frames.
   Mobile/tablet keep the fluid shared grid rules above.
========================================================= */
@media (min-width: 1281px) {
  /* Games 883:974 / 907:201 — title 1246×70 and row 1248×326. */
  .games-page .games-page__catalog .section-title {
    width: 1246px;
    height: 70px;
    line-height: 70px;
    transform: translateX(-10px);
  }

  .games-page .games-page__catalog .games-primary-grid {
    grid-template-columns: 295px 295px 291px 295px;
  }

  .games-page .games-page__catalog .games-primary-grid > .game-card {
    min-height: 325.55px;
    height: 325.55px;
  }

  .games-page .games-page__catalog .games-primary-grid > .game-card--basketball {
    min-height: 326px;
    height: 326px;
  }

  /* Single game 908:646 / 908:590 — 1248×325.55, shifted 1px left. */
  .single-game-page .related-games {
    left: -1px;
  }

  .single-game-page .related-games > .single-game-section-title {
    height: 77px;
  }

  .single-game-page .related-games .games-grid > .cards-grid {
    grid-template-columns: 297.68px 297.68px 301px 297.66px;
    height: 325.55px;
  }

  .single-game-page .related-games .game-card {
    min-height: 325.55px;
    height: 325.55px;
  }

  /* Corporate 910:1337 — same shared row geometry as Home. */
  .corporate-events-page .corporate-games .section-title {
    height: 77px;
  }

  .corporate-events-page .corporate-games .games-grid > .cards-grid {
    grid-template-columns: 301px 301px 291px 301px;
  }

  .corporate-events-page .corporate-games .game-card {
    min-height: 325.55px;
    height: 325.55px;
  }

  .corporate-events-page .corporate-games .game-card--basketball {
    min-height: 326px;
    height: 326px;
  }

  /* About 917:2034 — intentionally asymmetric 1246px frame / 1248px row. */
  .about-page .about-games .section-shell {
    position: relative;
    left: -6px;
    width: 1246px;
  }

  .about-page .about-games .section-title {
    width: 1246px;
    height: 70px;
    line-height: 70px;
  }

  .about-page .about-games .games-grid {
    margin-top: 56px;
  }

  .about-page .about-games .games-grid > .cards-grid {
    width: 1248px;
    grid-template-columns: 301px 301px 291px 301px;
    transform: none;
  }

  .about-page .about-games .game-card {
    min-height: 325.55px;
    height: 325.55px;
  }

  .about-page .about-games .game-card--basketball {
    min-height: 326px;
    height: 326px;
  }

  .about-page .about-games .section-button {
    margin-top: 36px;
  }
}

/* =========================================================
   ARCADIUM V21 — SOLUTIONS EVENT/FEATURE FRAMES
   Figma 908:878 and 909:1257 use full-width 1441px title frames
   with precisely centered 1247.703px / 1248px card rows.
========================================================= */
@media (min-width: 1400px) {
  .solutions-page .solutions-events > .section-shell {
    position: relative;
    left: 1px;
    width: 1441px;
    max-width: none;
    height: 507px;
    margin: 0;
  }

  .solutions-page .solutions-events .section-title {
    width: 1441px;
    height: 70px;
    line-height: 70px;
  }

  .solutions-page .solutions-events .events-grid {
    width: 1247.703px;
    margin: 50px auto 0;
  }

  .solutions-page .solutions-events .events-grid > .cards-grid {
    grid-template-columns: repeat(4, 298.42575px);
  }

  .solutions-page .solutions-events .event-card {
    min-height: 387.4695px;
    height: 387.4695px;
  }

  .solutions-page .solutions-offer__grid {
    position: relative;
    left: .5px;
  }
}

/* Figma title wrappers use integer 77px boxes; 64px × 1.2 text alone is 76.8px. */
@media (min-width: 1281px) {
  .corporate-events-page .corporate-section-title,
  .about-page .about-why .section-title {
    height: 77px;
  }
}

/* Games 907:265 — the three-card row is 325.55px inside an 826px catalogue frame. */
@media (min-width: 1281px) {
  .games-page .games-page__catalog > .section-shell {
   min-height: 826px;
  }

  .games-page .games-extra-grid,
  .games-page .games-extra-grid > .game-card {
    min-height: 325.55px;
 
  }
}

/* =========================================================
   ARCADIUM V23 — ARTICLE SINGLE VIDEO PREVIEW
   Figma 929:1559: image fill + 74% top-to-bottom black
   gradient + centered 98px exported play glyph.
   ========================================================= */
.article-single-page .article-video-preview {
  position: relative;
}

.article-single-page .article-video-preview::before {
  content: none;
}

.article-single-page .article-video-preview__play {
  position: absolute;
  z-index: 2;
  top: 170px;
  left: 330px;
  width: 98px;
  height: 98px;
  display: block;
  pointer-events: none;
}

@media (max-width: 1280px) {
  .article-single-page .article-video-preview__play {
    top: 50%;
    left: 50%;
    width: clamp(64px, 13%, 98px);
    height: auto;
    transform: translate(-50%, -50%);
  }
}

/* =========================================================
   ARCADIUM V23 — ARTICLE VIDEO PLAYER CHROME
   Figma 929:1557 / 929:1566 exact desktop coordinates.
   ========================================================= */
.article-single-page .article-video-preview__title {
  position: absolute;
  z-index: 3;
  top: 18px;
  right: 22px;
  width: 282px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  color: #fff;
  font-family: "Montserrat Arabic", sans-serif;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.3;
  white-space: nowrap;
  pointer-events: none;
}

.article-single-page .article-video-preview__info {
  position: absolute;
  z-index: 3;
  top: 19px;
  left: 23px;
  width: 711px;
  height: 26px;
  display: block;
  pointer-events: none;
}

.article-single-page .article-video-preview__timeline {
  position: absolute;
  z-index: 3;
  left: 0;
  right: 0;
  bottom: 53.23px;
  height: 3.773px;
  pointer-events: none;
}
.article-single-page .article-video-preview__timeline-full,
.article-single-page .article-video-preview__timeline-loaded,
.article-single-page .article-video-preview__timeline-played {
  position: absolute;
  top: 0;
  bottom: 0;
}
.article-single-page .article-video-preview__timeline-full {
  left: 0;
  right: 0;
  background: rgba(234, 234, 234, .2);
}
.article-single-page .article-video-preview__timeline-loaded {
  left: 2.28%;
  right: 50.14%;
  background: rgba(234, 234, 234, .5);
}
.article-single-page .article-video-preview__timeline-played {
  left: 2.28%;
  right: 65.9%;
  background: #fc0d1c;
}

.article-single-page .article-video-preview__controls {
  position: absolute;
  z-index: 3;
  inset: 0;
  pointer-events: none;
}
.article-single-page .article-video-preview__control {
  position: absolute;
  display: block;
  max-width: none;
}
.article-single-page .article-video-preview__control--play {
  left: 44.49px;
  bottom: 20.52px;
  width: 14.388px;
  height: 20.125px;
}
.article-single-page .article-video-preview__control--next {
  left: 89.88px;
  bottom: 23.04px;
  width: 13.282px;
  height: 15.094px;
}
.article-single-page .article-video-preview__control--sound {
  left: 125.29px;
  bottom: 20.52px;
  width: 14.746px;
  height: 20.125px;
}
.article-single-page .article-video-preview__time {
  position: absolute;
  left: 161.81px;
  bottom: 24.88px;
  width: 61.345px;
  color: #eaeaea;
  font-family: Arial, sans-serif;
  font-size: 10.062px;
  font-weight: 400;
  line-height: 12px;
  letter-spacing: .1006px;
  direction: ltr;
  text-align: left;
  white-space: nowrap;
}
.article-single-page .article-video-preview__control--titles {
  right: 194.83px;
  bottom: 21.78px;
  width: 19.921px;
  height: 17.609px;
}
.article-single-page .article-video-preview__control--hd {
  right: 150.57px;
  bottom: 20.52px;
  width: 22.163px;
  height: 20.125px;
}
.article-single-page .article-video-preview__control--theater {
  right: 114.03px;
  bottom: 21.78px;
  width: 22.135px;
  height: 17.609px;
}
.article-single-page .article-video-preview__control--tv {
  right: 73.07px;
  bottom: 19.27px;
  width: 24.348px;
  height: 22.641px;
}
.article-single-page .article-video-preview__control--fullscreen {
  right: 36.56px;
  bottom: 20.52px;
  width: 17.708px;
  height: 20.125px;
}

@media (max-width: 1280px) {
  .article-single-page .article-video-preview__title {
    top: 4.1%;
    right: 2.9%;
    width: 37.25%;
    height: auto;
    font-size: clamp(11px, 2.64vw, 20px);
  }
  .article-single-page .article-video-preview__info {
    top: 4.35%;
    left: 3.04%;
    width: 93.92%;
    height: auto;
  }
  .article-single-page .article-video-preview__timeline {
    bottom: 12.18%;
    height: max(2px, .86%);
  }
  .article-single-page .article-video-preview__controls {
    transform-origin: left bottom;
  }
  .article-single-page .article-video-preview__control,
  .article-single-page .article-video-preview__time {
    transform: scale(var(--article-player-scale, 1));
    transform-origin: left bottom;
  }
}

/* Assistive-only captions used by static Figma-matched media. */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* =========================================================
   V27 — CLIENT SEPARATOR VERTICAL CENTERING
   Keep the circular client markers locked to the real card
   center even when the Swiper gets extra shadow breathing room.
========================================================= */
.clients-row { --client-card-center-y: 50%; }
.client-separator { top: var(--client-card-center-y, 50%); }

@media (max-width: 575.98px) {
  .client-separator {
    width: 38px;
    height: 38px;
    box-shadow: 0 0 0 3px #121028;
  }
}

/* =========================================================
   ARCADIUM V28 — CONTACT FORM FRAME PARITY
   Figma node 865:240: 720x925.8019, radius 23px, translucent fill,
   no stroke, and a dedicated inset 4/4/4 white highlight layer.
========================================================= */
.contact-form-page .booking-form {
  position: relative;
  overflow: hidden;
  border: 0 !important;
  background: rgba(26, 18, 50, .1);
  box-shadow: none !important;
  isolation: isolate;
}

.contact-form-page .booking-form::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  box-shadow: inset 4px 4px 4px 0 rgba(255, 255, 255, .3);
  pointer-events: none;
}

.contact-form-page .booking-form > * {
  position: relative;
  z-index: 1;
}

/* The source Figma frame has no hover stroke around the container. */
.contact-form-page .booking-form:hover,
.contact-form-page .booking-form:focus-within {
  border: 0 !important;
  box-shadow: none !important;
}

@media (min-width: 1281px) {
  .contact-form-page .booking-form {
    width: 720px;
    min-height: 925.8018798828125px;
    border-radius: 23px;
  }
}

/* =========================================================
   ARCADIUM V29 — CONTACT FORM RIGHT EDGE PARITY
   Figma node 865:240 keeps the 4/4/4 inset highlight on the
   top/left, while its rendered right contour remains faintly
   visible. On the page background that contour was disappearing,
   so keep it as a dedicated 1px inner edge instead of a full border.
========================================================= */
.contact-form-page .booking-form::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, .16);
  pointer-events: none;
}

.contact-form-page .booking-form > * {
  position: relative;
  z-index: 1;
}


/* =========================================================
   ARCADIUM V30 — WORKS GALLERIES
   1) Video center-card hover breathing room without moving the
      Figma static geometry (870:812). The slider box extends 16px
      upward while its content is padded back down to the original Y.
   2) Photo gallery loop is handled in JS; no visual geometry changes.
========================================================= */
.gallery-page .video-gallery-slider {
  top: 100px;
  height: 375px;
  padding-top: 16px;
  box-sizing: border-box;
}

@media (max-width: 991.98px) {
  .gallery-page .video-gallery-slider {
    top: 76px;
    height: 354px;
  }
}

@media (max-width: 575.98px) {
  .gallery-page .video-gallery-slider {
    top: 60px;
    height: 305px;
  }
}


/* =========================================================
   ARCADIUM V31 — WORKS: TRUE LOOPS + MOBILE HEADING

   The loop mechanics live in main.js. These rules only solve
   the mobile heading/control collision without changing the
   desktop Figma geometry (904:199 / 870:812).
========================================================= */
@media (max-width: 575.98px) {
  .gallery-page .gallery-section__heading {
    display: flex;
    direction: rtl;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .gallery-page .gallery-section__heading h2 {
    flex: 1 1 auto;
    min-width: 0;
    padding-top: 0;
    font-size: clamp(31px, 9vw, 36px);
    line-height: 1.15;
    text-align: right;
    white-space: nowrap;
  }

  .gallery-page .gallery-controls {
    position: static;
    flex: 0 0 auto;
    gap: 8px;
    direction: ltr;
  }

  .gallery-page .gallery-arrow,
  .gallery-page .gallery-arrow img {
    width: 34px;
    height: 34px;
  }

  .gallery-page .gallery-arrow {
    flex-basis: 34px;
  }
}

@media (max-width: 359.98px) {
  .gallery-page .gallery-section__heading {
    gap: 8px;
  }

  .gallery-page .gallery-section__heading h2 {
    font-size: 29px;
  }

  .gallery-page .gallery-controls {
    gap: 6px;
  }

  .gallery-page .gallery-arrow,
  .gallery-page .gallery-arrow img {
    width: 32px;
    height: 32px;
  }

  .gallery-page .gallery-arrow {
    flex-basis: 32px;
  }
}

/* =========================================================
   ARCADIUM V32 — MOBILE SINGLE-GAME + SOLUTIONS GRID FIXES
   Requested mobile refinements:
   1) Basketball FAQ uses the full mobile content width.
   2) "مناسبة لـ" keeps two cards per row on mobile.
   3) Solutions "ماذا نقدم لفعاليتك؟" keeps two cards per row
      with typography/art scaled for narrow screens.
========================================================= */
@media (max-width: 575.98px) {
  /* Basketball FAQ: remove the page-specific second horizontal inset.
     Shared .faq-section already supplies the intended 14px mobile padding. */
  .single-game-page .single-game-faq {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    padding-right: 14px;
    padding-left: 14px;
    box-sizing: border-box;
  }

  .single-game-page .single-game-faq .faq-list,
  .single-game-page .single-game-faq .faq-item,
  .single-game-page .single-game-faq .faq-item > button {
    width: 100%;
  }

  /* Basketball — "مناسبة لـ": two compact cards per row.
     The third card stays centered on its own second row. */
  .single-game-page .single-game-events .events-grid > .cards-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    direction: rtl;
  }

  .single-game-page .single-game-events .event-card {
    grid-template-rows: auto auto 132px;
    gap: 8px;
    min-height: 250px;
    padding: 15px 6px 6px;
  }

  .single-game-page .single-game-events .event-card:last-child {
    grid-column: 1 / -1;
    width: calc(50% - 5px);
    justify-self: center;
  }

  /* Solutions — 2-up mobile cards. */
  .solutions-page .solutions-offer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 10px;
    margin-top: 30px;
    padding-bottom: 32px;
    direction: rtl;
  }

  .solutions-page .solution-feature-card {
    width: 100%;
    max-width: none;
    height: 220px;
    margin: 0;
    padding: 14px 12px;
    border-radius: 14px;
  }

  .solutions-page .solution-feature-card h3 {
    min-height: 54px;
    font-size: clamp(21px, 6.2vw, 25px);
    line-height: 1.08;
    letter-spacing: -.3px;
  }

  .solutions-page .solution-feature-card p {
    min-height: 52px;
    margin-top: 8px;
    font-size: clamp(10.5px, 3.05vw, 12px);
    line-height: 1.4;
  }

  .solutions-page .solution-feature-card__art--dart {
    left: 8px;
    top: 154px;
    width: 78px;
    height: 78px;
  }

  .solutions-page .solution-feature-card__art--pin {
    left: 8px;
    top: 148px;
    width: 52px;
    height: 78px;
  }

  .solutions-page .solution-feature-card__art--ball {
    left: 10px;
    top: 160px;
    width: 64px;
    height: 64px;
  }

  .solutions-page .solution-feature-card__art--target {
    left: 10px;
    top: 156px;
    width: 68px;
    height: 68px;
  }
}

@media (max-width: 359.98px) {
  /* Keep the two-column request even on 320px devices, with a tighter type scale. */
  .solutions-page .solutions-offer__grid {
    column-gap: 8px;
  }

  .solutions-page .solution-feature-card {
    height: 214px;
    padding: 12px 10px;
  }

  .solutions-page .solution-feature-card h3 {
    min-height: 50px;
    font-size: 20px;
  }

  .solutions-page .solution-feature-card p {
    min-height: 50px;
    font-size: 10px;
  }

  .single-game-page .single-game-events .events-grid > .cards-grid {
    gap: 8px;
  }

  .single-game-page .single-game-events .event-card:last-child {
    width: calc(50% - 4px);
  }
}

/* =========================================================
   ARCADIUM V42 - GLOBAL ARCADE LOADER + NEON PAGE SCROLLBAR
   Shared across every route. Motion is transform/opacity-only
   and respects prefers-reduced-motion.
========================================================= */

/* Page scrollbar: site background track + Arcadium purple thumb. */
html {
  scrollbar-width: thin;
  scrollbar-color: #9209f2 #130f28;
}

html::-webkit-scrollbar {
  width: 12px;
  height: 12px;
}

html::-webkit-scrollbar-track {
  background: #130f28;
}

html::-webkit-scrollbar-thumb {
  min-height: 48px;
  border: 3px solid #130f28;
  border-radius: 999px;
  background: linear-gradient(180deg, #d62cff 0%, #a40bff 46%, #7200c8 100%);
  box-shadow: 0 0 14px rgba(146, 9, 242, .42);
}

html::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #ec55ff 0%, #bd24ff 46%, #9209f2 100%);
  box-shadow: 0 0 20px rgba(177, 44, 204, .72);
}

html::-webkit-scrollbar-corner {
  background: #130f28;
}

/* Prevent the site from flashing before the shared loader mounts. */
html.arcade-loader-boot,
html.arcade-loader-boot body {
  background: #130f28;
}

html.arcade-loader-boot body > *:not(.arcade-loader) {
  visibility: hidden;
}

body.arcade-loader-lock {
  overflow: hidden !important;
}

.arcade-loader {
  --loader-purple: #9209f2;
  --loader-pink: #d62cff;
  --loader-cyan: #31dff5;
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 44%, rgba(146, 9, 242, .30) 0, rgba(146, 9, 242, .10) 23%, transparent 46%),
    radial-gradient(circle at 50% 92%, rgba(49, 223, 245, .08), transparent 28%),
    #130f28;
  opacity: 1;
  visibility: visible;
  transition: opacity .48s cubic-bezier(.22, 1, .36, 1), visibility .48s linear;
  isolation: isolate;
}

.arcade-loader::before {
  content: "";
  position: absolute;
  inset: -18%;
  z-index: -2;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 48px 48px;
  transform: perspective(520px) rotateX(62deg) translateY(28%);
  transform-origin: center bottom;
  mask-image: linear-gradient(to top, rgba(0,0,0,.9), transparent 70%);
}

.arcade-loader::after {
  content: "";
  position: absolute;
  width: min(78vw, 720px);
  height: 2px;
  bottom: 15%;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(90deg, transparent, rgba(146, 9, 242, .72), rgba(49, 223, 245, .42), transparent);
  filter: blur(.2px);
  opacity: .65;
  display: none;
}

.arcade-loader.is-leaving {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.arcade-loader__stage {
  position: relative;
  display: flex;
  width: min(88vw, 420px);
  min-height: 420px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  transform: translateZ(0);
}

.arcade-loader__core {
  position: relative;
  width: clamp(220px, 32vw, 300px);
  aspect-ratio: 1;
  flex: 0 0 auto;
}

.arcade-loader__orbit {
  position: absolute;
  inset: 0;
  border: 1px solid rgba(177, 44, 204, .42);
  border-radius: 50%;
  box-shadow: inset 0 0 34px rgba(146, 9, 242, .08), 0 0 26px rgba(146, 9, 242, .12);
  animation: arcadeLoaderSpin 3.2s linear infinite;
}

.arcade-loader__orbit--inner {
  width: 74.6667%;
  aspect-ratio: 1;
  inset: 50% auto auto 50%;
  border-style: dashed;
  border-color: rgba(49, 223, 245, .34);
  transform: translate(-50%, -50%);
  animation-name: arcadeLoaderSpinInner;
  animation-duration: 4.6s;
  animation-direction: normal;
}

.arcade-loader__orb {
  position: absolute;
  top: 50%;
  left: -6px;
  width: 12px;
  height: 12px;
  margin-top: -6px;
  border-radius: 50%;
  background: var(--loader-pink);
  box-shadow: 0 0 10px var(--loader-pink), 0 0 24px rgba(214, 44, 255, .8);
}

.arcade-loader__orbit--inner .arcade-loader__orb {
  top: 15%;
  left: auto;
  right: -5px;
  width: 10px;
  height: 10px;
  background: var(--loader-cyan);
  box-shadow: 0 0 10px var(--loader-cyan), 0 0 22px rgba(49, 223, 245, .68);
}

.arcade-loader__logo-shell {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 50%;
  display: grid;
  width: clamp(104px, 15vw, 136px);
  height: clamp(104px, 15vw, 136px);
  place-items: center;
  border-radius: 36%;
  filter: drop-shadow(0 0 18px rgba(146, 9, 242, .54));
  transform: translate(-50%, -50%);
  animation: arcadeLoaderLogo 1.7s cubic-bezier(.45, 0, .55, 1) infinite;
}

.arcade-loader__logo-shell::before {
  content: "";
  position: absolute;
  inset: 8%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(146, 9, 242, .32), transparent 68%);
  filter: blur(12px);
}

.arcade-loader__logo {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  user-select: none;
  -webkit-user-drag: none;
}

.arcade-loader__scan {
  position: absolute;
  inset: 11% 6%;
  overflow: hidden;
  border-radius: 28%;
  pointer-events: none;
}

.arcade-loader__scan::after {
  content: "";
  position: absolute;
  top: -70%;
  left: -25%;
  width: 150%;
  height: 34%;
  background: linear-gradient(to bottom, transparent, rgba(255,255,255,.62), transparent);
  transform: rotate(-10deg);
  animation: arcadeLoaderScan 1.9s ease-in-out infinite;
}

.arcade-loader__progress {
  position: relative;
  z-index: 4;
  width: min(74vw, 286px);
  height: 7px;
  margin-top: 30px;
  overflow: hidden;
  border: 1px solid rgba(177, 44, 204, .34);
  border-radius: 999px;
  background: rgba(255,255,255,.055);
  box-shadow: inset 0 0 10px rgba(0,0,0,.24);
}

.arcade-loader__progress-fill {
  display: block;
  width: var(--arcade-loader-progress, 8%);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #6b00bd, #9209f2 48%, #d62cff 74%, #31dff5 110%);
  box-shadow: 0 0 14px rgba(177, 44, 204, .72);
  transition: width .22s ease-out;
}

.arcade-loader__percent {
  display: block;
  margin-top: 8px;
  color: rgba(255,255,255,.56);
  font-family: "Cairo", sans-serif;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
  letter-spacing: .12em;
}

.arcade-loader__pixel {
  position: absolute;
  z-index: 2;
  width: 7px;
  height: 7px;
  border-radius: 2px;
  background: var(--loader-purple);
  box-shadow: 0 0 12px rgba(146, 9, 242, .8);
  animation: arcadeLoaderFloat 2.2s ease-in-out infinite;
}

.arcade-loader__pixel--1 { top: 20%; left: 9%; animation-delay: -.3s; }
.arcade-loader__pixel--2 { top: 30%; right: 8%; width: 5px; height: 5px; background: var(--loader-cyan); animation-delay: -.9s; }
.arcade-loader__pixel--3 { bottom: 24%; left: 17%; width: 5px; height: 5px; background: var(--loader-pink); animation-delay: -1.4s; }
.arcade-loader__pixel--4 { bottom: 18%; right: 16%; animation-delay: -.65s; }

@keyframes arcadeLoaderSpin {
  to { transform: rotate(360deg); }
}

@keyframes arcadeLoaderSpinInner {
  to { transform: translate(-50%, -50%) rotate(-360deg); }
}

@keyframes arcadeLoaderLogo {
  0%, 100% { transform: translate(-50%, -50%) scale(1) rotate(-1deg); }
  50% { transform: translate(-50%, -50%) scale(1.045) rotate(1.2deg); }
}

@keyframes arcadeLoaderScan {
  0% { transform: translateY(-150%) rotate(-10deg); opacity: 0; }
  28% { opacity: .85; }
  72% { opacity: .45; }
  100% { transform: translateY(520%) rotate(-10deg); opacity: 0; }
}

@keyframes arcadeLoaderPixel {
  from { transform: translateY(1px) scale(.72); opacity: .35; }
  to { transform: translateY(-2px) scale(1.18); opacity: 1; }
}

@keyframes arcadeLoaderFloat {
  0%, 100% { transform: translate3d(0, 0, 0) rotate(0); opacity: .35; }
  50% { transform: translate3d(0, -13px, 0) rotate(90deg); opacity: 1; }
}

@media (max-width: 575.98px) {
  html::-webkit-scrollbar { width: 8px; }
  html::-webkit-scrollbar-thumb { border-width: 2px; }

  .arcade-loader__stage {
    width: 94vw;
    min-height: 360px;
  }

  .arcade-loader__core { width: 218px; }
}

@media (prefers-reduced-motion: reduce) {
  .arcade-loader__orbit,
  .arcade-loader__logo-shell,
  .arcade-loader__scan::after,
  .arcade-loader__pixel {
    animation: none !important;
  }

  .arcade-loader__logo-shell {
    filter: drop-shadow(0 0 14px rgba(146, 9, 242, .42));
  }
}

@media (scripting: none) {
  html.arcade-loader-boot body > * {
    visibility: visible !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.10 — HOME RESPONSIVE / POPUP PARITY PATCH
   - Exact original edge-shadow SVGs (no CSS approximation)
   - Client badges travel with their Swiper slides
   - Review active-card breathing room
   - 992–1359 intermediate desktop scaling, with 1200px as a QA anchor
   - Work CTA stays locked to the tile bottom on non-Figma desktop sizes
   - CF7 popup submit/select chrome matches the original popup geometry
========================================================= */

/* Exact exported shadows. These are presentation assets and stay in the theme. */
.home-page .intro-side-shadow,
.home-page .section-edge-glow {
  background: url('../ui/edge-shadow.svg') center / 100% 100% no-repeat;
}
.home-page .intro-side-shadow--right-inner {
  background-image: url('../ui/edge-shadow-inner.svg');
}
.home-page .intro-side-shadow::before,
.home-page .section-edge-glow::before {
  display: none;
}
.home-page .intro-side-shadow--right-inner {
  right: 48.4px;
  left: auto;
}
.home-page .intro-side-shadow--right {
  right: -33.6px;
  left: auto;
}
.home-page .clients-section {
  position: relative;
  overflow: visible;
}

/* Client separator art belongs to the slide/card boundary, not the viewport. */
.home-page .client-separators { display: none !important; }
.home-page .client-slide {
  --arc-client-gap: 16.977px;
  position: relative;
  overflow: visible;
}
.client-card{
    z-index: inherit !important;
}
.home-page .client-slide .client-separator {
  z-index: 9999999;
  top: 50%;
  right: auto;
  left: calc(100% + (var(--arc-client-gap) / 2));
  display: block;
  pointer-events: none;
}
.home-page .client-slide .client-separator--one {
  transform: translate(-50%, -50%) rotate(-22.77deg);
}
.home-page .client-slide .client-separator--two {
  transform: translate(-50%, -50%) rotate(-12.08deg);
}
.home-page .client-slide .client-separator--three {
  transform: translate(-50%, -50%) rotate(10.21deg) scaleY(-1);
}

/* Keep the active review and its shadow/hover contour inside the slider clip. */
.home-page .reviews-slider {
  box-sizing: border-box;
  margin-top: 34px;
  margin-bottom: -24px;
  padding-top: 24px;
  padding-bottom: 24px;
}

/* 1200px is intentionally an intermediate desktop, not a 1440px Figma canvas. */
@media (min-width: 992px) and (max-width: 1359.98px) {
  .home-page .section-title {
    font-size: clamp(46px, 4.17vw, 56px);
  }

  .home-page .intro-section {
    width: min(calc(100% - 80px), 1248px);
    overflow: visible;
  }
  .home-page .intro-side-shadow--left { left: -25.6px; }
  .home-page .intro-side-shadow--right-inner { right: 48.4px; }
  .home-page .intro-side-shadow--right { right: -33.6px; }

  .home-page .clients-row {
    width: min(calc(100% - 80px), 1176px);
  }
  .home-page .client-slide {
    width: calc((100% - 50.931px) / 4);
  }

  .home-page .works-section {
    grid-template-columns: 292fr 297fr 296fr 297fr;
    gap: clamp(14px, 1.35vw, 19px);
    width: min(calc(100% - 80px), 1248px);
    height: auto;
    margin-top: clamp(72px, 7.5vw, 102px);
    padding: 0;
    overflow: visible;
  }
  .home-page .works-column { gap: clamp(11px, 1.1vw, 15px); }
  .home-page .works-column--one .work-tile { height: clamp(277px, 27.92vw, 380px); }
  .home-page .works-column--one .work-photo { height: clamp(185px, 18.61vw, 253px); }
  .home-page .works-column--two .work-photo { height: clamp(303px, 30.56vw, 415px); }
  .home-page .works-column--two .work-tile { height: clamp(157px, 15.83vw, 215px); }
  .home-page .works-column--three .work-tile { height: clamp(175px, 17.64vw, 239px); }
  .home-page .works-column--three .work-photo { height: clamp(284px, 28.68vw, 389px); }
  .home-page .works-column--four .work-photo { height: clamp(263px, 26.53vw, 360px); }
  .home-page .works-column--four .work-tile { height: clamp(291px, 29.31vw, 398px); }
  .home-page .work-tile { padding: clamp(17px, 1.8vw, 24px) 12px clamp(13px, 1.25vw, 16px); }
  .home-page .work-tile p { font-size: clamp(30px, 2.84vw, 39px); }
  .home-page .work-tile__link,
  .home-page .works-column--one .work-tile .work-tile__link,
  .home-page .works-column--four .work-tile .work-tile__link {
    position: static;
    margin-top: auto;
    transform: translateY(0) scale(1);
  }
  .home-page .work-tile:hover .work-tile__link,
  .home-page .work-tile:focus-within .work-tile__link,
  .home-page .work-tile:focus-visible .work-tile__link {
    transform: translateY(-2px) rotate(-8deg) scale(1);
  }

  .home-page .reviews-section {
    width: min(calc(100% - 80px), 1248px);
    height: auto;
  }
  .home-page .faq-section {
    width: min(calc(100% - 80px), 1248px);
    height: auto;
  }

  /* Canonical shared footer: the Home footer is the site-wide footer. */
  .site-footer {
    height: auto;
    overflow: visible;
  }
  .footer-inner,
  .copyright {
    position: relative;
    top: auto;
    left: auto;
    width: min(calc(100% - 80px), 1248px);
    height: auto;
    margin-inline: auto;
    transform: none;
  }
}

@media (max-width: 991.98px) {
  .home-page .section-edge-glow { display: none; }
  .home-page .client-slide { --arc-client-gap: 12px; }
  .home-page .client-slide .client-separator {
    left: calc(100% + 6px);
    display: block;
  }
  .home-page .reviews-slider {
    margin-top: 10px;
    margin-bottom: -18px;
    padding-top: 18px;
    padding-bottom: 18px;
  }
  .home-page .work-tile__link,
  .home-page .works-column--one .work-tile .work-tile__link,
  .home-page .works-column--four .work-tile .work-tile__link {
    position: static;
    margin-top: auto;
  }
}

@media (max-width: 575.98px) {
  .home-page .client-slide .client-separator {
    width: 38px;
    height: 38px;
    box-shadow: 0 0 0 3px #121028;
  }
}

/* CF7 popup: preserve the Figma control geometry after CF7 renders inputs. */
.arc-booking-form .wpcf7-form-control {
  box-sizing: border-box;
}
.arc-booking-ending { position: relative; }
.arc-booking-form input.arc-booking-submit,
.arc-booking-form .wpcf7-submit.arc-booking-submit {
  display: block;
  width: 100%;
  height: 52.802px;
  margin: 0;
  padding: 0 24px;
  border: 0;
  border-radius: 37.686px;
  -webkit-appearance: none;
  appearance: none;
  background: #9209f2;
  color: #fff;
  font-family: var(--body-font);
  font-size: 23.802px;
  font-weight: 400;
  line-height: 52.802px;
  text-align: center !important;
}
.arc-booking-form .wpcf7-spinner {
  position: absolute;
  right: 16px;
  bottom: 14px;
  margin: 0;
}
.arc-booking-form select[data-arc-post-type] {
  padding-inline-end: 48px;
}
.arc-booking-form select[data-arc-post-type] option {
  direction: inherit;
  text-align: start;
}

html[lang="en"] .arc-booking-form,
html[lang="en"] .arc-booking-form input,
html[lang="en"] .arc-booking-form select,
html[lang="en"] .arc-booking-form textarea,
html[lang="en"] .arc-booking-field,
html[lang="en"] .arc-booking-field label {
  direction: ltr;
  text-align: left;
}
html[lang="en"] .arc-booking-form input.arc-booking-submit {
  text-align: center !important;
}
html[lang="en"] .arc-booking-control--icon select,
html[lang="en"] .arc-booking-control--icon input {
  padding-right: 48px;
  padding-left: 12px;
}
html[lang="en"] .arc-booking-icon {
  right: 12px;
  left: auto;
}

/* Preserve the existing inner-hero anchor; only the footer fork is removed. */
@media (min-width: 1200px) and (max-width: 1359.98px) {
  body:not(.home-page) .contact-hero__content { left: -1px; }
}

/* The legacy non-Home 1200–1359 footer canvas was removed.
   All pages now use the same responsive footer path as Home. */

/* =========================================================
   ARCADIUM V1.0.11 — HOME EDGE SHADOW HOTFIX
   Exact Figma shadow SVGs are anchored to the physical viewport edges.
   This replaces the legacy page-wide blur that drifted/cropped on responsive widths.
========================================================= */

/* The old page-wide purple blur is not part of the Home section shadow artwork.
   It was the source of the giant mobile/tablet purple wash. */
body.home-page #main-content.page-edge-glows::before,
body.home-page #main-content.page-edge-glows::after,
body.home-page main.page-edge-glows::before,
body.home-page main.page-edge-glows::after {
  display: none !important;
}

/* Keep the exported shadow artwork independent from content/ACF media. */
body.home-page .intro-section,
body.home-page .clients-section {
  position: relative;
  overflow: visible;
}

body.home-page .intro-side-shadow,
body.home-page .section-edge-glow {
  --arc-edge-shadow-w: clamp(105px, 10.22vw, 175.2px);
  --arc-edge-shadow-h: clamp(236px, 22.94vw, 393.2px);
  position: absolute;
  z-index: 0;
  display: block !important;
  width: var(--arc-edge-shadow-w) !important;
  height: var(--arc-edge-shadow-h) !important;
  max-width: none;
  margin: 0;
  background: url('../ui/edge-shadow.svg') center / 100% 100% no-repeat !important;
  opacity: 1;
  filter: none;
  pointer-events: none;
  user-select: none;
}
body.home-page .intro-side-shadow::before,
body.home-page .section-edge-glow::before {
  display: none !important;
}

/* Intro/Fast-features shadows.
   The edge value is fluid: about -40px on narrow phones and exactly ~68px
   inside a 1714px desktop viewport, matching the approved composition. */
body.home-page .intro-section {
  --arc-intro-shadow-edge: clamp(-40px, calc(8.1vw - 70px), 68px);
  --arc-intro-shadow-inner-gap: clamp(44px, 4.38vw, 75px);
}
body.home-page .intro-side-shadow {
  top: clamp(4px, 1.05vw, 18px) !important;
}
body.home-page .intro-side-shadow--left {
  right: auto !important;
  left: calc(50% - 50vw + var(--arc-intro-shadow-edge)) !important;
}
body.home-page .intro-side-shadow--right {
  right: calc(50% - 50vw + var(--arc-intro-shadow-edge)) !important;
  left: auto !important;
}
body.home-page .intro-side-shadow--right-inner {
  top: clamp(18px, 2.1vw, 36px) !important;
  right: calc(50% - 50vw + var(--arc-intro-shadow-edge) + var(--arc-intro-shadow-inner-gap)) !important;
  left: auto !important;
  width: clamp(101px, 9.82vw, 168.2px) !important;
  background-image: url('../ui/edge-shadow-inner.svg') !important;
}

/* Trusted-clients shadows stay on the viewport edge while the cards remain centered.
   This is deliberately independent of Swiper slide widths. */
body.home-page .clients-section {
  --arc-clients-shadow-edge: clamp(-28px, calc(4vw - 57px), 19px);
}
body.home-page .section-edge-glow--clients-left {
  top: clamp(22px, 2.7vw, 49px) !important;
  right: auto !important;
  left: var(--arc-clients-shadow-edge) !important;
}
body.home-page .section-edge-glow--clients-right {
  top: clamp(28px, 4.1vw, 74px) !important;
  right: var(--arc-clients-shadow-edge) !important;
  left: auto !important;
}
body.home-page .intro-section > :not(.intro-side-shadow),
body.home-page .clients-section > :not(.section-edge-glow) {
  position: relative;
  z-index: 1;
}

/* Two overlapping right-side intro ellipses are part of the wide composition.
   On smaller canvases one exact ellipse per side is enough and prevents crowding. */
@media (max-width: 991.98px) {
  body.home-page .intro-side-shadow--right-inner {
    display: none !important;
  }
}

/* On phones keep the shadow present but partially outside the viewport,
   rather than replacing it with a full-page blur. */
@media (max-width: 575.98px) {
  body.home-page .intro-side-shadow,
  body.home-page .section-edge-glow {
    --arc-edge-shadow-w: clamp(102px, 28vw, 118px);
    --arc-edge-shadow-h: clamp(229px, 62.8vw, 265px);
  }
  body.home-page .intro-side-shadow {
    top: 14px !important;
  }
  body.home-page .clients-section {
    --arc-clients-shadow-edge: -34px;
  }
}

/* Below the 1200px design anchor, stop squeezing the four-column Works mosaic.
   1200px itself remains the proportional four-column desktop requested by the user. */
@media (min-width: 768px) and (max-width: 1199.98px) {
  body.home-page .works-section {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: min(calc(100% - 48px), 920px);
    gap: 16px;
    margin-top: clamp(44px, 6vw, 72px);
    margin-right: auto;
    margin-left: auto;
    padding: 0;
  }
  body.home-page .works-column {
    gap: 14px;
  }
  body.home-page .works-column--one .work-tile,
  body.home-page .works-column--four .work-tile {
    height: clamp(260px, 34vw, 330px);
  }
  body.home-page .works-column--one .work-photo,
  body.home-page .works-column--four .work-photo {
    height: clamp(185px, 24vw, 235px);
  }
  body.home-page .works-column--two .work-photo,
  body.home-page .works-column--three .work-photo {
    height: clamp(280px, 36vw, 360px);
  }
  body.home-page .works-column--two .work-tile,
  body.home-page .works-column--three .work-tile {
    height: clamp(190px, 25vw, 245px);
  }
  body.home-page .work-tile p {
    font-size: clamp(29px, 4.1vw, 38px);
  }
}

/* =========================================================
   ARCADIUM V1.0.12 — 1200PX VISUAL CORRECTION
   - Render the exact exported edge-shadow SVGs as real images
   - Keep their visible ellipse centers at the same viewport-relative positions
   - Client gap badges are driven by the actually visible Swiper cards
   - Restore the Works mosaic by proportional Figma geometry at 992–1359
========================================================= */

/* Exact Figma shadows as real <img> elements. This avoids the CSS-background
   positioning/rendering drift that pushed the visible blur almost off-screen. */
body.home-page .intro-side-shadow,
body.home-page .section-edge-glow {
  display: block !important;
  max-width: none !important;
  background: none !important;
  object-fit: fill;
  object-position: center;
}

/* The visible ellipse center in the approved intro composition sits at about
   9% / 91% of the physical viewport, independent of the 1248px content shell. */
body.home-page .intro-side-shadow--left {
  right: auto !important;
  left: calc(9vw - (var(--arc-edge-shadow-w) / 2)) !important;
}
body.home-page .intro-side-shadow--right {
  right: calc(9vw - (var(--arc-edge-shadow-w) / 2)) !important;
  left: auto !important;
}
body.home-page .intro-side-shadow--right-inner {
  right: calc(14.1vw - (clamp(101px, 9.82vw, 168.2px) / 2)) !important;
  left: auto !important;
}

/* Clients use the narrower edge position visible in the approved section shot. */
body.home-page .section-edge-glow--clients-left {
  right: auto !important;
  left: calc(5.7vw - (var(--arc-edge-shadow-w) / 2)) !important;
}
body.home-page .section-edge-glow--clients-right {
  right: calc(5.7vw - (var(--arc-edge-shadow-w) / 2)) !important;
  left: auto !important;
}

/* Client badges: only badges belonging to cards whose center is actually inside
   the Swiper viewport are eligible. The last visible card never draws a badge,
   so there are exactly N-1 badges between N visible cards and none at the edges. */
body.home-page .clients-slider:not(.is-client-badges-ready) .client-separator,
body.home-page .clients-slider.is-client-badges-ready .client-slide:not(.is-client-visible) .client-separator,
body.home-page .clients-slider.is-client-badges-ready .client-slide.is-client-last-visible .client-separator {
  display: block !important;
  visibility: hidden !important;
  opacity: 0 !important;
}
body.home-page .clients-slider.is-client-badges-ready .client-slide.is-client-visible:not(.is-client-last-visible) .client-separator {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
body.home-page .client-slide .client-separator {
  left: calc(100% + (var(--arc-client-gap, 16.977px) / 2)) !important;
  transition: opacity .14s linear;
}
body.home-page .client-slide .client-separator--four {
  transform: translate(-50%, -50%) rotate(-22.77deg) !important;
}

/* 1200px is a scaled copy of the desktop mosaic — not a separately re-shaped
   layout. Aspect ratios are taken directly from the approved 292/297/296/297
   Figma columns, so width and height shrink together. */
@media (min-width: 992px) and (max-width: 1359.98px) {
  body.home-page .works-section {
    grid-template-columns: 292fr 297fr 296fr 297fr !important;
    width: min(calc(100% - 80px), 1248px) !important;
    gap: clamp(16px, 1.62vw, 21.6667px) !important;
    height: auto !important;
    margin-top: clamp(72px, 7.5vw, 102px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding: 0 !important;
    overflow: visible !important;
  }
  body.home-page .works-column {
    gap: clamp(12px, 1.2vw, 16px) !important;
  }

  body.home-page .works-column--one .work-tile { height: auto !important; aspect-ratio: 292 / 402; }
  body.home-page .works-column--one .work-photo { height: auto !important; aspect-ratio: 292 / 268; }
  body.home-page .works-column--two .work-photo { height: auto !important; aspect-ratio: 297 / 440; }
  body.home-page .works-column--two .work-tile { height: auto !important; aspect-ratio: 297 / 228; }
  body.home-page .works-column--three .work-tile { height: auto !important; aspect-ratio: 296 / 254; }
  body.home-page .works-column--three .work-photo { height: auto !important; aspect-ratio: 296 / 413; }
  body.home-page .works-column--four .work-photo { height: auto !important; aspect-ratio: 297 / 382; }
  body.home-page .works-column--four .work-tile { height: auto !important; aspect-ratio: 297 / 422; }

  body.home-page .work-tile {
    padding: clamp(19px, 1.95vw, 26px) clamp(11px, 1.05vw, 14px) clamp(12px, 1.2vw, 16px) !important;
    border-radius: clamp(13px, 1.2vw, 16px);
  }
  body.home-page .work-tile--dark {
    padding-top: clamp(14px, 1.43vw, 19px) !important;
  }
  body.home-page .work-tile p {
    font-size: clamp(34px, 3.45vw, 46px) !important;
    line-height: 1.05;
  }
  body.home-page .work-tile__link,
  body.home-page .works-column--one .work-tile .work-tile__link,
  body.home-page .works-column--four .work-tile .work-tile__link {
    position: static !important;
    width: clamp(28px, 2.7vw, 36px);
    height: clamp(28px, 2.7vw, 36px);
    margin-top: auto !important;
    transform: none !important;
  }
  body.home-page .work-tile__arrow {
    width: clamp(16px, 1.5vw, 20px);
    height: clamp(16px, 1.5vw, 20px);
  }
  body.home-page .work-tile:hover .work-tile__link,
  body.home-page .work-tile:focus-within .work-tile__link,
  body.home-page .work-tile:focus-visible .work-tile__link {
    transform: translateY(-2px) rotate(-8deg) scale(1) !important;
  }
}

/* On mobile/tablet the same exact shadow image remains partially outside the
   viewport, but its visible center is fixed; it can no longer expand into a
   page-wide purple wash. */
@media (max-width: 991.98px) {
  body.home-page .intro-side-shadow--left {
    left: calc(9vw - (var(--arc-edge-shadow-w) / 2)) !important;
  }
  body.home-page .intro-side-shadow--right {
    right: calc(9vw - (var(--arc-edge-shadow-w) / 2)) !important;
  }
  body.home-page .section-edge-glow--clients-left {
    left: calc(5.7vw - (var(--arc-edge-shadow-w) / 2)) !important;
  }
  body.home-page .section-edge-glow--clients-right {
    right: calc(5.7vw - (var(--arc-edge-shadow-w) / 2)) !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.15 — DESKTOP WORKS RECOVERY
   Clean recovery from V1.0.12 visual baseline.
   Desktop composition never reflows: 4 columns from 992px upward.
   1360px+ keeps the original exact desktop geometry already defined above.
========================================================= */

/* 992–1359: keep the exact four-column composition, but use more of the
   available desktop width. This is a fit, not a redesign/reflow. */
@media (min-width: 992px) and (max-width: 1359.98px) {
  body.home-page .works-section {
    grid-template-columns: 292fr 297fr 296fr 297fr !important;
    width: min(calc(100% - 40px), 1248px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}

/* Footer socials: five 40px icons + four 8px gaps stay on one line on
   intermediate desktop. Keep the icon size; reserve their real footprint. */
@media (min-width: 992px) and (max-width: 1359.98px) {
  .footer-inner {
    grid-template-columns: minmax(260px, 1fr) 145px minmax(180px, 210px) 240px !important;
    column-gap: clamp(24px, 3vw, 36px) !important;
  }
  .footer-contact {
    min-width: 240px;
  }
  .footer-contact .socials {
    flex-wrap: nowrap !important;
    width: 232px;
    min-width: 232px;
    max-width: 232px;
  }
}

/* =========================================================
   ARCADIUM V1.0.16 — WORKS DESKTOP CANVAS FIX
   992–1359px uses the *exact* approved 1440 desktop mosaic as
   one rigid 1247×686 canvas and scales the whole canvas once.
   No per-card responsive geometry, no reflow, no aspect hacks.
========================================================= */

/* Outside intermediate desktop the wrapper is layout-transparent, so the
   already-approved >=1360 desktop and <992 tablet/mobile rules stay intact. */
body.home-page .works-stage {
  display: contents;
}

@media (min-width: 992px) and (max-width: 1359.98px) {
  body.home-page .works-stage {
    display: block;
    position: relative;
    width: var(--arc-works-stage-w, calc(100vw - 80px));
    max-width: 1247px;
    height: var(--arc-works-stage-h, 686px);
    margin: var(--arc-works-stage-mt, 96px) auto 0;
    padding: 0;
    overflow: visible;
  }

  /* Exact desktop canvas. Every child below is the same geometry used by the
     approved large desktop; only this one parent is transformed. */
  body.home-page .works-stage > .works-section {
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    display: grid !important;
    grid-template-columns: 292px 297px 296px 297px !important;
    column-gap: 21.6667px !important;
    row-gap: 0 !important;
    width: 1247px !important;
    max-width: none !important;
    height: 686px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    transform-origin: top center !important;
    transform: translateX(-50%) scale(var(--arc-works-scale, 1)) !important;
  }

  body.home-page .works-stage .works-column {
    gap: 16px !important;
    min-width: 0 !important;
  }
  body.home-page .works-stage .works-column--one,
  body.home-page .works-stage .works-column--two,
  body.home-page .works-stage .works-column--four {
    position: relative !important;
    top: -1px !important;
  }
  body.home-page .works-stage .works-column--three {
    position: static !important;
    top: auto !important;
  }

  body.home-page .works-stage .works-column--one .work-tile { height: 402px !important; aspect-ratio: auto !important; }
  body.home-page .works-stage .works-column--one .work-photo { height: 268px !important; aspect-ratio: auto !important; }
  body.home-page .works-stage .works-column--two .work-photo { height: 440px !important; aspect-ratio: auto !important; }
  body.home-page .works-stage .works-column--two .work-tile { height: 228px !important; aspect-ratio: auto !important; }
  body.home-page .works-stage .works-column--three .work-tile { height: 254px !important; aspect-ratio: auto !important; }
  body.home-page .works-stage .works-column--three .work-photo { height: 413px !important; aspect-ratio: auto !important; }
  body.home-page .works-stage .works-column--four .work-photo { height: 382px !important; aspect-ratio: auto !important; }
  body.home-page .works-stage .works-column--four .work-tile { height: 422px !important; aspect-ratio: auto !important; }

  body.home-page .works-stage .work-tile,
  body.home-page .works-stage .work-photo {
    border-radius: 16px !important;
  }
  body.home-page .works-stage .work-tile {
    position: relative !important;
    padding: 26px 14px 16px !important;
  }
  body.home-page .works-stage .work-tile--dark {
    padding-top: 19px !important;
  }
  body.home-page .works-stage .work-tile p {
    font-size: 46px !important;
    line-height: 1.05 !important;
  }

  body.home-page .works-stage .work-tile__link,
  body.home-page .works-stage .works-column--one .work-tile .work-tile__link,
  body.home-page .works-stage .works-column--four .work-tile .work-tile__link {
    width: 36px !important;
    height: 36px !important;
    margin: 0 !important;
  }
  body.home-page .works-stage .work-tile__arrow {
    width: 20px !important;
    height: 20px !important;
  }
  body.home-page .works-stage .works-column--one .work-tile .work-tile__link {
    position: absolute !important;
    top: 349px !important;
    right: 22px !important;
    transform: none !important;
  }
  body.home-page .works-stage .works-column--four .work-tile .work-tile__link {
    position: absolute !important;
    top: 233px !important;
    right: 25px !important;
    transform: none !important;
  }
  body.home-page .works-stage .work-tile:hover .work-tile__link,
  body.home-page .works-stage .work-tile:focus-within .work-tile__link,
  body.home-page .works-stage .work-tile:focus-visible .work-tile__link {
    transform: translateY(-2px) rotate(-8deg) scale(1) !important;
  }
}

/* =========================================================
   V1.0.18 — Contact alignment + CF7 design fidelity
   Scope: Contact page + main/popup booking forms only.
========================================================= */

/* Keep all direct-contact icons on one physical vertical axis. */
@media (min-width: 992px) {
  .contact-form-page .direct-contact__details {
    width: min(100%, 404px);
    margin-right: 0;
    margin-left: auto;
  }

  .contact-form-page .direct-contact__row,
  .contact-form-page .direct-contact__row--address {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(0, 1fr) 42px;
    align-items: center;
    justify-content: initial;
    column-gap: 14px;
    margin-right: 0;
    margin-left: 0;
  }

  .contact-form-page .direct-contact__row > span:first-child {
    min-width: 0;
    justify-self: end;
    text-align: right;
  }

  .contact-form-page .direct-contact__row > i {
    grid-column: 2;
    justify-self: end;
  }
}

/* The Figma chevron is 16.5 × 9. Do not stretch it to the generic 24 × 24
   icon box; preserve the actual vector proportions. */
.contact-form-page .field-with-icon--select > img {
  width: 16.5px;
  height: 9px;
  object-fit: contain;
  transform: translateY(-50%) rotate(180deg);
}

/* CF7 submit is an <input>, so use a selector stronger than the generic
   .booking-form input rule. This restores the approved purple pill button. */
.contact-form-page .booking-form input.booking-submit[type="submit"],
.contact-form-page .booking-form input.wpcf7-submit.booking-submit[type="submit"] {
  display: block;
  width: 100%;
  height: 52.802px;
  min-height: 52.802px;
  margin: 20px 0 0;
  border: 0;
  border-radius: 37.686px;
  padding: 0 24px;
  outline: 0;
  background: #9209f2;
  box-shadow: none;
  color: #fff;
  font-family: var(--body-font);
  font-size: 23.802px;
  font-weight: 400;
  line-height: 52.802px;
  text-align: center;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

.contact-form-page .booking-form input.booking-submit[type="submit"]:hover,
.contact-form-page .booking-form input.booking-submit[type="submit"]:focus-visible,
.contact-form-page .booking-form input.wpcf7-submit.booking-submit[type="submit"]:hover,
.contact-form-page .booking-form input.wpcf7-submit.booking-submit[type="submit"]:focus-visible {
  background: #a61aff;
  box-shadow: 0 12px 32px rgba(146, 9, 242, .35);
  transform: translateY(-2px);
}

.contact-form-page .booking-form input.booking-submit[type="submit"]:active,
.contact-form-page .booking-form input.wpcf7-submit.booking-submit[type="submit"]:active {
  transform: translateY(0);
}

/* Keep CF7's spinner from consuming a second visual row beside/below the
   design button. */
.contact-form-page .booking-form .wpcf7-spinner {
  align-self: center;
  margin: -8px 0 0;
}

/* English form follows the mirrored approved layout rather than inheriting
   the Arabic field direction/text alignment. */
html[lang^="en"] .contact-form-page .booking-form,
html[lang^="en"] .arc-booking-form {
  direction: ltr;
}

html[lang^="en"] .contact-form-page .form-row-pair .form-group,
html[lang^="en"] .arc-booking-pair .arc-booking-field {
  direction: ltr;
}

html[lang^="en"] .contact-form-page .form-group label,
html[lang^="en"] .contact-form-page .booking-form input:not([type="submit"]),
html[lang^="en"] .contact-form-page .booking-form select,
html[lang^="en"] .contact-form-page .booking-form textarea,
html[lang^="en"] .arc-booking-field label,
html[lang^="en"] .arc-booking-form input:not([type="submit"]),
html[lang^="en"] .arc-booking-form select,
html[lang^="en"] .arc-booking-form textarea {
  text-align: left;
}

/* Popup dropdown arrow: preserve the same exact Figma vector dimensions. */
.arc-booking-icon--chevron img {
  width: 16.5px;
  height: 9px;
  object-fit: contain;
}

/* =========================================================
   V1.0.19 — CF7 dynamic/portable select cleanup + form contour
   - No <img> icons inside CF7 form markup.
   - No localhost/domain-specific URLs.
   - Package/game values are supplied by CPTs in inc/forms.php.
========================================================= */

/* Restore the complete faint rounded contour, including the bottom corners. */
.contact-form-page .booking-form::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.16);
  pointer-events: none;
}

/* Main Contact form: exact portable chevron/calendar on the actual controls. */
.contact-form-page .field-with-icon--select select[data-arc-post-type="arc_package"] {
  -webkit-appearance: none;
  appearance: none;
  background-image: url("../ui/booking-chevron-down.svg");
  background-repeat: no-repeat;
  background-size: 16.5px 9px;
  background-position: left 18px center;
  padding-left: 54px;
  cursor: pointer;
}
.contact-form-page .field-with-icon--date input#event-date {
  background-image: url("../ui/booking-calendar.svg");
  background-repeat: no-repeat;
  background-size: 19.5px 19.5px;
  background-position: left 18px center;
  padding-left: 54px;
}

/* Booking Popup: same theme-owned chrome, no icon spans required. */
.arc-booking-form select[data-arc-post-type] {
  -webkit-appearance: none;
  appearance: none;
  background-image: url("../ui/booking-chevron-down.svg");
  background-repeat: no-repeat;
  background-size: 16.5px 9px;
  background-position: left 18px center;
  padding-left: 54px;
  cursor: pointer;
}
.arc-booking-form input#booking-date {
  background-image: url("../ui/booking-calendar.svg");
  background-repeat: no-repeat;
  background-size: 19.5px 19.5px;
  background-position: left 18px center;
  padding-left: 54px;
}

/* If old DB markup is still cached for one request, never show legacy icons. */
.contact-form-page .field-with-icon > img,
.arc-booking-form .arc-booking-icon {
  display: none !important;
}

/* English mirrors physical icon placement without changing the design. */
html[lang^="en"] .contact-form-page .field-with-icon--select select[data-arc-post-type="arc_package"],
html[lang^="en"] .arc-booking-form select[data-arc-post-type] {
  background-position: right 18px center;
  padding-right: 54px;
  padding-left: 12px;
}
html[lang^="en"] .contact-form-page .field-with-icon--date input#event-date,
html[lang^="en"] .arc-booking-form input#booking-date {
  background-position: right 18px center;
  padding-right: 54px;
  padding-left: 12px;
}

/* =========================================================
   V1.0.21 — Breadcrumb direction + normal Privacy Page editor
========================================================= */

/* Use an explicit CSS chevron instead of a bidi-mirrored text glyph. */
.breadcrumb-nav {
  direction: inherit;
}
.breadcrumb-nav > span[aria-hidden="true"] {
  display: inline-flex;
  flex: 0 0 9px;
  width: 9px;
  height: 12px;
  align-items: center;
  justify-content: center;
  font-size: 0 !important;
  line-height: 0 !important;
}
.breadcrumb-nav > span[aria-hidden="true"]::before {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border: solid currentColor;
  border-width: 0 1.6px 1.6px 0;
}
body[dir="rtl"] .breadcrumb-nav {
  direction: rtl;
}
body[dir="rtl"] .breadcrumb-nav > span[aria-hidden="true"]::before {
  transform: rotate(135deg);
}
body[dir="ltr"] .breadcrumb-nav {
  direction: ltr;
}
body[dir="ltr"] .breadcrumb-nav > span[aria-hidden="true"]::before {
  transform: rotate(-45deg);
}

/* Privacy is a normal Page now: all editable copy comes from post_content. */
@media (min-width: 992px) {
  .privacy-page--editor .privacy-content {
    margin-top: -34px;
  }
}
.privacy-page--editor .privacy-editor-content {
  display: block;
  width: min(100%, 862px);
  max-width: 862px;
  color: #fff;
  font-family: var(--body-font);
  font-size: 20px;
  font-weight: 300;
  line-height: 1.55;
}
body.privacy-page--editor[dir="rtl"] .privacy-editor-content {
  margin-right: 0;
  margin-left: auto;
  text-align: right;
}
body.privacy-page--editor[dir="ltr"] .privacy-editor-content {
  margin-right: auto;
  margin-left: 0;
  text-align: left;
}
.privacy-page--editor .privacy-editor-content > h2 {
  margin: 44px 0 24px;
  color: #fff;
  font-family: var(--body-font);
  font-size: 40px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -.4px;
}
.privacy-page--editor .privacy-editor-content > h2:first-child {
  margin-top: 0;
}
.privacy-page--editor .privacy-editor-content > p,
.privacy-page--editor .privacy-editor-content > ul,
.privacy-page--editor .privacy-editor-content > ol {
  margin-top: 0;
  margin-bottom: 24px;
}
.privacy-page--editor .privacy-editor-content > ul,
.privacy-page--editor .privacy-editor-content > ol {
  padding: 0;
  list-style-position: outside;
}
body.privacy-page--editor[dir="rtl"] .privacy-editor-content > ul,
body.privacy-page--editor[dir="rtl"] .privacy-editor-content > ol {
  margin-right: 30px;
}
body.privacy-page--editor[dir="ltr"] .privacy-editor-content > ul,
body.privacy-page--editor[dir="ltr"] .privacy-editor-content > ol {
  margin-left: 30px;
}
.privacy-page--editor .privacy-editor-content li {
  margin-bottom: 4px;
}
@media (max-width: 991.98px) {
  .privacy-page--editor .privacy-editor-content {
    width: 100%;
    max-width: none;
    font-size: 17px;
    line-height: 1.75;
  }
  .privacy-page--editor .privacy-editor-content > h2 {
    margin-top: 40px;
    margin-bottom: 18px;
    font-size: clamp(30px, 4.8vw, 36px);
    line-height: 1.25;
  }
}
@media (max-width: 575.98px) {
  .privacy-page--editor .privacy-editor-content {
    font-size: 15px;
    line-height: 1.8;
  }
  .privacy-page--editor .privacy-editor-content > h2 {
    margin-top: 34px;
    margin-bottom: 14px;
    font-size: 27px;
    line-height: 1.3;
  }
}


/* =========================================================
   V1.0.22 — Canonical page container + Privacy nesting fix
========================================================= */
/* Privacy now has two distinct layers:
   1) 1248px design container; 2) 862px readable text column. */
.privacy-page--editor .privacy-content.arc-page-container {
  width: min(calc(100% - 48px), 1248px);
  margin-right: auto;
  margin-left: auto;
}
.privacy-page--editor .privacy-content .privacy-editor-content {
  width: min(100%, 862px);
  max-width: 862px;
}
@media (max-width: 991.98px) {
  .privacy-page--editor .privacy-content.arc-page-container {
    width: calc(100% - 36px);
  }
}
@media (max-width: 575.98px) {
  .privacy-page--editor .privacy-content.arc-page-container {
    width: calc(100% - 28px);
  }
}

/* =========================================================
   Arcadium V1.0.23 — FAQ tabs refinement + AJAX loading state
   Scoped to the FAQ archive only so Articles shared tabs stay unchanged.
========================================================= */

/* Desktop / laptop: preserve the same pill language but reduce visual mass. */
.faq-page .faq-tabs-shell {
  width: min(calc(100% - 48px), 720px);
  height: 70px;
  margin-top: -14px;
}

.faq-page .faq-tabs {
  width: 730px;
  height: 70px;
  padding: 10px 24px;
  gap: 0;
  border-radius: 96px;
}

.faq-page .faq-tab {
  height: 44px;
  padding: 7px 11px;
  border-radius: 30px;
  font-size: 22px;
  letter-spacing: -0.1px;
}

.faq-page .faq-tab.is-active {
  height: 50px;
  padding: 9px 12px;
}

.faq-page .faq-tab--events { --faq-tab-width: 118px; }
.faq-page .faq-tab--games { --faq-tab-width: 165px; }
.faq-page .faq-tab--policies { --faq-tab-width: 128px; }
.faq-page .faq-tab--packages { --faq-tab-width: 190px; }

/* AJAX loader: centered, calm and visually connected to the Arcadium UI. */
.faq-page #faq-ajax-panel.is-loading {
  min-height: 190px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 30px 20px;
}

.faq-page .arc-ajax-loading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 46px;
  padding: 10px 18px;
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.82);
  background: rgba(255, 255, 255, 0.035);
  box-shadow: inset 0 0 0 1px rgba(221, 55, 255, 0.22);
  font-size: 17px;
  line-height: 1.3;
  white-space: nowrap;
}

.faq-page .arc-ajax-loading__dot {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  border: 2px solid rgba(221, 55, 255, 0.24);
  border-top-color: #dd37ff;
  border-radius: 50%;
  animation: arc-faq-loading-spin 0.78s linear infinite;
}

@keyframes arc-faq-loading-spin {
  to { transform: rotate(360deg); }
}

@media (max-width: 991.98px) {
  .faq-page .faq-tabs-shell {
    width: min(calc(100% - 36px), 700px);
    height: auto;
    margin-top: -20px;
  }

  .faq-page .faq-tabs {
    width: 100%;
    min-height: 62px;
    height: auto;
    padding: 8px 12px;
    gap: 7px;
  }

  .faq-page .faq-tab {
    --faq-tab-width: auto;
    width: auto;
    min-width: 108px;
    height: 42px;
    padding: 7px 12px;
    font-size: 18px;
  }

  .faq-page .faq-tab--packages {
    min-width: 160px;
  }

  .faq-page .faq-tab.is-active {
    height: 46px;
    padding-block: 8px;
  }

  .faq-page #faq-ajax-panel.is-loading {
    min-height: 150px;
    padding: 24px 16px;
  }

  .faq-page .arc-ajax-loading {
    min-height: 42px;
    padding: 9px 15px;
    font-size: 15px;
  }
}

@media (max-width: 575.98px) {
  .faq-page .faq-tabs-shell {
    width: calc(100% - 28px);
    margin-top: -18px;
  }

  .faq-page .faq-tabs {
    min-height: 56px;
    padding: 7px 9px;
    gap: 6px;
    border-radius: 36px;
  }

  .faq-page .faq-tab {
    min-width: 94px;
    height: 38px;
    padding: 6px 10px;
    font-size: 15px;
  }

  .faq-page .faq-tab--packages {
    min-width: 136px;
  }

  .faq-page .faq-tab.is-active {
    height: 42px;
    padding-block: 7px;
  }

  .faq-page #faq-ajax-panel.is-loading {
    min-height: 128px;
  }

  .faq-page .arc-ajax-loading {
    white-space: normal;
    text-align: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .faq-page .arc-ajax-loading__dot {
    animation-duration: 1.5s;
  }
}

/* Keep the first FAQ item visually first in both languages. */
.faq-page.arcadium-lang-en .faq-tabs {
  direction: ltr;
}


/* =========================================================
   V1.0.29 — About Moments desktop continuity + header booking CTA
   Keep 1280px+ Figma geometry untouched. Between 992px and 1279px,
   preserve the same composition proportionally instead of falling
   back to the generic flex layout.
========================================================= */

.desktop-nav > a.header-booking-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 118px;
  height: 44px;
  padding: 0 20px;
  border: 1px solid rgba(221, 55, 255, .7);
  border-radius: 999px;
  background: linear-gradient(90deg, #9403f2 0%, #b20cff 100%);
  box-shadow: 0 8px 24px rgba(148, 3, 242, .22);
  color: #fff;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  transition: transform .25s ease, filter .25s ease, box-shadow .25s ease;
}

.desktop-nav > a.header-booking-link::after { display: none; }
.desktop-nav > a.header-booking-link:hover,
.desktop-nav > a.header-booking-link:focus-visible,
.contact-header .desktop-nav > a.header-booking-link:hover,
.contact-header .desktop-nav > a.header-booking-link:focus-visible {
  color: #fff;
  transform: translateY(-2px);
  filter: brightness(1.07);
  box-shadow: 0 12px 30px rgba(148, 3, 242, .3);
  outline: none;
}

.drawer-nav > a.drawer-booking-link {
  justify-content: center;
  margin-top: 16px;
  padding: 13px 18px;
  border: 1px solid rgba(221, 55, 255, .62);
  border-radius: 999px;
  background: linear-gradient(90deg, #9403f2 0%, #b20cff 100%);
  color: #fff;
  font-weight: 700;
  text-align: center;
}
.drawer-nav > a.drawer-booking-link:hover,
.drawer-nav > a.drawer-booking-link:focus-visible {
  padding-right: 18px;
  background: linear-gradient(90deg, #a20aff 0%, #c11cff 100%);
  color: #fff;
  transform: none;
}

@media (min-width: 992px) and (max-width: 1280px) {
  .site-header .desktop-nav { gap: 18px; }
  .desktop-nav > a.header-booking-link {
    min-width: 104px;
    height: 40px;
    padding-inline: 15px;
    font-size: 15px;
  }

  .about-page .about-moments {
    height: auto;
    margin-top: 120px;
  }

  .about-page .moments-panel {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 1246 / 504;
    padding: 0;
    overflow: hidden;
    border-radius: clamp(24px, calc(2.568vw - 1.233px), 32px);
    background: var(--about-surface);
  }

  .about-page .moments-panel::after {
    content: "";
    position: absolute;
    z-index: 0;
    top: -67.46%;
    right: -22.15%;
    width: 44.38%;
    height: 210.72%;
    background: radial-gradient(ellipse 13.83% 31.17% at center, #B12CCC 99%, transparent 100%);
    filter: blur(clamp(76px, calc(8.026vw - 3.852px), 100px));
    pointer-events: none;
  }

  .about-page .moments-copy {
    position: absolute;
    z-index: 2;
    top: 15.278%;
    left: 50%;
    width: 73.194%;
    margin: 0;
    transform: translateX(-50%);
    text-align: center;
  }

  .about-page .moments-copy h2 {
    margin: 0;
    font-size: clamp(48px, calc(5.136vw - 2.466px), 64px);
    line-height: 1.2;
  }

  .about-page .moments-copy p {
    margin: clamp(15px, calc(1.605vw - .770px), 20px) 0 0;
    font-size: clamp(15px, calc(1.605vw - .770px), 20px);
    line-height: 1.6;
  }

  .about-page .moment-tags {
    position: absolute;
    z-index: 2;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    direction: ltr;
  }

  .about-page .moment-tag-slot {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .about-page .moment-tag {
    box-sizing: border-box;
    flex: 0 0 auto;
    min-height: clamp(31px, calc(3.291vw - 1.579px), 41px);
    padding: clamp(6px, calc(.642vw - .308px), 8px) clamp(9px, calc(.963vw - .462px), 12px);
    border-radius: 40px;
    font-size: clamp(15px, calc(1.605vw - .770px), 20px);
    line-height: 1.2;
  }

  .about-page .moment-tag--deep,
  .about-page .moment-tag--violet,
  .about-page .moment-tag--pink { border-color: transparent; }

  .about-page .moment-tag-slot--interactive { top: 69.643%; left: 17.496%; width: 13.804%; height: 8.135%; }
  .about-page .moment-tag-slot--interactive .moment-tag { width: 100%; }

  .about-page .moment-tag-slot--custom { top: 61.111%; left: 25.762%; width: 14.762%; height: 12.940%; }
  .about-page .moment-tag-slot--custom .moment-tag { width: 97.86%; transform: rotate(7.68deg); }

  .about-page .moment-tag-slot--mobile { top: 73.810%; left: 33.628%; width: 13.804%; height: 8.135%; }
  .about-page .moment-tag-slot--mobile .moment-tag { width: 100%; }

  .about-page .moment-tag-slot--safe { top: 61.111%; left: 42.295%; width: 11.418%; height: 12.973%; }
  .about-page .moment-tag-slot--safe .moment-tag { width: 96.36%; transform: rotate(-10.6deg); }

  .about-page .moment-tag-slot--fun { top: 72.024%; left: 48.475%; width: 14.606%; height: 9.102%; }
  .about-page .moment-tag-slot--fun .moment-tag { width: 99.48%; transform: rotate(1.38deg); }

  .about-page .moment-tag-slot--easy { top: 57.143%; left: 54.655%; width: 14.365%; height: 14.885%; }
  .about-page .moment-tag-slot--easy .moment-tag { width: 97.21%; transform: rotate(-10.86deg); }

  .about-page .moment-tag-slot--competitive { top: 75.397%; left: 63.002%; width: 11.236%; height: 8.631%; }
  .about-page .moment-tag-slot--competitive .moment-tag { width: 100%; }

  .about-page .moment-tag-slot--supervision { top: 64.683%; left: 65.891%; width: 16.505%; height: 13.318%; }
  .about-page .moment-tag-slot--supervision .moment-tag { width: 98.23%; transform: rotate(7.45deg); }
}


/* =========================================================
   Arcadium V1.0.30 — Articles archive refinement + normal menu booking item
   - Header booking is now an ordinary WordPress Custom Link (#booknow).
   - Article tabs match the compact FAQ tab language.
   - The first available Article category is active from PHP.
   - 1200-class desktop keeps three Article cards per row.
========================================================= */

.articles-page .articles-tabs-shell {
  width: min(calc(100% - 48px), 720px);
  height: 70px;
  justify-content: center;
  margin-inline: auto;
}

.articles-page .articles-tabs-shell .faq-tabs {
  flex: 0 0 730px;
  width: 730px;
  height: 70px;
  padding: 10px 24px;
  gap: 0;
  border-radius: 96px;
}

.articles-page .faq-tab {
  height: 44px;
  padding: 7px 11px;
  border-radius: 30px;
  font-size: 22px;
  letter-spacing: -0.1px;
}

.articles-page .faq-tab.is-active {
  height: 50px;
  padding-block: 9px;
}

.articles-page .faq-tab--events { --faq-tab-width: 118px; }
.articles-page .faq-tab--games { --faq-tab-width: 165px; }
.articles-page .faq-tab--ideas { --faq-tab-width: 175px; }
.articles-page .faq-tab--corporate { --faq-tab-width: 195px; }

.articles-page.arcadium-lang-en .articles-tabs-shell .faq-tabs {
  direction: ltr;
}

.articles-page .articles-panel.is-loading {
  min-height: 190px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 30px 20px;
}

.articles-page .arc-ajax-loading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 46px;
  padding: 10px 18px;
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.82);
  background: rgba(255, 255, 255, 0.035);
  box-shadow: inset 0 0 0 1px rgba(221, 55, 255, 0.22);
  font-size: 17px;
  line-height: 1.3;
  white-space: nowrap;
}

.articles-page .arc-ajax-loading__dot {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  border: 2px solid rgba(221, 55, 255, 0.24);
  border-top-color: #dd37ff;
  border-radius: 50%;
  animation: arc-faq-loading-spin 0.78s linear infinite;
}

@media (min-width: 1100px) and (max-width: 1280px) {
  .articles-page .articles-browser {
    width: min(calc(100% - 48px), 1152px);
  }

  .articles-page .articles-grid {
    gap: 28px 20px;
  }

  .articles-page .article-card {
    flex-basis: calc((100% - 40px) / 3);
    width: calc((100% - 40px) / 3);
    max-width: 387px;
  }
}

@media (max-width: 991.98px) {
  .articles-page .articles-tabs-shell {
    width: min(calc(100% - 36px), 700px);
    height: auto;
  }

  .articles-page .articles-tabs-shell .faq-tabs {
    flex: 1 1 auto;
    width: 100%;
    min-height: 62px;
    height: auto;
    padding: 8px 12px;
    gap: 7px;
  }

  .articles-page .faq-tab,
  .articles-page .faq-tab--events,
  .articles-page .faq-tab--games,
  .articles-page .faq-tab--ideas,
  .articles-page .faq-tab--corporate {
    --faq-tab-width: auto;
    width: auto;
    min-width: 108px;
    height: 42px;
    padding: 7px 12px;
    font-size: 18px;
  }

  .articles-page .faq-tab--ideas { min-width: 138px; }
  .articles-page .faq-tab--corporate { min-width: 164px; }

  .articles-page .faq-tab.is-active {
    height: 46px;
    padding-block: 8px;
  }

  .articles-page .articles-panel.is-loading {
    min-height: 150px;
    padding: 24px 16px;
  }

  .articles-page .arc-ajax-loading {
    min-height: 42px;
    padding: 9px 15px;
    font-size: 15px;
  }
}

@media (max-width: 575.98px) {
  .articles-page .articles-tabs-shell {
    width: calc(100% - 28px);
  }

  .articles-page .articles-tabs-shell .faq-tabs {
    min-height: 56px;
    padding: 7px 9px;
    gap: 6px;
    border-radius: 36px;
  }

  .articles-page .faq-tab,
  .articles-page .faq-tab--events,
  .articles-page .faq-tab--games,
  .articles-page .faq-tab--ideas,
  .articles-page .faq-tab--corporate {
    min-width: 94px;
    height: 38px;
    padding: 6px 10px;
    font-size: 15px;
  }

  .articles-page .faq-tab--ideas { min-width: 118px; }
  .articles-page .faq-tab--corporate { min-width: 136px; }

  .articles-page .faq-tab.is-active {
    height: 42px;
    padding-block: 7px;
  }

  .articles-page .articles-panel.is-loading {
    min-height: 128px;
  }

  .articles-page .arc-ajax-loading {
    white-space: normal;
    text-align: center;
  }
}

/* =========================================================
   ARCADIUM — REMOVE LEGACY FIGMA CANVAS TAILS
   These page-level min-heights were only preserving the old desktop Figma
   frame length. Once the real content/footer is shorter they leave a blank
   body tail after the footer. Let document content define the page height.
   Desktop only because the legacy rule itself is desktop-only.
========================================================= */
@media (min-width: 1281px) {
  body.about-page,
  body.packages-page,
  body.corporate-events-page {
    min-height: 0 !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.49 — NAV / FORMS / HOME INTERACTION POLISH
   Source: current Full ZIP + Figma Arcadium page + user QA 2026-08-23.
   This block is intentionally authoritative over legacy micro-patches.
========================================================= */

/* Loader keeps the logo/orbits only. The old progress bar/100% readout is gone. */
.arcade-loader__progress,
.arcade-loader__percent { display: none !important; }

/* ---------------------------------------------------------
   Header dropdowns: real parent link + independent colored chevron.
--------------------------------------------------------- */
.nav-dropdown__trigger {
  display: flex;
  direction: inherit;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 34px;
}

.nav-dropdown__parent {
  position: relative;
  display: block;
  padding: 0;
  color: #420c6f;
  font-family: var(--body-font);
  font-size: 18px;
  font-weight: 300;
  line-height: 34px;
  text-align: center;
  white-space: nowrap;
  transition: color .22s ease, transform .22s ease, font-weight .18s ease;
}

.nav-dropdown__parent::after {
  content: '';
  position: absolute;
  right: 0;
  bottom: -5px;
  width: 100%;
  height: 2px;
  border-radius: 999px;
  background: var(--pink);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .24s ease;
}

.nav-dropdown__toggle {
  display: grid;
  place-items: center;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  margin: 0;
  border: 1px solid rgba(163,2,250,.30);
  border-radius: 999px;
  padding: 0;
  background: rgba(146,9,242,.08);
  color: var(--purple);
  cursor: pointer;
  transition: background .22s ease, border-color .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease;
}

.nav-dropdown__chevron,
.drawer-submenu-chevron {
  display: block;
  width: 7px;
  height: 7px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transform-origin: center;
  transition: transform .24s cubic-bezier(.2,.75,.2,1);
}

.desktop-nav > a:hover,
.desktop-nav > a:focus-visible,
.nav-dropdown:hover .nav-dropdown__parent,
.nav-dropdown:focus-within .nav-dropdown__parent,
.nav-dropdown.is-open .nav-dropdown__parent {
  font-weight: 700;
}

.nav-dropdown:hover .nav-dropdown__parent::after,
.nav-dropdown:focus-within .nav-dropdown__parent::after,
.nav-dropdown.is-open .nav-dropdown__parent::after { transform: scaleX(1); }

.nav-dropdown:hover .nav-dropdown__toggle,
.nav-dropdown:focus-within .nav-dropdown__toggle,
.nav-dropdown.is-open .nav-dropdown__toggle {
  border-color: rgba(221,55,255,.72);
  background: linear-gradient(135deg, rgba(146,9,242,.18), rgba(221,55,255,.16));
  color: var(--pink);
  box-shadow: 0 6px 18px rgba(146,9,242,.18);
}

.nav-dropdown.is-open .nav-dropdown__chevron,
.nav-dropdown__toggle[aria-expanded="true"] .nav-dropdown__chevron {
  transform: translateY(2px) rotate(225deg);
}

.contact-header .nav-dropdown__parent { color: #fff; }
.contact-header .nav-dropdown__toggle {
  border-color: rgba(255,255,255,.30);
  background: rgba(25,14,44,.24);
  color: var(--pink);
}

/* The old button selector no longer owns dropdown typography. */
@media (max-width: 1439.98px) and (min-width: 992px) {
  .nav-dropdown__parent { font-size: 18px; }
}
@media (max-width: 1199.98px) and (min-width: 992px) {
  .nav-dropdown__parent { font-size: 16px; }
  .nav-dropdown__trigger { gap: 5px; }
  .nav-dropdown__toggle { width: 22px; height: 22px; flex-basis: 22px; }
}

/* Mobile: word navigates, only the chevron toggles the child list. */
.drawer-nav-item--has-children {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px;
  align-items: stretch;
  width: 100%;
  border-bottom: 1px solid rgba(255,255,255,.10);
}
.drawer-parent-link {
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 15px 4px;
  color: #fff;
  font-size: 18px;
  text-align: right;
  transition: color .22s ease, padding .22s ease, font-weight .18s ease, background .22s ease;
}
.drawer-parent-link:hover,
.drawer-parent-link:focus-visible {
  padding-right: 12px;
  background: linear-gradient(90deg, transparent, rgba(146,9,242,.16));
  color: var(--cyan);
  font-weight: 700;
  outline: 0;
}
.drawer-nav-item .drawer-submenu-toggle {
  display: grid;
  place-items: center;
  width: 48px;
  height: 100%;
  min-height: 52px;
  margin: 0;
  border: 0;
  border-right: 1px solid rgba(255,255,255,.08);
  border-bottom: 0;
  padding: 0;
  background: transparent;
  color: var(--pink);
  text-align: center;
}
.drawer-nav-item .drawer-submenu-toggle:hover,
.drawer-nav-item .drawer-submenu-toggle:focus-visible,
.drawer-nav-item.is-open .drawer-submenu-toggle {
  padding: 0;
  background: rgba(146,9,242,.18);
  color: var(--cyan);
}
.drawer-submenu-toggle[aria-expanded="true"] .drawer-submenu-chevron {
  color: var(--pink);
  transform: translateY(2px) rotate(225deg);
}
@media (max-width: 575.98px) {
  .drawer-parent-link { padding-block: 13px; font-size: 16px; }
  .drawer-nav-item--has-children { grid-template-columns: minmax(0,1fr) 44px; }
  .drawer-nav-item .drawer-submenu-toggle { width: 44px; min-height: 48px; }
}

/* ---------------------------------------------------------
   CF7 validation: preserve native wrappers and show clear inline feedback.
--------------------------------------------------------- */
.arc-booking-control > .wpcf7-form-control-wrap,
.booking-form .wpcf7-form-control-wrap,
.arc-booking-form .wpcf7-form-control-wrap {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
}

.arc-booking-form .wpcf7-not-valid,
.booking-form .wpcf7-not-valid {
  border-color: #ff5dcf !important;
  box-shadow: 0 0 0 3px rgba(221,55,255,.14) !important;
}

.arc-booking-form .wpcf7-not-valid-tip,
.booking-form .wpcf7-not-valid-tip {
  display: block;
  margin: 7px 4px 0;
  color: #ff8ee4;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.45;
  text-align: start;
}

.arc-booking-form .wpcf7-response-output,
.booking-form .wpcf7-response-output {
  margin: 4px 0 0 !important;
  border: 1px solid rgba(221,55,255,.58) !important;
  border-radius: 12px;
  padding: 10px 14px !important;
  background: rgba(146,9,242,.10);
  color: #fff;
  font-size: 13px;
  line-height: 1.5;
}

.arc-booking-field:has(.wpcf7-validates-as-required) > label::after,
.booking-form .form-group:has(.wpcf7-validates-as-required) > label::after {
  content: ' *';
  color: var(--pink);
  font-weight: 700;
}

/* Desktop dialog keeps the Figma 1416px minimum but can grow for validation tips. */
@media (min-width: 768px) {
  .arc-booking-popup:not(.arc-contact-popup) .arc-booking-popup__dialog {
    height: auto;
    min-height: 1416px;
    padding: 108px 24px 36px;
    overflow: hidden;
  }
  .arc-booking-popup:not(.arc-contact-popup) .arc-booking-popup__content {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
  }
}

/* ---------------------------------------------------------
   Shared View-all-games CTA matches the Hero outline button hover exactly.
--------------------------------------------------------- */
.section-button {
  font-weight: 700;
  transition: background .25s ease, border-color .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease, filter .25s ease;
}
.section-button:hover,
.section-button:focus-visible {
  border-color: var(--pink);
  background: var(--purple);
  color: #fff;
  box-shadow: 0 10px 28px rgba(146,9,242,.35);
  transform: translateY(-3px);
  filter: none;
}

/* ---------------------------------------------------------
   Packages: no card is permanently highlighted. Every card owns the Figma
   middle-card state on hover/focus; semantic recommendation data stays hidden.
--------------------------------------------------------- */
.package-card--recommended { /* semantic marker only */ }
.package-card .package-card__intro {
  overflow: hidden;
  background: transparent;
  transition: background .34s ease, box-shadow .34s ease;
}
.package-card .package-card__intro::after {
  content: '';
  position: absolute;
  z-index: 0;
  top: -75%;
  left: -45%;
  width: 90%;
  height: 220%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.13), transparent);
  opacity: 0;
  transform: rotate(18deg) translateX(-120%);
  pointer-events: none;
  transition: opacity .2s ease, transform .75s cubic-bezier(.2,.75,.2,1);
}
.package-card .package-card__intro > * { position: relative; z-index: 1; }

@media (hover:hover) and (pointer:fine) {
  .package-card:hover .package-card__intro {
    background: linear-gradient(172.7016deg, #470c85 10.595%, #9209f2 99.189%);
  }
  .package-card:hover .package-card__intro::after {
    opacity: 1;
    transform: rotate(18deg) translateX(235%);
  }
}
.package-card:focus-within .package-card__intro,
.package-card:focus-visible .package-card__intro,
.package-card.is-active .package-card__intro {
  background: linear-gradient(172.7016deg, #470c85 10.595%, #9209f2 99.189%);
}
.package-card:focus-within .package-card__intro::after,
.package-card:focus-visible .package-card__intro::after,
.package-card.is-active .package-card__intro::after {
  opacity: 1;
  transform: rotate(18deg) translateX(235%);
}
.package-card:hover .package-card__button,
.package-card:focus-within .package-card__button,
.package-card:focus-visible .package-card__button,
.package-card.is-active .package-card__button,
.package-card .package-card__button:hover,
.package-card .package-card__button:focus-visible {
  border-color: var(--purple);
  background: var(--purple);
  color: #fff;
  box-shadow: 0 10px 24px rgba(146,9,242,.20);
}

/* ---------------------------------------------------------
   Home Figma side glows — exact TWO-node composition from Hero 7:
   672:1450 = 153x662 at page y=1939 / x=-142
   672:1451 = 153x662 at page y=2722 / right=-145
   Anchor them to Games/Events so responsive document flow cannot make them
   drift into a giant page-wide wash. No duplicate glows are created.
--------------------------------------------------------- */
.home-page .games-section,
.home-page .events-section {
  position: relative;
  isolation: isolate;
  overflow: visible;
}
.home-figma-side-glow {
  position: absolute !important;
  z-index: 0 !important;
  display: block;
  width: clamp(105px, 10.625vw, 153px);
  height: clamp(456px, 45.9722vw, 662px);
  border-radius: 50%;
  background: rgba(177,44,204,.58);
  filter: blur(clamp(69px, 6.9444vw, 100px));
  opacity: 1;
  pointer-events: none;
  user-select: none;
}
.home-page .games-section > :not(.home-figma-side-glow),
.home-page .events-section > :not(.home-figma-side-glow) {
  position: relative;
  z-index: 1;
}
.home-figma-side-glow--left {
  top: clamp(229px, 23.125vw, 333px);
  left: clamp(-142px, -9.8611vw, -98px);
}
.home-figma-side-glow--right {
  top: clamp(289px, 29.1667vw, 420px);
  right: clamp(-145px, -10.0694vw, -100px);
}
@media (max-width: 991.98px) {
  .home-figma-side-glow { display: none; }
}

/* Reviews uses the exported Ellipse 16 asset already present in the theme.
   Keep the exact Figma 649x641 blurred glow visible behind all three cards. */
.home-page .reviews-section {
  position: relative;
  isolation: isolate;
  overflow: visible;
}
.home-page .reviews-glow {
  display: block !important;
  opacity: 1 !important;
}
.home-page .reviews-section > :not(.reviews-glow) {
  position: relative;
  z-index: 1;
}
@media (max-width: 991.98px) {
  .home-page .reviews-glow { display: none !important; }
}

/* ---------------------------------------------------------
   Clients: wider but bounded slider, autoplay controlled in JS, site-color nav.
--------------------------------------------------------- */
.home-page .clients-row {
  width: min(calc(100% - 96px), 1248px);
}
.home-page .clients-slider,
.home-page .reviews-slider {
  touch-action: pan-y;
  -webkit-user-select: none;
  user-select: none;
}
.home-page .clients-slider img,
.home-page .reviews-slider img {
  -webkit-user-drag: none;
  user-drag: none;
  -webkit-user-select: none;
  user-select: none;
}
.clients-nav {
  position: absolute;
  z-index: 7;
  top: calc(50% + 16px);
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin: 0;
  border: 1px solid rgba(221,55,255,.68);
  border-radius: 50%;
  padding: 0;
  background: rgba(25,14,44,.90);
  color: var(--pink);
  box-shadow: 0 10px 26px rgba(0,0,0,.20);
  cursor: pointer;
  transform: translateY(-50%);
  transition: background .22s ease, border-color .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease;
}
.clients-nav--prev { left: -48px; }
.clients-nav--next { right: -48px; }
.clients-nav span {
  display: block;
  width: 10px;
  height: 10px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
}
.clients-nav--prev span { transform: translateX(2px) rotate(-135deg); }
.clients-nav--next span { transform: translateX(-2px) rotate(45deg); }
.clients-nav:hover,
.clients-nav:focus-visible {
  border-color: var(--pink);
  background: linear-gradient(135deg, var(--purple), #b20cff);
  color: #fff;
  box-shadow: 0 12px 30px rgba(146,9,242,.34);
  transform: translateY(-50%) scale(1.06);
  outline: 0;
}
@media (min-width: 992px) {
  .home-page .client-slide { width: clamp(250px, 20vw, 292px) !important; }
}
@media (max-width: 991.98px) {
  .home-page .clients-row { width: 100%; }
  .clients-nav { display: none; }
}

/* ---------------------------------------------------------
   Works: preserve the approved four-column mosaic; scale the single canvas a
   little smaller as one unit on every desktop width. Colored tiles are anchors.
--------------------------------------------------------- */
.home-page .work-tile {
  text-decoration: none;
  cursor: pointer;
}
.home-page .work-tile p { color: inherit; }

@media (min-width: 992px) {
  body.home-page .works-stage {
    display: block;
    position: relative;
    width: var(--arc-works-stage-w, 1122.3px);
    max-width: calc(100vw - 80px);
    height: var(--arc-works-stage-h, 617.4px);
    margin: var(--arc-works-stage-mt, 108px) auto 0;
    padding: 0;
    overflow: visible;
  }
  body.home-page .works-stage > .works-section {
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    width: 1247px !important;
    max-width: none !important;
    height: 686px !important;
    margin: 0 !important;
    transform-origin: top center !important;
    transform: translateX(-50%) scale(var(--arc-works-scale, .90)) !important;
  }
}

/* ---------------------------------------------------------
   Reviews: no browser-native image drag, smooth Swiper-owned gesture.
--------------------------------------------------------- */
.home-page .review-card,
.home-page .review-card img {
  -webkit-user-select: none;
  user-select: none;
}
.home-page .review-card img { pointer-events: none; }

/* ---------------------------------------------------------
   Layered scroll entrance. Uses translate property to avoid fighting legacy
   transform geometry (Swiper/Works own their transforms independently).
--------------------------------------------------------- */
body.arc-stagger-ready .arc-stagger-reveal {
  opacity: 0;
  translate: 0 26px;
  scale: .992;
  filter: blur(5px);
  transition:
    opacity .78s var(--arc-ease-premium) var(--arc-stagger-delay, 0ms),
    translate .82s var(--arc-ease-premium) var(--arc-stagger-delay, 0ms),
    scale .82s var(--arc-ease-premium) var(--arc-stagger-delay, 0ms),
    filter .72s ease var(--arc-stagger-delay, 0ms);
}
body.arc-stagger-ready .arc-stagger-reveal.is-arc-stagger-visible {
  opacity: 1;
  translate: 0 0;
  scale: 1;
  filter: none;
}
@media (prefers-reduced-motion: reduce) {
  body.arc-stagger-ready .arc-stagger-reveal,
  body.arc-stagger-ready .arc-stagger-reveal.is-arc-stagger-visible {
    opacity: 1 !important;
    translate: none !important;
    scale: 1 !important;
    filter: none !important;
    transition: none !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.50 — PRECISION CORRECTION
   User QA 2026-08-23: header sizing/color, client drag/shadows,
   review carousel ownership, smaller Works canvas, per-element motion.
   This block is authoritative over V1.0.49 for these components.
========================================================= */

/* ---------------------------------------------------------
   Header: hover = weight only. Parent link keeps the same physical size/color.
   Desktop chevron is a clean brand-colored glyph with no circle/chrome.
--------------------------------------------------------- */
@media (min-width: 992px) {
  .desktop-nav > a:hover,
  .desktop-nav > a:focus-visible,
  .nav-dropdown:hover .nav-dropdown__parent,
  .nav-dropdown:focus-within .nav-dropdown__parent,
  .nav-dropdown.is-open .nav-dropdown__parent,
  .nav-dropdown__parent:hover,
  .nav-dropdown__parent:focus-visible {
    color: #420c6f !important;
    font-weight: 700;
    transform: none !important;
    text-decoration: none;
  }

  .contact-header .desktop-nav > a:hover,
  .contact-header .desktop-nav > a:focus-visible,
  .contact-header .nav-dropdown:hover .nav-dropdown__parent,
  .contact-header .nav-dropdown:focus-within .nav-dropdown__parent,
  .contact-header .nav-dropdown.is-open .nav-dropdown__parent,
  .contact-header .nav-dropdown__parent:hover,
  .contact-header .nav-dropdown__parent:focus-visible {
    color: #fff !important;
  }

  .nav-dropdown__toggle,
  .nav-dropdown:hover .nav-dropdown__toggle,
  .nav-dropdown:focus-within .nav-dropdown__toggle,
  .nav-dropdown.is-open .nav-dropdown__toggle {
    position: relative;
    display: block;
    flex: 0 0 18px;
    width: 18px;
    height: 24px;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0;
    background: transparent !important;
    box-shadow: none !important;
    color: #9209f2;
    transform: none !important;
  }

  .nav-dropdown__toggle:hover,
  .nav-dropdown__toggle:focus-visible,
  .nav-dropdown.is-open .nav-dropdown__toggle {
    color: #dd37ff;
  }

  .contact-header .nav-dropdown__toggle,
  .contact-header .nav-dropdown:hover .nav-dropdown__toggle,
  .contact-header .nav-dropdown:focus-within .nav-dropdown__toggle,
  .contact-header .nav-dropdown.is-open .nav-dropdown__toggle {
    color: #dd37ff;
  }

  .nav-dropdown__chevron {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: translate(-50%, -68%) rotate(45deg) !important;
    transform-origin: 50% 50%;
    transition: color .2s ease, transform .24s cubic-bezier(.2,.75,.2,1);
  }

  .nav-dropdown.is-open .nav-dropdown__chevron,
  .nav-dropdown__toggle[aria-expanded="true"] .nav-dropdown__chevron {
    transform: translate(-50%, -32%) rotate(225deg) !important;
  }
}

/* Mobile: keep the dedicated square hit-area, but center the glyph exactly. */
.drawer-nav-item .drawer-submenu-toggle {
  position: relative;
  display: block !important;
  padding: 0 !important;
  background: rgba(146,9,242,.08);
  color: #22dff3;
}
.drawer-nav-item .drawer-submenu-toggle:hover,
.drawer-nav-item .drawer-submenu-toggle:focus-visible,
.drawer-nav-item.is-open .drawer-submenu-toggle {
  padding: 0 !important;
  background: rgba(146,9,242,.18);
  color: #dd37ff;
}
.drawer-nav-item .drawer-submenu-toggle .drawer-submenu-chevron {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translate(-50%, -68%) rotate(45deg) !important;
  transform-origin: 50% 50%;
}
.drawer-nav-item .drawer-submenu-toggle[aria-expanded="true"] .drawer-submenu-chevron {
  color: #dd37ff;
  transform: translate(-50%, -32%) rotate(225deg) !important;
}

/* ---------------------------------------------------------
   Trusted clients: no navigation buttons and no per-frame geometry observer.
   Swiper's own visible-slide state drives the decorative gap badges.
--------------------------------------------------------- */
.home-page .clients-nav { display: none !important; }
.home-page .clients-slider,
.home-page .clients-slider .swiper-wrapper,
.home-page .clients-slider .swiper-slide {
  cursor: grab;
}
.home-page .clients-slider:active,
.home-page .clients-slider:active .swiper-wrapper,
.home-page .clients-slider:active .swiper-slide {
  cursor: grabbing;
}
.home-page .clients-slider .client-card,
.home-page .clients-slider .client-card img,
.home-page .clients-slider .client-separator,
.home-page .clients-slider .client-separator img {
  pointer-events: none !important;
  -webkit-user-drag: none !important;
  -webkit-user-select: none !important;
  user-select: none !important;
}
.home-page .clients-slider .client-card:hover,
.home-page .clients-slider .client-card:focus-within {
  transform: none;
  box-shadow: none;
}

body.home-page .clients-slider .client-slide .client-separator {
  display: block !important;
  visibility: hidden !important;
  opacity: 0 !important;
  transition: opacity .16s linear;
}
body.home-page .clients-slider .client-slide.swiper-slide-visible:has(+ .client-slide.swiper-slide-visible) .client-separator {
  visibility: visible !important;
  opacity: 1 !important;
}

/* ---------------------------------------------------------
   Reviews own the controls/autoplay requested by the user. The viewport grows,
   while the individual Figma cards keep their original scale.
--------------------------------------------------------- */
.home-page .reviews-section {
  width: min(calc(100% - 64px), 1280px) !important;
  max-width: 1280px;
  overflow: visible;
}
.home-page .reviews-carousel-shell {
  position: relative;
  width: min(100%, 1240px);
  margin: 34px auto 0;
  padding: 24px 60px;
}
.home-page .reviews-carousel-shell .reviews-slider {
  width: 100% !important;
  max-width: 1120px;
  margin: 0 auto -24px !important;
  padding-top: 24px;
  padding-bottom: 24px;
  touch-action: pan-y;
}
.home-page .reviews-nav {
  position: absolute;
  z-index: 8;
  top: 50%;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin: 0;
  border: 1px solid rgba(221,55,255,.72);
  border-radius: 50%;
  padding: 0;
  background: rgba(25,14,44,.92);
  color: #dd37ff;
  box-shadow: 0 10px 26px rgba(0,0,0,.20);
  cursor: pointer;
  transform: translateY(-50%);
  transition: background .22s ease, border-color .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease;
}
.home-page .reviews-nav--prev { left: 4px; }
.home-page .reviews-nav--next { right: 4px; }
.home-page .reviews-nav span {
  display: block;
  width: 10px;
  height: 10px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
}
.home-page .reviews-nav--prev span { transform: translateX(2px) rotate(-135deg); }
.home-page .reviews-nav--next span { transform: translateX(-2px) rotate(45deg); }
.home-page .reviews-nav:hover,
.home-page .reviews-nav:focus-visible {
  border-color: #dd37ff;
  background: linear-gradient(135deg, #9209f2, #b20cff);
  color: #fff;
  box-shadow: 0 12px 30px rgba(146,9,242,.34);
  transform: translateY(-50%) scale(1.06);
  outline: 0;
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  .home-page .reviews-section { width: min(calc(100% - 48px), 1160px) !important; }
  .home-page .reviews-carousel-shell { width: 100%; padding-inline: 54px; }
  .home-page .reviews-carousel-shell .reviews-slider { max-width: none; }
}
@media (max-width: 991.98px) {
  .home-page .reviews-carousel-shell {
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .home-page .reviews-nav { display: none; }
}

/* ---------------------------------------------------------
   Works: same four-column approved mosaic, scaled further as one unit.
--------------------------------------------------------- */
@media (min-width: 992px) {
  body.home-page .works-stage {
    width: var(--arc-works-stage-w, 1047.48px);
    height: var(--arc-works-stage-h, 576.24px);
    margin-top: var(--arc-works-stage-mt, 100.8px);
  }
  body.home-page .works-stage > .works-section {
    transform: translateX(-50%) scale(var(--arc-works-scale, .84)) !important;
  }
}

/* ---------------------------------------------------------
   Per-element WOW-style entrance. Legacy whole-section fade is neutralized.
   Individual cards/text/media enter with alternating physical motion.
--------------------------------------------------------- */
body.arc-wow-elements-ready.arc-motion-ready .arc-ui-reveal,
body.arc-wow-elements-ready.arc-motion-ready .arc-ui-reveal.is-arc-ui-visible {
  opacity: 1 !important;
  translate: none !important;
  filter: none !important;
  transition: none !important;
}

body.arc-wow-ready .arc-wow-item {
  --arc-wow-x: 0px;
  --arc-wow-y: 30px;
  --arc-wow-scale: .982;
  --arc-wow-rotate: 0deg;
  opacity: 0;
  translate: var(--arc-wow-x) var(--arc-wow-y);
  scale: var(--arc-wow-scale);
  rotate: var(--arc-wow-rotate);
  filter: blur(5px);
  transition:
    opacity .72s var(--arc-ease-premium) var(--arc-wow-delay, 0ms),
    translate .86s var(--arc-ease-premium) var(--arc-wow-delay, 0ms),
    scale .86s var(--arc-ease-premium) var(--arc-wow-delay, 0ms),
    rotate .86s var(--arc-ease-premium) var(--arc-wow-delay, 0ms),
    filter .66s ease var(--arc-wow-delay, 0ms);
}
body.arc-wow-ready .arc-wow-item.arc-wow--left { --arc-wow-x: -44px; --arc-wow-y: 12px; --arc-wow-scale: .988; }
body.arc-wow-ready .arc-wow-item.arc-wow--right { --arc-wow-x: 44px; --arc-wow-y: 12px; --arc-wow-scale: .988; }
body.arc-wow-ready .arc-wow-item.arc-wow--zoom { --arc-wow-y: 20px; --arc-wow-scale: .94; }
body.arc-wow-ready .arc-wow-item.arc-wow--soft-tilt { --arc-wow-y: 34px; --arc-wow-scale: .975; --arc-wow-rotate: 1.1deg; }
body.arc-wow-ready .arc-wow-item.is-arc-wow-visible {
  opacity: 1;
  translate: 0 0;
  scale: 1;
  rotate: 0deg;
  filter: none;
}

@media (max-width: 767.98px) {
  body.arc-wow-ready .arc-wow-item {
    --arc-wow-x: 0px !important;
    --arc-wow-y: 22px !important;
    --arc-wow-scale: .985 !important;
    --arc-wow-rotate: 0deg !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.arc-wow-ready .arc-wow-item,
  body.arc-wow-ready .arc-wow-item.is-arc-wow-visible {
    opacity: 1 !important;
    translate: none !important;
    scale: 1 !important;
    rotate: 0deg !important;
    filter: none !important;
    transition: none !important;
  }
}

/* V1.0.50: custom legacy page-level reveal classes are also neutralized so
   Games/About/Gallery do not fade as a single canvas before child motion. */
body.arc-wow-elements-ready .reveal-surface,
body.arc-wow-elements-ready .games-page-reveal,
body.arc-wow-elements-ready .about-section-reveal {
  opacity: 1 !important;
  translate: none !important;
  transform: none !important;
  filter: none !important;
  transition: none !important;
}

/* =========================================================
   ARCADIUM V1.0.51 — VISUAL FLOW CORRECTION
   User QA 2026-08-23: exact four-client desktop row, visible Figma client
   shadows, full-width Reviews section with exactly three desktop slides,
   smaller Works canvas, and deterministic direction-aware scroll choreography.
   This block is authoritative over V1.0.49/V1.0.50 for these components.
========================================================= */

/* Trusted Clients — the Figma row is 1176px and contains exactly four cards.
   V1.0.49's widened 1248px row / clamp widths are superseded. */
@media (min-width: 992px) {
  body.home-page .clients-section {
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
  }
  body.home-page .clients-row {
    width: min(calc(100% - 80px), 1176px) !important;
    max-width: 1176px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }
  body.home-page .clients-slider {
    width: 100% !important;
    overflow: hidden !important;
  }
  body.home-page .clients-slider .client-slide {
    --arc-client-gap: 16.977px;
    width: calc((100% - 50.931px) / 4) !important;
    flex: 0 0 calc((100% - 50.931px) / 4) !important;
    min-width: 0 !important;
  }
  body.home-page .clients-slider .client-card {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 281.267 / 101.867 !important;
  }
}

/* Reviews — the section itself uses the full physical desktop width, while the
   Figma carousel rail remains a controlled 938px maximum. Swiper owns exactly
   three desktop slides; card component dimensions are not blown up. */
@media (min-width: 992px) {
  body.home-page .reviews-section {
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    overflow: visible !important;
  }
  body.home-page .reviews-carousel-shell {
    position: relative;
    width: 100% !important;
    max-width: none !important;
    margin: 34px 0 0 !important;
    padding: 24px 0 !important;
  }
  body.home-page .reviews-carousel-shell .reviews-slider {
    width: min(938px, calc(100vw - 104px)) !important;
    max-width: none !important;
    margin: 0 auto -24px !important;
    padding-top: 24px;
    padding-bottom: 24px;
    overflow: hidden;
  }
  body.home-page .reviews-slider .review-slide {
    min-width: 0;
  }
  body.home-page .reviews-nav--prev {
    left: max(8px, calc(50% - 523px));
  }
  body.home-page .reviews-nav--next {
    right: max(8px, calc(50% - 523px));
  }
}

/* Works — same 1247×686 approved mosaic, just displayed a little smaller again.
   The scaler still owns the whole canvas; no card is independently resized. */
@media (min-width: 992px) {
  body.home-page .works-stage {
    width: var(--arc-works-stage-w, 985.13px);
    height: var(--arc-works-stage-h, 541.94px);
    margin-top: var(--arc-works-stage-mt, 94.8px);
  }
  body.home-page .works-stage > .works-section {
    transform: translateX(-50%) scale(var(--arc-works-scale, .79)) !important;
  }
}

/* Choreographed flow supersedes both the V1.0.49 stagger and V1.0.50 random
   WOW variants. Whole sections stay fully visible; only meaningful child units
   participate. */
body.arc-flow-elements-ready.arc-motion-ready .arc-ui-reveal,
body.arc-flow-elements-ready.arc-motion-ready .arc-ui-reveal.is-arc-ui-visible,
body.arc-flow-elements-ready .reveal-surface,
body.arc-flow-elements-ready .games-page-reveal,
body.arc-flow-elements-ready .about-section-reveal,
body.arc-flow-elements-ready .articles-page-reveal {
  opacity: 1 !important;
  translate: none !important;
  transform: none !important;
  scale: 1 !important;
  rotate: 0deg !important;
  filter: none !important;
  transition: none !important;
}

body.arc-flow-ready .arc-flow-item {
  opacity: 0;
  translate: var(--arc-flow-x, 0px) var(--arc-flow-y, 28px);
  scale: var(--arc-flow-scale, .985);
  rotate: var(--arc-flow-rotate, 0deg);
  filter: blur(var(--arc-flow-blur, 2px));
  clip-path: var(--arc-flow-clip, inset(0 0 0 0));
  transition-property: opacity, translate, scale, rotate, filter, clip-path;
  transition-duration: .68s, .94s, .94s, .94s, .72s, .92s;
  transition-timing-function: ease, cubic-bezier(.16,1,.3,1), cubic-bezier(.16,1,.3,1), cubic-bezier(.16,1,.3,1), ease, cubic-bezier(.16,1,.3,1);
  transition-delay: var(--arc-flow-delay, 0ms);
}
body.arc-flow-ready .arc-flow-item.arc-flow--title { transform-origin: 50% 100%; }
body.arc-flow-ready .arc-flow-item.arc-flow--card { transform-origin: 50% 62%; }
body.arc-flow-ready .arc-flow-item.arc-flow--media { transform-origin: 50% 50%; }
body.arc-flow-ready .arc-flow-item.arc-flow--action { transform-origin: 50% 50%; }
body.arc-flow-ready .arc-flow-item.is-arc-flow-visible {
  opacity: 1;
  translate: 0 0;
  scale: 1;
  rotate: 0deg;
  filter: none;
  clip-path: inset(0 0 0 0);
}

/* Tablet/mobile keep the same ordered system with shorter travel so it remains
   comfortable instead of theatrical. Desktop retains the full choreography. */
@media (max-width: 991.98px) {
  body.arc-flow-ready .arc-flow-item {
    --arc-flow-x: 0px !important;
    --arc-flow-y: 22px !important;
    --arc-flow-scale: .985 !important;
    --arc-flow-rotate: 0deg !important;
    --arc-flow-blur: 1.5px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.arc-flow-ready .arc-flow-item,
  body.arc-flow-ready .arc-flow-item.is-arc-flow-visible {
    opacity: 1 !important;
    translate: none !important;
    scale: 1 !important;
    rotate: 0deg !important;
    filter: none !important;
    clip-path: none !important;
    transition: none !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.52 — VISUAL GEOMETRY + SITE-WIDE FLOW GUARD
   User browser QA 2026-08-23.
   Authoritative over V1.0.49–V1.0.51 for Clients edge fades, Reviews rail,
   Works display scale fallback, and desktop footer motion/layout safety.
========================================================= */

/* Trusted Clients: one 1176px / four-card row on every desktop size.
   The only outer fade is the pair of exact edge-shadow.svg images positioned
   in home-shared-v135.css. */
@media (min-width: 992px) {
  body.home-page .clients-row {
    width: min(calc(100% - 80px), 1176px) !important;
    max-width: 1176px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }
  body.home-page .clients-slider .client-slide {
    --arc-client-gap: 16.977px;
    width: calc((100% - 50.931px) / 4) !important;
    flex: 0 0 calc((100% - 50.931px) / 4) !important;
    min-width: 0 !important;
  }
}

/* Reviews: keep exactly three Swiper slots, but give their rail the same
   generous desktop span as the Clients row above it. Card component sizes stay
   Figma-sized; the extra width becomes intentional breathing space. */
@media (min-width: 992px) {
  body.home-page .reviews-section {
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    overflow: visible !important;
  }
  body.home-page .reviews-carousel-shell {
    box-sizing: border-box;
    position: relative;
    width: min(100%, 1256px) !important;
    max-width: 1256px !important;
    margin: 34px auto 0 !important;
    padding: 24px 40px !important;
  }
  body.home-page .reviews-carousel-shell .reviews-slider {
    width: 100% !important;
    max-width: 1176px !important;
    margin: 0 auto -24px !important;
    padding-top: 24px !important;
    padding-bottom: 24px !important;
    overflow: hidden !important;
  }
  body.home-page .reviews-nav--prev { left: 4px !important; }
  body.home-page .reviews-nav--next { right: 4px !important; }
}

/* Works remains the exact approved 1247x686 four-column canvas. JS supplies the
   live scale; this fallback matches the V1.0.53 Figma-native maximum display scale (1.00). */
@media (min-width: 992px) {
  body.home-page .works-stage {
    width: var(--arc-works-stage-w, 1247px) !important;
    height: var(--arc-works-stage-h, 686px) !important;
    margin-top: var(--arc-works-stage-mt, 120px) !important;
  }
  body.home-page .works-stage > .works-section {
    transform: translateX(-50%) scale(var(--arc-works-scale, 1)) !important;
  }
}

/* Footer: V1.0.51 animated the structural .footer-contact grid cell. CSS
   translate/scale turns that cell into a containing block, which relocated the
   absolutely-positioned Figma socials down onto the divider. Structural footer
   columns must never own motion transforms; their children may animate instead. */
@media (min-width: 992px) {
  .site-footer .footer-brand.arc-flow-item,
  .site-footer .footer-links.arc-flow-item,
  .site-footer .footer-policies.arc-flow-item,
  .site-footer .footer-contact.arc-flow-item {
    opacity: 1 !important;
    translate: none !important;
    scale: 1 !important;
    rotate: 0deg !important;
    filter: none !important;
    clip-path: none !important;
    transition: none !important;
  }
  .site-footer .copyright {
    opacity: 1 !important;
    translate: none !important;
    scale: 1 !important;
    rotate: 0deg !important;
    filter: none !important;
    clip-path: none !important;
  }
}

/* Restore the exact 1440/Figma footer baseline after every later desktop rule:
   socials finish 52.47px above the divider; copyright sits below the divider. */
@media (min-width: 1360px) {
  .site-footer {
    position: relative !important;
    height: 462px !important;
    min-height: 462px !important;
    overflow: hidden !important;
    border-top: 1px solid #b12ccc !important;
    background: linear-gradient(180deg, #110e27 .102%, rgba(75,24,96,.43) 49.949%, rgba(133,33,153,.37) 100%) !important;
  }
  .site-footer .footer-inner {
    position: absolute !important;
    top: -1px !important;
    left: 50% !important;
    width: 1248px !important;
    height: 378px !important;
    margin: 0 !important;
    padding: 52px 0 0 !important;
    border-bottom: 1px solid rgba(239,230,238,.68) !important;
    transform: translateX(-50%) !important;
  }
  .site-footer .footer-contact { position: static !important; }
  .site-footer .footer-contact .socials {
    position: absolute !important;
    top: 285.5303px !important;
    bottom: auto !important;
    left: 0 !important;
    right: auto !important;
    margin: 0 !important;
  }
  body.arcadium-lang-en .site-footer .footer-contact .socials {
    right: 0 !important;
    left: auto !important;
  }
  .site-footer .copyright {
    position: absolute !important;
    top: 384.5303px !important;
    left: 50% !important;
    width: 1248px !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: var(--body-font) !important;
    font-size: 16px !important;
    line-height: 52px !important;
    text-align: center !important;
    transform: translateX(-50%) !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.54 — FOOTER HOVER SAFETY + WORKS VERTICAL POLISH
   User browser QA 2026-08-23.
   Width remains the V1.0.53 approved desktop width. Only vertical Works
   geometry is compacted to 90%; images keep object-fit: cover (crop, no stretch).
========================================================= */

/* Footer social hover must never paint outside its safe icon box. The previous
   -5px lift could make the upper ring feel clipped. Keep the brand hover feel
   with rotation/scale + glow, but do not translate the icon upward. */
.site-footer .footer-inner,
.site-footer .footer-contact,
.site-footer .footer-contact .socials,
.site-footer .footer-contact .socials a {
  overflow: visible !important;
}
.site-footer .footer-contact .socials a:hover,
.site-footer .footer-contact .socials a:focus-visible {
  transform: rotate(-4deg) scale(1.06) !important;
  transform-origin: 50% 50% !important;
  filter: drop-shadow(0 6px 10px rgba(221,55,255,.4)) !important;
}

/* Home Works: keep the current approved horizontal width, but shorten the
   vertical canvas to 90% of the Figma-native height. Each media box is shorter
   while the image itself remains undistorted via object-fit: cover. */
@media (min-width: 992px) {
  body.home-page .works-section,
  body.home-page .works-stage > .works-section {
    height: 617.4px !important;
  }
  body.home-page .works-column,
  body.home-page .works-stage .works-column {
    gap: 14.4px !important;
  }

  body.home-page .works-column--one .work-tile,
  body.home-page .works-stage .works-column--one .work-tile { height: 361.8px !important; aspect-ratio: auto !important; }
  body.home-page .works-column--one .work-photo,
  body.home-page .works-stage .works-column--one .work-photo { height: 241.2px !important; aspect-ratio: auto !important; }

  body.home-page .works-column--two .work-photo,
  body.home-page .works-stage .works-column--two .work-photo { height: 396px !important; aspect-ratio: auto !important; }
  body.home-page .works-column--two .work-tile,
  body.home-page .works-stage .works-column--two .work-tile { height: 205.2px !important; aspect-ratio: auto !important; }

  body.home-page .works-column--three .work-tile,
  body.home-page .works-stage .works-column--three .work-tile { height: 228.6px !important; aspect-ratio: auto !important; }
  body.home-page .works-column--three .work-photo,
  body.home-page .works-stage .works-column--three .work-photo { height: 371.7px !important; aspect-ratio: auto !important; }

  body.home-page .works-column--four .work-photo,
  body.home-page .works-stage .works-column--four .work-photo { height: 343.8px !important; aspect-ratio: auto !important; }
  body.home-page .works-column--four .work-tile,
  body.home-page .works-stage .works-column--four .work-tile { height: 379.8px !important; aspect-ratio: auto !important; }

  body.home-page .work-photo img,
  body.home-page .works-stage .work-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  body.home-page .work-tile,
  body.home-page .works-stage .work-tile {
    padding-top: 23px !important;
    padding-bottom: 14px !important;
  }
  body.home-page .work-tile--dark,
  body.home-page .works-stage .work-tile--dark { padding-top: 17px !important; }

  body.home-page .works-column--one .work-tile .work-tile__link,
  body.home-page .works-stage .works-column--one .work-tile .work-tile__link {
    top: 314.1px !important;
  }
  body.home-page .works-column--four .work-tile .work-tile__link,
  body.home-page .works-stage .works-column--four .work-tile .work-tile__link {
    top: 209.7px !important;
  }
}

@media (min-width: 992px) and (max-width: 1359.98px) {
  body.home-page .works-stage {
    height: var(--arc-works-stage-h, 617.4px) !important;
  }
  body.home-page .works-stage > .works-section {
    height: 617.4px !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.55 — VIEW-ALL-GAMES CTA INTERACTION REPAIR
   User browser QA 2026-08-23.
   Figma reference: Home Games CTA 672:1080 = 214×48 normal state;
   Hero outline CTA 685:2293 = the interaction language to mirror.
========================================================= */

/* The user requested a modest desktop enlargement over the 214×48 Figma
   normal-state button. Keep mobile/tablet sizing untouched and propagate the
   shared .section-button component to inner pages that reuse it. */
@media (min-width: 992px) {
  .section-button {
    width: 232px;
    height: 52px;
    border-radius: 38px;
    font-size: 21px;
  }
}

/* Root-cause fix for the square/purple artifact around the CTA:
   the site-wide reveal layer was retaining a rectangular clip-path on action
   elements. Action CTAs do not need a reveal mask, so never clip their native
   rounded paint or hover shadow. */
body.arc-flow-ready .arc-flow-item.arc-flow--action {
  clip-path: none !important;
  --arc-flow-clip: none !important;
}

/* Match the Hero outline CTA's live hover state. This deliberately keeps the
   same purple fill, pink border, lift, brightness and soft glow. */
.section-button:hover,
.section-button:focus-visible {
  border-color: var(--pink);
  background: var(--purple);
  color: #fff;
  box-shadow: 0 10px 28px rgba(146, 9, 242, .35);
  transform: translateY(-3px);
  filter: brightness(1.07);
}


/* =========================================================
   ARCADIUM V1.0.56 — GLOBAL INNER BREADCRUMB COMPACT SPACING
   User browser QA 2026-08-23.
   Keep the existing hero height/background/typography; only tighten the
   vertical breathing room immediately above and below the shared breadcrumb.
========================================================= */

/* Desktop: the shared header is 131px tall. Start the breadcrumb only a small
   distance below it, then keep the title close to the breadcrumb. */
@media (min-width: 992px) {
  body:not(.home-page) .contact-hero__content {
    padding-top: 170px !important;
  }
  body:not(.home-page) .contact-hero__content .breadcrumb-nav {
    margin-block: 0 !important;
  }
  body:not(.home-page) .contact-hero__content h1 {
    margin-top: 30px !important;
  }
}

/* Tablet: the inner header becomes a 96px normal-flow row. The old 90px gap
   was visually too loose, so reduce it to a compact 22px. */
@media (min-width: 576px) and (max-width: 991.98px) {
  body:not(.home-page) .contact-hero__content {
    padding-top: 22px !important;
  }
  body:not(.home-page) .contact-hero__content .breadcrumb-nav {
    margin-block: 0 !important;
  }
  body:not(.home-page) .contact-hero__content h1 {
    margin-top: 10px !important;
  }
}

/* Mobile: preserve touch/readability while keeping the breadcrumb band tight. */
@media (max-width: 575.98px) {
  body:not(.home-page) .contact-hero__content {
    padding-top: 16px !important;
  }
  body:not(.home-page) .contact-hero__content .breadcrumb-nav {
    margin-block: 0 !important;
  }
  body:not(.home-page) .contact-hero__content h1 {
    margin-top: 8px !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.57 — CONTENT-DRIVEN INNER HERO HEIGHT
   User browser QA 2026-08-23.
   V1.0.56 compacted the breadcrumb band but intentionally kept the legacy
   595px hero minimum. Browser QA showed that this left a large empty tail
   below the hero description. The latest user direction explicitly
   supersedes that fixed Figma height: keep the visual composition, but let
   every shared inner hero end shortly after its actual content.
========================================================= */

/* Desktop: the header remains overlaid inside the hero, so the V1.0.56
   151px content start is preserved. Remove the 595px floor and add only a
   small, deliberate bottom breathing space. Long AR/EN titles/descriptions
   can still grow the hero naturally because no fixed height is introduced. */
@media (min-width: 992px) {
  body:not(.home-page) .contact-hero {
    min-height: 0 !important;
    height: auto !important;
  }
  body:not(.home-page) .contact-hero__content {
    min-height: 0 !important;
    padding-bottom: 28px !important;
  }
}

/* Tablet: the header is a normal-flow 96px row. Make the media fill the
   compact content area rather than retaining the old independent 430px
   paint box, then keep a modest 24px tail after the description. */
@media (min-width: 576px) and (max-width: 991.98px) {
  body:not(.home-page) .contact-hero__media {
    top: 96px !important;
    bottom: 0 !important;
    height: auto !important;
  }
  body:not(.home-page) .contact-hero__content {
    min-height: 0 !important;
    padding-bottom: 24px !important;
  }
}

/* Mobile: same content-driven contract with an even tighter safe tail. */
@media (max-width: 575.98px) {
  body:not(.home-page) .contact-hero__media {
    top: 82px !important;
    bottom: 0 !important;
    height: auto !important;
  }
  body:not(.home-page) .contact-hero__content {
    min-height: 0 !important;
    padding-bottom: 20px !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.58 — FULL-CARD LINKS + SOCIAL HOVER SAFE BOX
   User browser QA 2026-08-23.
   Games/Event cards now use one semantic full-card anchor while keeping the
   visual arrow decorative. Social hover no longer translates/rotates the
   40px icon box, preventing top/right clipping in exact-width social rows.
========================================================= */

/* The renderer places a single semantic anchor over the complete card.
   Keep all current hover/focus-within visuals on the article itself. */
.game-card,
.event-card {
  position: relative;
  isolation: isolate;
  cursor: pointer;
}

.game-card__card-link,
.event-card__card-link {
  position: absolute;
  z-index: 20;
  inset: 0;
  display: block;
  border-radius: inherit;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

.game-card__card-link:focus-visible,
.event-card__card-link:focus-visible {
  outline: 2px solid var(--cyan);
  outline-offset: 4px;
}

/* The arrow remains a visual affordance, not a second interactive target. */
.game-card__single-link,
.event-card__single-link {
  pointer-events: none;
  user-select: none;
}

/* Footer + Contact social rows must preserve the whole 40px icon on hover.
   The previous translate/rotate moved edge pixels outside exact-width rows.
   Keep feedback via glow/brightness only, with geometry fixed in place. */
.site-footer .footer-inner,
.site-footer .footer-contact,
.site-footer .footer-contact .socials,
.site-footer .footer-contact .socials a,
.contact-form-page .direct-contact,
.contact-form-page .direct-contact__details,
.contact-form-page .contact-socials,
.contact-form-page .contact-socials a {
  overflow: visible !important;
}

.site-footer .footer-contact .socials a:hover,
.site-footer .footer-contact .socials a:focus-visible,
.contact-form-page .contact-socials a:hover,
.contact-form-page .contact-socials a:focus-visible {
  transform: none !important;
  transform-origin: 50% 50% !important;
  filter: drop-shadow(0 6px 10px rgba(221,55,255,.4)) brightness(1.08) !important;
}



/* =========================================================
   ARCADIUM V1.0.59 — SINGLE GAME GALLERY GESTURE STABILITY
   Interaction only: preserve the approved Figma geometry.
========================================================= */
.single-game-page .game-photo-gallery-slider,
.single-game-page .game-photo-gallery-slider .swiper-wrapper,
.single-game-page .game-photo-gallery-slider .swiper-slide {
    -webkit-user-select: none;
    user-select: none;
}

.single-game-page .game-photo-gallery-slider {
    cursor: grab;
    touch-action: pan-y;
}

.single-game-page .game-photo-gallery-slider:active {
    cursor: grabbing;
}

.single-game-page .game-photo-gallery-slider a,
.single-game-page .game-photo-gallery-slider img {
    -webkit-user-drag: none;
    user-select: none;
}

/* =========================================================
   ARCADIUM V1.0.60 — SINGLE GAME GALLERY SINGLE SWIPER OWNER
   Swiper's own active class is the only center-state authority.
========================================================= */
.single-game-page .game-photo-gallery-slider .swiper-slide {
    z-index: 1;
}

.single-game-page .game-photo-gallery-slider .swiper-slide-active {
    z-index: 3;
}

/* =========================================================
   ARCADIUM V1.0.61 — WORKS MEDIA INTERACTION
   User browser QA 2026-08-23.
   Scope: Works archive only. Keep Single Game gallery ownership untouched.
========================================================= */

/* Photo gallery: keep the approved warped side composition, but give the
   Swiper-active center photo a modest extra visual emphasis without changing
   the auto-width slide geometry that Swiper uses for its loop calculations. */
.gallery-page .photo-gallery-slide.swiper-slide-active {
  z-index: 5;
}

.gallery-page .photo-gallery-slide.swiper-slide-active > a {
  --photo-scale: 1.06;
  z-index: 4;
  transition-duration: var(--arc-photo-motion-duration);
  transition-timing-function: var(--arc-photo-motion-ease);
}

.gallery-page .photo-gallery-slide.swiper-slide-active > a:hover,
.gallery-page .photo-gallery-slide.swiper-slide-active > a:focus-visible {
  --photo-lift: -5px;
  --photo-scale: 1.09;
}

@media (min-width: 992px) {
  .gallery-page .photo-gallery-slide.swiper-slide-active > a {
    --photo-scale: 1.10;
  }

  .gallery-page .photo-gallery-slide.swiper-slide-active > a:hover,
  .gallery-page .photo-gallery-slide.swiper-slide-active > a:focus-visible {
    --photo-scale: 1.13;
  }
}

/* Video gallery: the active-card size change already uses fixed slide boxes,
   so it can animate without making Swiper recalculate slide widths. Slow the
   size/crop handoff slightly so center emphasis flows with the slide motion. */
.gallery-page .video-card {
  transition:
    width .64s cubic-bezier(.22, .8, .25, 1),
    height .64s cubic-bezier(.22, .8, .25, 1),
    opacity .46s ease,
    box-shadow .46s ease,
    transform .38s cubic-bezier(.22, .8, .25, 1);
}

.gallery-page .video-card__media > img {
  transition:
    top .64s cubic-bezier(.22, .8, .25, 1),
    height .64s cubic-bezier(.22, .8, .25, 1),
    transform .72s ease;
}

/* The whole card remains the visual target. A transparent semantic button
   owns activation; the player itself is injected into the same card frame. */
.gallery-page .video-card__launch {
  position: absolute;
  z-index: 4;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  border-radius: inherit;
  background: transparent;
  cursor: pointer;
}

.gallery-page .video-card__launch:focus-visible {
  outline: 2px solid var(--cyan);
  outline-offset: -5px;
}

.gallery-page .video-card.is-playing {
  transform: none !important;
  opacity: 1;
  box-shadow: 0 25px 55px rgba(0, 0, 0, .3), 0 0 0 1px rgba(255, 255, 255, .08);
}

.gallery-page .video-card.is-playing .video-card__media,
.gallery-page .video-card.is-playing .video-card__play,
.gallery-page .video-card.is-playing .video-card__launch {
  opacity: 0;
  pointer-events: none;
}

.gallery-page .video-card__player {
  position: absolute;
  z-index: 8;
  inset: 0;
  display: block;
  overflow: hidden;
  border-radius: inherit;
  background: #090617;
  animation: arc-works-inline-video-in .34s cubic-bezier(.22, .8, .25, 1) both;
}

.gallery-page .video-card__embed,
.gallery-page .video-card__native-video {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: inherit;
  background: #090617;
}

.gallery-page .video-card__native-video {
  object-fit: contain;
}

.gallery-page .video-card__player-close {
  position: absolute;
  z-index: 10;
  top: 10px;
  right: 10px;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0 0 2px;
  border: 1px solid rgba(255, 255, 255, .82);
  border-radius: 50%;
  background: rgba(19, 15, 40, .78);
  color: #fff;
  font: 500 24px/1 Arial, sans-serif;
  cursor: pointer;
  backdrop-filter: blur(8px);
  transition: background .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.gallery-page .video-card__player-close:hover,
.gallery-page .video-card__player-close:focus-visible {
  border-color: var(--pink);
  background: var(--purple);
  box-shadow: 0 0 18px rgba(221, 55, 255, .35);
  transform: scale(1.06);
  outline: 0;
}

@keyframes arc-works-inline-video-in {
  from {
    opacity: 0;
    transform: scale(.965);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .gallery-page .photo-gallery-slide.swiper-slide-active > a,
  .gallery-page .video-card,
  .gallery-page .video-card__media > img,
  .gallery-page .video-card__player {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.62 — WORKS INLINE VIDEO CONTAINMENT +
   MIXED-VERSION SAFETY

   V1.0.61 was packaged with a different folder layout from the
   established patch line, so an installation could briefly mix the
   old Fancybox renderer with the new inline-video JS/CSS. V1.0.62
   restores one interaction owner and hard-bounds the inline player to
   the active video card.
========================================================= */
.gallery-page .video-gallery-slider:not(.game-photo-gallery-slider) .video-card[data-inline-video="true"] {
  position: relative;
  isolation: isolate;
  contain: paint;
  cursor: pointer;
}

.gallery-page .video-gallery-slider:not(.game-photo-gallery-slider) .video-card[data-inline-video="true"]:focus-visible {
  outline: 0;
  box-shadow:
    0 25px 55px rgba(0, 0, 0, .3),
    0 0 0 2px var(--cyan),
    0 0 24px rgba(146, 9, 242, .22);
}

/* V1.0.62 makes the card itself the semantic/click owner. If cached
   V1.0.61 markup still contains the old transparent launch button,
   remove it from layout/interaction so it cannot create a stray focus
   rectangle or second click layer. */
.gallery-page .video-gallery-slider:not(.game-photo-gallery-slider) .video-card__launch {
  display: none !important;
}

.gallery-page .video-gallery-slider:not(.game-photo-gallery-slider) .video-card__player {
  position: absolute !important;
  z-index: 8;
  inset: 0 !important;
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  border: 0 !important;
  outline: 0 !important;
  border-radius: inherit;
  background: #090617;
  box-sizing: border-box;
}

.gallery-page .video-gallery-slider:not(.game-photo-gallery-slider) .video-card__embed,
.gallery-page .video-gallery-slider:not(.game-photo-gallery-slider) .video-card__native-video {
  position: absolute !important;
  inset: 0 !important;
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: inherit;
  box-sizing: border-box;
  background: #090617;
}

.gallery-page .video-gallery-slider:not(.game-photo-gallery-slider) .video-card__embed {
  overflow: hidden;
}

.gallery-page .video-gallery-slider:not(.game-photo-gallery-slider) .video-card__native-video {
  object-fit: contain;
}


/* =========================================================
   ARCADIUM V1.0.63 — WORKS VIDEO CARD-LOCKED PORTAL

   The player is intentionally rendered outside Swiper's transformed DOM and
   positioned over the active card from its live viewport rect. This is the
   authoritative Works-video playback layer and supersedes the V1.0.61/62
   in-card player container.
========================================================= */
.gallery-page .video-gallery-slider:not(.game-photo-gallery-slider) .video-card > .video-card__player {
  display: none !important;
}

body.gallery-page .works-video-portal,
.gallery-page .works-video-portal {
  position: fixed !important;
  display: block !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: #090617;
  box-shadow: 0 25px 55px rgba(0, 0, 0, .34), 0 0 0 1px rgba(255, 255, 255, .08);
  box-sizing: border-box !important;
  opacity: 0;
  transform: scale(.985);
  transform-origin: center;
  transition: opacity .28s ease, transform .38s cubic-bezier(.22, .8, .25, 1);
  isolation: isolate;
}

body.gallery-page .works-video-portal.is-visible,
.gallery-page .works-video-portal.is-visible {
  opacity: 1;
  transform: scale(1);
}

body.gallery-page .works-video-portal > iframe,
body.gallery-page .works-video-portal > video,
.gallery-page .works-video-portal > iframe,
.gallery-page .works-video-portal > video {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: inherit !important;
  box-sizing: border-box !important;
}

body.gallery-page .works-video-portal > video,
.gallery-page .works-video-portal > video {
  object-fit: contain;
  background: #090617;
}

body.gallery-page .works-video-portal .video-card__player-close,
.gallery-page .works-video-portal .video-card__player-close {
  position: absolute;
  z-index: 4;
  top: 10px;
  right: 10px;
}

@media (prefers-reduced-motion: reduce) {
  body.gallery-page .works-video-portal,
  .gallery-page .works-video-portal {
    transition-duration: .01ms !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.64 — WORKS VIDEO SINGLE-PATH PLAYER

   Authoritative Works-video interaction layer.
   - no Works video Fancybox path;
   - no body/fixed portal;
   - the card itself owns the click/keyboard interaction;
   - the player is paint-contained inside the active card only.
========================================================= */
body .works-video-portal,
.works-video-portal {
  display: none !important;
}

.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"] {
  position: relative;
  isolation: isolate;
  contain: paint;
  overflow: hidden !important;
  cursor: pointer;
}

.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"]:focus-visible {
  outline: 0;
  box-shadow:
    0 25px 55px rgba(0, 0, 0, .3),
    0 0 0 2px var(--cyan),
    0 0 24px rgba(146, 9, 242, .22);
}

.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"] > .video-card__launch {
  display: none !important;
}

.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"].is-playing {
  opacity: 1 !important;
}

.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"].is-playing > .video-card__media,
.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"].is-playing > .video-card__play {
  opacity: 0 !important;
  pointer-events: none !important;
}

.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"] > .video-card__player {
  position: absolute !important;
  inset: 0 !important;
  z-index: 12 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: inherit !important;
  box-sizing: border-box !important;
  background: #090617 !important;
  animation: arc-works-v1064-player-in .30s cubic-bezier(.22, .8, .25, 1) both;
}

.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"] > .video-card__player > iframe,
.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"] > .video-card__player > video {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: inherit !important;
  box-sizing: border-box !important;
  background: #090617 !important;
}

.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"] > .video-card__player > video {
  object-fit: contain;
}

.video-gallery-slider:not(.game-photo-gallery-slider)
.video-card[data-arc-works-video="true"] > .video-card__player > .video-card__player-close {
  position: absolute !important;
  z-index: 14 !important;
  top: 10px !important;
  right: 10px !important;
  display: grid !important;
  place-items: center;
  width: 34px !important;
  height: 34px !important;
  margin: 0 !important;
  padding: 0 0 2px !important;
  border: 1px solid rgba(255, 255, 255, .82) !important;
  border-radius: 50% !important;
  background: rgba(19, 15, 40, .84) !important;
  color: #fff !important;
  font: 500 24px/1 Arial, sans-serif !important;
  cursor: pointer;
  backdrop-filter: blur(8px);
}

@keyframes arc-works-v1064-player-in {
  from {
    opacity: 0;
    transform: scale(.975);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .video-gallery-slider:not(.game-photo-gallery-slider)
  .video-card[data-arc-works-video="true"] > .video-card__player {
    animation-duration: .01ms !important;
  }
}


/* =========================================================
   ARCADIUM V1.0.66 — GALLERY ACTIVE-HANDOFF MOTION
   Static Figma endpoints are unchanged. Only the transition
   between those states is synchronized with Swiper motion.
========================================================= */
.gallery-page .photo-gallery-slider.arc-photo-gallery-dragging
.photo-gallery-slide > a,
.gallery-page .photo-gallery-slider.arc-photo-gallery-dragging
.photo-gallery-slide > a > img {
  transition-timing-function: linear;
}

.single-game-page .game-photo-gallery-slider {
  --arc-game-gallery-motion-duration: 720ms;
  --arc-game-gallery-motion-ease: cubic-bezier(.22, .8, .25, 1);
}

.single-game-page .game-photo-gallery-slider .video-card {
  transform-origin: center center;
  backface-visibility: hidden;
  transition:
    width var(--arc-game-gallery-motion-duration) var(--arc-game-gallery-motion-ease),
    height var(--arc-game-gallery-motion-duration) var(--arc-game-gallery-motion-ease),
    opacity var(--arc-game-gallery-motion-duration) ease,
    box-shadow var(--arc-game-gallery-motion-duration) ease,
    transform var(--arc-game-gallery-motion-duration) var(--arc-game-gallery-motion-ease);
}

.single-game-page .game-photo-gallery-slider .video-card__media > img {
  backface-visibility: hidden;
  transition:
    transform var(--arc-game-gallery-motion-duration) var(--arc-game-gallery-motion-ease),
    opacity var(--arc-game-gallery-motion-duration) ease;
}

.single-game-page .game-photo-gallery-slider.arc-game-gallery-dragging
.video-card,
.single-game-page .game-photo-gallery-slider.arc-game-gallery-dragging
.video-card__media > img {
  transition-timing-function: linear;
}

@media (prefers-reduced-motion: reduce) {
  .gallery-page .photo-gallery-slider {
    --arc-photo-motion-duration: 0ms;
  }

  .single-game-page .game-photo-gallery-slider {
    --arc-game-gallery-motion-duration: 0ms;
  }
}


/* =========================================================
   ARCADIUM V1.0.67 — WORKS AUTOPLAY + INTERACTION POLISH
   User QA 2026-08-24.
   Scope:
   - Works photo-gallery one-curve motion/autoplay
   - desktop dropdown hover bridge
   - Articles card hover preserves base palette
   - FAQ/Articles active tabs use Arcadium button-hover palette
========================================================= */

/* ---------------------------------------------------------
   Works Photo Gallery
   One visual curve owns wrapper motion + role-size + perspective.
   The wrapper is retargeted to final auto-width geometry before paint; direct drag keeps a short 110ms role-size response.
--------------------------------------------------------- */
.gallery-page .photo-gallery-slider {
  --arc-photo-motion-duration: 820ms;
  --arc-photo-motion-ease: cubic-bezier(.18, .72, .22, 1);
  --swiper-wrapper-transition-timing-function: var(--arc-photo-motion-ease);
}

.gallery-page .photo-gallery-slider .swiper-wrapper {
  transition-timing-function: var(--arc-photo-motion-ease) !important;
}


.gallery-page .photo-gallery-slider.arc-photo-gallery-dragging
.photo-gallery-slide > a,
.gallery-page .photo-gallery-slider.arc-photo-gallery-dragging
.photo-gallery-slide > a > img {
  transition-duration: var(--arc-photo-motion-duration) !important;
  transition-timing-function: linear !important;
}

/* ---------------------------------------------------------
   Desktop dropdown hover corridor
   The panel keeps the Figma 8px visual gap, but an invisible hover bridge
   covers that gap and a little horizontal travel so the menu does not vanish
   while the pointer moves from the parent item to a child link.
--------------------------------------------------------- */
@media (min-width: 992px) {
  .nav-dropdown {
    z-index: 35;
  }

  .nav-dropdown::before {
    content: '';
    position: absolute;
    z-index: 29;
    top: 100%;
    left: 50%;
    width: 300px;
    height: 14px;
    transform: translateX(-50%);
    background: transparent;
    pointer-events: auto;
  }

  .nav-dropdown .dropdown-panel {
    top: calc(100% + 8px);
  }
}

/* ---------------------------------------------------------
   Articles cards
   Hover/focus keeps the exact base dark-page palette. Only motion, crop,
   shadow and the subtle pointer glow are allowed to change.
--------------------------------------------------------- */
.articles-page .article-card:hover,
.articles-page .article-card:focus-within {
  background: transparent;
  color: #fff;
}

.articles-page .article-card:hover::before,
.articles-page .article-card:focus-within::before {
  opacity: 0;
}

.articles-page .article-card:hover .article-card__body,
.articles-page .article-card:focus-within .article-card__body {
  background: transparent;
}

.articles-page .article-card:hover .article-card__excerpt,
.articles-page .article-card:focus-within .article-card__excerpt {
  opacity: 1;
}

.articles-page .article-card:hover .article-card__more,
.articles-page .article-card:focus-within .article-card__more {
  color: inherit;
}

/* ---------------------------------------------------------
   Shared FAQ / Articles tabs
   Keep the existing dimensions/scroll behavior. Active state now uses the
   site's purple/pink button-hover palette rather than the unrelated white pill.
--------------------------------------------------------- */
.faq-tab.is-active {
  border-color: var(--pink);
  background: var(--purple);
  color: #fff;
  box-shadow: 0 10px 28px rgba(146, 9, 242, .35);
}

.faq-tab.is-active:hover,
.faq-tab.is-active:focus-visible {
  border-color: var(--pink);
  background: var(--purple);
  color: #fff;
  filter: brightness(1.07);
  box-shadow: 0 12px 30px rgba(146, 9, 242, .42);
}

@media (prefers-reduced-motion: reduce) {
  .gallery-page .photo-gallery-slider {
    --arc-photo-motion-duration: 0ms;
  }
}


/* =========================================================
   ARCADIUM V1.0.69 — 1024–1280 CONTAINER RAIL CONTINUITY
   User request 2026-08-24.
   - Existing constrained desktop content stays constrained.
   - Target rail = 1110px max; below 1158px it uses the real viewport minus
     24px gutters per side so the page never gains horizontal overflow.
   - True full-width sections/media remain full width.
   - Dependent grids/type are compacted without changing component ownership.
   - 1280px belongs to this compact-desktop interval; legacy exact-desktop
     branches begin immediately above 1280 so they cannot overwrite the rail.
========================================================= */
@media (min-width: 1024px) and (max-width: 1280px) {
  :root {
    --arc-compact-desktop-rail: min(1110px, calc(100% - 48px));
  }

  /* Canonical / top-level constrained rails only. Intentionally smaller
     Figma components (FAQ tabs, Single Game events, corporate intro, etc.)
     keep their own smaller max-widths and are not stretched to 1110px. */
  .section-shell,
  .arc-page-container,
  .site-header,
  .site-header.contact-header,
  .contact-hero__content,
  .home-page .intro-section,
  .packages-section,
  .clients-row,
  body.home-page .clients-row,
  .home-page .reviews-carousel-shell,
  body.home-page .reviews-carousel-shell,
  .faq-section,
  .faq-page .faq-page__questions,
  .cta-section,
  .footer-inner,
  .copyright,
  .contact-form-page .contact-layout,
  .gallery-page .gallery-hero__content,
  .gallery-page .gallery-section__heading,
  .gallery-page .video-gallery-section,
  .single-game-page .game-intro,
  .single-game-page .why-game,
  .single-game-page .single-game-gallery.video-gallery-section,
  .single-game-page .related-games,
  .solutions-page .solutions-offer,
  .corporate-events-page .corporate-steps,
  .packages-page .packages-page__plans,
  .about-page .story-grid,
  .about-page .moments-panel,
  .articles-page .articles-browser,
  .article-single-page .article-single-layout,
  .privacy-page .privacy-content {
    box-sizing: border-box;
    width: var(--arc-compact-desktop-rail) !important;
    max-width: 1110px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  /* Header must stay a desktop header, but its labels need to fit the 1110 rail. */
  .desktop-nav {
    gap: clamp(14px, 1.35vw, 19px);
  }
  .desktop-nav > a,
  .nav-dropdown > button {
    font-size: clamp(14px, 1.22vw, 16px);
  }
  .desktop-nav > a.is-active,
  .contact-header .nav-dropdown.is-current > button {
    font-size: clamp(17px, 1.45vw, 19px) !important;
  }

  /* Shared section typography keeps the same hierarchy without making the
     narrower rail feel like a full-width tablet composition. */
  .section-title,
  .single-game-section-title,
  .corporate-section-title,
  .articles-page .articles-topics > h2,
  .gallery-section__heading h2 {
    font-size: clamp(46px, 4.25vw, 56px);
  }

  /* Four-up shared card families remain four-up through this desktop range. */
  .games-grid > .cards-grid,
  .events-grid > .cards-grid {
    gap: 16px;
  }
  .game-card__head h3 {
    font-size: clamp(25px, 2.15vw, 28px);
  }
  .event-card__head h3 {
    font-size: clamp(24px, 2.05vw, 27px);
  }
  .game-hover-copy span,
  .basketball-copy span {
    font-size: clamp(38px, 3.2vw, 42px);
  }
  .package-card__intro h3 {
    font-size: clamp(27px, 2.4vw, 31px);
  }

  /* Solutions: four cards still belong to one desktop row; scale type/art to
     the new rail instead of allowing the section to turn into a full-width row. */
  .solutions-page .solutions-offer__grid {
    gap: 14px;
  }
  .solutions-page .solution-feature-card {
    min-width: 0;
    height: 272px;
    padding-inline: 14px;
  }
  .solutions-page .solution-feature-card h3 {
    font-size: clamp(27px, 2.3vw, 30px);
  }
  .solutions-page .solution-feature-card p {
    font-size: clamp(14px, 1.3vw, 16px);
  }

  /* Single Game intro used fixed 664 + 52 + 504 tracks at 1200+. The rail is
     now smaller, so preserve the same visual ratio with flexible tracks. */
  .single-game-page .game-intro {
    grid-template-columns: minmax(0, 1.25fr) minmax(0, .95fr) !important;
    gap: 36px !important;
  }
  .single-game-page .game-intro__copy {
    width: 100% !important;
    min-width: 0;
  }
  .single-game-page .why-game__cards {
    width: 100% !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px;
  }
  .single-game-page .why-card h3 {
    font-size: clamp(29px, 2.55vw, 34px);
  }
  .single-game-page .why-card p {
    font-size: clamp(16px, 1.45vw, 19px);
  }

  /* The Works video and Single Game photo carousels are constrained content,
     not full-bleed media. Their card endpoints scale only in this range. */
  .video-gallery-slide {
    width: clamp(410px, 36.5vw, 468px);
  }
  .video-card {
    width: clamp(286px, 25vw, 320px);
    height: auto;
    aspect-ratio: 347 / 217;
  }
  .video-gallery-slide.swiper-slide-active .video-card {
    width: clamp(430px, 36.5vw, 468px);
    height: auto;
    aspect-ratio: 516 / 309;
  }

  /* About has exact 1280+ pixel rules later in the historical chain. Force the
     intermediate desktop composition to remain proportional at the 1110 rail. */
  .about-page .story-grid {
    grid-template-columns: minmax(0, .95fr) minmax(0, .95fr) minmax(0, 2fr) !important;
  }
  .about-page .about-games .section-shell {
    left: auto !important;
  }
  .about-page .about-games .section-title,
  .about-page .about-games .games-grid > .cards-grid {
    width: 100% !important;
  }
  .about-page .about-games .section-title {
    height: auto !important;
    line-height: 1.15 !important;
  }
  .about-page .about-games .games-grid > .cards-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  /* Footer columns stay on one desktop row at the new rail. */
  .footer-inner {
    grid-template-columns: minmax(245px, 1fr) 135px minmax(170px, 195px) 232px !important;
    column-gap: clamp(22px, 2.2vw, 30px) !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.70 — 1024–1280 RAIL SYMMETRY / TRUE CENTER
   User QA 2026-08-24.

   V1.0.69 established the 1110px compact-desktop content rail, but several
   older pixel-perfect desktop anchors could still shift the *whole* rail.
   Those offsets are valid only on the large Figma desktop canvas and must not
   bias a 1024–1280 composition to one physical side.
========================================================= */
@media (min-width: 1024px) and (max-width: 1280px) {
  /* The original header was intentionally 10.5px off mathematical center on
     the large Figma frame. Compact desktop needs equal physical gutters. */
  .site-header,
  .site-header.contact-header {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
  }

  /* Remove legacy large-canvas micro offsets from top-level constrained
     content only. Internal artwork/control offsets are deliberately untouched. */
  body:not(.home-page) .contact-hero__content,
  .contact-form-page .contact-layout,
  .contact-form-page .contact-cta,
  .gallery-page .video-gallery-section,
  .gallery-page .gallery-cta,
  .single-game-page .single-game-gallery.video-gallery-section {
    left: auto !important;
    right: auto !important;
  }

  /* These routes deliberately keep a physical right-side scrollbar in Arabic.
     Reserve the same gutter on the opposite edge in this compact range so a
     mathematically centered 1110px rail is visually centered as well. */
  html.packages-scroll-right,
  html.articles-scroll-right,
  html.privacy-scroll-right {
    scrollbar-gutter: stable both-edges !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.71 — FIGMA OVERFLOW + INTERACTION OWNERSHIP
   User QA 2026-08-24.

   The V1.0.52 entrance choreography must never become the permanent owner of
   interactive card paint. A rectangular clip-path on .arc-flow-item was
   cutting off Figma artwork that intentionally hangs outside its card, and the
   generic transition-property was masking component hover transitions after
   reveal. JS now releases interactive/card ownership after entrance; these
   CSS guards keep overflow visible for the affected Figma components from the
   first painted frame through their final state.
========================================================= */
body.arc-flow-ready .arc-flow-item {
  clip-path: var(--arc-flow-clip, none);
}
body.arc-flow-ready .arc-flow-item.is-arc-flow-visible {
  clip-path: none;
	padding-top:10px !important;
}

.solutions-page .solution-feature-card,
.corporate-events-page .experience-card,
.about-page .why-card,
.about-page .moment-tag-slot {
  overflow: visible !important;
}

/* A low-specificity motion floor: component-specific transition declarations
   always win, while otherwise abrupt interactive states gain a short Arcadium
   easing. Reduced-motion users remain untouched. */
@media (prefers-reduced-motion: no-preference) {
  :where(
    a[href],
    button,
    [role="button"],
    [tabindex="0"],
    .moment-tag,
    .faq-tab,
    .ribbon,
    .game-card,
    .event-card,
    .package-card,
    .article-card,
    .work-tile,
    .review-card,
    .solution-feature-card,
    .experience-card,
    .why-card
  ) {
    transition-property: transform, translate, scale, rotate, opacity, color, background-color, border-color, box-shadow, filter;
    transition-duration: .28s;
    transition-timing-function: cubic-bezier(.2, .75, .2, 1);
  }
}

/* =========================================================
   ARCADIUM V1.0.71 — ABOUT MOMENTS FIGMA RESTORATION
   Figma panel 917:1999. Keep a real copy block followed by a dedicated badge
   stage whose internal geometry is scaled from the approved Figma positions.
   This replaces the compact-English flex-wrap that flattened all eight badges
   into tiny pills and collapsed the panel vertically.
========================================================= */
.about-page .moments-copy,
.about-page .moments-copy h2,
.about-page .moments-copy p {
  direction: rtl;
  text-align: right;
}

@media (min-width: 1024px) {
  .about-page .about-moments {
    height: auto !important;
  }

  .about-page .moments-panel {
    position: relative !important;
    box-sizing: border-box;
    height: auto !important;
    padding: 54px 0 40px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.32) !important;
    border-radius: 32px !important;
    background:
      radial-gradient(ellipse 150px 360px at calc(100% + 18px) 42%, rgba(177,44,204,.48) 0%, rgba(93,1,83,.18) 44%, rgba(18,16,40,0) 74%),
      #121028 !important;
    box-shadow: inset 4px 4px 4px rgba(255,255,255,.30) !important;
  }

  /* The old desktop ::after glow is replaced by the bounded Figma-like radial
     above so it cannot obscure or change the badge containing block. */
  .about-page .moments-panel::after {
    content: none !important;
    display: none !important;
  }

  .about-page .moments-copy {
    position: relative !important;
    z-index: 2;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    width: min(82%, 912px) !important;
    margin: 0 auto !important;
    transform: none !important;
  }

  .about-page .moments-copy h2 {
    margin: 0 !important;
    font-size: clamp(46px, 4.4vw, 64px) !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
  }

  .about-page .moments-copy p {
    width: 100% !important;
    margin: 18px 0 0 !important;
    font-size: clamp(16px, 1.55vw, 20px) !important;
    line-height: 1.55 !important;
  }

  .about-page .moment-tags {
    position: relative !important;
    z-index: 2;
    inset: auto !important;
    display: block !important;
    width: clamp(720px, 65.8%, 820px) !important;
    height: 135px !important;
    margin: 38px auto 0 !important;
    overflow: visible !important;
    direction: ltr;
  }

  .about-page .moment-tag-slot,
  .about-page .moment-tag-slot--interactive,
  .about-page .moment-tag-slot--custom,
  .about-page .moment-tag-slot--mobile,
  .about-page .moment-tag-slot--safe,
  .about-page .moment-tag-slot--fun,
  .about-page .moment-tag-slot--easy,
  .about-page .moment-tag-slot--competitive,
  .about-page .moment-tag-slot--supervision {
    position: absolute !important;
    inset: auto !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-width: 0;
    overflow: visible !important;
  }

  /* Relative geometry derived from Figma 917:1999 badge bounds, normalized to
     an 820×135 stage so the composition scales without screenshot hacks. */
  .about-page .moment-tag-slot--interactive { left: 0% !important;     top: 46.7% !important; width: 21.0% !important; height: 30.4% !important; }
  .about-page .moment-tag-slot--custom      { left: 12.6% !important;  top: 14.8% !important; width: 22.4% !important; height: 48.3% !important; }
  .about-page .moment-tag-slot--mobile      { left: 24.5% !important;  top: 62.2% !important; width: 21.0% !important; height: 30.4% !important; }
  .about-page .moment-tag-slot--safe        { left: 37.7% !important;  top: 14.8% !important; width: 17.4% !important; height: 48.4% !important; }
  .about-page .moment-tag-slot--fun         { left: 47.1% !important;  top: 55.6% !important; width: 22.2% !important; height: 34.0% !important; }
  .about-page .moment-tag-slot--easy        { left: 56.5% !important;  top: 0% !important;    width: 21.8% !important; height: 55.6% !important; }
  .about-page .moment-tag-slot--competitive { left: 69.1% !important;  top: 68.1% !important; width: 17.1% !important; height: 32.2% !important; }
  .about-page .moment-tag-slot--supervision { left: 73.5% !important;  top: 28.1% !important; width: 25.1% !important; height: 49.7% !important; }

  .about-page .moment-tag-slot .moment-tag {
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 36px !important;
    padding: 7px 10px !important;
    font-size: clamp(14px, 1.35vw, 20px) !important;
    line-height: 1.15 !important;
    white-space: nowrap;
  }
}

@media (min-width: 1024px) and (max-width: 1280px) {
  .about-page .moments-panel {
    min-height: 460px !important;
  }
}

@media (min-width: 1281px) {
  .about-page .moments-panel {
    min-height: 504px !important;
    padding-top: 64px !important;
    padding-bottom: 48px !important;
  }
  .about-page .moments-copy h2 { font-size: 64px !important; }
  .about-page .moments-copy p  { font-size: 20px !important; }
  .about-page .moment-tags     { margin-top: 44px !important; }
  .about-page .moment-tag-slot .moment-tag { font-size: 20px !important; }
}

/* Titles keep their intentional bottom-mask reveal; card/action/media/copy units
   use no paint mask so overflow is never sacrificed for entrance motion. */
body.arc-flow-ready .arc-flow-item.arc-flow--title.is-arc-flow-visible {
  clip-path: inset(0 0 0 0);
}

/* =========================================================
   ARCADIUM V1.0.72 — RESPONSIVE TYPOGRAPHY PROPORTION PASS
   User QA 2026-08-24.
   Goal: keep the Figma desktop hierarchy readable while the 1110px compact
   rail scales down. Typography follows the available composition instead of
   collapsing independently at old breakpoint-specific overrides.
========================================================= */

/* The 992–1280 desktop family uses one continuous scale. 1024–1280 keeps the
   V1.0.69 1110px rail; 992–1023 receives the same type scale only, eliminating
   the old "smaller at 1024, larger again at 992" discontinuity. */
@media (min-width: 992px) and (max-width: 1280px) {
  .section-title,
  .single-game-section-title,
  .corporate-section-title,
  .articles-page .articles-topics > h2,
  .gallery-section__heading h2 {
    font-size: clamp(48px, 4.55vw, 58px) !important;
    line-height: 1.08;
  }

  .game-card__head h3 {
    font-size: clamp(24.5px, 2.2vw, 28.25px);
  }
  .event-card__head h3 {
    font-size: clamp(23px, 2.1vw, 27px);
  }
  .game-hover-copy span,
  .basketball-copy span {
    font-size: clamp(36px, 3.35vw, 43px);
  }
  .package-card__intro h3 {
    font-size: clamp(27px, 2.5vw, 32px);
  }

  /* About / Moments scales from the Figma 1246px panel to the real compact
     content width. At the 1110px plateau it stays ~89% of the Figma type size. */
  .about-page .moments-panel {
    min-height: 476px !important;
    padding-top: 56px !important;
    padding-bottom: 44px !important;
  }
  .about-page .moments-copy h2 {
    font-size: clamp(50px, 4.75vw, 57px) !important;
    line-height: 1.12 !important;
  }
  .about-page .moments-copy p {
    font-size: clamp(16px, 1.5vw, 18px) !important;
    line-height: 1.58 !important;
  }
  .about-page .moment-tag-slot .moment-tag {
    min-height: 38px !important;
    padding: 8px 11px !important;
    font-size: clamp(16px, 1.5vw, 18px) !important;
    line-height: 1.15 !important;
  }
}

/* Tablet keeps the same hierarchy rather than inheriting isolated 64px desktop
   headings on one page and 46px on another. */
@media (min-width: 576px) and (max-width: 991.98px) {
  .section-title,
  .single-game-section-title,
  .corporate-section-title,
  .articles-page .articles-topics > h2,
  .gallery-section__heading h2 {
    font-size: clamp(44px, 6.6vw, 52px) !important;
    line-height: 1.08;
  }
}

/* =========================================================
   ARCADIUM V1.0.73 — ABOUT DESKTOP PROPORTION + TRUE RAIL
   User QA 2026-08-24.

   Scope is intentionally limited to About Story + Why Arcadium.
   - Story no longer inherits one oversized title/height recipe across every
     desktop width. Each desktop band gets its own composition scale.
   - The 1024–1280 Why section now owns the same 1110px outer rail as the
     other constrained sections. Its rotated cards receive an internal safety
     inset so their painted bounds stay inside that rail instead of touching
     the viewport edges.
   - Full-width sections and every non-About component are untouched.
========================================================= */

/* Desktop Story: one layout system, four deliberate size bands. */
@media (min-width: 1024px) {
  .about-page .story-grid {
    height: var(--arc-about-story-h) !important;
    min-height: 0 !important;
    align-items: stretch !important;
  }

  .about-page .story-card {
    height: 100% !important;
    min-height: 0 !important;
  }

  .about-page .story-card--mission,
  .about-page .story-card--vision {
    display: flex !important;
    flex-direction: column !important;
    padding: var(--arc-about-story-pad-y) var(--arc-about-story-pad-x) !important;
  }

  .about-page .story-card--mission h2,
  .about-page .story-card--vision h2,
  .about-page .story-card--mission p,
  .about-page .story-card--vision p {
    position: static !important;
    inset: auto !important;
    width: auto !important;
  }

  .about-page .story-card--mission h2,
  .about-page .story-card--vision h2,
  .about-page .story-card--about h2 {
    font-size: var(--arc-about-story-title) !important;
    line-height: 1.06 !important;
  }

  .about-page .story-card--mission p,
  .about-page .story-card--vision p {
    margin-top: auto !important;
  }

  .about-page .story-card p {
    font-size: var(--arc-about-story-body) !important;
    line-height: 1.52 !important;
  }

  .about-page .story-card--about {
    height: 100% !important;
    padding: var(--arc-about-story-about-pad-y) var(--arc-about-story-about-pad-x) !important;
  }

  .about-page .story-card--about h2 {
    position: relative !important;
    inset: auto !important;
    width: min(82%, 430px) !important;
    margin-right: 0 !important;
    margin-left: auto !important;
  }

  .about-page .story-card--about p {
    top: auto !important;
    right: var(--arc-about-story-about-pad-x) !important;
    bottom: var(--arc-about-story-copy-bottom) !important;
    left: auto !important;
    width: min(58%, var(--arc-about-story-copy-w)) !important;
    min-height: 0 !important;
  }

  .about-page .story-card__coin {
    top: auto !important;
    right: auto !important;
    bottom: var(--arc-about-story-coin-bottom) !important;
    left: var(--arc-about-story-coin-side) !important;
    width: var(--arc-about-story-coin) !important;
    height: var(--arc-about-story-coin) !important;
  }
}

@media (min-width: 1024px) and (max-width: 1099.98px) {
  .about-page {
    --arc-about-story-h: 326px;
    --arc-about-story-title: 46px;
    --arc-about-story-body: 15.5px;
    --arc-about-story-pad-y: 24px;
    --arc-about-story-pad-x: 18px;
    --arc-about-story-about-pad-y: 24px;
    --arc-about-story-about-pad-x: 24px;
    --arc-about-story-copy-bottom: 24px;
    --arc-about-story-copy-w: 276px;
    --arc-about-story-coin: 118px;
    --arc-about-story-coin-bottom: 14px;
    --arc-about-story-coin-side: 20px;
  }
}

@media (min-width: 1100px) and (max-width: 1199.98px) {
  .about-page {
    --arc-about-story-h: 344px;
    --arc-about-story-title: 49px;
    --arc-about-story-body: 16.5px;
    --arc-about-story-pad-y: 26px;
    --arc-about-story-pad-x: 19px;
    --arc-about-story-about-pad-y: 26px;
    --arc-about-story-about-pad-x: 27px;
    --arc-about-story-copy-bottom: 26px;
    --arc-about-story-copy-w: 294px;
    --arc-about-story-coin: 130px;
    --arc-about-story-coin-bottom: 15px;
    --arc-about-story-coin-side: 22px;
  }
}

@media (min-width: 1200px) and (max-width: 1280px) {
  .about-page {
    --arc-about-story-h: 362px;
    --arc-about-story-title: 52px;
    --arc-about-story-body: 17.5px;
    --arc-about-story-pad-y: 28px;
    --arc-about-story-pad-x: 20px;
    --arc-about-story-about-pad-y: 28px;
    --arc-about-story-about-pad-x: 30px;
    --arc-about-story-copy-bottom: 28px;
    --arc-about-story-copy-w: 312px;
    --arc-about-story-coin: 142px;
    --arc-about-story-coin-bottom: 16px;
    --arc-about-story-coin-side: 24px;
  }
}

@media (min-width: 1281px) {
  .about-page {
    --arc-about-story-h: 400px;
    --arc-about-story-title: 58px;
    --arc-about-story-body: 19px;
    --arc-about-story-pad-y: 34px;
    --arc-about-story-pad-x: 20px;
    --arc-about-story-about-pad-y: 30px;
    --arc-about-story-about-pad-x: 43px;
    --arc-about-story-copy-bottom: 34px;
    --arc-about-story-copy-w: 326px;
    --arc-about-story-coin: 164px;
    --arc-about-story-coin-bottom: 17px;
    --arc-about-story-coin-side: 33px;
  }

  .about-page .about-story {
    height: var(--arc-about-story-h) !important;
  }

  .about-page .story-card--about {
    width: 652px !important;
  }
}

/* 1024–1280: Why Arcadium is constrained content. The outer rail is 1110px
   when the viewport allows it; the rotated cards sit 32px inside the rail so
   their bounding boxes do not spill into the viewport gutters. */
@media (min-width: 1024px) and (max-width: 1280px) {
  .about-page .about-why__inner {
    box-sizing: border-box;
    width: var(--arc-compact-desktop-rail) !important;
    max-width: 1110px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    transform: none !important;
  }

  .about-page .why-grid {
    width: calc(100% - 64px) !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
    gap: clamp(10px, 1.05vw, 14px) !important;
  }

  .about-page .why-card h3 {
    font-size: clamp(27px, 2.45vw, 31px) !important;
    line-height: 1.12 !important;
  }

  .about-page .why-card p {
    font-size: clamp(15.5px, 1.42vw, 18px) !important;
    line-height: 1.28 !important;
  }
}

/* V1.0.73 QA refinement: rotated Why cards need paint-safe breathing room, not
   merely a mathematically centered grid. The physical Arabic composition is
   shifted 12px toward the side with the smaller rotation so the two painted
   extremes read balanced inside the 1110px rail. */
@media (min-width: 1024px) and (max-width: 1280px) {
  .about-page .why-grid {
    width: calc(100% - 128px) !important;
    transform: translateX(12px);
  }
}

/* V1.0.73 QA refinement: the main Story copy uses an explicit per-band measure.
   Using a percentage inside min() allowed legacy absolute-position math to
   resolve narrower than intended in some desktop widths. */
@media (min-width: 1024px) {
  .about-page .story-card--about p {
    width: var(--arc-about-story-copy-w) !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.74 — DESKTOP HEADER TOP GAP
   User QA 2026-08-24.

   Desktop header must sit exactly 10px from the top edge on every
   desktop breakpoint. This is intentionally limited to the header's
   vertical anchor; internal height, padding, nav layout and horizontal
   positioning remain owned by their existing breakpoint rules.
========================================================= */
@media (min-width: 992px) {
  .site-header,
  .site-header.contact-header {
    top: 10px !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.75 — INNER HERO TAIL + COMPACT BLOG CONTROLS
   User QA 2026-08-24.
   - Shared non-home hero content keeps a 70px bottom tail exactly as requested.
   - Blog archive cards and category tabs are visually compacted by 10% only
     on 1024–1366 desktop/laptop widths.
   - Article cards use the independent CSS scale property so their existing
     perspective/tilt hover transform remains the sole transform owner.
========================================================= */
body:not(.home-page) .contact-hero__content {
  min-height: 0 !important;
  padding-bottom: 90px !important;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  /* Keep the card's existing transform chain for hover/tilt. `scale` is a
     separate transform longhand, so filter entrance and pointer tilt remain
     intact. Negative margins make flex layout consume the painted 90% size
     instead of leaving artificial blank space around every card. */
  .articles-page .article-card {
    scale: .9;
    margin-inline: -19.35px;
    margin-block: -27.75px;
  }

  /* Scale the complete tab component rather than each button independently,
     preserving the outer pill, internal gaps, active pill and hover geometry. */
  .articles-page .articles-tabs-shell {
    transform: scale(.9);
    transform-origin: center top;
    margin-bottom: -8px;
  }
}

/* =========================================================
   ARCADIUM V1.0.77 — SCROLL-ONLY FIXED GLASS HEADER
   User clarification 2026-08-24.
   - At the top of the page, the header is exactly the original component:
     desktop remains absolute over the hero; tablet/mobile remain normal-flow.
   - Only after scrolling does the same header dock to the viewport and gain
     the glass surface/shadow.
   - Returning to the top removes the docked state and restores the untouched
     original header skin/geometry.
   - A mobile/tablet flow spacer preserves the original header footprint while
     docked so switching to fixed positioning does not pull page content upward.
========================================================= */
.site-header,
.site-header.contact-header {
  transition:
    background .32s cubic-bezier(.2,.75,.2,1),
    border-color .32s ease,
    box-shadow .32s cubic-bezier(.2,.75,.2,1),
    -webkit-backdrop-filter .32s ease,
    backdrop-filter .32s ease;
}

/* Desktop: preserve all existing width/left/height/transform owners. The only
   positional change in the scrolled state is absolute -> fixed. */
.site-header.is-scrolled,
.site-header.contact-header.is-scrolled {
  position: fixed !important;
  z-index: 1000 !important;
  overflow: visible !important;
  border: 1px solid rgba(255,255,255,.62);
  border-radius: 28px;
  -webkit-backdrop-filter: blur(18px) saturate(145%);
  backdrop-filter: blur(18px) saturate(145%);
  animation: arc-header-dock-in .28s cubic-bezier(.2,.75,.2,1) both;
  will-change: background, box-shadow, backdrop-filter;
}

/* Home desktop: purple navigation over a light glass rail. */
.site-header.is-scrolled:not(.contact-header) {
  border-color: rgba(255,255,255,.82);
 /* background: linear-gradient(135deg, rgba(255,255,255,.82), rgba(255,255,255,.62));*/
     background: #ffffff59 !important;
         border-radius: 10px;
    height: 80px;
  box-shadow:
    0 16px 42px rgba(12,7,32,.24),
    inset 0 1px 0 rgba(255,255,255,.72);
}
.site-header.is-scrolled  .site-logo{
    width: 65px;
    height: 65px;
}
/* Inner desktop: white navigation over a dark/purple glass rail. */
.site-header.contact-header.is-scrolled {
  border-color: rgba(255,255,255,.30);
 /* background: linear-gradient(135deg, rgba(255,255,255,.82), rgba(255,255,255,.62));*/
     background: #ffffff59 !important;
         border-radius: 10px;
    height: 80px;
  box-shadow:
    0 18px 46px rgba(7,4,20,.38),
    inset 0 1px 0 rgba(255,255,255,.24);
}

@keyframes arc-header-dock-in {
  from { opacity: .88; translate: 0 -8px; }
  to   { opacity: 1; translate: 0 0; }
}

/* Desktop keeps the previously approved 10px top gap in both original and
   scrolled states. V1.0.74 remains the top-state owner; this repeats the value
   only for the fixed docked state. */
@media (min-width: 992px) {
  .site-header.is-scrolled,
  .site-header.contact-header.is-scrolled {
    top: 10px !important;
  }
}

/* On tablet/mobile the original header stays completely unchanged at page top.
   Once scrolled it becomes the floating glass rail. */
.arc-header-flow-spacer {
  display: none;
}

@media (max-width: 991.98px) {
  body.arc-header-docked .arc-header-flow-spacer {
    display: block;
    width: 100%;
    height: var(--arc-header-spacer-h, 96px);
    min-height: var(--arc-header-spacer-h, 96px);
    flex: 0 0 var(--arc-header-spacer-h, 96px);
    visibility: hidden;
    pointer-events: none;
  }

  /* Home hero is a flex column on these widths; reserve the exact slot formerly
     occupied by the relative header so the artwork/actions never jump. */
  .hero--composite > .arc-header-flow-spacer {
    order: 1;
  }

  .site-header.is-scrolled,
  .site-header.contact-header.is-scrolled {
    position: fixed !important;
    top: 10px !important;
    right: auto !important;
    left: 50% !important;
    width: calc(100% - 20px) !important;
    max-width: none !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
    border-color: rgba(255,255,255,.86) !important;
    border-radius: 22px;
    background: linear-gradient(135deg, rgba(255,255,255,.88), rgba(255,255,255,.68)) !important;
    -webkit-backdrop-filter: blur(18px) saturate(145%);
    backdrop-filter: blur(18px) saturate(145%);
    box-shadow:
      0 16px 38px rgba(12,7,32,.25),
      inset 0 1px 0 rgba(255,255,255,.78) !important;
  }
}

@media (max-width: 575.98px) {
  .site-header.is-scrolled,
  .site-header.contact-header.is-scrolled {
    width: calc(100% - 16px) !important;
    border-radius: 18px;
  }
}

/* Admin toolbar compensation is required only while the header is viewport-
   fixed. At page top the untouched original rules remain in charge. */
@media (min-width: 783px) {
  body.admin-bar .site-header.is-scrolled,
  body.admin-bar .site-header.contact-header.is-scrolled {
    top: 42px !important;
  }
}
@media (max-width: 782.98px) {
  body.admin-bar .site-header.is-scrolled,
  body.admin-bar .site-header.contact-header.is-scrolled {
    top: 56px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-header,
  .site-header.contact-header,
  .site-header.is-scrolled,
  .site-header.contact-header.is-scrolled {
    transition: none !important;
    animation: none !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.78 — MOBILE HEADER / HERO CTA / RIBBON HARDENING
   User QA 2026-08-25.
   Scope: phone layout only (<= 575.98px).
   - Physical header order: language LEFT, logo CENTER, menu RIGHT.
   - Home hero CTA rail overlays the bottom of the hero artwork instead of
     creating a separate block below it.
   - Intro ribbon geometry is clipped/contained cleanly while JS owns motion.
   Tablet and desktop layouts are intentionally untouched.
========================================================= */
@media (max-width: 575.98px) {
  /* Mobile header: physical placement is intentional and language-independent. */
  .site-header,
  .site-header.contact-header {
    grid-template-columns: minmax(92px, 1fr) 72px minmax(42px, 1fr) !important;
    column-gap: 8px;
  }

  .site-header .language-control,
  .site-header.contact-header .language-control {
    grid-column: 1 !important;
    grid-row: 1;
    justify-self: start !important;
    min-width: 0;
  }

  .site-header .site-logo,
  .site-header.contact-header .site-logo {
    grid-column: 2 !important;
    grid-row: 1;
    justify-self: center !important;
    width: 64px;
    height: 64px;
  }

  .site-header .menu-toggle,
  .site-header.contact-header .menu-toggle {
    grid-column: 3 !important;
    grid-row: 1;
    justify-self: end !important;
  }

  /* Home phone hero: keep the action rail visually inside the artwork. */
  .home-page .hero--composite {
    position: relative;
                     overflow: visible;
        margin-bottom: 30px;
  }

  .home-page .hero--composite .hero-actions {
    position: absolute !important;
    z-index: 22;
    right: auto !important;
    bottom: -30px !important;
    left: 50% !important;
    order: initial !important;
    width: calc(100% - 28px) !important;
    max-width: 480px;
    height: 76px;
    margin: 0 !important;
    padding: 15px 16px;
    gap: 10px;
    transform: translateX(-50%) !important;
  }

  /* The intro marquees remain full-bleed, but their moving track must never
     paint outside its own row or visually stack duplicated loop groups. */
  .home-page .feature-ribbons {
    overflow: hidden !important;
  }

  .home-page .ribbon-marquee {
    overflow: hidden !important;
    contain: paint;
  }

  .home-page .ribbon-track,
  .home-page .ribbon-group {
    row-gap: 0 !important;
  }

  .home-page .ribbon-group {
    flex-shrink: 0;
  }

  .home-page .ribbon {
    box-sizing: border-box;
    flex-shrink: 0;
    min-width: 0;
    white-space: nowrap;
  }
}

/* =========================================================
   ARCADIUM V1.0.79 — PHONE HEADER COMPACT HEIGHT + SURFACE
   User QA 2026-08-25.
   Scope: phones only (<= 575.98px).
   - Top-state header surface is the requested #f9f9fb.
   - Header height hugs its controls instead of keeping the old 82px rail.
   - Preserve V1.0.78 physical order: language LEFT, logo CENTER, menu RIGHT.
   - Scrolled state keeps the V1.0.77 glass behavior using the same #f9f9fb
     family as a translucent surface.
========================================================= */
@media (max-width: 575.98px) {
  .site-header,
  .site-header.contact-header {
    grid-template-columns: minmax(84px, 1fr) 54px minmax(38px, 1fr) !important;
    column-gap: 6px !important;
    height: 60px !important;
    min-height: 60px !important;
    padding: 4px 12px !important;
    background: #f9f9fb !important;
  }

  .site-header .site-logo,
  .site-header.contact-header .site-logo {
    width: 52px !important;
    height: 52px !important;
  }

  .site-header .language-control,
  .site-header.contact-header .language-control {
    height: 36px !important;
  }

  .site-header .language-switch,
  .site-header .language-current,
  .site-header.contact-header .language-switch,
  .site-header.contact-header .language-current {
    height: 36px !important;
    min-height: 36px !important;
    padding: 5px 7px !important;
    font-size: 14px !important;
    line-height: 1 !important;
  }

  .site-header .menu-toggle,
  .site-header.contact-header .menu-toggle {
    width: 36px !important;
    height: 36px !important;
    padding: 8px !important;
  }

  .site-header.is-scrolled,
  .site-header.contact-header.is-scrolled {
    background: rgba(249,249,251,.88) !important;
  }
}


/* =========================================================
   ARCADIUM V1.0.80 — PHONE INNER-PAGE COMPOSITION PASS
   User QA 2026-08-25.
   Scope: phones only (<= 575.98px), except the hero duplicate-button default.
   - Synchronize inner-hero artwork with the approved 60px phone header.
   - Compact breadcrumbs/inner hero title and remove the oversized tail.
   - Games archive: odd final extra card spans the full row.
   - Single event: intro heading aligns to logical start; booking CTA appears
     directly below the hero description on phones.
   - Single event experience/steps stay side-by-side as three compact cards.
   - Blog/FAQ tabs wrap instead of horizontal scrolling.
   - Blog + related article cards use two compact columns.
   - FAQ mobile hierarchy is reduced without changing desktop/tablet.
========================================================= */

.corporate-events-page .corporate-primary-button--hero {
  display: none !important;
}

@media (max-width: 575.98px) {
  /* -------------------------------------------------------
     Shared inner hero: the media layer still carried the old 82px header
     offset after V1.0.79 reduced the phone header to 60px. Keep the entire
     breadcrumb/title/description family compact and below the real header.
  ------------------------------------------------------- */
  body:not(.home-page) .contact-hero__media {
    top: 60px !important;
    bottom: 0 !important;
    height: auto !important;
  }

  /* Keep the typography change requested in this batch scoped to Games.
     Other inner pages keep their existing mobile type scale; they only inherit
     the corrected 60px media anchor above. */
  .games-page .games-hero__content {
    width: calc(100% - 28px) !important;
    min-height: 0 !important;
    padding-top: 14px !important;
    padding-bottom: 18px !important;
  }

  .games-page .games-hero__content .breadcrumb-nav {
    gap: 6px !important;
    min-height: 20px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  .games-page .games-hero__content .breadcrumb-nav > span[aria-hidden="true"] {
    font-size: 15px !important;
  }

  .games-page .games-hero__content h1 {
    margin-top: 10px !important;
    font-size: 25px !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
  }

  .games-page .games-hero__content p {
    margin-top: 8px !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
  }

  /* -------------------------------------------------------
     Games archive: keep the two-column rhythm; if either rendered archive
     group ends with one unpaired card, let that final card own the row.
  ------------------------------------------------------- */
  .games-page .games-page__catalog {
    padding-top: 28px !important;
  }

  .games-page .games-page__catalog .games-grid {
    margin-top: 22px !important;
  }

  .games-page .games-primary-grid > .game-card:last-child:nth-child(odd),
  .games-page .games-extra-grid > .game-card:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    width: 100%;
    max-width: none;
  }

  /* -------------------------------------------------------
     Single event intro + hero CTA.
  ------------------------------------------------------- */
  .corporate-events-page .corporate-hero__content {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    text-align: start;
  }

  .corporate-events-page .corporate-primary-button--hero {
  display: grid !important;
        align-self: flex-start;
        width: min(100%, 155px) !important;
        height: 41px !important;
        margin-top: 14px;
        margin-inline-end: auto;
        font-size: 16px !important;
  }

  .corporate-events-page .corporate-primary-button--intro {
    display: none !important;
  }

  .corporate-events-page .corporate-intro {
    align-items: stretch !important;
    gap: 18px !important;
    padding-top: 30px !important;
    text-align: start !important;
  }

  .corporate-events-page .corporate-intro h2,
  .corporate-events-page .corporate-intro__body,
  .corporate-events-page .corporate-intro__body p {
    text-align: start !important;
  }

  .corporate-events-page .corporate-intro__body {
    align-items: stretch !important;
    gap: 0 !important;
  }

  /* -------------------------------------------------------
     Single event — three compact experience cards in one row.
     Flex content replaces the old absolute phone text rails so 320–575px
     widths remain readable in both languages.
  ------------------------------------------------------- */
  .corporate-events-page .corporate-experience {
    width: calc(100% - 20px) !important;
    margin-top: 54px !important;
  }

  .corporate-events-page .corporate-experience__cards {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 26px auto 0 !important;
    direction: rtl;
    align-items: stretch;
  }

  .corporate-events-page .experience-card {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    display: flex !important;
    flex-direction: column;
    width: 100% !important;
    height: clamp(210px, 58vw, 230px) !important;
    min-height: 0 !important;
    padding: 18px 8px 12px !important;
    border-radius: 13px !important;
    transform: none !important;
  }

  .corporate-events-page .experience-card--games { order: 1; }
  .corporate-events-page .experience-card--space { order: 2; }
  .corporate-events-page .experience-card--interaction { order: 3; }

  .corporate-events-page .experience-card h3,
  .corporate-events-page .experience-card--interaction h3,
  .corporate-events-page .experience-card--space h3,
  .corporate-events-page .experience-card--games h3 {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 0 0 34px !important;
    font-size: clamp(15px, 4.15vw, 18px) !important;
    line-height: 1.08 !important;
    text-align: start !important;
    text-wrap: balance;
  }

  .corporate-events-page .experience-card p,
  .corporate-events-page .experience-card--interaction p,
  .corporate-events-page .experience-card--space p,
  .corporate-events-page .experience-card--games p {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    margin: auto 0 0 !important;
    padding: 12px 0 0 !important;
    font-size: clamp(9.5px, 2.65vw, 11.5px) !important;
    line-height: 1.34 !important;
    text-align: start !important;
  }

  .corporate-events-page .experience-card--interaction .experience-card__badge,
  .corporate-events-page .experience-card--space .experience-card__badge,
  .corporate-events-page .experience-card--games .experience-card__badge {
    top: -14px !important;
    left: 6px !important;
    width: clamp(38px, 10vw, 46px) !important;
    height: clamp(38px, 10vw, 46px) !important;
  }

  /* -------------------------------------------------------
     Single event setup steps — also one three-card row.
  ------------------------------------------------------- */
  .corporate-events-page .corporate-steps {
    width: calc(100% - 20px) !important;
    margin-top: 58px !important;
    margin-bottom: 58px !important;
  }

  .corporate-events-page .corporate-steps__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: none !important;
    margin-top: 26px !important;
    direction: rtl;
  }

  .corporate-events-page .setup-step {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    height: clamp(205px, 56vw, 225px) !important;
    min-height: 0 !important;
    border-radius: 15px !important;
  }

  .corporate-events-page .setup-step__number {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    align-self: flex-start;
    margin: 9px 9px 0 !important;
    font-size: clamp(48px, 14vw, 60px) !important;
    line-height: .82 !important;
  }

  .corporate-events-page .setup-step__copy {
    position: relative !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    flex: 1 1 auto;
    align-items: flex-start !important;
    justify-content: flex-end;
    gap: 8px !important;
    width: 100% !important;
    min-height: 0;
    padding: 8px 9px 12px !important;
    text-align: start !important;
  }

  .corporate-events-page .setup-step__copy h3 {
    font-size: clamp(15px, 4.2vw, 18px) !important;
    line-height: 1.08 !important;
    text-align: start !important;
    text-wrap: balance;
  }

  .corporate-events-page .setup-step__copy p {
    font-size: clamp(9.5px, 2.7vw, 11.5px) !important;
    line-height: 1.34 !important;
    text-align: start !important;
  }

  /* -------------------------------------------------------
     FAQ + Blog category tabs: no phone horizontal scroller. Let the pills
     wrap naturally to a second line, two resilient cells per row.
  ------------------------------------------------------- */
  .faq-page .faq-tabs-shell,
  .articles-page .articles-tabs-shell {
    width: calc(100% - 28px) !important;
    height: auto !important;
  }

  .faq-page .faq-tabs,
  .articles-page .articles-tabs-shell .faq-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    overflow: visible !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 6px !important;
    gap: 6px !important;
    border-radius: 26px !important;
    overscroll-behavior: auto !important;
  }

  .faq-page .faq-tab,
  .articles-page .articles-tabs-shell .faq-tab,
  .articles-page .articles-tabs-shell .faq-tab--events,
  .articles-page .articles-tabs-shell .faq-tab--games,
  .articles-page .articles-tabs-shell .faq-tab--ideas,
  .articles-page .articles-tabs-shell .faq-tab--corporate {
    flex: 0 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 40px !important;
    padding: 7px 12px !important;
    font-size: 14px !important;
    line-height: 1.12 !important;
    white-space: normal !important;
  }

  .faq-page .faq-tab.is-active,
  .articles-page .articles-tabs-shell .faq-tab.is-active {
    height: auto !important;
    min-height: 40px !important;
    padding-block: 7px !important;
  }

  /* -------------------------------------------------------
     Blog archive + related articles: two compact cards per row.
  ------------------------------------------------------- */
  .articles-page .articles-panel {
    margin-top: 24px !important;
  }

  .articles-page .articles-grid {
    gap: 30px 8px !important;
    align-items: stretch;
  }

  .articles-page .article-card {
    flex: 0 0 calc(100% - 4px) !important;
    flex-basis: calc(100% - 4px) !important;
    width: calc(100% - 4px) !important;
    max-width: none !important;
    height: auto !important;
    min-height: 228px !important;
    border-radius: 14px !important;
  }

  .articles-page .article-card__media {
        flex: 0 0 clamp(160px, 26vw, 118px) !important;
        flex-basis: clamp(160px, 26vw, 118px) !important;
        height: clamp(160px, 26vw, 118px) !important;
  }

  .articles-page .article-card__body {
        min-height: 132px !important;
        padding: 20px 15px 25px !important;
  }

  .articles-page .article-card__copy {
    gap: 6px !important;
  }

  .articles-page .article-card__title {
        display: -webkit-box;
        width: 100% !important;
        margin: 0 0 10px 0 !important;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        font-size: 16.5px !important;
        line-height: 1.2 !important;
  }

  .articles-page .article-card__excerpt {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        font-size: 14px !important;
        line-height: 1.35 !important;
        margin-bottom: 20px;
  }

  .articles-page .article-card__more {
    font-size: 11px !important;
    line-height: 1.3 !important;
  }

  .article-single-page .article-related {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 8px !important;
    width: 100% !important;
    max-width: none !important;
  }

  .article-single-page .article-related > h2 {
    grid-column: 1 / -1;
    margin-bottom: 2px;
  }

  .article-single-page .article-related .article-card {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 228px !important;
    border-radius: 14px !important;
  }

  .article-single-page .article-related .article-card__media {
    flex: 0 0 clamp(92px, 26vw, 118px) !important;
    flex-basis: clamp(92px, 26vw, 118px) !important;
    height: clamp(92px, 26vw, 118px) !important;
  }

  .article-single-page .article-related .article-card__body {
    min-height: 132px !important;
    padding: 10px 9px 12px !important;
  }

  .article-single-page .article-related .article-card__copy {
    gap: 6px !important;
  }

  .article-single-page .article-related .article-card__title {
    display: -webkit-box;
    width: 100% !important;
    margin: 0 !important;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: 13.5px !important;
    line-height: 1.2 !important;
  }

  .article-single-page .article-related .article-card__excerpt {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    font-size: 11px !important;
    line-height: 1.35 !important;
  }

  .article-single-page .article-related .article-card__more {
    font-size: 11px !important;
    line-height: 1.3 !important;
  }

  .article-single-page .article-related > .article-card:last-child:nth-of-type(odd) {
    grid-column: 1 / -1;
  }

  /* -------------------------------------------------------
     FAQ phone hierarchy: slightly smaller page heading and question/answer
     typography. English receives a slightly tighter title in english.css.
  ------------------------------------------------------- */
  .faq-page .faq-hero__content h1 {
    font-size: 24px !important;
  }

  .faq-page .faq-hero__content p {
    font-size: 12.5px !important;
    line-height: 1.5 !important;
  }

  .faq-page .faq-section .section-title {
    font-size: 28px !important;
    line-height: 1.08 !important;
  }

  .faq-page .faq-item > button {
    min-height: 60px !important;
    padding: 13px 12px !important;
    font-size: 13.5px !important;
    line-height: 1.25 !important;
  }

  .faq-page .faq-item.is-open > button {
    min-height: 66px !important;
    padding: 14px 12px !important;
  }

  .faq-page .faq-answer p {
    font-size: 12.5px !important;
    line-height: 1.55 !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.81 — MOBILE BREADCRUMB + CONTENT-HEIGHT PASS
   User QA 2026-08-25.

   Contracts:
   - Phone-only inner hero/breadcrumb typography is shared by EVERY inner page.
   - The inner hero title is 25px everywhere on phones.
   - Breadcrumb/title/description spacing is compact and content-driven.
   - Corporate experience + setup cards have no forced card height on phones.
   - FAQ/Blog tabs use smaller natural-width pills and wrap as needed.
   - Page/document/footer structural wrappers are content-height on every
     viewport; legacy Figma canvas heights must never create a blank page tail.
========================================================= */

/* ---------------------------------------------------------
   Document/page structural height ownership — ALL VIEWPORTS.
   This deliberately targets page-level wrappers only, not media/cards/forms.
--------------------------------------------------------- */
html,
body,
body.home-page,
body.contact-page,
body.gallery-page,
body.games-page,
body.single-game-page,
body.solutions-page,
body.corporate-events-page,
body.packages-page,
body.about-page,
body.articles-page,
body.article-single-page,
body.privacy-page {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

.contact-form-page .contact-main,
.faq-page .faq-main,
.gallery-page .gallery-main,
.games-page .games-main,
.single-game-page .single-game-main,
.solutions-page .solutions-main,
.corporate-events-page .corporate-main,
.packages-page .packages-main,
.about-page .about-main,
.articles-page .articles-main,
.article-single-page .article-single-main,
.privacy-page .privacy-main,
body:not(.home-page) .contact-hero {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

/* The old >=1360 Figma footer lock can leave a structural tail. The footer is
   site-wide, so its shell must be content-driven at every viewport. */
.site-footer {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}
.site-footer .footer-inner {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
  transform: none !important;
}
.site-footer .footer-contact {
  position: relative !important;
}
.site-footer .footer-contact .socials {
  position: static !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
}
.site-footer .copyright {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding: 18px 24px 22px !important;
  line-height: 1.6 !important;
  transform: none !important;
}

@media (min-width: 1360px) {
  .site-footer .footer-inner,
  .site-footer .copyright {
    width: min(calc(100% - 80px), 1248px) !important;
  }
  .site-footer .footer-inner {
    padding: 52px 0 36px !important;
  }
  .site-footer .footer-contact .socials {
    margin-top: 20px !important;
  }
}

@media (max-width: 575.98px) {
  /* -------------------------------------------------------
     Shared inner breadcrumb/hero — EVERY inner route.
     V1.0.80 scoped the requested 25px title to Games only. This is the
     authoritative phone owner for Contact, FAQ, Works, Games, Single Game,
     Solutions, Event, Packages, About, Blog, Article and Privacy families.
  ------------------------------------------------------- */
  body:not(.home-page) .contact-hero__content {
    width: calc(100% - 28px) !important;
    min-height: 0 !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  body:not(.home-page) .contact-hero__content .breadcrumb-nav {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 3px 5px !important;
    min-height: 0 !important;
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  body:not(.home-page) .contact-hero__content .breadcrumb-nav > span[aria-hidden="true"],
  body:not(.home-page) .contact-hero__content .breadcrumb-separator {
    font-size: 14px !important;
    line-height: 1 !important;
  }

  body:not(.home-page) .contact-hero__content h1 {
    margin: 5px 0 0 !important;
    font-size: 25px !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
  }

  body:not(.home-page) .contact-hero__content p {
    margin-top: 10px !important;
  }

  /* Keep the first content section close to the compact shared hero. */
  .games-page .games-page__catalog {
    padding-top: 18px !important;
  }

  /* -------------------------------------------------------
     Single Event — three cards remain side-by-side, but card height belongs
     to their content. No clamp/min/max height and no bottom-pushed copy.
  ------------------------------------------------------- */
  .corporate-events-page .corporate-experience {
    margin-top: 40px !important;
  }

  .corporate-events-page .corporate-experience__cards {
    align-items: start !important;
    margin-top: 22px !important;
  }

  .corporate-events-page .experience-card {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    align-self: start !important;
    padding: 18px 8px 13px !important;
  }

  .corporate-events-page .experience-card h3,
  .corporate-events-page .experience-card--interaction h3,
  .corporate-events-page .experience-card--space h3,
  .corporate-events-page .experience-card--games h3 {
    min-height: 0 !important;
  }

  .corporate-events-page .experience-card p,
  .corporate-events-page .experience-card--interaction p,
  .corporate-events-page .experience-card--space p,
  .corporate-events-page .experience-card--games p {
    margin: 20px 0 0 !important;
    padding: 0 !important;
  }

  /* -------------------------------------------------------
     Setup steps — same content-height contract.
  ------------------------------------------------------- */
  .corporate-events-page .corporate-steps {
    margin-top: 44px !important;
    margin-bottom: 44px !important;
  }

  .corporate-events-page .corporate-steps__grid {
    align-items: start !important;
    margin-top: 22px !important;
  }

  .corporate-events-page .setup-step {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    align-self: start !important;
    padding-bottom: 11px !important;
  }

  .corporate-events-page .setup-step__number {
    margin-bottom: 8px !important;
  }

  .corporate-events-page .setup-step__copy {
    flex: 0 0 auto !important;
    justify-content: flex-start !important;
    min-height: 0 !important;
    padding: 6px 9px 10px !important;
  }

  /* -------------------------------------------------------
     FAQ + Blog tabs — smaller natural pills. Fit as many as the row allows;
     any extra item wraps to the next line instead of scrolling.
  ------------------------------------------------------- */
  .faq-page .faq-tabs-shell,
  .articles-page .articles-tabs-shell {
    width: calc(100% - 24px) !important;
  }

  .faq-page .faq-tabs,
  .articles-page .articles-tabs-shell .faq-tabs {
    padding: 5px !important;
    gap: 4px !important;
    border-radius: 24px !important;
  }

  .faq-page .faq-tab,
  .articles-page .articles-tabs-shell .faq-tab,
  .articles-page .articles-tabs-shell .faq-tab--events,
  .articles-page .articles-tabs-shell .faq-tab--games,
  .articles-page .articles-tabs-shell .faq-tab--ideas,
  .articles-page .articles-tabs-shell .faq-tab--corporate {
    flex: 0 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 34px !important;
    max-height: none !important;
    padding: 5px 9px !important;
    font-size: 12.5px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }

  .faq-page .faq-tab.is-active,
  .articles-page .articles-tabs-shell .faq-tab.is-active {
    min-height: 34px !important;
    padding-block: 5px !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.82 — PHONE RAIL + EQUAL-ROW + FAQ STABILITY
   User QA 2026-08-25.

   Scope:
   - Phone layout only (<= 575.98px) except the page-structure height reset.
   - Every constrained mobile content rail uses calc(100% - 55px).
   - Full-bleed media/background sections are intentionally not constrained.
   - Corporate experience/setup rows stay three-up and stretch to the tallest
     card in their own row without introducing a fixed/min/max card height.
   - FAQ/Blog tabs wrap naturally and never overlap the shared inner hero.
   - Related articles remain two columns even when the final row has one card.
   - Shared breadcrumb/title spacing remains authoritative across every inner
     route; no page-specific breadcrumb fork is allowed to win on phones.
========================================================= */

/* Page-level structural wrappers remain content-height on every viewport. */
.standard-page-main,
main {
  min-height: 0 !important;
  max-height: none !important;
}

@media (max-width: 575.98px) {
  /* -------------------------------------------------------
     ONE PHONE CONTENT RAIL.
     These are constrained content owners only. Full-width hero media,
     marquees, background/glow layers and full-bleed sections are excluded.
  ------------------------------------------------------- */
  .section-shell,
  .arc-page-container,
  body:not(.home-page) .contact-hero__content,
  .home-page .intro-section,
  .home-page .packages-section,
  .home-page .clients-row,
  .home-page .reviews-carousel-shell,
  .home-page .faq-section,
  .cta-section,
  .site-footer .footer-inner,
  .site-footer .copyright,
  .contact-form-page .contact-layout,
  .gallery-page .gallery-hero__content,
  .gallery-page .gallery-section__heading,
  .gallery-page .video-gallery-section,
  .single-game-page .game-intro,
  .single-game-page .why-game,
  .single-game-page .single-game-gallery.video-gallery-section,
  .single-game-page .related-games,
  .solutions-page .solutions-offer,
  .corporate-events-page .corporate-intro,
  .corporate-events-page .corporate-experience,
  .corporate-events-page .corporate-steps,
  .packages-page .packages-page__plans,
  .about-page .story-grid,
  .about-page .moments-panel,
  .about-page .about-why__inner,
  .faq-page .faq-tabs-shell,
  .faq-page .faq-page__questions,
  .articles-page .articles-browser,
  .article-single-page .article-single-layout,
  .privacy-page .privacy-content {
    box-sizing: border-box !important;
    width: calc(100% - 55px) !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  /* Games uses an inner .section-shell; remove the old outer gutter so the
     shell resolves against the viewport and is exactly the shared phone rail. */
  .games-page .games-page__catalog {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  /* FAQ question container historically used padding as its mobile gutter.
     The rail now owns that gutter, so avoid a second nested inset. */
  .faq-page .faq-page__questions {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  /* -------------------------------------------------------
     GLOBAL INNER HERO / BREADCRUMB — EVERY INNER PAGE.
     Keep one compact rhythm everywhere; this block is intentionally later
     than all page-specific hero rules.
  ------------------------------------------------------- */
  body:not(.home-page) .contact-hero__content {
    min-height: 0 !important;
    padding-top: 25px !important;
    padding-bottom: 20px !important;
  }

  body:not(.home-page) .contact-hero__content .breadcrumb-nav {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 2px 4px !important;
    min-height: 0 !important;
    margin: 0 !important;
    font-size: 11.5px !important;
    line-height: 1.18 !important;
  }

  body:not(.home-page) .contact-hero__content .breadcrumb-nav > span[aria-hidden="true"],
  body:not(.home-page) .contact-hero__content .breadcrumb-separator {
    font-size: 13px !important;
    line-height: 1 !important;
  }

  body:not(.home-page) .contact-hero__content h1 {
    margin: 2px 0 0 !important;
    font-size: 25px !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
  }

  body:not(.home-page) .contact-hero__content p {
    margin: 10px 0 0 !important;
    font-size: 12.5px !important;
    line-height: 1.48 !important;
  }

  /* -------------------------------------------------------
     Corporate cards — row height is the tallest content card, not a clamp.
     Grid stretch makes all three equal to that natural tallest row height.
  ------------------------------------------------------- */
  .corporate-events-page .corporate-experience__cards,
  .corporate-events-page .corporate-steps__grid {
    align-items: stretch !important;
  }

  .corporate-events-page .experience-card,
  .corporate-events-page .setup-step {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    align-self: stretch !important;
  }

  .corporate-events-page .experience-card {
    justify-content: flex-start !important;
  }

  .corporate-events-page .experience-card p,
  .corporate-events-page .experience-card--interaction p,
  .corporate-events-page .experience-card--space p,
  .corporate-events-page .experience-card--games p {
    margin-top: auto !important;
    padding-top: 14px !important;
  }

  .corporate-events-page .setup-step__copy {
    flex: 1 1 auto !important;
    justify-content: flex-end !important;
  }

  /* -------------------------------------------------------
     FAQ / Blog tabs — compact natural pills, wrapping only when needed.
     FAQ no longer uses the legacy negative hero overlap.
  ------------------------------------------------------- */
  .faq-page .faq-tabs-shell {
    height: auto !important;
    margin-top: 12px !important;
    margin-bottom: 0 !important;
  }

  .faq-page .faq-tabs,
  .articles-page .articles-tabs-shell .faq-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    overflow: visible !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 4px !important;
    gap: 4px !important;
    border-radius: 22px !important;
  }

  .faq-page .faq-tab,
  .articles-page .articles-tabs-shell .faq-tab,
  .articles-page .articles-tabs-shell .faq-tab--events,
  .articles-page .articles-tabs-shell .faq-tab--games,
  .articles-page .articles-tabs-shell .faq-tab--ideas,
  .articles-page .articles-tabs-shell .faq-tab--corporate {
    flex: 0 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 30px !important;
    max-height: none !important;
        padding: 6px 20px !important;
        font-size: 12.5px !important;
    line-height: 1.08 !important;
    white-space: nowrap !important;
  }

  .faq-page .faq-tab.is-active,
  .articles-page .articles-tabs-shell .faq-tab.is-active {
    min-height: 30px !important;
    padding-block: 4px !important;
  }

  .faq-page .faq-page__questions {
    margin-top: 26px !important;
    padding-top: 0 !important;
    padding-bottom: 40px !important;
  }

  /* -------------------------------------------------------
     Single Article related cards — exactly two columns like the archive.
     Never expand an odd final card across the complete row.
  ------------------------------------------------------- */
  .article-single-page .article-related {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 8px !important;
    width: 100% !important;
    max-width: none !important;
  }

  .article-single-page .article-related > h2 {
    grid-column: 1 / -1 !important;
  }

  .article-single-page .article-related > .article-card,
  .article-single-page .article-related > .article-card:last-child:nth-of-type(odd) {
    grid-column: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  /* -------------------------------------------------------
     Tighter phone vertical rhythm across inner pages.
     No fixed page/section height is introduced here.
  ------------------------------------------------------- */
  .games-page .games-page__catalog {
    padding-top: 14px !important;
  }
  .games-page .games-page__catalog .games-grid {
    margin-top: 18px !important;
  }

  .contact-form-page .contact-layout {
    margin-top: 24px !important;
  }

  .single-game-page .game-intro {
    margin-top: 24px !important;
  }
  .single-game-page .why-game,
  .single-game-page .related-games,
  .single-game-page .single-game-faq {
    margin-top: 44px !important;
  }

  .solutions-page .solutions-events {
    padding-top: 28px !important;
  }
  .solutions-page .solutions-offer {
    margin-bottom: 48px !important;
  }

  .corporate-events-page .corporate-intro {
    gap: 14px !important;
    padding-top: 24px !important;
  }
  .corporate-events-page .corporate-experience {
    margin-top: 34px !important;
  }
  .corporate-events-page .corporate-experience__cards {
    margin-top: 18px !important;
  }
  .corporate-events-page .corporate-steps {
    margin-top: 36px !important;
    margin-bottom: 36px !important;
  }
  .corporate-events-page .corporate-steps__grid {
    margin-top: 18px !important;
  }

  .articles-page .articles-browser {
    margin-top: 16px !important;
  }
  .articles-page .articles-topics {
    gap: 18px !important;
  }
  .articles-page .articles-panel {
    margin-top: 22px !important;
  }
  .articles-page .articles-cta {
    margin-top: 48px !important;
  }

  .article-single-page .article-single-layout {
    gap: 28px !important;
    margin-top: 20px !important;
  }
  .article-single-page .article-single-content,
  .article-single-page .article-single-text-stack {
    gap: 26px !important;
  }
  .article-single-page .article-single-sidebar {
    gap: 28px !important;
  }
  .article-single-page .article-single-cta {
    margin-top: 48px !important;
  }

  .privacy-page .privacy-content {
    gap: 28px !important;
    margin-top: 24px !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.83 — PHONE FAQ RHYTHM + REVIEWS PEEK CAROUSEL
   User QA 2026-08-25.

   Scope: phone only (<= 575.98px).
   - FAQ tabs -> questions title gap is reduced to roughly one quarter of V1.0.82.
   - Home reviews return to a centered Swiper composition with visible neighbor
     card peeks and explicit previous/next controls on phones.
   - Existing Swiper remains the single owner (centeredSlides/loop/autoplay/touch).
========================================================= */
@media (max-width: 575.98px) {
  /* FAQ: V1.0.82 used 26px. Keep the title close to the tabs without overlap. */
  .faq-page .faq-page__questions {
    margin-top: 7px !important;
    padding-top: 0 !important;
  }

  /* Reviews: escape the shared content rail only for the carousel viewport.
     The section/title remain on the normal phone rhythm. */
  .home-page .reviews-carousel-shell {
    position: relative !important;
    box-sizing: border-box !important;
    width: min(100vw, 390px) !important;
    max-width: 390px !important;
    margin: 20px auto 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .home-page .reviews-carousel-shell .reviews-slider {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 18px 0 24px !important;
    overflow: hidden !important;
  }

  .home-page .reviews-slider .review-slide {
    width: min(74vw, 286px) !important;
    flex: 0 0 min(74vw, 286px) !important;
    min-width: 0 !important;
  }

  .home-page .reviews-slider .review-card {
           width: calc(100%) !important;
        transform: scale(.9) !important;
  }

  .home-page .reviews-slider .review-slide.swiper-slide-active .review-card {
    width: 100% !important;
  }

  /* Phone arrows are deliberately visible. They sit at the physical left/right
     edges while Swiper keeps the active review centered between them. */
  .home-page .reviews-nav {
    display: grid !important;
    top: 50% !important;
    width: 36px !important;
    height: 36px !important;
    border-width: 1px !important;
    background: rgba(25, 14, 44, .88) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }

  .home-page .reviews-nav--prev {
    left: 6px !important;
  }

  .home-page .reviews-nav--next {
    right: 6px !important;
  }
}


/* =========================================================
   ARCADIUM V1.0.84 — PHONE RAIL + WORKS CONTAINER + FOOTER CANVAS
   User QA 2026-08-25.

   Contracts:
   - No fallback page template may impose a viewport-derived minimum height.
   - Short pages keep the footer visually continuous to the bottom of the
     browser canvas without adding height/min-height/max-height to the page.
   - Phone constrained content rail grows from V1.0.82's 55px total gutter to
     40px total gutter (20px per side at full-width owners).
   - Home Works is constrained by the same phone rail; it is not full-bleed.
========================================================= */

/* V1.0.85 canvas rollback retained: keep the browser root on the normal
   Arcadium page surface. V1.0.86 removes the old JS footer-placement workaround;
   footer/page geometry is now entirely stylesheet/content owned. */
html {
  background-color: #130f28;
}

@media (max-width: 575.98px) {
  :root {
    --arc-phone-content-rail: calc(100% - 40px);
  }

  /* Final phone rail owner. Only constrained content participates; full-bleed
     hero media, glows, marquees and slider viewports intentionally stay out. */
  .section-shell,
  .arc-page-container,
  body:not(.home-page) .contact-hero__content,
  .home-page .intro-section,
  .home-page .packages-section,
  .home-page .clients-row,
  .home-page .faq-section,
  .cta-section,
  .site-footer .footer-inner,
  .site-footer .copyright,
  .contact-form-page .contact-layout,
  .gallery-page .gallery-hero__content,
  .gallery-page .gallery-section__heading,
  .gallery-page .video-gallery-section,
  .single-game-page .game-intro,
  .single-game-page .why-game,
  .single-game-page .single-game-gallery.video-gallery-section,
  .single-game-page .related-games,
  .solutions-page .solutions-offer,
  .corporate-events-page .corporate-intro,
  .corporate-events-page .corporate-experience,
  .corporate-events-page .corporate-steps,
  .packages-page .packages-page__plans,
  .about-page .story-grid,
  .about-page .moments-panel,
  .about-page .about-why__inner,
  .faq-page .faq-tabs-shell,
  .faq-page .faq-page__questions,
  .articles-page .articles-browser,
  .article-single-page .article-single-layout,
  .privacy-page .privacy-content {
    box-sizing: border-box !important;
    width: var(--arc-phone-content-rail) !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  /* Home Works is a normal constrained section on phones. The stage becomes
     the rail owner and the two-column mosaic fills that rail exactly. */
  body.home-page .works-stage {
    display: block !important;
    box-sizing: border-box !important;
    width: var(--arc-phone-content-rail) !important;
    height: auto !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding: 0 !important;
  }

  body.home-page .works-stage > .works-section {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}


/* =========================================================
   ARCADIUM V1.0.86 — BLOG ARCHIVE PHONE SCROLL-TAIL ROOT FIX
   User QA 2026-08-25.

   Root cause (archive only): the two decorative edge-glow pseudo-elements are
   absolutely positioned far down the Articles main canvas (phone top offsets
   920px / 1680px, 500px tall, blurred). With overflow:visible they enlarge the
   document's scrollable overflow even when the real archive content + footer
   have already ended. That produces the apparent blank block *after* footer.

   Contract:
   - No footer margin calculation.
   - No viewport/sticky-footer height, min-height or max-height.
   - No global body/footer workaround.
   - Clip only the Blog Archive main paint on phones so decorative glows cannot
     own document scroll geometry. Real archive content stays in normal flow.
========================================================= */
@media (max-width: 575.98px) {
  .articles-page .articles-main {
    overflow: clip !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.87 — FAQ PHONE TABS -> TITLE RHYTHM ROOT FIX
   User QA 2026-08-25.

   Root cause: the live FAQ archive renderer outputs
   <section class="faq-section faq-page__list">, while the V1.0.81/V1.0.83
   phone gap overrides targeted the obsolete/non-rendered .faq-page__questions
   selector. The shared .faq-section phone rule therefore kept its legacy
   58px margin + 50px top padding.

   Contract: on phones only, the rendered FAQ list owns a roughly quarter-size
   tabs-to-title gap (~27px total: 7px sibling margin + 20px section padding).
   Home FAQ and Single Game FAQ are intentionally untouched.
========================================================= */
@media (max-width: 575.98px) {
  .faq-page .faq-page__list {
    box-sizing: border-box !important;
    width: var(--arc-phone-content-rail, calc(100% - 40px)) !important;
    max-width: none !important;
    margin: 7px auto 0 !important;
    padding-top: 20px !important;
    padding-right: 0 !important;
    padding-bottom: 40px !important;
    padding-left: 0 !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.88 — PHONE PAGE-EDGE GLOW SCROLL-TAIL AUDIT
   User QA 2026-08-25.

   Root-cause audit:
   - Blog Archive was already fixed in V1.0.86 because absolutely-positioned
     blurred edge-glow pseudos could extend the scrollable document below the
     real footer while the page main remained overflow:visible.
   - FAQ uses the same pattern: .faq-main::after is a tall blurred absolute
     decoration while .faq-main is overflow:visible. Shorter FAQ result sets can
     therefore leave a small dark scroll tail after the footer.
   - Contact, Works Archive and Packages also retain page-level decorative glow
     owners with overflow:visible on phones. They are guarded here proactively
     so the same geometry bug cannot reappear when content becomes shorter.
   - Games, Single Game, Solutions, Corporate and About already clip their page
     mains in the existing stylesheet, so no duplicate override is added.

   Contract:
   - Phone only.
   - No sticky footer, no calculated footer margin, no viewport-height trick.
   - No page/body/main height, min-height or max-height is introduced.
   - Only decorative paint overflow at the page-main boundary is clipped.
========================================================= */
@media (max-width: 575.98px) {
  .contact-form-page .contact-main,
  .faq-page .faq-main,
  .gallery-page .gallery-main,
  .packages-page .packages-main,
  .articles-page .articles-main {
    overflow: hidden !important; /* fallback for older WebKit */
    overflow: clip !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.89 — PHONE ABOUT / FOOTER / HOME RHYTHM PASS
   User QA 2026-08-25.

   Scope: phone layout only (<= 575.98px), except semantic footer/header-menu
   markup needed to expose the requested destinations and clickable brand.
   - About Mission/Vision share one row and equalize naturally to the taller card.
   - About Why Arcadium uses two cards per row and row-height equalization.
   - Footer brand logo aligns to text start (RTL right / EN left) and links Home.
   - Privacy phone decorative gradient/glow layer is removed.
   - Home inter-section whitespace is reduced to roughly one quarter of the
     previous phone rhythm; component internals keep their own spacing.
   - Home Reviews title is centered independently of document direction.
========================================================= */
@media (max-width: 575.98px) {
  /* ABOUT — main story remains full-width; Mission + Vision share the next row. */
  .about-page .story-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 12px !important;
  }

  .about-page .story-card--about {
    grid-column: 1 / -1 !important;
    order: -1 !important;
  }

  .about-page .story-card--mission,
  .about-page .story-card--vision {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 20px 12px 18px !important;
  }

  .about-page .story-card--mission h2,
  .about-page .story-card--vision h2 {
    font-size: clamp(21px, 6.1vw, 26px) !important;
    line-height: 1.08 !important;
  }

  .about-page .story-card--mission p,
  .about-page .story-card--vision p {
    margin-top: auto !important;
    padding-top: 16px !important;
    font-size: clamp(11.5px, 3.35vw, 13.5px) !important;
    line-height: 1.45 !important;
  }

  /* ABOUT — four Why cards become two-up; each grid row owns the taller card. */
  .about-page .why-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 34px 12px !important;
    width: 100% !important;
    max-width: none !important;
    margin-top: 42px !important;
  }

  .about-page .why-card,
  .about-page .why-card:nth-child(odd),
  .about-page .why-card:nth-child(even) {
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 34px 12px 18px !important;
  }

  .about-page .why-card h3 {
    font-size: clamp(19px, 5.5vw, 23px) !important;
    line-height: 1.08 !important;
  }

  .about-page .why-card p {
    margin-top: auto !important;
    padding-top: 22px !important;
    font-size: clamp(11.5px, 3.35vw, 13.5px) !important;
    line-height: 1.42 !important;
  }

  .about-page .why-card__icon {
    top: -24px !important;
    width: 52px !important;
    height: 52px !important;
  }

  /* FOOTER — brand begins where the copy begins, not centered independently. */
  .site-footer .footer-brand {
    display: flex !important;
    flex-direction: column !important;
    text-align: start !important;
  }
  body[dir="rtl"] .site-footer .footer-brand { align-items: flex-end !important; }
  body[dir="ltr"] .site-footer .footer-brand { align-items: flex-start !important; }

  .site-footer .footer-logo {
    display: block !important;
    margin: 0 !important;
  }

  .site-footer .footer-brand p {
    width: 100% !important;
    margin: 10px 0 0 !important;
    text-align: start !important;
  }

  /* Privacy: remove only the decorative page-level purple glow/gradient layer. */
  .privacy-page .privacy-edge-glows {
    display: none !important;
  }

  /* HOME — compact the whitespace between major sections to ~25% of the
     previous phone rhythm without shrinking card/media internals. */
  .home-page .games-section {
    padding-top: 12px !important;
    padding-bottom: 17px !important;
  }
  .home-page .events-section {
    padding-top: 11px !important;
    padding-bottom: 17px !important;
  }
  .home-page .packages-section {
    padding-top: 11px !important;
    padding-bottom: 19px !important;
  }
  .home-page .clients-section {
    padding-top: 9px !important;
    padding-bottom: 6px !important;
  }
  body.home-page .works-stage {
    margin-top: 7px !important;
  }
  .home-page .reviews-section {
    margin-top: 14px !important;
    padding-top: 16px !important;
    padding-bottom: 18px !important;
  }
  .home-page .faq-section {
    margin-top: 14px !important;
    padding-top: 13px !important;
    padding-bottom: 17px !important;
  }

  .home-page .reviews-section > .section-title {
    box-sizing: border-box !important;
    width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
  }
}

/* =========================================================
   ARCADIUM V1.0.90 — CMS MENU OWNERSHIP + PHONE HEADER/FOOTER/REVIEWS FIXES
   User QA 2026-08-25.

   - Header/footer menu labels are persisted in WordPress by functions.php;
     no presentation-only menu injection is allowed here.
   - Docked phone header must remain above every page section. main.js reparents
     it to body while docked; these z-indexes keep drawer/popups above it.
   - Footer brand aligns to logical text start, using a square logo box so the
     1024x1024 transparent source is not visually inset by a wide object-fit box.
   - Home Reviews title is centered against the physical phone viewport.
========================================================= */
@media (max-width: 575.98px) {
  .site-header.is-scrolled,
  .site-header.contact-header.is-scrolled {
    z-index: 3000 !important;
  }
  .mobile-drawer { z-index: 4001 !important; }
  .drawer-backdrop { z-index: 4000 !important; }

  .site-footer .footer-brand {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    width: 100% !important;
    text-align: start !important;
  }
  .site-footer .footer-logo {
    align-self: flex-start !important;
    width: 112px !important;
    height: 112px !important;
    margin: 0 !important;
  }
  .site-footer .footer-logo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }
  .site-footer .footer-brand p {
    width: 100% !important;
    margin: 8px 0 0 !important;
    text-align: start !important;
  }

  body.home-page .reviews-section {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  body.home-page .reviews-section > .section-title {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 20px !important;
    padding-left: 20px !important;
    text-align: center !important;
    inset-inline: auto !important;
  }
}

body:not(.home-page) .contact-hero__content h1{
    display: none !important;
}



.contact-form-page .booking-form {
    
    min-height: unset !important; 
}

/* =========================================================
   PATCH — iOS RIBBON GROUP GEOMETRY
   لا يغير شكل الـ ribbons أو سرعتها أو ترتيبها
========================================================= */

/*
 * Desktop:
 *
 * Row 1:
 * 5 × 202.8 + 4 × 32 = 1142px
 *
 * Row 2:
 * 173 + 173 + 172 + 172
 * + (3 × 26)
 * + 6px first-item margin
 * = 774px
 */

.home-page .ribbon-marquee--one {
    --arc-ribbon-group-width: 1142px;
}

.home-page .ribbon-marquee--two {
    --arc-ribbon-group-width: 774px;
}

.home-page .ribbon-marquee .ribbon-group {
    width: var(--arc-ribbon-group-width) !important;
    min-width: var(--arc-ribbon-group-width) !important;
    max-width: var(--arc-ribbon-group-width) !important;

    flex: 0 0 var(--arc-ribbon-group-width) !important;
}


/*
 * Tablet + Mobile:
 *
 * Row 1:
 * 5 × 160 + 4 × 18 = 872px
 *
 * Row 2:
 * 4 × 145 + 3 × 16 = 628px
 */

@media (max-width: 991.98px) {

    .home-page .ribbon-marquee--one {
        --arc-ribbon-group-width: 872px;
    }

    .home-page .ribbon-marquee--two {
        --arc-ribbon-group-width: 628px;
    }

}


/*
 * Safari / iOS:
 * متخليش WebKit يعمل layer منفصلة دائمة للـ track.
 */
@supports (-webkit-touch-callout: none) {

    .home-page .ribbon-track {
        will-change: auto !important;
    }

}
/* =========================================================
   FIX — CLIENT SEPARATOR ABOVE NEXT CARD ON MOBILE
========================================================= */

@media (max-width: 575.98px) {

    /*
     * كل slides تبدأ على layer عادي
     */
    body.home-page .clients-slider .client-slide {
        position: relative !important;
        z-index: 1 !important;
    }

    /*
     * الـ active slide هو الكارت الشمال،
     * والـ separator بتاعه موجود على الحد بينه وبين الكارت اليمين.
     *
     * لازم الـ parent نفسه يبقى فوق الـ next slide،
     * لأن z-index على separator لوحده لا يستطيع الهروب
     * من stacking context بتاع Swiper.
     */
    body.home-page
    .clients-slider
    .client-slide.swiper-slide-active {
        z-index: 20 !important;
    }

    /*
     * الأيقونة نفسها فوق محتوى الـ active slide.
     */
    body.home-page
    .clients-slider
    .client-slide.swiper-slide-active
    .client-separator {
        z-index: 30 !important;
    }

}