/* ### Breakpoints ### */
@font-face { font-family: "PP Neue World"; src: url("https://www.bonhams.com/assets/fonts/v2/PPNeueWorld-Regular.woff2") format("woff2"), url("https://www.bonhams.com/assets/fonts/v2/PPNeueWorld-Regular.woff") format("woff"); }

@font-face { font-family: "PP Right Grotesk"; src: url("https://www.bonhams.com/assets/fonts/v2/PPRightGrotesk-Light.woff2") format("woff2"), url("https://www.bonhams.com/assets/fonts/v2/PPRightGrotesk-Light.woff") format("woff"); font-style: normal; font-weight: normal; }

@font-face { font-family: "PP Right Grotesk"; src: url("https://www.bonhams.com/assets/fonts/v2/PPRightGrotesk-LightItalic.woff2") format("woff2"), url("https://www.bonhams.com/assets/fonts/v2/PPRightGrotesk-LightItalic.woff") format("woff"); font-style: italic; font-weight: normal; }

@font-face { font-family: "PP Right Grotesk"; src: url("https://www.bonhams.com/assets/fonts/v2/PPRightGrotesk-Medium.woff2") format("woff2"), url("https://www.bonhams.com/assets/fonts/v2/PPRightGrotesk-Medium.woff") format("woff"); font-weight: bold; font-style: normal; }

* { font-family: "PP Right Grotesk", sans-serif; -webkit-font-smoothing: antialiased; }

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font-family: "PP Right Grotesk", sans-serif; font-weight: normal; vertical-align: baseline; }

h1, h2, h3, h4, h5, h6 { font-family: "PP Neue World", sans-serif; }

strong { font-family: "PP Right Grotesk", sans-serif; font-weight: bold; }

input:focus, textarea:focus, select:focus { outline: none; }

input:required, textarea:required, select:required { box-shadow: none; }

input:invalid, textarea:invalid, select:invalid { box-shadow: none; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

body { line-height: 1; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after { content: ''; content: none; }

q:before, q:after { content: ''; content: none; }

table { border-collapse: collapse; border-spacing: 0; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

blockquote, q { quotes: none; }

blockquote:before, q:before, blockquote:after, q:after { content: ''; content: none; }

/* #################### #### Scrollbar ##### #################### */
body::-webkit-scrollbar { width: 12px; }

body::-webkit-scrollbar-thumb { background-color: rgba(0, 0, 0, 0.14); outline: none; }

a { color: #5D4C8B; text-decoration: none; text-shadow: 0.2px 0.2px #5D4C8B; }

a:hover { text-decoration: underline; }

.App { position: relative; padding-bottom: 480px; background: #FAFAFA; min-height: calc(100vh - 480px); }

@media screen and (min-width: 1024px) { .App { padding-bottom: 300px; padding-top: 120px; min-height: calc(100vh - 300px); } }

.shell { padding: 0 15px; position: relative; }

@media screen and (min-width: 1024px) { .shell { padding: 0 24px; } }

@media screen and (min-width: 1440px) { .shell { padding: 0; max-width: 1024px; margin: 0 auto; } }

.pb80 { padding-bottom: 80px; }

@media screen and (min-width: 1024px) { .pb80 { padding-bottom: 200px; } }

.shell_banner { padding: 0 15px; background: #FFFFFF; }

@media screen and (min-width: 1024px) { .shell_banner { height: auto; } }

.shell_banner_small { padding: 0 15px; background: #FFFFFF; }

@media screen and (min-width: 1024px) { .shell_banner_small { height: 450px; } }

@media screen and (min-width: 1440px) { .shell_banner_small { height: 450px; } }

.section.carousel { padding: 25px 0; }

.section.why-sell-with-us p:last-of-type { margin-bottom: 0; }

.section.why-sell-with-us h3 { font-family: "PP Right Grotesk", sans-serif; font-weight: bold; font-size: 16px; margin: 1em 0; }

.section.why-sell-with-us ul { list-style-type: circle; padding-left: 2em; }

.section.why-sell-with-us ul li { color: #0C0C0C; line-height: 1.5; }

.section_head { margin-bottom: 15px; }

.section_head h1 { font-size: 32px; line-height: 1; text-transform: uppercase; position: relative; padding: 25px 0 15px 0; color: #0C0C0C; }

.section_head h1::before { content: ""; position: absolute; top: 0; display: block; width: 100%; height: 1px; background: rgba(0, 0, 0, 0.14); }

.section_head > a:hover { text-decoration: none; }

.section_body { padding-bottom: 25px; }

.section_body p { font-family: "PP Right Grotesk", sans-serif; font-size: 16px; color: #0C0C0C; line-height: 1.5; }

.section_body h1 { position: relative; font-size: 24px; font-weight: 400; padding: 25px 0 15px 0; line-height: 1.15; color: #0C0C0C; }

/* ### Breakpoints ### */
.consignment { padding: 90px 0 73px 0; }

@media screen and (min-width: 768px) { .consignment { padding: 70px 0 0 0; } }

.consign_carousel { margin-bottom: 40px; display: flex; }

.consign_steps { display: flex; flex-direction: column; margin-bottom: auto; }

@media screen and (min-width: 768px) { .consign_steps { margin-bottom: 40px; } }

.consign_steps p { text-align: center; line-height: 1.2; }

.consign_steps .steps { display: flex; justify-content: space-between; flex-direction: column; }

@media screen and (min-width: 1024px) { .consign_steps .steps { flex-direction: row; } }

.steps div[class*="step-"] { width: 100%; padding-bottom: 10px; }

@media screen and (min-width: 1024px) { .steps div[class*="step-"] { width: 25%; } }

@media screen and (min-width: 1440px) { .steps div[class*="step-"] { width: 25%; } }

.steps img { margin: 0 auto 20px auto; display: block; }

.consign_steps_alt { display: flex; flex-direction: column-reverse; justify-content: space-between; }

@media screen and (min-width: 1024px) { .consign_steps_alt { flex-direction: row; justify-content: space-between; } }

@media screen and (min-width: 1440px) { .consign_steps_alt { flex-direction: row; justify-content: space-between; } }

.consign_steps_alt_img { width: 100%; }

@media screen and (min-width: 1024px) { .consign_steps_alt_img { width: 60%; } }

@media screen and (min-width: 1440px) { .consign_steps_alt_img { width: 60%; } }

.consign_steps_alt_img img { width: 100%; }

.consign_steps_alt_map { display: flex; flex-direction: column; justify-content: center; }

.consign_steps_alt_map .map_text_box { width: 100%; }

@media screen and (min-width: 1024px) { .consign_steps_alt_map .map_text_box { width: 256px; } }

.consign_steps_alt_map .alt_text > p { margin-top: 0; }

.alt_map img { display: block; margin: 0 auto; }

.alt_text { text-align: center; }

.messages { margin-top: 20px; background: #FFFFFF; height: 300px; display: flex; justify-content: center; padding-top: 40px; }

#succIcon { height: 150px; }

#errorIcon { height: 80%; }

.success { width: 60%; color: #0C0C0C; font-size: 18px; font-weight: 500; padding-top: 50px; text-align: center; vertical-align: middle; line-height: 1.2; }

.error { width: 60%; color: #0C0C0C; font-size: 18px; font-weight: 500; padding-top: 100px; text-align: center; vertical-align: middle; line-height: 1.2; }

.worldmap { padding-top: 20px; }

#carouselslick { position: relative; }

.carousel_heading { position: absolute; background: rgba(0, 0, 0, 0.2); z-index: 5; height: 100%; }

@media screen and (min-width: 1024px) { .carousel_heading { z-index: 10; } }

@media screen and (min-width: 1440px) { .carousel_heading { z-index: 10; } }

.carousel_heading h1 { color: #FFFFFF; font-family: "PP Right Grotesk", sans-serif; font-size: 12px; font-weight: 500; padding-top: 35px; padding-left: 5px; }

@media screen and (min-width: 768px) { .carousel_heading h1 { height: 180px; padding-top: 80px; padding-left: 10px; padding-right: 10px; } }

@media screen and (min-width: 1024px) { .carousel_heading h1 { font-size: 30px; font-weight: 500; padding-top: 100px; padding-left: 10px; padding-right: 10px; } }

@media screen and (min-width: 1440px) { .carousel_heading h1 { font-size: 30px; font-weight: 500; padding-top: 100px; padding-left: 10px; padding-right: 10px; } }

/* ### Breakpoints ### */
.footer { position: absolute; bottom: 0; left: 0; right: 0; background: #FFFFFF; border-top: 1px solid #5D4C8B; box-shadow: 4px 4px 4px 4px rgba(0, 0, 0, 0.12), inset 0 -1px 0 0 #dadce0; }

.footer_inner { margin: 0 10px; display: flex; flex-direction: column; }

@media screen and (min-width: 768px) { .footer_inner { margin: 15px 60px 15px 60px; } }

@media screen and (min-width: 1024px) { .footer_inner { margin: 30px 0 0 0; flex-direction: row; justify-content: space-between; } }

.footer_left { letter-spacing: 0.5px; padding: 15px 0 35px 0; position: relative; }

@media screen and (min-width: 768px) { .footer_left { padding: 0 0 35px 0; } }

@media screen and (min-width: 1024px) { .footer_left { width: 30%; padding-right: 10px; } }

.footer_left h3 { font-size: 14px; font-weight: 400; padding-bottom: 20px; }

@media screen and (min-width: 768px) { .footer_left h3 { font-size: 16px; } }

.footer_left p { font-size: 16px; line-height: 1.5; margin-top: 0; }

@media screen and (min-width: 1024px) { .footer_left::after { content: ""; position: absolute; top: 0; right: 0; display: block; width: 1px; height: 100%; background: #5D4C8B; } }

.footer_middle { letter-spacing: 0.5px; padding-bottom: 45px; position: relative; }

@media screen and (min-width: 768px) { .footer_middle { padding-bottom: 30px; } }

@media screen and (min-width: 1024px) { .footer_middle { width: auto; } }

@media screen and (min-width: 1440px) { .footer_middle { width: 44%; } }

.footer_explore { display: flex; flex-direction: column; }

@media screen and (min-width: 1024px) { .footer_explore-nav { width: 90%; margin: auto; } }

.footer_explore-nav h3 { font-size: 14px; font-weight: 400; padding-bottom: 15px; padding-left: 8px; }

@media screen and (min-width: 768px) { .footer_explore-nav h3 { font-size: 16px; } }

@media screen and (min-width: 1440px) { .footer_explore-nav h3 { padding-bottom: 20px; padding-left: 7px; text-align: left; font-size: 16px; } }

.footer_explore-nav ul { display: flex; flex-wrap: wrap; justify-content: space-between; row-gap: 8px; }

.explore_nav_item { width: 33%; }

.explore_nav_item a { font-size: 16px; color: #0C0C0C; text-align: center; text-shadow: none; }

.explore_nav_item a > img { margin: auto; vertical-align: middle; display: inline-block; }

@media screen and (min-width: 1024px) { .footer_middle::after { content: ""; position: absolute; top: 0; right: 0; display: block; width: 1px; height: 100%; background: #5D4C8B; } }

.footer_right { padding-bottom: 35px; display: flex; justify-content: center; }

@media screen and (min-width: 1024px) { .footer_right { width: 30%; padding: 0; display: inline; } }

@media screen and (min-width: 1440px) { .footer_right { display: flex; flex-direction: column; justify-content: flex-start; width: 21%; padding-left: 30px; } }

.footer_right .footer_right_ctn { margin-left: 0; }

@media screen and (min-width: 1024px) { .footer_right .footer_right_ctn { margin-left: 15%; } }

@media screen and (min-width: 1440px) { .footer_right .footer_right_ctn { margin-left: 0; } }

.follow { margin-bottom: 15px; margin-right: 10px; }

@media screen and (min-width: 768px) { .follow { width: 100%; margin-bottom: 10px; } }

.follow h3 { font-size: 16px; font-weight: 400; line-height: 1.2; text-align: center; }

@media screen and (min-width: 768px) { .follow h3 { font-size: 16px; } }

@media screen and (min-width: 1024px) { .follow h3 { padding-right: 30px; text-align: left; } }

@media screen and (min-width: 1440px) { .follow h3 { margin-top: 0; padding-right: 0; } }

.footer_right .social_links { display: flex; flex-direction: row; }

.social_links .social_icon { color: #5D4C8B; height: 25px; width: 25px; display: inline-block; overflow: hidden; vertical-align: middle; margin-right: 5px; }

@media screen and (min-width: 768px) { .social_links .social_icon { height: 30px; width: 30px; } }

.footer_bottom { display: flex; flex-direction: column; margin-bottom: 30px; }

@media screen and (min-width: 1024px) { .footer_bottom { flex-direction: row; justify-content: space-between; margin-bottom: 30px; } }

.footer_logo { display: flex; align-items: center; justify-content: center; }

.footer_logo a img { width: 94px; height: 20px; margin: auto; display: block; }

@media screen and (min-width: 1024px) { .footer_logo a img { flex-direction: row; justify-content: space-between; } }

.copyright { font-size: 14px; text-align: center; margin: auto; display: block; }

@media screen and (min-width: 1024px) { .copyright { flex-direction: row; justify-content: space-between; margin-right: 10px; } }

.copyright p { letter-spacing: 1px; }

.divider { display: none; }

@media screen and (min-width: 1024px) { .divider { display: block; width: 1.9px; background-image: url("../../assets/divider.png"); } }

.consign_form { margin-top: 30px; background: #FFFFFF; display: flex; flex-direction: column; justify-content: space-between; padding: 30px; }

@media screen and (min-width: 1024px) { .consign_form { flex-direction: row; justify-content: space-between; } }

@media screen and (min-width: 1440px) { .consign_form { flex-direction: row; justify-content: space-between; } }

.consign_form.hidden { display: none; }

label { padding-bottom: 3px; }

.form_main_left { display: flex; flex-direction: column; justify-content: space-between; }

@media screen and (min-width: 1024px) { .form_main_left { width: calc(55% - 50px); } }

@media screen and (min-width: 1440px) { .form_main_left { width: calc(55% - 50px); } }

.form_main_right { width: 100%; display: flex; flex-direction: column; justify-content: space-between; }

@media screen and (min-width: 1024px) { .form_main_right { width: calc(45% - 15px); justify-content: unset; } }

.form_group { margin-bottom: 20px; margin-right: 10px; }

.form_images { display: flex; flex-direction: column; justify-content: space-around; width: 100%; }

.form_image { padding: 20px 10px 10px 10px; display: flex; flex-direction: column; border-width: 2px; border-color: #EAEAE9; border-style: dashed; border-radius: 4px; }

@media screen and (min-width: 768px) { .form_image { padding: 10px; } }

.form_image > p, .form_image > .drag-drop-text-block > p { text-align: center; font-size: 14px; margin: 0 auto; }

.form_image .drag-drop-text-block { display: none; }

@media screen and (min-width: 768px) { .form_image .drag-drop-text-block { display: block; } }

.form_image img { display: block; width: 40px; height: 40px; margin: 0 auto; }

.form-action { margin-top: 40px; }

.form_img_info { margin-top: 10px; }

.form_img_info h3 { font-family: "PP Right Grotesk", sans-serif; text-align: center; color: #0C0C0C; text-transform: capitalize; }

.form_img_info p { text-align: center; }

#browsebutton { margin: auto auto; }

#browsebutton .uppy-FileInput-btn { padding: 10px 15px; border-radius: 4px; border: 2px solid #5D4C8B; color: #5D4C8B; font-weight: bold; transition: .3s; }

#browsebutton .uppy-FileInput-btn:hover { background-color: #5D4C8B1A; }

#uploadimg { text-align: center; text-transform: capitalize; font-family: "PP Right Grotesk", sans-serif; padding: 10px; font-size: 12px; margin: 0 auto; transition: .3s; border: 1px solid #5D4C8B; }

#uploadimg:hover { background: #5D4C8B; color: #FFFFFF; text-decoration: none; }

.form_motors { padding-top: 56px; }

.form_motors div:not(.motor_row-3) > div.form_group:nth-of-type(1) { margin-right: 40px; }

.motor_row-1 { display: flex; }

.motor_row-2 { display: flex; }

.motor_row-4 { display: flex; }

.motor_row-5 { display: flex; justify-content: space-around; }

#id_right_left_drive { margin-top: 14px; }

#formMotorCar .motor_row-5 > div:nth-of-type(1) { width: 50%; margin-right: 40px; }

#formMotorCar .motor_row-5 > div:nth-of-type(2) { width: 55%; }

#formMotorCycle .motor_row-5 > div:nth-of-type(1) { width: 45%; margin-right: 40px; }

#formMotorCycle .motor_row-5 > div:nth-of-type(2) { width: 55%; }

.form_submit { text-align: center; }

.form_submit .form_action { margin-top: 5px; }

#formsubmit { text-align: center; text-transform: capitalize; font-family: "PP Right Grotesk", sans-serif; padding: 13px 20px; font-size: 16px; font-weight: bold; background-color: #FFBA0A; color: #0C0C0C; transition: .3s; border-radius: 4px; text-decoration: none; cursor: pointer; border: 2px solid transparent; text-shadow: none; }

#formsubmit:hover { border-color: #5D4C8B; background-color: #FFFFFF; color: #5D4C8B; }

.text-field { width: calc(100% - 8px); border: 1px solid #EAEAE9; font-family: "PP Right Grotesk", sans-serif, sans-serif; border-radius: 4px; padding: 8px; color: #0C0C0C; font-size: 16px; line-height: 1.2; font-weight: 300; }

.text-area { padding: 14px; border: 1px solid #EAEAE9; font-family: "PP Right Grotesk", sans-serif, sans-serif; color: #0C0C0C; font-size: 16px; line-height: 1.2; font-weight: 300; min-width: 200px; width: calc(100% - 30px); }

@media screen and (min-width: 768px) { .text-area { width: calc(100% - 34px); } }

.drop-down { font-family: "PP Right Grotesk", sans-serif; -webkit-appearance: none; -moz-appearance: none; display: block; width: calc(100% + 10px); height: 38px; padding: 8px; margin-bottom: 12px; font-size: 14px; line-height: 1.42857143; color: #0C0C0C; vertical-align: middle; background-color: #FFFFFF; border: 1px solid #EAEAE9; border-radius: 3px; background: url("../../assets/drop-down-arrow.png") no-repeat right #FFFFFF; background-size: 10px; background-position: 99%; }

.drop-down > option { -webkit-appearance: none; background-color: #FFFFFF !important; }

#check.checkbox:checked { border-color: #5D4C8B; background-color: #5D4C8B; }

input::placeholder { color: #8A8A87; font-size: 16px; }

.errorlist { color: #C90000; padding: 5px 0; }

#image_filename { display: none; max-height: 100px; margin-top: 10px; overflow-y: auto; border-width: 1px; border-color: #f1f1f1 #f1f1f1 #f1f1f1; border-style: dashed; }

#image_filename > div > p { font-family: "PP Right Grotesk", sans-serif; font-size: 12px; padding-left: 5px; }

#image_filename > div > p > img { height: 10px; width: 10px; padding-right: 5px; }

#drop-area { border: 2px dashed #ccc; border-radius: 20px; width: 480px; height: 200px; margin: 50px auto; padding: 20px; }

#drop-area.highlight { border-color: purple; overflow: scroll; }

#submitAnother { font-weight: 600; }

.uppy-DashboardContent-bar { display: none !important; }

.uppy-Dashboard-inner { background-color: transparent !important; border: none !important; }

.uppy-Dashboard-files { overflow-y: auto !important; max-height: 170px !important; }

/* ### Breakpoints ### */
.header { position: fixed; top: 0; left: 0; right: 0; z-index: 3000; background: #FFFFFF; box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), inset 0 -1px 0 0 #dadce0; }

.header_inner { height: 80px; display: flex; flex-direction: row-reverse; justify-content: space-between; align-items: center; padding: 0; }

@media screen and (min-width: 1024px) { .header_inner { padding: 40px 0 0 0; height: 150px; flex-direction: column; align-items: flex-start; } }

.logo { font-size: 0; padding-bottom: 7px; }

@media screen and (min-width: 1024px) { .logo { display: none; } }

@media screen and (min-width: 1024px) { .mobsearch { display: none; } }

.mobsearch i { font-size: 35px; }

.logo img { width: 150px; }

.btn-menu { height: 40px; width: 50px; border: none; background: transparent; outline: none; z-index: 1; }

@media screen and (min-width: 1024px) { .btn-menu { display: none; } }

.search-mobile { position: relative; width: 100%; height: 50px; display: flex; align-items: center; }

.search-mobile i { position: absolute; left: 15px; top: 50%; transform: translateY(-50%); z-index: 15; }

.search-mobile i:last-child { position: absolute; left: auto; right: 15px; top: 50%; transform: translateY(-50%); z-index: 15; }

.search-mobile input { position: relative; width: 100%; height: 100%; padding: 0 60px; box-sizing: border-box; outline: none; border: none; font-size: 1em; }

.search-mobile input:focus { z-index: 10; box-shadow: 0 0 0 1600px rgba(0, 0, 0, 0.3); }

.nav-mobile { display: block; position: absolute; top: 0; left: -1280px; right: 70px; max-width: 1280px; background-color: #FFFFFF; transition: left ease-in .2s; height: 100vh; overflow: scroll; }

@media screen and (min-width: 1024px) { .nav-mobile { display: none; } }

.nav-mobile a { display: block; position: relative; padding: 13px 0 13px 15px; font-size: 16px; font-weight: 400; letter-spacing: .25px; text-decoration: none; text-shadow: none; color: #0C0C0C; }

.nav-mobile a:hover { color: #0C0C0C; }

.nav-mobile .active { background: rgba(0, 0, 0, 0.1); }

.nav-mobile ul > li > ul { display: none; }

.nav-mobile ul > li > ul > li > a { padding-left: 32px; }

.logo-menu { height: 80px; display: flex; align-items: center; padding-left: 15px; border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

.logo-menu img { width: 140px; }

.asider { position: relative; height: 50%; width: 100%; align-items: center; z-index: 10; }

@media screen and (min-width: 1024px) { .asider { display: flex; justify-content: flex-end; } }

.asider:before { content: ""; position: absolute; bottom: 0; left: 0; height: 1px; width: 100%; }

.logo-aside { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); font-size: 0; width: 235px; }

.logo-aside img { width: 150px; display: block; margin-left: 20px; }

@media screen and (min-width: 1024px) { .logo-aside img { width: 235px; } }

.nav-sign ul li { display: inline-block; }

.nav-sign ul a { display: block; padding: 3px; min-width: 50px; font-size: 14px; text-transform: capitalize; color: #0C0C0C; text-decoration: none; transition: .2s linear; }

.nav-sign ul a:hover { color: #5D4C8B; background-position: left; }

.header_under { position: absolute; left: 0; top: 100%; width: 0; z-index: -1; height: 48px; background: #FFFFFF; border-bottom: 1px solid rgba(0, 0, 0, 0.1); transition: .2s linear; }

.nav-sign ul li { display: inline-block; }

.nav-sign ul a { display: block; padding: 3px; min-width: 50px; font-size: 14px; text-transform: capitalize; color: #0C0C0C; text-decoration: none; transition: .2s linear; }

.nav-sign ul a:hover { color: #5D4C8B; background-position: left; }

.nav-primary { display: none; }

@media screen and (min-width: 1024px) { .nav-primary { height: 50%; width: 100%; display: flex; justify-content: space-between; align-items: center; } }

.nav-primary > ul { display: flex; }

.nav-primary > ul > li > a { cursor: pointer; position: relative; display: block; padding: 24px 0; margin-right: 40px; font-size: 16px; font-weight: 400; letter-spacing: .25px; text-decoration: none; text-shadow: none; color: #0C0C0C; }

.nav-primary > ul > li > a:before { content: ""; position: absolute; bottom: 0; left: 0; width: 0; height: 2px; background: #5D4C8B; transition: linear .3s; }

.nav-primary > ul > li > a:hover:before { width: 100%; }

.nav-primary .active:before { width: 100%; }

.nav-primary { position: relative; }

.nav-primary > ul > li > ul { position: absolute; top: 100%; left: -150vw; right: 0; width: 100vw; display: flex; transition: .2s linear; }

.nav-primary > ul > li > ul > li > a { display: block; padding: 16px 0; margin-right: 40px; font-size: 16px; font-weight: 400; letter-spacing: .25px; text-decoration: none; color: #0C0C0C; font-size: 16px; }
