html, body {
    --sony-bg-color: white;
    --sony-font-color: #121212;
    --sony-secondary-color: #1A1A1A;
    --sony-secondary-font-color: #8B8B8B;
    --sony-third-font-color: #272D37;
    --sony-fourth-font-color: #212121;
    --sony-accent-color: #2F6EC6;
    --sony-color-01: #939BAF;
    --sony-color-02: #F4F4F4;
    --sony-color-03: #D9F1FF;
    --sony-color-04: #EDEDED;
    --sony-color-05: #797D8D;
    --sony-color-06: #F3F5FF;
    --sony-color-07: #F0F2F7;
    --sony-color-08: #DFE1F3;
    --sony-color-09: #E8EBF3;
    --sony-color-10: #EFEFEF;
    --sony-color-11: #F1F2F8;
    --sony-color-12: #7E7E7E;
    --sony-color-13: #EDF0FA;
    --sony-color-14: #2CB500;
    --sony-color-15: #DCEDFF;
    --sony-color-16: rgb(0, 21, 71, 0.59);
    --sony-color-17: #DADEE7;
    --sony-color-18: #3D49FF;
    --sony-color-19: #878A93;
    --sony-color-20: #D3D4D9;
    --sony-color-21: #949494;
    --sony-color-22: #005FE6;
    --sony-color-23: #E6EFF7;
    --sony-color-24: #848484;
    --sony-color-25: #212123;
    --sony-color-26: #DCEAFF;
    --sony-color-27: #E9E9E9;
    --sony-color-28: #DBDFE8;
    --sony-color-29: #9AA2B0;
    --sony-color-30: #F4F6FB;
    --sony-color-31: #EAEDF3;
    --sony-color-32: #F2F2F6;
    --sony-color-33: #EAF4FF;
    --sony-color-34: #C1E0FF;
    --sony-color-35: #E0E0E0;
    --sony-color-36: #5D6377;
    --sony-color-37: #000616;
    --sony-color-38: rgba(255, 255, 255, 0.70);
    --sony-color-39: #F1F5FB;
    --sony-color-40: #BE1315;
    --sony-color-41: #FFF7F5;
    --sony-color-42: 255, 194, 195;
    --sony-color-43: #959AA6;
    --sony-color-favorite: #F76153;
    --sony-loading: var(--sony-font-color);
    --sony-error: #FF2F2F;
    --sony-green: #39AE27;

    color: var(--sony-font-color);
    background-color: var(--sony-bg-color);

    /*--sony-accent-color: #2F6EC6;*/
    /*--sony-secondary-font-color: #878A93;*/
    --sony-background-color: var(--site-sony-color-01);
    /*--sony-bg-color: white;*/
    /*background-color: white;*/

    font-family: 'Unbounded';
    width: 100%;
    height: 100%;
    margin: 0;

    scrollbar-gutter: stable;

    --site-tg-linear: linear-gradient(
            to bottom,
            #2AABEE 0%,
            #229ED9 100%
    );

    --site-shadow: 0 0 16px rgba(0, 0, 0, 0.16);
    --site-sony-color-01: #E6EFF7;
    --site-sony-color-02: #939BAF;
    --site-sony-color-03: #F3F5FF;
    --site-sony-color-04: #EFEFEF;
}

h1:focus {
    outline: none;
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border-width: 0;
    border-style: solid;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);

    /*user-select: none;*/
    /*-webkit-user-select: none;*/
    /*-moz-user-select: none;*/
    /*-ms-user-select: none;*/
}

/*a, .btn-link {*/
/*    color: #006bb7;*/
/*}*/

/*.btn-primary {*/
/*    color: #fff;*/
/*    background-color: #1b6ec2;*/
/*    border-color: #1861ac;*/
/*}*/

/*.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {*/
/*  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;*/
/*}*/

/*.content {*/
/*    padding-top: 1.1rem;*/
/*}*/

/*h1:focus {*/
/*    outline: none;*/
/*}*/

/*.valid.modified:not([type=checkbox]) {*/
/*    outline: 1px solid #26b050;*/
/*}*/

/*.invalid {*/
/*    outline: 1px solid #e50000;*/
/*}*/

/*.validation-message {*/
/*    color: #e50000;*/
/*}*/

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

.blazor-error-boundary::after {
    content: "An error has occurred."
}

.font-color-accent {
    color: var(--sony-accent-color);
}

.font-color-secondary {
    color: var(--sony-secondary-font-color);
}

/*.darker-border-checkbox.form-check-input {*/
/*    border-color: #929292;*/
/*}*/

/*.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {*/
/*    color: var(--bs-secondary-color);*/
/*    text-align: end;*/
/*}*/

/*.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {*/
/*    text-align: start;*/
/*}*/

.adapt-2-grid-container > * {
    box-sizing: border-box;
}

.parent-wide-container {
    width: 100%;
    height: 100%;
    padding-top: 24px;
    padding-left: 20px;
    padding-right: 20px;
}

/* mobile */
@media (min-width: 375px) {
    .site-cart-container {
        flex-direction: column;
    }

    .site-cart-form {
        width: 100%;
        padding: 0;
    }

    .site-cart-order-count-top {
        display: flex;
    }

    .site-cart-order-count-inner {
        display: none;
    }

    .block-display-1 {
        display: none;
    }

    .block-display-2 {
        display: none;
    }

    .block-tablet {
        display: none;
    }

    .block-mobile {
        display: block;
    }

    .txt-mobile {
        display: block;
    }

    .txt-tablet {
        display: none;
    }

    .txt-display-2 {
        display: none;
    }

    .txt-display-1 {
        display: none;
    }

    .wide-container {
        width: 100%;
        /*width: 343px;*/
    }

    .adapt-2-grid-container {
        display: flex;
        flex-direction: column;
        gap: 40px;
    }

    .adapt-2-grid-child-1 {
        display: none !important;
        flex-shrink: 0;
    }

    .adapt-2-grid-child-2 {
        display: flex !important;
        padding: 0 0 !important;
        flex-shrink: 0;
    }

    .adapt-2-grid-child-3 {
        display: flex !important;
        flex-shrink: 0;
    }
}

/* tablet */
@media (min-width: 744px) {
    .site-cart-container {
        flex-direction: column;
    }

    .site-cart-form {
        width: 100%;
        padding: 0;
    }

    .site-cart-order-count-top {
        display: flex;
    }

    .site-cart-order-count-inner {
        display: none;
    }

    .parent-wide-container {
        padding-top: 120px;
        padding-left: 0;
        padding-right: 0;
    }

    .block-display-1 {
        display: none;
    }

    .block-display-2 {
        display: none;
    }

    .block-tablet {
        display: block;
    }

    .block-mobile {
        display: none;
    }

    .txt-mobile {
        display: none;
    }

    .txt-tablet {
        display: block;
    }

    .txt-display-2 {
        display: none;
    }

    .txt-display-1 {
        display: none;
    }

    .wide-container {
        width: 664px;
    }
}

/* display-2 */
@media (min-width: 1200px) {
    .site-cart-container {
        flex-direction: row;
    }

    .site-cart-form {
        width: 400px;
        padding: 20px 16px;
    }

    .site-cart-order-count-top {
        display: none;
    }

    .site-cart-order-count-inner {
        display: flex;
    }

    .block-display-1 {
        display: none;
    }

    .block-display-2 {
        display: block;
    }

    .block-tablet {
        display: none;
    }

    .block-mobile {
        display: none;
    }

    .txt-mobile {
        display: none;
    }

    .txt-tablet {
        display: none;
    }

    .txt-display-2 {
        display: block;
    }

    .txt-display-1 {
        display: none;
    }

    .wide-container {
        width: 1040px;
    }

    .adapt-2-grid-container {
        display: flex;
        flex-direction: row;
        gap: 40px;
    }

    .adapt-2-grid-child-1 {
        display: flex !important;
        flex: 1;
        flex-shrink: 0;
    }

    .adapt-2-grid-child-2 {
        display: flex !important;
        flex: 1;
        flex-shrink: 0;
    }

    .adapt-2-grid-child-2 > div {
        padding: 0 40px !important;
    }

    .adapt-2-grid-child-3 {
        display: none !important;
        flex-shrink: 0;
    }
}

/* display-1 */
@media (min-width: 1520px) {
    .site-cart-container {
        flex-direction: row;
    }

    .site-cart-form {
        width: 400px;
        padding: 20px 16px;
    }

    .site-cart-order-count-top {
        display: none;
    }

    .site-cart-order-count-inner {
        display: flex;
    }

    .block-display-1 {
        display: block;
    }

    .block-display-2 {
        display: none;
    }

    .block-tablet {
        display: none;
    }

    .block-mobile {
        display: none;
    }

    .txt-mobile {
        display: none;
    }

    .txt-tablet {
        display: none;
    }

    .txt-display-2 {
        display: none;
    }

    .txt-display-1 {
        display: block;
    }

    .wide-container {
        width: 1200px;
    }

    .adapt-2-grid-container {
        display: flex;
        flex-direction: row;
        gap: 80px;
    }

    .adapt-2-grid-child-1 {
        display: flex !important;
        flex: 1;
        flex-shrink: 0;
    }

    .adapt-2-grid-child-2 {
        display: flex !important;
        flex: 1;
        flex-shrink: 0;
    }

    .adapt-2-grid-child-2 > div {
        padding: 0 40px !important;
    }

    .adapt-2-grid-child-3 {
        display: none !important;
        flex-shrink: 0;
    }
}


.suisse-font {
    font-family: 'SuisseIntl', Roboto, serif;
}

.halvar-font {
    font-family: 'HalvarEng', Roboto, serif;
}

.cofo-font {
    font-family: 'CoFo Sans', Roboto, serif;
}

.inter-font {
    font-family: "Inter", serif;
}

.font-regular {
    font-weight: 400;
}

.font-medium {
    font-weight: 500;
}

.font-semibold {
    font-weight: 600;
}

.font-bold {
    font-weight: 700;
}

.line-height-18 {
    line-height: 18px;
}

.line-height-20 {
    line-height: 20px;
}

.font-size-10 {
    font-size: 10px;
}

.font-size-12 {
    font-size: 12px;
}

.font-size-13 {
    font-size: 13px;
}

.font-size-14 {
    font-size: 14px;
}

.font-size-15 {
    font-size: 15px;
}

.font-size-16 {
    font-size: 16px;
}

.font-size-18 {
    font-size: 18px;
}

.font-size-20 {
    font-size: 20px;
}

.font-size-22 {
    font-size: 22px;
}

.font-size-24 {
    font-size: 24px;
}

.font-size-28 {
    font-size: 28px;
}

.font-size-30 {
    font-size: 30px;
}

.font-size-32 {
    font-size: 32px;
}

.flex-grow-1 {
    flex-grow: 1;
}

.flex-50 {
    flex: 1 1 50%;
    min-width: 0;
}

.d-flex {
    display: flex;
}

.column {
    flex-direction: column;
}

.row {
    flex-direction: row;
}

.wrap {
    flex-wrap: wrap;
}

.line-height-24 {
    line-height: 24px;
}

.line-height-28 {
    line-height: 28px;
}

.line-height-32 {
    line-height: 32px;
}

.line-height-40 {
    line-height: 40px;
}



.align-items-center {
    align-items: center;
}

.align-items-end {
    align-items: end;
}

.align-self-center {
    align-self: center;
}

.align-items-start {
    align-items: flex-start;
}

.clicky {
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.max-lines-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2; /* number of lines to show */
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.site-general-widget {
    width: 100%;
    margin: 60px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.site-general-widget-content {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

@font-face {
    font-family: 'SuisseIntl';
    font-style: normal;
    font-weight: 400;
    src: local('SuisseIntl'), url(/_content/SonyParser.Page/fonts/SuisseIntl-Regular.woff) format('woff');
}

@font-face {
    font-family: 'SuisseIntl';
    font-style: normal;
    font-weight: 500;
    src: local('SuisseIntl'), url(/_content/SonyParser.Page/fonts/SuisseIntl-Medium.woff) format('woff');
}

@font-face {
    font-family: 'SuisseIntl';
    font-style: normal;
    font-weight: 600;
    src: local('SuisseIntl'), url(/_content/SonyParser.Page/fonts/SuisseIntl-SemiBold.woff) format('woff');
}

@font-face {
    font-family: 'SuisseIntl';
    font-style: normal;
    font-weight: 700;
    src: local('SuisseIntl'), url(/_content/SonyParser.Page/fonts/SuisseIntl-Bold.woff) format('woff');
}

@font-face {
    font-family: 'HalvarEng';
    font-style: normal;
    font-weight: 400;
    src: local('HalvarEng'), url(/_content/SonyParser.Page/fonts/HalvarEng-Rg.woff) format('woff');
}

.inter-semibold {
    font-family: "Inter", serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
}

.inter-medium {
    font-family: "Inter", serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

.img-div-shadow {
    height: auto;
    transition: transform 0.1s ease-in-out, box-shadow 0.1s ease-in-out;
    object-fit: cover;
    background-size: cover; /* behaves like object-fit: cover */
    background-position: center;
    background-repeat: no-repeat;
}

.no-select {
    /*user-select: none;*/
    /*-webkit-user-select: none; !* Safari *!*/
    /*-ms-user-select: none;     !* IE/Edge *!*/
}


.fav-icon {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    background-color: var(--site-sony-color-03);
    border-radius: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.uistate-container {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}

.controlMenu {
    z-index: 100000;
    margin-top: 24px;
    width: 400px;
    max-height: 64px; /* prevents growth */
    background-color: white;

    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 16px;
    box-shadow: var(--site-shadow);
    transition: all 0.3s ease; /* smooth appearance */
    gap: 10px;
}

.controlMenu .item .indicator {
    position: absolute;
    top: -4px;
    left: 50%;
    width: 44px;
    height: 3px;
    background: var(--sony-accent-color);
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity 0.25s, transform 0.25s ease;
}

.controlMenu .item {
    position: relative;
    margin: 4px 0;
    flex: 1; /* all same width */
    text-align: center;
    background: #fff3; /* optional subtle background */
    border-radius: 100px; /* optional */
    cursor: pointer;
    display: flex; /* make it flex */
    justify-content: center; /* center horizontally */
    align-items: center; /* center vertically */
}

@media (max-width: 743px) {
    .controlMenuBottom {
        background-color: white;
        height: 100px;
        width: 100%;
        position: fixed;
        bottom: -100px;
        z-index: 999;
    }

    .controlMenu {
        height: 46px;
        position: fixed;
        bottom: 0;
        width: 100%;
        z-index: 999;
        border-top-right-radius: 24px;
        border-top-left-radius: 24px;
    }

    .controlMenu .item {
        height: 38px;
        max-height: 38px;
    }
}

@media (min-width: 744px) {
    .controlMenuBottom {
        display: none;
    }

    .controlMenu {
        position: fixed;
        border-radius: 100px;
        height: 64px;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
    }

    .controlMenu .item {
        height: 56px;
        max-height: 56px;
    }
}


.controlMenu .item:hover {
    background-color: #F4F4F4;
}


.controlMenu .item.active .indicator {
    opacity: 1;
}

.mask-ic {
    -webkit-mask-size: cover;
    mask-size: cover;
    background-color: var(--site-sony-color-02);
    height: 24px;
    width: 24px;
}

.option-active {
    background-color: var(--sony-accent-color);
}

.ready-acc-link {
    color: var(--sony-color-22);
    text-decoration: underline;
}

.desktop-only {
    display: block;
}

.mobiletablet-only {
    display: none;
}

.desktoptablet-only {
    display: block;
}
.mobile-only {
    display: none;
}

@media (max-width: 733px) {
    .desktoptablet-only {
        display: none;
    }

    .mobile-only {
        display: block;
    }
}

@media (max-width: 1199px) {
    .desktop-only {
        display: none;
    }

    .mobiletablet-only {
        display: block;
    }
}

.title {
    margin-top: 24px;
    margin-left: 20px;
}