:root{
    --cpts-primary:#023047;
    --cpts-accent:#ffd60a;
    --cpts-secondary:#95BF65;
    --cpts-text:#302b27;
    --cpts-success:#95BF65;
}
.text-primary{ color: var(--cpts-secondary)!important; }
.bg-primary{ background-color: var(--cpts-primary)!important; }
.btn-style4:hover{ background-color: var(--cpts-accent); border-color: var(--cpts-accent); color:#000; }
:root{
    --font-base: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* make everything inherit the same font */
html, body { font-family: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important; }
*, *::before, *::after, button, input, textarea, select { font-family: inherit; }



#contact .footer-cta{
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.02em;
    /* smaller than display-5, responsive */
    font-size: clamp(1.25rem, 2.2vw, 2rem);
}

#contact a { color: var(--cpts-secondary); }

/* Stack social icons vertically in the 4th column */
.social-icon-style1.social-vertical li {
    display: block;
}
:root{
    --cp-primary2:#ffd60a;
    --cp-accent2:#95BF65;
    --cp-text-muted:rgba(255,255,255,.7);
}

footer.bg-dark .social-links a i{
    color:var(--cp-accent2) !important;
    transition:color .2s ease, transform .2s ease;
}
footer.bg-dark .social-links a:hover i,
footer.bg-dark .social-links a:focus i{
    color:var(--cp-primary2) !important;
    transform:translateY(-1px);
}

footer.bg-dark .social-links a span{
    color:var(--cp-text-muted) !important;
    transition:color .2s ease;
}
footer.bg-dark .social-links a:hover span,
footer.bg-dark .social-links a:focus span{
    color:#fff !important;
}
@media (max-width: 990px) {
    .hero-lead  { font-size: 18px; }
    .hero-title
    {
        font-size: 32px !important;
    }
    .hero-head
    {
        margin-top:170px !important;
    }
}

@media (max-width: 768px) {
    .hero-lead  { font-size: 15px; }
    .hero-title
    {
        font-size: 30px !important;
    }
    .hero-head
    {
        margin-top:200px !important;
    }
}

.card-style18:hover  .h4
{
    color:#fff !important;
}



.market .card-style18 .card-body {
    padding: 15px 20px;

}

section {
    padding: 60px 0 !important;
}
.page-title-section {
    padding: 160px 0 100px 0 !important;
}
/* Use DM Sans if you have it loaded site-wide */
:root{
    --cta-bg: #023047;      /* dark teal background from mock */
    --cta-text: #EAF2EF;     /* light text */
    --cta-accent: #95BF65;   /* brand green you’ve been using */
}

.cta-hero{
    margin:50px;
    background: var(--cta-bg);
    color: var(--cta-text);
    text-align: center;
    padding: clamp(48px, 7vw, 110px) 16px;
    border-radius: 16px;           /* optional, looks nice if section sits in white */
}

.cta-hero .container{
    max-width: 1080px;             /* keep lines readable on xl screens */
}

/* Brand row */
.cta-hero .brand{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-bottom: clamp(18px, 3.2vw, 28px);
}
.cta-hero .brand-logo{
    height: clamp(36px, 5.2vw, 64px);
    width: auto;
    filter: brightness(1.1) saturate(1.05); /* similar to the mock’s light logo */
}
.cta-hero .brand-name{
    font-family: "DM Sans", system-ui, Arial, sans-serif;
    font-weight: 600;
    line-height: 1.05;
    letter-spacing: 0.2px;
    font-size: clamp(18px, 2.2vw, 28px);
    color: var(--cta-accent);
}

/* Top slim line */
.cta-hero .small-lead{
    margin: 0 auto;
    max-width: 900px;
    opacity: 0.95;
    font-size: clamp(16px, 2.2vw, 22px);
    line-height: 1.5;
}

/* Main bold headline */
.cta-hero .big-head{
    margin: clamp(10px, 2.5vw, 18px) auto clamp(20px, 3.5vw, 36px);
    max-width: 980px;
    font-weight: 800;
    line-height: 1.25;
    font-size: clamp(16px, 2.2vw, 22px);
    color: var(--cta-accent);
}
.cta-hero .nowrap{ white-space: nowrap; } /* keeps last phrase together on small screens */

/* Contact line */
.cta-hero .contact-line{
    margin: 0 auto;
    max-width: 900px;
    font-size: clamp(16px, 2.1vw, 20px);
}
.cta-hero .contact-line a{
    color: var(--cta-accent);
    text-decoration: underline;
    text-underline-offset: 3px;
}
.cta-hero .contact-line a:hover{
    opacity: 0.9;
}

/* Optional: remove extra margins from surrounding sections if needed */
.cta-hero + section { margin-top: clamp(24px, 5vw, 48px); }

:root{
    --ship-title:#ffd60a;  /* yellow */
    --ship-text:#fff;      /* white */
}

.shipping-challenge{
    background-position:center;
    background-size:cover;
    padding:clamp(28px,6vw,64px) 0;
    position:relative;
}

.shipping-title{
    color:var(--ship-title);
    font-weight:800;
    line-height:1.1;
    margin-bottom:clamp(16px,2.8vw,25px);
    font-size:clamp(16px,4.5vw,34px);
}

.shipping-bullets{
    list-style:none;
    margin:0; padding:0;
}
.shipping-bullets li{
    color:var(--ship-text);
    font-weight:700;
    line-height:1.45;
    font-size:clamp(12px,2.4vw,18px);
    margin-bottom:clamp(8px,1.4vw,14px);
    text-shadow:0 1px 1px rgba(0,0,0,.25);
}



/* Small screens padding fix */
@media (max-width:576px){
    .shipping-challenge .container{ padding-inline:16px; }
}
