/*----------------------------------------------------------------*\
    1.0 GLOBAL
\*----------------------------------------------------------------*/
:root {
    --g-ratio:            1.618;
    --base-size:          14px;
    --scale:              2.618;
    --color-primary:      #0d0d0d;
    --color-secondary:    #1e1e1e;
    --color-tertiary:     #eef2f6;
    --color-quaternary:   #596780;
    --color-key:          #232323;
    --accent:             #d8c48c;
	--color-primary-transparent-1: rgba(25, 25, 25,0.25);
	--color-primary-transparent-2: rgba(25, 25, 25,0.5);
    --color-dark:         #161616;
    --color-light:        #e1e1e1;
    --color-white:        #ffffff;
    --color-gray:         #8e8e8e;
    --color-dark-gray:    #252524;
    --s-border-color:     #d6d6d6;
    --s-border-radius:    12px;
    --s-border-radius-2:  25px;
    --s-spacing:  25px;
    --stripe:             rgba(255, 255, 255, 0.03);
    --accent-dim:         rgba(232, 160, 32, 0.10);
    --radius:             6px;
}

html {
    scroll-behavior: smooth;
    background-color: var(--color-tertiary);
    margin: 0.1434;
    padding: 0;
    width: 100%;
    overflow-x: hidden;
}

body {
    background-color: #ffffff;
    margin: 0 auto;
    width: 100%;
    max-width: 1600px;
    box-shadow: 0 0 var(--s-spacing) rgba(0, 0, 0, 0.05);
    min-height: 100vh;
    border: 1px solid #dcdce0;
}

body,
#inventory-list-view a {
    font-family: 'Rajdhani', Helvetica, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.42857143;
    color: #333;
    background-color: #fff;
}

body.hero-nav-1 {
    background: var(--color-secondary);
}


/*----------------------------------------------------------------*\
    2.0 UTILITY CLASSES
\*----------------------------------------------------------------*/
/* ---Color----------------------- */
.color--primary {color: var(--color-primary) !important}
.color--secondary{color:  var(--color-secondary) !important;}
.color--tertiary {color: var(--color-tertiary) !important;}
.color--white, a[href="/"]{color: white;}
.color--black {color: black;}
.color--key {color: #232323;}

.d-flex {
    display: -ms-flexbox !important;
    display: flex !important;
}

.align-items-center {
    -ms-flex-align: center !important;
    align-items: center !important;
}

.no-click        { pointer-events: none; }
.full-width      { width: 100%; }

.line-clamp-1,
.line-clamp-2 {
    overflow: hidden;
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    text-overflow: ellipsis;
}

.line-clamp-2 {
    -webkit-line-clamp: 2;
}

.grid-center {
    min-height: 100%;
    display: -webkit-grid;
    display: -ms-grid;
    display: grid;
    -webkit-box-align: center;
    -ms-flex-align: center;
}

.vertical-center {
    min-height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.accent-lg { width: 35px; }

.rounded { border-radius: var(--s-border-radius); }

.rounded img { border-radius: 50%; }

.bordered { border: solid 2px #dcdce0; }
.bordered.accent { border: solid 2px var(--accent); }

.image-blender {
    position: relative;
    overflow: hidden;
}

/* --max-width: 1199px-- */
@media (max-width: 1199px) {
    .vertical-center-md-reset {
        min-height: auto !important;
        display: -webkit-block !important;
        display: -ms-block !important;
        display: block !important;
    }

    .text-center-md-reset {
        text-align: center;
    }
}

/* --max-width: 991px-- */
@media (max-width: 991px) {
    .page-title-container {
        width: 100%;
        text-align: center;
        margin-top: 75px;
        padding: 2em 5%;
    }

    .text-left-sm { text-align: left; }

    .vertical-center-sm-reset {
        min-height: auto !important;
        display: -webkit-block !important;
        display: -ms-block !important;
        display: block !important;
    }

    .text-center-sm-reset { text-align: center; }

    .product-results-grid-container { border-right: 0px; }

    .text-sm-center { text-align: center; }
}

/* --max-width: 767px-- */
@media (max-width: 767px) {
    .text-center-xs-reset,
    .text-xs-center {
        text-align: center;
    }

    .vertical-center-xs-reset {
        min-height: auto !important;
        display: -webkit-block !important;
        display: -ms-block !important;
        display: block !important;
    }

    .pull-right-xs-reset { float: none !important; }
}


/*----------------------------------------------------------------*\
    2.1 WRAPPERS
\*----------------------------------------------------------------*/

.wrapper {
    width: 100%;
    margin: 0 auto;
    padding: 0 2rem;
}

.wrapper.full-width {
    max-width: none;
}

@media (min-width: 576px) {
    .wrapper { width: 95%; }
}

@media (min-width: 1600px) {
    .wrapper { width: 100%; }
}


/*----------------------------------------------------------------*\
    2.2 PADDING & SPACING
\*----------------------------------------------------------------*/

section { padding: 60px 48px; }

.sec-spacing {
    padding-top: 2em;
    padding-bottom: 2em;
}

.sec-spacing-2 { padding-bottom: 10em; }

.sec-spacing-3 {
    padding-top: 1em;
    padding-bottom: 5em;
}

.row-spacing {
    padding-top: 2em;
    padding-bottom: 2em;
}

@media (max-width: 991px) {
    section,
    .why-us {
        padding: 60px 10px;
    }

    .clear-top-section,
    #top-scroll {
        margin-top: 80px !important;
    }

    #sticky-cta-container.has-shadow { box-shadow: none; }
}

.col-25-gutter {
    padding-left: var(--s-spacing) !important;
    padding-right: var(--s-spacing) !important;
}

.p3  { padding: 18px; }
.pt2 { padding-top: 12px; }
.mr3 { margin-right: 18px; }
.ml3 { margin-left: 18px; }

.padding-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.mb0  { margin-bottom: 0 !important; }
.br10 { border-radius: 10px; }
.br5  { border-radius: 5px; }


/*----------------------------------------------------------------*\
    3.0 COLOR PALETTE
\*----------------------------------------------------------------*/

/* --- Backgrounds ----------------------- */

.bg--primary     { background: #232323; }

.bg--secondary   { background: var(--color-primary); }

.bg-white        { background: #fff; }

.bg-black        { background: #000; }

.bg--grey        { background: #666666; }

.bg--light-grey,
#sticky-action-bar.show {
    background: #eef2f6 !important;
}

.bg--key         { background: #232323; }

.bg--key-dark    { background: #303132; }

.bg--accent {
    background-color: #fff;
    background-image: url(/img/mountain-bg.png);
    background-image: -webkit-linear-gradient(rgb(255 255 255 / 35%) 50%, rgb(255 255 255 / 90%) 75%), url(/img/mountain-bg.png);
    background-image: -o-linear-gradient(rgb(255 255 255 / 35%) 50%, rgb(255 255 255 / 90%) 75%), url(/img/mountain-bg.png);
    background-image: linear-gradient(rgb(255 255 255 / 35%) 50%, rgb(255 255 255 / 90%) 75%), url(/img/mountain-bg.png);
    background-repeat: no-repeat;
    background-position: center right;
}

.bg--dark-grey { background: #303132; }


/*----------------------------------------------------------------*\
    4.0 IMAGES & ICONS
\*----------------------------------------------------------------*/

.social-icons svg {
    width: 1em;
    height: 1em;
    fill: var(--color-white);
    vertical-align: middle;
}


/*----------------------------------------------------------------*\
    5.0 HEADER
\*----------------------------------------------------------------*/

#header-variant-02 {
    width: 100%;
    margin: auto;
    position: relative;
    z-index: 1970;
}

#top-header { background: #212121; }

#top-header a { color: var(--color-light); }

ul.social-block {
    display: inline-flex;
    padding-left: 0;
}

.social-block li {
    display: inline-block;
    margin: 5px;
}

.social-block li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 2px solid #fff;
    border-radius: 50%;
    text-align: center;
    color: #fff;
    font-size: 18px;
    transition: all 0.3s ease;
}

.social-block li a:hover {
    background: #fff;
    color: #00246d !important;
}

.social-block li i { line-height: 1; }

#primary-header {
    clear: both;
    display: block;
    margin: auto;
    width: 100%;
}


/*----------------------------------------------------------------*\
    6.0 BUTTONS
\*----------------------------------------------------------------*/

#top-header .social-button {
    color: #ffffff;
    border-width: 2px;
    border-color: #ffffff;
    font-family: 'Asap', arial, sans-serif;
    border-radius: 10px;
    font-size: 5px;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    background-color: rgba(255, 255, 255, 0);
    padding: 5px 10px !important;
}

#top-header .social-button:hover {
    color: #666666;
    background-color: rgba(255, 255, 255);
}

.btn-custom-2,
.product-results-container .btn-custom,
.detail-buttons .btn-custom,
.btn-custom-3 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 150px;
    padding: 14px 20px;
    font-weight: 700;
    text-align: center;
    border-radius: 8px;
    background: var(--color-primary);
    color: #ffffff;
    border: none;
    cursor: pointer;
    transition: background-color 0.25s ease, transform 0.25s ease;
}
#ad-details #sc_hypEmailContact {background-color: var(--color-dark-gray);}
#ad-details a#sc_hypSms{background-color: var(--color-secondary);}
.btn-custom-2:hover,.btn-custom-3:hover,
.product-results-container .btn-custom:hover,
.detail-buttons .btn-custom:hover, #ad-details #sc_hypEmailContact:hover, #ad-details a#sc_hypSms:hover, #header-variant-02 .wsmenu>.wsmenu-list>li>a.btn-custom-2:hover {
    background: #fff;
    color: var(--color-primary)!important;
    border: 2px solid var(--color-primary);
	box-shadow: 0 6px 18px var(--color-primary-transparent-2);
}
#ad-details #sc_hypEmailContact:hover, #ad-details a#sc_hypSms:hove, #ad-details a#sc_hypPhone:hover{
	transition: all 0.25s ease, transform 0.25s ease;
	padding-top: var(--s-spacing);
    padding-bottom: var(--s-spacing);
	font-size: 1.5em;
}

.btn-custom-2:active { transform: translateY(0); }

.btn-custom-3 {
    background-color: rgb(216 196 140);
    color: #1e1e1e;
}


/*----------------------------------------------------------------*\
    7.0 TILE BODY
\*----------------------------------------------------------------*/

.portfolio-tile,
.industry-tile,
.topcategorybox,
.home-link-button {
    margin: 0px 15px;
}

.tile-header-img,
.topcategorybox img {
    display: block;
    position: relative;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    overflow: hidden;
    padding: 0;
}

.tile-header-img > a img {
    display: block;
    width: 100%;
}

.tile-body {
    min-height: 200px;
    position: relative;
    top: -55px;
    background: white;
    margin: auto;
    box-shadow: 0px 20px 14px 0px rgb(23 44 82 / 7%);
    border: 2px solid #ffffff;
    border-radius: 5px;
}

.tile-body h2,
.tile-body h2 a {
    color: #232323;
    font-size: 35px;
    letter-spacing: 1px;
}

.tile-body h2 a:hover { color: var(--color-primary); }

.tile-body h2.h6,
.tile-body h2.h6 a {
    font-size: 21px;
    letter-spacing: 1px;
}


/*----------------------------------------------------------------*\
    8.0 COMPONENTS
\*----------------------------------------------------------------*/

/* --- Aside CTA ----------------------- */

.aside-cta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 360px;
    background-image: linear-gradient(to right, rgb(216 196 139 / 85%) 0%, rgb(216 196 139 / 90%) 100%), url(/img/cascadia-aside.jpg);
    background-size: cover;
    background-position: right center;
    background-repeat: no-repeat;
}

.aside-cta-img {
    background: linear-gradient(135deg, #1e3a6e, var(--color-secondary));
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(rgb(30 58 110 / 70%) 0%, rgb(14 27 54 / 43%) 75%, rgb(14 27 54 / 80%) 100%), url(/img/intro.webp);
    background-size: cover;
    background-position: center;
}

.aside-cta-text {
    background: var(--color-white);
    padding: 60px 48px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.aside-cta-text h2 {
    font-weight: 800;
    margin-bottom: 16px;
}

.aside-cta-text p {
    color: var(--color-quaternary);
    line-height: 1.7;
    margin-bottom: 28px;
}

@media (max-width: 991px) {
    .aside-cta { grid-template-columns: 9fr 1fr; }
}

/* --- CTA Strip ----------------------- */

.cta-strip {
    background: var(--color-secondary);
    padding: var(--s-spacing) 48px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.cta-strip.light-bg {background: var(--accent);}
/* --- Why Us ----------------------- */

.why-us {
    background: var(--color-white);
    padding: 60px 48px;
    border-top: 1px solid var(--s-border-color);
    border-bottom: 1px solid var(--s-border-color);
}

.why-grid {
    display: grid;
    grid-template-columns: 1fr 1.6fr;
    gap: 60px;
    align-items: center;
}

.why-text h2 {
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 16px;
}

.why-text p {
    color: var(--color-quaternary);
    line-height: 1.7;
}

.why-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--s-spacing);
}

.feature-item {
    display: flex;
    gap: 14px;
    align-items: flex-start;
}

.feature-icon {
    width: 100px;
    height: 100px;
    padding: 10px;
    border-radius: 10px;
    background: #d0d6dc;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 1px solid #b0b7be;
}

.feature-item h4 {
    font-weight: 600;
    margin-bottom: 4px;
}

.feature-item p {
    color: var(--color-quaternary);
    line-height: 1.5;
}

@media (max-width: 991px) {
    .feature-item {
        display: flex;
        gap: var(--s-spacing);
        align-items: flex-start;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .why-us { padding: 60px 35px; }
}

/* --- CTA Banners ----------------------- */

.cta-banners {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    padding: 0 0px 10px;
}

.cta-card {
    border-radius: 16px;
    padding: 32px;
    position: relative;
    overflow: hidden;
}

.cta-card.buy  { background: var(--color-tertiary); }
.cta-card.sell { background: #d0d6dc; }

.cta-card h3 {
    font-weight: 700;
    margin-bottom: 8px;
}

.cta-card p {
    color: var(--color-quaternary);
    margin-bottom: 20px;
    line-height: 1.6;
    max-width: 240px;
}

.cta-icon {
    position: absolute;
    right: -78px;
    bottom: var(--s-spacing);
    opacity: .15;
    width: 45%;
}


/*----------------------------------------------------------------*\
    9.0 HOME / HERO
\*----------------------------------------------------------------*/

#intro {
    height: auto;
    background-color: #fff;
    background-image: -webkit-linear-gradient(rgb(35 35 35 / 49%) 0%, rgb(35 35 35 / 70%) 75%, rgb(33 33 33) 100%), url(/img/intro.webp);
    background-image: -o-linear-gradient(rgb(35 35 35 / 49%) 0%, rgb(35 35 35 / 70%) 75%, rgb(33 33 33) 100%), url(/img/intro.webp);
    background-image: linear-gradient(rgb(35 35 35 / 49%) 0%, rgb(35 35 35 / 70%) 75%, rgb(33 33 33) 100%), url(/img/intro.webp);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

@media (min-width: 992px) {
    #intro {
        padding-top: 200px;
        padding-bottom: 100px;
        margin-top: -150px;
    }
}

.hero-eyebrow {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 100px;
    padding: 4px 14px;
    color: rgba(255, 255, 255, .8);
    margin-bottom: 20px;
}

.hero-tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    animation: fadeUp .6s .3s ease both;
}

.hero-tag-pill a { color: white; }

.hero-tag-pill,
.latest-tag-pill {
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 6px;
    padding: 4px 12px;
    color: rgba(255, 255, 255, .7);
    cursor: pointer;
    transition: background .2s;
}

.hero-tag-pill:hover,
.latest-tag-pill:hover {
    background: rgba(255, 255, 255, .2);
}

/*----------------------------------------------------------------*\
    10.0 Titles & Headings
\*----------------------------------------------------------------*/
.accent-heading {
  display: inline-block;
  position: relative;
  padding-bottom: 5px;
}
.accent-heading::after {
  content: '';
  display: block;
  position: absolute;
  background-color: var(--accent);
  height: 3px;
  min-width: 50px;
  bottom: -5px;
  border-radius: .5rem;

}
.accent-heading.align-left::after {
  left: 0;
  right: auto;
  margin-left: 0;
}
.accent-heading.align-center::after {
  left: 50%;
  transform: translateX(-50%);
}
/*----------------------------------------------------------------*\
    10.0 FOOTER
\*----------------------------------------------------------------*/

footer {
    background: var(--color-secondary);
    padding: var(--s-spacing);
}
footer a {
    color: white;
}
.footer-top {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr 1fr;
    gap: 40px;
    margin-bottom: 48px;
}

.footer-top .logo { font-size: 35px; }

.footer-brand p {
    color: var(--accent);
    line-height: 1.7;
    margin-top: 10px;
}

.footer-col h5 {
    font-family: 'Syne', sans-serif;
    color: white;
    font-weight: 600;
    margin-bottom: 16px;
}

.footer-col ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.footer-col a {
    color: var(--accent);
    text-decoration: none;
    transition: color .2s;
}

.footer-col a:hover { color: white; }

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, .08);
    padding-top: var(--s-spacing);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer-bottom p { color: var(--accent); }

@media (max-width: 991px) {
    .footer-top {
        grid-template-columns: none;
        text-align: center;
    }

    .footer-col ul { padding: 0; }
}


/*----------------------------------------------------------------*\
    11.0 MOBILE RESETS
\*----------------------------------------------------------------*/

@media (max-width: 991px) {
    .cta-banners,
    .why-grid,
    .why-features {
        display: block;
        width: 100%;
        padding: 5px;
        margin: auto;
    }

    .cta-card.sell { margin-top: var(--s-spacing); }

    .cta-strip { justify-content: center; }

    .feature-item {
        display: flex;
        gap: var(--s-spacing);
        align-items: flex-start;
        padding-top: 10px;
        padding-bottom: 10px;
    }
}